/* ===== BASE ===== */
*{margin:0;padding:0;box-sizing:border-box}
:root{
  --bg:#FAFAF8;--card:#FFFFFF;--dark:#0F1B2D;--navy:#162236;
  --accent:#00856A;--accent-light:#E8F5F0;--accent-dark:#006B55;
  --warm:#F5F0EB;--text:#2C3E50;--muted:#6B7C8A;--border:#E2DDD7;
}
html{scroll-behavior:smooth}
body{font-family:'DM Sans',sans-serif;color:var(--text);background:var(--bg);line-height:1.7;-webkit-font-smoothing:antialiased}
h1,h2,h3{font-family:'Fraunces',serif;font-weight:800;line-height:1.2}
a{text-decoration:none}
.container{max-width:900px;margin:0 auto;padding:0 24px}
.accent{color:var(--accent)}
.muted{color:var(--muted)}
.small{font-size:14px}

/* ===== NAV ===== */
.site-nav{padding:16px 0;border-bottom:1px solid var(--border);background:var(--bg);position:sticky;top:0;z-index:100;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.site-nav .container{display:flex;justify-content:space-between;align-items:center}
.nav-logo{font-family:'Fraunces',serif;font-weight:800;font-size:18px;color:var(--dark)}
.nav-logo span{color:var(--accent)}
.nav-links{display:flex;gap:28px;align-items:center}
.nav-links a{font-size:14px;font-weight:500;color:var(--muted);transition:color .2s}
.nav-links a:hover{color:var(--dark)}
.nav-links a.nav-cta{background:var(--accent);color:#fff;padding:9px 20px;border-radius:6px;font-weight:700;transition:background .2s}
.nav-links a.nav-cta:hover{background:var(--accent-dark);color:#fff}
.nav-links a.active{color:var(--accent);font-weight:700}
.nav-mobile{display:none;background:none;border:none;cursor:pointer;padding:4px}
.nav-mobile svg{width:24px;height:24px;stroke:var(--dark);stroke-width:2;fill:none}
@media(max-width:640px){
  .nav-links{display:none;position:absolute;top:100%;left:0;right:0;background:var(--card);border-bottom:1px solid var(--border);flex-direction:column;padding:16px 24px;gap:12px;box-shadow:0 8px 24px rgba(0,0,0,.08)}
  .nav-links.open{display:flex}
  .nav-mobile{display:block}
}

/* ===== HERO ===== */
.hero{padding:72px 0 60px;text-align:center}
.hero-label{display:inline-block;background:var(--accent-light);color:var(--accent);font-size:13px;font-weight:700;padding:6px 16px;border-radius:100px;margin-bottom:24px;letter-spacing:.5px}
.hero h1{font-size:clamp(34px,5vw,50px);color:var(--dark);margin-bottom:20px;max-width:800px;margin-left:auto;margin-right:auto}
.hero p{font-size:19px;color:var(--muted);max-width:640px;margin:0 auto 32px}
.hero-cta{display:inline-block;background:var(--accent);color:#fff;padding:16px 40px;border-radius:8px;font-weight:700;font-size:17px;transition:all .2s;box-shadow:0 4px 16px rgba(0,133,106,.25)}
.hero-cta:hover{background:var(--accent-dark);transform:translateY(-1px);box-shadow:0 6px 24px rgba(0,133,106,.3)}
.hero-sub{margin-top:16px;font-size:14px;color:var(--muted)}

/* ===== SECTIONS ===== */
section{padding:64px 0}
.section-label{font-size:13px;font-weight:700;color:var(--accent);letter-spacing:1.5px;text-transform:uppercase;margin-bottom:12px}
section h2{font-size:clamp(28px,3.5vw,38px);color:var(--dark);margin-bottom:16px}
section .lead{font-size:17px;color:var(--muted);max-width:650px;margin-bottom:40px}

/* ===== PROBLEM ===== */
.problem{background:var(--dark);color:#fff;border-radius:16px;padding:48px}
.problem h2{color:#fff}
.problem .lead{color:rgba(255,255,255,.65)}
.problem-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}
.problem-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:24px}
.problem-card h4{color:#fff;font-family:'DM Sans',sans-serif;font-weight:700;font-size:16px;margin-bottom:8px}
.problem-card p{color:rgba(255,255,255,.55);font-size:14px;line-height:1.6}

/* ===== EXPLAINER ===== */
.explainer{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:40px}
.explainer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:32px}
.exp-card{border-radius:10px;padding:24px;text-align:center}
.exp-card.highlight{background:var(--accent-light);border:2px solid var(--accent)}
.exp-card.dim{background:var(--bg);border:1px solid var(--border);opacity:.7}
.exp-card h4{font-family:'DM Sans',sans-serif;font-weight:700;font-size:15px;margin-bottom:8px}
.exp-card.highlight h4{color:var(--accent-dark)}
.exp-card.dim h4{color:var(--muted)}
.exp-card p{font-size:13px;line-height:1.6}
.exp-card.highlight p{color:var(--text)}
.exp-card.dim p{color:var(--muted)}
.exp-tag{display:inline-block;font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase;padding:3px 10px;border-radius:100px;margin-bottom:10px}
.exp-tag.yes{background:var(--accent);color:#fff}
.exp-tag.no{background:var(--border);color:var(--muted)}

/* ===== DELIVERABLES ===== */
.deliverable{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:32px;margin-bottom:16px;transition:box-shadow .2s}
.deliverable:hover{box-shadow:0 4px 20px rgba(0,0,0,.06)}
.deliverable-num{display:inline-block;background:var(--accent);color:#fff;width:32px;height:32px;border-radius:8px;text-align:center;line-height:32px;font-weight:700;font-size:14px;margin-bottom:12px}
.deliverable h3{font-size:22px;color:var(--dark);margin-bottom:8px;font-family:'DM Sans',sans-serif;font-weight:700}
.deliverable>p{color:var(--muted);font-size:15px}
.deliverable-details{margin-top:16px;padding-top:16px;border-top:1px solid var(--border)}
.deliverable-details li{font-size:14px;color:var(--text);margin-bottom:6px;padding-left:20px;position:relative;list-style:none}
.deliverable-details li::before{content:"→";position:absolute;left:0;color:var(--accent);font-weight:700}

/* ===== VALUE STACK ===== */
.value-stack{background:var(--dark);border-radius:16px;padding:48px;color:#fff}
.value-stack h2{color:#fff}
.value-row{display:flex;justify-content:space-between;align-items:center;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.08)}
.value-row:last-child{border-bottom:none}
.value-item{color:rgba(255,255,255,.75);font-size:15px}
.value-price{color:#fff;font-weight:700;font-size:15px;text-align:right;white-space:nowrap}
.value-total{display:flex;justify-content:space-between;align-items:center;padding:20px 0;margin-top:8px;border-top:2px solid rgba(255,255,255,.2)}
.value-total .value-item{color:#fff;font-weight:700;font-size:17px}
.value-total .value-price{font-size:24px;font-family:'Fraunces',serif;font-weight:800;color:var(--accent)}
.value-you-pay{text-align:center;margin-top:32px;padding-top:24px;border-top:1px solid rgba(255,255,255,.08)}
.value-you-pay p{color:rgba(255,255,255,.5);font-size:14px;margin-bottom:4px}
.value-you-pay .big-price{font-family:'Fraunces',serif;font-size:56px;font-weight:800;color:#fff}
.value-you-pay .price-note{color:rgba(255,255,255,.4);font-size:14px;margin-top:4px}

/* ===== PROCESS ===== */
.process-step{display:flex;gap:24px;margin-bottom:32px;align-items:flex-start}
.process-num{width:48px;height:48px;background:var(--accent-light);color:var(--accent);border-radius:12px;display:flex;align-items:center;justify-content:center;font-family:'Fraunces',serif;font-weight:800;font-size:20px;flex-shrink:0}
.process-content h3{font-family:'DM Sans',sans-serif;font-weight:700;font-size:18px;color:var(--dark);margin-bottom:4px}
.process-content p{color:var(--muted);font-size:15px}

/* ===== GUARANTEE ===== */
.guarantee{background:var(--accent-light);border:2px solid var(--accent);border-radius:16px;padding:40px;text-align:center}
.guarantee h2{color:var(--accent-dark);margin-bottom:12px}
.guarantee p{font-size:17px;color:var(--text);max-width:600px;margin:0 auto}

/* ===== PRICING ===== */
.pricing{background:var(--card);border:2px solid var(--dark);border-radius:16px;padding:48px;text-align:center}
.pricing .price{font-family:'Fraunces',serif;font-size:56px;font-weight:800;color:var(--dark);margin:16px 0 8px}
.pricing .price-sub{color:var(--muted);font-size:15px;margin-bottom:24px}
.pricing-features{text-align:left;max-width:480px;margin:0 auto 32px;display:flex;flex-direction:column;gap:10px}
.pricing-features li{list-style:none;font-size:15px;color:var(--text);padding-left:28px;position:relative}
.pricing-features li::before{content:"✓";position:absolute;left:0;color:var(--accent);font-weight:700;font-size:16px}
.pricing-cta{display:inline-block;background:var(--dark);color:#fff;padding:18px 48px;border-radius:8px;font-weight:700;font-size:17px;transition:all .2s}
.pricing-cta:hover{background:#1a2d45;transform:translateY(-1px)}

/* ===== FAQ ===== */
.faq-item{border-bottom:1px solid var(--border);padding:24px 0}
.faq-item:first-child{border-top:1px solid var(--border)}
.faq-q{font-weight:700;font-size:17px;color:var(--dark);cursor:pointer;display:flex;justify-content:space-between;align-items:center}
.faq-q::after{content:"+";font-size:24px;color:var(--accent);font-weight:400;transition:transform .2s}
.faq-item.open .faq-q::after{transform:rotate(45deg)}
.faq-a{color:var(--muted);font-size:15px;max-height:0;overflow:hidden;transition:max-height .3s ease,padding .3s ease;padding-top:0}
.faq-item.open .faq-a{max-height:300px;padding-top:12px}

/* ===== FREE VIDEO PAGE ===== */
.video-page{max-width:1080px;margin:0 auto;padding:48px 24px;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}
.video-copy{padding-top:8px}
.video-copy .copy-label{display:inline-block;background:var(--accent-light);color:var(--accent);font-size:12px;font-weight:700;padding:5px 14px;border-radius:100px;margin-bottom:20px;letter-spacing:.5px}
.video-copy h1{font-size:clamp(28px,3.5vw,38px);color:var(--dark);margin-bottom:16px}
.video-copy h1 em{color:var(--accent);font-style:normal}
.video-copy .subtitle{font-size:17px;color:var(--muted);margin-bottom:32px}
.what-list{list-style:none;display:flex;flex-direction:column;gap:14px;margin-bottom:32px}
.what-list li{font-size:15px;color:var(--text);padding-left:28px;position:relative;line-height:1.6}
.what-list li::before{content:"→";position:absolute;left:0;color:var(--accent);font-weight:700}
.what-list li strong{color:var(--dark)}
.copy-note{font-size:14px;color:var(--muted);border-top:1px solid var(--border);padding-top:20px}
.form-side{position:sticky;top:80px}

/* ===== LEGAL PAGES ===== */
.legal{max-width:700px;margin:0 auto;padding:48px 24px 80px}
.legal h1{font-size:32px;color:var(--dark);margin-bottom:8px}
.legal .updated{font-size:14px;color:var(--muted);margin-bottom:40px}
.legal h2{font-size:18px;color:var(--dark);margin-top:32px;margin-bottom:10px;font-family:'DM Sans',sans-serif;font-weight:700}
.legal p{font-size:15px;color:var(--text);margin-bottom:12px}
.legal ul{margin:0 0 12px 20px}
.legal li{font-size:15px;color:var(--text);margin-bottom:6px}
.legal a{color:var(--accent);text-decoration:underline}

/* ===== FOOTER ===== */
footer{padding:40px 0;border-top:1px solid var(--border);text-align:center}
footer p{font-size:13px;color:var(--muted)}
footer a{color:var(--muted);text-decoration:underline}
footer .footer-links{margin-bottom:8px}
footer .footer-links a{margin:0 12px;font-size:13px}

/* ===== RESPONSIVE ===== */
@media(max-width:768px){
  .hero{padding:48px 0 40px}
  .problem{padding:32px 20px}
  .explainer{padding:32px 20px}
  .explainer-grid{grid-template-columns:1fr}
  .value-stack{padding:32px 20px}
  .value-row{flex-direction:column;gap:4px;align-items:flex-start}
  .pricing{padding:32px 20px}
  .guarantee{padding:32px 20px}
  .process-step{flex-direction:column;gap:12px}
  .video-page{grid-template-columns:1fr;gap:32px;padding:32px 20px}
  .form-side{position:static}
}
