:root{
  --pink:#ee3c91;
  --pink-dark:#cf246f;
  --pink-soft:#fff1f7;
  --pink-pale:#fff8fb;
  --ink:#1d1b22;
  --muted:#6c6570;
  --line:#f0c7d8;
  --white:#ffffff;
  --shadow:0 14px 40px rgba(129,45,83,.10);
  --radius:22px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--ink);
  font-family:"DM Sans",sans-serif;
  background:
    radial-gradient(circle at 78% 3%, rgba(246,180,211,.38), transparent 26rem),
    linear-gradient(180deg,#fffafd 0%,#fff 32%,#fffafd 100%);
}
a{text-decoration:none;color:inherit}
button{font:inherit}
.container{width:min(1180px,calc(100% - 40px));margin:auto}
.section{padding:88px 0}
.section-tight{padding:20px 0 40px}
.site-header{
  position:sticky;top:0;z-index:30;
  background:rgba(255,250,253,.9);
  backdrop-filter:blur(16px);
  border-bottom:1px solid rgba(238,60,145,.08);
}
.nav-wrap{height:82px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.brand{display:flex;flex-direction:column;line-height:.78;min-width:130px}
.brand-script{
  font-family:"Playfair Display",serif;
  font-style:italic;font-size:31px;color:var(--pink);
  transform:rotate(-4deg);transform-origin:left;
}
.brand-surname{font-size:11px;letter-spacing:.35em;margin:5px 0 0 27px;font-weight:700}
.nav-links{display:flex;align-items:center;gap:27px;font-size:14px;font-weight:600}
.nav-links a:not(.btn){position:relative;padding:30px 0 27px}
.nav-links a:not(.btn)::after{
  content:"";position:absolute;height:2px;left:0;bottom:20px;width:0;background:var(--pink);transition:.25s
}
.nav-links a:hover::after,.nav-links .active::after{width:100%}
.menu-toggle{display:none;border:0;background:none;font-size:26px}

.btn{
  display:inline-flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,var(--pink),#f45ba2);
  color:#fff;border:0;border-radius:8px;padding:14px 24px;
  font-weight:700;box-shadow:0 8px 20px rgba(238,60,145,.2);
  transition:.2s;cursor:pointer;
}
.btn:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(238,60,145,.25)}
.btn-small{padding:12px 20px}
.btn-outline{background:#fff;color:var(--pink);border:1px solid var(--pink);box-shadow:none}
.hero{padding-top:70px}
.hero-grid{display:grid;grid-template-columns:1.5fr .65fr;gap:60px;align-items:center}
.eyebrow{color:var(--pink);font-weight:800;letter-spacing:.16em;font-size:12px;margin:0 0 12px}
.hero h1,.section-heading h2,.cta-card h2,.coming-soon-card h2{
  font-family:"Playfair Display",serif;margin:0;line-height:1.04;
}
.hero h1{font-size:clamp(48px,6vw,76px);letter-spacing:-.025em}
.hero h1 span{color:var(--pink)}
.hero-text{max-width:630px;font-size:18px;line-height:1.7;color:#4f4853;margin:25px 0}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.contact-strip{display:flex;gap:26px;flex-wrap:wrap;margin-top:28px;font-size:14px;color:var(--muted)}
.hero-card{
  position:relative;background:rgba(255,255,255,.78);border:1px solid var(--line);
  border-radius:var(--radius);padding:34px;box-shadow:var(--shadow);line-height:1.55;
  transform:rotate(1.2deg);
}
.quote-mark{font-family:Georgia,serif;color:var(--pink);font-size:48px;line-height:.6}
.heart{font-size:58px;color:var(--pink);text-align:right;line-height:.7}

.stat-grid{
  background:rgba(255,255,255,.85);border:1px solid var(--line);border-radius:18px;
  box-shadow:var(--shadow);display:grid;grid-template-columns:repeat(4,1fr);overflow:hidden
}
.stat-card{padding:25px 28px;display:flex;align-items:center;gap:17px;border-right:1px solid var(--line)}
.stat-card:last-child{border-right:0}
.stat-icon{font-size:34px;color:var(--pink)}
.stat-card strong{font-family:"Playfair Display",serif;font-size:32px;display:block}
.stat-card span{font-weight:700;font-size:14px;display:block}
.stat-card small{color:var(--muted)}

.split-card{
  display:grid;grid-template-columns:1.05fr .95fr;gap:42px;background:#fff;border:1px solid var(--line);
  border-radius:var(--radius);padding:42px;box-shadow:var(--shadow)
}
.section-heading h2{font-size:36px}
.section-heading>p:last-child{color:var(--muted);max-width:650px;line-height:1.7}
.centered{text-align:center;max-width:760px;margin:0 auto 36px}
.centered>p:last-child{margin-left:auto;margin-right:auto}
.split-card>div>p{line-height:1.75;color:var(--muted)}
.timeline{display:flex;align-items:flex-start;margin-top:35px}
.timeline-item{width:21%;text-align:center}
.timeline-item span{
  display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--pink);
  color:#fff;margin:0 auto 11px;box-shadow:0 0 0 7px var(--pink-soft)
}
.timeline-item h3{font-size:14px;margin:0 0 5px}.timeline-item p{font-size:12px;margin:0;color:var(--muted)}
.timeline-line{height:2px;background:var(--pink);flex:1;margin-top:18px;opacity:.45}
.bring-card{border-left:1px solid var(--line);padding-left:42px}
.check-list{padding:0;margin:25px 0 0;list-style:none;display:grid;gap:16px}
.check-list li{position:relative;padding-left:37px}
.check-list li::before{
  content:"✓";position:absolute;left:0;top:-2px;width:25px;height:25px;border-radius:50%;
  display:grid;place-items:center;background:#ffd6e8;color:var(--pink);font-weight:900
}
.soft-section{background:linear-gradient(180deg,rgba(255,241,247,.63),rgba(255,255,255,.1))}
.three-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.feature-card,.email-card,.plan-card,.testimonial-card,.coming-soon-card{
  background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)
}
.feature-card{padding:30px}.card-no{color:var(--pink);font-size:12px;font-weight:800;letter-spacing:.1em}
.feature-card h3,.email-card h3{font-family:"Playfair Display",serif;font-size:23px;margin:10px 0}
.feature-card p,.email-card p{color:var(--muted);line-height:1.65}
.email-card{padding:28px}
.pill{display:inline-block;color:var(--pink-dark);background:var(--pink-soft);border-radius:999px;padding:7px 10px;font-size:11px;font-weight:800}
.text-btn{background:none;border:0;color:var(--pink);padding:0;font-weight:800;cursor:pointer}
.plan-testimonial{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.plan-card,.testimonial-card{padding:36px}
.week-list{display:grid;gap:12px;margin-top:25px}
.week-list div{display:flex;gap:12px;align-items:center;border-bottom:1px solid #f5dbe6;padding-bottom:11px}
.week-list b{min-width:76px;color:var(--pink)}
.testimonial-card blockquote{
  font-family:"Playfair Display",serif;font-size:24px;line-height:1.45;margin:20px 0 28px
}
.testimonial-person{display:flex;align-items:center;gap:12px}.testimonial-person span{display:block;color:var(--muted);font-size:13px}
.avatar{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--pink);color:#fff;font-weight:800}
.future-audio{padding-top:55px}
.coming-soon-card{padding:32px 38px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.coming-soon-card h2{font-size:30px}.coming-soon-card p{color:var(--muted)}
.soon-badge{padding:10px 16px;border:1px dashed var(--pink);border-radius:999px;color:var(--pink);font-weight:800;white-space:nowrap}
.cta-section{padding:25px 0 0}
.cta-card{
  background:linear-gradient(135deg,#e92f87,#f35aa3);
  color:#fff;border-radius:22px 22px 0 0;padding:44px 50px;display:flex;align-items:center;justify-content:space-between;gap:30px
}
.cta-card h2{font-size:38px}.cta-card p{margin-bottom:0;opacity:.92}.eyebrow.light{color:#ffe2ef}
.btn-light{background:#fff;color:var(--pink);box-shadow:none}
footer{background:#fff6fa;padding:45px 0 24px}
.footer-grid{display:grid;grid-template-columns:1.3fr .8fr 1fr;gap:50px}
.footer-grid h3{font-size:14px;margin:0 0 12px}.footer-grid a,.footer-grid span{display:block;color:var(--muted);margin:8px 0;font-size:14px}
.footer-brand p{color:var(--muted);line-height:1.55}.copyright{text-align:center;color:#988b93;font-size:12px;margin:35px 0 0}

.modal{
  position:fixed;inset:0;background:rgba(28,16,24,.46);z-index:60;
  display:none;align-items:center;justify-content:center;padding:20px
}
.modal.open{display:flex}.modal-panel{background:#fff;width:min(580px,100%);border-radius:20px;padding:34px;position:relative;box-shadow:0 25px 70px rgba(40,10,30,.25)}
.modal-panel h2{font-family:"Playfair Display",serif;font-size:30px}.modal-panel p{line-height:1.7;color:var(--muted)}
.modal-close{position:absolute;right:17px;top:12px;border:0;background:none;font-size:30px;cursor:pointer;color:#7b6873}

@media (max-width: 900px){
  .menu-toggle{display:block}
  .nav-links{
    display:none;position:absolute;top:81px;left:0;right:0;padding:20px;
    background:#fffafc;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0
  }
  .nav-links.open{display:flex}.nav-links a:not(.btn){padding:13px 0}.nav-links a::after{display:none}
  .hero-grid,.split-card,.plan-testimonial{grid-template-columns:1fr}
  .hero-card{max-width:600px;transform:none}
  .stat-grid{grid-template-columns:1fr 1fr}.stat-card:nth-child(2){border-right:0}.stat-card:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .bring-card{border-left:0;border-top:1px solid var(--line);padding:35px 0 0}
  .three-grid{grid-template-columns:1fr}
}
@media (max-width: 620px){
  .container{width:min(100% - 26px,1180px)}
  .section{padding:62px 0}.hero{padding-top:45px}
  .hero h1{font-size:44px}.hero-text{font-size:16px}
  .stat-grid{grid-template-columns:1fr}.stat-card{border-right:0;border-bottom:1px solid var(--line)}.stat-card:last-child{border-bottom:0}
  .split-card{padding:25px}.timeline{display:grid;grid-template-columns:1fr 1fr;gap:18px}.timeline-line{display:none}.timeline-item{width:100%}
  .section-heading h2{font-size:31px}
  .coming-soon-card,.cta-card{align-items:flex-start;flex-direction:column}.cta-card{padding:34px 25px}.cta-card h2{font-size:32px}
  .footer-grid{grid-template-columns:1fr;gap:25px}.contact-strip{flex-direction:column;gap:10px}
}
