:root{
  --void:#04070C; --panel:#0A0E14; --panel-2:#0E141C; --panel-3:#121A23;
  --mint:#5EEAD4; --mint-dim:#3FB8A6; --cold:#7DD3FC;
  --text:#EDF1F5; --muted:#8A97A3; --faint:#5A6671; --line:rgba(237,241,245,.07); --line-2:rgba(237,241,245,.12);
  --display:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",system-ui,sans-serif;
  --mono:ui-monospace,"SF Mono","JetBrains Mono",Menlo,monospace;
  --maxw:1120px; --r:18px;
  --lh:1.5;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:var(--void);color:var(--text);font-family:var(--display);line-height:var(--lh);-webkit-font-smoothing:antialiased;overflow-x:hidden}
.wrap{max-width:var(--maxw);margin-inline:auto;padding-inline:28px}
a{color:inherit;text-decoration:none}
::selection{background:var(--mint);color:var(--void)}
img{display:block;max-width:100%}

/* ===== RTL foundation ===== */
[dir="rtl"]{--lh:1.7}
[dir="rtl"] body{line-height:var(--lh)}
/* keep LTR-locked atoms readable inside RTL pages (handles, code comments, store rows, emails) */
.ltr,[dir="rtl"] .handle-line,[dir="rtl"] .note,[dir="rtl"] .divide-head,[dir="rtl"] .wf input,[dir="rtl"] .store,[dir="rtl"] .langbtn,[dir="rtl"] .code,[dir="rtl"] .fcapn{direction:ltr;unicode-bidi:isolate}
[dir="rtl"] .note,[dir="rtl"] .divide-head{text-align:start}
/* per-script vertical breathing: Arabic/Urdu + Devanagari need more leading */
:lang(ar),:lang(ur){--lh:1.7}
:lang(hi){--lh:1.65}
:lang(ar) h1,:lang(ar) h2,:lang(ur) h1,:lang(ur) h2,:lang(hi) h1,:lang(hi) h2{line-height:1.18;letter-spacing:normal}

/* NAV — 54px Apple-standard */
nav{position:fixed;top:0;inset-inline:0;z-index:200;backdrop-filter:saturate(180%) blur(22px);-webkit-backdrop-filter:saturate(180%) blur(22px);background:rgba(4,7,12,.7);border-bottom:1px solid var(--line);transition:background .3s}
nav .wrap{display:flex;align-items:center;justify-content:space-between;height:54px}
.brand{display:flex;align-items:center;gap:9px;font-weight:600;font-size:15px;letter-spacing:-.015em}
.brand img{width:22px;height:22px;border-radius:6px;filter:drop-shadow(0 0 8px rgba(94,234,212,.25))}
.navlinks{display:flex;gap:30px;font-size:13.5px;color:var(--muted)}
.navlinks a{position:relative;transition:color .2s;padding-block:3px}
.navlinks a:hover,.navlinks a.here{color:var(--text)}
.navlinks a::after{content:"";position:absolute;inset-inline:0 100%;bottom:-3px;height:1.5px;background:var(--mint);transition:inset-inline-end .25s}
.navlinks a:hover::after,.navlinks a.here::after{inset-inline-end:0}
.nav-right{display:flex;align-items:center;gap:14px}
.langsel{position:relative}
.langbtn{display:flex;align-items:center;gap:6px;font-family:var(--mono);font-size:11.5px;letter-spacing:.05em;color:var(--muted);background:none;border:1px solid var(--line);height:30px;padding-inline:11px;border-radius:980px;cursor:pointer;transition:.2s}
.langbtn:hover{color:var(--text);border-color:var(--line-2)}
.langbtn .chev{transition:transform .25s;font-size:8px;opacity:.7}
.langsel.open .langbtn .chev{transform:rotate(180deg)}
.langmenu{position:absolute;top:calc(100% + 9px);inset-inline-end:0;background:rgba(14,20,28,.95);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--line-2);border-radius:14px;padding:6px;min-width:176px;opacity:0;visibility:hidden;transform:translateY(-6px);transition:.22s cubic-bezier(.2,.7,.2,1);box-shadow:0 16px 50px rgba(0,0,0,.55)}
.langsel.open .langmenu{opacity:1;visibility:visible;transform:none}
.langmenu a{display:flex;justify-content:space-between;align-items:center;padding:9px 12px;border-radius:9px;font-size:13.5px;color:var(--muted);transition:.15s}
.langmenu a:hover{background:var(--panel-3);color:var(--text)}
.langmenu a .code{font-family:var(--mono);font-size:11px;color:var(--faint);direction:ltr}
.langmenu a.active{color:var(--mint)}
.langmenu a.active .code{color:var(--mint-dim)}
.navcta{font-size:13px;font-weight:500;height:30px;display:inline-flex;align-items:center;padding-inline:16px;border-radius:980px;background:var(--mint);color:var(--void);transition:.2s;white-space:nowrap}
.navcta:hover{box-shadow:0 6px 22px rgba(94,234,212,.3);transform:translateY(-1px)}
.menutoggle{display:none;background:none;border:none;color:var(--text);cursor:pointer;flex-direction:column;gap:4px;padding:6px}
.menutoggle span{width:20px;height:1.5px;background:var(--text);border-radius:2px;transition:.25s}
@media(max-width:860px){.navlinks{display:none}.menutoggle{display:flex}}

/* shared type + layout */
section{padding-block:120px;position:relative}
.sec-eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--mint);margin-bottom:18px}
h2{font-size:clamp(31px,5.4vw,52px);font-weight:700;letter-spacing:-.032em;line-height:1.05;margin-bottom:20px;text-wrap:balance}
.lead{font-size:clamp(17px,2.2vw,20px);color:var(--muted);max-width:600px;line-height:1.5;text-wrap:pretty}
.btn{font-size:15px;font-weight:500;padding:14px 28px;border-radius:980px;transition:.2s;border:1px solid transparent;display:inline-flex;align-items:center;gap:8px;cursor:pointer}
.btn-primary{background:var(--mint);color:var(--void)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 34px rgba(94,234,212,.28)}
.btn-ghost{border-color:var(--line-2);color:var(--text)}
.btn-ghost:hover{border-color:var(--text);background:rgba(237,241,245,.04)}
.btn .arrow{transition:transform .2s}.btn:hover .arrow{transform:translateX(3px)}
[dir="rtl"] .btn .arrow{transform:scaleX(-1)}[dir="rtl"] .btn:hover .arrow{transform:scaleX(-1) translateX(3px)}
.cta-row{display:flex;gap:13px;flex-wrap:wrap}
.reveal{opacity:0;transform:translateY(30px);transition:opacity .75s cubic-bezier(.2,.7,.2,1),transform .75s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}

/* page hero (interior) */
.phero{padding:150px 0 70px;text-align:center;position:relative;overflow:hidden}
.phero .eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--mint);margin-bottom:22px}
.phero h1{font-size:clamp(38px,7vw,72px);font-weight:700;letter-spacing:-.035em;line-height:1.03;margin-bottom:22px;text-wrap:balance}
.phero h1 .soft{color:var(--faint)}
.phero .sub{font-size:clamp(16px,2.3vw,20px);color:var(--muted);max-width:580px;margin-inline:auto;line-height:1.55;text-wrap:pretty}

/* footer */
footer{border-top:1px solid var(--line);padding:60px 0 44px;margin-top:40px}
.foot-top{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:36px;margin-bottom:44px}
.foot-brand{max-width:280px}
.foot-brand .brand{font-size:15px}
.foot-brand p{font-size:13.5px;color:var(--faint);margin-top:14px;line-height:1.5}
.foot-links{display:flex;gap:54px;flex-wrap:wrap}
.foot-col h5{font-size:11px;text-transform:uppercase;letter-spacing:.13em;color:var(--faint);margin-bottom:15px;font-family:var(--mono)}
.foot-col a{display:block;font-size:14px;color:var(--text);opacity:.7;margin-bottom:10px;transition:opacity .2s}
.foot-col a:hover{opacity:1}
.foot-bottom{font-size:13px;color:var(--faint);display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;padding-top:26px;border-top:1px solid var(--line)}

/* ===== a11y: visible focus for keyboard nav ===== */
:focus-visible{outline:2px solid var(--mint);outline-offset:3px;border-radius:4px}
.skip{position:absolute;inset-inline-start:-9999px;top:8px;z-index:300;background:var(--mint);color:var(--void);padding:10px 18px;border-radius:980px;font-size:13px;font-weight:600}
.skip:focus{inset-inline-start:12px}

/* ============ ENHANCEMENTS ============ */

/* --- Mobile slide-down menu --- */
.mobile-menu{position:fixed;top:54px;inset-inline:0;background:rgba(4,7,12,.97);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);border-bottom:1px solid var(--line);transform:translateY(-12px);opacity:0;visibility:hidden;transition:.28s cubic-bezier(.2,.7,.2,1);z-index:190;padding:18px 0 26px}
.mobile-menu.open{transform:none;opacity:1;visibility:visible}
.mobile-menu a{display:block;padding:14px 28px;font-size:16px;color:var(--text);border-bottom:1px solid var(--line);transition:.2s}
.mobile-menu a:last-child{border-bottom:none}
.mobile-menu a:active,.mobile-menu a:hover{background:var(--panel-2);color:var(--mint);padding-inline-start:34px}
.mobile-menu .mcta{margin:16px 28px 0;background:var(--mint);color:var(--void);text-align:center;border-radius:980px;padding:13px;font-weight:600}
.mobile-menu .mcta:hover{padding-inline-start:13px}
.menutoggle.active span:nth-child(1){transform:translateY(5.5px) rotate(45deg)}
.menutoggle.active span:nth-child(2){opacity:0}
.menutoggle.active span:nth-child(3){transform:translateY(-5.5px) rotate(-45deg)}

/* --- Countdown band --- */
.countdown{display:flex;justify-content:center;gap:18px;margin:38px auto 0;flex-wrap:wrap}
.cd-unit{display:flex;flex-direction:column;align-items:center;min-width:64px}
.cd-num{font-family:var(--mono);font-size:clamp(28px,5vw,40px);font-weight:700;color:var(--mint);letter-spacing:-.02em;line-height:1;font-variant-numeric:tabular-nums}
.cd-lab{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--faint);margin-top:8px}
.cd-sep{font-size:clamp(24px,4vw,34px);color:var(--line-2);align-self:flex-start;margin-top:2px}
.cd-tag{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--mint);text-align:center;margin-bottom:18px}
.cd-wrap{margin-top:46px}

/* --- PCCS motion: living mint accent, gradient drift, hover lifts --- */
@keyframes mintdrift{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
.gradient-text{background:linear-gradient(100deg,var(--mint),var(--cold),var(--mint));background-size:220% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:mintdrift 6s ease-in-out infinite}
@media(prefers-reduced-motion:reduce){.gradient-text{animation:none}}
@keyframes glowpulse{0%,100%{box-shadow:0 0 0 rgba(94,234,212,0)}50%{box-shadow:0 0 30px rgba(94,234,212,.18)}}
.pillar,.model-item,.card,.ftier,.step{transition:transform .3s cubic-bezier(.2,.7,.2,1),background .3s,border-color .3s,box-shadow .3s}
.pillar:hover,.step:hover{transform:translateY(-4px)}
.hero-emblem{animation:rise .8s .05s forwards,glowpulse 4s 1s ease-in-out infinite}
/* subtle scroll-driven accent line under section eyebrows */
.sec-eyebrow,.eyebrow{position:relative}
/* hero washes: images were crushed near-invisible — let them breathe.
   No !important opacity here; per-page inline opacity now governs and is set
   high enough (.62) for the photo to read while text stays legible. */
.hero-bg,.phero-bg{opacity:.62}

/* --- legal/long-form pages --- */
.legal{max-width:760px;margin:0 auto;padding:130px 0 80px}
.legal h1{font-size:clamp(32px,5vw,46px);font-weight:700;letter-spacing:-.03em;margin-bottom:14px}
.legal .updated{font-family:var(--mono);font-size:12px;color:var(--faint);letter-spacing:.06em;margin-bottom:44px}
.legal h2{font-size:22px;font-weight:600;letter-spacing:-.015em;margin:38px 0 12px;color:var(--text)}
.legal p,.legal li{font-size:15.5px;line-height:1.7;color:var(--muted);margin-bottom:14px}
.legal ul{padding-inline-start:22px;margin-bottom:14px}
.legal li{margin-bottom:8px}
.legal strong{color:var(--text);font-weight:600}
.legal a{color:var(--mint);text-decoration:underline;text-underline-offset:2px}

/* --- beta / coming-soon page --- */
.beta-hero{text-align:center;padding:150px 0 60px;position:relative;overflow:hidden}
.beta-badge{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--mint);border:1px solid var(--mint-dim);border-radius:980px;padding:7px 16px;margin-bottom:26px}
.beta-badge .dot{width:7px;height:7px;border-radius:50%;background:var(--mint);animation:glowpulse 2s infinite}

/* ============ SALES PSYCHOLOGY LAYER ============ */
/* Hero feature — Ghost Mode / PQ get the spotlight */
.hero-feature{display:grid;grid-template-columns:1.1fr 1fr;gap:0;background:var(--panel);border:1px solid var(--line-2);border-radius:var(--r);overflow:hidden;margin-top:50px;position:relative}
.hero-feature::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 60% 80% at 18% 50%,rgba(94,234,212,.08),transparent 60%);pointer-events:none}
.hf-text{padding:48px 44px;position:relative;z-index:1}
.hf-badge{display:inline-flex;align-items:center;gap:7px;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--mint);border:1px solid var(--mint-dim);border-radius:980px;padding:5px 13px;margin-bottom:20px}
.hf-text h3{font-size:clamp(26px,3.6vw,36px);font-weight:700;letter-spacing:-.025em;line-height:1.1;margin-bottom:16px}
.hf-text p{font-size:16px;color:var(--muted);line-height:1.6;max-width:420px;margin-bottom:24px}
.hf-points{display:flex;flex-direction:column;gap:12px}
.hf-points span{display:flex;gap:11px;align-items:flex-start;font-size:14.5px;color:var(--text)}
.hf-points svg{flex:none;width:17px;height:17px;stroke:var(--mint);fill:none;stroke-width:2;margin-top:1px}
.hf-visual{position:relative;background:linear-gradient(145deg,var(--panel-2),var(--void));display:flex;align-items:center;justify-content:center;overflow:hidden;min-height:300px}
.hf-visual svg.ghost{width:44%;height:44%;stroke:var(--mint);fill:none;stroke-width:1;opacity:.9;filter:drop-shadow(0 0 24px rgba(94,234,212,.3))}
@keyframes ghostfloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
.hf-visual svg.ghost{animation:ghostfloat 4s ease-in-out infinite}
@media(prefers-reduced-motion:reduce){.hf-visual svg.ghost{animation:none}}
@media(max-width:760px){.hero-feature{grid-template-columns:1fr}.hf-visual{min-height:200px;order:-1}.hf-text{padding:36px 28px}}

/* Secondary pillars — smaller, supporting role */
.subpillars{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;margin-top:16px}
.subpillar{background:var(--panel);padding:26px 22px;transition:background .3s}
.subpillar:hover{background:var(--panel-2)}
.subpillar .spi{width:28px;height:28px;margin-bottom:13px}
.subpillar .spi svg{width:18px;height:18px;stroke:var(--mint);fill:none;stroke-width:1.6}
.subpillar h4{font-size:15px;font-weight:600;margin-bottom:6px;letter-spacing:-.01em}
.subpillar p{font-size:13px;color:var(--muted);line-height:1.5}
@media(max-width:760px){.subpillars{grid-template-columns:1fr 1fr}}
@media(max-width:440px){.subpillars{grid-template-columns:1fr}}

/* Pricing — anchored, with clear VPN price + founding urgency band */
.amt.vpn-price{font-size:46px;line-height:1.05}
.amt.vpn-price .per{font-size:15px;color:var(--muted);font-weight:400}
.vpn-price .from{font-size:14px;color:var(--muted);font-weight:400;letter-spacing:.02em;display:block;margin-bottom:-2px;text-transform:lowercase}
.founding-band{background:linear-gradient(180deg,rgba(94,234,212,.06),var(--panel));border:1px solid var(--mint-dim);border-radius:var(--r);padding:32px 34px;margin-top:20px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.fb-left{flex:1;min-width:260px}
.fb-left .fb-tag{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--mint);margin-bottom:10px}
.fb-left h3{font-size:22px;font-weight:700;letter-spacing:-.02em;margin-bottom:6px}
.fb-left p{font-size:14px;color:var(--muted);line-height:1.5}
.fb-cd{display:flex;gap:14px;align-items:center}
.fb-cd .fb-num{font-family:var(--mono);font-size:24px;font-weight:700;color:var(--mint);text-align:center;line-height:1}
.fb-cd .fb-num small{display:block;font-size:9px;color:var(--faint);letter-spacing:.1em;margin-top:4px;font-weight:400}
.spots-left{font-family:var(--mono);font-size:12px;color:var(--mint);margin-top:6px}

/* ============ LEAD CAPTURE FORM ============ */
.joinform{display:flex;flex-direction:column;gap:12px;max-width:420px;margin:28px auto 0}
.joinform input{width:100%;background:var(--input,#161B22);border:1px solid var(--line-2);border-radius:12px;padding:15px 18px;color:var(--text);font-size:15px;font-family:inherit;transition:border-color .2s}
.joinform input:focus{outline:none;border-color:var(--mint)}
.joinform input::placeholder{color:var(--faint)}
.joinform button{background:var(--mint);color:var(--void);border:none;border-radius:980px;padding:15px;font-size:15px;font-weight:600;font-family:inherit;cursor:pointer;transition:transform .2s,box-shadow .2s;margin-top:4px}
.joinform button:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(94,234,212,.25)}
.joinform button:disabled{opacity:.6;cursor:default;transform:none}
.wmsg{max-width:420px;margin:18px auto 0;padding:0;font-size:15px;line-height:1.55;text-align:center}
.wmsg.ok{color:var(--mint);background:rgba(94,234,212,.08);border:1px solid var(--mint-dim);border-radius:12px;padding:18px 22px}
.wmsg.err{color:#ff8a8a}
.wnote{font-size:13px;color:var(--faint);text-align:center;margin-top:16px}

/* beta download row */
.beta-dl{display:flex;flex-direction:column;align-items:center;gap:14px;margin-top:38px}
.beta-dl .dlbtn{background:var(--panel-2);border:1px solid var(--mint-dim);color:var(--mint);border-radius:980px;padding:14px 28px;font-weight:600;font-size:15px;display:inline-flex;align-items:center;gap:9px;transition:.2s}
.beta-dl .dlbtn:hover{background:rgba(94,234,212,.08);transform:translateY(-2px)}
.beta-dl .dlnote{font-family:var(--mono);font-size:12px;color:var(--faint)}

/* ============ SECONDARY SIGNATURE FEATURES (VPN + Crypto) ============ */
.dual-feature{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}
.dfeat{background:var(--panel);border:1px solid var(--line-2);border-radius:var(--r);padding:34px 32px;position:relative;overflow:hidden;transition:transform .3s,border-color .3s}
.dfeat:hover{transform:translateY(-4px);border-color:var(--mint-dim)}
.dfeat::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 70% 60% at 80% 0%,rgba(94,234,212,.06),transparent 60%);pointer-events:none}
.dfeat .df-badge{display:inline-flex;align-items:center;gap:7px;font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--mint);border:1px solid var(--mint-dim);border-radius:980px;padding:5px 12px;margin-bottom:18px}
.dfeat h3{font-size:23px;font-weight:700;letter-spacing:-.02em;margin-bottom:10px}
.dfeat p{font-size:14.5px;color:var(--muted);line-height:1.6;margin-bottom:18px}
.dfeat .df-link{font-family:var(--mono);font-size:13px;color:var(--mint);font-weight:600;display:inline-flex;align-items:center;gap:6px;transition:gap .2s}
.dfeat .df-link:hover{gap:11px}
.dfeat .df-icon{width:34px;height:34px;margin-bottom:16px}
.dfeat .df-icon svg{width:28px;height:28px;stroke:var(--mint);fill:none;stroke-width:1.6}
@media(max-width:760px){.dual-feature{grid-template-columns:1fr}}

/* ============ V6 — TRI-FEATURE (VPN / Crypto / AI) + PRICE TEASER ============ */
.hf-dot{width:6px;height:6px;border-radius:50%;background:var(--mint);display:inline-block}
.tri-feature{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:16px}
.tfeat{background:var(--panel);border:1px solid var(--line-2);border-radius:var(--r);padding:32px 28px;position:relative;overflow:hidden;transition:transform .3s,border-color .3s}
.tfeat:hover{transform:translateY(-5px);border-color:var(--mint-dim)}
.tfeat::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 70% 55% at 80% 0%,rgba(94,234,212,.07),transparent 60%);pointer-events:none}
.tf-icon{width:36px;height:36px;margin-bottom:18px}
.tf-icon svg{width:30px;height:30px;stroke:var(--mint);fill:none;stroke-width:1.6}
.tf-badge{display:inline-block;font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--mint);border:1px solid var(--mint-dim);border-radius:980px;padding:5px 12px;margin-bottom:16px}
.tfeat h3{font-size:21px;font-weight:700;letter-spacing:-.02em;line-height:1.15;margin-bottom:11px}
.tfeat p{font-size:14px;color:var(--muted);line-height:1.6;margin-bottom:18px}
.tf-link{font-family:var(--mono);font-size:12.5px;color:var(--mint);font-weight:600;display:inline-flex;align-items:center;gap:6px;transition:gap .2s}
.tf-link:hover{gap:11px}
@media(max-width:900px){.tri-feature{grid-template-columns:1fr}}

.price-teaser{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:14px}
.pt-card{background:var(--panel);border:1px solid var(--line-2);border-radius:var(--r);padding:34px 30px;transition:transform .3s,border-color .3s}
.pt-card:hover{transform:translateY(-4px)}
.pt-card.feature{border-color:var(--mint-dim);background:linear-gradient(180deg,rgba(94,234,212,.05),var(--panel))}
.pt-amt{font-size:44px;font-weight:700;letter-spacing:-.03em;line-height:1;margin-bottom:8px}
.pt-from{font-size:15px;color:var(--muted);font-weight:400;margin-inline-end:4px}
.pt-tag{font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--mint);margin-bottom:14px}
.pt-card p{font-size:13.5px;color:var(--muted);line-height:1.6}
@media(max-width:900px){.price-teaser{grid-template-columns:1fr}}

.bigclose{border-top:1px solid var(--line);padding:90px 0}
.close-emblem{margin:0 auto 26px;display:block;filter:drop-shadow(0 0 24px rgba(94,234,212,.25))}

/* ============ V7 — LOGO-DERIVED BRAND ICONS + MARKS ============ */
/* custom emblem-derived inline icons (ninja-mask, shield, shuriken, a-star) */
.ni{stroke:var(--mint);fill:none;stroke-linejoin:round;stroke-linecap:round}
/* shuriken section divider — the throwing-star accent from the emblem */
.shuriken-divide{display:flex;align-items:center;justify-content:center;gap:18px;margin:0 auto;max-width:var(--maxw);padding:8px 28px}
.shuriken-divide::before,.shuriken-divide::after{content:"";height:1px;flex:1;background:linear-gradient(90deg,transparent,var(--line-2),transparent)}
.shuriken-divide svg{width:26px;height:26px;stroke:var(--mint-dim);fill:none;stroke-width:1.4;opacity:.7;animation:shspin 18s linear infinite}
@keyframes shspin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.shuriken-divide svg{animation:none}}
/* full brand lockup showcase (uses logo-lockup.webp) */
.brand-lockup{display:block;margin:0 auto 30px;width:auto;max-width:280px;height:auto;filter:drop-shadow(0 0 40px rgba(94,234,212,.18))}
@media(max-width:540px){.brand-lockup{max-width:220px}}
/* emblem watermark behind interior heroes — subtle logo presence */
.phero .hero-watermark{position:absolute;z-index:0;top:50%;inset-inline-end:-40px;transform:translateY(-50%);width:340px;height:340px;opacity:.05;pointer-events:none;filter:grayscale(.2)}
@media(max-width:760px){.phero .hero-watermark{width:220px;inset-inline-end:-70px}}

/* ============ V6 — HERO BASE (was missing, caused left-align break) ============ */
.hero{position:relative;min-height:88vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:120px 24px 80px;overflow:hidden}
/* homepage hero photographic background — image set inline per page so the
   relative asset path is correct from both root and /lang/ folders. */
.hero-bg{position:absolute;inset:0;z-index:0;opacity:.62;filter:grayscale(.12) saturate(1.05) contrast(1.03)}
.hero-bg-fade{position:absolute;inset:0;z-index:0;background:radial-gradient(ellipse 95% 85% at 50% 40%,transparent 0,rgba(4,7,12,.30) 58%,var(--void) 92%),linear-gradient(180deg,rgba(4,7,12,.28),rgba(4,7,12,.66))}
.hero .inner{position:relative;z-index:2;max-width:820px;margin:0 auto;display:flex;flex-direction:column;align-items:center}
.hero .eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--mint);margin-bottom:24px}
.hero h1{font-size:clamp(40px,6.4vw,72px);font-weight:700;letter-spacing:-.035em;line-height:1.04;margin-bottom:24px}
.hero .sub{font-size:clamp(16px,2.2vw,20px);color:var(--muted);line-height:1.55;max-width:600px;margin:0 auto 34px}
.hero .cta-row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.hero-emblem{width:92px;height:92px;margin:0 auto 26px;display:block}
.btn{display:inline-flex;align-items:center;gap:9px;border-radius:980px;padding:15px 28px;font-size:15px;font-weight:600;font-family:inherit;cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s;text-decoration:none}
.btn-primary{background:var(--mint);color:var(--void);border:none}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(94,234,212,.28)}
.btn-ghost{background:transparent;color:var(--text);border:1px solid var(--line-2)}
.btn-ghost:hover{border-color:var(--mint);color:var(--mint);transform:translateY(-2px)}
.btn .arrow{transition:transform .2s}
.btn:hover .arrow{transform:translateX(3px)}
.hero h1 .soft{display:block}
/* section base spacing */
#why,#model{padding:90px 0}
.sec-eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--mint);margin-bottom:14px}
#why>.wrap>.reveal:first-child,#model>.wrap>.reveal:first-child{text-align:center;max-width:680px;margin:0 auto 50px}
#why h2,#model h2{font-size:clamp(30px,4.5vw,44px);font-weight:700;letter-spacing:-.03em;line-height:1.1;margin-bottom:16px}
.lead{font-size:clamp(16px,2.2vw,19px);color:var(--muted);line-height:1.55}
.bigclose h2{font-size:clamp(30px,4.5vw,46px);font-weight:700;letter-spacing:-.03em;line-height:1.12}

/* ============================================================
   V8 — APPLE HIG PASS (Part C) — append-only, PCCS
   Adds: spacing scale · shadow/elevation tokens ·
         44pt touch targets · iOS safe-area insets.
   Nothing above is overridden destructively; this block
   layers on top so the V8 diff stays clean and reversible.
   ============================================================ */
:root{
  /* 8pt spacing scale (HIG rhythm) */
  --sp-1:8px; --sp-2:16px; --sp-3:24px; --sp-4:32px;
  --sp-6:48px; --sp-8:64px; --sp-10:80px; --sp-12:96px;
  /* elevation / shadow tokens (was inline-repeated) */
  --shadow-1:0 2px 8px rgba(0,0,0,.28);
  --shadow-2:0 8px 24px rgba(0,0,0,.40);
  --shadow-3:0 16px 50px rgba(0,0,0,.55);
  --glow-mint:0 8px 28px rgba(94,234,212,.28);
  /* min touch target (HIG 44pt) */
  --tap:44px;
  /* iOS safe-area shortcuts */
  --safe-t:env(safe-area-inset-top,0px);
  --safe-b:env(safe-area-inset-bottom,0px);
  --safe-l:env(safe-area-inset-left,0px);
  --safe-r:env(safe-area-inset-right,0px);
}

/* ---- iOS safe-area insets (notch / home-bar) ---- */
nav .wrap{padding-top:var(--safe-t)}
nav{height:calc(54px + var(--safe-t))}
.wrap{padding-inline:max(28px,calc(28px + var(--safe-l))) max(28px,calc(28px + var(--safe-r)))}
.mobile-menu{top:calc(54px + var(--safe-t));padding-bottom:calc(26px + var(--safe-b))}
footer{padding-bottom:calc(44px + var(--safe-b))}
.hero{padding-bottom:calc(80px + var(--safe-b))}

/* ---- 44pt touch targets (expand tap area, keep visual compact) ---- */
/* nav links: pad block to reach 44px without changing the 54px bar look */
.navlinks a{display:inline-flex;align-items:center;min-height:var(--tap);padding-block:0}
/* lang button + nav CTA: pill stays slim, tap area grows via min-height on hit box */
.langbtn,.navcta{min-height:36px}
.langbtn::after,.navcta::after{content:"";position:absolute;inset:50% 0 auto;height:var(--tap);transform:translateY(-50%);left:0;right:0}
.langbtn,.navcta{position:relative}
/* lang menu rows + footer links: full 44px rows */
.langmenu a{min-height:var(--tap);box-sizing:border-box}
.foot-col a{display:flex;align-items:center;min-height:var(--tap);margin-bottom:2px}
.foot-bottom a{display:inline-flex;align-items:center;min-height:var(--tap)}
/* menu toggle: ensure full 44px hit area */
.menutoggle{min-width:var(--tap);min-height:var(--tap);align-items:center;justify-content:center}
/* primary buttons already ~48px tall via padding — leave as-is */

/* ---- footer links: tighten visual rhythm after min-height bump ---- */
.foot-col a{line-height:1.2}

/* ============================================================
   V8 — C2: NAV BRAND WRAP FIX (PCCS polish)
   Keep the brand on one line; scale down then drop the
   wordmark on narrow phones (emblem alone is the mark).
   ============================================================ */
.brand{white-space:nowrap;flex:none}
.brand img{flex:none}
/* tighten the competing nav row on phones */
@media(max-width:520px){
  .brand{font-size:14px;gap:7px}
  .nav-right{gap:9px}
  .navcta{padding-inline:13px}
  .langbtn{padding-inline:9px}
}
/* narrow phones (≤400px): the wordmark + full CTA + lang pill
   can't share one 54px row without crowding. The emblem IS the
   brand mark, so below 400px we show emblem-only (Apple-style)
   and free the row. Wordmark returns ≥401px. CSS-only: zero the
   brand font (hides bare text node) but keep the emblem img sized. */
@media(max-width:400px){
  .brand{font-size:0;gap:0}
  .brand img{width:24px;height:24px}
  /* keep the language switcher visible — it's core nav for a 10-language
     site, and once the wordmark collapses there is room for it. */
  .navcta{padding-inline:14px}
  .nav-right{gap:8px}
}

/* ============================================================
   V8 — PART D: SPACING RHYTHM + BETA H1 (PCCS, evidence-based)
   Audit found two real issues (get.html's 28px h2 was
   intentional and left alone):
   1. Section vertical rhythm was inconsistent (90/90, 150/70,
      20/120, 10/120, 110/110, 120/120) and too tall on phones.
      → one consistent scale: mobile ~64px, desktop ~96-112px.
   2. .beta-hero h1 had NO size rule (fell to ~32px default).
      → give it the same hero clamp as other pages.
   Append-only; --sp tokens from Part C.
   ============================================================ */

/* ---- 1. Consistent section rhythm (mobile-first) ---- */
/* base content sections */
section{padding-block:var(--sp-8)}              /* 64px mobile */
#why,#model{padding:var(--sp-8) 0}              /* was 90 */
.bigclose{padding:var(--sp-8) 0}                /* was 90 */
/* interior page heroes: account for fixed nav, balanced top/bottom */
.phero{padding:calc(var(--sp-12) + 30px) 0 var(--sp-6)}   /* ~126/48 */
.beta-hero{padding:calc(var(--sp-12) + 30px) 0 var(--sp-6)}
.legal{padding:calc(var(--sp-12) + 18px) 0 var(--sp-8)}   /* ~114/64 */
/* homepage hero keeps its min-height; just normalize bottom */
.hero{padding-block:var(--sp-12) var(--sp-8)}   /* 96/64 */

/* scale up on larger screens (desktop rhythm) */
@media(min-width:760px){
  section{padding-block:var(--sp-12)}           /* 96px */
  #why,#model{padding:var(--sp-12) 0}
  .bigclose{padding:var(--sp-12) 0}
  .phero{padding:calc(var(--sp-12) + 54px) 0 var(--sp-10)}  /* 150/80 */
  .beta-hero{padding:calc(var(--sp-12) + 54px) 0 var(--sp-10)}
  .legal{padding:calc(var(--sp-12) + 34px) 0 var(--sp-10)}  /* 130/80 */
}

/* ---- 2. beta-hero h1 scaling (was unstyled → 32px default) ---- */
.beta-hero h1{font-size:clamp(38px,7vw,72px);font-weight:700;letter-spacing:-.035em;line-height:1.03;margin-bottom:22px;text-wrap:balance}
.beta-hero h1 .soft{color:var(--faint)}
