/* ── TOKENS ─────────────────────────────── */
:root {
  --bg:      #080808;
  --bg2:     #0F0F0F;
  --bg3:     #161616;
  --surface: #1C1C1C;
  --border:  rgba(255,255,255,0.07);
  --orange:  #FF5500;
  --red:     #CC1A00;
  --grad:    linear-gradient(135deg,#FF6B00 0%,#CC1A00 100%);
  --gold:    #C8960A;
  --goldb:   #F5C518;
  --text:    #F0EDE8;
  --sub:     #888580;
  --dim:     #444;
}
@media(prefers-color-scheme:light){
  :root{--bg:#F5F3F0;--bg2:#EDEBE8;--bg3:#E6E4E0;--surface:#FFFFFF;--border:rgba(0,0,0,0.08);--text:#1A1A1A;--sub:#666;--dim:#AAA}
}
:root[data-theme="dark"]{--bg:#080808;--bg2:#0F0F0F;--bg3:#161616;--surface:#1C1C1C;--border:rgba(255,255,255,0.07);--text:#F0EDE8;--sub:#888580;--dim:#444}
:root[data-theme="light"]{--bg:#F5F3F0;--bg2:#EDEBE8;--bg3:#E6E4E0;--surface:#FFFFFF;--border:rgba(0,0,0,0.08);--text:#1A1A1A;--sub:#666;--dim:#AAA}

/* ── RESET ──────────────────────────────── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--text);font-family:-apple-system,'Segoe UI',system-ui,BlinkMacSystemFont,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
:focus-visible{outline:2px solid var(--orange);outline-offset:3px}
p{line-height:1.7}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* ── LAYOUT ─────────────────────────────── */
.wrap{max-width:1100px;margin:0 auto;padding:0 36px}
@media(max-width:600px){.wrap{padding:0 20px}}
section{padding:108px 0}

/* ── TYPE ───────────────────────────────── */
.eyebrow{display:inline-block;font-size:.68rem;font-weight:700;letter-spacing:.24em;text-transform:uppercase;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:14px}
h2{font-size:clamp(2rem,5vw,3.4rem);font-weight:900;line-height:1.08;letter-spacing:-.025em;text-wrap:balance}
.grad-text{background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}

/* ── ANIMATE ON SCROLL ──────────────────── */
.reveal,.reveal-l,.reveal-r{opacity:0;transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1)}
.reveal{transform:translateY(30px)}
.reveal-l{transform:translateX(-36px)}
.reveal-r{transform:translateX(36px)}
.reveal.on,.reveal-l.on,.reveal-r.on{opacity:1;transform:none}
.d1{transition-delay:.08s}.d2{transition-delay:.16s}.d3{transition-delay:.24s}

/* ── NAV ───────────────────────────────── */
#nav{position:fixed;top:0;left:0;right:0;z-index:300;height:62px;display:flex;align-items:center;justify-content:space-between;padding:0 36px;transition:background .35s,border-color .35s,backdrop-filter .35s;border-bottom:1px solid transparent}
#nav.stuck{background:rgba(8,8,8,.88);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-color:var(--border)}
:root[data-theme="light"] #nav.stuck{background:rgba(245,243,240,.92)}
.nav-logo-wrap{display:flex;align-items:center;background:#fff;border-radius:9px;padding:4px 12px;height:38px}
.nav-logo{height:28px;width:auto}
.nav-links{display:flex;gap:30px;list-style:none}
.nav-links a{font-size:.8rem;font-weight:600;letter-spacing:.04em;color:var(--sub);transition:color .2s}
.nav-links a:hover{color:var(--text)}
.nav-links a.active{color:var(--orange)}
.nav-pill{display:inline-flex;align-items:center;gap:8px;padding:8px 22px;background:var(--grad);border-radius:50px;font-size:.78rem;font-weight:700;color:#fff;transition:opacity .2s,transform .2s}
.nav-pill:hover{opacity:.88;transform:translateY(-1px)}
@media(max-width:640px){.nav-links,.nav-pill{display:none}}

/* ── PAGE HEADER (inner pages) ───────────── */
.page-header{padding:140px 0 80px;background:var(--bg2);border-bottom:1px solid var(--border);position:relative;overflow:hidden}
.page-header-canvas{position:absolute;inset:0;pointer-events:none;z-index:0}
.page-header .wrap{position:relative;z-index:1}
.page-header h1{font-size:clamp(2.4rem,5vw,4rem);font-weight:900;letter-spacing:-.03em;line-height:1.0;margin-bottom:14px}
.page-header p{color:var(--sub);font-size:1rem;max-width:46ch}

/* ── BUTTONS ─────────────────────────────── */
.btn-fill{display:inline-flex;align-items:center;gap:9px;padding:14px 30px;background:var(--grad);border-radius:50px;font-size:.88rem;font-weight:700;color:#fff;transition:transform .22s,box-shadow .22s}
.btn-fill:hover{transform:translateY(-2px);box-shadow:0 14px 36px rgba(255,85,0,.32)}
.btn-line{display:inline-flex;align-items:center;gap:9px;padding:13px 28px;border:1.5px solid rgba(255,255,255,.18);border-radius:50px;font-size:.88rem;font-weight:700;color:var(--sub);transition:border-color .2s,color .2s,transform .22s}
.btn-line:hover{border-color:var(--orange);color:var(--text);transform:translateY(-2px)}
:root[data-theme="light"] .btn-line{border-color:rgba(0,0,0,.18)}
.btn-gold{display:inline-flex;align-items:center;gap:9px;padding:13px 26px;background:linear-gradient(135deg,#B8840A,#F5C518);border-radius:50px;font-size:.84rem;font-weight:700;color:#0A0600;transition:transform .2s,box-shadow .2s;width:fit-content}
.btn-gold:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(200,150,10,.35)}
.btn-org{display:inline-flex;align-items:center;gap:9px;padding:12px 24px;border:1.5px solid var(--orange);border-radius:50px;font-size:.84rem;font-weight:700;color:var(--orange);transition:transform .2s,background .2s;width:fit-content}
.btn-org:hover{background:rgba(255,85,0,.1);transform:translateY(-2px)}

/* ── MARQUEE STRIP ─────────────────────── */
#strip{border-top:1px solid var(--border);border-bottom:1px solid var(--border);overflow:hidden;padding:14px 0;background:var(--bg2)}
.marquee-track{display:flex;gap:0;white-space:nowrap;animation:marquee 28s linear infinite}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.marquee-item{display:inline-flex;align-items:center;gap:16px;padding:0 40px;font-size:.74rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--dim)}
.marquee-item b{background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.marquee-sep{width:4px;height:4px;border-radius:50%;background:var(--orange);opacity:.5;flex-shrink:0}

/* ── PRODUCTS ─────────────────────────── */
.prod-section{display:grid;grid-template-columns:1fr 1fr;gap:0;border-radius:28px;overflow:hidden;border:1px solid var(--border);margin-bottom:28px;transition:border-color .3s,box-shadow .3s}
.prod-section:hover{border-color:rgba(255,255,255,.14);box-shadow:0 24px 72px rgba(0,0,0,.4)}
@media(max-width:720px){.prod-section{grid-template-columns:1fr}}
.prod-body{padding:60px 52px;display:flex;flex-direction:column;gap:22px;justify-content:center}
@media(max-width:720px){.prod-body{padding:40px 28px}}
.prod-visual{display:flex;align-items:center;justify-content:center;padding:52px 36px;position:relative;overflow:hidden;min-height:460px}
@media(max-width:720px){.prod-visual{display:none}}
.prod-section.calc{background:linear-gradient(150deg,#0A0A0A 0%,#0E0700 100%)}
.prod-section.calc .prod-visual{background:radial-gradient(ellipse at 50% 50%,rgba(200,150,10,.08) 0%,transparent 68%)}
.prod-section.calc .prod-visual::after{content:'CALC';position:absolute;font-size:9rem;font-weight:900;color:rgba(200,150,10,.04);letter-spacing:-.04em;user-select:none;pointer-events:none}
.prod-section.at{background:linear-gradient(150deg,#0D0D0D 0%,#0E0900 100%)}
.prod-section.at .prod-visual{background:radial-gradient(ellipse at 50% 50%,rgba(255,85,0,.07) 0%,transparent 68%)}
.prod-section.at .prod-visual::after{content:'AUTO';position:absolute;font-size:9rem;font-weight:900;color:rgba(255,85,0,.04);letter-spacing:-.04em;user-select:none;pointer-events:none}
.prod-trio{position:relative;width:290px;height:430px}
.pd{position:absolute;border-radius:32px;overflow:hidden;border:2px solid rgba(255,255,255,.09)}
.pd img{width:100%;height:auto;display:block}
.pd-c{width:148px;top:20px;left:50%;margin-left:-74px;z-index:3;box-shadow:0 38px 76px rgba(0,0,0,.8);animation:pdC 5.2s ease-in-out infinite}
.pd-l{width:110px;top:70px;left:0;z-index:2;opacity:.5;transform:rotate(-11deg);box-shadow:0 20px 48px rgba(0,0,0,.6);animation:pdL 5.8s ease-in-out infinite .3s}
.pd-r{width:110px;top:70px;right:0;z-index:2;opacity:.5;transform:rotate(11deg);box-shadow:0 20px 48px rgba(0,0,0,.6);animation:pdR 6.4s ease-in-out infinite .6s}
@keyframes pdC{0%,100%{transform:translateY(0)}50%{transform:translateY(-13px)}}
@keyframes pdL{0%,100%{transform:rotate(-11deg) translateY(0)}50%{transform:rotate(-11deg) translateY(-9px)}}
@keyframes pdR{0%,100%{transform:rotate(11deg) translateY(0)}50%{transform:rotate(11deg) translateY(-9px)}}
.prod-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 14px;border-radius:50px;font-size:.64rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;width:fit-content}
.prod-chip.gold{background:rgba(200,150,10,.1);color:#F5C518;border:1px solid rgba(200,150,10,.22)}
.prod-chip.org{background:rgba(255,85,0,.1);color:var(--orange);border:1px solid rgba(255,85,0,.22)}
.prod-body h3{font-size:clamp(1.5rem,2.5vw,2rem);font-weight:900;letter-spacing:-.02em;line-height:1.1}
.prod-section.calc .prod-body h3{color:#F0EDE6}
.prod-section.at .prod-body h3{color:var(--text)}
.prod-desc{font-size:.9rem;color:var(--sub);line-height:1.7;max-width:38ch}
.prod-feats{list-style:none;display:flex;flex-direction:column;gap:11px}
.prod-feats li{display:flex;align-items:center;gap:11px;font-size:.84rem;color:var(--sub)}
.dot{width:5px;height:5px;border-radius:50%;flex-shrink:0}
.dot.gold{background:#F5C518}.dot.org{background:var(--orange)}
.prod-actions{display:flex;flex-direction:column;gap:8px;margin-top:4px}
.prod-note{font-size:.72rem;color:var(--dim)}

/* ── SCREENSHOT GALLERY ─────────────────── */
.gallery-wrap{overflow:hidden;padding:10px 0}
.gallery-wrap+.gallery-wrap{margin-top:18px}
.gallery-row{display:flex;gap:18px;width:max-content;animation:gScrollL 48s linear infinite}
.gallery-row.rev{animation:gScrollR 40s linear infinite}
.gallery-row:hover,.gallery-row.rev:hover{animation-play-state:paused}
@keyframes gScrollL{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
@keyframes gScrollR{0%{transform:translateX(-33.333%)}100%{transform:translateX(0)}}
.g-item{flex-shrink:0;cursor:default}
.g-phone{width:162px;border-radius:28px;overflow:hidden;border:1.5px solid rgba(255,255,255,.08);box-shadow:0 18px 44px rgba(0,0,0,.52);transition:transform .32s cubic-bezier(.22,1,.36,1),box-shadow .32s}
.g-item:hover .g-phone{transform:translateY(-10px) scale(1.04);box-shadow:0 28px 56px rgba(0,0,0,.65),0 0 32px rgba(255,85,0,.15)}
.g-phone img{width:100%;height:auto;display:block}

/* ── PILLARS ───────────────────────────── */
.pillars-head{text-align:center;margin-bottom:64px}
.pillars-head p{color:var(--sub);font-size:.95rem;max-width:44ch;margin:12px auto 0}
.pillars-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:var(--border);border-radius:24px;overflow:hidden}
@media(max-width:640px){.pillars-grid{grid-template-columns:1fr}}
.pillar{background:var(--bg2);padding:48px 38px;display:flex;flex-direction:column;gap:18px}
.p-icon{width:54px;height:54px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:1.4rem;background:rgba(255,85,0,.07);border:1px solid rgba(255,85,0,.14)}
.pillar h3{font-size:1.05rem;font-weight:800}
.pillar p{font-size:.86rem;color:var(--sub)}

/* ── ABOUT ─────────────────────────────── */
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
@media(max-width:760px){.about-grid{grid-template-columns:1fr}}
.about-vis{display:flex;align-items:center;justify-content:center}
@media(max-width:760px){.about-vis{display:none}}
.about-logo-card{background:#fff;border-radius:24px;padding:36px 48px;box-shadow:0 24px 64px rgba(0,0,0,.45),0 0 0 1px rgba(255,255,255,.04);display:inline-flex;align-items:center;justify-content:center}
.about-logo-card img{width:280px;max-width:100%;display:block}
.a-stats{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:42px}
.a-stat{padding:22px 24px;background:var(--bg2);border:1px solid var(--border);border-radius:16px}
.a-stat-n{font-size:1.9rem;font-weight:900;line-height:1;font-variant-numeric:tabular-nums}
.a-stat-l{font-size:.72rem;color:var(--sub);margin-top:5px}

/* ── PRIVACY ───────────────────────────── */
.pcard{background:var(--bg3);border:1px solid var(--border);border-radius:28px;padding:56px;max-width:840px;margin:0 auto}
.pcard>h2{margin:10px 0 6px}
.pmeta{font-size:.78rem;color:var(--dim);margin-bottom:42px}
.pcard h3{font-size:.76rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:34px 0 10px}
.pcard p,.pcard li{font-size:.88rem;color:var(--sub);line-height:1.75}
.pcard ul{padding-left:20px;display:flex;flex-direction:column;gap:7px;margin-top:8px}
.pcard strong{color:var(--text);font-weight:600}
.pcard a{color:var(--orange)}
@media(max-width:600px){.pcard{padding:36px 24px}}

/* ── CONTACT ───────────────────────────── */
.contact-center{text-align:center}
.contact-center h2{margin:10px 0 14px}
.csub{color:var(--sub);font-size:.95rem;max-width:44ch;margin:0 auto 52px}
.clinks{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}
.clink{display:inline-flex;align-items:center;gap:14px;padding:20px 36px;background:var(--bg2);border:1px solid var(--border);border-radius:20px;transition:border-color .25s,box-shadow .25s}
.clink:hover{border-color:var(--orange);box-shadow:0 8px 32px rgba(255,85,0,.12)}
.clink-icon{width:40px;height:40px;border-radius:12px;background:rgba(255,85,0,.1);border:1px solid rgba(255,85,0,.18);display:flex;align-items:center;justify-content:center;font-size:1.1rem}
.clink-text{text-align:left}
.clink-label{font-size:.72rem;color:var(--sub);margin-bottom:2px;letter-spacing:.04em}
.clink-val{font-size:.95rem;font-weight:700;color:var(--orange)}

/* ── FOOTER ────────────────────────────── */
footer{border-top:1px solid var(--border);padding:28px 36px}
.foot{max-width:1100px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}
.fc{font-size:.76rem;color:var(--dim)}
.flinks{display:flex;gap:24px}
.flinks a{font-size:.76rem;color:var(--dim);transition:color .2s}
.flinks a:hover{color:var(--orange)}
