/* ══════════════════════════════════════════════
   KINDER SHIELD — Marketing Website
   Shared stylesheet (all pages)
   Tokens sourced from the app's shared design system
══════════════════════════════════════════════ */
:root{
  /* Parent palette */
  --p-bg:#F7F6F2; --p-surface:#FFFFFF; --p-accent:#4F6AF0; --p-accent-lt:#EEF1FD;
  --p-warn:#FF6B6B; --p-warn-lt:#FFF0F0; --p-ok:#4CAF7D; --p-ok-lt:#EBF7F1;
  --p-text:#1C1C2E; --p-text2:#7A7A92; --p-border:#EBEBF0;
  /* Kid palette */
  --k-yellow:#FBBF24; --k-orange:#F97316; --k-pink:#EC4899; --k-purple:#A855F7;
  --k-blue:#3B82F6; --k-green:#22C55E; --k-text:#1E1B4B;
  /* Site */
  --navy:#12122A; --navy2:#1C1C2E; --radius:20px;
  --shadow-sm:0 2px 10px rgba(28,28,46,.06);
  --shadow-md:0 12px 32px rgba(28,28,46,.10);
  --shadow-lg:0 24px 64px rgba(28,28,46,.18);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{
  font-family:'Inter',system-ui,sans-serif;
  background:var(--p-bg); color:var(--p-text);
  line-height:1.6; overflow-x:hidden;
}
h1,h2,h3,h4{font-family:'Nunito',sans-serif;line-height:1.15;}
img{max-width:100%;}
a{color:inherit;text-decoration:none;}
.container{max-width:1140px;margin:0 auto;padding:0 24px;}
section{padding:96px 0;}
section.tight{padding:64px 0;}
.eyebrow{
  display:inline-block;font-size:13px;font-weight:800;letter-spacing:.14em;
  text-transform:uppercase;color:var(--p-accent);
  background:var(--p-accent-lt);padding:6px 14px;border-radius:99px;margin-bottom:16px;
}
.section-head{text-align:center;max-width:680px;margin:0 auto 56px;}
.section-head h2{font-size:clamp(28px,4vw,42px);font-weight:900;margin-bottom:14px;}
.section-head p{color:var(--p-text2);font-size:17px;}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:'Nunito',sans-serif;font-weight:800;font-size:16px;
  padding:14px 28px;border-radius:14px;border:none;cursor:pointer;
  transition:transform .18s,box-shadow .18s;
}
.btn:hover{transform:translateY(-2px);}
.btn-primary{
  background:var(--p-accent);color:#fff;
  box-shadow:0 8px 24px rgba(79,106,240,.35);
}
.btn-primary:hover{box-shadow:0 12px 32px rgba(79,106,240,.45);}
.btn-ghost{background:var(--p-surface);color:var(--p-text);border:1.5px solid var(--p-border);box-shadow:var(--shadow-sm);}
.btn-grad{
  background:linear-gradient(135deg,var(--k-purple),var(--k-blue));color:#fff;
  box-shadow:0 10px 28px rgba(168,85,247,.35);
}
.btn-lg{padding:17px 36px;font-size:17px;border-radius:16px;}
.link-more{
  display:inline-flex;align-items:center;gap:6px;font-family:'Nunito',sans-serif;
  font-weight:800;color:var(--p-accent);font-size:16px;transition:gap .18s;
}
.link-more:hover{gap:11px;}

/* Scroll reveal */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease;}
.reveal.visible{opacity:1;transform:none;}

/* ── Nav ────────────────────────────────────── */
.nav{
  position:fixed;top:0;left:0;right:0;z-index:100;
  background:rgba(247,246,242,.85);backdrop-filter:blur(12px);
  border-bottom:1px solid rgba(235,235,240,.8);
  transition:box-shadow .2s;
}
.nav.scrolled{box-shadow:var(--shadow-sm);}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:72px;}
.logo{display:flex;align-items:center;gap:10px;font-family:'Nunito',sans-serif;font-weight:900;font-size:22px;}
.logo .shield{
  width:38px;height:38px;border-radius:12px;
  background:linear-gradient(135deg,var(--p-accent),#8B9EF8);
  display:flex;align-items:center;justify-content:center;color:#fff;font-size:19px;
  box-shadow:0 4px 12px rgba(79,106,240,.35);
}
.logo .shield-word{color:var(--p-text);}
.logo .shield-word span{color:var(--p-accent);}
.nav-links{display:flex;align-items:center;gap:28px;font-size:15px;font-weight:600;}
.nav-links a{color:var(--p-text2);transition:color .15s;}
.nav-links a:hover{color:var(--p-accent);}
.nav-links a.active{color:var(--p-accent);}
.nav-cta{display:flex;align-items:center;gap:14px;}
.nav-cta .btn{padding:10px 22px;font-size:14px;}
.hamburger{display:none;background:none;border:none;cursor:pointer;flex-direction:column;gap:5px;padding:6px;}
.hamburger span{width:24px;height:2.5px;background:var(--p-text);border-radius:2px;transition:.25s;}
.mobile-menu{display:none;}
@media(max-width:1020px){
  .nav-links{gap:18px;font-size:14px;}
}
@media(max-width:920px){
  .nav-links,.nav-cta .btn-ghost{display:none;}
  .hamburger{display:flex;}
  .mobile-menu{
    display:none;flex-direction:column;gap:4px;padding:12px 24px 20px;
    background:#fff;border-bottom:1px solid var(--p-border);
  }
  .mobile-menu.open{display:flex;}
  .mobile-menu a{padding:12px 4px;font-weight:600;color:var(--p-text);border-bottom:1px solid var(--p-border);}
  .mobile-menu .btn{margin-top:12px;border-bottom:none;}
}

/* ── Hero ───────────────────────────────────── */
.hero{
  position:relative;padding:150px 0 90px;overflow:hidden;
  background:linear-gradient(170deg,#F7F6F2 0%,#EEF1FD 55%,#FFF8E7 130%);
}
.hero-bubble{position:absolute;border-radius:50%;opacity:.14;pointer-events:none;animation:float 7s ease-in-out infinite;}
.hb1{width:220px;height:220px;background:var(--k-purple);top:-60px;right:8%;}
.hb2{width:130px;height:130px;background:var(--k-yellow);top:40%;left:-40px;animation-delay:1.2s;}
.hb3{width:90px;height:90px;background:var(--k-blue);bottom:10%;right:-20px;animation-delay:2s;}
.hb4{width:60px;height:60px;background:var(--k-pink);top:22%;left:38%;animation-delay:.6s;}
@keyframes float{0%,100%{transform:translateY(0);}50%{transform:translateY(-16px);}}
.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:48px;align-items:center;}
.hero h1{font-size:clamp(36px,5.4vw,60px);font-weight:900;letter-spacing:-.01em;margin-bottom:20px;}
.hero h1 .grad{
  background:linear-gradient(90deg,var(--k-orange),var(--k-pink),var(--k-purple));
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
.hero-sub{font-size:18px;color:var(--p-text2);max-width:520px;margin-bottom:32px;}
.hero-ctas{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:28px;}
.store-badges{display:flex;gap:12px;align-items:center;}
.store-badge{
  display:flex;align-items:center;gap:10px;background:var(--navy2);color:#fff;
  padding:10px 18px;border-radius:14px;transition:transform .18s;
}
.store-badge:hover{transform:translateY(-2px);}
.store-badge .ico{font-size:22px;}
.store-badge small{display:block;font-size:10px;opacity:.7;line-height:1.2;}
.store-badge b{font-size:14px;font-family:'Nunito',sans-serif;}
.hero-trust{display:flex;gap:26px;flex-wrap:wrap;margin-top:30px;font-size:14px;color:var(--p-text2);font-weight:600;}
.hero-trust span{display:flex;align-items:center;gap:7px;}
.hero-trust .tick{color:var(--p-ok);font-weight:800;}

/* ── Page hero (sub-pages) ──────────────────── */
.page-hero{
  position:relative;padding:150px 0 64px;overflow:hidden;text-align:center;
  background:linear-gradient(170deg,#F7F6F2 0%,#EEF1FD 55%,#FFF8E7 130%);
}
.page-hero .hero-bubble{opacity:.10;}
.page-hero h1{font-size:clamp(32px,4.6vw,52px);font-weight:900;margin-bottom:14px;letter-spacing:-.01em;}
.page-hero h1 .grad{
  background:linear-gradient(90deg,var(--k-orange),var(--k-pink),var(--k-purple));
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
.page-hero > .container > p{color:var(--p-text2);font-size:18px;max-width:640px;margin:0 auto;}

/* Hero phone mockups */
.hero-phones{position:relative;display:flex;justify-content:center;min-height:560px;}
.phone{
  width:250px;height:510px;border-radius:38px;background:#1a1a1a;flex-shrink:0;
  box-shadow:0 0 0 2px #333,var(--shadow-lg);position:relative;
}
.phone::before{
  content:'';position:absolute;top:11px;left:50%;transform:translateX(-50%);
  width:64px;height:5px;background:#333;border-radius:3px;z-index:99;
}
.phone .screen{position:absolute;inset:22px 5px 5px;border-radius:30px;overflow:hidden;}
.phone-parent{position:relative;z-index:2;animation:float 6s ease-in-out infinite;}
.phone-kid{position:absolute;z-index:1;right:-6%;top:56px;transform:rotate(6deg);animation:float 7s ease-in-out 1s infinite;}
@media(max-width:920px){.hero-phones{min-height:540px;}.phone-kid{right:0;}}
@media(max-width:520px){
  .phone{width:210px;height:430px;}
  .phone-kid{display:none;}
  .hero-phones{min-height:440px;}
}

/* Parent mockup screen */
.pscr{background:var(--p-bg);height:100%;display:flex;flex-direction:column;font-size:10px;}
.pscr .hd{padding:14px 12px 6px;display:flex;justify-content:space-between;align-items:center;}
.pscr .greet{font-family:'Nunito',sans-serif;font-size:15px;font-weight:800;color:var(--p-text);line-height:1.25;}
.pscr .greet span{color:var(--p-accent);}
.pscr .greet-sub{font-size:9px;color:var(--p-text2);}
.pscr .avatar{
  width:30px;height:30px;border-radius:50%;flex-shrink:0;
  background:linear-gradient(135deg,var(--p-accent),#8B9EF8);
  color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center;font-size:12px;
}
.pscr .body{flex:1;padding:8px 10px;display:flex;flex-direction:column;gap:8px;overflow:hidden;}
.chips{display:flex;gap:8px;}
.chip{display:flex;flex-direction:column;align-items:center;gap:3px;}
.chip .av{
  width:36px;height:36px;border-radius:50%;font-size:16px;
  display:flex;align-items:center;justify-content:center;
}
.chip .av.sel{border:2px solid var(--p-accent);}
.av.a1{background:#EEF1FD;}.av.a2{background:#FFF5E4;}.av.a3{background:#F0FBF5;}
.chip small{font-size:8px;color:var(--p-text2);font-weight:700;}
.mini-alert{
  background:var(--p-warn-lt);border-left:3px solid var(--p-warn);border-radius:10px;
  padding:7px 9px;display:flex;gap:8px;align-items:center;
}
.mini-alert b{font-size:9.5px;color:var(--p-text);display:block;}
.mini-alert small{font-size:8px;color:var(--p-text2);}
.mini-card{background:var(--p-surface);border:1px solid var(--p-border);border-radius:12px;padding:9px 10px;}
.mini-card .ttl{font-size:8px;font-weight:800;color:var(--p-text2);text-transform:uppercase;letter-spacing:.07em;margin-bottom:6px;}
.mini-row{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px;}
.mini-big{font-family:'Nunito',sans-serif;font-size:20px;font-weight:900;color:var(--p-text);}
.mini-lab{font-size:8px;color:var(--p-text2);}
.mini-lim{font-family:'Nunito',sans-serif;font-size:14px;font-weight:800;color:var(--p-accent);}
.bar{height:6px;background:var(--p-border);border-radius:3px;overflow:hidden;}
.bar i{display:block;height:100%;border-radius:3px;background:linear-gradient(90deg,var(--p-warn),#FFB347);width:88%;}
.bar i.blue{background:linear-gradient(90deg,var(--p-accent),#8B9EF8);width:63%;}
.ctrl-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px;}
.ctrl{
  background:var(--p-surface);border:1px solid var(--p-border);border-radius:10px;
  padding:7px 8px;display:flex;align-items:center;gap:6px;
}
.ctrl .ci{
  width:22px;height:22px;border-radius:7px;font-size:11px;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
}
.ci.blue{background:var(--p-accent-lt);}.ci.red{background:var(--p-warn-lt);}
.ci.green{background:var(--p-ok-lt);}.ci.purple{background:#F5EEFF;}
.ctrl b{font-size:8.5px;color:var(--p-text);display:block;line-height:1.2;}
.ctrl small{font-size:7px;color:var(--p-text2);}
.pscr .nav-bar{
  display:flex;justify-content:space-around;padding:8px 6px 10px;
  background:var(--p-surface);border-top:1px solid var(--p-border);
}
.pscr .nav-bar div{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:8px;color:var(--p-text2);font-weight:700;}
.pscr .nav-bar div.on{color:var(--p-accent);}
.pscr .nav-bar i{font-style:normal;font-size:14px;}

/* Kid mockup screen */
.kscr{height:100%;position:relative;overflow:hidden;display:flex;flex-direction:column;}
.kscr .sky{position:absolute;inset:0;background:linear-gradient(160deg,#FFF8E7 0%,#E8F4FF 60%,#EDE9FE 100%);z-index:0;}
.kscr .bub{position:absolute;border-radius:50%;opacity:.15;animation:float 6s ease-in-out infinite;}
.kb1{width:80px;height:80px;background:var(--k-purple);top:-16px;right:-16px;}
.kb2{width:56px;height:56px;background:var(--k-blue);top:70px;left:-16px;animation-delay:1s;}
.kb3{width:40px;height:40px;background:var(--k-yellow);bottom:150px;right:8px;animation-delay:2s;}
.kscr .hd{position:relative;z-index:2;text-align:center;padding:16px 12px 2px;}
.kscr .hello{
  font-family:'Nunito',sans-serif;font-size:17px;font-weight:900;line-height:1.2;
  background:linear-gradient(90deg,var(--k-orange),var(--k-pink),var(--k-purple));
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
.kscr .hello-sub{font-size:8.5px;color:var(--k-text);opacity:.6;font-weight:700;}
.kscr .char{position:relative;z-index:2;text-align:center;font-size:40px;animation:bounce 2s ease-in-out infinite;}
@keyframes bounce{0%,100%{transform:translateY(0) scale(1);}50%{transform:translateY(-5px) scale(1.05);}}
.kscr .xp{
  position:relative;z-index:2;margin:0 12px 6px;background:rgba(255,255,255,.72);
  border:1.5px solid rgba(255,255,255,.9);border-radius:14px;padding:6px 10px;
  display:flex;align-items:center;gap:7px;backdrop-filter:blur(6px);
}
.kscr .xp .st{font-size:9px;}
.kscr .xp b{font-size:8.5px;color:var(--k-text);font-weight:900;white-space:nowrap;}
.kscr .xp .bar{flex:1;height:7px;background:rgba(0,0,0,.08);}
.kscr .xp .bar i{background:linear-gradient(90deg,var(--k-yellow),var(--k-orange));width:68%;}
.kscr .xp .val{font-size:8px;font-weight:900;color:var(--k-orange);white-space:nowrap;}
.kscr .body{position:relative;z-index:2;flex:1;padding:4px 10px 0;overflow:hidden;}
.kscr .sec-ttl{font-size:8px;font-weight:900;color:var(--k-text);opacity:.5;text-transform:uppercase;letter-spacing:.09em;margin-bottom:6px;}
.kgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:9px;}
.kapp{display:flex;flex-direction:column;align-items:center;gap:3px;}
.kapp .ic{
  width:40px;height:40px;border-radius:14px;font-size:19px;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 3px 10px rgba(0,0,0,.12);
}
.ic.c1{background:linear-gradient(135deg,#FBBF24,#F97316);}
.ic.c2{background:linear-gradient(135deg,#34D399,#059669);}
.ic.c3{background:linear-gradient(135deg,#A78BFA,#7C3AED);}
.ic.c4{background:linear-gradient(135deg,#60A5FA,#3B82F6);}
.ic.c5{background:linear-gradient(135deg,#F472B6,#EC4899);}
.ic.c6{background:linear-gradient(135deg,#FB923C,#EF4444);}
.ic.c7{background:linear-gradient(135deg,#4ADE80,#16A34A);}
.ic.c8{background:linear-gradient(135deg,#FCD34D,#F59E0B);}
.kapp small{font-size:7.5px;font-weight:800;color:var(--k-text);}
.ktime{
  background:linear-gradient(135deg,var(--k-blue),var(--k-purple));border-radius:14px;
  padding:9px 11px;display:flex;align-items:center;gap:8px;
  box-shadow:0 6px 18px rgba(59,130,246,.3);
}
.ktime .ic{font-size:20px;}
.ktime b{font-family:'Nunito',sans-serif;font-size:13px;font-weight:900;color:#fff;display:block;line-height:1.2;}
.ktime small{font-size:8px;color:rgba(255,255,255,.75);font-weight:700;}
.ktime .dots{margin-left:auto;display:flex;gap:3px;}
.ktime .dots i{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.5);}
.ktime .dots i.on{background:#fff;box-shadow:0 0 5px #fff;}
.kscr .nav-bar{
  position:relative;z-index:2;display:flex;justify-content:space-around;
  padding:7px 6px 10px;background:rgba(255,255,255,.85);
  backdrop-filter:blur(10px);border-top:1.5px solid rgba(255,255,255,.9);
}
.kscr .nav-bar div{display:flex;flex-direction:column;align-items:center;gap:2px;}
.kscr .nav-bar .nb{
  width:30px;height:30px;border-radius:50%;font-size:14px;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 2px 8px rgba(0,0,0,.1);
}
.nb.n1{background:linear-gradient(135deg,var(--k-yellow),var(--k-orange));}
.nb.n2{background:linear-gradient(135deg,#A78BFA,#7C3AED);}
.nb.n3{background:linear-gradient(135deg,#34D399,#059669);}
.nb.n4{background:linear-gradient(135deg,#60A5FA,#3B82F6);}
.kscr .nav-bar small{font-size:7px;font-weight:900;color:var(--k-text);opacity:.6;}

/* ── Stats strip ────────────────────────────── */
.stats{padding:0;margin-top:-46px;position:relative;z-index:5;}
.stats-card{
  background:var(--p-surface);border:1px solid var(--p-border);border-radius:24px;
  box-shadow:var(--shadow-md);display:grid;grid-template-columns:repeat(4,1fr);
  padding:30px 20px;text-align:center;gap:16px;
}
.stats-card b{font-family:'Nunito',sans-serif;font-size:30px;font-weight:900;display:block;color:var(--p-text);}
.stats-card b .hl{color:var(--p-accent);}
.stats-card small{font-size:13px;color:var(--p-text2);font-weight:600;}
@media(max-width:720px){.stats-card{grid-template-columns:repeat(2,1fr);}}

/* ── Two apps section ───────────────────────── */
.duo{background:#fff;}
.duo-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;}
@media(max-width:860px){.duo-grid{grid-template-columns:1fr;}}
.duo-card{
  border-radius:28px;padding:44px 40px;position:relative;overflow:hidden;
  border:1px solid var(--p-border);
}
.duo-card.parent{background:linear-gradient(160deg,#F7F6F2,#EEF1FD);}
.duo-card.kid{background:linear-gradient(160deg,#FFF8E7,#EDE9FE);}
.duo-card .tag{
  display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:800;
  padding:7px 16px;border-radius:99px;margin-bottom:20px;
}
.duo-card.parent .tag{background:var(--p-accent);color:#fff;}
.duo-card.kid .tag{background:linear-gradient(90deg,var(--k-orange),var(--k-pink));color:#fff;}
.duo-card h3{font-size:26px;font-weight:900;margin-bottom:12px;}
.duo-card>p{color:var(--p-text2);font-size:15px;margin-bottom:24px;}
.duo-list{list-style:none;display:flex;flex-direction:column;gap:12px;}
.duo-list li{display:flex;gap:12px;align-items:flex-start;font-size:15px;font-weight:600;}
.duo-list .dot{
  width:26px;height:26px;border-radius:9px;flex-shrink:0;font-size:13px;
  display:flex;align-items:center;justify-content:center;margin-top:1px;
}
.duo-card.parent .dot{background:var(--p-accent-lt);}
.duo-card.kid .dot{background:rgba(255,255,255,.8);}
.duo-list small{display:block;font-weight:500;color:var(--p-text2);font-size:13px;}
.duo-deco{position:absolute;font-size:120px;opacity:.08;right:-16px;bottom:-24px;pointer-events:none;}

/* ── Features ───────────────────────────────── */
.features-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
@media(max-width:1000px){.features-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:560px){.features-grid{grid-template-columns:1fr;}}
.feat{
  background:var(--p-surface);border:1px solid var(--p-border);border-radius:var(--radius);
  padding:28px 24px;transition:transform .2s,box-shadow .2s;
}
.feat:hover{transform:translateY(-5px);box-shadow:var(--shadow-md);}
.feat .ic{
  width:52px;height:52px;border-radius:16px;font-size:24px;margin-bottom:18px;
  display:flex;align-items:center;justify-content:center;
}
.feat h4{font-size:17px;font-weight:800;margin-bottom:8px;}
.feat p{font-size:14px;color:var(--p-text2);}

/* Detailed feature cards (features page) */
.features-detail{display:grid;grid-template-columns:1fr 1fr;gap:24px;}
@media(max-width:860px){.features-detail{grid-template-columns:1fr;}}
.feat-lg{
  background:var(--p-surface);border:1px solid var(--p-border);border-radius:24px;
  padding:36px 32px;transition:transform .2s,box-shadow .2s;
}
.feat-lg:hover{transform:translateY(-5px);box-shadow:var(--shadow-md);}
.feat-lg .ic{
  width:56px;height:56px;border-radius:18px;font-size:26px;margin-bottom:18px;
  display:flex;align-items:center;justify-content:center;
}
.feat-lg h3{font-size:21px;font-weight:900;margin-bottom:10px;}
.feat-lg>p{color:var(--p-text2);font-size:15px;margin-bottom:16px;}
.feat-lg ul{list-style:none;display:flex;flex-direction:column;gap:9px;}
.feat-lg li{display:flex;gap:9px;font-size:14px;font-weight:600;color:var(--p-text);align-items:flex-start;}
.feat-lg li::before{content:'✓';color:var(--p-ok);font-weight:900;flex-shrink:0;}

/* ── Steps ──────────────────────────────────── */
.steps{display:flex;align-items:stretch;gap:18px;justify-content:center;}
.step{
  flex:1;max-width:300px;background:var(--p-bg);border:1px solid var(--p-border);
  border-radius:24px;padding:36px 28px;text-align:center;position:relative;
  transition:transform .2s,box-shadow .2s;
}
.step:hover{transform:translateY(-5px);box-shadow:var(--shadow-md);}
.step-num{
  position:absolute;top:-16px;left:50%;transform:translateX(-50%);
  width:34px;height:34px;border-radius:50%;background:var(--p-accent);color:#fff;
  font-family:'Nunito',sans-serif;font-weight:900;font-size:16px;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 6px 16px rgba(79,106,240,.4);
}
.step-ico{font-size:42px;margin-bottom:14px;}
.step h4{font-size:19px;font-weight:800;margin-bottom:8px;}
.step p{font-size:14px;color:var(--p-text2);}
.step-arrow{display:flex;align-items:center;font-size:26px;color:var(--p-accent);font-weight:900;}
@media(max-width:820px){
  .steps{flex-direction:column;align-items:center;}
  .step{max-width:400px;width:100%;}
  .step-arrow{transform:rotate(90deg);}
}

/* Checklist rows (how-it-works details) */
.checklist{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:14px;}
.check-row{
  background:#fff;border:1px solid var(--p-border);border-radius:18px;
  padding:20px 24px;display:flex;gap:16px;align-items:flex-start;
  transition:transform .2s,box-shadow .2s;
}
.check-row:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);}
.check-row .ic{
  width:44px;height:44px;border-radius:14px;flex-shrink:0;font-size:21px;
  display:flex;align-items:center;justify-content:center;background:var(--p-accent-lt);
}
.check-row b{font-family:'Nunito',sans-serif;font-size:16px;display:block;margin-bottom:3px;}
.check-row p{font-size:14px;color:var(--p-text2);}

/* ── Safety ─────────────────────────────────── */
.safety{background:linear-gradient(160deg,var(--navy) 0%,var(--navy2) 60%,#23234A 130%);color:#fff;}
.safety-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:56px;align-items:center;}
@media(max-width:860px){.safety-grid{grid-template-columns:1fr;}}
.safety h2{font-size:clamp(28px,4vw,42px);font-weight:900;margin-bottom:18px;}
.safety > .container > div > p{color:rgba(255,255,255,.72);font-size:17px;max-width:480px;margin-bottom:30px;}
.safety-list{list-style:none;display:flex;flex-direction:column;gap:18px;}
.safety-list li{display:flex;gap:14px;align-items:flex-start;}
.safety-list li > span:first-child{
  width:40px;height:40px;border-radius:12px;flex-shrink:0;font-size:19px;
  background:rgba(79,106,240,.22);display:flex;align-items:center;justify-content:center;
}
.safety-list b{font-size:16px;font-weight:700;display:block;font-family:'Nunito',sans-serif;}
.safety-list small{font-size:13.5px;color:rgba(255,255,255,.6);}
.safety-badge-card{
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);
  border-radius:28px;padding:40px 36px;backdrop-filter:blur(8px);
  box-shadow:0 24px 64px rgba(0,0,0,.3);
}
.big-shield{font-size:52px;text-align:center;margin-bottom:12px;}
.safety-badge-card h3{text-align:center;font-size:22px;font-weight:900;margin-bottom:24px;}
.promise-row{display:flex;align-items:center;gap:10px;font-size:15px;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.08);}
.promise-row:last-of-type{border-bottom:none;}
.promise-row .tick{color:var(--k-green);font-weight:900;}
.safety-chips{display:flex;gap:10px;justify-content:center;margin-top:22px;flex-wrap:wrap;}
.s-chip{
  font-size:12px;font-weight:800;padding:6px 14px;border-radius:99px;
  background:rgba(79,106,240,.25);color:#C3CCFA;border:1px solid rgba(79,106,240,.4);
}

/* ── Pricing ────────────────────────────────── */
.trial-banner{
  max-width:760px;margin:0 auto 48px;background:var(--p-ok-lt);
  border:1.5px solid var(--p-ok);border-radius:18px;padding:18px 26px;
  display:flex;align-items:center;gap:14px;font-size:15px;font-weight:600;color:var(--p-text);
}
.trial-banner .ic{font-size:26px;}
.trial-banner small{display:block;font-weight:500;color:var(--p-text2);}
.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:stretch;}
@media(max-width:860px){.pricing-grid{grid-template-columns:1fr;max-width:440px;margin:0 auto;}}
.price-card{
  background:var(--p-bg);border:1px solid var(--p-border);border-radius:24px;
  padding:36px 30px;position:relative;display:flex;flex-direction:column;
  transition:transform .2s,box-shadow .2s;
}
.price-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-md);}
.price-card.featured{
  background:#fff;border:2px solid var(--p-accent);
  box-shadow:var(--shadow-md);transform:scale(1.03);
}
.price-card.featured:hover{transform:scale(1.03) translateY(-6px);}
.pop-badge{
  position:absolute;top:-13px;left:50%;transform:translateX(-50%);
  background:linear-gradient(90deg,var(--k-orange),var(--k-pink));color:#fff;
  font-size:12px;font-weight:800;padding:5px 16px;border-radius:99px;white-space:nowrap;
  font-family:'Nunito',sans-serif;
}
.price-card h4{font-size:19px;font-weight:800;margin-bottom:6px;}
.price{font-family:'Nunito',sans-serif;font-size:38px;font-weight:900;color:var(--p-text);}
.price span{font-size:16px;color:var(--p-text2);font-weight:700;}
.price-sub{font-size:13px;color:var(--p-text2);margin-bottom:22px;}
.price-card ul{list-style:none;flex:1;margin-bottom:24px;display:flex;flex-direction:column;gap:11px;}
.price-card li{display:flex;gap:10px;font-size:14.5px;font-weight:600;}
.price-card li .tick{color:var(--p-ok);font-weight:900;}
.price-card li.off{color:var(--p-text2);opacity:.6;font-weight:500;}
.price-card li.off span{color:var(--p-text2);}
.includes-strip{
  margin-top:48px;background:var(--p-surface);border:1px solid var(--p-border);
  border-radius:20px;padding:26px 32px;display:flex;flex-wrap:wrap;gap:12px 34px;
  justify-content:center;font-size:14px;font-weight:600;color:var(--p-text);
}
.includes-strip span{display:flex;align-items:center;gap:8px;}
.includes-strip .tick{color:var(--p-ok);font-weight:900;}

/* ── Testimonials ───────────────────────────── */
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
@media(max-width:860px){.testi-grid{grid-template-columns:1fr;max-width:520px;margin:0 auto;}}
.testi{
  background:#fff;border:1px solid var(--p-border);border-radius:24px;
  padding:30px 28px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:18px;
}
.testi .stars{color:var(--k-yellow);font-size:18px;letter-spacing:2px;}
.testi p{font-size:15px;color:var(--p-text);line-height:1.7;flex:1;}
.testi-person{display:flex;align-items:center;gap:12px;}
.testi-person .av{
  width:44px;height:44px;border-radius:50%;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;font-size:20px;
}
.testi-person b{font-size:15px;font-family:'Nunito',sans-serif;display:block;line-height:1.2;}
.testi-person small{font-size:12.5px;color:var(--p-text2);}

/* ── FAQ ────────────────────────────────────── */
.faq-wrap{max-width:720px;margin:0 auto;}
.faq-item{
  background:#fff;border:1px solid var(--p-border);border-radius:18px;
  margin-bottom:14px;overflow:hidden;
}
.faq-item summary{
  padding:20px 24px;cursor:pointer;font-family:'Nunito',sans-serif;
  font-weight:800;font-size:16px;display:flex;justify-content:space-between;
  align-items:center;list-style:none;color:var(--p-text);
}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary::after{content:'+';font-size:22px;color:var(--p-accent);font-weight:700;transition:transform .2s;}
.faq-item[open] summary::after{transform:rotate(45deg);}
.faq-item .faq-body{padding:0 24px 20px;color:var(--p-text2);font-size:15px;line-height:1.7;}

/* ── Final CTA ──────────────────────────────── */
.final-cta{
  background:linear-gradient(135deg,var(--k-purple) 0%,var(--p-accent) 60%,var(--k-blue) 120%);
  border-radius:32px;padding:72px 40px;text-align:center;color:#fff;
  position:relative;overflow:hidden;
}
.final-cta .fb{position:absolute;border-radius:50%;background:#fff;opacity:.12;animation:float 6s ease-in-out infinite;}
.final-cta h2{font-size:clamp(28px,4.5vw,46px);font-weight:900;margin-bottom:14px;}
.final-cta p{font-size:17px;opacity:.9;max-width:520px;margin:0 auto 32px;}
.final-cta .btn{background:#fff;color:var(--p-accent);}
.final-cta .btn:hover{box-shadow:0 12px 32px rgba(0,0,0,.25);}
.final-cta small{display:block;margin-top:16px;font-size:13px;opacity:.75;}

/* ── Footer ─────────────────────────────────── */
footer{background:var(--navy);color:rgba(255,255,255,.8);padding:64px 0 32px;margin-top:96px;}
.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:40px;margin-bottom:48px;}
@media(max-width:860px){.footer-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:520px){.footer-grid{grid-template-columns:1fr;}}
footer .logo .shield-word{color:#fff;}
footer h5{font-family:'Nunito',sans-serif;font-size:15px;font-weight:800;color:#fff;margin-bottom:16px;}
footer ul{list-style:none;display:flex;flex-direction:column;gap:10px;}
footer ul a{font-size:14px;color:rgba(255,255,255,.6);transition:color .15s;}
footer ul a:hover{color:#fff;}
.footer-tag{font-size:14px;color:rgba(255,255,255,.6);margin-top:14px;max-width:280px;line-height:1.7;}
.footer-bottom{
  border-top:1px solid rgba(255,255,255,.1);padding-top:24px;
  display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;
  font-size:13px;color:rgba(255,255,255,.45);
}
.footer-social{display:flex;gap:12px;}
.footer-social a{
  width:36px;height:36px;border-radius:10px;background:rgba(255,255,255,.08);
  display:flex;align-items:center;justify-content:center;font-size:16px;transition:background .15s;
}
.footer-social a:hover{background:var(--p-accent);}

/* ══ HTMX site additions (forms, newsletter, skeletons) ══ */

/* Newsletter band above the footer */
.newsletter-band{padding:56px 0 0;}
.news-box{
  background:var(--p-surface);border:1.5px solid var(--p-border);border-radius:var(--radius);
  box-shadow:var(--shadow-sm);padding:36px 40px;display:flex;gap:28px;align-items:center;justify-content:space-between;flex-wrap:wrap;
}
.news-box h3{font-family:'Nunito',sans-serif;font-size:21px;font-weight:800;margin-bottom:6px;}
.news-box p{color:var(--p-text2);font-size:14.5px;max-width:420px;}
.news-form{display:flex;gap:10px;flex-wrap:wrap;align-items:center;}
.news-form input[type=email]{
  border:1.5px solid var(--p-border);border-radius:12px;padding:12px 16px;font-size:15px;min-width:240px;
  font-family:'Inter',sans-serif;background:#fff;
}
.news-form input[type=email]:focus{outline:none;border-color:var(--p-accent);box-shadow:0 0 0 3px var(--p-accent-lt);}
.news-form .form-errors{width:100%;}

/* Forms (trial signup / contact) */
.form-card{
  background:var(--p-surface);border:1.5px solid var(--p-border);border-radius:var(--radius);
  box-shadow:var(--shadow-md);padding:40px;max-width:760px;margin:0 auto;
}
.form-card h3{font-family:'Nunito',sans-serif;font-size:24px;font-weight:800;margin-bottom:8px;}
.form-sub{color:var(--p-text2);font-size:15px;margin-bottom:24px;}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:20px;}
.form-grid label{grid-column:span 1;}
.form-grid label.full,.form-card label.full{grid-column:1 / -1;}
@media(max-width:640px){.form-grid{grid-template-columns:1fr;}}
.form-card label,.news-box label{
  display:flex;flex-direction:column;gap:7px;font-size:13.5px;font-weight:600;color:var(--p-text);
}
.form-card input,.form-card select,.form-card textarea{
  border:1.5px solid var(--p-border);border-radius:12px;padding:12px 14px;font-size:15px;
  font-family:'Inter',sans-serif;background:#fff;color:var(--p-text);width:100%;box-sizing:border-box;
}
.form-card textarea{min-height:120px;resize:vertical;}
.form-card input:focus,.form-card select:focus,.form-card textarea:focus{
  outline:none;border-color:var(--p-accent);box-shadow:0 0 0 3px var(--p-accent-lt);
}
.form-note{display:block;text-align:center;color:var(--p-text2);font-size:12.5px;margin-top:14px;}
.form-errors{
  background:var(--p-warn-lt);border:1.5px solid var(--p-warn);color:#C0392B;
  border-radius:12px;padding:12px 16px;font-size:14px;font-weight:600;margin-bottom:18px;
  display:flex;flex-direction:column;gap:4px;
}
.success-card{
  background:var(--p-ok-lt);border:1.5px solid var(--p-ok);border-radius:var(--radius);
  padding:36px 40px;max-width:760px;margin:0 auto;text-align:center;
  display:flex;flex-direction:column;gap:8px;
}
.success-card b{font-family:'Nunito',sans-serif;font-size:21px;font-weight:800;color:var(--p-text);}
.success-card small{color:var(--p-text2);font-size:15px;line-height:1.6;}

/* Honeypot bot trap — hidden from humans */
.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0;}

/* FAQ loading skeleton */
.faq-item.skeleton{pointer-events:none;}
.sk-line{display:block;height:14px;border-radius:7px;background:linear-gradient(90deg,#EBEBF0 25%,#F7F6F2 50%,#EBEBF0 75%);background-size:200% 100%;animation:shimmer 1.2s infinite;}
.sk-line.w60{width:60%;}
.sk-line.w75{width:75%;}
.sk-line.w90{width:90%;}
.sk-line + .sk-line{margin-top:10px;}
@keyframes shimmer{0%{background-position:200% 0;}100%{background-position:-200% 0;}}
