

.gl-hero{position:relative;padding:56px 0 40px;overflow:hidden;border-bottom:1px solid var(--rule)}
.gl-sky{position:absolute;inset:0;width:100%;height:100%;opacity:.7}
.gl-hero::after{content:"";position:absolute;inset:auto 0 0;height:60%;background:linear-gradient(180deg,transparent,var(--bg));pointer-events:none}
.gl-hero .wrap{position:relative;z-index:1}
.gl-hero .display{font-size:clamp(38px,6vw,80px);line-height:1;letter-spacing:-.02em;margin:8px 0 14px;max-width:14ch}
.gl-hero .display em{font-style:italic;color:var(--gold)}
.gl-hero .lede{max-width:640px}
.meta-strip{display:flex;flex-wrap:wrap;gap:6px 22px;margin:18px 0 0;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:rgba(221,227,238,.62)}
.meta-strip b{color:var(--ink);font-weight:600}

.gl-layout{display:grid;grid-template-columns:200px minmax(0,1fr);gap:40px;align-items:start;padding-top:36px;padding-bottom:80px}
.gl-nav{position:sticky;top:84px;max-height:calc(100vh - 100px);overflow:auto;scrollbar-width:thin}
.gl-navg p{margin:16px 0 6px;font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}
.gl-navg:first-child p{margin-top:0}
.gl-navg ul{list-style:none;margin:0;padding:0}
.gl-navg a{display:block;padding:5px 10px;border-left:2px solid var(--rule);color:rgba(221,227,238,.7);text-decoration:none;font-size:14px}
.gl-navg a:hover{color:var(--ink)}
.gl-navg a[aria-current]{border-left-color:var(--gold);color:var(--ink)}
.gl-terms{display:grid;gap:30px;min-width:0}
.gl-term{border:1px solid var(--rule);border-radius:22px;padding:26px 26px 20px;background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.005));scroll-margin-top:84px;min-width:0}
.gl-term:target{border-color:rgba(244,185,66,.6)}
.gl-k{display:flex;align-items:center;gap:10px;margin:0;font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:rgba(221,227,238,.55)}
.gl-n{color:var(--gold)}
.gl-perma{margin-left:auto;color:rgba(221,227,238,.4);text-decoration:none;font-size:15px;padding:2px 8px;border-radius:6px}
.gl-perma:hover,.gl-perma:focus-visible{color:var(--gold)}
.gl-term h2{font-family:var(--serif);font-size:clamp(28px,3.4vw,42px);line-height:1.05;margin:8px 0 10px;letter-spacing:-.01em}
.gl-def{font-size:19px;line-height:1.5;margin:0 0 18px;max-width:760px;color:rgba(221,227,238,.92)}
.gl-demo{min-height:120px}
.gl-tf{margin-top:16px;padding-top:14px;border-top:1px solid var(--rule)}
.gl-why{margin:0 0 10px;font-size:15px;line-height:1.5;color:rgba(221,227,238,.75)}
.gl-rv{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0}
.gl-rv>span{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:rgba(221,227,238,.55);margin-right:4px}
.gl-rl{display:inline-flex;align-items:center;gap:8px;padding:5px 6px 5px 12px;border:1px solid var(--rule);border-radius:999px;color:var(--ink);text-decoration:none;font-size:13px}
.gl-rl b{font-family:var(--mono);font-size:11px;background:rgba(244,185,66,.14);color:var(--gold);border-radius:999px;padding:2px 7px}
.gl-rl:hover{border-color:var(--gold)}

.gl-ctl{display:flex;flex-wrap:wrap;gap:12px 16px;margin:0 0 12px}
.gl-f{display:grid;gap:5px;min-width:0;flex:1 1 240px}
.gl-f>span{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:rgba(221,227,238,.55)}
.gl-f select{width:100%;min-height:44px}
.gl-r input{width:100%}
.gl-read{margin:0 0 10px;font-size:15px;color:rgba(221,227,238,.85)}
.gl-read b{color:var(--gold)}
.gl-cap{margin:10px 0 0;font-size:13px;line-height:1.5;color:rgba(221,227,238,.58)}
.gl-note{font-size:13px;color:rgba(221,227,238,.6)}
.gl-sim{display:inline-block;font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:#070b13;background:#9fb0c8;padding:3px 8px;border-radius:4px;margin-bottom:10px}

.gl-field{position:relative;border-radius:14px;overflow:hidden;background:#000;touch-action:none}
.gl-field img{display:block;width:100%;height:auto}
.gl-field svg{position:absolute;inset:0;width:100%;height:100%}
.gl-field:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.gl-fr rect{fill:rgba(244,185,66,.08);stroke:var(--gold);stroke-width:4;vector-effect:non-scaling-stroke}
.gl-fr text{fill:var(--gold);font:600 28px var(--mono,monospace)}
.gl-drag{cursor:grab}
.gl-fr50{fill:none;stroke:#dde3ee;stroke-width:2;stroke-dasharray:8 6;vector-effect:non-scaling-stroke}
.gl-fr50t{fill:#dde3ee;font:600 26px var(--mono,monospace)}

.gl-fr2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.gl-frc{border:1px solid var(--rule);border-radius:14px;padding:14px}
.gl-frn{margin:0;font-family:var(--serif);font-size:20px}
.gl-frc svg{width:100%;height:90px;margin:6px 0}
.gl-tube{fill:rgba(221,227,238,.08);stroke:rgba(221,227,238,.5)}
.gl-cone{stroke:var(--gold);stroke-width:1;fill:none}
.gl-frv{margin:0 0 8px;font-size:14px;color:rgba(221,227,238,.75)}
.gl-frv b{color:var(--gold);font-family:var(--mono);font-size:18px;margin-right:6px}
.gl-bar{height:10px;border-radius:5px;background:rgba(255,255,255,.06);overflow:hidden}
.gl-bar i{display:block;height:100%;background:linear-gradient(90deg,#5aa9ff,#f4b942)}
.gl-frt{margin:6px 0 0;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:rgba(221,227,238,.6)}
.gl-frs{grid-column:1/-1;margin:0;font-size:16px}
.gl-frs b{color:var(--gold)}

.gl-fw{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.8fr) minmax(0,1fr);gap:14px;align-items:start}
.gl-fw-map{position:relative;border-radius:12px;overflow:hidden}
.gl-fw-map img{display:block;width:100%;height:auto}
.gl-fw-pin{position:absolute;width:30px;height:30px;margin:-15px 0 0 -15px;border-radius:50%;border:2px solid rgba(244,185,66,.7);background:transparent;cursor:pointer;padding:0}
.gl-fw-pin.on{border-color:#fff;box-shadow:0 0 0 3px rgba(244,185,66,.6)}
.gl-fw-zoom{position:relative;aspect-ratio:1;border-radius:12px;overflow:hidden;background:#000;touch-action:none}
.gl-fw-zoom canvas,.gl-fw-zoom svg{position:absolute;inset:0;width:100%;height:100%;image-rendering:pixelated}
.gl-fw-zoom canvas{cursor:crosshair}
.gl-fw-zoom svg{pointer-events:none}
.gl-fw-zoom canvas:focus-visible{outline:2px solid var(--gold);outline-offset:-2px}
.gl-fw-ln{stroke:var(--gold);stroke-width:.35}
.gl-fw-end{fill:var(--gold)}
.gl-fw-hint{position:absolute;left:8px;bottom:6px;margin:0;font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.7);pointer-events:none}
.gl-fw-prof svg{width:100%;height:auto;display:block;background:rgba(255,255,255,.03);border-radius:12px}
.gl-ax{stroke:rgba(221,227,238,.3)}
.gl-pl{fill:none;stroke:#2fd1c5;stroke-width:2}
.gl-hm{stroke:rgba(221,227,238,.4);stroke-dasharray:4 4}
.gl-fwl{stroke:var(--gold);stroke-width:2.5}
.gl-tx{fill:rgba(221,227,238,.6);font:11px var(--mono,monospace)}
.gl-dot{fill:var(--gold)}
.gl-fw-prof .gl-read{margin-top:10px}

.gl-ps{display:grid;grid-template-columns:1fr 1fr;gap:14px;max-width:620px}
.gl-ps figure{margin:0}
.gl-ps canvas{width:100%;aspect-ratio:1;height:auto;image-rendering:pixelated;border-radius:10px;background:#000;display:block}
.gl-ps figcaption{margin-top:6px;font-size:13px;color:rgba(221,227,238,.7)}
.gl-ps figcaption b{color:var(--gold)}

.gl-solve{position:relative;border-radius:14px;overflow:hidden;background:#000}
.gl-solve img{display:block;width:100%;height:auto}
.gl-solve svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.gl-grid{fill:none;stroke:rgba(90,169,255,.75);stroke-width:1.4;vector-effect:non-scaling-stroke}
.gl-gde{stroke:rgba(244,185,66,.75)}
.gl-gtx{fill:#9ccbff;font:600 22px var(--mono,monospace);paint-order:stroke;stroke:#000;stroke-width:4px}
.gl-gtd{fill:#f4b942}
.gl-solve-xy{position:absolute;left:10px;bottom:8px;margin:0;font-family:var(--mono);font-size:12px;background:rgba(7,11,19,.8);padding:4px 8px;border-radius:6px;color:var(--ink)}
.gl-solve-xy:empty{display:none}
.gl-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0 0}
.gl-facts div{border:1px solid var(--rule);border-radius:12px;padding:10px 12px}
.gl-facts dt{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:rgba(221,227,238,.55)}
.gl-facts dd{margin:4px 0 0;font-size:15px}

.gl-mtabs,.gl-stabs{margin-bottom:12px}
.gl-gframe{width:100%;height:560px;border:0;display:block;border-radius:14px;background:#070b13}

.gl-bscale{position:relative;display:grid;grid-template-columns:repeat(9,minmax(0,1fr));border-radius:12px;overflow:visible;margin:28px 0 18px}
.gl-bscale span{padding:10px 6px;text-align:center;background:hsl(225 45% calc(6% + var(--i) * 4.5%));border-right:1px solid rgba(0,0,0,.3)}
.gl-bscale span:first-child{border-radius:12px 0 0 12px}.gl-bscale span:last-child{border-radius:0 12px 12px 0}
.gl-bscale b{display:block;font-family:var(--mono);font-size:18px}
.gl-bscale small{display:block;font-size:11px;line-height:1.25;color:rgba(221,227,238,.65);margin-top:2px}
.gl-bme{position:absolute;top:-24px;bottom:-6px;width:3px;margin-left:-1.5px;background:var(--gold);border-radius:2px}
.gl-bme em{position:absolute;top:-4px;left:8px;white-space:nowrap;font-style:normal;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold)}
.gl-bimg,.gl-hg{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.gl-bimg figure,.gl-hg figure{margin:0}
.gl-bimg img,.gl-hg img{width:100%;height:auto;display:block;border-radius:12px}
.gl-bimg figcaption,.gl-hg figcaption{margin-top:6px;font-size:13px;color:rgba(221,227,238,.65)}
.gl-hist,.gl-snr{width:100%;height:auto;display:block;margin-top:8px}
.gl-hbg{fill:rgba(255,255,255,.03)}
.gl-hl{margin:4px 0 10px;font-size:12px;color:rgba(221,227,238,.55)}

.gl-st{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:16px;align-items:start}
.gl-lin{width:100%;height:auto;aspect-ratio:16/9;display:block;border-radius:12px;background:#000}
.gl-st-side .chips{margin:0 0 12px}
.gl-st-side .gl-f{margin-bottom:10px}
.gl-chk{display:flex;gap:8px;align-items:center;font-size:14px;color:rgba(221,227,238,.8)}

.gl-compare{max-width:none;margin:0}
.gl-compare .cc11 .cp:before,.gl-compare .cc11 .twoup:before{content:var(--g2l,"")}
.gl-compare .cc11 .cp:after,.gl-compare .cc11 .twoup:after{content:var(--g2r,"")}
.gl-compare .cc11 .cp.hold:before{content:var(--g2h,"")}

@media (max-width:1000px){.gl-layout{grid-template-columns:minmax(0,1fr)}.gl-nav{display:none}.gl-fw{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.gl-fw-map{grid-column:1/-1}}
@media (max-width:760px){
  .gl-term{padding:18px 16px 16px;border-radius:16px}
  .gl-def{font-size:17px}
  .gl-st,.gl-fr2,.gl-bimg,.gl-hg{grid-template-columns:minmax(0,1fr)}
  .gl-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gl-bscale small{display:none}
  .gl-bscale b{font-size:14px}
  .gl-gtx{font-size:34px}
}
@media (prefers-reduced-motion:reduce){.gl-sky{display:none}}
