:root{
  /* Brand tokens from brand.md */
  --ink:#0F1115; /* deep dark */
  --paper:#F8FAFC; /* light */
  --graphite:#1A1D23; /* dark panel */
  --text-primary:#ffffff;
  --text-secondary:#a0a9c0;
  --text-muted:#e2e8f0;
  /* Primary & accent gradients */
  --grad-primary-start:#4facfe; /* -> */
  --grad-primary-end:#00f2fe;
  --grad-purple-start:#667eea; --grad-purple-end:#764ba2;
  --grad-pink-start:#f093fb; --grad-pink-end:#f5576c;
  /* Aurora anchors */
  --aurora-1:#0a0a0f; --aurora-2:#1a1a2e; --aurora-3:#16213e; --aurora-4:#0f1630;
}

/* Device-like frame polish for images on light sections */
.section.light .frame{background:#fff;border:1px solid #e5e9f0;border-radius:16px;overflow:hidden;box-shadow:0 8px 24px rgba(15,17,21,.06)}
.section.light .frame img{border-radius:12px}
/* Hero device-like frame */
.hero .frame{position:relative;border-radius:16px;overflow:hidden;background:#ffffff;border:1px solid #e5e9f0;box-shadow:0 12px 36px rgba(15,17,21,.08);aspect-ratio:16/9}
.hero .frame::before{content:"";position:absolute;top:6px;left:50%;transform:translateX(-50%);width:72px;height:6px;border-radius:9999px;background:#e5e9f0}

/* Lightbox */
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.75);display:none;align-items:center;justify-content:center;z-index:100}
.lightbox.open{display:flex}
.lightbox .content{position:relative;max-width:min(1100px,92vw);max-height:90vh}
.lightbox img{width:100%;height:auto;display:block;border-radius:12px;box-shadow:0 16px 48px rgba(0,0,0,.5)}
.lightbox .close{position:absolute;top:-40px;right:0;background:#ffffff;border:1px solid #e5e9f0;border-radius:9999px;padding:6px 10px;cursor:pointer}
*{box-sizing:border-box}
html,body{margin:0;padding:0;color:var(--paper);background:var(--ink);font-family:Inter,system-ui,Arial,sans-serif}
html{scroll-behavior:smooth}
.container{max-width:1200px;margin:0 auto;padding:0 16px}
@media(min-width:1400px){.container{max-width:1280px}}
.center{text-align:center}
.muted{color:var(--text-secondary)}
.eyebrow{letter-spacing:.12em;text-transform:uppercase;color:#9aa0a6;font-size:12px}
.row{display:flex;gap:12px;align-items:center}
.row .col{flex:1}
.site-header{position:sticky;top:0;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.06);padding:18px 0;transition:background .2s ease, box-shadow .2s ease;z-index:50;
  background-image: radial-gradient(600px 120px at 75% 0%, rgba(79,172,254,.16), transparent 70%);
}
.site-header::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;opacity:.9;background:linear-gradient(90deg, rgba(79,172,254,0) 0%, rgba(79,172,254,.7) 30%, rgba(0,242,254,.7) 70%, rgba(0,242,254,0) 100%)}
.site-header::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;opacity:.6;background:linear-gradient(90deg, rgba(79,172,254,0) 0%, rgba(79,172,254,.6) 30%, rgba(0,242,254,.6) 70%, rgba(0,242,254,0) 100%)}
.site-header.scrolled{background:rgba(16,18,22,.65);box-shadow:0 8px 30px rgba(0,0,0,.35)}
.site-header .brand{display:flex;align-items:center;gap:8px}
.site-header .tag{color:#c8d1e5;font-size:12px}
.site-header .brand .logo-wrap{position:relative;display:inline-flex;align-items:center;justify-content:center;border-radius:12px}
.site-header .brand .logo-wrap::after{content:"";position:absolute;inset:-4px;border-radius:14px;opacity:.0;pointer-events:none;
  background:linear-gradient(120deg,var(--grad-primary-start),var(--grad-primary-end));filter:blur(6px)}
.site-header .brand img{display:block;height:28px;filter:drop-shadow(0 6px 18px rgba(79,172,254,.18))}
.site-header .brand .logo-wrap:hover::after{opacity:.35}
.site-header .brand img:hover{filter:drop-shadow(0 8px 24px rgba(79,172,254,.28))}
.nav{display:flex;align-items:center;margin-left:auto}
.nav a{position:relative;color:#E8EEF6;text-decoration:none;margin-left:20px;font-weight:700;padding-bottom:6px;letter-spacing:.02em}
.nav a::after{content:"";position:absolute;left:50%;bottom:0;width:100%;height:3px;border-radius:9999px;background:linear-gradient(90deg,var(--grad-primary-start),var(--grad-primary-end));transform:translateX(-50%) scaleX(0);transform-origin:center;transition:transform .2s ease}
.nav a:hover{color:#ffffff}
.nav a:hover::after{transform:translateX(-50%) scaleX(1)}
.nav a.active{color:#ffffff}
.nav a.active::after{transform:translateX(-50%) scaleX(1);height:3px}

/* Header CTA */
.nav .cta{margin-left:20px}
.btn.small{padding:8px 12px;font-weight:700}

/* Mobile nav */
.menu-btn{display:none;appearance:none;background:transparent;border:none;color:#E8EEF6;font-weight:700}
.menu-btn .bar{display:block;width:22px;height:2px;background:#E8EEF6;border-radius:2px;margin:4px 0;transition:transform .2s ease, opacity .2s ease}
.nav-menu{display:flex;align-items:center}
.site-header.open .nav-menu{display:block}
.site-header.open .menu-btn .bar:nth-child(1){transform:translateY(6px) rotate(45deg)}
.site-header.open .menu-btn .bar:nth-child(2){opacity:0}
.site-header.open .menu-btn .bar:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

@media (max-width:800px){
  .menu-btn{display:block}
  .nav{margin-left:auto}
  .nav-menu{display:none;position:absolute;left:0;right:0;top:100%;background:#0f1319;border-bottom:1px solid rgba(255,255,255,.08);padding:12px 16px}
  .nav-menu a{display:inline-block;margin:10px 12px 4px 0}
  .nav .cta{display:inline-block;margin:8px 0 0 0}
}

@media (max-width:640px){
  .site-header{padding:14px 0}
  .site-header .tag{display:none}
  .nav a{margin-left:14px;font-weight:600}
  .site-header .brand img{height:24px}
  /* Swap hero action order on mobile: show Explore first */
  .hero .actions{flex-direction:column;align-items:flex-start}
  .hero .actions .btn:nth-child(1){order:2;margin-top:6px}
  .hero .actions .btn:nth-child(2){order:1}
}

@media (min-width:1200px){
  .site-header .brand img{height:32px}
}
.hero{padding:120px 0;position:relative;overflow:hidden;
  background: radial-gradient(900px 500px at 10% -10%, rgba(79,172,254,.20), transparent),
              radial-gradient(900px 500px at 90% 10%, rgba(0,242,254,.18), transparent),
              linear-gradient(180deg,var(--aurora-1) 0%, var(--aurora-4) 100%)}
.hero .container{display:grid;grid-template-columns:1fr;gap:20px;align-items:center}
@media(min-width:1000px){.hero .container{grid-template-columns:1.1fr .9fr}}
.hero-copy{max-width:720px}
.hero-media{position:relative}
.hero-media::before{content:"";position:absolute;inset:-10%;z-index:-1;border-radius:24px;filter:blur(40px);opacity:.28;background:radial-gradient(60% 60% at 30% 20%, rgba(79,172,254,.45), transparent 60%), radial-gradient(60% 60% at 80% 40%, rgba(0,242,254,.35), transparent 60%)}
@media (prefers-reduced-motion:no-preference){
  .hero-media::before{animation:glowpulse 6s ease-in-out infinite alternate}
  @keyframes glowpulse{from{opacity:.18;transform:scale(.98)}to{opacity:.32;transform:scale(1.02)}}
}
.hero-media .frame{aspect-ratio:16/10;position:relative;border-radius:18px;overflow:hidden;background:linear-gradient(180deg,#0f1319,#131a22);border:1px solid rgba(255,255,255,.16)}
.hero-media .frame::after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.12);border-radius:18px;pointer-events:none}
.hero .actions{justify-content:flex-start}
.hero .media-note{margin-top:8px}
.hero .media-note .link{font-weight:600}
.orb{position:absolute;border-radius:9999px;filter:blur(50px);opacity:.35;pointer-events:none}
.orb.blue{background:linear-gradient(90deg,var(--grad-primary-start),var(--grad-primary-end));width:420px;height:420px;left:-120px;top:-160px}
.orb.purple{background:linear-gradient(90deg,var(--grad-purple-start),var(--grad-purple-end));width:360px;height:360px;right:-100px;top:-40px}
@media (prefers-reduced-motion:no-preference){
  .orb{animation:float 40s ease-in-out infinite alternate}
  @keyframes float{from{transform:translateY(-10px)}to{transform:translateY(10px)}}
}
.hero h1{font-size:44px;margin:0 0 8px}
.hero .sub{max-width:800px;color:#d6dae0}
.grad{background:linear-gradient(90deg,var(--grad-primary-start),var(--grad-primary-end));-webkit-background-clip:text;background-clip:text;color:transparent}
.section{padding:72px 0}
.section.breathe{padding-top:96px}
.section.alt{background:linear-gradient(180deg,#101216 0%, #1A1D23 100%)}
.divider{height:1px;background:linear-gradient(90deg, rgba(79,172,254,0) 0%, rgba(79,172,254,.7) 30%, rgba(0,242,254,.7) 70%, rgba(0,242,254,0) 100%);opacity:.8;margin:32px 0}
.cards{display:grid;grid-template-columns:1fr;gap:16px}
@media(min-width:800px){.cards{grid-template-columns:repeat(3,1fr)}}
.card{position:relative;border:1px solid rgba(255,255,255,.16);border-radius:16px;padding:18px;background:rgba(21,26,34,.9);backdrop-filter:blur(8px);box-shadow:0 1px 0 rgba(255,255,255,.05) inset;overflow:hidden}
.card::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;border-top-left-radius:16px;border-top-right-radius:16px;background:linear-gradient(90deg,var(--grad-primary-start),var(--grad-primary-end));opacity:.95}
.card:hover{border-color:rgba(255,255,255,.28);box-shadow:0 8px 32px rgba(0,0,0,.35), 0 0 0 1px rgba(255,255,255,.06) inset}
@media (prefers-reduced-motion:no-preference){
  .card{transition:box-shadow .25s ease, transform .25s ease}
  .card:hover{transform:translateY(-2px) rotate(.3deg)}
  .card::after{content:"";position:absolute;inset:-1px;pointer-events:none;border-radius:16px;opacity:0;background:radial-gradient(90% 90% at 0% 0%, rgba(79,172,254,.35), transparent 60%), radial-gradient(90% 90% at 100% 0%, rgba(0,242,254,.25), transparent 60%)}
  .card:hover::after{opacity:1}
}
.panel{border:1px solid rgba(255,255,255,.20);border-radius:16px;padding:20px;background:rgba(21,26,34,.9);backdrop-filter:blur(8px)}

/* Light variants for higher contrast sections */
.section.light{background:#F8FAFC;color:#0F1115}
.section.light h1,.section.light h2,.section.light h3,.section.light h4,.section.light p{color:#0F1115}
.section.light .muted{color:#4b5563}
.section.light .card{background:#ffffff;border:1px solid #e5e9f0;box-shadow:none;color:#0F1115;overflow:hidden}
.section.light .card::before{left:0;right:0;top:0;height:3px;border-top-left-radius:16px;border-top-right-radius:16px;background:linear-gradient(90deg,var(--grad-primary-start),var(--grad-primary-end));opacity:1}
.section.light .panel{background:#ffffff;border:1px solid #e5e9f0;color:#0F1115}
.section.light a{color:#0f172a;text-decoration:underline;text-underline-offset:3px}
.section.light a:hover{color:#0b1220}

/* About / Story */
.story{display:grid;grid-template-columns:1fr;gap:28px;align-items:start}
@media(min-width:900px){.story{grid-template-columns:1.4fr 1fr}}
.story .col:first-child{max-width:75ch}
.story .col:last-child .frame{max-width:520px;margin-left:auto}
.story .sidebar{background:#ffffff;border:1px solid #e5e9f0;border-radius:16px;padding:20px}
.story .sidebar > *{margin-bottom:12px}
.story .sidebar > *:last-child{margin-bottom:0}
@media(min-width:900px){
  .story .sidebar{position:relative}
  .story .sidebar::before{content:"";position:absolute;left:-14px;top:0;bottom:0;width:1px;
    background:linear-gradient(180deg, rgba(79,172,254,0) 0%, rgba(79,172,254,.5) 30%, rgba(0,242,254,.5) 70%, rgba(0,242,254,0) 100%)}
}
.story .col p{line-height:1.6;margin:10px 0}
.story-signature{margin-top:10px;position:relative;padding-top:10px}
.story-signature::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;border-radius:9999px;
  background:linear-gradient(90deg,var(--grad-primary-start),var(--grad-primary-end));opacity:.65}
.story-signature .signature{display:block;height:26px;width:auto;margin-left:6px}
.story-signature .caption{margin-top:6px;font-size:13px}
.story-signature .caption .name{font-weight:700;
  background:linear-gradient(90deg,var(--grad-primary-start),var(--grad-primary-end));
  -webkit-background-clip:text;background-clip:text;color:transparent}
.story-signature .caption .meta{color:#475569}
@media(max-width:640px){
  .story-signature{padding-top:8px}
  .story-signature .signature{height:22px}
}
.mission.panel{padding:16px;border-radius:16px}
.mission.panel h3{font-size:18px}
.mission.panel p{font-size:15px}
.principles{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}
.principles .pill{display:inline-flex;align-items:center;background:#ffffff;border:1px solid #e5e9f0;border-radius:9999px;padding:6px 12px;color:#0F1115;font-weight:600;font-size:13px}
@media (prefers-reduced-motion:no-preference){.principles .pill{transition:box-shadow .2s ease, transform .2s ease}}
.principles .pill:hover{box-shadow:0 8px 18px rgba(15,17,21,.08);transform:translateY(-1px)}
.roadmap{margin:12px 0 14px;display:flex;gap:8px;flex-wrap:wrap}
.roadmap .chip{display:inline-flex;align-items:center;background:#ffffff;border:1px solid #e5e9f0;border-radius:9999px;padding:6px 12px;color:#0F1115;font-size:13px}
.note.founder{display:grid;grid-template-columns:1.2fr 1fr;gap:16px;align-items:center;background:#ffffff;border:1px solid #e5e9f0;border-radius:16px;padding:12px 14px;color:#0F1115;margin:10px 0}
.note.founder:hover{box-shadow:0 10px 24px rgba(15,17,21,.06)}
.note.founder .avatar{flex-shrink:0;width:52px;height:52px;border-radius:9999px;background:linear-gradient(90deg, rgba(79,172,254,.55), rgba(0,242,254,.55));box-shadow:0 0 0 3px #ffffff inset}
.note.founder .avatar img{width:100%;height:100%;object-fit:cover;border-radius:9999px;display:block}
.note.founder .founder-header{display:flex;gap:12px;align-items:center}
.note.founder .founder-header .info{padding:8px 10px;border-radius:12px;
  background:linear-gradient(90deg, rgba(79,172,254,.08), rgba(0,242,254,.08));
  border:1px solid #e5e9f0}
.note.founder .founder-header .info .name{font-size:16px;font-weight:800;margin:0;
  background:linear-gradient(90deg,var(--grad-primary-start),var(--grad-primary-end));
  -webkit-background-clip:text;background-clip:text;color:transparent}
.note.founder .founder-header .info .role{margin-top:2px;color:#0f172a;font-weight:600}
.note.founder .founder-header .info .company{color:#334155}
.note.founder .quote-text{font-size:16px;line-height:1.55;padding-left:14px;position:relative}
.note.founder .quote-text::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;border-radius:2px;
  background:linear-gradient(180deg,var(--grad-primary-start),var(--grad-primary-end));opacity:.8}
@media(max-width:640px){
  .note.founder .quote-text{padding-left:10px}
  .note.founder .quote-text::before{width:2px}
}
.note.founder .sig-block{display:flex;gap:12px;align-items:center;justify-self:end}
.note.founder .sig-lines{display:flex;flex-direction:column;gap:6px}
.note.founder .sig-lines .name{font-weight:700;color:#0b1220;display:inline-block;background-image:linear-gradient(90deg,var(--grad-primary-start),var(--grad-primary-end));background-size:120% 1px;background-position:0 100%;background-repeat:no-repeat;padding-bottom:3px;padding-right:12px}
.note.founder .sig-lines .role{color:#0f172a}
.note.founder .sig-lines .company{color:#334155}
.note.founder .founder-title{color:#0b1220;font-weight:600;line-height:1.4}
.note.founder .signature-wrap{display:block;text-align:right;margin-top:10px;padding-right:4px}
.note.founder .signature{display:inline-block;height:52px;width:auto}
@media(max-width:900px){
  .note.founder{grid-template-columns:1fr;align-items:flex-start}
}
@media(max-width:640px){
  .note.founder .avatar{width:44px;height:44px}
  .note.founder .signature{height:42px}
}
.note.founder{position:relative}
.note.founder::after{content:"";position:absolute;left:12px;right:12px;bottom:-1px;height:1px;opacity:.8;background:linear-gradient(90deg, rgba(79,172,254,0) 0%, rgba(79,172,254,.5) 30%, rgba(0,242,254,.5) 70%, rgba(0,242,254,0) 100%)}
.about-cta{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
@media(max-width:640px){.about-cta{flex-direction:column;align-items:flex-start}}

/* Contact (brand polish) */
.section.light .panel.contact{background:#ffffff;border:1px solid #e5e9f0;border-radius:16px;padding:24px 20px;box-shadow:0 6px 24px rgba(15,17,21,.05)}
.panel.contact h3{margin-top:0}
.panel.contact .row{display:flex;gap:12px;align-items:flex-start}
.panel.contact .row .col{flex:1}
.panel.contact label{display:block;font-weight:600;color:#0b1220;margin-bottom:6px}
.panel.contact input,.panel.contact textarea{display:block;width:100%;border:1px solid #e5e9f0;background:#f1f5f9;color:#0f172a;border-radius:12px;padding:10px 12px;box-shadow:inset 0 1px 0 rgba(255,255,255,.6);}
@media (prefers-reduced-motion:no-preference){.panel.contact input,.panel.contact textarea{transition:border-color .2s ease, box-shadow .2s ease, background .2s ease}}
.panel.contact input:focus,.panel.contact textarea:focus{outline:none;border-color:#93c5fd;box-shadow:0 0 0 3px rgba(79,172,254,.25)}
.panel.contact textarea{min-height:120px}
.panel.contact .actions{justify-content:center}
@media(max-width:700px){.panel.contact .row{flex-direction:column}}

/* Showcase */
.showcase{display:grid;grid-template-columns:1fr;gap:16px}
@media(min-width:900px){.showcase{grid-template-columns:repeat(3,1fr)}}
.shot{position:relative;border-radius:16px;overflow:hidden;background:linear-gradient(180deg,#0f1319,#131a22);border:1px solid rgba(255,255,255,.16)}
.shot .frame{aspect-ratio:16/10;display:flex;align-items:center;justify-content:center;color:#94a3b8}
.shot .frame img,.hero .frame img{width:100%;height:100%;object-fit:cover;display:block;border-radius:12px}
.shot .frame::after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.12);border-radius:16px;pointer-events:none}
.shot:hover{border-color:rgba(255,255,255,.28);box-shadow:0 10px 40px rgba(79,172,254,.18)}
.shot .caption{padding:10px 12px;color:#e2e8f0;font-size:14px}

/* Mock visuals for placeholders */
.mock{position:relative;inset:0;width:100%;height:100%;border-radius:12px;overflow:hidden}
.mock::before{content:"";position:absolute;inset:0;
  background:
    radial-gradient(120% 120% at -10% 0%, rgba(79,172,254,.35), transparent 60%),
    radial-gradient(120% 120% at 110% 0%, rgba(0,242,254,.25), transparent 60%),
    linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,0));
}
.mock::after{content:"";position:absolute;inset:0;opacity:.35;
  background-image: 
    linear-gradient(45deg, rgba(255,255,255,.06) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.06) 50%, rgba(255,255,255,.06) 75%, transparent 75%, transparent);
  background-size: 18px 18px;
}
@media (prefers-reduced-motion:no-preference){
  .mock{animation:mockflow 8s ease-in-out infinite alternate}
  @keyframes mockflow{from{transform:translateY(-2px)}to{transform:translateY(2px)}}
}
.mock .shine{position:absolute;inset:0;transform:translateX(-120%);background:linear-gradient(110deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.28) 15%, rgba(255,255,255,0) 35%)}
.shot:hover .mock .shine{animation:shine 1.4s ease}
@keyframes shine{to{transform:translateX(120%)}}

/* Accent edges for mocks */
.mock.primary{box-shadow:inset 0 0 0 2px rgba(79,172,254,.25)}
.mock.purple{box-shadow:inset 0 0 0 2px rgba(118,75,162,.25)}
.mock.pink{box-shadow:inset 0 0 0 2px rgba(245,87,108,.25)}

/* Title polish */
.title-grad{background:linear-gradient(90deg,var(--grad-primary-start),var(--grad-primary-end));-webkit-background-clip:text;background-clip:text;color:transparent}
.title-underline{position:relative;padding-bottom:8px}
.title-underline::after{content:"";position:absolute;left:0;bottom:0;width:var(--underline-w,72px);height:4px;border-radius:9999px;background:linear-gradient(90deg,var(--grad-primary-start),var(--grad-primary-end))}
.title-underline.center::after{left:50%;transform:translateX(-50%)}
.title-underline-sm{position:relative;padding-bottom:6px}
.title-underline-sm::after{content:"";position:absolute;left:0;bottom:0;width:44px;height:3px;border-radius:9999px;background:linear-gradient(90deg,var(--grad-primary-start),var(--grad-primary-end))}
.section.light .title-grad{color:transparent}
.section.light .title-underline::after,.section.light .title-underline-sm::after{background:linear-gradient(90deg,var(--grad-primary-start),var(--grad-primary-end))}

/* Accent gradient modifiers for cards */
.accent-primary::before{background:linear-gradient(90deg,var(--grad-primary-start),var(--grad-primary-end))}
.accent-purple::before{background:linear-gradient(90deg,var(--grad-purple-start),var(--grad-purple-end))}
.accent-pink::before{background:linear-gradient(90deg,var(--grad-pink-start),var(--grad-pink-end))}
.section.light .accent-primary::before{background:linear-gradient(90deg,var(--grad-primary-start),var(--grad-primary-end))}
.section.light .accent-purple::before{background:linear-gradient(90deg,var(--grad-purple-start),var(--grad-purple-end))}
.section.light .accent-pink::before{background:linear-gradient(90deg,var(--grad-pink-start),var(--grad-pink-end))}

/* How it works */
.steps{display:grid;grid-template-columns:1fr;gap:16px}
@media(min-width:900px){.steps{grid-template-columns:repeat(4,1fr)}}
.step{border:1px solid rgba(255,255,255,.16);border-radius:16px;padding:16px;background:rgba(21,26,34,.9)}
.step .num{display:inline-block;width:28px;height:28px;border-radius:9999px;background:linear-gradient(90deg,var(--grad-primary-start),var(--grad-primary-end));text-align:center;line-height:28px;font-weight:700;margin-bottom:8px}
label{display:block;font-size:14px;margin:8px 0}
input,textarea{width:100%;padding:10px;border-radius:10px;border:1px solid #2a2f39;background:#0f1319;color:var(--paper)}
.btn{display:inline-block;padding:12px 18px;border-radius:9999px;border:1px solid rgba(255,255,255,.28);color:#F2F6FB;text-decoration:none;transition:transform .08s ease, filter .08s ease, box-shadow .12s ease}
.btn.primary{background:linear-gradient(90deg,var(--grad-primary-start),var(--grad-primary-end));border:none}
.btn.primary{box-shadow:0 8px 28px rgba(79,172,254,.24), 0 2px 10px rgba(0,242,254,.18)}
.btn:hover{filter:brightness(1.06);box-shadow:0 6px 28px rgba(79,172,254,.24), 0 2px 10px rgba(0,242,254,.18)}
.btn:active{transform:translateY(1px) scale(.99)}
.btn.ghost{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.22);color:#E8EEF6}
.btn.ghost:hover{background:rgba(255,255,255,.10);filter:none;box-shadow:0 6px 18px rgba(15,17,21,.35)}
.btn.small{padding:8px 12px;font-weight:700}

/* CTA band */
.cta-band{position:relative;margin-top:16px;padding:18px;border-radius:16px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.10)}
.cta-band::before{content:"";position:absolute;inset:-2px;border-radius:18px;pointer-events:none;opacity:.45;background:radial-gradient(120% 120% at 10% -10%, rgba(79,172,254,.18), transparent 60%),radial-gradient(120% 120% at 110% 10%, rgba(0,242,254,.18), transparent 60%)}
@media (prefers-reduced-motion:no-preference){
  .cta-band{transition:box-shadow .2s ease}
  .cta-band:hover{box-shadow:0 18px 60px rgba(0,0,0,.35)}
}
.actions{display:flex;gap:8px;justify-content:center;margin-top:12px}
.error{color:#ffb4b4}

/* Light strip section (testimonials / trusted by) */
.section.light{background:#F8FAFC;color:#0F1115}
.section.light .muted{color:#4b5563}
.logos{display:flex;gap:20px;flex-wrap:wrap;justify-content:center;align-items:center}
.logo-pill{background:#ffffff;border:1px solid #e5e9f0;border-radius:9999px;padding:8px 14px;color:#0F1115;font-weight:600}
.testimonials{display:grid;grid-template-columns:1fr;gap:16px}
@media(min-width:900px){.testimonials{grid-template-columns:repeat(3,1fr)}}
.quote{background:#ffffff;border:1px solid #e5e9f0;border-radius:16px;padding:16px;color:#0f172a}
.quote .author{margin-top:8px;color:#334155;font-weight:600}

/* CTA shimmer */
.shimmer{position:relative;overflow:hidden}
.shimmer::after{content:"";position:absolute;inset:0;transform:translateX(-120%);
  background:linear-gradient(110deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.25) 20%, rgba(255,255,255,0) 40%);
}
@media (prefers-reduced-motion:no-preference){
  .shimmer:hover::after{animation:shimmer 1.2s ease}
  @keyframes shimmer{to{transform:translateX(120%)}}
}

/* Logo hover subtle motion */
.brand img{transition:transform .2s ease}
.brand img:hover{transform:scale(1.03)}

/* Footer */
.footer{background:#F8FAFC;color:#0F1115;padding:40px 0;border-top:1px solid #e5e9f0;position:relative}
.footer::before{content:"";position:absolute;left:0;right:0;top:-1px;height:1px;opacity:.9;background:linear-gradient(90deg, rgba(79,172,254,0) 0%, rgba(79,172,254,.6) 30%, rgba(0,242,254,.6) 70%, rgba(0,242,254,0) 100%)}
.footer .cols{display:grid;grid-template-columns:1fr;gap:18px}
@media(min-width:900px){.footer .cols{grid-template-columns:1.1fr .9fr .8fr}}
.footer h4{margin:0 0 10px;font-size:14px;text-transform:uppercase;letter-spacing:.08em;color:#0b1220}
.footer .brand{display:flex;align-items:center;gap:10px}
.footer p{margin:0;color:#4b5563}
.footer a{color:#0F1115;text-decoration:none}
.footer a:hover{text-decoration:underline}
.footer .list{display:flex;flex-direction:column;gap:8px}
.footer .social{display:flex;gap:10px;margin-top:8px}
.footer .glyph{width:22px;height:22px}
.footer .legal{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:22px;padding-top:14px;border-top:1px solid #e5e9f0;color:#4b5563}

/* Footer: dark variant */
.footer.dark{background:linear-gradient(180deg,#101216 0%, #1A1D23 100%);color:#E8EEF6;border-top:1px solid rgba(255,255,255,.06)}
.footer.dark::before{background:linear-gradient(90deg, rgba(79,172,254,0) 0%, rgba(79,172,254,.7) 30%, rgba(0,242,254,.7) 70%, rgba(0,242,254,0) 100%)}
.footer.dark p{color:#cbd5e1}
.footer.dark a{color:#E8EEF6}
.footer.dark a:hover{color:#ffffff}
.footer.dark .legal{border-top:1px solid rgba(255,255,255,.08);color:#94a3b8}
.footer.dark .glyph path,.footer.dark .glyph line,.footer.dark .glyph polyline{stroke:#E8EEF6}
.footer.dark .glyph path[fill], .footer.dark .glyph [fill]{fill:#E8EEF6}

/* Accessibility */
:focus-visible{outline:3px solid #60a5fa;outline-offset:2px;border-radius:10px}
a, button { outline: none; }
:focus-visible{box-shadow:0 0 0 4px rgba(96,165,250,.4)}
.nav a:focus-visible::after{transform:translateX(-50%) scaleX(1)}
@media (prefers-reduced-motion:reduce){
  *{animation:none !important;transition:none !important}
}

/* Dropdown menu */
.dropdown{position:relative;display:inline-block}
.drop-btn{background:transparent;border:1px solid rgba(255,255,255,.12);border-radius:9999px;color:#e2e8f0;padding:6px 12px;cursor:pointer;line-height:1}
@media (prefers-reduced-motion:no-preference){.drop-btn{transition:background .2s ease, color .2s ease, border-color .2s ease, transform .2s ease}}
.drop-btn:hover,.drop-btn.open{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.24)}
.drop-btn .caret{display:inline-block;margin-left:6px;transform:translateY(-1px)}
.drop-btn.open .caret{transform:translateY(-1px) rotate(180deg)}
.drop-menu{position:absolute;top:calc(100% + 10px);left:0;min-width:300px;background:#0f1319;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.16);border-radius:14px;padding:10px;display:none;box-shadow:0 18px 42px rgba(0,0,0,.55);z-index:60}
.drop-menu.open{display:block}
.drop-menu a{display:flex;flex-direction:column;gap:3px;padding:12px 12px;border-radius:10px;color:#e5e7eb;text-decoration:none}
.drop-menu a + a{margin-top:6px;padding-top:12px;border-top:1px solid rgba(255,255,255,.08)}
.drop-menu a .item{display:flex;align-items:center;gap:10px;font-weight:700}
.drop-menu a .item svg{color:#a1a8b6}
.drop-menu a .title{color:#f1f5f9}
.drop-menu a .desc{font-weight:600;color:#cbd5e1;font-size:12px}
@media (prefers-reduced-motion:no-preference){.drop-menu a{transition:background .18s ease, transform .18s ease}}
.drop-menu a:hover{background:linear-gradient(90deg, rgba(79,172,254,.18), rgba(0,242,254,.14));transform:translateY(-1px)}
.drop-menu a.active{background:linear-gradient(90deg, rgba(79,172,254,.28), rgba(0,242,254,.22))}
.drop-menu a.active .title{color:#ffffff}
.drop-menu .drop-footer{margin-top:8px;padding:10px 12px;border-top:1px solid rgba(255,255,255,.16)}
.drop-menu .drop-footer a{display:inline-block;color:#e5e7eb;font-weight:700}
.drop-menu .drop-footer a:hover{color:#ffffff}

/* Small status badge for dropdown items */
.badge{display:inline-flex;align-items:center;gap:6px;margin-left:8px;padding:2px 8px;border-radius:9999px;font-size:11px;font-weight:700;color:#0b1220;background:linear-gradient(90deg,var(--grad-primary-start),var(--grad-primary-end))}

/* Active nav link */
.nav .active{position:relative}
.nav .active::after{content:"";position:absolute;left:50%;transform:translateX(-50%);bottom:-6px;height:3px;width:24px;border-radius:9999px;background:linear-gradient(90deg,var(--grad-primary-start),var(--grad-primary-end))}

/* Breadcrumbs */
.breadcrumbs{display:flex;gap:8px;align-items:center;color:#6b7280;font-size:14px;margin:6px 0 10px}
.breadcrumbs a{color:#0f172a}
.breadcrumbs .sep{width:6px;height:6px;border-radius:9999px;background:linear-gradient(90deg,var(--grad-primary-start),var(--grad-primary-end));opacity:.8}

/* Tabs */
[data-tabs]{margin-top:16px}
[data-tab-nav]{display:flex;gap:8px;flex-wrap:wrap}
[data-tab-nav] button{background:#ffffff;border:1px solid #e5e9f0;border-radius:9999px;padding:8px 12px;color:#0f172a;font-weight:600;cursor:pointer}
[data-tab-nav] button.active{border-color:#93c5fd;box-shadow:0 0 0 3px rgba(147,197,253,.35)}
[data-tab-panel]{display:none;margin-top:12px}
[data-tab-panel].active{display:block}

/* High-contrast inline links */
.link{color:#7dd3fc;text-decoration:underline;text-underline-offset:3px}
.link:hover{color:#bae6fd}
.img-hint{color:#94a3b8;font-size:12px}

/* Product card icons and interactions */
.card .glyph{width:30px;height:30px;display:block;margin-bottom:8px}
.card .glyph path,.card .glyph polyline,.card .glyph line,.card .glyph circle{stroke-width:2.2;fill:none}
.card .meta{margin-top:8px;display:flex;gap:12px;flex-wrap:wrap}
.card .meta a{font-weight:700;text-decoration:none;position:relative}
.card .meta .learn{--learn-grad:linear-gradient(90deg,var(--grad-primary-start),var(--grad-primary-end));
  display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:9999px;color:#0f172a;
  background-image:linear-gradient(#ffffff,#ffffff), var(--learn-grad);
  background-clip:padding-box, border-box;border:1px solid transparent;
  position:relative;z-index:2;pointer-events:auto}
.accent-primary .learn{--learn-grad:linear-gradient(90deg,var(--grad-primary-start),var(--grad-primary-end))}
.accent-purple .learn{--learn-grad:linear-gradient(90deg,var(--grad-purple-start),var(--grad-purple-end))}
.accent-pink .learn{--learn-grad:linear-gradient(90deg,var(--grad-pink-start),var(--grad-pink-end))}
@media (prefers-reduced-motion:no-preference){.card .meta .learn{transition:transform .15s ease, color .15s ease, background-image .15s ease}}
.card .meta .learn:hover{transform:translateY(-1px);color:#ffffff;background-image:var(--learn-grad)}
.card .meta .learn::after{content:"→";font-weight:700;transition:transform .15s ease}
.card .meta .learn:hover::after{transform:translateX(2px)}
/* Shimmer */
.card .meta .learn::before{content:"";position:absolute;inset:0;border-radius:9999px;opacity:0;pointer-events:none;
  background:linear-gradient(120deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.5) 45%, rgba(255,255,255,0) 100%);
  transform:translateX(-140%)}
@media (prefers-reduced-motion:no-preference){
  .card .meta .learn:hover::before{opacity:1;animation:learn-shimmer 1.1s ease}
  @keyframes learn-shimmer{to{transform:translateX(140%)}}
}
.stretched-link{position:absolute;inset:0;z-index:1;text-indent:-9999px;overflow:hidden}
.card a:focus-visible{outline:none}
.card:focus-within{box-shadow:0 0 0 3px rgba(96,165,250,.35)}

/* Thank-you celebration pulse for primary button */
@media (prefers-reduced-motion:no-preference){
  .btn.primary.celebrate{animation:celebrate-pulse 1.2s ease both}
  @keyframes celebrate-pulse{
    0%{transform:translateY(0); box-shadow:0 0 0 0 rgba(79,172,254,.0)}
    40%{transform:translateY(-1px); box-shadow:0 10px 30px rgba(79,172,254,.35)}
    100%{transform:translateY(0); box-shadow:0 0 0 0 rgba(79,172,254,.0)}
  }
}

/* Accent hover auras matching product gradients */
@media (prefers-reduced-motion:no-preference){
  .accent-primary:hover{box-shadow:0 14px 46px rgba(79,172,254,.28)}
  .accent-purple:hover{box-shadow:0 14px 46px rgba(118,75,162,.28)}
  .accent-pink:hover{box-shadow:0 14px 46px rgba(245,87,108,.28)}
}

/* Scroll reveal animation */
.reveal{opacity:0;transform:translateY(14px)}
@media (prefers-reduced-motion:no-preference){
  .reveal.in{opacity:1;transform:none;transition:opacity .5s ease, transform .5s ease}
}

/* Stats strip */
/* Outcomes (factual, no numbers) */
.outcomes{display:grid;grid-template-columns:1fr;gap:16px}
@media(min-width:900px){.outcomes{grid-template-columns:repeat(2,1fr)}}
.outcome{display:flex;gap:12px;align-items:flex-start;border-radius:16px;padding:16px;background:#ffffff;border:1px solid #e5e9f0;color:#0F1115}
@media (prefers-reduced-motion:no-preference){.outcome{transition:box-shadow .2s ease, transform .2s ease}}
.outcome:hover{box-shadow:0 8px 28px rgba(79,172,254,.12)}
.outcome .icon{width:28px;height:28px;border-radius:9999px;flex-shrink:0;background:linear-gradient(90deg,var(--grad-primary-start),var(--grad-primary-end))}
