/* Self-hosted variable font. The accompanying SIL OFL license travels with the asset. */
@font-face { font-family:Manrope; src:url("assets/fonts/Manrope.ttf") format("truetype"); font-style:normal; font-weight:200 800; font-display:swap; }
.refined-brand { display:inline-flex; align-items:center; gap:12px; flex:0 0 auto; color:var(--ink); text-decoration:none; }
.refined-mark { width:43px; height:43px; flex:0 0 auto; overflow:visible; }
.mark-guide { stroke:var(--line-strong); stroke-width:1; }
.mark-stem,.mark-bowl,.mark-leg { stroke:currentColor; stroke-width:4.5; stroke-linejoin:bevel; }
.mark-node { fill:var(--accent); }
.refined-type { display:flex; flex-direction:column; gap:6px; }
.refined-wordmark { font:650 26px/1 var(--font); letter-spacing:-1.15px; white-space:nowrap; }
.refined-math { font-weight:350; margin-left:6px; color:var(--muted); }
.refined-beta { margin-left:8px; font:500 10px/1 var(--mono); letter-spacing:0; vertical-align:middle; color:var(--accent); }
.refined-signature { font:8px/1 var(--mono); letter-spacing:.13em; color:var(--subtle); }
.refined-signature > span { letter-spacing:.08em; }
.refinement-study { display:block; width:100%; height:auto; }
.study-grid { stroke:var(--line); stroke-width:.65; opacity:.6; }
.study-axis { stroke:var(--line-strong); stroke-width:1; }
.study-candidates { stroke:var(--line-strong); stroke-width:1; }
.study-points { fill:var(--hero); stroke:var(--muted); stroke-width:1; }
.study-route { stroke:var(--accent); stroke-width:2.5; }
.study-selected { fill:var(--accent); }
.study-answer { fill:var(--warm); }
.study-answer-frame { stroke:var(--warm); stroke-width:1; }
.study-labels { fill:var(--subtle); font:10px var(--mono); }
.brand-study { position:relative; min-width:0; padding:10px 18px 12px; background:var(--hero); border:1px solid var(--line); border-radius:8px; }
.brand-study-label { display:flex; align-items:center; justify-content:space-between; padding:10px 12px 0; color:var(--subtle); font:9px var(--mono); letter-spacing:.11em; }
.brand-study-label span:last-child { color:var(--warm); }
.brand-study-caption { display:flex; justify-content:space-between; gap:8px; padding:0 14px 9px; color:var(--muted); font:9px var(--mono); letter-spacing:.05em; }
.brand-study-caption b { color:var(--accent); font-weight:400; }
@media(prefers-reduced-motion:no-preference) {
  .mark-stem,.mark-bowl,.mark-leg { stroke-dasharray:1; animation:refined-draw 1.6s cubic-bezier(.2,.65,.25,1) both; }
  .mark-bowl { animation-delay:.12s; }
  .mark-leg { animation-delay:.3s; }
  .mark-node { animation:refined-node 1.8s ease both; }
  .study-route { stroke-dasharray:1; animation:refined-draw 2.2s cubic-bezier(.2,.65,.25,1) .15s both; }
  .study-answer,.study-answer-frame { animation:refined-node 2.4s ease both; }
  @keyframes refined-draw { from { stroke-dashoffset:1; opacity:.25; } to { stroke-dashoffset:0; opacity:1; } }
  @keyframes refined-node { 0%,50% { opacity:0; } 100% { opacity:1; } }
}
@media(prefers-reduced-motion:reduce) { .refined-mark *,.refinement-study * { animation:none!important; transition:none!important; } }
@media(max-width:650px) { .refined-mark { width:34px; height:34px; } .refined-brand { gap:8px; } .refined-wordmark { font-size:22px; } .refined-signature { font-size:6.5px; } }
