:root{
  --bg:#f4f1fb;
  --ink:#15101f;
  --purple:#7B3FE4;
  --purple-deep:#6A2FD0;
  --purple-soft:#efe8fd;
  --green:#3CCB3C;
  --green-deep:#2FB52F;
  --gray:#e6e2f0;
  --muted:#6f6880;
  --line:#e3def0;
  --radius:26px;
}

*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family:'Manrope',system-ui,sans-serif;
  background:var(--bg);
  color:var(--ink);
  -webkit-font-smoothing:antialiased;
  line-height:1.5;
}
h1,h2,h3,h4{font-family:'Unbounded',sans-serif;font-weight:700;line-height:1.05;letter-spacing:-.02em}
a{color:inherit;text-decoration:none}
img{display:block;width:100%;height:100%;object-fit:cover}

section{max-width:1240px;margin:0 auto;padding:0 24px}

/* BUTTONS */
.btn{
  display:inline-flex;align-items:center;gap:8px;
  padding:14px 24px;border-radius:100px;
  font-weight:700;font-size:15px;cursor:pointer;
  transition:transform .15s ease,background .2s ease,color .2s ease;
  border:1.5px solid transparent;white-space:nowrap;
}
.btn:hover{transform:translateY(-2px)}
.btn-green{background:var(--green);color:#0c2a0c}
.btn-green:hover{background:var(--green-deep)}
.btn-purple{background:var(--purple);color:#fff}
.btn-purple:hover{background:var(--purple-deep)}
.btn-ghost{background:transparent;border-color:var(--ink);color:var(--ink)}
.btn-outline{background:#fff;border-color:var(--ink);color:var(--ink)}
.btn-outline-light{background:transparent;border-color:rgba(255,255,255,.4);color:#fff}
.btn-outline-light:hover{background:rgba(255,255,255,.08)}

/* LOGO */
.logo{display:flex;align-items:center;gap:11px}
.logo img{width:40px;height:40px;border-radius:11px}
.logo-word{font-family:'Unbounded';font-weight:700;font-size:18px;letter-spacing:-.01em}

/* NAV */
.nav{
  position:sticky;top:0;z-index:50;
  max-width:1240px;margin:0 auto;
  display:flex;align-items:center;justify-content:space-between;
  padding:16px 24px;
  background:rgba(244,241,251,.82);backdrop-filter:blur(14px);
}
.nav-links{display:flex;gap:28px}
.nav-links a{font-weight:600;font-size:15px;color:var(--muted);transition:color .2s}
.nav-links a:hover{color:var(--ink)}

/* HERO */
.hero{
  display:grid;grid-template-columns:1.18fr .82fr;gap:18px;
  padding-top:14px;padding-bottom:18px;align-items:stretch;
}
.hero-card{border-radius:var(--radius);overflow:hidden}
.hero-text{background:var(--purple);color:#fff;padding:48px;display:flex;flex-direction:column}
.hero-role{font-size:13.5px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#e9defb}
.hero-text h1{font-size:clamp(38px,5vw,64px);margin:18px 0 12px;letter-spacing:-.03em}
.hero-slogan{font-family:'Unbounded';font-weight:600;font-size:clamp(18px,2.1vw,24px);color:var(--green);margin-bottom:18px}
.hero-sub{color:#e3d8f7;font-size:16px;max-width:96%;margin-bottom:26px}
.regalia{list-style:none;display:flex;flex-direction:column;gap:12px;margin-bottom:auto;padding-bottom:30px}
.regalia li{display:flex;align-items:center;gap:13px;font-size:15.5px;font-weight:500;color:#f1ebfb}
.regalia li span{flex:none;width:26px;height:26px;display:grid;place-items:center;background:var(--green);color:#0c2a0c;border-radius:50%;font-size:15px;font-weight:800}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap}

/* hero side: big proof panel */
.hero-side{background:var(--ink);color:#fff;padding:44px 40px;display:flex;flex-direction:column;justify-content:center;gap:22px}
.hero-side .hs-big{font-family:'Unbounded';font-size:clamp(40px,5vw,62px);line-height:.95;color:var(--green)}
.hero-side .hs-row b{font-family:'Unbounded';font-size:30px;display:block;line-height:1}
.hero-side .hs-row span{font-size:14px;color:#b8b2c8}
.hero-side hr{border:none;border-top:1px solid rgba(255,255,255,.12)}

/* SECTION HEAD */
.section-head{padding-top:96px;margin-bottom:34px}
.section-head h2{font-size:clamp(28px,3.6vw,46px)}
.kicker{display:inline-block;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--purple);margin-bottom:14px}

/* PAINS */
.pains-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.pain{
  background:#fff;border:1px solid var(--line);border-radius:var(--radius);
  padding:28px 26px;transition:transform .2s ease,box-shadow .2s ease;
}
.pain:hover{transform:translateY(-4px);box-shadow:0 18px 40px -24px rgba(123,63,228,.4)}
.pain h3{font-size:18px;color:var(--purple);margin-bottom:10px}
.pain p{font-size:15px;color:var(--muted)}
.pains-note{text-align:center;margin-top:30px;font-family:'Unbounded';font-weight:600;font-size:clamp(18px,2.2vw,24px)}

/* SERVICES */
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.svc{
  background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px 26px;
  transition:transform .2s ease,box-shadow .2s ease;
}
.svc:hover{transform:translateY(-4px);box-shadow:0 18px 40px -24px rgba(123,63,228,.4)}
.svc-num{font-family:'Unbounded';font-size:30px;color:var(--purple);line-height:1}
.svc h3{font-size:19px;margin:14px 0 10px}
.svc p{font-size:15px;color:var(--muted)}
.svc-hero{grid-column:1/-1;background:var(--purple);color:#fff;border-color:transparent;display:grid;grid-template-columns:1.1fr 1fr;gap:30px;align-items:center;padding:38px}
.svc-hero .svc-num{color:var(--green)}
.svc-hero h3{font-size:clamp(22px,2.6vw,30px);margin-top:10px}
.svc-hero p{color:#e3d8f7;font-size:16px}
.svc-hero-stats{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.svc-hero-stats div{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:18px;padding:18px}
.svc-hero-stats b{font-family:'Unbounded';font-size:26px;display:block;color:var(--green)}
.svc-hero-stats span{font-size:13px;color:#dcd2f3}

/* RESULTS */
.results-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.rcard{
  background:#fff;border:1px solid var(--line);border-radius:var(--radius);
  padding:26px 24px;min-height:170px;display:flex;flex-direction:column;justify-content:space-between;
  transition:transform .2s ease,box-shadow .2s ease;
}
.rcard:hover{transform:translateY(-4px);box-shadow:0 18px 40px -24px rgba(123,63,228,.4)}
.rcard b{font-family:'Unbounded';font-size:clamp(26px,3vw,36px);line-height:1}
.rcard span{font-size:14px;color:var(--muted);font-weight:500;margin-top:14px}
.rcard-green{background:var(--green);border-color:transparent}
.rcard-green b,.rcard-green span{color:#0c2a0c}
.rcard-purple{background:var(--purple);border-color:transparent;color:#fff}
.rcard-purple b{color:var(--green)}
.rcard-purple span{color:#dcd2f3}

/* CASES */
.cases-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.case{
  background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:34px;
  transition:transform .2s ease,box-shadow .2s ease;
}
.case:hover{transform:translateY(-4px);box-shadow:0 22px 50px -28px rgba(123,63,228,.42)}
.case-wide{grid-column:1/-1;background:var(--purple);color:#fff;border-color:transparent}
.case-tag{display:inline-block;font-size:13px;font-weight:700;color:var(--purple);background:var(--purple-soft);padding:7px 13px;border-radius:100px;margin-bottom:18px}
.case-wide .case-tag{background:rgba(255,255,255,.14);color:#fff}
.case h3{font-size:clamp(20px,2.2vw,26px);margin-bottom:14px}
.case p{color:#454048;font-size:15.5px;margin-bottom:22px}
.case-wide p{color:#e3d8f7}
.case-shot{margin:0 0 22px;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#f7f5fc}
.case-shot img{width:100%;height:auto;display:block}
.case-shot figcaption{font-size:12.5px;color:var(--muted);padding:9px 14px;border-top:1px solid var(--line);font-weight:600}
.case-reels-shots{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0 0 22px;align-items:start}
.case-reels-shots .case-shot{margin:0}
.case-reels-shots .case-shot img{max-height:300px;width:auto;margin:0 auto;object-fit:contain}
.case-beforeafter{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0 0 22px}
.case-beforeafter figure{position:relative;margin:0;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#f7f5fc;display:flex;align-items:center}
.case-beforeafter img{width:100%;height:auto;display:block}
.ba-label{position:absolute;top:10px;left:10px;z-index:2;font-size:12px;font-weight:800;padding:5px 11px;border-radius:100px;text-transform:uppercase;letter-spacing:.05em}
.ba-before{background:var(--gray);color:var(--ink)}
.ba-after{background:var(--green);color:#0c2a0c}
.case-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;border-top:1px solid var(--line);padding-top:20px}
.case-wide .case-metrics{border-top-color:rgba(255,255,255,.16)}
.case-metrics b{font-family:'Unbounded';font-size:22px;display:block}
.case-wide .case-metrics b{color:var(--green)}
.case-metrics span{font-size:12.5px;color:var(--muted)}
.case-wide .case-metrics span{color:#dcd2f3}
.case-link{display:inline-block;color:var(--green);font-weight:700;font-size:16px}

/* PACKAGES */
.pkgs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;align-items:stretch}
.pkg{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:34px 30px;display:flex;flex-direction:column;position:relative}
.pkg-hot{border:2px solid var(--purple);box-shadow:0 24px 50px -30px rgba(123,63,228,.5)}
.pkg-badge{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--purple);color:#fff;font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;padding:7px 16px;border-radius:100px}
.pkg h3{font-size:24px;color:var(--purple)}
.pkg-tag{color:var(--muted);font-size:14px;margin:6px 0 16px}
.pkg-price{font-family:'Unbounded';font-size:24px;margin-bottom:20px}
.pkg ul{list-style:none;display:flex;flex-direction:column;gap:11px;margin-bottom:24px;flex:1}
.pkg li{display:flex;gap:10px;font-size:15px;color:#3a3640}
.pkg li::before{content:'✓';color:var(--green);font-weight:800}
.pkg .btn{justify-content:center;width:100%}
.pkgs-note{text-align:center;margin-top:26px;color:var(--purple);font-weight:700}

/* STEPS */
.steps{display:flex;flex-direction:column;gap:12px}
.step{display:grid;grid-template-columns:120px 1fr;gap:22px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px 28px}
.step-time{font-family:'Unbounded';font-weight:700;font-size:20px;color:#fff;background:var(--purple);border-radius:16px;text-align:center;padding:16px 0}
.step h4{font-size:19px;color:var(--purple);margin-bottom:6px}
.step p{color:#454048;font-size:15px}
.steps-note{text-align:center;margin-top:26px;font-family:'Unbounded';font-weight:600;font-size:clamp(17px,2vw,22px)}

/* EXPERTS */
.experts-inner{background:var(--ink);color:#fff;border-radius:var(--radius);padding:54px 48px;text-align:center;margin-top:8px}
.experts-inner h2{font-size:clamp(24px,3.2vw,40px);max-width:820px;margin:14px auto 32px}
.experts-list{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
.experts-list span{font-family:'Unbounded';font-weight:500;font-size:clamp(15px,1.8vw,20px);background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);padding:12px 22px;border-radius:100px;transition:background .2s,border-color .2s,color .2s}
.experts-list span:hover{background:var(--green);color:#0c2a0c;border-color:transparent}

/* CTA */
.cta{background:var(--purple);color:#fff;border-radius:var(--radius);max-width:1240px;margin:96px auto 24px;padding:72px 48px 0;overflow:hidden}
.cta-inner{text-align:center;max-width:780px;margin:0 auto}
.cta h2{font-size:clamp(30px,4.4vw,56px)}
.cta-sub{color:#e3d8f7;font-size:18px;margin:16px auto 10px;max-width:620px}
.cta-limit{display:inline-block;background:var(--green);color:#0c2a0c;font-weight:800;padding:8px 18px;border-radius:100px;font-size:14px;margin:18px 0 8px}
.contacts{display:flex;flex-direction:column;gap:0;max-width:560px;margin:30px auto 48px;text-align:left}
.contact-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 4px;border-top:1px solid rgba(255,255,255,.18);transition:padding .2s ease}
.contact-row:last-child{border-bottom:1px solid rgba(255,255,255,.18)}
.contact-row span{color:#dcd2f3;font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:.08em}
.contact-row b{font-family:'Unbounded';font-size:clamp(17px,2.2vw,24px);font-weight:600}
a.contact-row:hover{padding-left:14px;padding-right:0}
a.contact-row:hover b{color:var(--green)}
.cta-bottom{border-top:1px solid rgba(255,255,255,.14);text-align:center;padding:26px;color:#d3c7ee;font-size:13px}

/* REVEAL */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}
.reveal.in{opacity:1;transform:none}

/* RESPONSIVE */
@media(max-width:980px){
  .hero{grid-template-columns:1fr}
  .nav-links{display:none}
  .results-grid{grid-template-columns:repeat(2,1fr)}
  .pains-grid,.services-grid{grid-template-columns:repeat(2,1fr)}
  .svc-hero{grid-template-columns:1fr}
  .cases-grid{grid-template-columns:1fr}
  .pkgs-grid{grid-template-columns:1fr}
}
@media(max-width:560px){
  .hero-text{padding:32px}
  .results-grid,.pains-grid,.services-grid{grid-template-columns:1fr}
  .step{grid-template-columns:1fr;gap:10px;text-align:left}
  .case-beforeafter,.case-reels-shots{grid-template-columns:1fr}
}
