/* ===== DESIGN TOKENS ===== */
:root {
  --text-xs: clamp(0.75rem, 0.7rem + 0.25vw, 0.875rem);
  --text-sm: clamp(0.875rem, 0.8rem + 0.35vw, 1rem);
  --text-base: clamp(1rem, 0.95rem + 0.25vw, 1.125rem);
  --text-lg: clamp(1.125rem, 1rem + 0.75vw, 1.5rem);
  --text-xl: clamp(1.5rem, 1.2rem + 1.25vw, 2.25rem);
  --text-2xl: clamp(2rem, 1.2rem + 2.5vw, 3.5rem);
  --text-3xl: clamp(2.5rem, 1rem + 4vw, 5rem);
  --space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;
  --space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;
  --space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;
  --radius-sm:0.375rem;--radius-md:0.5rem;--radius-lg:0.75rem;
  --radius-xl:1rem;--radius-full:9999px;
  --transition: 180ms cubic-bezier(0.16,1,0.3,1);
  --shadow-sm:0 1px 2px rgba(0,0,0,0.06);
  --shadow-md:0 4px 12px rgba(0,0,0,0.08);
  --shadow-lg:0 12px 32px rgba(0,0,0,0.12);
  --content-narrow:640px;--content-default:960px;--content-wide:1200px;
  --font-display:'Playfair Display',Georgia,serif;
  --font-body:'Inter',-apple-system,sans-serif;

  /* NameVerse palette — deep navy + gold */
  --color-bg:#f8f7f4;
  --color-surface:#ffffff;
  --color-surface-2:#f3f1ed;
  --color-border:#e2dfd8;
  --color-text:#1a1714;
  --color-text-muted:#6b6860;
  --color-text-faint:#b5b3ae;
  --color-primary:#1e3a5f;
  --color-primary-hover:#152c48;
  --color-gold:#c9973a;
  --color-gold-hover:#a87c2a;
  --color-gold-light:#f5ead6;
}

[data-theme='dark'] {
  --color-bg:#111318;
  --color-surface:#181c24;
  --color-surface-2:#1e2330;
  --color-border:#2a3040;
  --color-text:#e8e6e2;
  --color-text-muted:#8a8882;
  --color-text-faint:#4a4845;
  --color-primary:#4a7fc1;
  --color-primary-hover:#3a6aaa;
  --color-gold:#d4a44a;
  --color-gold-hover:#e8b85a;
  --color-gold-light:#2a2418;
}

/* ===== BASE ===== */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;scroll-behavior:smooth;scroll-padding-top:80px}
body{min-height:100dvh;line-height:1.6;font-family:var(--font-body);font-size:var(--text-base);color:var(--color-text);background:var(--color-bg)}
img,svg{display:block;max-width:100%;height:auto}
h1,h2,h3,h4{text-wrap:balance;line-height:1.15;font-family:var(--font-display)}
p,li{text-wrap:pretty;max-width:72ch}
a{color:inherit;text-decoration:none}
button{cursor:pointer;background:none;border:none;font:inherit;color:inherit}
input,textarea,select{font:inherit;color:inherit}

/* ===== LAYOUT ===== */
.container{width:100%;max-width:var(--content-wide);margin-inline:auto;padding-inline:var(--space-6)}
.container-narrow{max-width:var(--content-narrow)}
.section{padding-block:clamp(var(--space-16),8vw,var(--space-24))}
.section-alt{background:var(--color-surface)}
.section-dark{background:var(--color-primary);color:white}

/* ===== BUTTONS ===== */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);border-radius:var(--radius-full);font-family:var(--font-body);font-weight:600;font-size:var(--text-sm);padding:var(--space-3) var(--space-6);transition:all var(--transition);white-space:nowrap;border:2px solid transparent}
.btn-primary{background:var(--color-gold);color:white;border-color:var(--color-gold)}
.btn-primary:hover{background:var(--color-gold-hover);border-color:var(--color-gold-hover);transform:translateY(-1px);box-shadow:0 4px 16px rgba(201,151,58,0.35)}
.btn-outline{background:transparent;color:var(--color-primary);border-color:var(--color-primary)}
.btn-outline:hover{background:var(--color-primary);color:white;transform:translateY(-1px)}
.btn-ghost{background:transparent;color:var(--color-text);border-color:var(--color-border)}
.btn-ghost:hover{background:var(--color-surface);transform:translateY(-1px)}
.btn-lg{padding:var(--space-4) var(--space-8);font-size:var(--text-base)}
.btn-full{width:100%}

/* ===== NAV ===== */
.nav{position:sticky;top:0;z-index:100;background:rgba(248,247,244,0.92);backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border);transition:all var(--transition)}
[data-theme='dark'] .nav{background:rgba(17,19,24,0.92)}
.nav-inner{display:flex;align-items:center;gap:var(--space-8);padding:var(--space-4) var(--space-6);max-width:var(--content-wide);margin-inline:auto}
.logo{display:flex;align-items:center;gap:var(--space-3);font-family:var(--font-display);font-weight:700;font-size:var(--text-lg);color:var(--color-primary);flex-shrink:0}
.logo-text{color:var(--color-text)}
.nav-links{display:flex;gap:var(--space-8);margin-left:auto}
.nav-links a{font-size:var(--text-sm);font-weight:500;color:var(--color-text-muted);transition:color var(--transition)}
.nav-links a:hover{color:var(--color-text)}
.nav-actions{display:flex;align-items:center;gap:var(--space-3);margin-left:var(--space-4)}
.theme-toggle{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-md);color:var(--color-text-muted);border:1px solid var(--color-border);transition:all var(--transition)}
.theme-toggle:hover{color:var(--color-text);background:var(--color-surface)}
.nav-mobile-toggle{display:none;padding:var(--space-2)}
.nav-mobile{display:none;flex-direction:column;gap:var(--space-4);padding:var(--space-4) var(--space-6);border-top:1px solid var(--color-border)}
.nav-mobile.open{display:flex}
.nav-mobile a{font-size:var(--text-base);font-weight:500;color:var(--color-text-muted)}
@media(max-width:768px){
  .nav-links{display:none}
  .nav-mobile-toggle{display:flex}
  .nav-actions .btn{display:none}
}

/* ===== HERO ===== */
.hero{position:relative;padding-top:clamp(var(--space-16),10vw,var(--space-24));padding-bottom:clamp(var(--space-16),8vw,var(--space-20));overflow:hidden;display:grid;grid-template-columns:1fr;align-items:start}
.hero-bg{position:absolute;inset:0;background:linear-gradient(135deg,var(--color-gold-light) 0%,var(--color-bg) 60%);z-index:0}
[data-theme='dark'] .hero-bg{background:linear-gradient(135deg,rgba(201,151,58,0.08) 0%,var(--color-bg) 60%)}
.hero .container{position:relative;z-index:1;max-width:600px;padding-inline:var(--space-6)}
.hero-badge{display:inline-block;background:var(--color-gold-light);color:var(--color-gold-hover);border:1px solid rgba(201,151,58,0.3);border-radius:var(--radius-full);padding:var(--space-2) var(--space-4);font-size:var(--text-xs);font-weight:600;letter-spacing:0.05em;text-transform:uppercase;margin-bottom:var(--space-6)}
.hero-title{font-size:var(--text-3xl);color:var(--color-primary);line-height:1.05;margin-bottom:var(--space-6)}
[data-theme='dark'] .hero-title{color:var(--color-text)}
.hero-sub{font-size:var(--text-lg);color:var(--color-text-muted);margin-bottom:var(--space-8);max-width:55ch}
.hero-cta{display:flex;gap:var(--space-4);flex-wrap:wrap;margin-bottom:var(--space-10)}
.hero-proof{display:flex;gap:var(--space-8);align-items:center;flex-wrap:wrap}
.proof-item{display:flex;flex-direction:column;gap:var(--space-1)}
.proof-num{font-family:var(--font-display);font-size:var(--text-xl);font-weight:700;color:var(--color-primary)}
[data-theme='dark'] .proof-num{color:var(--color-gold)}
.proof-label{font-size:var(--text-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:0.05em}
.proof-divider{width:1px;height:40px;background:var(--color-border)}
.hero-phone-wrap{position:absolute;right:clamp(var(--space-6),6vw,var(--space-20));top:50%;transform:translateY(-50%);z-index:1}
@media(max-width:900px){.hero-phone-wrap{display:none}}

/* PHONE MOCKUP */
.hero-phone{width:260px;background:var(--color-primary);border-radius:32px;padding:6px;box-shadow:0 32px 80px rgba(30,58,95,0.35),0 8px 24px rgba(0,0,0,0.15)}
.phone-screen{background:var(--color-surface);border-radius:28px;overflow:hidden}
.phone-header{background:var(--color-primary);color:white;padding:var(--space-3) var(--space-4);font-family:var(--font-display);font-size:var(--text-sm);font-weight:700;text-align:center}
.phone-card{padding:var(--space-4)}
.phone-tags{display:flex;gap:var(--space-2);margin-bottom:var(--space-3)}
.tag{background:var(--color-gold-light);color:var(--color-gold-hover);border-radius:var(--radius-full);padding:var(--space-1) var(--space-3);font-size:10px;font-weight:600}
.phone-name{font-family:var(--font-display);font-size:var(--text-xl);color:var(--color-gold);font-weight:900;margin-bottom:var(--space-1)}
.phone-meaning{font-size:var(--text-xs);color:var(--color-text-muted);font-style:italic;margin-bottom:var(--space-3)}
.phone-story{font-size:11px;color:var(--color-text-muted);line-height:1.5;margin-bottom:var(--space-3)}
.phone-verse{font-size:11px;font-style:italic;color:var(--color-text-muted);margin-bottom:var(--space-1)}
.phone-ref{font-size:11px;font-weight:700;color:var(--color-gold);margin-bottom:var(--space-3)}
.phone-listen{background:var(--color-gold);color:white;border-radius:var(--radius-full);padding:var(--space-2) var(--space-4);font-size:11px;font-weight:700;width:100%}

/* ===== TRUST BAR ===== */
.trust-bar{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);padding:var(--space-5) 0;background:var(--color-surface)}
.trust-bar .container{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);text-align:center}
.trust-label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:0.1em;color:var(--color-text-faint);font-weight:600}
.trust-items{display:flex;gap:var(--space-4);flex-wrap:wrap;justify-content:center;color:var(--color-text-muted);font-size:var(--text-sm)}

/* ===== SECTION HEADERS ===== */
.section-label{font-size:var(--text-xs);font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--color-gold);margin-bottom:var(--space-3)}
.section-label.light{color:rgba(201,151,58,0.9)}
.section-title{font-size:var(--text-2xl);color:var(--color-text);margin-bottom:var(--space-4)}
.section-title-sm{font-size:var(--text-xl);margin-bottom:var(--space-4)}
.section-title-sm.light,.section-title-sm.light *{color:white}
.section-sub{font-size:var(--text-lg);color:var(--color-text-muted);max-width:60ch;margin-bottom:var(--space-12)}

/* ===== STEPS ===== */
.steps{display:flex;gap:var(--space-4);align-items:flex-start;flex-wrap:wrap}
.step{flex:1;min-width:220px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-8)}
.step-num{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:900;color:var(--color-gold);opacity:0.5;margin-bottom:var(--space-4);line-height:1}
.step-content h3{font-size:var(--text-lg);margin-bottom:var(--space-3);color:var(--color-text)}
.step-content p{font-size:var(--text-sm);color:var(--color-text-muted)}
.step-arrow{font-size:var(--text-xl);color:var(--color-border);align-self:center;flex-shrink:0}
@media(max-width:768px){.step-arrow{display:none}.step{min-width:100%}}

/* ===== FEATURE GRID ===== */
.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(var(--space-12),6vw,var(--space-20));align-items:center}
@media(max-width:768px){.feature-grid{grid-template-columns:1fr}}
.feature-text p{color:var(--color-text-muted);margin-bottom:var(--space-4)}
.feature-list{list-style:none;display:flex;flex-direction:column;gap:var(--space-2);color:var(--color-text-muted);font-size:var(--text-sm)}
.feature-list li{display:flex;gap:var(--space-2);align-items:flex-start}
.feature-list .check{color:var(--color-gold);font-weight:700;flex-shrink:0}

/* DEMO PHONE */
.feature-demo{display:flex;justify-content:center}
.demo-phone{width:280px;background:var(--color-primary);border-radius:32px;padding:8px;box-shadow:var(--shadow-lg)}
.demo-screen{background:var(--color-surface);border-radius:26px;overflow:hidden}
.demo-bar{display:flex;gap:5px;padding:var(--space-3) var(--space-4);background:var(--color-surface-2)}
.demo-dot{width:8px;height:8px;border-radius:50%;background:var(--color-border)}
.demo-content{padding:var(--space-4)}
.demo-tag-row{display:flex;gap:var(--space-2);margin-bottom:var(--space-3)}
.demo-tag{background:var(--color-gold-light);color:var(--color-gold-hover);border-radius:var(--radius-full);padding:2px 10px;font-size:10px;font-weight:600}
.demo-name{font-family:var(--font-display);font-size:var(--text-xl);color:var(--color-gold);font-weight:900}
.demo-pron{font-size:11px;color:var(--color-text-muted);margin-bottom:var(--space-3)}
.demo-divider{height:1px;background:var(--color-border);margin-bottom:var(--space-3)}
.demo-story{font-size:11px;color:var(--color-text-muted);line-height:1.5;margin-bottom:var(--space-3)}
.demo-verse-box{background:var(--color-gold-light);border-left:3px solid var(--color-gold);border-radius:0 var(--radius-md) var(--radius-md) 0;padding:var(--space-3);margin-bottom:var(--space-3)}
.demo-verse{font-size:11px;font-style:italic;color:var(--color-text-muted);margin-bottom:var(--space-1)}
.demo-ref{font-size:11px;font-weight:700;color:var(--color-gold)}
.demo-btn{background:var(--color-gold);color:white;border-radius:var(--radius-full);padding:var(--space-2) var(--space-4);font-size:11px;font-weight:700;width:100%}

/* ===== PRICING ===== */
.pricing-toggle{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-10);justify-content:center;font-size:var(--text-sm);font-weight:500;color:var(--color-text-muted)}
.pricing-toggle .active{color:var(--color-text);font-weight:600}
.save-badge{background:var(--color-gold);color:white;border-radius:var(--radius-full);padding:2px 8px;font-size:var(--text-xs);font-weight:700;margin-left:var(--space-2)}
.toggle-switch{position:relative;display:inline-block;width:44px;height:24px}
.toggle-switch input{opacity:0;width:0;height:0}
.toggle-track{position:absolute;inset:0;background:var(--color-border);border-radius:var(--radius-full);transition:all var(--transition);cursor:pointer}
.toggle-switch input:checked+.toggle-track{background:var(--color-gold)}
.toggle-track::after{content:'';position:absolute;width:18px;height:18px;background:white;border-radius:50%;top:3px;left:3px;transition:all var(--transition)}
.toggle-switch input:checked+.toggle-track::after{transform:translateX(20px)}

.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6);margin-bottom:var(--space-8)}
@media(max-width:900px){.pricing-grid{grid-template-columns:1fr;max-width:420px;margin-inline:auto}}
.pricing-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-8);display:flex;flex-direction:column;gap:var(--space-4);position:relative;transition:all var(--transition)}
.pricing-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}
.pricing-card-featured{border-color:var(--color-gold);border-width:2px;box-shadow:0 0 0 4px rgba(201,151,58,0.08)}
.plan-badge{position:absolute;top:-14px;left:50%;transform:translateX(-50%);background:var(--color-gold);color:white;border-radius:var(--radius-full);padding:var(--space-1) var(--space-4);font-size:var(--text-xs);font-weight:700;white-space:nowrap}
.plan-name{font-family:var(--font-display);font-size:var(--text-lg);font-weight:700;color:var(--color-text)}
.plan-price{display:flex;align-items:baseline;gap:var(--space-1)}
.price-amount{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:900;color:var(--color-primary)}
[data-theme='dark'] .price-amount{color:var(--color-gold)}
.price-period{font-size:var(--text-sm);color:var(--color-text-muted)}
.plan-desc{font-size:var(--text-sm);color:var(--color-text-muted);line-height:1.5}
.plan-features{list-style:none;display:flex;flex-direction:column;gap:var(--space-2);font-size:var(--text-sm);flex:1}
.plan-features li{display:flex;gap:var(--space-2);align-items:flex-start;color:var(--color-text)}
.plan-features .muted{color:var(--color-text-faint)}
.plan-features .check{color:var(--color-gold);font-weight:700;flex-shrink:0}
.plan-features .x{color:var(--color-text-faint);flex-shrink:0}
.pricing-note{text-align:center;color:var(--color-text-muted);font-size:var(--text-sm)}

/* ===== DARK SECTION ===== */
.section-dark .section-label{color:rgba(201,151,58,0.85)}
.section-dark .section-title-sm{color:white}
.light-text{color:rgba(255,255,255,0.8);margin-bottom:var(--space-4)}
.usecase-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-16);align-items:center}
@media(max-width:768px){.usecase-grid{grid-template-columns:1fr}}
.usecase-card{background:white;border-radius:var(--radius-xl);overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,0.3)}
.usecase-card-header{background:var(--color-primary);color:white;padding:var(--space-4) var(--space-6);font-family:var(--font-display);font-weight:700;font-size:var(--text-lg);text-align:center}
.usecase-card-body{padding:var(--space-6);text-align:center}
.uc-label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:0.1em;color:#888;margin-bottom:var(--space-2)}
.uc-url{font-family:var(--font-display);font-size:var(--text-lg);color:var(--color-primary);font-weight:700;margin-bottom:var(--space-2)}
.uc-sub{font-size:var(--text-sm);color:#888}
.usecase-card-wrap{display:flex;flex-direction:column;gap:var(--space-4)}
.usecase-caption{color:rgba(255,255,255,0.6);font-size:var(--text-xs);text-align:center}

/* ===== SIGNUP FORM ===== */
.signup-form{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:clamp(var(--space-8),4vw,var(--space-12));display:flex;flex-direction:column;gap:var(--space-6)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}
@media(max-width:768px){.form-row{grid-template-columns:1fr}}
.form-group{display:flex;flex-direction:column;gap:var(--space-2)}
.form-group label{font-size:var(--text-sm);font-weight:600;color:var(--color-text)}
.form-group input,.form-group textarea,.form-group select{background:var(--color-bg);border:1.5px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);font-size:var(--text-base);color:var(--color-text);transition:border-color var(--transition)}
.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--color-gold)}
.plan-select-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3)}
@media(max-width:500px){.plan-select-grid{grid-template-columns:1fr}}
.plan-option{cursor:pointer}
.plan-option input{display:none}
.plan-option-card{display:flex;flex-direction:column;align-items:center;gap:var(--space-1);padding:var(--space-4);border:2px solid var(--color-border);border-radius:var(--radius-lg);transition:all var(--transition);background:var(--color-bg)}
.plan-option-card strong{font-size:var(--text-sm);font-weight:700;color:var(--color-text)}
.plan-option-card span{font-size:var(--text-xs);color:var(--color-text-muted)}
.plan-option input:checked+.plan-option-card{border-color:var(--color-gold);background:var(--color-gold-light)}
.plan-option-card.featured{border-color:var(--color-gold)}
.plan-option input:checked+.plan-option-card.featured{background:var(--color-gold-light)}
.form-note{text-align:center;font-size:var(--text-xs);color:var(--color-text-muted)}
.form-success{text-align:center;padding:var(--space-12);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl)}
.success-icon{font-size:3rem;color:var(--color-gold);margin-bottom:var(--space-4)}
.form-success h3{font-family:var(--font-display);font-size:var(--text-xl);margin-bottom:var(--space-3)}
.form-success p{color:var(--color-text-muted)}

/* ===== FOOTER ===== */
.footer{background:var(--color-primary);color:white;padding-block:var(--space-16) var(--space-8)}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:var(--space-12);margin-bottom:var(--space-12)}
@media(max-width:768px){.footer-grid{grid-template-columns:1fr}}
.footer-logo{display:flex;align-items:center;gap:var(--space-3);font-family:var(--font-display);font-weight:700;font-size:var(--text-lg);margin-bottom:var(--space-4)}
.footer-brand p{color:rgba(255,255,255,0.65);font-size:var(--text-sm);line-height:1.6;max-width:40ch}
.footer-small{font-size:var(--text-xs) !important;margin-top:var(--space-2)}
.footer-small a{color:rgba(255,255,255,0.5);text-decoration:underline}
.footer-links{display:flex;flex-direction:column;gap:var(--space-3)}
.footer-links h4{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:0.1em;color:rgba(255,255,255,0.4);font-weight:600;margin-bottom:var(--space-2)}
.footer-links a{color:rgba(255,255,255,0.65);font-size:var(--text-sm);transition:color var(--transition)}
.footer-links a:hover{color:white}
.footer-bottom{border-top:1px solid rgba(255,255,255,0.1);padding-top:var(--space-6);text-align:center}
.footer-bottom p{color:rgba(255,255,255,0.4);font-size:var(--text-xs)}
