/* A quiet, single-family interface around a persistent ice sculpture. */
:root{--paper:#e9eded;--ink:#252b2b;--muted:#586363;--line:#bfc8c6;--orange:#b84b24;--focus:#a33c17;--lime:#dce3e0;--mono:Arial,Helvetica,sans-serif;--race-type:Arial,Helvetica,sans-serif;--mobile-scene:clamp(190px,30svh,260px)}
html{scroll-behavior:smooth;scroll-padding-top:32px}body{font:16px/1.55 Arial,Helvetica,sans-serif;background:var(--paper);color:var(--ink)}h1,h2,h3,.logo,.result .big,button,input,select,textarea{font-family:Arial,Helvetica,sans-serif}h1,h2,h3{font-weight:500;letter-spacing:-.04em}h1{font-size:48px}h2{font-size:36px}h3{font-size:24px}.wrap{max-width:1440px;padding:0 48px}.top{height:88px;gap:30px;position:relative;z-index:30;border-color:var(--line)}.logo{font-size:28px;font-weight:700;letter-spacing:-1.2px}.logo span{font-size:inherit;color:var(--orange)}nav{gap:5px;font-family:Arial,Helvetica,sans-serif;font-size:14px;letter-spacing:0;text-transform:none}nav a{padding:12px;border-radius:24px;min-height:44px}nav a:hover,nav a.active{background:#d3dcd8;color:#182520;border-bottom:0}.nav-cta,.btn,.race-action{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;border:1px solid var(--ink);border-radius:28px;background:var(--ink);color:#fff;font:500 14px/1.4 Arial,Helvetica,sans-serif;letter-spacing:0;text-transform:none;gap:10px;text-align:center;transition:background .18s,color .18s,border-color .18s}.btn.light,.race-action-secondary{background:transparent;color:var(--ink);border-color:#7e8d87}.btn.lime{background:var(--ink);color:#fff;border-color:var(--ink)}.nav-cta:hover,.btn:hover,.race-action:hover{background:#43574e;border-color:#43574e;color:#fff}.btn.light:hover,.race-action-secondary:hover{background:#d3dcd8;border-color:#7e8d87;color:#182520}.mobile-toggle{border:1px solid #7e8d87;border-radius:24px;font:14px Arial,Helvetica,sans-serif;min-height:44px;padding:11px 18px}.race-journey{display:grid;grid-template-columns:55% 45%;position:relative;isolation:isolate}.race-visual{position:sticky;top:0;grid-column:2;grid-row:1;align-self:start;width:100%;height:100svh;max-height:1050px;min-height:560px;z-index:2;pointer-events:none}.cube-stage{position:relative;width:100%;height:100%;overflow:hidden;pointer-events:none}.cube-stage canvas{display:block;width:100%;height:100%;pointer-events:none}.cube-fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;mask-image:radial-gradient(ellipse at center,black 40%,transparent 72%)}.race-story{grid-column:1;grid-row:1;min-width:0;padding-right:64px}.race-intro{min-height:calc(100svh - 88px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:70px 0 100px}.race-label{font-size:12px;line-height:1.5;letter-spacing:.03em;color:var(--muted)}.race-intro h1{font-size:48px;line-height:1.08;letter-spacing:-.05em;margin:26px 0}.race-intro>p:not(.race-label),.race-chapter>p{font-size:16px;line-height:1.65;max-width:430px;color:var(--muted)}.race-intro>.race-action{margin-top:30px}.race-chapter{padding:80px 0;min-height:440px;border-top:1px solid var(--line);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;scroll-margin-top:40px}.race-chapter h2{font-size:36px;line-height:1.15;margin-bottom:20px;position:relative;transition:color .25s}.race-chapter>p{margin-bottom:28px}.race-chapter.is-current h2{color:var(--orange)}.race-chapter.is-current h2:before{content:'';position:absolute;width:6px;height:6px;border-radius:50%;background:var(--orange);left:-18px;top:.55em}.race-closing{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:25px;padding:42px 0 60px}.race-closing p{font-size:16px;color:var(--muted)}.race-sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.race-design-note{padding:45px 0 60px;border-bottom:1px solid var(--line);margin-bottom:50px}.race-design-note h2{font-size:36px;line-height:1.15;margin:24px 0}.race-design-note>p{max-width:800px;font-size:16px;color:var(--muted)}.race-design-note>.race-label{font-size:12px}.race-design-columns{display:grid;grid-template-columns:1fr 1fr;gap:45px;margin:35px 0}.race-design-columns h3{font-size:24px;margin-bottom:16px}.race-design-columns p{font-size:16px;color:var(--muted)}.race-design-note .race-design-disclosure{font-size:14px;margin-top:28px}
/* Apply the same vocabulary to functional pages. */
.page-head{max-width:950px}.page-head h1,.recipe-layout h1,.article h1{font-size:48px;font-weight:500;letter-spacing:-.045em}.page-head p,.card p,.article p,.ice-invitation p,.design-note>p,.design-options p,.name p,.dialog p,.explain,.queue p{font-size:16px}.eyebrow,.index-label,.card .meta,.tag,.footnote,.cost-table th,.field label,.result label{font-family:Arial,Helvetica,sans-serif;font-size:12px;letter-spacing:.02em}.eyebrow:before{display:none}.card h3{font-size:24px;font-weight:500}.section-head h2,.design-note>h2{font-size:36px}.chip{border-radius:24px;min-height:44px;padding:10px 18px;font:14px Arial,Helvetica,sans-serif}.chip.active{background:var(--ink);color:#fff}.tag{border-radius:5px}.result,.band{background:var(--ink)}.result .big{font-size:48px;font-weight:500}.result p,.result dt,.result dd{font-size:14px;color:#e2e9e4}.result .eyebrow{color:#e2e9e4}.band .btn.lime{background:#e9eded;color:#252b2b;border-color:#e9eded}.panel{background:#f3f5f4;border-radius:12px}.notice{background:#dce3e0;border:1px solid #94a49b;font-size:14px}.textlink{font-size:14px;min-height:44px;display:inline-flex;align-items:center}.footer{font-size:14px}.footer .logo{font-size:24px}.footer-links a{min-height:44px;display:inline-flex;align-items:center}.footnote{font-size:12px;line-height:1.6}button:focus-visible,a:focus-visible{outline:3px solid var(--focus);outline-offset:4px}.skip:focus{z-index:100;background:#fff;color:var(--ink)}
.race-visual{height:calc(100svh - 104px);min-height:400px;max-height:950px;display:flex;align-items:center}.race-visual .cube-stage{height:min(70svh,680px);max-height:100%;width:100%;margin:auto}
@media(min-width:1600px){.race-story{padding-right:90px}}
@media(max-width:1100px){.wrap{padding:0 30px}.top{gap:18px}nav{gap:0}nav a{padding:12px 9px}.race-story{padding-right:30px}.race-intro h1{font-size:44px}.race-visual{min-height:500px}.race-chapter{min-height:410px}}
@media(max-width:740px){html{scroll-padding-top:calc(var(--mobile-scene) + 24px)}.wrap{padding:0 22px}.top{height:76px;gap:18px}.logo{font-size:26px}.top nav{top:75px;background:var(--paper);border-radius:16px;padding:12px}.top nav a{padding:12px 16px}.race-journey{display:flex;flex-direction:column}.race-visual{order:0;position:sticky;top:0;height:var(--mobile-scene);min-height:var(--mobile-scene);max-height:var(--mobile-scene);width:calc(100% + 44px);margin:0 -22px;background:var(--paper);z-index:10;border-bottom:1px solid #c5ceca}.cube-stage{width:100%;max-width:470px;margin:auto}.race-story{order:1;padding:0;background:var(--paper)}.race-intro{min-height:490px;padding:38px 0 56px;justify-content:flex-start}.race-intro h1{font-size:36px;margin:20px 0}.race-intro>p:not(.race-label),.race-chapter>p{font-size:16px;line-height:1.6}.race-intro>.race-action{margin-top:26px}.race-chapter{min-height:430px;padding:48px 0;scroll-margin-top:24px}.race-chapter h2{font-size:32px;margin-bottom:20px}.race-chapter.is-current h2:before{left:-14px;width:5px;height:5px}.race-action{scroll-margin-top:24px}.race-closing{flex-direction:column;align-items:flex-start;padding:34px 0 45px;gap:22px}.race-action,.btn,.nav-cta{font-size:14px;min-height:48px;padding:12px 20px}.race-design-columns{grid-template-columns:1fr;gap:28px}.race-design-note h2,.section-head h2,.design-note>h2{font-size:32px}.page-head h1,.recipe-layout h1,.article h1{font-size:40px}.footer .logo{font-size:24px}.cost-table th{font-size:12px}.cost-table input{font-size:14px}.field-grid{grid-template-columns:1fr}.race-design-note{padding-top:30px}}
@media(max-width:1100px){.nav-cta{display:none}}
@media(max-width:740px){.race-visual .cube-stage{height:100%;max-height:100%;margin:auto}html:not(:has(.race-journey)){scroll-padding-top:24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}a,button,.race-chapter h2{transition:none!important}}
@media print{.race-visual{display:none}.race-journey{display:block}.race-story{padding:0}.race-intro,.race-chapter{min-height:0;padding:25px 0}.race-closing{padding:20px 0}.race-chapter h2{color:#252b2b!important}}
