@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,600;9..144,700&family=Space+Grotesk:wght@400;500;700&display=swap');

:root{
  --bg:#0d0814;
  --bg-deep:#07040d;
  --surface:rgba(29,18,42,.78);
  --surface-strong:rgba(21,13,32,.96);
  --surface-soft:rgba(255,255,255,.04);
  --text:#f7f4ff;
  --muted:#cbc2dd;
  --muted2:#9f96b5;
  --line:rgba(255,255,255,.11);
  --line-strong:rgba(255,255,255,.18);
  --accent:#78c83a;
  --accent-warm:#a33ef2;
  --accent-soft:rgba(120,200,58,.18);
  --accent-grape-soft:rgba(163,62,242,.22);
  --shadow:0 28px 80px rgba(0,0,0,.36);
  --radius:26px;
  --radius-sm:18px;
  --max:1180px;
  --font-sans:"Space Grotesk", "Segoe UI", sans-serif;
  --font-display:"Fraunces", Georgia, serif;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
html,body{min-height:100%}
body{
  margin:0;
  overflow-x:hidden;
  font-family:var(--font-sans);
  color:var(--text);
  background:linear-gradient(180deg, #140d21 0%, #0d0814 48%, #08050d 100%);
}
body::before,
body::after{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-1;
}
body::before{
  opacity:.24;
  background:
    linear-gradient(rgba(255,255,255,.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.03) 1px, transparent 1px);
  background-size:72px 72px;
  mask-image:linear-gradient(180deg, rgba(0,0,0,.85), rgba(0,0,0,.25));
}
body::after{
  display:none;
}

a{color:inherit; text-decoration:none}
img{display:block; max-width:100%}
button,input,textarea{font:inherit}

.container{max-width:var(--max); margin:0 auto; padding:0 24px}

.topbar{
  position:sticky;
  top:0;
  z-index:50;
  backdrop-filter:blur(16px);
  background:rgba(15,9,24,.72);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.nav{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  min-height:88px;
}
.nav-actions{
  display:flex;
  align-items:center;
  gap:10px;
  flex-shrink:0;
}
.brand{
  display:flex;
  align-items:center;
  gap:12px;
  font-weight:700;
  letter-spacing:-.02em;
}
.brand img{
  height:44px;
  width:auto;
  object-fit:contain;
  padding:0;
  border-radius:0;
  background:none;
  box-shadow:none;
}
.navlinks{
  display:flex;
  align-items:center;
  gap:4px;
  flex:1;
  justify-content:center;
}
.navlinks a{
  padding:11px 14px;
  border-radius:999px;
  color:var(--muted);
  font-weight:500;
  transition:background-color .2s ease, color .2s ease, transform .2s ease;
}
.navlinks a:hover,
.navlinks a[aria-current="page"]{
  color:var(--text);
  background:rgba(255,255,255,.06);
}

.cta,
.ghost,
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:54px;
  padding:0 22px;
  border-radius:18px;
  border:1px solid var(--line-strong);
  white-space:nowrap;
  transition:transform .2s ease, border-color .2s ease, background-color .2s ease, box-shadow .2s ease;
}
.nav-actions .cta,
.nav-actions .ghost{
  min-height:46px;
  padding:0 18px;
  border-radius:16px;
  font-size:.96rem;
}
.nav-actions .cta{
  padding:0 20px;
  box-shadow:0 14px 30px rgba(163,62,242,.2);
}
.nav-actions .ghost{
  background:rgba(255,255,255,.02);
}
.cta,
.btn.primary{
  background:linear-gradient(135deg, #b24cff, #7a27c0 62%, #5c1698 100%);
  color:#fff;
  font-weight:700;
  border-color:rgba(120,200,58,.26);
  box-shadow:0 18px 36px rgba(163,62,242,.24);
}
.ghost{
  background:rgba(255,255,255,.035);
  color:var(--text);
  font-weight:500;
}
.cta:hover,
.ghost:hover,
.btn:hover{
  transform:translateY(-1px);
}
.hamburger{
  display:none;
  width:46px;
  height:46px;
  border-radius:16px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.05);
  color:var(--text);
}
.hamburger svg{width:22px; height:22px}
.mobile-menu{
  display:none;
  padding:0 0 18px;
}
.mobile-menu a{
  display:block;
  padding:12px 14px;
  border-radius:16px;
  color:var(--muted);
}
.mobile-menu .mobile-login{
  margin-top:10px;
  border:1px solid var(--line-strong);
  background:rgba(255,255,255,.05);
  color:var(--text);
  font-weight:700;
  text-align:center;
}
.mobile-menu a:hover{
  background:rgba(255,255,255,.05);
  color:var(--text);
}

@media (max-width:1120px){
  .nav-demo{display:none}
}

.hero{
  padding:36px 0 12px;
}
.kicker,
.section-eyebrow,
.card-label,
.feature-kicker{
  display:inline-flex;
  align-items:center;
  gap:8px;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:.78rem;
  font-weight:700;
  margin-inline:auto;
}
.kicker{
  padding:10px 14px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:999px;
  background:rgba(255,255,255,.03);
  color:var(--muted);
}
.kicker .dot{
  width:10px;
  height:10px;
  border-radius:50%;
  background:linear-gradient(135deg, var(--accent-warm), var(--accent));
  box-shadow:0 0 0 6px var(--accent-grape-soft);
}
.section-eyebrow,
.card-label,
.feature-kicker{
  color:var(--accent);
}

.hero-grid{
  display:grid;
  grid-template-columns:minmax(0, 1.1fr) minmax(340px, 400px);
  gap:38px;
  align-items:start;
  padding-top:22px;
}
.hero-copy{
  position:relative;
  max-width:none;
  text-align:center;
}
.hero-mark{
  position:absolute;
  top:18px;
  left:-28px;
  z-index:-1;
  width:min(34vw, 320px);
  height:min(34vw, 320px);
  overflow:hidden;
  opacity:.18;
  pointer-events:none;
  mix-blend-mode:screen;
  filter:saturate(1.05);
}
.hero-mark img{
  width:100%;
  max-width:none;
  transform:translateX(0);
}
h1,h2,h3,h4{
  margin:0;
  letter-spacing:-.03em;
}
h1,h2{
  font-family:var(--font-display);
  font-weight:700;
}
h1{
  margin-top:18px;
  font-size:clamp(3.35rem, 8vw, 6.2rem);
  line-height:.93;
  max-width:10ch;
  margin-inline:auto;
  text-shadow:0 0 26px rgba(120,200,58,.18), 0 18px 42px rgba(0,0,0,.34);
}
.lead{
  margin:22px 0 0;
  max-width:36rem;
  margin-inline:auto;
  color:var(--muted);
  font-size:1.16rem;
  line-height:1.75;
}
.hero-actions{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
  justify-content:center;
  margin-top:32px;
}
.hero-availability{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  justify-content:center;
  margin-top:18px;
}

.hero-points{
  display:grid;
  gap:18px;
  max-width:none;
  margin:0;
}
.hero-point{
  display:grid;
  grid-template-columns:auto 1fr;
  align-items:start;
  gap:18px;
  padding-top:18px;
  text-align:left;
  border-top:1px solid rgba(255,255,255,.08);
}
.point-number{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:46px;
  height:46px;
  border-radius:16px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  color:var(--accent-warm);
  font-family:var(--font-display);
  font-size:1.05rem;
}
.hero-point strong{
  display:block;
  font-size:1rem;
}
.hero-point p{
  margin:7px 0 0;
  color:var(--muted);
  line-height:1.65;
}

.hero-card{
  position:relative;
  margin-top:12px;
  border-radius:32px;
  border:1px solid rgba(255,255,255,.1);
  background:
    linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.025)),
    rgba(20,12,30,.9);
  box-shadow:var(--shadow);
  overflow:hidden;
}
.hero-card::before{
  content:"";
  position:absolute;
  inset:auto -80px -100px auto;
  width:220px;
  height:220px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(163,62,242,.28), transparent 68%);
}
.hero-card-inner{
  position:relative;
  padding:28px;
  text-align:center;
}
.hero-card h3{
  margin-top:18px;
  font-size:2rem;
  font-family:var(--font-display);
}
.hero-video-shell{
  margin-top:24px;
  margin-inline:auto;
  border-radius:24px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.1);
  background:#08050d;
  box-shadow:0 20px 56px rgba(0,0,0,.28);
}
.hero-video{
  display:block;
  width:100%;
  aspect-ratio:9 / 16;
  background:#000;
}
.hero-card-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  justify-content:center;
  margin-top:20px;
}
.small{
  color:var(--muted2);
  font-size:.95rem;
  line-height:1.65;
  max-width:34rem;
  margin-inline:auto;
}

.form{
  display:grid;
  gap:14px;
  margin-top:22px;
}
.input{
  width:100%;
  min-height:56px;
  padding:16px 18px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.11);
  background:rgba(8,10,11,.28);
  color:var(--text);
  outline:none;
}
.input::placeholder{color:#a9aaa4}
.input:focus{
  border-color:rgba(163,62,242,.52);
  box-shadow:0 0 0 4px rgba(163,62,242,.14);
}
.textarea{
  min-height:150px;
  resize:vertical;
}
.btn{
  font-weight:700;
  cursor:pointer;
}
.btn:disabled{
  opacity:.65;
  cursor:wait;
}
.form .notice{
  margin-top:2px;
}
.notice{
  color:var(--muted2);
  font-size:.9rem;
  line-height:1.55;
}
.consent-check{
  display:grid;
  grid-template-columns:auto 1fr;
  align-items:start;
  gap:12px;
  padding:14px 16px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.1);
  background:rgba(255,255,255,.03);
  text-align:left;
  color:var(--muted);
  line-height:1.6;
}
.consent-check input{
  width:18px;
  height:18px;
  margin-top:3px;
  accent-color:#8d38dc;
}
.consent-check a{
  color:var(--accent);
  font-weight:700;
}
.hp-field{
  position:absolute;
  left:-9999px;
  width:1px;
  height:1px;
  overflow:hidden;
}
.consent-floating{
  position:fixed;
  left:18px;
  bottom:18px;
  z-index:80;
}
.consent-banner{
  position:fixed;
  left:50%;
  bottom:18px;
  transform:translateX(-50%);
  width:min(560px, calc(100vw - 136px));
  z-index:89;
}
.consent-banner[hidden]{
  display:none;
}
.consent-banner-inner{
  display:grid;
  gap:14px;
  padding:16px 18px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.12);
  background:
    linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02)),
    rgba(12,8,19,.96);
  box-shadow:0 24px 60px rgba(0,0,0,.32);
}
.consent-banner-copy{
  display:grid;
  gap:6px;
}
.consent-banner-copy strong{
  color:var(--text);
  font-size:1rem;
}
.consent-banner-copy span{
  color:var(--muted);
  font-size:.92rem;
  line-height:1.5;
}
.consent-banner-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.consent-banner-actions .ghost,
.consent-banner-actions .cta{
  min-height:42px;
  padding:0 16px;
  border-radius:14px;
  font-size:.92rem;
}
.consent-toggle{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:0 16px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(12,8,19,.9);
  color:var(--text);
  box-shadow:0 16px 36px rgba(0,0,0,.24);
  cursor:pointer;
}
.consent-panel{
  position:fixed;
  left:50%;
  bottom:28px;
  transform:translateX(-50%);
  width:min(720px, calc(100vw - 28px));
  z-index:90;
}
.consent-panel[hidden]{
  display:none;
}
.consent-panel-inner{
  padding:26px;
  border-radius:28px;
  border:1px solid rgba(255,255,255,.12);
  background:
    radial-gradient(circle at top center, rgba(163,62,242,.18), transparent 52%),
    linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.02)),
    rgba(17,11,27,.98);
  box-shadow:0 28px 80px rgba(0,0,0,.42);
  text-align:center;
  max-height:calc(100vh - 56px);
  max-height:calc(100dvh - 56px);
  overflow-y:auto;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
}
.consent-panel h3{
  margin-top:12px;
  font-size:1.8rem;
  font-family:var(--font-display);
}
.consent-copy{
  margin:14px auto 0;
  max-width:44rem;
  color:var(--muted);
  line-height:1.7;
}
.consent-options{
  display:grid;
  gap:12px;
  margin-top:22px;
}
.consent-option{
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  gap:18px;
  padding:16px 18px;
  border-radius:20px;
  border:1px solid rgba(255,255,255,.1);
  background:rgba(255,255,255,.03);
  text-align:left;
}
.consent-option input{
  width:20px;
  height:20px;
  accent-color:#8d38dc;
}
.consent-option-copy{
  display:grid;
  gap:4px;
}
.consent-option-copy strong{
  color:var(--text);
}
.consent-option-copy span{
  color:var(--muted);
  line-height:1.6;
}
.consent-option-static{
  grid-template-columns:1fr auto;
}
.consent-chip{
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:0 12px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.1);
  background:rgba(255,255,255,.05);
  color:var(--muted2);
  font-size:.86rem;
  white-space:nowrap;
}
.consent-status{
  margin-top:16px;
  color:var(--muted2);
  font-size:.92rem;
  line-height:1.55;
}
.consent-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:12px;
  margin-top:20px;
}
.consent-links{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:12px 18px;
  margin-top:16px;
  color:var(--muted2);
}
.consent-links a{
  color:var(--accent);
  font-weight:700;
}
.consent-inline-button{
  padding:0;
  border:none;
  background:none;
  color:var(--muted2);
  cursor:pointer;
}
.consent-inline-button:hover{
  color:var(--text);
}

.dashboard-preview{
  display:grid;
  gap:18px;
  margin-top:28px;
  padding-top:24px;
  border-top:1px solid rgba(255,255,255,.08);
}
.preview-head{
  display:flex;
  justify-content:space-between;
  gap:20px;
  color:var(--muted2);
  font-size:.88rem;
  text-transform:uppercase;
  letter-spacing:.12em;
}
.preview-row{
  display:grid;
  gap:10px;
}
.preview-row strong{
  display:block;
  font-size:1rem;
}
.preview-row span{
  display:block;
  margin-top:4px;
  color:var(--muted2);
  line-height:1.55;
}
.preview-bar{
  height:9px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(255,255,255,.08);
}
.preview-bar span{
  height:100%;
  margin:0;
  border-radius:999px;
  background:linear-gradient(135deg, var(--accent-warm), var(--accent));
}

.feature-strip{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:18px;
  margin-top:36px;
}
.feature-card,
.card,
.step,
.panel{
  position:relative;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.09);
  background:
    linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.025)),
    rgba(22,14,32,.8);
  overflow:hidden;
}
.feature-card::before,
.step::before,
.panel::before{
  content:"";
  position:absolute;
  inset:0 auto auto 0;
  width:100%;
  height:1px;
  background:linear-gradient(90deg, rgba(163,62,242,.62), rgba(120,200,58,0));
}
.feature-card{
  padding:28px;
  text-align:center;
}
.feature-card h3{
  margin-top:14px;
  font-size:1.45rem;
  font-family:var(--font-display);
}
.feature-card p{
  margin:14px 0 0;
  color:var(--muted);
  line-height:1.7;
}

.section{
  padding:32px 0;
}
.launch-grid{
  display:grid;
  grid-template-columns:minmax(0, 1.08fr) minmax(320px, .92fr);
  gap:18px;
}
.feature-proof-grid{
  display:grid;
  grid-template-columns:minmax(0, 1.08fr) minmax(320px, .92fr);
  gap:18px;
  align-items:start;
}
.launch-signals{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  justify-content:center;
  margin-top:24px;
}
.signup-panel{
  align-self:start;
}
.phone-showcase{
  align-self:start;
}
.section-head{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:12px;
  margin-bottom:12px;
  text-align:center;
}
.section-head > div{
  max-width:760px;
}
.section h2{
  margin-top:14px;
  font-size:clamp(2.2rem, 5vw, 3.6rem);
  line-height:1.02;
}
.section p{
  color:var(--muted);
  line-height:1.75;
  margin:0;
  max-width:44rem;
  margin-inline:auto;
}

.steps{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:18px;
}
.hero-proof-grid{
  display:grid;
  grid-template-columns:minmax(0, 1.12fr) minmax(320px, .88fr);
  gap:18px;
  align-items:start;
  margin-top:14px;
}
.hero-summary-cards{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:14px;
}
.hero-summary-card{
  min-height:168px;
  padding:18px 16px;
}
.hero-summary-card h3{
  font-size:1.15rem;
}
.hero-summary-card p{
  font-size:.96rem;
  line-height:1.55;
}
.step{
  padding:28px;
  text-align:center;
}
.badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:44px;
  height:44px;
  border-radius:16px;
  background:linear-gradient(135deg, rgba(163,62,242,.95), rgba(120,200,58,.95));
  color:#fff;
  font-family:var(--font-display);
  font-weight:700;
  margin-inline:auto;
}
.step h3{
  margin-top:18px;
  font-size:1.45rem;
  font-family:var(--font-display);
}
.step p{
  margin-top:12px;
}

.split,
.story-grid{
  display:grid;
  grid-template-columns:minmax(0, 1.08fr) minmax(0, .92fr);
  gap:18px;
}
.about-story-grid{
  grid-template-columns:minmax(0, 1.12fr) minmax(280px, .72fr);
  align-items:start;
}
.home-story-grid{
  grid-template-columns:minmax(0, 1.16fr) minmax(260px, .74fr);
  align-items:start;
}
.stack{
  display:grid;
  gap:18px;
}
.home-compact-stack{
  gap:12px;
}
.about-sidecards{
  gap:14px;
}
.panel{
  padding:30px;
  text-align:center;
}
.panel-large{
  min-height:100%;
}
.about-compact-panel{
  padding:22px;
}
.home-compact-panel{
  padding:18px 18px 20px;
  border-radius:20px;
}
.home-compact-panel h3{
  font-size:1.15rem;
}
.home-compact-panel p{
  font-size:.96rem;
  line-height:1.58;
}
.panel h3{
  margin-top:14px;
  font-size:1.6rem;
  font-family:var(--font-display);
}
.panel p{
  margin-top:14px;
}
.panel-list{
  list-style:none;
  padding:0;
  max-width:44rem;
  margin:24px auto 0;
  display:grid;
  gap:16px;
}
.panel-list li{
  position:relative;
  padding-top:16px;
  color:var(--muted);
  line-height:1.7;
  text-align:center;
}
.panel-list li::before{
  content:"";
  position:absolute;
  left:50%;
  top:0;
  width:8px;
  height:8px;
  border-radius:50%;
  background:linear-gradient(135deg, var(--accent-warm), var(--accent));
  transform:translateX(-50%);
}

.cards{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:18px;
  margin-top:12px;
}
.about-principles{
  grid-template-columns:repeat(4, minmax(0, 1fr));
  align-items:start;
  gap:14px;
}
.card{
  padding:22px;
  text-align:center;
}
.about-principle-card{
  padding:18px 18px 20px;
  border-radius:20px;
}
.about-principle-card h4{
  font-size:1.02rem;
}
.about-principle-card p{
  font-size:.96rem;
  line-height:1.58;
}
.card h4{
  margin-top:14px;
  font-size:1.15rem;
  font-family:var(--font-display);
}
.card p{
  margin-top:10px;
  color:var(--muted);
  line-height:1.65;
}
.icon{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.1);
  background:rgba(255,255,255,.05);
}

.list{
  max-width:44rem;
  margin:0 auto;
  padding-left:0;
  list-style-position:inside;
  color:var(--muted);
  line-height:1.75;
  text-align:center;
}
.list li::marker{
  color:var(--accent);
}

.callout{
  padding:20px;
  border-radius:22px;
  border:1px solid rgba(163,62,242,.28);
  background:linear-gradient(180deg, rgba(163,62,242,.16), rgba(120,200,58,.05));
  text-align:center;
}
.section-cta{
  padding-top:14px;
}
.cta-band{
  position:relative;
  padding:34px 28px;
  border-radius:28px;
  border:1px solid rgba(255,255,255,.1);
  background:
    radial-gradient(circle at top center, rgba(163,62,242,.2), transparent 52%),
    linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.02)),
    rgba(20,12,30,.92);
  overflow:hidden;
  text-align:center;
  box-shadow:var(--shadow);
}
.cta-band::before{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:1px;
  background:linear-gradient(90deg, rgba(120,200,58,0), rgba(120,200,58,.45), rgba(120,200,58,0));
}
.cta-band p{
  max-width:40rem;
}
.cta-band-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:12px;
  margin-top:22px;
}

.phone-frame{
  width:min(100%, 320px);
  margin:20px auto 0;
  padding:14px 12px 16px;
  border-radius:38px;
  border:1px solid rgba(255,255,255,.12);
  background:linear-gradient(180deg, rgba(32,21,46,.98), rgba(13,8,20,.98));
  box-shadow:0 24px 64px rgba(0,0,0,.34);
}
.phone-speaker{
  width:88px;
  height:8px;
  margin:0 auto 14px;
  border-radius:999px;
  background:rgba(255,255,255,.12);
}
.phone-screen{
  max-height:620px;
  overflow-y:auto;
  border-radius:28px;
  border:1px solid rgba(255,255,255,.08);
  background:#09060f;
  scrollbar-width:thin;
  scrollbar-color:rgba(163,62,242,.55) rgba(255,255,255,.06);
}
.phone-screen::-webkit-scrollbar{
  width:8px;
}
.phone-screen::-webkit-scrollbar-track{
  background:rgba(255,255,255,.06);
}
.phone-screen::-webkit-scrollbar-thumb{
  border-radius:999px;
  background:linear-gradient(180deg, rgba(178,76,255,.9), rgba(122,39,192,.9));
}
.phone-screen img{
  display:block;
  width:100%;
  height:auto;
}
.phone-screen img + img{
  border-top:1px solid rgba(255,255,255,.08);
}

.pagehead{
  padding:20px 0 2px;
  text-align:center;
}
.pagehead h1{
  max-width:none;
  font-size:clamp(2.6rem, 6vw, 4.4rem);
}
.minihero{
  max-width:42rem;
  margin-inline:auto;
  padding-top:18px;
  color:var(--muted);
  line-height:1.75;
}

.table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  overflow:hidden;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.09);
  background:rgba(18,21,23,.82);
}
.table th,
.table td{
  padding:16px 18px;
  text-align:left;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.table th{
  font-weight:700;
  color:var(--text);
}
.table td{
  color:var(--muted);
}
.table tr:last-child td{
  border-bottom:none;
}

.footer{
  margin-top:16px;
  padding:18px 0 24px;
  border-top:1px solid rgba(255,255,255,.08);
  color:var(--muted2);
  font-size:.95rem;
}
.footergrid{
  display:grid;
  grid-template-columns:minmax(0, 1.2fr) minmax(0, .8fr);
  gap:16px;
}
.footergrid > div{
  text-align:center;
}
.footer .brand{
  justify-content:center;
}
.pillrow{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  justify-content:center;
  margin-top:16px;
}
.pill{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:0 14px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.03);
  color:var(--muted);
}
.metric-strip,
.price-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:18px;
}
.metric-strip{
  margin-top:16px;
}
.metric{
  padding:22px;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.03);
  text-align:center;
}
.metric h3,
.price-card h3{
  font-family:var(--font-display);
  font-size:1.5rem;
}
.metric p{
  margin-top:10px;
  color:var(--muted);
  line-height:1.65;
}
.price-grid{
  margin-top:24px;
}
.price-card{
  position:relative;
  padding:28px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.09);
  background:
    linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.025)),
    rgba(22,14,32,.8);
  overflow:hidden;
  text-align:center;
}
.price-card::before{
  content:"";
  position:absolute;
  inset:0 auto auto 0;
  width:100%;
  height:1px;
  background:linear-gradient(90deg, rgba(163,62,242,.62), rgba(120,200,58,0));
}
.price-card.featured{
  border-color:rgba(120,200,58,.28);
  box-shadow:0 18px 48px rgba(120,200,58,.08);
}
.price-label{
  display:inline-flex;
  align-items:center;
  gap:8px;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:.78rem;
  font-weight:700;
  color:var(--accent);
  margin-inline:auto;
}
.price-value{
  margin-top:16px;
  font-family:var(--font-display);
  font-size:clamp(2rem, 5vw, 3rem);
  line-height:1;
}
.price-sub{
  margin-top:12px;
  color:var(--muted);
  line-height:1.65;
}
.check-list{
  list-style:none;
  padding:0;
  max-width:42rem;
  margin:20px auto 0;
  display:grid;
  gap:12px;
}
.check-list li{
  position:relative;
  padding-top:14px;
  color:var(--muted);
  line-height:1.65;
  text-align:center;
}
.check-list li::before{
  content:"";
  position:absolute;
  left:50%;
  top:0;
  width:7px;
  height:7px;
  border-radius:50%;
  background:linear-gradient(135deg, var(--accent-warm), var(--accent));
  transform:translateX(-50%);
}
.price-note{
  margin-top:18px;
  max-width:44rem;
  margin-inline:auto;
  color:var(--muted2);
  font-size:.92rem;
  line-height:1.6;
}
.text-link{
  color:var(--accent);
  font-weight:700;
}

@media (max-width:1080px){
  .hero-grid,
  .launch-grid,
  .feature-proof-grid,
  .hero-proof-grid,
  .split,
  .story-grid,
  .footergrid{
    grid-template-columns:1fr;
  }
  .section-head{
    flex-direction:column;
  }
  .hero-card{
    margin-top:0;
  }
  .feature-strip,
  .metric-strip,
  .price-grid,
  .steps,
  .cards{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
  .hero-summary-cards{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
  .about-principles{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
  .section-head{
    align-items:center;
  }
}

@media (max-width:860px){
  .navlinks{display:none}
  .nav-actions a{display:none}
  .hamburger{
    display:inline-flex;
    align-items:center;
    justify-content:center;
  }
  .mobile-menu{display:block}
  h1{
    max-width:none;
    font-size:clamp(2.45rem, 11vw, 3.9rem);
  }
  .hero{
    padding-top:18px;
  }
  .pagehead{
    padding-top:21px;
  }
  .section{
    padding:28px 0;
  }
  .hero-grid{
    gap:34px;
    padding-top:22px;
  }
  .hero-copy{
    max-width:none;
  }
  .hero-mark{
    left:50%;
    top:14px;
    width:min(52vw, 240px);
    height:min(52vw, 240px);
    opacity:.2;
    transform:translateX(-50%);
  }
  .lead,
  .minihero{
    margin-left:auto;
    margin-right:auto;
    font-size:1.04rem;
    line-height:1.68;
  }
  .section-head{
    gap:12px;
    margin-bottom:12px;
  }
  .section-head > div{
    max-width:none;
  }
  .kicker,
  .section-eyebrow,
  .card-label,
  .feature-kicker,
  .badge,
  .price-label{
    margin-inline:auto;
  }
  .hero-points{
    gap:16px;
    margin-top:32px;
  }
  .consent-banner{
    width:min(calc(100vw - 20px), 560px);
    bottom:76px;
  }
  .consent-banner-actions{
    display:grid;
    grid-template-columns:1fr;
  }
  .consent-banner-actions .ghost,
  .consent-banner-actions .cta{
    width:100%;
  }
  .hero-point{
    grid-template-columns:1fr;
    justify-items:center;
    gap:12px;
    text-align:center;
  }
  .consent-panel{
    bottom:14px;
    width:min(100vw - 16px, 720px);
  }
  .consent-panel-inner{
    padding:22px 18px;
    max-height:calc(100vh - 28px);
    max-height:calc(100dvh - 28px);
  }
  .consent-option{
    grid-template-columns:1fr;
    justify-items:center;
    text-align:center;
  }
  .consent-option-static{
    grid-template-columns:1fr;
  }
  .consent-panel h3{
    font-size:1.45rem;
  }
  .consent-copy{
    line-height:1.55;
  }
  .consent-actions{
    display:grid;
    grid-template-columns:1fr;
  }
  .consent-actions .ghost,
  .consent-actions .cta{
    width:100%;
  }
  .preview-head{
    justify-content:center;
    flex-wrap:wrap;
    gap:8px 20px;
  }
  .preview-row{
    text-align:center;
  }
  .preview-bar{
    width:min(100%, 260px);
    margin:0 auto;
  }
  .feature-strip,
  .metric-strip,
  .price-grid,
  .steps,
  .cards{
    grid-template-columns:1fr;
  }
  .hero-summary-cards{
    grid-template-columns:1fr;
  }
  .about-principles{
    grid-template-columns:1fr;
  }
}

@media (max-width:640px){
  .container{padding:0 16px}
  .nav{
    min-height:78px;
  }
  .brand img{
    height:40px;
    width:48px;
  }
  .hero{
    padding:14px 0 8px;
  }
  .pagehead{
    padding:17px 0 4px;
  }
  .section{
    padding:23px 0;
  }
  .hero-availability,
  .launch-signals{
    gap:8px;
  }
  h1{
    margin-top:14px;
    font-size:clamp(2.1rem, 10.5vw, 3rem);
    line-height:.98;
  }
  .section h2,
  .pagehead h1{
    font-size:clamp(1.95rem, 9vw, 2.65rem);
    line-height:1.04;
  }
  .lead,
  .minihero,
  .section p,
  .panel p,
  .metric p,
  .step p,
  .card p,
  .price-sub,
  .price-note{
    font-size:.98rem;
    line-height:1.65;
  }
  .kicker,
  .section-eyebrow,
  .card-label,
  .feature-kicker,
  .price-label{
    font-size:.72rem;
    letter-spacing:.1em;
  }
  .hero-actions{
    flex-direction:column;
    align-items:stretch;
  }
  .hero-actions .cta,
  .hero-actions .ghost,
  .form .btn{
    width:100%;
  }
  .point-number{
    width:40px;
    height:40px;
  }
  .hero-card-inner,
  .feature-card,
  .step,
  .panel,
  .card,
  .price-card{
    padding:22px;
  }
  .cta-band{
    padding:28px 20px;
  }
  .hero-card-actions .btn,
  .hero-card-actions .ghost,
  .cta-band-actions .cta,
  .cta-band-actions .ghost{
    width:100%;
  }
  .hero-video-shell,
  .phone-screen{
    border-radius:22px;
  }
  .metric-strip{
    margin-top:16px;
  }
  .footer{
    margin-top:14px;
    padding:18px 0 24px;
  }
}
