/* === VARIABLES === */
:root {
  --bg: #060F1A;
  --bg2: #0B1929;
  --bg-card: #0F1E33;
  --brand: #15BF58;
  --brand-light: #24D96D;
  --brand-dark: #0FA046;
  --teal: #1EC997;
  --red: #D94141;
  --text: #E8EBF0;
  --muted: #6A7D96;
  --border: rgba(255,255,255,0.08);
  --border-brand: rgba(21,191,88,0.22);
  --subtle: rgba(255,255,255,0.05);
  --r: 12px;
  --t: 0.22s ease;
  --shadow: 0 8px 40px rgba(0,0,0,0.5);
  --glow: 0 0 40px rgba(21,191,88,0.12);
}

/* === RESET === */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:'Inter','Roboto',sans-serif;
  background:var(--bg);
  color:var(--text);
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
ul{list-style:none}

/* === CONTAINER === */
.container{width:100%;max-width:1160px;margin:0 auto;padding:0 32px}

/* === TYPE === */
h1,h2,h3,h4{font-family:'Poppins','Montserrat',sans-serif;line-height:1.1;font-weight:700}
h1{font-size:clamp(2.6rem,7vw,5.5rem);letter-spacing:-0.04em}
h2{font-size:clamp(1.8rem,4vw,3rem);letter-spacing:-0.03em}
h3{font-size:clamp(1.1rem,2vw,1.4rem);letter-spacing:-0.01em}
h4{font-size:1rem}
p{color:var(--muted);line-height:1.8}
strong,b{color:var(--text)}

/* === SITE ALERT (brand change notice, top of header) === */
.site-alert{
  background:rgba(217,65,65,0.12);
  border-bottom:1px solid rgba(217,65,65,0.25);
  padding:9px 0;
  font-size:0.72rem;
  color:var(--text);
  letter-spacing:0.01em;
  position:relative;
}
.site-alert .container{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}
.site-alert p{color:var(--text);margin:0;font-size:inherit;line-height:1.4}
.site-alert strong{color:#fff}
.site-alert-link{color:var(--brand);font-weight:600;text-decoration:underline;text-underline-offset:2px;white-space:nowrap}
.site-alert-close{
  position:absolute;right:16px;top:50%;transform:translateY(-50%);
  background:none;border:none;cursor:pointer;
  color:var(--muted);font-size:1rem;line-height:1;padding:4px 6px;
  transition:color var(--t);
}
.site-alert-close:hover{color:var(--text)}
.site-alert.hidden{display:none}

/* === TOPBAR === */
.topbar{background:rgba(6,15,26,0.98);border-bottom:1px solid var(--subtle);padding:8px 0;font-size:0.7rem;color:var(--muted);letter-spacing:0.04em}
.topbar .container{display:flex;justify-content:center;gap:32px;flex-wrap:wrap;align-items:center}
.topbar span{display:flex;align-items:center;gap:7px}
.topbar .dot{color:var(--brand);font-size:0.55rem}

/* Mobile topbar: carousel — one item at a time */
@media(max-width:640px){
  .dl-grid{gap:10px;}
  .qr-wrap{padding:16px 10px;}
  .page-hero{padding:80px 0 44px;}
  .page-hero h1{font-size:clamp(1.6rem,6vw,2rem);letter-spacing:-0.02em;}
  .page-hero p{font-size:0.9rem;}
  .topbar .container{
    position:relative;height:22px;overflow:hidden;
    justify-content:center;padding:0;
  }
  .topbar span{
    position:absolute;left:0;right:0;justify-content:center;
    opacity:0;
    animation:tb-cycle 9s infinite both;
  }
  .topbar span:nth-child(1){animation-delay:0s}
  .topbar span:nth-child(2){animation-delay:3s}
  .topbar span:nth-child(3){animation-delay:6s}
}
@keyframes tb-cycle{
  0%   {opacity:0;transform:translateY(5px)}
  5%   {opacity:1;transform:translateY(0)}
  28%  {opacity:1;transform:translateY(0)}
  33%  {opacity:0;transform:translateY(-5px)}
  100% {opacity:0;transform:translateY(-5px)}
}

/* ═══════════════════════════════════════════
   SITE HEADER — Sticky wrapper (topbar + nav)
   ═══════════════════════════════════════════ */
.site-header{position:sticky;top:0;z-index:300}

/* ═══════════════════════════════════════════
   EDITORIAL NAV — Minimal, transparent→solid on scroll
   ═══════════════════════════════════════════ */
.navbar{
  padding:16px 0;
  background:transparent;
  border-bottom:1px solid transparent;
  transition:background 0.4s ease, border-color 0.4s ease, padding 0.35s ease;
}
.site-header.scrolled .navbar{
  background:rgba(6,15,26,0.97);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  border-bottom-color:var(--border);
  padding:12px 0;
}
.nav-inner{display:flex;align-items:center;justify-content:space-between}
.nav-logo-link{display:flex;align-items:center}
.nav-logo-img{height:38px;width:auto;object-fit:contain}
/* right side: cta + hamburger */
.nav-right{display:flex;align-items:center;gap:16px}
.nav-cta{
  font-family:'Poppins',sans-serif;font-weight:700;font-size:0.83rem;
  background:var(--brand);color:var(--bg);
  padding:9px 20px;border-radius:8px;
  transition:background var(--t),transform var(--t);
  letter-spacing:0.01em;
}
.nav-cta:hover{background:var(--brand-light);transform:translateY(-1px)}
.menu-btn{
  background:none;border:none;outline:none;cursor:pointer;
  display:flex;flex-direction:column;gap:6px;padding:4px;
}
.menu-btn:focus-visible{outline:2px solid var(--brand);border-radius:4px}
.menu-btn span{display:block;width:22px;height:1.5px;background:var(--text);border-radius:2px;transition:var(--t)}
.menu-btn.active span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
.menu-btn.active span:nth-child(2){opacity:0;transform:scaleX(0)}
.menu-btn.active span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}

/* ═══════════════════════════════════════════
   FULL-SCREEN OVERLAY MENU — auwa.life style
   ═══════════════════════════════════════════ */
.menu-overlay{
  position:fixed;inset:0;z-index:290;
  background:var(--bg);
  display:flex;flex-direction:column;
  align-items:center;justify-content:center;
  opacity:0;pointer-events:none;
  transition:opacity 0.4s ease;
}
.menu-overlay.open{opacity:1;pointer-events:all}

/* Top bar: logo left, close right — absolute over content */
.overlay-bar{
  position:absolute;top:0;left:0;right:0;
  display:flex;align-items:center;justify-content:space-between;
  padding:22px 40px;
}
.overlay-logo-link{display:flex;align-items:center;opacity:0.85;transition:opacity var(--t)}
.overlay-logo-link:hover{opacity:1}
.overlay-logo-img{height:32px;width:auto;object-fit:contain}
.overlay-close{
  background:none;border:none;outline:none;cursor:pointer;
  color:var(--text);
  font-size:1.5rem;line-height:1;
  padding:6px 8px;
  opacity:0.6;
  transition:opacity var(--t);
}
.overlay-close:hover{opacity:1}

/* Centered nav links */
.overlay-nav{text-align:center;width:100%}
.overlay-nav a{
  display:block;
  font-size:clamp(2.2rem,7vw,5.5rem);
  font-family:'Poppins',sans-serif;
  font-weight:700;
  color:var(--muted);
  padding:6px 0;
  letter-spacing:-0.04em;
  line-height:1.05;
  transition:color 0.18s ease, opacity 0.18s ease;
}
.overlay-nav a:hover{color:var(--text)}
/* Dim non-hovered links when any is hovered */
.overlay-nav:has(a:hover) a:not(:hover){opacity:0.35}

/* Bottom bar: CTA left, tagline right */
.overlay-foot{
  position:absolute;bottom:0;left:0;right:0;
  display:flex;align-items:center;justify-content:space-between;
  padding:20px 40px;
  border-top:1px solid var(--subtle);
}
.overlay-cta-link{
  font-family:'Poppins',sans-serif;font-weight:700;
  font-size:0.82rem;color:var(--brand);
  letter-spacing:0.06em;text-transform:uppercase;
  transition:letter-spacing var(--t),opacity var(--t);
}
.overlay-cta-link:hover{letter-spacing:0.1em}
.overlay-foot-tag{font-size:0.72rem;color:var(--muted);display:none}
@media(min-width:640px){.overlay-foot-tag{display:block}}

/* ═══════════════════════════════════════════
   HERO — Full viewport, centered editorial
   ═══════════════════════════════════════════ */
.hero-ed{
  min-height:100vh;
  display:flex;flex-direction:column;
  align-items:center;justify-content:center;
  text-align:center;
  padding:140px 32px 100px;
  position:relative;overflow:hidden;
}
/* Radial glow behind logo */
.hero-ed::before{
  content:'';position:absolute;
  width:600px;height:600px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(21,191,88,0.05) 0%,transparent 65%);
  pointer-events:none;
}
/* Decorative ghost text */
.hero-deco{
  position:absolute;
  bottom:-5%;left:50%;transform:translateX(-50%);
  font-size:min(28vw,320px);
  font-weight:900;font-family:'Poppins',sans-serif;
  color:transparent;
  -webkit-text-stroke:1px rgba(21,191,88,0.04);
  pointer-events:none;user-select:none;
  letter-spacing:-0.06em;white-space:nowrap;line-height:1;z-index:0;
}
.hero-ed .container{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center}
.hero-logo-anchor{
  margin-bottom:48px;
  position:relative;
}
.hero-logo-anchor img{
  width:clamp(120px,18vw,200px);height:auto;
  filter:drop-shadow(0 0 32px rgba(21,191,88,0.25));
}
.hero-eyebrow{
  font-size:0.72rem;letter-spacing:0.12em;text-transform:uppercase;
  color:var(--muted);margin-bottom:20px;
  display:flex;align-items:center;gap:12px;
}
.hero-eyebrow::before,.hero-eyebrow::after{content:'';display:block;width:24px;height:1px;background:var(--border)}
.hero-ed h1{
  margin-bottom:24px;
  max-width:820px;
}
.hero-ed h1 .line-muted{color:var(--muted);font-weight:600;font-size:0.55em;display:block;letter-spacing:0.01em;margin-bottom:4px}
.hero-ed h1 .line-brand{color:var(--brand)}
.hero-sub{max-width:480px;font-size:1.02rem;margin-bottom:40px;text-align:center}
.hero-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-bottom:72px}
/* Trust line */
.hero-trust{
  display:flex;gap:24px;flex-wrap:wrap;justify-content:center;
  font-size:0.75rem;color:var(--muted);letter-spacing:0.02em;
}
.hero-trust span{display:flex;align-items:center;gap:6px}
.hero-trust .chk{color:var(--brand)}
/* Scroll cue */
.scroll-cue{
  position:absolute;bottom:36px;left:50%;transform:translateX(-50%);
  display:flex;flex-direction:column;align-items:center;gap:8px;
  color:var(--muted);font-size:0.65rem;letter-spacing:0.1em;text-transform:uppercase;
  opacity:0.6;
}
.scroll-line{
  width:1px;height:36px;
  background:linear-gradient(to bottom,transparent,var(--muted));
  animation:scrollPulse 2s ease infinite;
}
@keyframes scrollPulse{0%{opacity:0.3;transform:scaleY(0.4)}50%{opacity:1;transform:scaleY(1)}100%{opacity:0.3;transform:scaleY(0.4)}}

/* ═══════════════════════════════════════════
   EDITORIAL SECTIONS
   ═══════════════════════════════════════════ */
.sec{padding:120px 0}
.sec-alt{background:var(--bg2)}

/* Section label — small caps with leading rule */
.sec-label{
  display:flex;align-items:center;gap:14px;
  font-size:0.7rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--muted);
  margin-bottom:56px;
}
.sec-label::before{content:'';display:block;width:28px;height:1px;background:var(--brand);opacity:0.6}

/* Big editorial heading */
.sec-heading{
  font-size:clamp(2.2rem,5vw,3.8rem);
  letter-spacing:-0.03em;line-height:1.1;
  margin-bottom:20px;
}
.sec-heading .em{color:var(--brand);font-style:normal}

/* Full divider */
.full-divider{border:none;border-top:1px solid var(--border);margin:0}

/* ═══════════════════════════════════════════
   NUMBERED STEPS (editorial list)
   ═══════════════════════════════════════════ */
.steps-list{margin-top:16px}
.step-ed{
  display:grid;grid-template-columns:90px 1fr;gap:32px;align-items:start;
  padding:40px 0;border-top:1px solid var(--border);
  transition:border-color var(--t);
}
.step-ed:last-child{border-bottom:1px solid var(--border)}
.step-ed:hover{border-top-color:var(--border-brand)}
.step-num{
  font-size:3.5rem;font-weight:800;font-family:'Poppins',sans-serif;
  letter-spacing:-0.05em;line-height:1;
  color:var(--muted);opacity:0.35;
  transition:opacity var(--t),color var(--t);
}
.step-ed:hover .step-num{opacity:0.7;color:var(--brand)}
.step-body h3{color:var(--text);margin-bottom:10px;font-size:1.2rem}
.step-body p{font-size:0.9rem;max-width:560px}
.step-body .domain-code{
  display:inline-block;margin-top:10px;
  background:rgba(30,201,151,0.07);border:1px solid rgba(30,201,151,0.18);
  color:var(--teal);font-family:monospace;padding:3px 10px;border-radius:5px;font-size:0.85rem;
}
.step-body .fill-tag{
  display:inline-block;background:rgba(255,210,0,0.07);border:1px dashed rgba(255,210,0,0.25);
  color:#D4A900;font-size:0.75rem;padding:2px 8px;border-radius:4px;margin-top:6px;
}
.step-body .step-cta{
  display:inline-flex;align-items:center;gap:8px;margin-top:18px;
  color:var(--brand);font-family:'Poppins',sans-serif;font-weight:600;font-size:0.88rem;
  transition:gap var(--t);
}
.step-body .step-cta:hover{gap:14px}

/* ═══════════════════════════════════════════
   EDITORIAL SPLIT SECTION
   ═══════════════════════════════════════════ */
.split-ed{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}
.split-ed .col-left .big-stat{
  font-size:clamp(4rem,10vw,8rem);font-family:'Poppins',sans-serif;
  font-weight:800;letter-spacing:-0.06em;line-height:1;
  color:var(--brand);opacity:0.12;
  margin-bottom:-20px;user-select:none;
}
.split-ed .feature-list{display:flex;flex-direction:column;gap:0}
.split-ed .fi{
  display:flex;align-items:flex-start;gap:16px;
  padding:18px 0;border-bottom:1px solid var(--subtle);
}
.split-ed .fi:first-child{border-top:1px solid var(--subtle)}
.split-ed .fi .fi-icon{color:var(--brand);font-size:1.1rem;flex-shrink:0;padding-top:2px}
.split-ed .fi h4{color:var(--text);font-size:0.95rem;margin-bottom:3px}
.split-ed .fi p{font-size:0.85rem;margin:0}

/* ═══════════════════════════════════════════
   HISTORY — TYPOGRAPHIC NARRATIVE
   ═══════════════════════════════════════════ */
.history-typo{
  display:flex;flex-direction:column;gap:0;margin-bottom:72px;
  border-top:1px solid var(--border);
}
.history-typo .ht-row{
  display:flex;align-items:baseline;gap:24px;
  padding:20px 0;border-bottom:1px solid var(--subtle);
}
.history-typo .ht-date{
  font-size:0.72rem;letter-spacing:0.08em;text-transform:uppercase;color:var(--muted);
  min-width:130px;
}
.history-typo .ht-name{
  font-size:clamp(1.8rem,4vw,2.8rem);font-family:'Poppins',sans-serif;
  font-weight:700;letter-spacing:-0.03em;line-height:1;
}
.history-typo .ht-name.active{color:var(--brand)}
.history-typo .ht-note{font-size:0.83rem;color:var(--muted);margin-left:auto}
.history-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:8px}

/* Warning notice */
.notice{
  background:rgba(217,65,65,0.05);border:1px solid rgba(217,65,65,0.18);
  border-radius:var(--r);padding:22px 26px;
}
.notice h3{color:var(--red);font-size:1rem;margin-bottom:10px}
.notice p,.notice ul li{font-size:0.87rem;color:var(--muted)}
.notice ul li{padding:4px 0;display:flex;gap:10px}
.notice ul li::before{content:'✗';color:var(--red);flex-shrink:0}

/* ═══════════════════════════════════════════
   CERTIFICATE
   ═══════════════════════════════════════════ */
.cert-card{
  background:var(--bg-card);border:1px solid var(--border-brand);
  border-radius:var(--r);padding:32px;box-shadow:var(--glow);
}
.cert-card-header{
  display:flex;align-items:center;gap:14px;
  padding-bottom:20px;border-bottom:1px solid var(--subtle);margin-bottom:20px;
}
.cert-card-header .icon{font-size:2rem}
.cert-table{width:100%;border-collapse:collapse}
.cert-table td{padding:9px 0;font-size:0.87rem;border-bottom:1px solid var(--subtle)}
.cert-table tr:last-child td{border-bottom:none}
.cert-table td:first-child{color:var(--muted);width:44%;padding-right:16px}
.cert-table td:last-child{color:var(--text);font-weight:500}
.fill-tag{
  display:inline-block;background:rgba(255,210,0,0.07);border:1px dashed rgba(255,210,0,0.25);
  color:#D4A900;font-size:0.75rem;padding:2px 8px;border-radius:4px;
}

/* ═══════════════════════════════════════════
   DOWNLOAD SECTION
   ═══════════════════════════════════════════ */
.dl-btns{display:flex;flex-direction:column;gap:14px;margin:28px 0;}
.dl-btn{
  display:flex;align-items:center;gap:20px;
  background:var(--bg-card);border:1.5px solid var(--border);
  border-radius:var(--r);padding:16px 20px;cursor:pointer;text-decoration:none;
  transition:border-color var(--t),transform var(--t),box-shadow var(--t);
}
.dl-btn:hover{border-color:var(--brand);transform:translateX(5px);box-shadow:var(--glow)}
.dl-btn .os-icon{
  display:flex;align-items:center;justify-content:center;
  width:54px;height:54px;border-radius:14px;flex-shrink:0;
}
.dl-btn[data-leao="android"] .os-icon{background:rgba(61,220,132,0.12)}
.dl-btn[data-leao="android"]:hover{border-color:#3DDC84;box-shadow:0 0 32px rgba(61,220,132,0.13)}
.dl-btn[data-leao="ios"] .os-icon{background:rgba(255,255,255,0.07)}
.dl-btn .dl-label{flex:1}
.dl-btn small{color:var(--muted);font-size:0.68rem;display:block;text-transform:uppercase;letter-spacing:0.08em;margin-bottom:3px}
.dl-btn strong{font-size:1.05rem;color:var(--text)}
.dl-btn-arrow{color:var(--muted);font-size:1rem;flex-shrink:0;transition:color var(--t),transform var(--t)}
.dl-btn:hover .dl-btn-arrow{color:var(--brand);transform:translateX(3px)}
.dl-disclaimer{font-size:0.77rem;color:var(--muted);font-style:italic;margin-top:8px}
.dl-grid{display:grid;grid-template-columns:clamp(180px,58%,280px) 1fr;gap:12px;align-items:stretch;}
.dl-grid .dl-btns{margin-top:0;}
.qr-wrap{
  background:var(--bg-card);border:1.5px solid var(--border-brand);
  border-radius:var(--r);padding:32px 24px;
  display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center;
}
.qr-ph{
  width:130px;height:130px;border:2px dashed var(--border);border-radius:10px;
  display:flex;align-items:center;justify-content:center;font-size:2.8rem;
  background:rgba(255,255,255,0.02);
}

/* ═══════════════════════════════════════════
   FAQ — Minimal accordion
   ═══════════════════════════════════════════ */
.faq-list{max-width:780px;margin:0 auto;display:flex;flex-direction:column;gap:0}
.faq-item{border-bottom:1px solid var(--border)}
.faq-item:first-child{border-top:1px solid var(--border)}
.faq-q{
  width:100%;display:flex;align-items:center;justify-content:space-between;gap:24px;
  padding:22px 0;background:none;border:none;cursor:pointer;
  text-align:left;color:var(--text);
  font-family:'Poppins',sans-serif;font-weight:600;font-size:0.95rem;
  transition:color var(--t);
}
.faq-q:hover{color:var(--brand)}
.faq-item.open .faq-q{color:var(--brand)}
.faq-icon{
  width:24px;height:24px;flex-shrink:0;font-style:normal;
  display:flex;align-items:center;justify-content:center;
  color:var(--muted);font-size:1.1rem;font-weight:300;
  transition:transform var(--t),color var(--t);
}
.faq-item.open .faq-icon{transform:rotate(45deg);color:var(--brand)}
.faq-a{display:none;padding:0 0 22px;font-size:0.88rem;line-height:1.8;max-width:680px}
.faq-item.open .faq-a{display:block}
/* Card-style FAQ variant */
.faq-cards{gap:8px;}
.faq-cards .faq-item,
.faq-cards .faq-item:first-child{
  background:var(--bg-card);border:1px solid var(--border);border-radius:12px;
  overflow:hidden;transition:border-color var(--t);
}
.faq-cards .faq-item.open{border-color:var(--border-brand);}
.faq-cards .faq-q{padding:18px 20px;}
.faq-cards .faq-a{padding:0 20px 18px;}

/* ═══════════════════════════════════════════
   ALERT BANNER — slim editorial
   ═══════════════════════════════════════════ */
.alert-banner{
  background:rgba(217,65,65,0.06);
  border-bottom:1px solid rgba(217,65,65,0.15);
  padding:12px 0;
}
.alert-banner .container{
  display:flex;align-items:center;gap:14px;justify-content:center;flex-wrap:wrap;
}
.alert-banner p{font-size:0.82rem;color:var(--text);margin:0}
.alert-banner p strong{color:var(--red)}
.alert-link{
  font-size:0.78rem;color:var(--brand);font-weight:600;
  border-bottom:1px solid rgba(21,191,88,0.3);
  transition:border-color var(--t);white-space:nowrap;
}
.alert-link:hover{border-color:var(--brand)}

/* ═══════════════════════════════════════════
   BUTTONS (universal)
   ═══════════════════════════════════════════ */
.btn-primary{
  display:inline-flex;align-items:center;gap:8px;
  background:var(--brand);color:var(--bg);
  font-family:'Poppins',sans-serif;font-weight:700;font-size:0.92rem;
  padding:14px 30px;border-radius:10px;border:none;cursor:pointer;
  transition:background var(--t),transform var(--t),box-shadow var(--t);letter-spacing:0.01em;
}
.btn-primary:hover{background:var(--brand-light);transform:translateY(-1px);box-shadow:var(--glow)}
.btn-secondary{
  display:inline-flex;align-items:center;gap:8px;
  background:transparent;color:var(--text);
  font-family:'Poppins',sans-serif;font-weight:600;font-size:0.92rem;
  padding:13px 28px;border-radius:10px;border:1px solid var(--border);cursor:pointer;
  transition:border-color var(--t),color var(--t),transform var(--t);
}
.btn-secondary:hover{border-color:var(--brand);color:var(--brand);transform:translateY(-1px)}
.btn-ghost{
  display:inline-flex;align-items:center;gap:8px;
  color:var(--brand);font-family:'Poppins',sans-serif;font-weight:600;font-size:0.9rem;
  border:none;background:none;cursor:pointer;padding:0;transition:gap var(--t);
}
.btn-ghost:hover{gap:14px}

/* ═══════════════════════════════════════════
   SCROLL REVEAL
   ═══════════════════════════════════════════ */
.reveal{opacity:0;transform:translateY(28px);transition:opacity 0.7s ease,transform 0.7s ease}
.reveal.revealed{opacity:1;transform:none}
.reveal-d1{transition-delay:0.1s}
.reveal-d2{transition-delay:0.2s}
.reveal-d3{transition-delay:0.3s}
.reveal-d4{transition-delay:0.4s}

/* ═══════════════════════════════════════════
   FOOTER
   ═══════════════════════════════════════════ */
footer{background:var(--bg2);border-top:1px solid var(--border);padding:64px 0 32px}
.footer-top{
  display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;margin-bottom:48px;
}
.footer-brand-logo{height:32px;width:auto;object-fit:contain;margin-bottom:14px}
.footer-brand-text{font-family:'Poppins',sans-serif;font-size:1.3rem;font-weight:800;color:var(--brand);margin-bottom:12px}
.footer-brand p{font-size:0.82rem;max-width:270px}
.footer-col h4{color:var(--text);font-size:0.72rem;letter-spacing:0.08em;text-transform:uppercase;margin-bottom:14px}
.footer-col a{display:block;color:var(--muted);font-size:0.82rem;padding:5px 0;transition:color var(--t)}
.footer-col a:hover{color:var(--brand)}
.footer-bottom{
  padding-top:28px;border-top:1px solid var(--subtle);
  display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;
}
.footer-tags{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
.ft{background:rgba(255,255,255,0.03);border:1px solid var(--subtle);border-radius:100px;padding:3px 12px;font-size:0.67rem;color:var(--muted)}
.footer-disclaimer{max-width:680px;font-size:0.72rem;color:var(--muted);line-height:1.7}
.footer-bottom p{font-size:0.76rem;color:var(--muted)}

/* ═══════════════════════════════════════════
   AGE GATE
   ═══════════════════════════════════════════ */
#age-gate{
  position:fixed;inset:0;z-index:9999;
  background:rgba(6,15,26,0.98);backdrop-filter:blur(20px);
  display:flex;align-items:center;justify-content:center;padding:24px;
}
.age-gate-box{
  background:var(--bg-card);border:1px solid rgba(212,175,55,0.55);border-radius:20px;
  padding:48px 40px;max-width:440px;width:100%;text-align:center;box-shadow:0 0 48px rgba(212,175,55,0.18);
}
.age-gate-box .ag-icon{font-size:2.5rem;margin-bottom:20px;display:flex;justify-content:center;}
.age-gate-box h2{margin-bottom:12px;font-size:1.4rem}
.age-gate-box p{font-size:0.88rem;margin-bottom:32px}
.age-gate-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.ag-deny{
  background:transparent;border:1px solid var(--subtle);color:var(--muted);
  padding:12px 22px;border-radius:8px;cursor:pointer;font-family:inherit;font-size:0.87rem;transition:var(--t);
}
.ag-deny:hover{border-color:var(--red);color:var(--red)}

/* ═══════════════════════════════════════════
   INNER PAGE HERO (non-homepage pages)
   ═══════════════════════════════════════════ */
.page-hero{
  padding:120px 0 72px;
  background:radial-gradient(ellipse at 50% 0%,rgba(21,191,88,0.04) 0%,transparent 60%);
  border-bottom:1px solid var(--subtle);text-align:center;
}
.page-hero .pg-label{
  display:inline-block;background:rgba(21,191,88,0.07);border:1px solid var(--border-brand);
  border-radius:100px;padding:5px 18px;font-size:0.7rem;color:var(--brand);
  font-weight:600;letter-spacing:0.08em;text-transform:uppercase;margin-bottom:18px;
}
.page-hero h1{margin-bottom:16px}
.page-hero p{max-width:560px;margin:0 auto;font-size:1rem}
/* inner sections (not homepage) need nav offset */
.inner-body .sec{padding-top:100px}

/* ═══════════════════════════════════════════
   INNER PAGE COMPONENTS
   ═══════════════════════════════════════════ */
/* checklist */
.checklist{display:flex;flex-direction:column;gap:10px}
.check-item{
  display:flex;align-items:flex-start;gap:12px;
  padding:13px 17px;background:rgba(21,191,88,0.04);
  border:1px solid rgba(21,191,88,0.1);border-radius:8px;font-size:0.87rem;color:var(--text);
}
.check-item .check{color:var(--brand);flex-shrink:0}
.check-item > span:not(.check){flex:1;min-width:0;line-height:1.5;}
.check-item.warn{background:rgba(217,65,65,0.04);border-color:rgba(217,65,65,0.12)}
.check-item.warn .check{color:var(--red)}
/* two col grid */
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
/* feature list (inner pages) */
.feature-list{display:flex;flex-direction:column;gap:10px}
.feature-item{
  display:flex;align-items:flex-start;gap:14px;padding:16px 20px;
  background:var(--bg-card);border:1px solid var(--subtle);border-radius:10px;
  transition:border-color var(--t);
}
.feature-item:hover{border-color:var(--border-brand)}
.feature-item .fi-icon{
  width:32px;height:32px;flex-shrink:0;background:rgba(21,191,88,0.08);
  border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1rem;color:var(--brand);
}
.feature-item h4{color:var(--text);margin-bottom:3px;font-size:0.95rem}
.feature-item p{font-size:0.85rem;margin:0}
.social-links{display:flex;gap:10px;margin-top:10px;flex-wrap:wrap}
.social-btn{
  display:flex;align-items:center;justify-content:center;
  width:44px;height:44px;border-radius:50%;
  text-decoration:none;transition:transform .2s,opacity .15s;flex-shrink:0;
}
.social-btn:hover{transform:translateY(-2px);opacity:0.82}
/* cards grid */
.cards-grid{display:grid;gap:20px}
.cards-grid-3{grid-template-columns:repeat(3,1fr)}
.cards-grid-2{grid-template-columns:repeat(2,1fr)}
.card{
  background:var(--bg-card);border:1px solid var(--subtle);border-radius:var(--r);
  padding:28px 26px;transition:border-color var(--t),transform var(--t);
}
.card:hover{border-color:var(--border-brand);transform:translateY(-2px)}
.card-icon{
  width:46px;height:46px;background:rgba(21,191,88,0.08);border-radius:10px;
  display:flex;align-items:center;justify-content:center;font-size:1.3rem;margin-bottom:16px;
}
.card-icon.red{background:rgba(217,65,65,0.08)}
.card h3{color:var(--text);margin-bottom:10px;font-size:1rem}
.card p{font-size:0.87rem;margin:0}
.card .step-number{
  width:34px;height:34px;background:var(--brand);color:var(--bg);border-radius:50%;
  display:flex;align-items:center;justify-content:center;font-weight:800;font-size:0.9rem;
  margin-bottom:16px;font-family:'Poppins',sans-serif;
}
/* warning box */
.warning-box{
  background:rgba(217,65,65,0.06);border:1px solid rgba(217,65,65,0.2);
  border-radius:var(--r);padding:24px 28px;
}
.warning-box h3{color:var(--red);margin-bottom:12px}
.warning-box p{font-size:0.87rem;margin-bottom:10px}
.warning-box ul li{display:flex;align-items:flex-start;gap:10px;font-size:0.87rem;color:var(--muted);padding:5px 0}
.warning-box ul li::before{content:'✗';color:var(--red);flex-shrink:0}
/* contact form */
.contact-form{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r);padding:32px}
.form-group{margin-bottom:18px}
.form-group label{display:block;font-size:0.82rem;color:var(--muted);margin-bottom:7px;font-weight:500}
.form-group input,.form-group textarea,.form-group select{
  width:100%;background:rgba(255,255,255,0.03);border:1px solid var(--subtle);
  border-radius:8px;padding:11px 15px;color:var(--text);font-family:'Inter',sans-serif;
  font-size:0.88rem;transition:border-color var(--t);outline:none;
}
.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--brand)}
.form-group textarea{resize:vertical;min-height:110px}
.form-group select option{background:var(--bg2)}
/* rg grid */
.rg-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.rg-card{background:var(--bg-card);border:1px solid var(--subtle);border-radius:var(--r);padding:24px;text-align:center;transition:border-color var(--t)}
.rg-card:hover{border-color:var(--border-brand)}
.rg-card .rg-icon{font-size:1.8rem;margin-bottom:12px;display:flex;justify-content:center;color:var(--brand);}
.rg-card h4{color:var(--text);margin-bottom:8px;font-size:0.95rem}
.rg-card p{font-size:0.82rem;margin:0}
/* legal */
.legal-content{max-width:760px;margin:0 auto;padding:72px 24px}
.legal-content h2{color:var(--text);font-size:1.25rem;margin:36px 0 12px}
.legal-content h3{color:var(--brand);font-size:0.95rem;margin:22px 0 8px;font-weight:600}
.legal-content p{font-size:0.9rem;margin-bottom:14px}
.legal-content ul li{font-size:0.9rem;color:var(--muted);padding:5px 0 5px 20px;position:relative}
.legal-content ul li::before{content:'—';position:absolute;left:0;color:var(--brand)}
/* domain code (inline) */
.domain-code{
  display:inline-block;background:rgba(30,201,151,0.07);border:1px solid rgba(30,201,151,0.18);
  color:var(--teal);font-family:monospace;padding:3px 9px;border-radius:5px;font-size:0.84rem;
}
/* alert bar (inner pages) */
.alert-bar{background:rgba(217,65,65,0.07);border-bottom:1px solid rgba(217,65,65,0.2);padding:13px 0}
.alert-bar .container{display:flex;align-items:center;gap:16px;flex-wrap:wrap;justify-content:center}
.alert-bar p{color:var(--text);font-size:0.85rem;margin:0}
.alert-bar p strong{color:var(--red)}
.btn-alert-primary{
  background:var(--red);color:#fff;padding:6px 14px;border-radius:6px;
  font-size:0.78rem;font-weight:700;cursor:pointer;transition:var(--t);border:none;font-family:inherit;
}
.btn-alert-primary:hover{background:#c23030}
/* section header (inner pages) */
.section-header{text-align:center;max-width:700px;margin:0 auto 56px}
.section-header .label{
  display:inline-block;background:rgba(21,191,88,0.07);border:1px solid var(--border-brand);
  border-radius:100px;padding:5px 18px;font-size:0.72rem;color:var(--brand);
  font-weight:600;letter-spacing:0.08em;text-transform:uppercase;margin-bottom:18px;
}
.section-header h2{margin-bottom:16px}
.label{
  display:inline-block;background:rgba(21,191,88,0.07);border:1px solid var(--border-brand);
  border-radius:100px;padding:5px 18px;font-size:0.72rem;color:var(--brand);
  font-weight:600;letter-spacing:0.08em;text-transform:uppercase;margin-bottom:18px;
}
/* section (inner pages - not editorial) */
.section{padding:80px 0}
.section-alt{background:var(--bg2)}
/* timeline */
.timeline{display:flex;flex-direction:column;gap:0}
.timeline-item{display:flex;gap:20px;padding-bottom:28px;position:relative}
.timeline-item::before{content:'';position:absolute;left:19px;top:40px;bottom:0;width:2px;background:var(--subtle)}
.timeline-item:last-child::before{display:none}
.timeline-dot{width:40px;height:40px;border-radius:50%;background:var(--bg-card);border:2px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0}
.timeline-dot.active{border-color:var(--brand);background:rgba(21,191,88,0.08)}
.timeline-body h4{color:var(--text);margin-bottom:4px;font-size:0.95rem}
.timeline-body p{font-size:0.85rem;margin:0}
.timeline-date{font-size:0.73rem;color:var(--brand);font-weight:600;margin-bottom:4px}
/* cert info card */
.cert-info-card{background:var(--bg-card);border:1px solid var(--border-brand);border-radius:var(--r);padding:32px;box-shadow:var(--glow)}
.cert-info-card .cert-header{display:flex;align-items:center;gap:16px;padding-bottom:22px;border-bottom:1px solid var(--subtle);margin-bottom:22px}
.cert-info-card .cert-header .big-icon{font-size:2.2rem}
/* download layout (inner pages) */
.download-layout{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.download-buttons{display:flex;flex-direction:column;gap:14px;margin:28px 0}
.app-store-btn{display:flex;align-items:center;gap:16px;background:var(--bg-card);border:1.5px solid var(--border);border-radius:var(--r);padding:18px 24px;cursor:pointer;transition:var(--t)}
.app-store-btn:hover{border-color:var(--brand);box-shadow:var(--glow);transform:translateX(4px)}
.app-store-btn .os-big{display:flex;align-items:center;justify-content:center;width:40px;flex-shrink:0}
.app-store-btn .os-text small{color:var(--muted);font-size:0.73rem;display:block}
.app-store-btn .os-text strong{font-size:1.05rem;color:var(--text)}
.download-disclaimer{font-size:0.78rem;color:var(--muted);font-style:italic;margin-top:10px}
.qr-box{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r);padding:28px;display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}
.qr-placeholder{width:140px;height:140px;background:rgba(255,255,255,0.03);border:2px dashed var(--border);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:3rem}

/* ═══════════════════════════════════════════
   RESPONSIVE
   ═══════════════════════════════════════════ */
@media(max-width:1024px){
  .split-ed{grid-template-columns:1fr;gap:48px}
  .footer-top{grid-template-columns:1fr 1fr;gap:32px}
  .cards-grid-3{grid-template-columns:1fr 1fr}
  .rg-grid{grid-template-columns:1fr 1fr}
  .two-col{grid-template-columns:1fr;gap:32px}
  .download-layout{grid-template-columns:1fr}
}
@media(max-width:768px){
  .menu-overlay{padding:80px 32px 40px}
  .hero-ed{padding:120px 24px 80px}
  .hero-ed h1{font-size:clamp(2.2rem,8vw,3rem)}
  .sec{padding:72px 0}
  .sec.sec-alt{padding:72px 0}
  .step-ed{grid-template-columns:60px 1fr;gap:20px}
  .step-num{font-size:2.5rem}
  .footer-top{grid-template-columns:1fr;gap:28px}
  .cards-grid-3{grid-template-columns:1fr}
  .cards-grid-2{grid-template-columns:1fr}
  .rg-grid{grid-template-columns:1fr}
  .hero-actions{flex-direction:column;align-items:center}
  .btn-primary,.btn-secondary{width:100%;max-width:340px;justify-content:center}
  .history-typo .ht-row{flex-wrap:wrap;gap:8px}
  .history-typo .ht-note{margin-left:0;width:100%}
  .hero-deco{display:none}
  .nav-cta{font-size:0.73rem;padding:6px 12px;border-radius:6px;}
  .nav-right{gap:10px;}
  .section{padding:56px 0}
}

/* Utilities */
.hidden{display:none!important}
.divider{border:none;border-top:1px solid var(--subtle);margin:48px 0}
.text-brand{color:var(--brand)}
.text-center{text-align:center}
.mt-8{margin-top:32px}
