/* =========================================================
   Kule — marketing site (bilingual EN / FA)
   ========================================================= */
:root{
  --blue:#0B63EB;
  --blue-2:#1A86FA;
  --ink:#0A0A0A;
  --muted:#6B6B70;
  --surface:#F4F4F5;
  --white:#FFFFFF;
  --line:#E6E6E9;
  --night:#000000;
  --night-2:#1C1C1E;
  --caution:#F4D03F;
  --caution-ink:#111111;
  --stripes:repeating-linear-gradient(-45deg,var(--caution) 0 10px,var(--caution-ink) 10px 20px);
  --radius-xl:36px;
  --radius-lg:28px;
  --ease:cubic-bezier(.2,.7,.2,1);
  --font-en:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,"Vazirmatn",sans-serif;
  --font-fa:"Vazirmatn","Inter",system-ui,-apple-system,"Segoe UI",Tahoma,sans-serif;
  --font:var(--font-en);
  --lh:1.55;
  --head-tracking:-.03em;
  --head-lh:1.16;
  --header-h:64px;
}
html[lang="fa"]{--font:var(--font-fa);--lh:1.75;--head-tracking:-.005em;--head-lh:1.45}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}
body{margin:0;font-family:var(--font);color:var(--ink);background:var(--white);line-height:var(--lh);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:hidden}
img,video,svg{display:block;max-width:100%}
img{height:auto}
button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
a{color:inherit}
h1,h2,h3,p{margin:0}
ul{list-style:none;margin:0;padding:0}

/* No blue mobile tap / selection flash on interactive controls */
html,button,a,[data-soon],summary,label{-webkit-tap-highlight-color:transparent}
button,a,[data-soon],.store-pill,.faq__q,.card,.mpill,.bud{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
button:focus,a:focus{outline:none}
:focus-visible{outline:2px solid var(--ink);outline-offset:3px;border-radius:12px}
button:focus-visible,a:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.privacy :focus-visible,.lab :focus-visible{outline-color:#fff}
::selection{background:rgba(10,10,10,.12);color:inherit}

.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip-link{position:absolute;inset-inline-start:16px;top:-60px;z-index:100;background:var(--ink);color:#fff;padding:10px 16px;border-radius:999px;text-decoration:none;transition:top .2s}
.skip-link:focus{top:12px}
.container{width:min(1120px,100% - 48px);margin-inline:auto}
.container--narrow{width:min(840px,100% - 40px)}
.eyebrow{color:var(--blue-2);font-weight:500;font-size:16px;letter-spacing:-.01em;margin-bottom:12px}
html[lang="fa"] .eyebrow{letter-spacing:0}
.eyebrow--light{color:rgba(255,255,255,.62)}

/* ---------- Caution tape primitives ---------- */
.tape-chip{display:inline-flex;align-items:center;gap:4px;font-size:10.5px;font-weight:700;letter-spacing:0;line-height:1;color:var(--caution-ink);padding:4px 7px 4px;border-radius:999px;background:var(--caution);box-shadow:inset 0 0 0 1.5px var(--caution-ink);white-space:nowrap;vertical-align:middle}
.tape-chip::before{content:"";width:11px;height:7px;border-radius:2px;background:repeating-linear-gradient(-45deg,var(--caution-ink) 0 2px,var(--caution) 2px 4px)}

.cta-pill{display:inline-flex;align-items:stretch;border-radius:999px;overflow:hidden;background:var(--ink);color:#fff;font-weight:600;font-size:17px;letter-spacing:-.01em;box-shadow:0 6px 18px rgba(0,0,0,.14);transition:transform .25s var(--ease),box-shadow .25s var(--ease)}
.cta-pill:hover{transform:translateY(-1px);box-shadow:0 10px 26px rgba(0,0,0,.2)}
.cta-pill:active{transform:scale(.98)}
.cta-pill__label{padding:14px 26px 15px;display:flex;align-items:center}
.cta-pill__tape{display:flex;align-items:center;padding:0 12px;background:var(--stripes);background-size:28px 28px;animation:tape-roll 1.6s linear infinite}
.cta-pill__tape span{background:var(--caution);color:var(--caution-ink);font-weight:700;font-size:12px;letter-spacing:0;line-height:1;padding:6px 10px;border-radius:999px;box-shadow:0 0 0 2px var(--caution-ink)}
.cta-pill--light{background:#fff;color:var(--ink)}
@keyframes tape-roll{to{background-position:28px 0}}
.ghost-pill{display:inline-flex;align-items:center;gap:10px;border-radius:999px;padding:12px 20px;color:#fff;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.5);font-weight:600;transition:background .2s}
.ghost-pill:hover{background:rgba(255,255,255,.08)}

/* =========================================================
   Header — transparent over hero, frosted floating pill on scroll
   ========================================================= */
.site-header{position:fixed;top:0;inset-inline:0;z-index:40;padding:0;transition:padding .45s var(--ease)}
.site-header__inner{position:relative;margin-inline:auto;width:100%;height:var(--header-h);display:flex;align-items:center;gap:12px;padding-inline:20px;border-radius:0;border:1px solid transparent;background:rgba(255,255,255,0);
  transition:background .4s var(--ease),border-color .4s var(--ease),box-shadow .4s var(--ease),border-radius .45s var(--ease),max-width .45s var(--ease),height .45s var(--ease),padding .45s var(--ease)}
.site-header.is-stuck{padding:10px 12px 0}
.site-header.is-stuck .site-header__inner,.site-header.is-open .site-header__inner{max-width:1080px;height:56px;border-radius:999px;padding-inline:20px 10px;background:rgba(255,255,255,.72);border-color:rgba(0,0,0,.07);
  -webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);box-shadow:0 8px 30px rgba(15,20,30,.08),0 1px 0 rgba(255,255,255,.7) inset}
.brand{display:flex;align-items:center;margin-inline-end:auto}
.brand img{height:30px;width:auto}
.site-nav{display:none;align-items:center;gap:2px}
.nav-link{display:inline-flex;align-items:center;gap:6px;font-size:15px;font-weight:500;letter-spacing:-.01em;text-decoration:none;padding:8px 14px;border-radius:999px;transition:background .2s}
.nav-link:hover{background:rgba(0,0,0,.05)}
.header-actions{display:flex;align-items:center;gap:4px}
.lang{position:relative}
.lang__btn{display:inline-flex;align-items:center;gap:4px;height:40px;padding:0 10px;border-radius:999px;font-size:16px;font-weight:600;letter-spacing:0;font-family:var(--font-en);transition:background .2s}
.lang__btn:hover{background:rgba(0,0,0,.05)}
.lang__btn svg{width:18px;height:18px;transition:transform .25s var(--ease)}
.lang__btn[aria-expanded="true"] svg{transform:rotate(180deg)}
.lang__menu{position:absolute;top:calc(100% + 10px);inset-inline-end:-8px;min-width:170px;padding:6px;border-radius:18px;background:rgba(255,255,255,.97);border:1px solid rgba(0,0,0,.07);box-shadow:0 14px 40px rgba(15,20,30,.14);transform-origin:top;animation:pop .22s var(--ease)}
.lang__menu[hidden]{display:none}
.lang__menu button{width:100%;display:flex;align-items:center;gap:14px;padding:10px 12px;border-radius:12px;font-size:15px;text-align:start;color:#55555a;transition:background .2s}
.lang__menu button b{font-family:var(--font-en);font-weight:600;width:24px;color:var(--ink)}
.lang__menu button span{font-weight:500}
.lang__menu button span[lang="fa"]{font-family:var(--font-fa)}
.lang__menu button:hover{background:rgba(0,0,0,.04)}
.lang__menu button[aria-checked="true"]{background:rgba(0,0,0,.07);color:var(--ink)}
@keyframes pop{from{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:none}}

.burger{position:relative;width:44px;height:44px;border-radius:999px;display:grid;place-items:center;transition:background .2s}
.burger:hover{background:rgba(0,0,0,.05)}
.burger span{position:absolute;left:12px;right:12px;height:2px;border-radius:2px;background:var(--ink);transition:transform .3s var(--ease)}
.burger span:nth-child(1){transform:translateY(-4px)}
.burger span:nth-child(2){transform:translateY(4px)}
.burger[aria-expanded="true"] span:nth-child(1){transform:rotate(45deg)}
.burger[aria-expanded="true"] span:nth-child(2){transform:rotate(-45deg)}

.menu-backdrop{position:fixed;inset:0;z-index:38;background:rgba(10,10,10,.12);animation:fade .25s ease}
.menu-backdrop[hidden]{display:none}
.mobile-menu{position:fixed;inset-inline:0;top:var(--menu-top,64px);z-index:39;background:#fff;border-radius:0 0 28px 28px;box-shadow:0 24px 40px rgba(15,20,30,.12);padding:8px 24px 18px;animation:drop .3s var(--ease)}
.mobile-menu[hidden]{display:none}
.mobile-menu li+li{border-top:1px solid var(--line)}
.mobile-menu a,.mobile-menu button{display:flex;align-items:center;gap:10px;width:100%;padding:18px 4px;font-size:20px;font-weight:500;letter-spacing:-.02em;text-decoration:none;text-align:start}
html[lang="fa"] .mobile-menu a,html[lang="fa"] .mobile-menu button{letter-spacing:0;font-size:19px}
@keyframes drop{from{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:none}}
@keyframes fade{from{opacity:0}}

@media (min-width:900px){
  .site-nav{display:flex}
  .burger{display:none}
  .mobile-menu,.menu-backdrop{display:none!important}
  .site-header__inner{padding-inline:32px}
}

/* =========================================================
   Hero
   ========================================================= */
.hero{position:relative;isolation:isolate}
.hero__media{position:relative;height:min(100svh,960px);min-height:600px;border-radius:0 0 var(--radius-xl) var(--radius-xl);overflow:hidden;background:#e9e3dc url("../assets/hero-poster.jpg") center 58%/cover}
.hero__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 58%}
.hero__veil{position:absolute;inset:0;background:
  radial-gradient(60% 42% at 50% 46%,rgba(255,250,244,.5),rgba(255,250,244,0) 70%),
  linear-gradient(180deg,rgba(236,242,250,.6) 0,rgba(236,242,250,0) 160px)}
.hero__copy{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:0 24px 6vh;pointer-events:none}
.hero__title{font-size:clamp(32px,4.6vw,60px);line-height:var(--head-lh);font-weight:700;letter-spacing:var(--head-tracking);text-wrap:balance;text-shadow:0 2px 30px rgba(255,255,255,.6)}
.hero__sub{margin-top:16px;font-size:clamp(16px,1.4vw,19px);font-weight:500;letter-spacing:-.01em;color:#2a2622;text-shadow:0 1px 16px rgba(255,255,255,.9)}
html[lang="fa"] .hero__sub{letter-spacing:0}
.hero__chevron{position:absolute;bottom:22px;left:50%;width:40px;height:40px;margin-left:-20px;display:grid;place-items:center;color:var(--ink);animation:nudge 2.4s var(--ease) infinite}
.hero__chevron svg{width:26px;height:26px}
@keyframes nudge{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}

/* =========================================================
   Intro + store pills
   ========================================================= */
.intro{padding:clamp(88px,11vw,140px) 0 40px;text-align:center;overflow:hidden}
.intro__title{font-size:clamp(32px,4vw,52px);line-height:var(--head-lh);font-weight:700;letter-spacing:var(--head-tracking);text-wrap:balance}
.intro__lead{max-width:30em;margin:20px auto 0;color:var(--muted);font-size:17px;line-height:1.6;letter-spacing:-.005em;text-wrap:pretty}
html[lang="fa"] .intro__lead{line-height:1.85;letter-spacing:0}

.stores{margin:36px auto 0;display:flex;flex-wrap:wrap;justify-content:center;gap:12px;max-width:760px}
.store-pill{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;height:50px;padding:0 22px 0 18px;border-radius:999px;background:#fff;border:1px solid var(--line);box-shadow:0 1px 2px rgba(10,10,10,.04),0 4px 14px rgba(10,10,10,.04);overflow:hidden;font-size:16px;font-weight:600;letter-spacing:-.015em;color:var(--ink);white-space:nowrap;transition:transform .2s var(--ease),box-shadow .2s var(--ease),background .2s}
html[lang="fa"] .store-pill{letter-spacing:0;padding:0 18px 0 22px;font-size:15.5px}
.store-pill:hover{box-shadow:0 2px 4px rgba(10,10,10,.05),0 8px 22px rgba(10,10,10,.08)}
.store-pill:active{transform:scale(.97);background:#fafafa}
.store-pill__icon{width:22px;height:22px;flex:none;object-fit:contain}
.store-pill__label,.store-pill__icon{position:relative;top:-4px}
.store-pill__tape{position:absolute;inset-inline:-10px;bottom:4px;height:12px;transform:rotate(-2deg);background:var(--stripes);background-size:14px 14px;opacity:.95;display:flex;align-items:center;justify-content:center;border-block:1px solid var(--caution-ink);pointer-events:none}
.store-pill__tape span{background:var(--caution);color:var(--caution-ink);font-family:var(--font);font-size:8.5px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;line-height:1;padding:1.5px 6px;border-radius:3px;box-shadow:0 0 0 1px var(--caution-ink)}
html[lang="fa"] .store-pill__tape span{letter-spacing:0;font-size:9.5px;padding:0 6px 1px}
.stores li:nth-child(even) .store-pill__tape{transform:rotate(2deg)}
.stores__note{margin:18px auto 0;max-width:34em;color:var(--muted);font-size:14px;line-height:1.6}

/* =========================================================
   Buddies — floating characters with live eyes
   ========================================================= */
.bud{position:relative;aspect-ratio:var(--ar,441/554);pointer-events:none}
.bud__float{position:absolute;inset:0;transform-origin:50% 60%;animation:drift var(--dur,7s) ease-in-out infinite;animation-delay:var(--delay,0s);will-change:transform}
.bud__body{position:absolute;inset:0;width:100%;height:100%;filter:drop-shadow(0 22px 26px rgba(20,40,80,.16))}
.bud__eye{position:absolute;top:30.9%;width:15%;height:21.8%;transform:translate(calc(var(--lx,0) * 1%),calc(var(--ly,0) * 1%));transition:transform .16s cubic-bezier(.3,.8,.3,1)}
.bud__eye--l{left:25.9%}
.bud__eye--r{left:59%}
.bud__ball{position:absolute;inset:0;border-radius:50%;background:radial-gradient(70% 60% at 50% 38%,#2a2a2c 0,#0d0d0e 55%,#000 100%);box-shadow:inset 0 -3px 6px rgba(255,255,255,.08),0 1px 2px rgba(0,0,0,.25);transform-origin:50% 50%;transition:transform .06s ease-in}
.bud__ball::after{content:"";position:absolute;left:24%;top:14%;width:30%;height:22%;border-radius:50%;background:rgba(255,255,255,.95);transform:rotate(-18deg)}
.bud__ball::before{content:"";position:absolute;left:58%;top:62%;width:12%;height:9%;border-radius:50%;background:rgba(255,255,255,.5)}
.bud.is-blink .bud__ball{transform:scaleY(.06);transition-duration:.05s}
@keyframes drift{
  0%{transform:translate3d(0,0,0) rotate(calc(var(--r,4deg) * -1))}
  25%{transform:translate3d(calc(var(--sx,6px) * 1),-10px,0) rotate(calc(var(--r,4deg) * .2))}
  50%{transform:translate3d(0,-16px,0) rotate(var(--r,4deg))}
  75%{transform:translate3d(calc(var(--sx,6px) * -1),-6px,0) rotate(calc(var(--r,4deg) * -.3))}
  100%{transform:translate3d(0,0,0) rotate(calc(var(--r,4deg) * -1))}}

/* =========================================================
   Showcase
   ========================================================= */
.showcase{margin-top:clamp(56px,7vw,88px)}
.showcase__stage{position:relative;width:min(1000px,100% - 24px);margin-inline:auto;height:620px;direction:ltr}
.showcase .bud{position:absolute;z-index:2}
.bud--sc.bud--blue{width:170px;left:4%;top:-6px;--dur:7.4s;--delay:-1s;--r:-5deg;filter:blur(.8px)}
.bud--sc.bud--green{width:200px;left:17%;top:150px;--dur:8.2s;--delay:-3s;--r:4deg}
.bud--sc.bud--pink{width:160px;left:2%;top:330px;--dur:6.8s;--delay:-2s;--r:-3deg}
.bud--sc.bud--cream{width:205px;right:14%;top:190px;--dur:7.8s;--delay:-4s;--r:5deg}
.bud--sc.bud--yellow{width:150px;right:2%;top:24px;--dur:6.6s;--delay:-.5s;--r:6deg;filter:blur(.8px)}

.phone{position:absolute;left:50%;top:0;transform:translateX(-50%);width:300px;height:610px;margin:0;border-radius:46px;background:#fff;padding:9px;box-shadow:0 0 0 1px #e4e4e8,0 2px 0 #d9d9de,0 40px 80px -30px rgba(10,30,70,.35);z-index:3}
.phone__screen{position:relative;height:100%;border-radius:38px;overflow:hidden;background:#fff;display:flex;flex-direction:column;text-align:start;box-shadow:inset 0 0 0 1px #f0f0f2}
html[lang="fa"] .phone__screen{direction:rtl}
.phone__status{display:flex;align-items:center;justify-content:space-between;padding:12px 24px 0;font-size:13px;font-weight:600;direction:ltr;font-family:var(--font)}
.phone__island{width:84px;height:24px;border-radius:999px;background:#0a0a0a}
.phone__sig{display:flex;align-items:flex-end;gap:2px}
.phone__sig i{display:block;width:3px;background:#0a0a0a;border-radius:1px}
.phone__sig i:nth-child(1){height:5px}.phone__sig i:nth-child(2){height:8px}.phone__sig i:nth-child(3){height:11px}
.phone__sig b{display:block;width:20px;height:10px;border-radius:3px;margin-inline-start:5px;background:#0a0a0a}
.phone__bar{display:flex;justify-content:space-between;padding:12px 14px 0}
.phone__round{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#fff;box-shadow:0 1px 6px rgba(0,0,0,.1)}
.phone__round svg{width:17px;height:17px}
.phone__welcome{display:flex;flex-direction:column;align-items:center;text-align:center;padding:18px 18px 8px}
.phone__welcome img{width:70px;height:auto}
.phone__welcome strong{margin-top:8px;font-size:16px;font-weight:700;letter-spacing:-.02em}
html[lang="fa"] .phone__welcome strong{letter-spacing:0}
.phone__welcome span{font-size:11.5px;color:var(--muted)}
.phone__chat{flex:1;display:flex;flex-direction:column;justify-content:flex-end;gap:8px;padding:8px 14px 10px}
.bubble{font-size:12.5px;line-height:1.5;padding:9px 13px;border-radius:18px;max-width:86%}
html[lang="fa"] .bubble{line-height:1.75}
.bubble--me{align-self:flex-end;background:linear-gradient(135deg,var(--blue-2),var(--blue));color:#fff;border-end-end-radius:6px}
.bubble--kule{align-self:flex-start;background:var(--surface);border-end-start-radius:6px}
.bubble--typing{align-self:flex-start;display:none;gap:4px;background:var(--surface);padding:12px 14px}
.bubble--typing i{width:6px;height:6px;border-radius:50%;background:#9a9aa0;animation:typing 1s infinite}
.bubble--typing i:nth-child(2){animation-delay:.15s}.bubble--typing i:nth-child(3){animation-delay:.3s}
@keyframes typing{0%,60%,100%{opacity:.35;transform:none}30%{opacity:1;transform:translateY(-3px)}}
/* sequential chat reveal (enabled by JS) */
.js .phone .bubble--me,.js .phone .bubble--kule{opacity:0;transform:translateY(14px) scale(.96);transform-origin:bottom;transition:opacity .45s var(--ease),transform .5s cubic-bezier(.2,1.3,.4,1)}
.js .phone .bubble--me{transform-origin:bottom right}
.js .phone .bubble--kule{transform-origin:bottom left}
.js .phone.is-typing .bubble--typing{display:flex;animation:pop .25s var(--ease)}
.js .phone.show-me .bubble--me,.js .phone.show-kule .bubble--kule{opacity:1;transform:none}
.phone__input{margin:0 10px 14px;display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:999px;background:#fff;box-shadow:0 0 0 1px #ececef,0 4px 14px rgba(0,0,0,.05);font-size:12px;color:#9a9a9f}
.phone__plus{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--surface);color:var(--ink);font-size:17px;line-height:1}
.phone__placeholder{flex:1}
.phone__send{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:#fff}
.phone__send svg{width:14px;height:14px}

/* Capability marquee */
.marquee{position:relative;margin:34px auto 0;width:min(760px,100%);overflow:hidden;direction:ltr;-webkit-mask-image:linear-gradient(90deg,transparent,#000 14%,#000 86%,transparent);mask-image:linear-gradient(90deg,transparent,#000 14%,#000 86%,transparent);padding:8px 0 24px}
.marquee__track{display:flex;gap:10px;width:max-content;animation:marquee 32s linear infinite}
.marquee:hover .marquee__track{animation-play-state:paused}
.mpill{white-space:nowrap;font-size:14.5px;font-weight:500;letter-spacing:-.01em;padding:8px 16px;border-radius:999px;background:var(--surface);color:#4a4a4f}
html[lang="fa"] .mpill{direction:rtl;letter-spacing:0}
@keyframes marquee{to{transform:translateX(-50%)}}

/* =========================================================
   Research teaser
   ========================================================= */
.lab{position:relative;margin-top:60px;padding:clamp(100px,12vw,170px) 0 clamp(90px,10vw,150px);color:#fff;overflow:hidden;isolation:isolate;background:#0b0b0d}
.lab__bg{position:absolute;inset:-80px;z-index:-1;background:url("../assets/hero-poster.jpg") center/cover;filter:blur(48px) saturate(1.2) brightness(.55);transform:scale(1.1)}
.lab__bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,99,235,.18),rgba(0,0,0,.25) 55%,#000 100%)}
.lab::before,.lab::after{content:"";position:absolute;inset-inline:0;z-index:0;pointer-events:none}
.lab::before{top:0;height:200px;background:linear-gradient(180deg,#fff,rgba(255,255,255,0))}
.lab::after{bottom:0;height:220px;background:linear-gradient(180deg,rgba(0,0,0,0),#000)}
.lab__grid{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,72px);align-items:center;width:min(980px,100% - 48px)}
.lab__frame{position:relative;aspect-ratio:4/5;max-width:380px;margin-inline:auto;border-radius:32px;overflow:hidden;-webkit-mask-image:radial-gradient(120% 95% at 50% 50%,#000 58%,transparent 80%);mask-image:radial-gradient(120% 95% at 50% 50%,#000 58%,transparent 80%)}
.lab__scene{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 30%}
.bud--lab{position:absolute;width:62%;left:19%;bottom:10%;--dur:6s;--r:-3deg}
.bud--lab .bud__body{filter:drop-shadow(0 0 2px rgba(255,255,255,.9)) drop-shadow(0 0 16px rgba(26,134,250,.85)) drop-shadow(0 22px 26px rgba(0,0,0,.35))}
.lab__title{font-size:clamp(28px,3vw,40px);line-height:var(--head-lh);font-weight:700;letter-spacing:var(--head-tracking)}
.lab__text{margin:18px 0 30px;color:rgba(255,255,255,.72);font-size:17px;max-width:26em}

/* =========================================================
   Privacy (dark)
   ========================================================= */
.privacy{background:var(--night);color:#fff;padding:clamp(70px,9vw,120px) 0 clamp(80px,9vw,120px);border-radius:0 0 var(--radius-xl) var(--radius-xl);position:relative;z-index:2}
.privacy__head{text-align:center}
.privacy__icon{display:inline-grid;place-items:center;width:64px;height:64px;margin-bottom:26px}
.privacy__icon svg{width:52px;height:52px;filter:drop-shadow(0 6px 24px rgba(26,134,250,.45))}
.privacy__title{font-size:clamp(30px,3.8vw,48px);line-height:var(--head-lh);font-weight:700;letter-spacing:var(--head-tracking);text-wrap:balance}
.privacy__text{margin:20px auto 0;max-width:32em;color:rgba(255,255,255,.62);font-size:17px}
.privacy__actions{margin-top:30px;display:flex;flex-wrap:wrap;gap:12px;justify-content:center}

.cards{margin-top:clamp(48px,6vw,64px);display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.card{position:relative;background:var(--night-2);border-radius:var(--radius-lg);padding:22px 22px 26px;min-height:300px;display:flex;flex-direction:column}
.card__art{flex:1;display:grid;place-items:center;padding:14px 0 22px}
.card__art svg{width:104px;height:104px;filter:drop-shadow(0 18px 22px rgba(0,0,0,.55))}
.card__kicker{font-size:13px;font-weight:500;color:rgba(255,255,255,.5)}
.card__title{margin-top:4px;font-size:17px;line-height:1.4;font-weight:600;letter-spacing:-.015em}
html[lang="fa"] .card__title{line-height:1.7;letter-spacing:0}
.card__soon{position:absolute;top:18px;inset-inline-start:18px}

.faq{margin-top:clamp(70px,9vw,110px)}
.faq__head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding-bottom:22px;border-bottom:1px solid rgba(255,255,255,.14)}
.faq__title{font-size:clamp(28px,3.2vw,40px);font-weight:700;line-height:var(--head-lh);letter-spacing:var(--head-tracking)}
.faq__all{display:inline-flex;align-items:center;gap:8px;font-weight:500;font-size:15px;white-space:nowrap;color:rgba(255,255,255,.85)}
.faq__item{border-bottom:1px solid rgba(255,255,255,.14)}
.faq__item h3{font-size:inherit;font-weight:inherit}
.faq__q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;text-align:start;padding:22px 0;font-size:18px;font-weight:500;letter-spacing:-.015em;border-radius:0}
html[lang="fa"] .faq__q{letter-spacing:0;font-weight:600;font-size:17px}
.faq__q svg{flex:none;width:22px;height:22px;color:rgba(255,255,255,.7);transition:transform .3s var(--ease)}
.faq__q[aria-expanded="true"] svg{transform:rotate(180deg)}
.faq__a{padding:0 0 24px;color:rgba(255,255,255,.66);font-size:16px;max-width:42em}
.faq__a a{color:#fff;font-weight:600;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.35)}
.faq__a a:hover{border-color:#fff}
.soon-block{position:relative;overflow:hidden;border-radius:16px;padding:18px 20px 60px;background:repeating-linear-gradient(-45deg,rgba(244,208,63,.07) 0 14px,transparent 14px 28px),#141416;box-shadow:inset 0 0 0 1px rgba(244,208,63,.25)}
.soon-block p{opacity:.85}
.soon-block__tape{position:absolute;inset-inline:-4%;bottom:14px;height:28px;transform:rotate(-1.5deg);background:var(--stripes);background-size:28px 28px;display:flex;align-items:center;justify-content:center;border-block:2px solid var(--caution-ink)}
.soon-block__tape span{background:var(--caution);color:var(--caution-ink);font-weight:700;font-size:12px;padding:4px 12px;border-radius:5px;box-shadow:0 0 0 2px var(--caution-ink)}

/* =========================================================
   Footer
   ========================================================= */
.footer{position:relative;margin-top:-40px;padding:clamp(130px,13vw,180px) 0 0;overflow:hidden;isolation:isolate;background:linear-gradient(180deg,#9fbfe3 0%,#c4d9f0 35%,#e4eefa 70%,#f6f2ee 100%)}
.footer__sky{position:absolute;inset:0;z-index:-1;pointer-events:none}
.footer__sky i{position:absolute;border-radius:50%;background:rgba(255,255,255,.75);filter:blur(36px)}
.footer__sky i:nth-child(1){width:520px;height:120px;top:14%;left:-6%}
.footer__sky i:nth-child(2){width:420px;height:90px;top:26%;right:4%;opacity:.8}
.footer__sky i:nth-child(3){width:300px;height:70px;top:8%;right:34%;opacity:.6}
.footer__sky i:nth-child(4){width:640px;height:160px;top:52%;left:24%;opacity:.55}
.footer__inner{text-align:center}
.footer__title{font-size:clamp(34px,4.4vw,56px);line-height:var(--head-lh);font-weight:700;letter-spacing:var(--head-tracking);margin-bottom:32px;text-wrap:balance}
.footer__meta{margin-top:clamp(64px,8vw,96px);display:flex;justify-content:space-between;align-items:flex-start;gap:32px;text-align:start;width:min(900px,100%);margin-inline:auto}
.footer__brand img{height:28px;width:auto}
.footer__brand p{margin-top:12px;font-size:16px;color:#1d1d1f;letter-spacing:-.01em}
html[lang="fa"] .footer__brand p{letter-spacing:0}
.footer__social{margin-top:16px;display:flex;align-items:center;gap:22px}
.footer__social a{display:grid;place-items:center;width:26px;height:26px;color:#000;transition:opacity .2s,transform .2s}
.footer__social a:hover{opacity:.65}
.footer__social svg,.footer__social img{width:22px;height:22px;object-fit:contain}
.footer__social li:first-child svg{width:20px;height:20px}
.footer__links{display:flex;gap:clamp(36px,6vw,64px)}
.footer__links ul{display:flex;flex-direction:column;gap:14px}
.footer__links a,.footer__links button{font-size:16px;letter-spacing:-.01em;text-decoration:none;color:#1d1d1f;display:inline-flex;align-items:center;gap:8px;text-align:start}
html[lang="fa"] .footer__links a,html[lang="fa"] .footer__links button{letter-spacing:0;font-size:15px}
.footer__links a:hover,.footer__links button:hover{opacity:.65}
.footer__links .tape-chip{font-size:9px;padding:3px 6px}
.footer__links .tape-chip::before{width:9px;height:6px}
.footer__parade{position:relative;margin-top:44px;height:clamp(150px,18vw,250px);display:flex;justify-content:center;align-items:flex-start;direction:ltr}
.bud--pa{width:clamp(130px,17vw,250px);margin-inline:-1.4vw;flex:none}
.bud--pa .bud__body{filter:drop-shadow(0 -6px 24px rgba(40,60,100,.12))}
.bud--pa.bud--green{margin-top:4%;--r:-5deg;--dur:7.2s;--delay:-2s}
.bud--pa.bud--pink{margin-top:1%;--r:4deg;--dur:6.4s;--delay:-4s}
.bud--pa.bud--blue{width:clamp(160px,21vw,310px);margin-top:-2%;z-index:2;--r:-2deg;--dur:8s;--delay:-1s}
.bud--pa.bud--cream{margin-top:2%;--r:-4deg;--dur:6.9s;--delay:-3s}
.bud--pa.bud--yellow{margin-top:5%;--r:6deg;--dur:7.6s;--delay:-5s}

/* Toast */
.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,200%);z-index:60;display:flex;align-items:stretch;overflow:hidden;border-radius:16px;background:var(--ink);color:#fff;box-shadow:0 18px 40px rgba(0,0,0,.28);transition:transform .45s var(--ease),visibility 0s .45s;max-width:calc(100% - 32px);visibility:hidden}
.toast.is-on{transform:translate(-50%,0);visibility:visible;transition:transform .45s var(--ease)}
.toast__stripe{width:16px;flex:none;background:var(--stripes)}
.toast__text{padding:12px 18px 13px;font-size:14.5px;font-weight:500}

/* =========================================================
   Responsive
   ========================================================= */
@media (max-width: 960px){
  .showcase__stage{height:600px}
  .bud--sc.bud--blue{width:130px;left:1%}
  .bud--sc.bud--green{width:155px;left:5%;top:200px}
  .bud--sc.bud--pink{width:125px;left:-2%;top:390px}
  .bud--sc.bud--cream{width:160px;right:3%;top:240px}
  .bud--sc.bud--yellow{width:115px;right:0}
}
@media (max-width: 820px){
  .cards{grid-template-columns:1fr;max-width:460px;margin-inline:auto}
  .card{min-height:0}
  .card__art{padding:6px 0 18px}
  .lab__grid{grid-template-columns:1fr;text-align:center}
  .lab__frame{max-width:300px}
  .lab__text{margin-inline:auto}
  .footer__meta{flex-direction:column;align-items:center;text-align:center;gap:40px}
  .footer__brand{display:flex;flex-direction:column;align-items:center}
  .footer__links{justify-content:center;text-align:start}
}
@media (max-width: 640px){
  :root{--header-h:60px}
  .site-header__inner{padding-inline:18px 8px}
  .site-header.is-stuck{padding:8px 10px 0}
  .site-header.is-stuck .site-header__inner,.site-header.is-open .site-header__inner{height:54px;padding-inline:16px 6px}
  .brand img{height:26px}
  .hero__media{height:88svh;min-height:560px;border-radius:0 0 30px 30px}
  .hero__copy{justify-content:flex-start;padding-top:118px}
  .hero__video{object-position:50% 50%}
  .hero__veil{background:linear-gradient(180deg,rgba(236,242,250,.75) 0,rgba(236,242,250,.35) 34%,rgba(236,242,250,0) 50%)}
  .hero__title{font-size:31px}
  .intro{padding-top:72px}
  .intro__title{font-size:30px}
  .hero__title br,.intro__title br,.footer__title br,.privacy__title br,.lab__title br{display:none}
  .intro__lead{font-size:16px}
  .stores{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-width:360px;margin-top:28px}
  .store-pill{width:100%;height:48px;padding:0 12px;gap:8px;font-size:15px}
  html[lang="fa"] .store-pill{padding:0 12px;font-size:14.5px}
  .store-pill__icon{width:20px;height:20px}
  .showcase__stage{height:560px}
  .phone{width:262px;height:540px;border-radius:42px}
  .phone__screen{border-radius:34px}
  .bud--sc.bud--blue{width:92px;left:-5%;top:10px}
  .bud--sc.bud--green{width:110px;left:-9%;top:220px}
  .bud--sc.bud--pink{width:96px;left:-3%;top:420px;z-index:4}
  .bud--sc.bud--cream{width:112px;right:-9%;top:300px;z-index:4}
  .bud--sc.bud--yellow{width:88px;right:-4%;top:60px}
  .mpill{font-size:13.5px;padding:7px 14px}
  .faq__head{flex-direction:column;align-items:flex-start}
  .faq__q{font-size:16.5px}
  .bud--pa{margin-inline:-3vw}
  .footer__links{gap:44px}
}

/* Reduced motion: static characters, poster instead of video */
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
  .hero__video{display:none}
  .bud__float{animation:none!important}
  .bud__eye{transform:none!important}
  .bud.is-blink .bud__ball{transform:none}
  .marquee__track{animation:none!important;flex-wrap:wrap;justify-content:center;width:auto}
  .js .phone .bubble--me,.js .phone .bubble--kule{opacity:1;transform:none}
}
html[lang="fa"] .bubble--me{align-self:flex-start;border-end-end-radius:18px;border-end-start-radius:6px}
html[lang="fa"] .bubble--kule,html[lang="fa"] .bubble--typing{align-self:flex-end;border-end-start-radius:18px;border-end-end-radius:6px}
