/* Gauntlet — site styles
   Tokens (colours, fonts, gutter, easing) live on .g below. Change --ember to re-colour the whole site;
   the hero corridor reads the same variable. */

html{background:#0C0B0A;color-scheme:dark;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{margin:0;background:#0C0B0A}
a{color:#EEEAE2}a:hover{color:#FF4D1A}

.g{--ember:#FF4D1A;--ink:#0C0B0A;--steel:#141311;--line:#2A2825;--bone:#EEEAE2;--ash:#9A958B;--disp:'Jacquard 24','Courier New',ui-monospace,monospace;--sans:'Instrument Sans','Helvetica Neue',Arial,sans-serif;--mono:'Martian Mono',ui-monospace,Menlo,Consolas,monospace;--gut:clamp(16px,4vw,56px);--ease:cubic-bezier(.2,.8,.1,1);position:relative;background:var(--ink);color:var(--bone);font-family:var(--sans);font-size:17px;line-height:1.55;overflow-x:clip;-webkit-font-smoothing:antialiased}
.g *,.g *::before,.g *::after{box-sizing:border-box}
.g ::selection{background:var(--ember);color:var(--ink)}
.g a{color:inherit;text-decoration:none}
.g a:hover{color:var(--ember)}
.g :focus-visible{outline:2px solid var(--ember);outline-offset:3px}
.g section[id],.g main{scroll-margin-top:72px}
.g-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.g-skip{position:absolute;left:12px;top:-80px;z-index:120;background:var(--ember);color:var(--ink);padding:12px 16px;font-family:var(--mono);font-size:12px}
.g .g-skip:focus{top:12px;color:var(--ink)}
.g-wrap{width:100%;max-width:1440px;margin:0 auto;padding-inline:var(--gut)}
.g-label{margin:0;display:flex;align-items:center;gap:12px;font-family:var(--mono);font-size:11px;line-height:1.4;letter-spacing:.14em;text-transform:uppercase;color:var(--ash)}
.g-label::before{content:'';width:8px;height:8px;flex:none;background:var(--ember)}
.g-sub{margin:28px 0 0;max-width:34em;font-size:clamp(18px,1.4vw,21px);line-height:1.5;color:var(--ash)}
.g-sub strong{font-weight:500;color:var(--bone)}

/* buttons */
.g .g-btn{position:relative;overflow:hidden;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:50px;padding:0 24px;border:1px solid var(--ember);background:var(--ember);color:var(--ink);font-family:var(--mono);font-size:12px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;white-space:nowrap;transform:translate3d(var(--mx,0px),var(--my,0px),0);transition:transform .45s var(--ease),color .35s var(--ease)}
.g .g-btn::before{content:'';position:absolute;inset:0;z-index:-1;background:var(--ink);transform:translate3d(0,101%,0);transition:transform .5s var(--ease)}
.g .g-btn:hover::before{transform:none}
.g .g-btn:hover{color:var(--ember)}
.g .g-btn-sm{min-height:44px;padding:0 18px}
.g .g-btn-ghost{background:transparent;border-color:var(--line);color:var(--bone)}
.g .g-btn-ghost::before{background:var(--bone)}
.g .g-btn-ghost:hover{color:var(--ink)}

/* nav */
.g-nav{position:sticky;top:0;z-index:40}
.g-nav-bar{display:flex;align-items:center;justify-content:space-between;gap:24px;height:72px;padding-inline:var(--gut);border-bottom:1px solid transparent;transition:background .4s,border-color .4s}
.g[data-scrolled] .g-nav-bar{background:rgba(12,11,10,.86);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom-color:var(--line)}
.g-logo{display:inline-flex;align-items:center;gap:12px;min-height:44px;font-family:var(--disp);font-size:34px;line-height:1}
.g-logo-sq{width:10px;height:10px;background:var(--ember);transition:transform .5s var(--ease)}
.g-logo:hover .g-logo-sq{transform:rotate(90deg)}
.g-nav-links{display:flex;align-items:center;gap:2px;list-style:none;margin:0;padding:0}
.g-nav-links a{position:relative;display:inline-flex;align-items:center;min-height:44px;padding:0 14px;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.g-nav-links a::after{content:'';position:absolute;left:14px;right:14px;bottom:11px;height:1px;background:var(--ember);transform:scaleX(0);transform-origin:right;transition:transform .45s var(--ease)}
.g-nav-links a:hover::after{transform:scaleX(1);transform-origin:left}
.g-nav-end{display:flex;align-items:center;gap:8px}
.g-menu-btn{display:none;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:1px solid var(--line);background:transparent;color:var(--bone);cursor:pointer}
.g-menu{display:flex;flex-direction:column;padding:8px var(--gut) 24px;background:var(--ink);border-bottom:1px solid var(--line)}
.g-menu[hidden]{display:none}
.g-menu a{display:flex;align-items:center;min-height:56px;border-top:1px solid var(--line);font-stretch:75%;font-weight:700;font-size:30px;text-transform:uppercase;letter-spacing:-.01em}

/* hero */
.g-hero{position:relative;isolation:isolate;overflow:hidden;margin-top:-72px;min-height:940px;padding:148px 0 40px;display:flex;flex-direction:column;background:radial-gradient(55% 65% at 72% 46%,rgba(255,77,26,.24),rgba(12,11,10,0) 62%),var(--ink)}
.g-canvas{position:absolute;inset:0;z-index:-2;display:block;width:100%;height:100%}
.g[data-nogl] .g-canvas{display:none}
.g-shade{position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,rgba(12,11,10,.94) 0%,rgba(12,11,10,.72) 32%,rgba(12,11,10,0) 60%),linear-gradient(0deg,rgba(12,11,10,.97) 3%,rgba(12,11,10,0) 36%)}
.g-hero-grid{flex:1;display:grid;grid-template-columns:minmax(0,560px) minmax(0,1fr);grid-template-rows:auto 1fr;gap:40px 48px;width:100%;max-width:1440px;margin:0 auto;padding-inline:var(--gut)}
.g-hero-copy{grid-column:1;grid-row:2;align-self:start;display:flex;flex-direction:column;gap:26px}
.g-kicker{margin:0;display:flex;align-items:center;gap:12px;font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ember)}
.g-blink{width:9px;height:9px;flex:none;background:var(--ember)}
.g-lede{margin:0;max-width:30em;font-size:clamp(18px,1.45vw,21px);line-height:1.5}
.g-tele{grid-column:2;grid-row:1;justify-self:end;text-align:right}
.g-tele-in{display:flex;flex-direction:column;gap:4px;font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ash)}
.g-tele-in b{font-weight:400;font-size:26px;letter-spacing:.06em;color:var(--bone);font-variant-numeric:tabular-nums}
.g-cue{grid-column:2;grid-row:2;justify-self:end;align-self:end;display:flex;align-items:center;gap:14px;min-height:44px;font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ash)}
.g-cue-line{position:relative;width:1px;height:44px;overflow:hidden;background:var(--line)}
.g-cue-line::after{content:'';position:absolute;left:0;top:0;width:1px;height:40%;background:var(--ember)}
.g-h1{grid-column:1 / -1;grid-row:1;position:relative;margin:0;font-weight:400;line-height:.8}
.g-h1-pre{display:block;margin:0 0 .12em .05em;font-family:var(--sans);font-stretch:75%;font-weight:700;font-size:clamp(26px,3.4vw,54px);line-height:1;letter-spacing:-.01em;text-transform:uppercase;color:var(--ember)}
.g-h1-mark{display:block;margin-left:-.04em;font-family:var(--disp);font-size:clamp(64px,17vw,290px);line-height:.78;letter-spacing:-.01em;white-space:nowrap;color:var(--bone)}
.g-ch{display:inline-block}
.g-soon-row{margin:0}
.g-soon{display:inline-flex;align-items:center;gap:8px;min-height:28px;padding:0 10px;border:1px solid var(--ember);color:var(--ember);font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap}
.g-soon::before{content:'';width:6px;height:6px;flex:none;background:var(--ember)}

/* say box */
.g-say{border:1px solid var(--line);background:rgba(20,19,17,.9)}
.g-say-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 12px;padding-left:18px;border-bottom:1px solid var(--line)}
.g-say-label{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ash);padding-block:14px}
.g-tabs{display:flex;flex-wrap:wrap}
.g-tab{position:relative;min-height:44px;padding:0 12px;border:0;background:none;color:var(--ash);font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:color .3s}
.g-tab:hover{color:var(--bone)}
.g-tab[aria-pressed="true"]{color:var(--bone)}
.g-tab[aria-pressed="true"]::after{content:'';position:absolute;left:12px;right:12px;bottom:-1px;height:2px;background:var(--ember)}
.g-cmd{display:flex;align-items:center;gap:12px;padding:12px 10px 12px 18px;font-family:var(--mono);font-size:14px;color:var(--bone)}
.g-cmd code{flex:1;min-width:0;overflow-x:auto;white-space:nowrap;font-family:inherit;padding:8px 0}
.g-prompt{color:var(--ember);flex:none}
.g-prompt:empty{display:none}
.g-copy{flex:none;display:inline-flex;align-items:center;gap:8px;min-height:44px;min-width:44px;padding:0 14px;border:1px solid var(--line);background:transparent;color:var(--bone);font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:border-color .3s,color .3s}
.g-copy:hover{border-color:var(--ember);color:var(--ember)}
.g-ctas{display:flex;flex-wrap:wrap;gap:12px}

/* band */
.g-band{position:relative;padding:84px 0}
.g-band-back{position:absolute;left:-6vw;right:-6vw;top:50%;transform:translateY(-50%) rotate(3deg);padding:14px 0;background:var(--steel);border-block:1px solid var(--line);color:var(--ash);font-family:var(--mono);font-size:12px;letter-spacing:.22em;text-transform:uppercase}
.g-band-inner{position:relative;margin:0 -6vw;padding:16px 0 12px;transform:rotate(-2.4deg);background:var(--ember);color:var(--ink);display:flex;flex-direction:column;gap:8px}
.g-band-row{display:flex;white-space:nowrap;will-change:transform}
.g-band-row > span{display:inline-flex;align-items:center;flex:none}
.g-band-a{font-family:var(--disp);font-size:clamp(64px,9vw,136px);line-height:.92}
.g-band-a span{gap:.32em;padding-right:.32em}
.g-band-sq{width:.16em;height:.16em;background:var(--ink)}
.g-band-b{padding-top:10px;border-top:1px solid rgba(12,11,10,.3);font-family:var(--mono);font-size:12px;letter-spacing:.22em;text-transform:uppercase}
.g-band-b span,.g-band-c span{gap:22px;padding-right:22px}
.g-band-dot{width:6px;height:6px;background:currentColor}
.g[data-motion] .g-band-a{transform:translate3d(calc(var(--mp,.5) * -26%),0,0)}
.g[data-motion] .g-band-b{transform:translate3d(calc(-28% + var(--mp,.5) * 26%),0,0)}
.g[data-motion] .g-band-c{transform:translate3d(calc(var(--mp,.5) * -18%),0,0)}

/* sections */
.g-sec{padding-block:clamp(96px,11vw,176px)}
.g-line{border-top:1px solid var(--line)}
.g-statement{margin:44px 0 0;max-width:1220px;font-weight:500;font-size:clamp(28px,4vw,62px);line-height:1.08;letter-spacing:-.025em}
.g-word{display:inline-block;margin-right:.24em}
.g[data-motion] .g-word{opacity:clamp(.16,calc(var(--lit,999) - var(--i)),1);transition:opacity .25s linear}
.g-h2{margin:22px 0 0;font-stretch:75%;font-weight:700;font-size:clamp(48px,7.4vw,124px);line-height:.88;letter-spacing:-.015em;text-transform:uppercase}
.g-h2 em{font-style:normal;color:var(--ember)}
.g-h2-md{font-size:clamp(44px,5.6vw,92px)}
.g-wm{display:inline-block;overflow:hidden;vertical-align:top;margin-right:.2em;padding-bottom:.05em}
.g-w{display:inline-block;transition:transform 1.1s var(--ease);transition-delay:calc(var(--i,0) * 80ms)}
.g[data-motion] [data-rv]:not([data-in]) .g-w{transform:translate3d(0,108%,0)}
.g-fade{transition:opacity 1s var(--ease),transform 1s var(--ease);transition-delay:calc(var(--d,0) * 1s)}
.g[data-motion] .g-fade[data-rv]:not([data-in]){opacity:0;transform:translate3d(0,32px,0)}

/* pipeline */
.g-trials{position:relative;border-top:1px solid var(--line)}
.g-trials-pin{display:flex;flex-direction:column;gap:56px;padding-block:clamp(96px,10vw,160px)}
.g-trials-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,440px);align-items:end;gap:24px 48px}
.g-trials-note{margin:0;display:flex;flex-direction:column;gap:14px;color:var(--ash);font-size:17px}
.g-trials-note p{margin:0}
.g-trials-note strong{font-weight:500;color:var(--bone)}
.g-lite{font-family:var(--mono);font-size:11px;line-height:1.7;letter-spacing:.06em;color:var(--ash)}
.g-lite b{font-weight:500;color:var(--ember)}
.g-track-wrap{width:100%;max-width:1440px;margin:0 auto;padding-inline:var(--gut)}
.g-track{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(380px,100%),1fr));gap:16px}
.g-card{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;gap:16px;min-height:430px;padding:28px;background:var(--steel);border:1px solid var(--line)}
.g-card.g-fade{transition:opacity 1s var(--ease),transform 1s var(--ease),color .5s var(--ease);transition-delay:calc(var(--d,0) * 1s),calc(var(--d,0) * 1s),0s}
.g-card::before{content:'';position:absolute;inset:0;z-index:-1;background:var(--ember);clip-path:inset(100% 0 0 0);transition:clip-path .7s cubic-bezier(.7,0,.2,1)}
.g-card:hover::before{clip-path:inset(0 0 0 0)}
.g-card:hover{color:var(--ink)}
.g-card-you,.g-card-check{background:var(--ink);border-color:var(--ember)}
.g-card-gate{box-shadow:inset 0 3px 0 var(--ember)}
.g-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ash);transition:color .5s}
.g-card-tag{text-align:right;max-width:12em}
.g-card-num{font-family:var(--disp);font-size:118px;line-height:.74;letter-spacing:0;color:var(--ember);transition:color .5s}
.g-card-dots{flex:1;min-height:28px;background-image:radial-gradient(circle,#3A3632 1.2px,transparent 1.5px);background-size:9px 9px;-webkit-mask-image:linear-gradient(180deg,#000 10%,transparent);mask-image:linear-gradient(180deg,#000 10%,transparent)}
.g-card-title{margin:0;font-stretch:75%;font-weight:700;font-size:36px;line-height:.95;letter-spacing:-.005em;text-transform:uppercase}
.g-card-body{margin:0;font-size:16px;line-height:1.5;color:var(--ash);transition:color .5s}
.g-card-meta{margin:0;padding-top:14px;border-top:1px solid var(--line);font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--bone);transition:color .5s,border-color .5s}
.g-card:hover .g-card-top,.g-card:hover .g-card-num,.g-card:hover .g-card-body,.g-card:hover .g-card-meta{color:var(--ink)}
.g-card:hover .g-card-meta{border-color:rgba(12,11,10,.3)}
.g-card:hover .g-card-dots{background-image:radial-gradient(circle,rgba(12,11,10,.5) 1.2px,transparent 1.5px)}
.g-progress{display:none}
.g[data-pin] .g-trials-pin{position:sticky;top:0;height:var(--vhpx,100vh);overflow:hidden;justify-content:center;gap:28px;padding-block:88px 32px}
.g[data-pin] .g-trials .g-h2{font-size:clamp(44px,5vw,84px)}
.g[data-pin] .g-track-wrap{max-width:none}
.g[data-pin] .g-track{display:flex;width:max-content;gap:20px;padding-right:var(--gut);will-change:transform}
.g[data-pin] .g-card{width:clamp(340px,30vw,440px);min-height:0;height:clamp(330px,calc(var(--vhpx,900px) - 440px),520px)}
.g[data-pin] .g-card-num{font-size:96px}
.g[data-pin] .g-card-dots{min-height:0}
.g[data-pin] .g-card-dots{background-position:calc(var(--tp,0) * -140px) 0}
.g[data-pin] .g-progress{display:flex;align-items:center;gap:16px;padding-inline:var(--gut);font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ash)}
.g-progress-line{position:relative;flex:1;height:1px;overflow:hidden;background:var(--line)}
.g-progress-line::after{content:'';position:absolute;inset:0;background:var(--ember);transform-origin:left;transform:scaleX(var(--tp,0))}

/* how a stage runs */
.g-run-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;gap:56px}
.g-steps{list-style:none;margin:44px 0 0;padding:0;display:flex;flex-direction:column}
.g-step{display:grid;grid-template-columns:64px minmax(0,1fr);gap:16px;padding:20px 0;border-top:1px solid var(--line)}
.g-step-n{font-family:var(--disp);font-size:44px;line-height:.8;color:var(--ember)}
.g-step h3{margin:0 0 6px;font-stretch:75%;font-weight:700;font-size:26px;line-height:1;text-transform:uppercase}
.g-step p{margin:0;font-size:16px;color:var(--ash)}
.g-term-col{position:sticky;top:104px;display:flex;flex-direction:column;gap:14px}
.g-term{margin:0;background:#090807;border:1px solid var(--line);box-shadow:0 50px 90px -50px rgba(255,77,26,.35);font-family:var(--mono);font-size:13px;line-height:2}
.g-term-bar{display:flex;align-items:center;gap:8px;padding:12px 16px;border-bottom:1px solid var(--line);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ash)}
.g-term-dot{width:9px;height:9px;border:1px solid #4A4640}
.g-term-dot:first-child{background:var(--ember);border-color:var(--ember)}
.g-term-title{margin-left:auto}
.g-term-body{min-height:420px;padding:24px 24px 30px;overflow-x:auto}
.g-ln{display:flex;gap:1.2ch;white-space:pre}
.g-ln-out{padding-left:2.2ch;color:var(--ash)}
.g-ln-hi{padding-left:2.2ch;color:var(--bone)}
.g-ln-gap{margin-top:1em}
.g-type{display:inline-block;overflow:hidden;vertical-align:bottom}
.g-caret{display:inline-block;width:1ch;height:1.15em;align-self:center;background:var(--ember)}
.g-term-cap{margin:0;font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ash)}
.g[data-motion] .g-term .g-ln{opacity:0}
.g[data-motion] .g-term[data-in] .g-ln{animation:g-show .01s linear var(--d) both}
.g[data-motion] .g-term .g-ln-cmd .g-type{width:0}
.g[data-motion] .g-term[data-in] .g-ln-cmd .g-type{animation:g-type calc(var(--n) * 32ms) steps(var(--n),end) var(--d) both}

/* safety */
.g-safe-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:start;gap:56px 72px;margin-top:64px}
.g-rails{list-style:none;margin:0;padding:0}
.g-rail{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr);gap:8px 32px;padding:22px 0;border-top:1px solid var(--line)}
.g-rail h3{margin:0;font-stretch:75%;font-weight:700;font-size:24px;line-height:1.05;text-transform:uppercase}
.g-rail p{margin:0;font-size:16px;color:var(--ash)}
.g-rail code{font-family:var(--mono);font-size:13px;color:var(--bone)}
.g-sab-fig{margin:0;display:flex;flex-direction:column;gap:18px}
.g-sab-title{margin:0;font-stretch:75%;font-weight:700;font-size:30px;line-height:1;text-transform:uppercase}
.g-sab{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.g-cell{aspect-ratio:1;display:flex;flex-direction:column;justify-content:space-between;padding:10px;border:1px solid var(--ember);background:var(--ember);color:var(--ink);font-family:var(--mono);font-size:10px;letter-spacing:.1em;transition:background-color .35s,color .35s,border-color .35s;transition-delay:calc(var(--i,0) * 90ms)}
.g-cell svg{align-self:flex-end;transition:opacity .35s;transition-delay:inherit}
.g-cell-ctrl{background:transparent;border-color:var(--bone);color:var(--bone)}
.g-cell .g-ic-ok{display:none}
.g-cell-ctrl .g-ic-ok{display:block}
.g-cell-ctrl .g-ic-x{display:none}
.g[data-motion] .g-sab:not([data-in]) .g-cell{background:transparent;border-color:var(--line);color:var(--ash)}
.g[data-motion] .g-sab:not([data-in]) .g-cell svg{opacity:0}
.g-sab-cap{margin:0;font-size:15px;color:var(--ash)}

/* latest run */
.g-latest-meta{margin:28px 0 0;font-family:var(--mono);font-size:11px;line-height:1.8;letter-spacing:.1em;text-transform:uppercase;color:var(--ash)}
.g-stats{display:flex;flex-wrap:wrap;column-gap:32px;margin-top:64px}
.g-stat{flex:1 1 200px;display:flex;flex-direction:column;gap:10px;padding:26px 0 34px;border-top:1px solid var(--line)}
.g-stat-n{font-stretch:75%;font-weight:700;font-size:clamp(56px,6vw,100px);line-height:.84;letter-spacing:-.02em;font-variant-numeric:tabular-nums;white-space:nowrap}
.g-stat-n small{font-size:.42em;letter-spacing:0;color:var(--ember)}
.g-stat-l{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--bone)}
.g-stat-s{font-size:15px;color:var(--ash)}
.g-lessons{list-style:none;margin:56px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:16px}
.g-lesson{padding:26px;background:var(--steel);border:1px solid var(--line)}
.g-lesson h3{margin:0 0 10px;font-stretch:75%;font-weight:700;font-size:24px;line-height:1.05;text-transform:uppercase}
.g-lesson p{margin:0;font-size:16px;color:var(--ash)}

/* commands */
.g-cmds{list-style:none;margin:56px 0 0;padding:0;border-bottom:1px solid var(--line)}
.g-cmd-row{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr) auto;align-items:center;gap:12px 32px;padding:14px 0;border-top:1px solid var(--line);transition:background-color .35s}
.g-cmd-row:hover{background:var(--steel)}
.g-cmd-say{display:flex;gap:1ch;font-family:var(--mono);font-size:clamp(14px,1.25vw,17px);color:var(--bone);overflow-wrap:anywhere;transition:color .3s}
.g-cmd-row:hover .g-cmd-say{color:var(--ember)}
.g-cmd-say span{color:var(--ember)}
.g-cmd-does{margin:0;font-size:16px;color:var(--ash)}

/* final */
.g-final{position:relative;isolation:isolate;overflow:hidden;background:var(--ember);color:var(--ink)}
.g-final .g-label{color:var(--ink)}
.g-final .g-label::before{background:var(--ink)}
.g-final-g{position:absolute;right:-3vw;bottom:-18%;z-index:-1;font-family:var(--disp);font-size:clamp(320px,50vw,800px);line-height:.8;color:rgba(12,11,10,.11);pointer-events:none;user-select:none}
.g[data-motion] .g-final-g{transform:translate3d(0,calc((1 - var(--fp,.5)) * 26%),0)}
.g-final-h{margin:30px 0 0;font-stretch:75%;font-weight:700;font-size:clamp(56px,11vw,184px);line-height:.84;letter-spacing:-.02em;text-transform:uppercase}
.g-final .g-say{max-width:720px;margin-top:56px;background:var(--ink);border-color:var(--ink);color:var(--bone)}
.g-start{list-style:none;margin:56px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:24px 32px}
.g-start li{display:flex;flex-direction:column;gap:10px;padding-top:18px;border-top:1px solid rgba(12,11,10,.35)}
.g-start-n{font-family:var(--disp);font-size:48px;line-height:.8}
.g-start code{font-family:var(--mono);font-size:15px;font-weight:500}
.g-start em{font-style:normal;font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase}
.g-start p{margin:0;font-size:16px;line-height:1.5}
.g-start-dark li{border-top-color:var(--line)}
.g-start-dark .g-start-n{color:var(--ember)}
.g-start-dark code{color:var(--bone)}
.g-start-dark p{color:var(--ash)}

/* footer */
.g-foot{position:relative;overflow:hidden;padding-top:clamp(80px,9vw,140px);border-top:1px solid var(--line)}
.g-foot-top{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:40px}
.g-foot-line{margin:0;font-stretch:75%;font-weight:700;font-size:clamp(40px,5.4vw,80px);line-height:.88;letter-spacing:-.01em;text-transform:uppercase}
.g-foot-line span{color:var(--ember)}
.g-foot-nav{display:flex;flex-wrap:wrap;gap:4px 6px}
.g-foot-nav a{display:inline-flex;align-items:center;min-height:44px;padding:0 10px;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.g-foot-mark{margin:64px 0 -.1em;text-align:center;white-space:nowrap;font-family:var(--disp);font-size:clamp(120px,24vw,380px);line-height:.74;color:transparent;background-image:radial-gradient(circle,var(--ember) 1.4px,transparent 1.7px);background-size:7px 7px;-webkit-background-clip:text;background-clip:text;user-select:none}
.g-foot-base{position:relative;z-index:1;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding-block:20px 28px;border-top:1px solid var(--line);background:var(--ink);font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ash)}

/* hero headline + review section */
.g-h1-a{color:var(--bone)}
.g-lite code{font-family:var(--mono);color:var(--bone)}
.g-rev{list-style:none;margin:56px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:16px}
.g-rev li{display:flex;flex-direction:column;gap:12px;padding:26px;background:var(--steel);border:1px solid var(--line)}
.g-rev-n{font-family:var(--disp);font-size:56px;line-height:.8;color:var(--ember)}
.g-rev h3{margin:8px 0 0;font-stretch:75%;font-weight:700;font-size:28px;line-height:1;text-transform:uppercase}
.g-rev p{margin:0;font-size:16px;color:var(--ash)}
.g-rev-cmd{display:inline-flex;align-items:center;gap:12px;margin:32px 0 0;padding:14px 20px;border:1px solid var(--line);background:#090807;font-family:var(--mono);font-size:15px;color:var(--bone)}
.g-rev-cmd span{color:var(--ember)}
.g-rev-cmd code{font-family:inherit}

/* cursor */
.g-cursor{position:fixed;left:0;top:0;z-index:100;width:0;height:0;pointer-events:none;opacity:0;mix-blend-mode:difference;transition:opacity .3s}
.g[data-cursor-on] .g-cursor{opacity:1}
.g-cursor::before{content:'';position:absolute;left:-6px;top:-6px;width:12px;height:12px;background:#EEEAE2;transition:left .3s var(--ease),top .3s var(--ease),width .3s var(--ease),height .3s var(--ease),background-color .3s}
.g-cursor[data-hover]::before{left:-24px;top:-24px;width:48px;height:48px;background-color:transparent;box-shadow:inset 0 0 0 1px #EEEAE2}

/* intro + ambient motion */
@media (prefers-reduced-motion:no-preference){
.g-in{animation:g-up 1s var(--ease) both;animation-delay:calc(var(--d,0) * 1s)}
.g-ch{animation:g-rise 1.3s var(--ease) both;animation-delay:calc(.3s + var(--i) * .07s)}
.g-h1-pre{animation:g-glitch .9s steps(1,end) both .15s}
.g-blink,.g-caret{animation:g-blink 1.1s steps(1,end) infinite}
.g-cue-line::after{animation:g-drop 1.8s var(--ease) infinite}
}
@keyframes g-up{from{opacity:0;transform:translate3d(0,24px,0)}to{opacity:1;transform:none}}
@keyframes g-rise{from{opacity:0;transform:translate3d(0,46%,0) scaleY(1.25)}to{opacity:1;transform:none}}
@keyframes g-glitch{0%{opacity:0;clip-path:inset(0 100% 0 0)}20%{opacity:1;clip-path:inset(0 62% 0 0)}40%{clip-path:inset(0 74% 0 0)}60%{clip-path:inset(0 18% 0 0)}80%{clip-path:inset(0 30% 0 0)}100%{opacity:1;clip-path:inset(0 0 0 0)}}
@keyframes g-blink{50%{opacity:0}}
@keyframes g-drop{from{transform:translate3d(0,-100%,0)}to{transform:translate3d(0,260%,0)}}
@keyframes g-show{from{opacity:0}to{opacity:1}}
@keyframes g-type{from{width:0}to{width:calc(var(--n) * 1ch)}}
.g[data-motion] .g-h1{transform:translate3d(0,calc(var(--hp,0) * 60px),0)}
.g[data-motion] .g-hero-copy,.g[data-motion] .g-tele,.g[data-motion] .g-cue{opacity:calc(1 - var(--hp,0) * 1.8);transform:translate3d(0,calc(var(--hp,0) * 140px),0)}

/* responsive */
.g-idea-k{margin:56px 0 0;display:flex;align-items:center;gap:12px;font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ember)}
.g-idea-k-first{margin-top:44px}
.g-idea-k-first+.g-statement{margin-top:18px}
.g-idea-turn{margin-top:8px}
.g-idea-a{margin:18px 0 0;max-width:30em;font-weight:500;font-size:clamp(22px,2.3vw,34px);line-height:1.25;letter-spacing:-.015em;color:var(--ash)}
.g-idea-a strong{font-weight:500;color:var(--bone)}
.g-card-ico{flex:none;display:block;width:84px;height:84px;color:var(--ember);transition:color .5s}
.g-card:hover .g-card-ico{color:var(--ink)}
.g[data-pin] .g-card-ico{width:66px;height:66px}
.g-card>.g-card-tag{max-width:none;margin:0 0 -8px;text-align:left;font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ash);transition:color .5s}
.g-card:hover>.g-card-tag{color:var(--ink)}
.g-rev2{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:start;gap:56px;margin-top:56px}
.g-revq{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.g-revq li{display:grid;grid-template-columns:64px minmax(0,1fr);gap:16px;padding:24px 0;border-top:1px solid var(--line)}
.g-revq li:last-child{border-bottom:1px solid var(--line)}
.g-revq-n{font-family:var(--disp);font-size:44px;line-height:.8;color:var(--ember)}
.g-revq h3{margin:0 0 8px;font-stretch:75%;font-weight:700;font-size:28px;line-height:1;text-transform:uppercase}
.g-revq p{margin:0;font-size:16px;line-height:1.5;color:var(--ash)}
.g-report-col{position:sticky;top:104px;display:flex;flex-direction:column;gap:14px}
.g-report{margin:0;border:1px solid var(--line);background:#090807}
.g-report-bar{display:flex;justify-content:space-between;gap:12px;padding:12px 18px;border-bottom:1px solid var(--line);font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ash)}
.g-report-bar span:last-child{color:var(--ember)}
.g-report-body{padding:22px 24px 24px}
.g-report-pr{margin:0;font-family:var(--mono);font-size:12px;line-height:1.5;color:var(--bone)}
.g-report-k{margin:22px 0 8px;font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ash)}
.g-report-verdict{margin:0;font-stretch:75%;font-weight:700;font-size:clamp(30px,2.8vw,42px);line-height:.95;text-transform:uppercase;color:var(--ember)}
.g-report-split{display:flex;gap:3px;height:8px;margin-top:14px}
.g-report-split span:first-child{background:var(--ember)}
.g-report-split span:last-child{background:#3A3632}
.g-report-split-l{display:flex;justify-content:space-between;gap:12px;margin:8px 0 0;font-family:var(--mono);font-size:10px;letter-spacing:.08em;color:var(--ash)}
.g-grades{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.g-grades li{display:flex;align-items:center;gap:10px;min-width:0;padding:8px 10px;border:1px solid var(--line)}
.g-grades b{font-stretch:75%;font-weight:700;font-size:26px;line-height:.9;color:var(--bone)}
.g-grades li.g-grade-lo b{color:var(--ember)}
.g-grades span{font-family:var(--mono);font-size:9px;line-height:1.3;letter-spacing:.06em;text-transform:uppercase;color:var(--ash)}
.g-report-items{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.g-report-items li{display:grid;grid-template-columns:76px minmax(0,1fr);gap:12px;font-size:14px;line-height:1.45;color:var(--bone)}
.g-report-items code{font-family:var(--mono);font-size:12px;color:var(--ember)}
.g-report-tag{align-self:start;padding:3px 0;border:1px solid var(--line);text-align:center;font-family:var(--mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--ash)}
.g-report-post{display:flex;justify-content:space-between;gap:12px;margin:22px 0 0;padding-top:14px;border-top:1px solid var(--line);font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ash)}
.g-report-post span:last-child{color:var(--bone)}
@media (max-width:900px){
.g-rev2{grid-template-columns:minmax(0,1fr)}
.g-report-col{position:static}
}
@media (max-width:600px){
.g-revq li{grid-template-columns:48px minmax(0,1fr)}
.g-grades{grid-template-columns:repeat(2,minmax(0,1fr))}
.g-report-body{padding:18px}
.g-card-ico{width:64px;height:64px}
}
@media (max-width:1000px){
.g-safe-grid{grid-template-columns:minmax(0,1fr)}
.g-sab-fig{max-width:520px}
}
@media (max-width:900px){
.g-hero{min-height:0;padding-top:116px}
.g-hero-grid{grid-template-columns:minmax(0,1fr);grid-template-rows:none}
.g-hero-copy,.g-h1{grid-column:auto;grid-row:auto}
.g-h1{margin-bottom:24px}
.g-tele,.g-cue{display:none}
.g-shade{background:linear-gradient(180deg,rgba(12,11,10,.35) 0%,rgba(12,11,10,.82) 38%,rgba(12,11,10,.96) 100%)}
.g-trials-head,.g-run-grid{grid-template-columns:minmax(0,1fr)}
.g-term-col{position:static}
.g-cmd-row{grid-template-columns:minmax(0,1fr) auto}
.g-cmd-does{grid-column:1;grid-row:2}
.g-cmd-row .g-copy{grid-column:2;grid-row:1 / span 2}
}
@media (max-width:860px){
.g-nav-links{display:none}
.g-menu-btn{display:inline-flex}
}
@media (min-width:861px){
.g-menu{display:none}
}
@media (max-width:600px){
.g{font-size:16px}
.g-card{min-height:0}
.g-card-num{font-size:88px}
.g-cmd{font-size:12px}
.g-step{grid-template-columns:48px minmax(0,1fr)}
.g-rail{grid-template-columns:minmax(0,1fr)}
.g-term-body{padding:18px;min-height:0}
.g-tab{padding:0 9px}
.g-nav .g-soon{display:none}
.g-sab{grid-template-columns:repeat(4,minmax(0,1fr))}
.g-nav-end .g-btn{display:none}
.g-logo{font-size:30px}
}
