:root{
  --bone:#F8F1EA;--cream:#FBF7F2;--ink:#1C1318;--plum:#2A1822;--plum-deep:#160C12;
  --rose:#D98499;--rose-deep:#C25E78;--rose-soft:#E9A9B6;--blush:#F3D9DE;
  --gold:#C7A567;--gold-deep:#A9863F;--muted:#917F86;--line:rgba(28,19,24,.12);
  --sans:'Inter',system-ui,sans-serif;--serif:'Cormorant Garamond',Georgia,serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:clip}
body{font-family:var(--sans);background:var(--cream);color:var(--ink);overflow-x:clip;line-height:1.6;font-weight:300}
::selection{background:var(--rose);color:#fff}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
h1,h2,h3{font-weight:400;line-height:1.03;letter-spacing:-.02em}
.wrap{max-width:1280px;margin:0 auto;padding:0 5vw}
.serif-i{font-family:var(--serif);font-style:italic;font-weight:500}
.eyebrow{font-size:12px;letter-spacing:.32em;text-transform:uppercase;color:var(--rose-deep);font-weight:500;display:flex;align-items:center;gap:14px}
.eyebrow::before{content:"";width:34px;height:1px;background:currentColor;display:inline-block}
.reveal{opacity:0;transform:translateY(38px);transition:opacity 1s cubic-bezier(.16,1,.3,1),transform 1s cubic-bezier(.16,1,.3,1)}
.reveal.in{opacity:1;transform:none}
.progress{position:fixed;top:0;left:0;height:2px;width:0;z-index:9500;background:linear-gradient(90deg,var(--rose-deep),var(--gold))}
/* nav */
nav{position:fixed;top:0;left:0;width:100%;z-index:8000;display:flex;align-items:center;justify-content:space-between;padding:22px 5vw;transition:.5s}
nav.scrolled{background:rgba(251,247,242,.86);backdrop-filter:blur(18px);padding:14px 5vw;box-shadow:0 1px 0 var(--line)}
nav .logo img{height:32px;filter:brightness(0) invert(1) drop-shadow(0 2px 8px rgba(0,0,0,.45));transition:.4s}
nav.scrolled .logo img{height:27px;filter:none}
.nav-links{display:flex;gap:28px;align-items:center}
.nav-links a{font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:#fff;opacity:.85;transition:.3s;text-shadow:0 1px 6px rgba(0,0,0,.4)}
nav.scrolled .nav-links a{color:var(--ink);opacity:.72;text-shadow:none}
.nav-links a:hover{opacity:1}
.nav-cta{border:1px solid currentColor;padding:10px 20px;border-radius:40px;font-size:11.5px!important;opacity:1!important}
.nav-cta:hover{background:var(--ink);color:var(--cream)!important;border-color:var(--ink)}
nav.scrolled .nav-cta:hover{background:var(--ink);color:var(--cream)!important}
.burger{display:none;flex-direction:column;gap:5px;cursor:pointer}
.burger span{width:26px;height:1.5px;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.4)}
nav.scrolled .burger span{background:var(--ink);box-shadow:none}
.mobile-menu{position:fixed;inset:0;background:var(--plum);z-index:8500;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:24px;transform:translateY(-100%);transition:transform .6s cubic-bezier(.7,0,.2,1)}
.mobile-menu.open{transform:translateY(0)}
.mobile-menu a{color:var(--bone);font-family:var(--serif);font-size:32px;font-style:italic;opacity:.9}
/* buttons */
.btn{display:inline-flex;align-items:center;gap:12px;padding:16px 34px;border-radius:50px;font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:500;transition:.4s cubic-bezier(.2,.7,.3,1);cursor:pointer;border:none}
.btn-gold{background:linear-gradient(120deg,var(--gold),var(--gold-deep));color:#241a0d}
.btn-gold:hover{transform:translateY(-2px);box-shadow:0 16px 40px -12px rgba(169,134,63,.55)}
.btn-light{background:var(--cream);color:var(--ink)}
.btn-light:hover{transform:translateY(-2px);box-shadow:0 16px 40px -12px rgba(0,0,0,.35)}
.btn-fill{background:var(--ink);color:var(--cream)}
.btn-fill:hover{background:var(--rose-deep);transform:translateY(-2px)}
/* page hero */
.phero{position:relative;min-height:86vh;display:flex;align-items:flex-end;overflow:hidden;background:var(--plum-deep)}
.phero img.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 38%;z-index:0}
.phero::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(22,12,18,.5),rgba(22,12,18,.1) 30%,rgba(22,12,18,.62) 68%,rgba(22,12,18,.95)),linear-gradient(75deg,rgba(22,12,18,.68),rgba(22,12,18,.12) 62%,transparent);}
.phero-in{position:relative;z-index:2;padding:0 5vw 8vh;color:var(--bone);width:100%}
.phero .eyebrow{color:var(--rose-soft);text-shadow:0 1px 10px rgba(22,12,18,.75)}
.phero h1{font-size:clamp(2.6rem,7vw,6rem);color:#fff;margin:16px 0 0;font-weight:300;text-shadow:0 2px 26px rgba(22,12,18,.45)}
.phero h1 .serif-i{color:var(--rose-soft);display:block}
.phero p{max-width:560px;margin-top:18px;color:rgba(248,241,234,.9);font-size:clamp(1rem,1.3vw,1.14rem);text-shadow:0 1px 14px rgba(22,12,18,.6)}
.phero .btn{margin-top:30px}
.backlink{position:absolute;top:96px;left:5vw;z-index:3;color:rgba(255,255,255,.8);font-size:11px;letter-spacing:.18em;text-transform:uppercase;display:flex;gap:9px;align-items:center}
.backlink:hover{color:#fff}
/* credential strip */
.strip{background:var(--plum);color:var(--bone);padding:26px 5vw;text-align:center;font-size:.84rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(248,241,234,.72)}
/* intro */
.intro{padding:12vh 0 2vh}
.intro .wrap{max-width:900px}
.intro p{font-size:clamp(1.05rem,1.7vw,1.3rem);color:#4a3c42;margin-bottom:22px}
.intro p.big{font-family:var(--serif);font-style:italic;font-size:clamp(1.6rem,3.4vw,2.5rem);color:var(--rose-deep);line-height:1.25;margin-bottom:30px}
/* checklist */
.sec{padding:9vh 0}
.sec.dark{background:var(--plum);color:var(--bone)}
.sec h2{font-size:clamp(1.9rem,4vw,3.1rem);margin:16px 0 34px;font-weight:300}
.sec h2 .serif-i{color:var(--rose-deep)}
.sec.dark h2 .serif-i{color:var(--rose-soft)}
.sec.dark .eyebrow{color:var(--rose-soft)}
.checks{display:grid;grid-template-columns:1fr 1fr;gap:0 44px;list-style:none}
.checks li{display:flex;gap:14px;padding:15px 0;border-top:1px solid var(--line);font-size:1rem;color:#4a3c42}
.sec.dark .checks li{border-color:rgba(248,241,234,.14);color:rgba(248,241,234,.8)}
.checks li svg{width:17px;height:17px;flex-shrink:0;margin-top:4px;stroke:var(--gold);fill:none;stroke-width:1.8}
@media(max-width:760px){.checks{grid-template-columns:1fr}}
/* format cards */
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(255px,1fr));gap:18px}
.card{padding:32px 28px;border-radius:18px;background:rgba(248,241,234,.05);border:1px solid rgba(248,241,234,.14);transition:.4s}
.sec:not(.dark) .card{background:#fff;border-color:var(--line);box-shadow:0 24px 60px -40px rgba(28,19,24,.4)}
.card:hover{transform:translateY(-4px);border-color:var(--gold)}
.card .n{font-family:var(--serif);font-style:italic;color:var(--gold);font-size:1.1rem}
.card h3{font-size:1.35rem;font-weight:500;margin:8px 0 10px}
.card p{font-size:.92rem;color:var(--muted)}
.sec.dark .card p{color:rgba(248,241,234,.7)}
@media(max-width:760px){.cards{grid-template-columns:1fr}}
/* callout */
.callout{background:radial-gradient(80% 100% at 20% 0,rgba(217,132,153,.16),transparent),var(--bone);padding:11vh 0}
.callout .wrap{max-width:880px;text-align:center}
.callout h2{font-family:var(--serif);font-style:italic;font-size:clamp(1.8rem,4.2vw,3rem);color:var(--rose-deep);margin-bottom:20px;font-weight:500}
.callout p{color:#4a3c42;font-size:1.05rem}
/* quote */
.quote{padding:11vh 0;background:var(--plum-deep);color:var(--bone);text-align:center}
.quote .wrap{max-width:820px}
.quote .mark{font-family:var(--serif);font-style:italic;font-size:3.6rem;color:var(--rose-soft);line-height:.3;margin-bottom:26px}
.quote p{font-size:clamp(1.05rem,2vw,1.35rem);color:rgba(248,241,234,.88);font-weight:300}
.quote .who{margin-top:26px;font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;color:var(--rose-soft)}
/* lead magnet */
.magnet{padding:12vh 0;background:linear-gradient(135deg,var(--plum),var(--plum-deep) 65%);color:var(--bone);position:relative;overflow:hidden}
.magnet::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 80% at 70% 10%,rgba(217,132,153,.26),transparent 60%)}
.magnet .wrap{position:relative;z-index:2;max-width:760px;text-align:center}
.magnet .eyebrow{justify-content:center;color:var(--gold)}
.magnet h2{font-size:clamp(1.9rem,4.4vw,3.2rem);margin:18px 0 14px;font-weight:300}
.magnet h2 .serif-i{color:var(--rose-soft)}
.magnet p{color:rgba(248,241,234,.78);max-width:520px;margin:0 auto 30px}
.signup{display:flex;gap:10px;max-width:500px;margin:0 auto;flex-wrap:wrap;justify-content:center}
.signup input{flex:1;min-width:230px;background:rgba(248,241,234,.08);border:1px solid rgba(248,241,234,.24);border-radius:50px;padding:16px 24px;color:#fff;font-family:var(--sans);font-size:.92rem}
.signup input::placeholder{color:rgba(248,241,234,.5)}
.signup input:focus{outline:none;border-color:var(--rose-soft)}
/* final cta */
.final{padding:14vh 5vw;text-align:center;background:var(--bone)}
.final h2{font-size:clamp(2rem,5vw,3.6rem);font-weight:300;margin-bottom:16px}
.final h2 .serif-i{color:var(--rose-deep)}
.final p{color:var(--muted);max-width:560px;margin:0 auto 30px}
/* footer */
footer{background:var(--plum-deep);color:rgba(248,241,234,.7);padding:8vh 5vw 4vh}
.foot-top{display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap;border-bottom:1px solid rgba(248,241,234,.1);padding-bottom:40px}
.foot-brand img{height:36px;filter:brightness(0) invert(1);opacity:.92;margin-bottom:16px}
.foot-brand p{max-width:300px;font-size:.9rem}
.foot-cols{display:flex;gap:60px;flex-wrap:wrap}
.foot-col h4{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--rose-soft);margin-bottom:16px;font-weight:500}
.foot-col a{display:block;font-size:.9rem;margin-bottom:11px;opacity:.75}
.foot-col a:hover{opacity:1;color:var(--rose-soft)}
.foot-bottom{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-top:26px;font-size:.78rem;opacity:.6}
@media(max-width:680px){
  .nav-links{display:none}.burger{display:flex}
  .foot-top{flex-direction:column}.backlink{top:88px}
}

.hp{position:absolute!important;left:-9999px;opacity:0;height:0;overflow:hidden;pointer-events:none}
