@layer reset, tokens, base, components, sections, utilities, motion;

@layer reset {
  *,*::before,*::after{box-sizing:border-box}
  html{scroll-behavior:smooth;text-size-adjust:100%}
  body,h1,h2,h3,p,figure,blockquote,dl,dd{margin:0}
  ul[role="list"],ol[role="list"]{list-style:none;margin:0;padding:0}
  body{min-height:100vh}
  img,picture{display:block;max-width:100%}
  button,input,textarea,select{font:inherit}
  a{color:inherit;text-decoration:none}
  button{border:0}
}

@layer tokens {
  :root{
    color-scheme:dark;
    --bg:#0b0d0f;
    --bg-2:#101315;
    --surface:#15191b;
    --surface-2:#1b2023;
    --surface-3:#23292c;
    --line:rgba(187,202,199,.17);
    --line-strong:rgba(67,222,212,.36);
    --text:#f2f4f3;
    --muted:#a9b4b1;
    --muted-2:#7f8c89;
    --teal:#43ded4;
    --teal-2:#00c2b8;
    --teal-ink:#062e2d;
    --violet:#b59af4;
    --coral:#ff9f96;
    --shadow:0 30px 90px rgba(0,0,0,.38);
    --radius-sm:14px;
    --radius-md:24px;
    --radius-lg:36px;
    --radius-xl:52px;
    --container:min(1680px,calc(100vw - 72px));
    --header-h:84px;
    --ease:cubic-bezier(.22,1,.36,1);
  }
}

@layer base {
  ::selection{background:rgba(67,222,212,.28);color:var(--text)}
  body{background:var(--bg);color:var(--text);font-family:Inter,"SF Pro Text","Segoe UI",system-ui,-apple-system,sans-serif;line-height:1.55;overflow-x:hidden}
  body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-5;background:radial-gradient(circle at 86% 6%,rgba(30,95,92,.26),transparent 27%),radial-gradient(circle at 7% 89%,rgba(76,37,130,.15),transparent 30%),linear-gradient(180deg,#0c0e10 0%,#0a0c0e 100%)}
  body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:9999;opacity:.055;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.65'/%3E%3C/svg%3E")}
  h1,h2,h3,.display{font-family:Sora,"SF Pro Display","Segoe UI",system-ui,sans-serif;letter-spacing:-.045em;line-height:1.03}
  h1{font-size:clamp(3.35rem,6.5vw,7rem);font-weight:730}
  h2{font-size:clamp(2.4rem,5vw,5.15rem);font-weight:700}
  h3{font-size:clamp(1.2rem,2.2vw,1.8rem);font-weight:650;letter-spacing:-.025em}
  p{color:var(--muted)}
  :focus-visible{outline:2px solid var(--teal);outline-offset:4px}
  main{overflow:clip}
  .container{width:var(--container);margin-inline:auto}
  .section{position:relative;padding:clamp(90px,11vw,170px) 0}
  .section-tight{padding:clamp(70px,8vw,120px) 0}
  .eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:.76rem;line-height:1;text-transform:uppercase;letter-spacing:.19em;font-weight:760;color:var(--teal)}
  .eyebrow::before{content:"";width:28px;height:1px;background:currentColor;box-shadow:0 0 20px currentColor}
  .section-head{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.55fr);gap:clamp(28px,6vw,100px);align-items:end;margin-bottom:clamp(42px,7vw,82px)}
  .section-head p{font-size:clamp(1rem,1.5vw,1.24rem);max-width:42rem}
  .accent{color:var(--teal)}
  .sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
}

@layer components {
  .site-header{position:fixed;inset:0 0 auto;z-index:100;height:var(--header-h);display:flex;align-items:center;transition:background .35s,border-color .35s,transform .35s;border-bottom:1px solid transparent}
  .site-header.is-scrolled{background:rgba(11,13,15,.82);border-color:var(--line);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
  .nav{width:var(--container);margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px}
  .brand{display:flex;align-items:center;gap:12px;font-family:Sora,system-ui;font-size:1.25rem;font-weight:750;letter-spacing:-.035em;white-space:nowrap}
  .brand img{width:42px;height:42px;border-radius:12px;box-shadow:0 0 26px rgba(67,222,212,.14)}
  .brand span span{color:var(--teal)}
  .nav-links{display:flex;align-items:center;gap:28px;color:#c7cecc;font-size:.91rem;font-weight:650}
  .nav-links a{position:relative;padding:10px 0;transition:color .25s}
  .nav-links a::after{content:"";position:absolute;left:0;right:100%;bottom:4px;height:1px;background:var(--teal);transition:right .35s var(--ease)}
  .nav-links a:hover{color:white}.nav-links a:hover::after{right:0}
  .nav-actions{display:flex;align-items:center;gap:10px}
  .lang-switch{display:flex;align-items:center;padding:4px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.025)}
  .lang-switch a{display:grid;place-items:center;width:42px;height:34px;border-radius:999px;font-size:.75rem;font-weight:800;color:var(--muted-2)}
  .lang-switch a[aria-current="page"]{background:var(--surface-3);color:var(--text)}
  .menu-toggle{display:none;width:46px;height:46px;border-radius:50%;background:var(--surface-2);color:white;place-items:center;cursor:pointer}
  .menu-toggle svg{width:21px}
  .button{min-height:52px;padding:0 24px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:770;letter-spacing:-.01em;cursor:pointer;transition:transform .3s var(--ease),box-shadow .3s,background .3s,border-color .3s}
  .button:hover{transform:translateY(-3px)}
  .button-primary{background:var(--teal);color:var(--teal-ink);box-shadow:0 18px 45px rgba(67,222,212,.17)}
  .button-primary:hover{box-shadow:0 22px 65px rgba(67,222,212,.27)}
  .button-ghost{border:1px solid var(--line);background:rgba(255,255,255,.025);color:var(--text)}
  .button-ghost:hover{border-color:var(--line-strong);background:rgba(67,222,212,.05)}
  .button svg{width:18px;height:18px}
  .glass{background:linear-gradient(145deg,rgba(33,39,42,.82),rgba(18,22,24,.68));border:1px solid var(--line);box-shadow:var(--shadow);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
  .chip{display:inline-flex;align-items:center;gap:8px;padding:9px 13px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.025);color:#d1d7d5;font-size:.79rem;font-weight:680}
  .chip-dot{width:7px;height:7px;border-radius:50%;background:var(--teal);box-shadow:0 0 16px var(--teal)}
  .store-button{min-width:192px;min-height:62px;padding:10px 18px;border-radius:17px;border:1px solid var(--line);display:flex;align-items:center;gap:13px;background:#111416;transition:transform .3s var(--ease),border-color .3s,background .3s;cursor:pointer}
  .store-button:hover{transform:translateY(-4px);border-color:var(--line-strong);background:#171c1e}
  .store-button svg{width:28px;height:28px;color:var(--teal)}
  .store-button small{display:block;color:var(--muted-2);font-size:.66rem;text-transform:uppercase;letter-spacing:.08em}
  .store-button strong{display:block;font-size:1rem;line-height:1.2;color:var(--text)}
  .phone{position:relative;border-radius:44px;background:#050607;padding:9px;border:1px solid rgba(255,255,255,.18);box-shadow:0 45px 100px rgba(0,0,0,.58),inset 0 0 0 2px rgba(255,255,255,.035);overflow:hidden}
  .phone::before{content:"";position:absolute;top:17px;left:50%;width:31%;height:27px;transform:translateX(-50%);border-radius:999px;background:#020303;z-index:3}
  .phone::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(115deg,rgba(255,255,255,.1),transparent 22%,transparent 78%,rgba(255,255,255,.03))}
  .phone img{width:100%;border-radius:35px}
  .cursor-orb{position:fixed;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(67,222,212,.09),transparent 68%);transform:translate(-50%,-50%);pointer-events:none;z-index:-1;opacity:0;transition:opacity .3s}
  .modal{position:fixed;inset:0;z-index:200;display:none;place-items:center;padding:24px;background:rgba(3,5,6,.72);backdrop-filter:blur(18px)}
  .modal.is-open{display:grid}
  .modal-card{width:min(520px,100%);padding:34px;border-radius:28px;background:var(--surface-2);border:1px solid var(--line);box-shadow:var(--shadow)}
  .modal-card h2{font-size:2rem}.modal-card p{margin:14px 0 24px}.modal-close{width:100%}
  .toast{position:fixed;left:50%;bottom:28px;z-index:210;transform:translate(-50%,20px);opacity:0;pointer-events:none;padding:13px 18px;border:1px solid var(--line-strong);border-radius:999px;background:rgba(15,22,23,.95);color:var(--text);font-size:.86rem;font-weight:650;transition:.35s var(--ease)}
  .toast.is-visible{opacity:1;transform:translate(-50%,0)}
}

@layer sections {
  .hero{min-height:100vh;min-height:100svh;padding:calc(var(--header-h) + 70px) 0 90px;display:grid;align-items:center}
  .hero-grid{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(390px,.8fr);align-items:center;gap:clamp(30px,6vw,90px)}
  .hero-copy{position:relative;z-index:3}
  .hero-copy .eyebrow{margin-bottom:25px}
  .hero h1{max-width:930px}
  .hero h1 .thin{color:var(--muted);font-weight:520}
  .hero-lead{font-size:clamp(1.12rem,1.7vw,1.42rem);max-width:710px;margin:28px 0 34px;color:#b9c3c0}
  .hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:34px}
  .hero-chips{display:flex;flex-wrap:wrap;gap:9px}
  .hero-visual{height:min(720px,74vh);min-height:580px;position:relative;isolation:isolate}
  .hero-visual::before{content:"";position:absolute;inset:14% -12% 8%;border-radius:50%;background:radial-gradient(circle,rgba(67,222,212,.20),transparent 63%);filter:blur(10px);z-index:-2}
  .orbit{position:absolute;border:1px solid rgba(67,222,212,.18);border-radius:50%;animation:spin 22s linear infinite}
  .orbit.one{width:520px;height:520px;right:-40px;top:40px}.orbit.two{width:360px;height:360px;right:40px;top:120px;animation-direction:reverse;animation-duration:17s}
  .orbit .node{position:absolute;width:12px;height:12px;border-radius:50%;background:var(--teal);box-shadow:0 0 25px var(--teal);top:50%;left:-6px}
  .hero-phone-main{position:absolute;width:min(340px,70%);right:5%;top:1%;transform:rotate(4deg);z-index:2}
  .hero-phone-side{position:absolute;width:min(260px,54%);left:1%;bottom:0;transform:rotate(-8deg);z-index:1;filter:saturate(.92)}
  .floating-card{position:absolute;z-index:4;padding:14px 16px;border-radius:18px;display:flex;align-items:center;gap:11px;font-size:.78rem;font-weight:700;color:#e5e9e8;animation:float 5s var(--ease) infinite}
  .floating-card svg{width:20px;color:var(--teal)}
  .floating-card.local{right:-2%;bottom:12%}.floating-card.qr{left:-4%;top:14%;animation-delay:-2.2s}
  .marquee-wrap{border-block:1px solid var(--line);overflow:hidden;background:rgba(255,255,255,.012)}
  .marquee{display:flex;width:max-content;gap:36px;padding:21px 0;animation:marquee 28s linear infinite;color:#87938f;text-transform:uppercase;letter-spacing:.15em;font-size:.75rem;font-weight:800}
  .marquee span{display:flex;align-items:center;gap:36px}.marquee span::after{content:"✦";color:var(--teal)}
  .statement{padding:clamp(120px,16vw,220px) 0}
  .statement-inner{max-width:1120px}
  .statement p{font-family:Sora,system-ui;font-size:clamp(2rem,5vw,5.25rem);line-height:1.13;letter-spacing:-.05em;color:#5f6966}
  .statement p strong{color:var(--text);font-weight:650}.statement p em{font-style:normal;color:var(--teal)}
  .feature-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}
  .feature-card{position:relative;min-height:330px;padding:30px;border-radius:30px;border:1px solid var(--line);background:linear-gradient(145deg,rgba(28,33,36,.86),rgba(15,18,20,.72));overflow:hidden;transition:transform .45s var(--ease),border-color .35s,background .35s}
  .feature-card:hover{transform:translateY(-8px);border-color:var(--line-strong);background:linear-gradient(145deg,rgba(30,40,41,.92),rgba(17,20,22,.78))}
  .feature-card:nth-child(1),.feature-card:nth-child(4){grid-column:span 7}.feature-card:nth-child(2),.feature-card:nth-child(3){grid-column:span 5}.feature-card:nth-child(5){grid-column:span 5}.feature-card:nth-child(6){grid-column:span 7}
  .feature-icon{width:54px;height:54px;border-radius:17px;display:grid;place-items:center;background:rgba(67,222,212,.09);border:1px solid rgba(67,222,212,.2);color:var(--teal);margin-bottom:58px}
  .feature-icon svg{width:25px;height:25px}
  .feature-card h3{margin-bottom:12px}.feature-card p{max-width:490px}
  .feature-index{position:absolute;right:24px;top:21px;color:#596360;font-family:Sora;font-size:.78rem;letter-spacing:.12em}
  .feature-art{position:absolute;right:-18px;bottom:-22px;width:42%;height:46%;opacity:.16;border:1px solid var(--line-strong);border-radius:28px;transform:rotate(-8deg);background:linear-gradient(135deg,transparent,rgba(67,222,212,.28))}
  .showcase{background:linear-gradient(180deg,transparent,rgba(20,27,29,.75) 16%,rgba(20,27,29,.72) 84%,transparent);border-block:1px solid var(--line)}
  .showcase-grid{display:grid;grid-template-columns:minmax(270px,.72fr) minmax(420px,1.15fr);gap:clamp(40px,8vw,120px);align-items:center}
  .showcase-tabs{display:grid;gap:7px;margin-top:35px}
  .showcase-tab{width:100%;text-align:left;display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:14px;padding:15px 16px;border-radius:18px;color:var(--muted);background:transparent;border:1px solid transparent;cursor:pointer;transition:.3s}
  .showcase-tab:hover{color:var(--text);background:rgba(255,255,255,.025)}
  .showcase-tab.is-active{color:var(--text);background:rgba(67,222,212,.07);border-color:rgba(67,222,212,.22)}
  .showcase-tab .num{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:var(--surface-3);font-size:.72rem;font-weight:800}.showcase-tab.is-active .num{background:var(--teal);color:var(--teal-ink)}
  .showcase-tab svg{width:17px;opacity:.55}
  .showcase-visual{position:relative;min-height:760px;display:grid;place-items:center}
  .showcase-glow{position:absolute;width:70%;aspect-ratio:1;border-radius:50%;background:rgba(67,222,212,.13);filter:blur(70px)}
  .showcase-phone{width:min(360px,72vw);position:relative;z-index:2;transition:transform .5s var(--ease),opacity .35s}
  .showcase-phone.is-swapping{transform:translateY(14px) scale(.985);opacity:.3}
  .showcase-note{position:absolute;right:0;top:18%;width:220px;padding:18px;border-radius:20px;z-index:3}
  .showcase-note strong{display:block;font-size:.95rem;margin-bottom:5px}.showcase-note span{font-size:.78rem;color:var(--muted)}
  .showcase-note .pulse{display:inline-block;width:8px;height:8px;margin-right:6px;border-radius:50%;background:var(--teal);box-shadow:0 0 18px var(--teal)}
  .flow{position:relative}
  .flow-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
  .flow-card{position:relative;border-radius:34px;min-height:650px;padding:clamp(28px,4vw,52px);overflow:hidden;border:1px solid var(--line);background:#121618}
  .flow-card.user{background:radial-gradient(circle at 90% 10%,rgba(67,222,212,.18),transparent 32%),#121618}
  .flow-card.artist{background:radial-gradient(circle at 10% 90%,rgba(181,154,244,.16),transparent 34%),#121618}
  .flow-card h3{font-size:clamp(2rem,4vw,3.5rem);margin:16px 0 18px}.flow-card>p{font-size:1.08rem;max-width:520px}
  .flow-steps{display:grid;gap:12px;margin-top:46px}
  .flow-step{display:grid;grid-template-columns:36px 1fr;gap:14px;align-items:start;padding:16px;border:1px solid var(--line);border-radius:17px;background:rgba(255,255,255,.022)}
  .flow-step span:first-child{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:var(--surface-3);color:var(--teal);font-size:.75rem;font-weight:850}.artist .flow-step span:first-child{color:var(--violet)}
  .flow-step strong{display:block;margin-bottom:2px}.flow-step small{display:block;color:var(--muted)}
  .qr-orb{position:absolute;right:-70px;bottom:-70px;width:260px;height:260px;border-radius:50%;border:1px solid rgba(181,154,244,.28);display:grid;place-items:center;animation:spin 16s linear infinite}
  .qr-grid{width:110px;height:110px;background:repeating-linear-gradient(90deg,var(--violet) 0 7px,transparent 7px 14px),repeating-linear-gradient(0deg,rgba(181,154,244,.75) 0 7px,transparent 7px 14px);mix-blend-mode:screen;opacity:.45}
  .privacy-grid{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(480px,1.15fr);gap:clamp(50px,9vw,130px);align-items:center}
  .privacy-visual{position:relative;aspect-ratio:1;border-radius:50%;display:grid;place-items:center}
  .privacy-rings{position:absolute;inset:5%;border:1px solid rgba(67,222,212,.24);border-radius:50%;animation:pulseRing 4s ease-in-out infinite}.privacy-rings::before,.privacy-rings::after{content:"";position:absolute;border:1px solid rgba(67,222,212,.16);border-radius:50%}.privacy-rings::before{inset:13%}.privacy-rings::after{inset:28%}
  .privacy-icon{position:relative;z-index:2;width:170px;height:170px;border-radius:48px;background:linear-gradient(145deg,#1f2d2e,#101617);border:1px solid rgba(67,222,212,.27);display:grid;place-items:center;box-shadow:0 30px 80px rgba(0,0,0,.4),0 0 60px rgba(67,222,212,.08)}
  .privacy-icon img{width:130px;height:130px;object-fit:contain}
  .privacy-list{display:grid;gap:16px;margin-top:36px}
  .privacy-item{display:grid;grid-template-columns:46px 1fr;gap:15px;align-items:start;padding:18px 0;border-bottom:1px solid var(--line)}
  .privacy-item:last-child{border:0}.privacy-item svg{width:22px;color:var(--teal);margin-top:2px}.privacy-item strong{display:block;margin-bottom:4px}.privacy-item p{font-size:.92rem}
  .gallery-track{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px max(20px,calc((100vw - 1680px)/2)) 40px;scrollbar-width:none;cursor:grab}.gallery-track::-webkit-scrollbar{display:none}.gallery-track.is-dragging{cursor:grabbing;scroll-snap-type:none}
  .gallery-card{flex:0 0 min(330px,75vw);scroll-snap-align:center;position:relative;border-radius:34px;overflow:hidden;border:1px solid var(--line);background:var(--surface);transition:transform .4s var(--ease)}.gallery-card:hover{transform:translateY(-8px)}
  .gallery-card .phone{border-radius:32px;padding:0;border:0;background:none;box-shadow:none}.gallery-card .phone::before,.gallery-card .phone::after{display:none}.gallery-card .phone img{border-radius:0}
  .gallery-card figcaption{position:absolute;inset:auto 0 0;padding:60px 24px 22px;background:linear-gradient(transparent,rgba(5,7,8,.94));font-weight:750}.gallery-card figcaption small{display:block;color:var(--teal);text-transform:uppercase;letter-spacing:.13em;font-size:.65rem;margin-bottom:4px}
  .gallery-progress{width:var(--container);margin:8px auto 0;height:2px;background:var(--line);overflow:hidden}.gallery-progress span{display:block;width:20%;height:100%;background:var(--teal);transition:transform .2s linear;transform-origin:left}
  .safety-card{padding:clamp(30px,6vw,72px);border-radius:42px;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.6fr);gap:clamp(30px,7vw,90px);align-items:center;background:radial-gradient(circle at 90% 10%,rgba(255,159,150,.1),transparent 32%),linear-gradient(145deg,#1b1f21,#101315);border:1px solid rgba(255,159,150,.19)}
  .safety-card h2{font-size:clamp(2.4rem,5vw,5rem)}.safety-card p{margin-top:22px;font-size:1.08rem;max-width:720px}
  .safety-points{display:grid;gap:12px}.safety-point{padding:17px 18px;border-radius:18px;border:1px solid var(--line);background:rgba(0,0,0,.12);display:flex;gap:12px;align-items:center}.safety-point svg{width:20px;flex:none;color:var(--coral)}
  .faq-grid{display:grid;grid-template-columns:minmax(250px,.55fr) minmax(440px,1fr);gap:clamp(40px,8vw,120px)}
  .faq-list{border-top:1px solid var(--line)}
  .faq-item{border-bottom:1px solid var(--line)}
  .faq-question{width:100%;padding:25px 0;display:flex;justify-content:space-between;align-items:center;gap:20px;text-align:left;background:none;color:var(--text);font-weight:720;cursor:pointer}.faq-question span:last-child{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--surface-2);font-size:1.25rem;transition:transform .35s var(--ease)}.faq-item.is-open .faq-question span:last-child{transform:rotate(45deg);background:rgba(67,222,212,.1);color:var(--teal)}
  .faq-answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .42s var(--ease)}.faq-answer>div{overflow:hidden}.faq-answer p{padding:0 54px 24px 0}.faq-item.is-open .faq-answer{grid-template-rows:1fr}
  .download{padding:clamp(90px,12vw,160px) 0}
  .download-card{position:relative;overflow:hidden;text-align:center;padding:clamp(60px,10vw,120px) 24px;border-radius:50px;background:radial-gradient(circle at 50% 0%,rgba(67,222,212,.22),transparent 40%),linear-gradient(160deg,#172124,#0e1113 72%);border:1px solid rgba(67,222,212,.24)}
  .download-card::before{content:"";position:absolute;inset:18% auto auto 50%;width:520px;height:520px;border-radius:50%;border:1px solid rgba(67,222,212,.09);transform:translateX(-50%)}
  .download-card h2{max-width:880px;margin:18px auto}.download-card>p{max-width:650px;margin:0 auto 34px;font-size:1.08rem}.download-buttons{position:relative;display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.download-note{margin-top:18px!important;font-size:.78rem!important;color:var(--muted-2)!important}
  .site-footer{border-top:1px solid var(--line);padding:48px 0 30px;background:#090b0c}
  .footer-grid{display:grid;grid-template-columns:1fr auto auto;gap:clamp(35px,8vw,100px);align-items:start}
  .footer-brand p{max-width:390px;margin-top:16px;font-size:.9rem}.footer-col strong{display:block;margin-bottom:14px}.footer-col a{display:block;color:var(--muted);font-size:.88rem;padding:5px 0}.footer-col a:hover{color:var(--teal)}
  .footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);margin-top:38px;padding-top:22px;color:var(--muted-2);font-size:.78rem}
  .legal-page{padding:calc(var(--header-h) + 80px) 0 100px}.legal-shell{max-width:900px}.legal-shell h1{font-size:clamp(3rem,7vw,6rem);margin:22px 0 25px}.legal-shell .lead{font-size:1.18rem;margin-bottom:50px}.legal-content{display:grid;gap:38px}.legal-content section{padding-top:8px;border-top:1px solid var(--line)}.legal-content h2{font-size:1.75rem;margin:20px 0 12px}.legal-content p,.legal-content li{color:var(--muted)}.legal-content ul{padding-left:22px}.legal-content a{color:var(--teal);text-decoration:underline;text-underline-offset:4px}
}

@layer utilities {
  .js [data-reveal]{opacity:0;transform:translateY(28px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
  .js [data-reveal].is-visible{opacity:1;transform:none}
  .mobile-only{display:none}
}

@layer motion {
  @keyframes spin{to{transform:rotate(360deg)}}
  @keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
  @keyframes marquee{to{transform:translateX(-50%)}}
  @keyframes pulseRing{0%,100%{transform:scale(.98);opacity:.55}50%{transform:scale(1.03);opacity:1}}
}

@media (max-width:1050px){
  :root{--header-h:76px}
  .nav-links{display:none}.menu-toggle{display:grid}.nav-actions .button{display:none}
  .hero-grid{grid-template-columns:1fr}.hero-copy{max-width:900px}.hero-visual{width:min(650px,100%);margin:20px auto 0}
  .section-head{grid-template-columns:1fr;align-items:start}.section-head p{max-width:700px}
  .showcase-grid{grid-template-columns:1fr}.showcase-copy{max-width:760px}.showcase-tabs{grid-template-columns:repeat(2,1fr)}.showcase-visual{min-height:680px}
  .flow-grid{grid-template-columns:1fr}.flow-card{min-height:auto}
  .privacy-grid{grid-template-columns:1fr}.privacy-visual{max-width:600px;width:100%;margin:auto}
  .faq-grid{grid-template-columns:1fr}.faq-copy{max-width:680px}
  .site-header.menu-open{height:auto;min-height:100svh;align-items:flex-start;padding-top:16px;background:rgba(9,11,12,.98)}.site-header.menu-open .nav{align-items:flex-start;flex-wrap:wrap}.site-header.menu-open .nav-links{order:3;width:100%;display:grid;gap:0;padding:36px 0}.site-header.menu-open .nav-links a{font-family:Sora;font-size:clamp(1.8rem,7vw,3rem);padding:11px 0}.site-header.menu-open .nav-links a::after{display:none}
}

@media (max-width:760px){
  :root{--container:min(100% - 30px,1220px)}
  h1{font-size:clamp(3.05rem,15vw,5rem)}
  .section{padding:86px 0}.hero{padding-top:120px}.hero-lead{font-size:1.04rem}.hero-actions .button{width:100%}
  .hero-visual{height:580px;min-height:0}.hero-phone-main{width:68%;right:0}.hero-phone-side{width:53%;left:0;bottom:25px}.orbit.one{width:430px;height:430px;right:-110px}.orbit.two{width:290px;height:290px;right:-10px}.floating-card{padding:10px 12px;font-size:.69rem}.floating-card.local{right:0;bottom:7%}.floating-card.qr{left:-2%;top:18%}
  .statement{padding:110px 0}.statement p{font-size:clamp(2.05rem,10vw,3.4rem)}
  .feature-grid{display:grid;grid-template-columns:1fr}.feature-card:nth-child(n){grid-column:auto;min-height:295px}.feature-icon{margin-bottom:42px}
  .showcase-tabs{grid-template-columns:1fr}.showcase-visual{min-height:620px}.showcase-note{right:-4px;top:8%;width:190px}.showcase-phone{width:min(330px,82vw)}
  .flow-card{padding:28px 22px}.qr-orb{opacity:.5}
  .privacy-icon{width:145px;height:145px}.privacy-icon img{width:110px;height:110px}
  .safety-card{grid-template-columns:1fr;padding:32px 22px;border-radius:30px}
  .gallery-card{flex-basis:76vw}
  .download-card{border-radius:30px}.store-button{width:100%;justify-content:center}
  .footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-bottom{flex-direction:column}
  .desktop-only{display:none}.mobile-only{display:block}
}

@media (max-width:420px){
  .brand span{font-size:1.08rem}.lang-switch a{width:36px}.menu-toggle{width:42px;height:42px}
  .hero-visual{height:510px}.floating-card.qr{display:none}.hero-phone-main{width:73%}.hero-phone-side{width:55%}
  .showcase-note{display:none}.showcase-visual{min-height:570px}
  .footer-grid{grid-template-columns:1fr}
}

@media (pointer:fine){body:hover .cursor-orb{opacity:1}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.cursor-orb{display:none}.js [data-reveal]{opacity:1;transform:none}}


/* Responsive and content hardening */
@layer base {
  html,body{max-width:100%}
  main{overflow:hidden;overflow:clip}
  h1,h2,h3,.section-head p,.hero-lead{text-wrap:balance}
  .hero-grid>*{min-width:0}
  img{height:auto}
}

@layer components {
  .store-button[aria-disabled="true"]{cursor:default}
}

@media (max-width:1240px), (max-aspect-ratio:11/10){
  :root{--header-h:76px}
  .nav-links{display:none}
  .menu-toggle{display:grid}
  .nav-actions>.button{display:none}
  .hero{min-height:auto;display:block;padding:calc(var(--header-h) + 68px) 0 82px}
  .hero-grid{grid-template-columns:minmax(0,1fr);gap:clamp(46px,7vw,76px);align-items:start}
  .hero-copy{max-width:920px}
  .hero h1{font-size:clamp(4rem,9vw,6.7rem);max-width:980px}
  .hero-visual{width:min(680px,100%);height:clamp(600px,72vw,760px);min-height:0;margin:0 auto;justify-self:center}
  .hero-phone-main{width:min(340px,50vw);right:8%;top:0}
  .hero-phone-side{width:min(260px,39vw);left:10%;bottom:1%}
  .orbit.one{width:min(520px,76vw);height:min(520px,76vw);right:0;top:7%}
  .orbit.two{width:min(360px,54vw);height:min(360px,54vw);right:12%;top:18%}
  .floating-card.qr{left:3%;top:14%}
  .floating-card.local{right:2%;bottom:10%}
  .section-head{grid-template-columns:1fr;align-items:start}
  .section-head p{max-width:760px}
  .showcase-grid{grid-template-columns:1fr}
  .showcase-copy{max-width:800px}
  .showcase-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}
  .showcase-visual{min-height:680px}
  .flow-grid,.privacy-grid,.faq-grid{grid-template-columns:1fr}
  .flow-card{min-height:auto}
  .privacy-visual{max-width:600px;width:100%;margin-inline:auto}
  .faq-copy{max-width:720px}
  .site-header.menu-open{height:auto;min-height:100svh;align-items:flex-start;padding-top:16px;background:rgba(9,11,12,.98)}
  .site-header.menu-open .nav{align-items:flex-start;flex-wrap:wrap}
  .site-header.menu-open .nav-links{order:3;width:100%;display:grid;gap:0;padding:36px 0}
  .site-header.menu-open .nav-links a{font-family:Sora,system-ui;font-size:clamp(1.8rem,7vw,3rem);padding:11px 0}
  .site-header.menu-open .nav-links a::after{display:none}
}

@media (max-width:760px){
  :root{--container:min(100% - 30px,1220px)}
  .site-header{background:linear-gradient(180deg,rgba(11,13,15,.92),rgba(11,13,15,.55),transparent)}
  .site-header.is-scrolled{background:rgba(11,13,15,.9)}
  .hero{padding:calc(var(--header-h) + 44px) 0 72px}
  .hero-grid{gap:34px}
  .hero h1{font-size:clamp(3.2rem,13vw,5rem);line-height:1.01}
  .hero-lead{font-size:1.04rem;margin:24px 0 28px}
  .hero-actions{margin-bottom:26px}
  .hero-actions .button{width:100%}
  .hero-chips{gap:7px}
  .chip{font-size:.73rem;padding:8px 10px}
  .hero-visual{height:clamp(500px,84vw,640px);width:min(600px,100%)}
  .hero-phone-main{width:min(300px,50vw);right:7%;top:0}
  .hero-phone-side{width:min(230px,39vw);left:8%;bottom:0}
  .orbit.one{width:min(430px,70vw);height:min(430px,70vw);right:-3%;top:5%}
  .orbit.two{width:min(290px,48vw);height:min(290px,48vw);right:14%;top:18%}
  .floating-card{padding:10px 12px;font-size:.68rem;max-width:210px}
  .floating-card.qr{left:0;top:15%}
  .floating-card.local{right:0;bottom:8%}
  .section{padding:86px 0}
  .statement{padding:105px 0}
  .statement p{font-size:clamp(2.05rem,10vw,3.4rem)}
  .feature-grid{display:grid;grid-template-columns:1fr}
  .feature-card:nth-child(n){grid-column:auto;min-height:285px}
  .feature-icon{margin-bottom:38px}
  .showcase-tabs{grid-template-columns:1fr}
  .showcase-visual{min-height:570px}
  .showcase-phone{width:min(280px,72vw)}
  .showcase-note{right:0;top:7%;width:185px}
  .flow-card{padding:28px 22px}
  .qr-orb{opacity:.45}
  .privacy-icon{width:145px;height:145px}
  .privacy-icon img{width:110px;height:110px}
  .safety-card{grid-template-columns:1fr;padding:32px 22px;border-radius:30px}
  .gallery-card{flex-basis:min(310px,82vw)}
  .download-card{border-radius:30px}
  .store-button{width:100%;justify-content:center}
  .footer-grid{grid-template-columns:1fr 1fr}
  .footer-brand{grid-column:1/-1}
  .footer-bottom{flex-direction:column}
}

@media (max-width:500px){
  .brand span{font-size:1.05rem}
  .brand img{width:38px;height:38px}
  .lang-switch a{width:34px}
  .menu-toggle{width:42px;height:42px}
  .hero h1{font-size:clamp(2.85rem,13.5vw,4.1rem)}
  .hero-visual{height:500px}
  .hero-phone-main{width:min(245px,61vw);right:1%}
  .hero-phone-side{width:min(190px,47vw);left:0}
  .floating-card.qr{display:none}
  .floating-card.local{bottom:5%}
  .showcase-note{display:none}
  .showcase-visual{min-height:540px}
  .footer-grid{grid-template-columns:1fr}
}

@media (min-width:1241px) and (max-height:820px) and (min-aspect-ratio:11/10){
  .hero{padding-top:calc(var(--header-h) + 34px);padding-bottom:46px}
  .hero-visual{height:650px;min-height:0}
  .hero-lead{margin:22px 0 26px}
}

@layer base {
  section[id]{scroll-margin-top:calc(var(--header-h) + 24px)}
}


/* Product attribution and legal-route additions */
.footer-credit{display:inline-flex;flex-direction:column;gap:3px;margin-top:18px;color:var(--muted);text-decoration:none;transition:color .2s ease,transform .2s ease}.footer-credit span{font-size:.78rem;letter-spacing:.02em}.footer-credit strong{color:var(--text);font-size:.94rem}.footer-credit:hover{color:var(--accent);transform:translateY(-2px)}.footer-credit:hover strong{color:var(--accent)}.legal-footer{margin-top:0}.legal-updated{margin-top:16px;color:var(--muted);font-size:.95rem}.legal-content a{color:var(--accent);text-underline-offset:3px}
