
/* ============================================================
   GARAGEAI DESIGN SYSTEM
   Forked from GorrilaBand dark bot-command system.
   ============================================================ */
@font-face{font-family:"ALS Hauss";src:url('/fonts/als-hauss-regular-1.2.otf') format('opentype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"ALS Hauss";src:url('/fonts/als-hauss-medium-1.2.otf') format('opentype');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"ALS Hauss";src:url('/fonts/als-hauss-bold-1.2.otf') format('opentype');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"ALS Hauss";src:url('/fonts/als-hauss-black-1.2.otf') format('opentype');font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:"ALS Granate";src:url('/fonts/als-granate-bold-1.1.otf') format('opentype');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"IBM Plex Mono";src:url('/fonts/ibm-plex-mono-400-latin.woff2') format('woff2');font-weight:400;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153}
@font-face{font-family:"IBM Plex Mono";src:url('/fonts/ibm-plex-mono-400-cyrillic.woff2') format('woff2');font-weight:400;font-display:swap;unicode-range:U+0301,U+0400-052F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"IBM Plex Mono";src:url('/fonts/ibm-plex-mono-500-latin.woff2') format('woff2');font-weight:500;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153}
@font-face{font-family:"IBM Plex Mono";src:url('/fonts/ibm-plex-mono-500-cyrillic.woff2') format('woff2');font-weight:500;font-display:swap;unicode-range:U+0301,U+0400-052F,U+0490-0491,U+04B0-04B1,U+2116}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0}

:root{
  --gb-bg-page:#050506; --gb-bg-paper:#0A0A0B; --gb-bg-surface:#101014;
  --gb-bg-surface-2:#16161C; --gb-bg-elevated:#1E1E27;
  --gb-text-primary:#F5F5F5; --gb-text-secondary:#C9CDE6; --gb-text-muted:#8B90A8; --gb-text-inverse:#050506;
  --gb-line-soft:rgba(245,245,245,.12); --gb-line-mid:rgba(245,245,245,.22); --gb-line-strong:rgba(245,245,245,.42);
  --gb-electric:#0035F5; --gb-electric-2:#0029DE; --gb-electric-dark:#00008A;
  --gb-acid:#6B8CFF; --gb-white:#FFFFFF; --gb-ink:#050506;
  --gb-terminal-bg:#050506; --gb-terminal-head:#151527; --gb-terminal-text:#E7E9F6;
  --gb-terminal-muted:#8B90A8; --gb-terminal-command:#FFFFFF; --gb-terminal-accent:#6B8CFF; --gb-terminal-blue:#5B6CFF;
  --gb-font-display:"ALS Granate",Georgia,"Times New Roman",serif;
  --gb-font-ui:"ALS Hauss",-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  --gb-font-mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Consolas,monospace;
  --gb-s-1:4px;--gb-s-2:8px;--gb-s-3:12px;--gb-s-4:16px;--gb-s-5:24px;--gb-s-6:32px;--gb-s-7:48px;--gb-s-8:64px;--gb-s-9:96px;--gb-s-10:128px;
  --gb-radius-none:0;--gb-radius-chip:2px;--gb-radius-pill:999px;
  --gb-shadow-card:0 12px 36px rgba(0,0,0,.38);
  --gb-shadow-electric:0 8px 28px rgba(0,41,222,.45);
  --gb-shadow-acid:0 0 0 1px #6B8CFF,0 10px 30px rgba(107,140,255,.26);
}

body{
  background:var(--gb-bg-page); color:var(--gb-text-primary);
  font-family:var(--gb-font-ui); font-size:16px; line-height:1.6;
  -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale; overflow-x:hidden;
}
::selection{background:var(--gb-acid); color:var(--gb-ink)}

/* Grid + noise */
.gb-root{position:relative; isolation:isolate; color:var(--gb-text-primary)}
.gb-root::before{
  content:""; position:fixed; inset:0; z-index:0; pointer-events:none;
  background-image:linear-gradient(var(--gb-line-soft) 1px,transparent 1px),linear-gradient(90deg,var(--gb-line-soft) 1px,transparent 1px);
  background-size:64px 64px; opacity:.35;
  -webkit-mask-image:radial-gradient(120% 90% at 50% 0,#000 30%,transparent 78%);
  mask-image:radial-gradient(120% 90% at 50% 0,#000 30%,transparent 78%);
}
.gb-root::after{
  content:""; position:fixed; inset:0; z-index:0; pointer-events:none; opacity:.05; mix-blend-mode:screen;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)'/%3E%3C/svg%3E");
}
.gb-root > *{position:relative; z-index:1}

/* Light theme */
.gb-root.is-light{
  --gb-bg-page:#E7E7E1; --gb-bg-paper:#FFFFFF; --gb-bg-surface:#FFFFFF;
  --gb-bg-surface-2:#F0F0EA; --gb-bg-elevated:#FFFFFF;
  --gb-text-primary:#0A0A0B; --gb-text-secondary:#3A3E48; --gb-text-muted:#5F6472; --gb-text-inverse:#FFFFFF;
  --gb-line-soft:rgba(10,10,15,.16); --gb-line-mid:rgba(10,10,15,.30); --gb-line-strong:rgba(10,10,15,.52);
  --gb-shadow-card:0 12px 36px rgba(10,10,25,.12);
  --gb-acid:#6B5CFF; --gb-terminal-accent:#6B5CFF;
  --gb-shadow-acid:0 0 0 1px #6B5CFF,0 10px 30px rgba(107,92,255,.26);
  background:var(--gb-bg-page); min-height:100dvh; color:var(--gb-text-primary);
}
.gb-root.is-light .badge__dot{box-shadow:0 0 0 3px rgba(107,92,255,.24)}
.gb-root.is-light .status-chip{background:rgba(107,92,255,.10)}
.gb-root.is-light .grid>*{background:#FFFFFF}
.gb-root.is-light .feature-card{background:#FFFFFF}
.gb-root.is-light .order,.gb-root.is-light .botchat{background:#FFFFFF}
.gb-root.is-light .feature-card:hover{box-shadow:inset 0 0 0 1px var(--gb-acid),var(--gb-shadow-card)}
.gb-root.is-light .pillar--electric{background:var(--gb-electric-2)}
.gb-root.is-light .pillar--terminal{background:var(--gb-terminal-bg); color:var(--gb-terminal-text)}
.gb-root.is-light .pillar--terminal h3{color:#F5F5F5}
.gb-root.is-light .header{background:rgba(255,255,255,.82)}
.gb-root.is-light .button--primary{background:#050506!important; color:#FFFFFF!important; border-color:#050506!important}
.gb-root.is-light .button--primary:hover{border-color:var(--gb-acid)!important; box-shadow:var(--gb-shadow-acid)}
.gb-root.is-light .button--secondary{color:var(--gb-text-primary)}
.gb-root.is-light .miniapp-card__bar{color:var(--gb-terminal-text)}

a{color:inherit; text-decoration:none}
img{max-width:100%; display:block}

/* Focus */
a:focus-visible,button:focus-visible,[tabindex]:focus-visible,.faq-row__q:focus-visible{
  outline:3px solid var(--gb-acid); outline-offset:2px;
}

/* Skip-to-content — visible on focus, hidden otherwise */
.skip-link{
  position:absolute; top:-100px; left:16px; z-index:100;
  background:var(--gb-acid); color:var(--gb-ink); padding:12px 20px;
  font-family:var(--gb-font-ui); font-size:14px; font-weight:700;
  border-radius:var(--gb-radius-chip); text-decoration:none;
}
.skip-link:focus{top:16px}

/* Screen-reader only */
.sr-only{
  position:absolute; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;
}

/* Layout */
.section{padding:var(--gb-s-9) 40px; border-top:1px solid var(--gb-line-soft)}
.section--flush{border-top:0}
.container{max-width:1280px; margin:0 auto}
.grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:1px; background:var(--gb-line-soft); border:1px solid var(--gb-line-soft)}
.grid>*{background:var(--gb-bg-page)}

.eyebrow{font-family:var(--gb-font-mono);font-size:12px; font-weight:500; text-transform:uppercase; letter-spacing:.18em; color:var(--gb-text-muted); margin:0}
.eyebrow--acid{color:var(--gb-acid)}
.mono{font-family:var(--gb-font-mono); font-size:13px; line-height:1.6}
.mono-label{font-family:var(--gb-font-mono); font-size:11px; font-weight:500; text-transform:uppercase; letter-spacing:.14em}
.display-l{font-family:var(--gb-font-display); font-size:clamp(40px,5.5vw,74px); font-weight:700; line-height:.94; letter-spacing:-.03em; margin:0}
.heading-xl{text-wrap:balance;font-family:var(--gb-font-ui); font-size:clamp(32px,3.6vw,54px); font-weight:800; line-height:1.03; letter-spacing:-.02em; margin:0}
.heading-m{font-family:var(--gb-font-ui); font-size:24px; font-weight:800; line-height:1.15; margin:0}
.body-l{font-size:20px; line-height:1.5; color:var(--gb-text-secondary)}
.muted{color:var(--gb-text-muted)}
.section-head{max-width:820px; margin-bottom:var(--gb-s-8)}
.section-head .eyebrow{margin-bottom:var(--gb-s-4)}
.section-head p{margin:var(--gb-s-5) 0 0; font-size:18px; color:var(--gb-text-secondary)}

/* Badges */
.badge{display:inline-flex; align-items:center; gap:6px; font-family:var(--gb-font-mono); font-size:11px; font-weight:500; text-transform:uppercase; letter-spacing:.14em; padding:6px 10px; border:1px solid var(--gb-line-mid); border-radius:var(--gb-radius-chip); color:var(--gb-text-secondary); background:transparent}
.badge--acid{background:var(--gb-acid); color:var(--gb-ink); border-color:var(--gb-acid)}
.badge--electric{background:var(--gb-electric-2); color:var(--gb-white); border-color:var(--gb-electric-2)}
.badge__dot{width:7px; height:7px; border-radius:999px; background:var(--gb-acid); box-shadow:0 0 0 3px rgba(107,140,255,.24)}

/* Buttons */
.button{display:inline-flex; align-items:center; gap:10px; font-family:var(--gb-font-ui); font-weight:800; font-size:12px; letter-spacing:.14em; text-transform:uppercase; padding:14px 20px; border-radius:0; border:1px solid transparent; cursor:pointer; transition:transform .12s ease,background .15s ease,border-color .15s ease,box-shadow .15s ease; background:transparent; color:var(--gb-text-primary)}
.button:hover{transform:translateY(-2px)}
.button--primary{background:var(--gb-white); color:var(--gb-ink); border-color:var(--gb-white)}
.button--primary:hover{box-shadow:var(--gb-shadow-acid); border-color:var(--gb-acid)}
.button--primary:active{background:var(--gb-ink); color:var(--gb-acid); border-color:var(--gb-acid); transform:none}
.button--secondary{border-color:var(--gb-line-mid); color:var(--gb-text-primary)}
.button--secondary:hover{border-color:var(--gb-acid)}
.button--tg{background:var(--gb-electric-2); color:var(--gb-white); border-color:var(--gb-electric-2); box-shadow:var(--gb-shadow-electric)}
.button--tg:hover{background:var(--gb-electric)}
.button--tg .arw{color:var(--gb-acid); font-family:var(--gb-font-mono)}
.button--block{width:100%; justify-content:center}

/* Header */
.header{position:sticky; top:0; z-index:60; background:rgba(5,5,6,.82); backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px); border-bottom:1px solid var(--gb-line-soft)}
.header__inner{max-width:1280px; margin:0 auto; padding:0 40px; height:66px; display:flex; align-items:center; gap:var(--gb-s-6)}
.brand{display:flex; align-items:center; gap:12px}
.brand__mark{width:34px; height:34px; border:1px solid var(--gb-line-mid); background:var(--gb-bg-surface); display:flex; align-items:center; justify-content:center; overflow:hidden}
.brand__name{font-family:var(--gb-font-ui); font-weight:800; letter-spacing:-.01em; font-size:17px}
.brand__status{font-family:var(--gb-font-mono); font-size:10px; font-weight:500; letter-spacing:.12em; color:var(--gb-acid); border-left:1px solid var(--gb-line-mid); padding-left:12px; margin-left:2px}
.nav{display:flex; align-items:center; gap:26px; margin-left:auto}
.nav__link{font-family:var(--gb-font-ui); font-size:14px; font-weight:600; color:var(--gb-text-secondary); padding:4px 0; border-bottom:1px solid transparent; transition:color .15s,border-color .15s}
.nav__link:hover{color:var(--gb-text-primary); border-bottom-color:var(--gb-electric)}
.header__cta{display:flex; align-items:center; gap:14px}
.burger{display:none; width:42px; height:42px; border:1px solid var(--gb-line-mid); background:transparent; color:var(--gb-text-primary); cursor:pointer; flex-direction:column; align-items:center; justify-content:center; gap:5px}
.burger span{width:18px; height:2px; background:currentColor}
.mobilenav{display:none}

/* Hero */
.hero{min-height:88vh; display:grid; grid-template-columns:1.05fr .95fr; gap:0; border-top:1px solid var(--gb-line-soft)}
.hero__left{padding:var(--gb-s-9) 40px var(--gb-s-8); display:flex; flex-direction:column; justify-content:center; border-right:1px solid var(--gb-line-soft); max-width:760px; margin-left:auto; width:100%}
.hero__left-inner{max-width:640px; margin-left:auto; width:100%}
.hero h1{margin:var(--gb-s-5) 0}
.hero__body{font-size:20px; line-height:1.5; color:var(--gb-text-secondary); max-width:560px}
.hero__cta{display:flex; gap:14px; flex-wrap:wrap; margin-top:var(--gb-s-7)}
.hero__statusrow{display:flex; flex-wrap:wrap; gap:8px; margin-top:var(--gb-s-7)}
.hero__right{padding:var(--gb-s-8) 40px; display:flex; flex-direction:column; gap:var(--gb-s-4); justify-content:center; background:var(--gb-bg-paper); max-width:720px}
.emblem{position:relative; border:1px solid var(--gb-line-mid); background:linear-gradient(180deg,var(--gb-electric-dark),var(--gb-bg-page)); overflow:hidden; min-height:230px}
.emblem__tag{position:absolute; top:12px; left:12px; z-index:2}
.emblem__wm{position:absolute; right:-6px; bottom:-14px; font-family:var(--gb-font-display); font-weight:700; font-size:120px; line-height:1; color:rgba(255,255,255,.06); letter-spacing:-.04em; pointer-events:none}

/* Living blobs */
.blob{position:absolute; border-radius:50%; filter:blur(60px); opacity:.18; pointer-events:none}
.blob--1{width:300px; height:300px; background:var(--gb-electric-2); top:-80px; right:-60px; animation:blobFloat 8s ease-in-out infinite}
.blob--2{width:220px; height:220px; background:var(--gb-acid); bottom:-40px; left:-40px; animation:blobFloat 10s ease-in-out infinite reverse}
.blob--3{width:160px; height:160px; background:var(--gb-electric); top:40%; left:50%; animation:blobFloat 7s ease-in-out infinite .5s}
@keyframes blobFloat{0%,100%{transform:translate(0,0) scale(1)}25%{transform:translate(30px,-20px) scale(1.08)}50%{transform:translate(-10px,15px) scale(.94)}75%{transform:translate(-25px,-10px) scale(1.05)}}

/* Cursor glow — large radial gradient following mouse */
.cursor-glow{position:fixed; width:600px; height:600px; border-radius:50%; pointer-events:none; z-index:0;
  background:radial-gradient(circle,rgba(0,53,245,.07) 0%,transparent 70%);
  transform:translate(-50%,-50%); transition:left .8s ease-out,top .8s ease-out; will-change:left,top}

/* Floating particles */
.particles{position:fixed; inset:0; pointer-events:none; z-index:0; overflow:hidden}
.particle{position:absolute; width:2px; height:2px; background:var(--gb-acid); border-radius:50%; animation:particleFloat linear infinite}
@keyframes particleFloat{0%{transform:translateY(100vh) scale(0); opacity:0}10%{opacity:.6}90%{opacity:.6}100%{transform:translateY(-10vh) scale(1); opacity:0}}

/* Breathing section accent */
@keyframes breathe{0%,100%{opacity:.4}50%{opacity:.8}}

/* Feature cards */
.feature-card{padding:var(--gb-s-6); background:var(--gb-bg-page); display:flex; flex-direction:column; gap:var(--gb-s-3); transition:box-shadow .15s,border-color .15s; min-height:180px}
.feature-card:hover{box-shadow:inset 0 0 0 1px var(--gb-acid)}
.feature-card__num{font-family:var(--gb-font-mono); font-size:12px; font-weight:500; letter-spacing:.14em; color:var(--gb-acid)}
.feature-card h3{margin:0; font-family:var(--gb-font-ui); font-weight:800; font-size:19px; line-height:1.2}
.feature-card p{text-wrap:pretty;margin:0; color:var(--gb-text-muted); font-size:15px}
.product-shot{margin:auto 0 0;padding-top:var(--gb-s-3)}
.product-shot img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:top;outline:1px solid rgba(255,255,255,.1);outline-offset:-1px}
.hero-product-shot{width:min(100%,340px);margin:var(--gb-s-6) auto 0}
.hero-product-shot img{display:block;width:100%;height:auto;outline:1px solid rgba(255,255,255,.1);outline-offset:-1px}
.hero-product-shot figcaption,.product-shot figcaption,.article-shot figcaption{margin-top:var(--gb-s-2);font-family:var(--gb-font-mono);font-size:11px;font-weight:500;line-height:1.5;letter-spacing:.04em;color:var(--gb-text-muted)}

/* Pillar */
.pillar{padding:var(--gb-s-7) var(--gb-s-6); background:var(--gb-bg-surface); display:flex; flex-direction:column; gap:var(--gb-s-4); min-height:230px}
.pillar__num{font-family:var(--gb-font-mono); font-size:12px; font-weight:500; letter-spacing:.14em}
.pillar h3{margin:0; font-size:26px; font-weight:800; font-family:var(--gb-font-ui); letter-spacing:-.01em}
.pillar p{margin:0; font-size:15px}
.pillar--electric{background:var(--gb-electric-2); color:var(--gb-white)}
.pillar--electric .pillar__num,.pillar--electric p{color:rgba(255,255,255,.82)}
.pillar--terminal{background:var(--gb-terminal-bg)}
.pillar--terminal .pillar__num{color:var(--gb-acid)}
.pillar--terminal p{color:var(--gb-terminal-muted); font-family:var(--gb-font-mono); font-size:13px}
.pillar--acid{background:var(--gb-bg-surface); box-shadow:inset 0 0 0 1px var(--gb-acid)}
.pillar--acid .pillar__num{color:var(--gb-acid)}

/* Terminal */
.terminal{border:1px solid var(--gb-line-mid); background:var(--gb-terminal-bg); border-radius:0; overflow:hidden}
.terminal__head{display:flex; align-items:center; gap:8px; padding:11px 14px; background:var(--gb-terminal-head); border-bottom:1px solid var(--gb-line-mid); font-family:var(--gb-font-mono); font-size:11px; font-weight:500; letter-spacing:.12em; text-transform:uppercase; color:var(--gb-terminal-muted)}
.terminal__dots{display:flex; gap:6px; margin-right:6px}
.terminal__dots i{width:9px; height:9px; border-radius:999px; background:var(--gb-line-mid); display:block}
.terminal__body{padding:18px 16px; font-family:var(--gb-font-mono); font-size:13px; line-height:1.75; color:var(--gb-terminal-text); overflow-x:auto}
.tprompt{color:var(--gb-acid)}
.tcmd{color:var(--gb-terminal-command)}
.tout{color:var(--gb-terminal-blue)}
.cursor{display:inline-block; width:9px; height:16px; background:var(--gb-acid); vertical-align:-2px; margin-left:2px; animation:blink 1.05s steps(1) infinite}
@keyframes blink{50%{opacity:0}}

/* MiniApp mock */
.miniapp{display:grid; grid-template-columns:1.1fr .9fr; gap:var(--gb-s-6); align-items:start}
.miniapp-card{border:1px solid var(--gb-line-mid); background:var(--gb-bg-surface); box-shadow:var(--gb-shadow-card)}
.miniapp-card__bar{display:flex; align-items:center; justify-content:space-between; padding:12px 16px; background:var(--gb-terminal-head); border-bottom:1px solid var(--gb-line-mid); font-family:var(--gb-font-mono); font-size:11px; font-weight:500; letter-spacing:.12em; text-transform:uppercase; color:var(--gb-text-secondary)}
.miniapp-card__body{padding:var(--gb-s-6)}
.order{border:1px solid var(--gb-line-soft); background:var(--gb-bg-page); padding:var(--gb-s-5); margin-bottom:var(--gb-s-5)}
.order__head{display:flex; align-items:baseline; justify-content:space-between; margin-bottom:var(--gb-s-4)}
.order__id{font-family:var(--gb-font-mono); font-size:18px; font-weight:500; color:var(--gb-text-primary)}
.order__device{font-size:15px; color:var(--gb-text-secondary); margin-bottom:var(--gb-s-4)}
.orow{display:flex; justify-content:space-between; align-items:center; padding:9px 0; border-top:1px solid var(--gb-line-soft); font-size:14px}
.orow__k{font-family:var(--gb-font-mono); font-size:11px; letter-spacing:.1em; text-transform:uppercase; color:var(--gb-text-muted)}
.orow__v{font-weight:700}
.status-chip{display:inline-flex; align-items:center; gap:7px; font-family:var(--gb-font-mono); font-size:11px; font-weight:500; letter-spacing:.1em; text-transform:uppercase; padding:5px 9px; border:1px solid var(--gb-acid); color:var(--gb-acid); background:rgba(107,140,255,.14)}
.status-chip i{width:7px;height:7px;background:var(--gb-acid); border-radius:999px}
.timeline{list-style:none; margin:0 0 var(--gb-s-5); padding:0; display:flex; flex-direction:column}
.timeline li{display:flex; gap:12px; padding:7px 0; align-items:flex-start}
.timeline__dot{width:10px; height:10px; border:1px solid var(--gb-line-mid); margin-top:5px; flex:none; border-radius:999px}
.timeline__dot.on{background:var(--gb-acid); border-color:var(--gb-acid)}
.timeline__time{font-family:var(--gb-font-mono); font-size:11px; color:var(--gb-text-muted); min-width:44px}
.timeline__text{font-size:14px; color:var(--gb-text-secondary)}
.timeline li.on .timeline__text{color:var(--gb-text-primary)}

/* FAQ */
.faq{border:1px solid var(--gb-line-soft)}
.faq-row{border-bottom:1px solid var(--gb-line-soft)}
.faq-row:last-child{border-bottom:0}
.faq-row__q{width:100%; display:flex; align-items:center; justify-content:space-between; gap:16px; background:transparent; border:0; cursor:pointer; padding:22px 24px; text-align:left; color:var(--gb-text-primary); font-family:var(--gb-font-ui); font-size:19px; font-weight:700; transition:background .15s}
.faq-row__q:hover{background:var(--gb-bg-surface)}
.faq-row.is-open .faq-row__q{color:var(--gb-acid)}
.faq-row__sign{font-family:var(--gb-font-mono); font-size:22px; font-weight:400; color:var(--gb-acid); flex:none}
.faq-row__a{padding:0 24px 24px; max-width:820px; color:var(--gb-text-secondary); font-size:16px; line-height:1.6; display:none}
.faq-row.is-open .faq-row__a{display:block}

/* Final CTA */
.finalcta{background:var(--gb-electric-2); color:var(--gb-white); border-top:1px solid var(--gb-electric-2)}
.finalcta h2{color:#fff}
.finalcta .hero__cta .button--secondary{border-color:rgba(255,255,255,.4); color:#fff}
.finalcta .hero__cta .button--secondary:hover{border-color:var(--gb-acid)}

/* Footer */
.footer{border-top:1px solid var(--gb-line-soft); padding:var(--gb-s-8) 40px var(--gb-s-6)}
.footer__grid{max-width:1280px; margin:0 auto; display:flex; justify-content:space-between; gap:var(--gb-s-7); flex-wrap:wrap}
.footer__links{display:flex; gap:26px; flex-wrap:wrap}
.footer__links a{font-size:14px; color:var(--gb-text-secondary)}
.footer__links a:hover{color:var(--gb-acid)}
.footer__line{max-width:1280px; margin:var(--gb-s-7) auto 0; padding-top:var(--gb-s-4); border-top:1px solid var(--gb-line-soft); font-family:var(--gb-font-mono); font-size:11px; letter-spacing:.14em; color:var(--gb-text-muted); display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap}

/* Article */
.article .section{border-top:0;padding-top:var(--gb-s-9)}
.article__content{max-width:760px}
.article__content .eyebrow{margin-bottom:var(--gb-s-4)}
.article__content h1{margin-bottom:var(--gb-s-5)}
.article__content .body-l{max-width:680px;margin:0 0 var(--gb-s-8);text-wrap:pretty}
.article__content h2{font-family:var(--gb-font-ui);font-size:clamp(26px,3vw,38px);line-height:1.12;letter-spacing:-.02em;text-wrap:balance;margin:var(--gb-s-8) 0 var(--gb-s-4)}
.article__content p,.article__content li{max-width:72ch;font-size:17px;line-height:1.7}
.article__content ul,.article__content ol{padding-left:1.35em;margin:var(--gb-s-4) 0;display:grid;gap:var(--gb-s-2)}
.editorial-panel{position:relative;margin:var(--gb-s-8) 0;padding:var(--gb-s-6);border:1px solid var(--gb-acid);background:var(--gb-bg-surface);box-shadow:var(--gb-shadow-card)}
.editorial-panel h2{margin:var(--gb-s-3) 0 var(--gb-s-4);font-size:clamp(24px,2.5vw,32px)}
.editorial-panel ol{margin-bottom:0}.editorial-panel li::marker{font-family:var(--gb-font-mono);font-weight:500;color:var(--gb-acid)}
.article-shot{width:min(100%,430px);margin:var(--gb-s-7) auto}.article-shot img{display:block;width:100%;height:auto;outline:1px solid rgba(255,255,255,.1);outline-offset:-1px}
.gb-root.is-light .hero-product-shot img,.gb-root.is-light .product-shot img,.gb-root.is-light .article-shot img{outline-color:rgba(0,0,0,.1)}
.article-related{display:flex;flex-wrap:wrap;gap:var(--gb-s-3);margin-top:var(--gb-s-7);padding-top:var(--gb-s-5);border-top:1px solid var(--gb-line-soft)}
.article-related a{color:var(--gb-text-secondary);text-decoration:underline;text-decoration-color:var(--gb-acid);text-underline-offset:4px}

/* Theme toggle */
.theme-switch{display:flex; flex-direction:column; align-items:center; gap:2px; line-height:1}
.theme-toggle{display:flex; align-items:center; gap:8px; font-family:var(--gb-font-mono); font-size:11px; font-weight:500; letter-spacing:.12em; text-transform:uppercase; padding:6px 12px; background:var(--gb-electric-2); color:#fff; border:1px solid var(--gb-electric-2); cursor:pointer; box-shadow:var(--gb-shadow-electric); transition:transform .12s}
.theme-toggle:hover{transform:translateY(-2px)}
.theme-toggle i{width:9px; height:9px; border-radius:999px; background:var(--gb-acid); display:block}
.theme-toggle .arw{color:var(--gb-acid); font-size:13px}
.theme-cap{font-family:var(--gb-font-mono); font-size:8.5px; font-weight:500; letter-spacing:.12em; text-transform:uppercase; color:var(--gb-text-muted)}

/* Scroll motion is progressive enhancement: unenhanced content remains visible. */
.motion-ready .reveal{opacity:0;transform:translateY(18px);filter:blur(3px);transition:opacity .55s ease,transform .55s ease,filter .55s ease}
.motion-ready .reveal.revealed{opacity:1;transform:translateY(0);filter:blur(0)}
.motion-ready .reveal-delay-1{transition-delay:.1s}
.motion-ready .reveal-delay-2{transition-delay:.2s}
.motion-ready .reveal-delay-3{transition-delay:.3s}
.motion-ready .reveal-delay-4{transition-delay:.4s}
.motion-ready .reveal-delay-5{transition-delay:.5s}
.motion-ready .reveal-delay-6{transition-delay:.6s}
.motion-ready .hero-motion{transition-delay:var(--hero-delay,0ms)}
@media(min-width:1081px) and (pointer:fine){
  .locomotive-ready .hero [data-scroll-speed]{will-change:transform}
  .locomotive-ready .motion-problem .feature-card{transform:translateY(72px);filter:blur(5px);transition:transform .7s cubic-bezier(.2,0,0,1),opacity .7s ease,filter .7s ease}
  .locomotive-ready .motion-problem.is-inview .feature-card{transform:translateY(0);filter:blur(0)}
  .locomotive-ready .motion-story .container{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:var(--gb-s-8);align-items:start}
  .locomotive-ready .motion-story .section-head{position:sticky;top:110px;margin:0}
  .locomotive-ready .motion-story .grid{grid-template-columns:1fr}
  .locomotive-ready .motion-story .pillar{opacity:calc(.35 + var(--progress,0) * .65);transform:translateY(calc((1 - var(--progress,0)) * 32px));transition:opacity .25s ease,transform .25s ease}
  .locomotive-ready .motion-links .grid{transform:translateY(calc((.5 - var(--progress,0)) * 48px));transition:transform .2s linear}
}
@media(prefers-reduced-motion:reduce){.motion-story .container{display:block}.motion-story .section-head{position:static}.motion-story .pillar{opacity:1;transform:none}}

@media(max-width:1040px){
  .cursor-glow,.particles{display:none}
  .hero{grid-template-columns:1fr}
  .hero__left{border-right:0; border-bottom:1px solid var(--gb-line-soft); max-width:none; padding:var(--gb-s-8) 24px}
  .hero__left-inner,.hero__body{max-width:none}
  .hero__right{max-width:none; padding:var(--gb-s-7) 24px}
  .miniapp{grid-template-columns:1fr}
}
@media(max-width:1080px){
  .section{padding:var(--gb-s-8) 24px}
  .nav,.header__ghost{display:none}
  .header__cta .button--tg{display:none}
  .brand__status{display:none}
  .burger{display:flex}
  .mobilenav{display:none; border-bottom:1px solid var(--gb-line-soft); background:var(--gb-bg-paper)}
  .mobilenav.open{display:block}
  .mobilenav__inner{padding:16px 24px 24px; display:flex; flex-direction:column; gap:4px}
  .mobilenav a{padding:12px 0; border-bottom:1px solid var(--gb-line-soft); font-size:16px; font-weight:600}
  .mobilenav .button{margin-top:14px}
  .header__inner{padding:0 24px; gap:14px}
}
@media(pointer:coarse){.cursor-glow,.particles{display:none}}
@media(max-width:560px){
  .section{padding:var(--gb-s-7) 16px}
  .article .section{padding-top:var(--gb-s-7)}
  .article__content p,.article__content li{font-size:16px}
  .article-shot{margin:var(--gb-s-6) auto}
  .editorial-panel{padding:var(--gb-s-5)}
  .hero__left,.hero__right{padding:var(--gb-s-7) 16px}
  .hero__cta{flex-direction:column; align-items:stretch}
  .hero__cta .button{justify-content:center}
  .footer{padding:var(--gb-s-7) 16px var(--gb-s-5)}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important; animation-iteration-count:1!important; scroll-behavior:auto!important; transition-duration:.001ms!important}
  .cursor-glow,.particles{display:none}
}
