html, body { overflow: hidden; }
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.wrap{max-width:900px;margin:0 auto;padding:1.25rem 1.5rem 1.5rem;font-family:var(--font-sans);color:var(--text);line-height:1.55}
.eyebrow{margin:0 0 .3rem;color:var(--teal);font-size:.72rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}
.wrap h1{margin:0;font-family:var(--font-serif);font-size:clamp(1.25rem,4vw,1.7rem);font-weight:600;line-height:1.2}
.intro{max-width:68ch;margin:.4rem 0 0;color:var(--text2);font-size:.85rem}
.fig{margin-top:1rem}
.fig h2{margin:0;font-size:.8rem;font-weight:700}
.caveat{margin:.9rem 0 0;padding:.55rem .75rem;border-left:3px solid var(--amber);border-radius:0 var(--r-sm) var(--r-sm) 0;background:var(--amber-bg);color:var(--text2);font-size:.72rem}
.caveat strong{color:var(--text)}
.card{min-width:0;padding:.8rem .9rem;border:1px solid var(--border);border-radius:var(--r-out);background:var(--surface);box-shadow:var(--shadow-1)}
.tag{display:inline-block;margin:0 0 .25rem;font-size:.72rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}
.c-blue{color:var(--blue-text)}.c-coral{color:var(--coral-text)}.c-teal{color:var(--teal)}.c-purple{color:var(--purple)}.c-amber{color:var(--amber-dark)}
.card p,.card li{font-size:.74rem;color:var(--text2)}
.card h3{margin:0;font-family:var(--font-serif);font-size:1rem;font-weight:600;line-height:1.25}
.tnum{font-variant-numeric:tabular-nums}
/* gantt / bars */
.row{display:grid;grid-template-columns:9rem minmax(0,1fr);gap:.6rem;align-items:center;margin-top:.45rem}
.row .lab{font-size:.72rem;color:var(--text2);line-height:1.3}
.row .lab strong{display:block;color:var(--text);font-size:.76rem}
.track{position:relative;height:1.7rem;border-radius:var(--r-sm);background:var(--surface-mute)}
.bar{position:absolute;top:0;height:100%;border-radius:var(--r-sm);border:2px solid}
.b-blue{background:var(--blue-bg);border-color:var(--blue)}.b-coral{background:var(--coral-bg);border-color:var(--coral)}.b-teal{background:var(--teal-bg);border-color:var(--teal)}.b-purple{background:var(--purple-bg);border-color:var(--purple)}.b-amber{background:var(--amber-bg);border-color:var(--amber)}
.axis{position:relative;height:1.1rem;margin:.3rem 0 0 9.6rem;font-size:.72rem;color:var(--text3);font-variant-numeric:tabular-nums}
.axis span{position:absolute;top:0;left:var(--p);transform:translateX(-50%);white-space:nowrap}
.axis span:first-child{transform:none}.axis span:last-child{transform:translateX(-100%)}
@media (max-width:640px){
 .wrap{padding:1rem .75rem 1.2rem}
 .row{grid-template-columns:1fr;gap:.2rem}
 .axis{margin-left:0}
}
