:root{--color-parchment: oklch(.932 .032 118);--color-paper: oklch(.995 .005 95);--color-linen: oklch(.974 .006 95);--color-mist: oklch(.912 .01 250);--color-fog: oklch(.84 .01 90);--color-muted: oklch(.5 .014 260);--color-slate: oklch(.62 .012 260);--color-graphite: oklch(.22 .012 275);--color-ink: oklch(.145 .055 275);--color-obsidian: oklch(.18 .012 50);--color-accent: oklch(.62 .18 47);--color-accent-ink: oklch(.99 .01 90);--color-gold: oklch(.8 .145 82);--color-gold-ink: oklch(.24 .05 70);--color-teal: oklch(.52 .11 178);--color-teal-ink: oklch(.99 .01 175);--color-cobalt: oklch(.5 .16 255);--color-cobalt-ink: oklch(.99 .01 255);--color-wine: oklch(.42 .13 18);--color-wine-ink: oklch(.99 .01 90);--color-hero-field: oklch(.26 .032 52);--color-hero-copy: oklch(.97 .012 95);--color-hero-muted: color-mix(in oklch, var(--color-hero-copy) 72%, transparent);--color-lawn: color-mix(in oklch, var(--color-ok) 24%, var(--color-hero-field));--color-lawn-deep: color-mix(in oklch, var(--color-ok) 14%, var(--color-hero-field));--color-stone: color-mix(in oklch, var(--color-paper) 58%, var(--color-hero-field));--color-stone-lit: color-mix(in oklch, var(--color-paper) 78%, var(--color-hero-field));--color-hero-glow-accent: color-mix(in oklch, var(--color-accent) 42%, transparent);--color-hero-glow-gold: color-mix(in oklch, var(--color-gold) 32%, transparent);--color-hero-glow-cobalt: color-mix(in oklch, var(--color-cobalt) 26%, transparent);--shadow-hero-inset: inset 0 1px 0 color-mix(in oklch, var(--color-paper) 28%, transparent);--shadow-banner-inset: inset 0 1px 0 color-mix(in oklch, var(--color-paper) 34%, transparent);--shadow-dossier: 0 1px 0 color-mix(in oklch, var(--color-ink) 6%, transparent), 0 22px 48px -28px color-mix(in oklch, var(--color-ink) 22%, transparent);--color-focus: oklch(.55 .18 47);--color-danger: oklch(.5 .16 25);--color-ok: oklch(.42 .08 145);--color-hero-scrim-base: oklch(.96 .03 95 / .92);--color-hero-scrim-low: oklch(.96 .03 95 / .82);--color-hero-scrim-mid: oklch(.96 .03 95 / .42);--color-hero-scrim-high: oklch(.96 .03 95 / 0);--color-foot-ink: color-mix(in oklch, var(--color-paper) 68%, transparent);--color-foot-link: color-mix(in oklch, var(--color-paper) 78%, transparent);--color-foot-rule: color-mix(in oklch, var(--color-paper) 12%, transparent);--color-tile-wash: color-mix(in oklab, var(--color-accent) 10%, var(--color-paper));--color-tile-ink-soft: color-mix(in oklch, var(--color-paper) 72%, transparent);--grad-faculty: linear-gradient( 158deg, var(--color-parchment) 0%, var(--color-paper) 58%, var(--color-linen) 100% );--grad-room: linear-gradient( 168deg, var(--color-ink) 0%, var(--color-obsidian) 100% );--grad-accent-wash: linear-gradient( 180deg, var(--color-tile-wash) 0%, var(--color-paper) 100% );--color-apricot-soft: oklch(.965 .03 62);--color-apricot: oklch(.9 .075 56);--grad-hero: linear-gradient( 168deg, var(--color-apricot-soft) 0%, var(--color-apricot) 100% );--color-hero-glow-warm: color-mix(in oklch, var(--color-accent) 34%, transparent);--color-hero-glow-soft: color-mix(in oklch, var(--color-accent) 30%, transparent);--grad-next: linear-gradient( 120deg, var(--color-linen) 0%, var(--color-paper) 46%, var(--color-parchment) 100% );--font-display: "Instrument Sans", "Instrument Sans Fallback", ui-sans-serif, system-ui, sans-serif;--font-body: "Instrument Sans", "Instrument Sans Fallback", ui-sans-serif, system-ui, sans-serif;--text-caption: .75rem;--text-body-sm: .875rem;--text-body: 1rem;--text-subhead: 1.375rem;--text-heading-sm: 1.625rem;--text-heading: clamp(1.75rem, 2.4vw + 1rem, 2.375rem);--text-display: clamp(2.25rem, 4.6vw + .7rem, 3.75rem);--space-3xs: .125rem;--space-2xs: .25rem;--space-xs: .5rem;--space-sm: .75rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2.5rem;--space-2xl: 4rem;--space-3xl: 5.5rem;--space-4xl: 7rem;--radius-tag: .5rem;--radius-card: .75rem;--radius-pill: 6.1875rem;--page-max: 75rem;--gutter: clamp(1rem, 4vw, 2rem);--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in: cubic-bezier(.7, 0, .84, 0);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--dur-micro: .12s;--dur-short: .22s;--dur-long: .42s;--dur-draw: 1.6s;--dur-loop: 8s;--rule: 1px solid var(--color-mist)}@font-face{font-family:Instrument Sans;font-style:normal;font-weight:400 500;font-display:swap;src:url(/fonts/instrument-sans-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Instrument Sans;font-style:normal;font-weight:400 500;font-display:swap;src:url(/fonts/instrument-sans-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Sans Fallback;src:local("Arial"),local("Liberation Sans"),local("Noto Sans");size-adjust:98.17%;ascent-override:98.81%;descent-override:25.47%;line-gap-override:0%}*,*:before,*:after{box-sizing:border-box}html,body{overflow-x:clip}html{scroll-behavior:smooth}body{margin:0;min-height:100dvh;background:var(--color-paper);color:var(--color-graphite);font-family:var(--font-body);font-size:var(--text-body);font-weight:400;font-style:normal;line-height:1.5;letter-spacing:-.005em;-webkit-font-smoothing:antialiased}h1,h2,h3,.brand{font-style:normal}a{color:inherit;text-decoration:none}a:focus-visible,.btn:focus-visible,.btn.is-focus{outline:3px solid var(--color-focus);outline-offset:3px}.skip{position:absolute;left:var(--gutter);top:var(--space-xs);z-index:40;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-tag);background:var(--color-ink);color:var(--color-accent-ink);transform:translateY(-160%)}.skip:focus{transform:none}.wrap{width:min(100% - (var(--gutter) * 2),var(--page-max));margin-inline:auto}.wrap--narrow{width:min(100% - (var(--gutter) * 2),48rem)}.nav-pill{position:fixed;top:var(--space-md);left:50%;z-index:30;display:inline-flex;align-items:center;gap:var(--space-md);max-width:calc(100vw - var(--space-lg));min-width:0;padding:var(--space-xs) var(--space-xs) var(--space-xs) var(--space-md);border:var(--rule);border-radius:var(--radius-pill);background:color-mix(in oklch,var(--color-paper) 94%,transparent);-webkit-backdrop-filter:blur(16px) saturate(120%);backdrop-filter:blur(16px) saturate(120%);transform:translate(-50%)}.brand{display:inline-flex;align-items:center;gap:var(--space-xs);min-width:0;color:var(--color-ink);font-size:var(--text-body-sm);font-weight:500;letter-spacing:-.02em;white-space:nowrap}.mark{display:block;width:1.25rem;height:1.25rem;flex-shrink:0}.nav-pill__links{display:none;align-items:center;gap:var(--space-2xs);margin:0;padding:0;list-style:none}.nav-pill__links a{padding:var(--space-xs) var(--space-sm);color:var(--color-graphite);font-size:var(--text-body-sm);white-space:nowrap}.nav-pill__links a:hover{color:var(--color-ink)}.nav-pill__links a:active,.foot a:active{opacity:.82}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:2.75rem;padding:var(--space-sm) var(--space-lg);border:1px solid var(--color-accent);border-radius:var(--radius-pill);background:var(--color-accent);color:var(--color-accent-ink);font-family:var(--font-body);font-size:var(--text-body);font-weight:500;letter-spacing:-.011em;line-height:1;white-space:nowrap;cursor:pointer;transition:background-color var(--dur-micro) var(--ease-out),color var(--dur-micro) var(--ease-out),border-color var(--dur-micro) var(--ease-out),opacity var(--dur-micro) var(--ease-out)}.btn:hover,.btn.is-hover{background:var(--color-ink);border-color:var(--color-ink);color:var(--color-accent-ink)}.btn:active,.btn.is-active{opacity:.82}.btn:disabled,.btn[aria-disabled=true],.btn.is-disabled{cursor:not-allowed;background:var(--color-fog);border-color:var(--color-fog);color:var(--color-muted)}.btn[data-state=loading],.btn.is-loading{cursor:progress;opacity:.7}.btn[data-state=error],.btn.is-error{background:var(--color-danger);border-color:var(--color-danger)}.btn[data-state=success],.btn.is-success{background:var(--color-ok);border-color:var(--color-ok)}.btn--ghost{background:transparent;border-color:var(--color-ink);color:var(--color-ink)}.btn--ghost:hover,.btn--ghost.is-hover{background:var(--color-ink);border-color:var(--color-ink);color:var(--color-accent-ink)}.btn--paper{background:var(--color-paper);border-color:var(--color-paper);color:var(--color-ink)}.btn--paper:hover,.btn--paper.is-hover{background:var(--color-ink);border-color:var(--color-ink);color:var(--color-accent-ink)}.nav-pill .btn{min-height:2.25rem;padding:var(--space-xs) var(--space-md);font-size:var(--text-body-sm)}.ask__who,.tile__kicker,.booked__kicker{margin:0;color:var(--color-accent);font-size:var(--text-caption);font-weight:500;letter-spacing:.04em;text-transform:uppercase}.ticks{display:grid;gap:var(--space-xs);margin:var(--space-lg) 0 0;padding:0;list-style:none}.ticks li{position:relative;padding-left:1.6rem;color:var(--color-graphite);font-size:var(--text-body-sm);line-height:1.5}.ticks li:before{content:"";position:absolute;left:.2rem;top:.4em;width:.7rem;height:.38rem;border-left:2px solid var(--color-accent);border-bottom:2px solid var(--color-accent);transform:rotate(-45deg)}.hero{position:relative;isolation:isolate;min-height:100dvh;padding:6.5rem 0 var(--space-2xl);overflow:clip;border-bottom:var(--rule);background:var(--grad-hero);color:var(--color-ink)}.hero__glow{position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse 50% 60% at 80% 40%,var(--color-hero-glow-warm),transparent 70%),radial-gradient(ellipse 35% 45% at 95% 95%,var(--color-hero-glow-soft),transparent 70%)}.hero:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.08;mix-blend-mode:multiply;background-image:url("data:image/svg+xml;utf8,<svg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>")}.hero__grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-2xl);align-items:center;width:min(100% - (var(--gutter) * 2),var(--page-max));margin-inline:auto}.hero__copy{min-width:0}.hero h1{min-width:0;margin:0;color:var(--color-ink);font-family:var(--font-display);font-size:clamp(2.15rem,3.2vw + .55rem,3.5rem);font-weight:500;font-style:normal;line-height:1.05;letter-spacing:-.04em;overflow-wrap:anywhere;text-wrap:balance}.hero__mark{color:var(--color-accent)}.lede{max-width:44ch;margin:var(--space-lg) 0 0;color:var(--color-muted);font-size:clamp(1rem,1.05vw + .68rem,1.1875rem);line-height:1.5;letter-spacing:-.018em;text-wrap:pretty}.hero__actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-md) var(--space-lg);margin-top:var(--space-xl)}.hero__cta{display:inline-flex;align-items:center;gap:var(--space-sm);min-height:2.75rem;padding:0 .35rem 0 var(--space-lg);border-radius:var(--radius-pill);background:var(--color-accent);color:var(--color-accent-ink);font-size:var(--text-body-sm);font-weight:500;letter-spacing:-.01em;white-space:nowrap;transition:background-color var(--dur-short) var(--ease-out),color var(--dur-short) var(--ease-out),transform var(--dur-micro) var(--ease-out)}.hero__cta:hover{background:var(--color-gold);color:var(--color-gold-ink)}.hero__cta:active{transform:scale(.98)}.hero__cta-icon{display:grid;place-items:center;width:2rem;height:2rem;border-radius:var(--radius-pill);background:color-mix(in oklch,var(--color-hero-field) 18%,transparent)}.hero__cta svg{display:block}.hero__link{padding:var(--space-xs) 0;color:var(--color-ink);font-size:var(--text-body-sm);font-weight:500;white-space:nowrap;text-decoration:underline;text-decoration-color:color-mix(in oklch,var(--color-ink) 30%,transparent);text-underline-offset:.3em;transition:color var(--dur-micro) var(--ease-out),text-decoration-color var(--dur-micro) var(--ease-out)}.hero__link:hover{color:var(--color-accent);text-decoration-color:var(--color-accent)}.trace{display:grid;gap:var(--space-sm);min-width:0;margin:0}.trace__card{min-width:0;padding:var(--space-md);border:var(--rule);border-radius:var(--radius-card);background:var(--color-paper);color:var(--color-graphite);box-shadow:var(--shadow-dossier)}.trace__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-sm) var(--space-md)}.fig__head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--space-2xs) var(--space-md)}.trace__title,.fig__title{margin:0;min-width:0;color:var(--color-ink);font-size:var(--text-body-sm);font-weight:500}.trace__meta,.fig__meta{display:flex;flex-wrap:wrap;gap:var(--space-2xs) var(--space-md);margin:0;color:var(--color-slate);font-size:var(--text-caption)}.trace__tabs{display:inline-flex;max-width:100%;padding:3px;border:var(--rule);border-radius:var(--radius-pill);background:var(--color-linen)}.trace__tabs button{min-height:2rem;padding:0 var(--space-sm);border:0;border-radius:var(--radius-pill);background:transparent;color:var(--color-muted);font-family:var(--font-body);font-size:var(--text-caption);font-weight:500;line-height:1;white-space:nowrap;cursor:pointer;transition:background-color var(--dur-short) var(--ease-out),color var(--dur-short) var(--ease-out)}.trace__tabs button:hover{color:var(--color-ink)}.trace__tabs button[aria-pressed=true]{background:var(--color-ink);color:var(--color-paper)}.trace__tabs button:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.fall{display:grid;gap:var(--space-sm);margin:var(--space-lg) 0 0;padding:0;list-style:none}.fall__row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-2xs) var(--space-sm);font-size:var(--text-body-sm)}.fall__name{min-width:0;color:var(--color-graphite)}.fall__value{grid-row:1;grid-column:2;color:var(--color-ink);font-weight:500;font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.fall__track{position:relative;grid-column:1 / -1;height:.9rem}.fall__track:before{content:"";position:absolute;top:-.3rem;bottom:-.3rem;left:var(--zero);width:1px;background:var(--color-fog)}.fall__bar{position:absolute;top:0;bottom:0;left:var(--x);width:var(--w);border-radius:3px;background:var(--color-ink);transition:left var(--dur-long) var(--ease-out),width var(--dur-long) var(--ease-out),background-color var(--dur-short) var(--ease-out)}.fall__row.is-minus .fall__bar{background:color-mix(in oklab,var(--color-accent) 24%,var(--color-paper));box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--color-accent) 50%,transparent)}.fall__row.is-minus .fall__value{color:var(--color-muted);font-weight:400}.fall__row.is-sub .fall__bar{background:color-mix(in oklch,var(--color-ink) 62%,var(--color-paper))}.fall__row.is-total{padding-top:var(--space-sm);border-top:var(--rule)}.fall__row.is-total .fall__name{color:var(--color-ink);font-weight:500}.fall__row.is-total .fall__bar{background:var(--color-teal)}.fall__row.is-total .fall__value{color:var(--color-teal)}.fall__row.is-total.is-neg .fall__bar{background:var(--color-accent)}.fall__row.is-total.is-neg .fall__value{color:var(--color-wine)}.trace__stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-sm);margin:var(--space-lg) 0 0;padding-top:var(--space-md);border-top:var(--rule)}.trace__stats>div{display:flex;flex-direction:column;justify-content:space-between;gap:var(--space-2xs);min-width:0}.trace__stats dt{color:var(--color-slate);font-size:var(--text-caption);line-height:1.3}.trace__stats dd{margin:0;color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-subhead);font-weight:400;line-height:1.1;letter-spacing:-.02em;font-variant-numeric:tabular-nums;transition:color var(--dur-short) var(--ease-out)}.trace__stats dd.is-over{color:var(--color-wine)}.trace__whatif{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:var(--space-2xs) var(--space-sm);margin-top:var(--space-md);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-tag);background:var(--color-tile-wash)}.trace__whatif p{margin:0;min-width:0}.trace__whatif-label{grid-column:1 / -1;color:var(--color-accent);font-size:var(--text-caption);font-weight:500;letter-spacing:.04em;text-transform:uppercase}.trace__whatif-text{color:var(--color-ink);font-size:var(--text-body-sm);line-height:1.4}.trace__whatif-value{color:var(--color-teal);font-size:var(--text-body-sm);font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap}.trace>figcaption{color:var(--color-slate);font-size:var(--text-caption)}@media(min-width:30rem){.trace__card{padding:var(--space-lg)}.fall__row{grid-template-columns:9.75rem minmax(0,1fr) 4.25rem}.fall__value,.fall__track{grid-row:auto;grid-column:auto}.trace__whatif{grid-template-columns:auto minmax(0,1fr) auto}.trace__whatif-label{grid-column:auto}}@media(min-width:64rem){.hero{display:grid;align-items:center;padding:6rem 0 var(--space-xl)}.hero__grid{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(2.5rem,5vw,5rem)}}@media(prefers-reduced-motion:no-preference){.hero h1,.lede,.hero__actions,.trace>*{animation:hero-rise var(--dur-long) var(--ease-out) both}.lede{animation-delay:70ms}.hero__actions{animation-delay:.13s}.trace__card{animation-delay:.12s}.trace>figcaption{animation-delay:.32s}.fall__bar{animation:bar-grow var(--dur-long) var(--ease-out) both;transform-origin:left center}.fall__row.is-minus .fall__bar{transform-origin:right center}.fall__row:nth-child(1) .fall__bar{animation-delay:.26s}.fall__row:nth-child(2) .fall__bar{animation-delay:.36s}.fall__row:nth-child(3) .fall__bar{animation-delay:.46s}.fall__row:nth-child(4) .fall__bar{animation-delay:.56s}.fall__row:nth-child(5) .fall__bar{animation-delay:.66s}.fall__row:nth-child(6) .fall__bar{animation-delay:.76s}}@keyframes hero-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes bar-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.band{padding:var(--space-3xl) 0;background:var(--color-paper)}.band--linen{background:var(--color-linen)}.section-head{max-width:40rem;margin:0 0 var(--space-2xl);text-align:left}.section-head h2{margin:0 0 var(--space-sm);min-width:0;color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-display);font-weight:400;font-style:normal;line-height:1;letter-spacing:-.032em;overflow-wrap:anywhere}.section-head p{margin:0;max-width:52ch;color:var(--color-muted);font-size:var(--text-body);line-height:1.55}.asks{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-md)}.ask{display:flex;flex-direction:column;min-width:0;padding:var(--space-lg);border:var(--rule);border-radius:var(--radius-card);background:var(--color-linen)}.ask h3{max-width:22ch;margin:var(--space-sm) 0 var(--space-xl);min-width:0;color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-heading-sm);font-weight:400;line-height:1.15;letter-spacing:-.024em;overflow-wrap:anywhere}.ask__answer{margin:auto 0 0;padding-top:var(--space-md);border-top:var(--rule);color:var(--color-muted);font-size:var(--text-body-sm);line-height:1.5}@media(min-width:48rem){.asks{grid-template-columns:repeat(2,minmax(0,1fr))}}.steps{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-xl);margin:0;padding:0;list-style:none}.step{min-width:0;padding-top:var(--space-md);border-top:3px solid var(--color-ink)}.step__num{color:var(--color-slate);font-size:var(--text-caption);font-weight:500;letter-spacing:.04em;font-variant-numeric:tabular-nums}.step h3{margin:var(--space-sm) 0 var(--space-xs);min-width:0;color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-heading-sm);font-weight:400;line-height:1.15;letter-spacing:-.024em;overflow-wrap:anywhere}.step p{margin:0;max-width:40ch;color:var(--color-muted);font-size:var(--text-body);line-height:1.55}@media(min-width:56rem){.steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-xl)}}.bento{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-md)}.tile{display:flex;flex-direction:column;gap:var(--space-lg);min-width:0;padding:var(--space-md);border:var(--rule);border-radius:var(--radius-card);background:var(--color-linen);transition:border-color var(--dur-short) var(--ease-out),box-shadow var(--dur-short) var(--ease-out),translate var(--dur-short) var(--ease-out)}.tile:hover,.tile:focus-within{border-color:color-mix(in oklch,var(--color-accent) 36%,var(--color-mist));box-shadow:var(--shadow-dossier);translate:0 -2px}.tile__copy{min-width:0}.tile__copy h3{max-width:22ch;margin:var(--space-xs) 0 0;min-width:0;color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-heading-sm);font-weight:400;line-height:1.15;letter-spacing:-.024em;overflow-wrap:anywhere}.tile__copy>p:not(.tile__kicker){max-width:44ch;margin:var(--space-xs) 0 0;color:var(--color-muted);font-size:var(--text-body-sm);line-height:1.55}.tile__fig{min-width:0;margin-top:auto;padding:var(--space-md);border:var(--rule);border-radius:var(--radius-tag);background:var(--color-paper)}.bento__note{margin:var(--space-md) 0 0;color:var(--color-slate);font-size:var(--text-caption)}@media(min-width:30rem){.tile{padding:var(--space-lg)}}@media(min-width:40rem){.bento{grid-template-columns:repeat(2,minmax(0,1fr))}.tile--lines,.tile--forecast{grid-column:1 / -1}}@media(min-width:64rem){.bento{grid-template-columns:repeat(6,minmax(0,1fr))}.tile--lines,.tile--forecast{display:grid;grid-column:span 4;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:start}.tile--students,.tile--plan{grid-column:span 2}.tile--lines .tile__fig,.tile--forecast .tile__fig{margin-top:0}}.lines{display:grid;gap:2px;margin:var(--space-sm) 0 0;padding:0;list-style:none}.line{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(2rem,1fr) 3.5rem;grid-template-rows:auto 0fr;align-items:center;column-gap:var(--space-sm);padding:var(--space-xs);border-radius:var(--radius-tag);font-size:var(--text-body-sm);transition:background-color var(--dur-short) var(--ease-out),grid-template-rows var(--dur-short) var(--ease-out)}.line:hover,.line:focus-visible,.lines:not(:has(.line:hover,.line:focus-visible)) .line.is-flagged{grid-template-rows:auto 1fr;background:var(--color-tile-wash)}.line:focus-visible{outline:3px solid var(--color-focus);outline-offset:1px}.line__name{min-width:0;overflow:hidden;color:var(--color-slate);text-overflow:ellipsis;white-space:nowrap}.line__name strong{margin-right:.3em;color:var(--color-ink);font-weight:500}@media(max-width:25rem){.line__type{display:none}}.line__bar{position:relative;height:.45rem;border-radius:var(--radius-pill);background:color-mix(in oklch,var(--color-ink) 6%,transparent)}.line__bar:after{content:"";position:absolute;top:0;bottom:0;left:0;width:var(--m);border-radius:inherit;background:var(--color-teal)}.line.is-flagged .line__bar:after{background:var(--color-accent)}.line__value{color:var(--color-ink);font-weight:500;font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.line.is-flagged .line__value{color:var(--color-wine)}.line__detail{grid-column:1 / -1;align-self:stretch;min-height:0;overflow:hidden;color:var(--color-muted);font-size:var(--text-caption);line-height:1.8}.line.is-flagged .line__detail{color:var(--color-wine)}.cohort-readout{min-height:2.6em;margin:0 0 var(--space-sm);color:var(--color-muted);font-size:var(--text-body-sm);line-height:1.3}.cohort-readout strong{color:var(--color-ink);font-weight:500}.cohorts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-xs);height:6.5rem}.cohort{display:flex;flex-direction:column;justify-content:flex-end;min-width:0;height:100%;padding:0;border:0;border-radius:var(--radius-tag);background:none;font-family:var(--font-body);cursor:pointer}.cohort:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.cohort__bar{display:block;height:calc(var(--h) * .78);border-radius:6px 6px 0 0;background:color-mix(in oklch,var(--color-ink) 82%,var(--color-paper));transition:background-color var(--dur-short) var(--ease-out)}.cohort:hover .cohort__bar{background:var(--color-ink)}.cohort.is-active .cohort__bar{background:var(--color-accent)}.cohort__name{margin-top:var(--space-xs);color:var(--color-slate);font-size:var(--text-caption);line-height:1.2;text-align:center}.cohort.is-active .cohort__name{color:var(--color-ink);font-weight:500}.stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md);margin:var(--space-md) 0 0;padding-top:var(--space-md);border-top:var(--rule)}.stats dt{color:var(--color-slate);font-size:var(--text-caption)}.stats dd{margin:0;color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-heading-sm);font-weight:400;letter-spacing:-.024em;font-variant-numeric:tabular-nums}.toggles{display:grid;gap:var(--space-2xs);margin:var(--space-sm) 0 0;padding:0;list-style:none}.toggle{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--space-sm);margin:0 calc(var(--space-xs) * -1);padding:var(--space-xs);border-radius:var(--radius-tag);cursor:pointer;transition:background-color var(--dur-micro) var(--ease-out)}.toggle:hover{background:var(--color-linen)}.toggle:has(input:focus-visible){outline:3px solid var(--color-focus);outline-offset:1px}.toggle input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.toggle__switch{position:relative;width:2.25rem;height:1.3rem;border-radius:var(--radius-pill);background:var(--color-fog);transition:background-color var(--dur-short) var(--ease-out)}.toggle__switch:after{content:"";position:absolute;top:2px;left:2px;width:calc(1.3rem - 4px);height:calc(1.3rem - 4px);border-radius:50%;background:var(--color-paper);box-shadow:0 1px 2px color-mix(in oklch,var(--color-ink) 24%,transparent);transition:transform var(--dur-short) var(--ease-out)}.toggle:has(input:checked) .toggle__switch{background:var(--color-accent)}.toggle:has(input:checked) .toggle__switch:after{transform:translate(.95rem)}.toggle__label{min-width:0;color:var(--color-muted);font-size:var(--text-body-sm);line-height:1.35;transition:color var(--dur-micro) var(--ease-out)}.toggle:has(input:checked) .toggle__label{color:var(--color-ink)}.toggle__value{color:var(--color-slate);font-size:var(--text-body-sm);font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap}.toggle:has(input:checked) .toggle__value{color:var(--color-teal)}.plan-total{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--space-2xs) var(--space-md);margin:var(--space-sm) 0 0;padding-top:var(--space-sm);border-top:2px solid var(--color-ink)}.plan-total span{color:var(--color-ink);font-size:var(--text-body-sm);font-weight:500}.plan-total strong{color:var(--color-teal);font-family:var(--font-display);font-size:var(--text-heading-sm);font-weight:400;letter-spacing:-.024em;font-variant-numeric:tabular-nums}.plan-total strong.is-zero{color:var(--color-slate)}@supports (animation-timeline: view()){@media(prefers-reduced-motion:no-preference){.tile,.ask,.step{animation:sweep-in linear both;animation-timeline:view();animation-range:entry 0% entry 36%}}}@keyframes sweep-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.tile--forecast .fig__head{margin-bottom:var(--space-sm)}.key{display:inline-flex;align-items:center;gap:var(--space-2xs);white-space:nowrap}.key:before{content:"";width:.9rem;height:2px;border-radius:2px;background:var(--color-slate)}.key--plan:before{height:3px;background:var(--color-accent)}.forecast{display:block;width:100%;height:auto}.fc__zero{stroke:var(--color-slate);stroke-width:1;stroke-dasharray:4 4}.fc__axis{fill:var(--color-slate);font-family:var(--font-body);font-size:11px}.fc__base,.fc__plan{fill:none;stroke-linecap:round;stroke-linejoin:round}.fc__base{stroke:var(--color-slate);stroke-width:2}.fc__plan{stroke:var(--color-accent);stroke-width:2.75}.fc__dot--base{fill:var(--color-slate)}.fc__dot--plan{fill:var(--color-accent)}.fc__end{fill:var(--color-ink);font-family:var(--font-body);font-size:13px;font-weight:500}.fc__end--base{fill:var(--color-muted)}.levers{display:flex;flex-wrap:wrap;gap:var(--space-xs);margin:var(--space-md) 0 0;padding:0;list-style:none}.levers li{padding:var(--space-2xs) var(--space-sm);border:var(--rule);border-radius:var(--radius-tag);background:var(--color-linen);color:var(--color-ink);font-size:var(--text-caption);font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap}.band--field{position:relative;isolation:isolate;background:radial-gradient(ellipse 50% 70% at 92% 10%,var(--color-hero-glow-accent),transparent 70%),radial-gradient(ellipse 40% 60% at 4% 100%,var(--color-hero-glow-cobalt),transparent 70%),var(--color-hero-field);color:var(--color-hero-copy)}.band--field .section-head h2{color:var(--color-hero-copy)}.band--field .section-head p{color:var(--color-hero-muted)}.tenets{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-xl)}.tenet{min-width:0;padding-top:var(--space-md);border-top:1px solid color-mix(in oklch,var(--color-hero-copy) 22%,transparent)}.tenet h3{margin:0 0 var(--space-sm);min-width:0;color:var(--color-hero-copy);font-family:var(--font-display);font-size:var(--text-heading-sm);font-weight:400;line-height:1.15;letter-spacing:-.024em;overflow-wrap:anywhere}.tenet p{margin:0;max-width:40ch;color:var(--color-hero-muted);font-size:var(--text-body);line-height:1.55}@media(min-width:40rem){.tenets{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:68rem){.tenets{grid-template-columns:repeat(4,minmax(0,1fr))}}.faq{margin:0}.faq>div{padding:var(--space-lg) 0;border-top:var(--rule)}.faq>div:last-child{border-bottom:var(--rule)}.faq dt{margin:0 0 var(--space-xs);min-width:0;color:var(--color-ink);font-size:var(--text-body);font-weight:500;overflow-wrap:anywhere}.faq dd{margin:0;max-width:60ch;color:var(--color-muted);font-size:var(--text-body-sm);line-height:1.6}.cta{padding:var(--space-3xl) 0;background:var(--color-accent);color:var(--color-accent-ink)}.cta__inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-lg)}.cta p{margin:0;min-width:0;max-width:18ch;font-family:var(--font-display);font-size:var(--text-display);font-weight:400;font-style:normal;line-height:1;letter-spacing:-.032em;overflow-wrap:anywhere}.band[id]{scroll-margin-top:4.5rem}.foot{background:var(--color-obsidian);color:var(--color-foot-ink);padding:var(--space-3xl) 0 var(--space-2xl)}.foot__statement{margin:0 0 var(--space-2xl);min-width:0;max-width:16ch;color:var(--color-paper);font-family:var(--font-display);font-size:var(--text-display);font-weight:400;font-style:normal;line-height:1;letter-spacing:-.032em;overflow-wrap:anywhere}.foot__body{display:grid;gap:var(--space-2xl);padding-bottom:var(--space-2xl);border-bottom:1px solid var(--color-foot-rule)}.foot__brand-block{display:grid;justify-items:start;align-content:start;gap:var(--space-md);min-width:0}.foot__brand{margin:0;color:var(--color-paper);font-size:var(--text-subhead);font-weight:500;letter-spacing:-.02em}.foot__lede{margin:0;max-width:46ch;color:var(--color-foot-ink);font-size:var(--text-body);line-height:1.5}.foot__dirs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-xl);min-width:0}.foot__label{margin:0 0 var(--space-sm);color:var(--color-accent);font-size:var(--text-caption);font-weight:500;letter-spacing:.04em}.foot__dirs ul{display:grid;gap:var(--space-xs);margin:0;padding:0;list-style:none}.foot__dirs a{color:var(--color-foot-link);font-size:var(--text-body-sm);white-space:nowrap}.foot__dirs a:hover,.foot__dirs a:focus-visible{color:var(--color-paper)}.foot__copy{margin:var(--space-lg) 0 0;font-size:var(--text-body-sm)}.foot__copy a{color:inherit;text-decoration:underline;text-underline-offset:.18em}.foot__copy a:hover{color:var(--color-paper)}.foot--slim{padding:var(--space-lg) 0}.foot__slim{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-sm) var(--space-lg)}.foot--slim .foot__copy{margin:0}.foot__slim nav{display:flex;flex-wrap:wrap;gap:var(--space-sm) var(--space-md)}.foot__slim a{color:var(--color-foot-link);font-size:var(--text-body-sm)}.foot__slim a:hover{color:var(--color-paper)}.crumbs ol{display:flex;flex-wrap:wrap;gap:.4rem;margin:0 0 var(--space-md);padding:0;list-style:none;color:var(--color-muted);font-size:var(--text-caption)}.crumbs li{display:inline-flex;gap:.4rem}.crumbs li:not(:last-child):after{content:"/";color:var(--color-slate)}.crumbs a:hover{color:var(--color-ink)}.crumbs [aria-current=page]{color:var(--color-graphite)}.doc{padding:7rem 0 var(--space-3xl);background:var(--grad-next)}.doc__body{width:min(100% - (var(--gutter) * 2),42rem);margin-inline:auto}.doc h1{margin:0;color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-display);font-weight:400;line-height:1;letter-spacing:-.032em}.doc__lede{max-width:48ch;margin:var(--space-md) 0 0;color:var(--color-muted);font-size:clamp(1rem,.6vw + .85rem,1.1875rem);line-height:1.5}.doc h2{margin:var(--space-2xl) 0 var(--space-sm);color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-heading-sm);font-weight:400;letter-spacing:-.02em}.doc p,.doc li{color:var(--color-graphite);line-height:1.55}.doc .doc__lede{color:var(--color-muted)}.doc ul{margin:0;padding-left:1.15rem}.doc a{color:var(--color-ink);text-decoration:underline;text-underline-offset:.15em}.not-found{padding:7rem 0 var(--space-3xl);background:var(--grad-next)}.not-found h1{margin:0;color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-display);font-weight:400;line-height:1;letter-spacing:-.032em}.not-found p{max-width:40ch;color:var(--color-muted);line-height:1.5}.not-found__actions{display:flex;flex-wrap:wrap;gap:var(--space-md);margin-top:var(--space-xl)}.page-book{display:flex;flex-direction:column}.book{flex:1;padding:7rem 0 var(--space-3xl);background:var(--grad-next)}.book__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-2xl);align-items:start}.book__intro{min-width:0}.book__intro h1{margin:0;min-width:0;color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-display);font-weight:400;line-height:1;letter-spacing:-.032em;overflow-wrap:anywhere}.book__lede{max-width:40ch;margin:var(--space-md) 0 0;color:var(--color-muted);font-size:clamp(1rem,.6vw + .85rem,1.1875rem);line-height:1.5}.book__expect{margin-top:var(--space-xl);max-width:40ch}.book__card{min-width:0;padding:var(--space-lg);border:var(--rule);border-radius:var(--radius-card);background:var(--color-paper);box-shadow:var(--shadow-dossier)}@media(min-width:60rem){.book__grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:var(--space-3xl)}.book__intro{position:sticky;top:7rem}.book__card{padding:var(--space-xl)}}.booking__group{min-width:0;margin:0 0 var(--space-xl);padding:0;border:0}.booking__group legend{margin:0 0 var(--space-xs);padding:0;color:var(--color-ink);font-size:var(--text-body);font-weight:500}.booking__optional{margin-left:var(--space-xs);color:var(--color-slate);font-size:var(--text-caption);font-weight:400}.booking__hint{margin:0 0 var(--space-md);color:var(--color-slate);font-size:var(--text-caption)}.booking__error{margin:var(--space-sm) 0 0;color:var(--color-danger);font-size:var(--text-body-sm);font-weight:500}.booking__error--form{margin-top:var(--space-md)}.day input,.slot input,.topic input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.days{display:grid;grid-auto-flow:column;grid-auto-columns:4.25rem;gap:var(--space-xs);margin:0 0 var(--space-md);padding:var(--space-2xs) var(--space-2xs) var(--space-xs);overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:thin}.day,.slot,.topic span{border:var(--rule);background:var(--color-paper);transition:background-color var(--dur-micro) var(--ease-out),border-color var(--dur-micro) var(--ease-out),color var(--dur-micro) var(--ease-out)}.day{position:relative;display:grid;justify-items:center;padding:var(--space-sm) var(--space-2xs);border-radius:var(--radius-tag);color:var(--color-ink);scroll-snap-align:start;cursor:pointer}.day__weekday,.day__month{color:var(--color-slate);font-size:var(--text-caption);line-height:1.3}.day__date{font-size:var(--text-subhead);font-weight:500;line-height:1.2;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.day:hover,.slot:hover,.topic:hover span{border-color:var(--color-ink)}.day:has(input:checked){border-color:var(--color-ink);background:var(--color-ink);color:var(--color-paper)}.day:has(input:checked) .day__weekday,.day:has(input:checked) .day__month{color:var(--color-tile-ink-soft)}.slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(5.75rem,1fr));gap:var(--space-xs)}.slot{position:relative;display:grid;place-items:center;min-height:2.75rem;padding:var(--space-xs);border-radius:var(--radius-tag);color:var(--color-ink);font-size:var(--text-body-sm);font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap;cursor:pointer}.slot:has(input:checked){border-color:var(--color-accent);background:var(--color-accent);color:var(--color-accent-ink)}.day:has(input:focus-visible),.slot:has(input:focus-visible),.topic:has(input:focus-visible) span{outline:3px solid var(--color-focus);outline-offset:2px}.fields{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-md)}.field{display:grid;gap:var(--space-2xs);min-width:0}.field>span{color:var(--color-ink);font-size:var(--text-body-sm);font-weight:500}.field input,.field select,.field textarea{width:100%;min-height:2.75rem;padding:var(--space-sm) var(--space-md);border:1px solid var(--color-fog);border-radius:var(--radius-tag);background:var(--color-paper);color:var(--color-graphite);font-family:var(--font-body);font-size:var(--text-body);line-height:1.3;transition:border-color var(--dur-micro) var(--ease-out),box-shadow var(--dur-micro) var(--ease-out)}.field textarea{min-height:6rem;resize:vertical}.field input:hover,.field select:hover,.field textarea:hover{border-color:var(--color-slate)}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{border-color:var(--color-accent);outline:none;box-shadow:0 0 0 3px color-mix(in oklch,var(--color-accent) 24%,transparent)}.field input:user-invalid,.field select:user-invalid,.booking.is-submitted .field input:invalid,.booking.is-submitted .field select:invalid{border-color:var(--color-danger)}.topics{display:flex;flex-wrap:wrap;gap:var(--space-xs);margin:var(--space-xs) 0 var(--space-lg)}.topic{position:relative;display:inline-flex}.topic span{padding:var(--space-xs) var(--space-md);border-radius:var(--radius-pill);color:var(--color-ink);font-size:var(--text-body-sm);white-space:nowrap;cursor:pointer}.topic:has(input:checked) span{border-color:var(--color-ink);background:var(--color-ink);color:var(--color-paper)}.booking__submit{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-md);padding-top:var(--space-lg);border-top:var(--rule)}.booking__summary{margin:0;min-width:0;color:var(--color-slate);font-size:var(--text-body-sm)}.booking__summary.is-set{color:var(--color-ink);font-weight:500}.booked{padding:var(--space-lg) 0}.booked:focus{outline:none}.booked h2{margin:var(--space-sm) 0;color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-heading);font-weight:400;line-height:1.1;letter-spacing:-.024em;overflow-wrap:anywhere}.booked p:not(.booked__kicker){max-width:48ch;margin:0 0 var(--space-xl);color:var(--color-muted);line-height:1.55}.booked strong{color:var(--color-ink);font-weight:500}@media(min-width:30rem){.fields{grid-template-columns:repeat(2,minmax(0,1fr))}.field--wide{grid-column:1 / -1}}@media(min-width:44rem){.nav-pill__links{display:flex}}@media(min-width:60rem){.foot__statement{max-width:18ch}.foot__body{grid-template-columns:minmax(0,1.3fr) minmax(0,.9fr);align-items:start;column-gap:var(--space-3xl)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn,a,.day,.slot,.topic span,.tile,.line,.fall__bar,.toggle__switch,.toggle__switch:after{transition:none}}
