:root{--pink: #f0176b;--gold: #c4964a;--cream: #faf4f0;--charcoal: #5a5a5a;--ink: #1a1a1a;--cream-deep: #f3e9e1}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);font-family:Cormorant Garamond,Georgia,serif;font-size:20px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}.eyebrow{font-family:Cinzel,serif;font-size:.72rem;letter-spacing:.42em;text-transform:uppercase;color:var(--gold);font-weight:500}.wave{display:flex;align-items:center;justify-content:center;gap:5px;height:38px}.wave span{display:block;width:3px;border-radius:3px;opacity:.85;animation:pulse 1.8s ease-in-out infinite}@keyframes pulse{0%,to{transform:scaleY(.35)}50%{transform:scaleY(1)}}.hero{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:7vh 24px 8vh;position:relative}.hero:after{content:"";position:absolute;bottom:34px;left:50%;transform:translate(-50%);width:1px;height:56px;background:linear-gradient(var(--gold),transparent);opacity:.6}.reveal{opacity:0;transform:translateY(18px);animation:rise 1.1s cubic-bezier(.2,.7,.2,1) forwards}.d1{animation-delay:.15s}.d2{animation-delay:.45s}.d3{animation-delay:.75s}.d4{animation-delay:1.05s}.d5{animation-delay:1.35s}@keyframes rise{to{opacity:1;transform:translateY(0)}}.hero .eyebrow{margin-bottom:30px}.title{font-family:Cinzel,serif;font-weight:500;font-size:clamp(3.4rem,13vw,7.5rem);line-height:.96;letter-spacing:.02em;color:var(--ink)}.title em{font-style:normal;color:var(--pink)}.hero-sub{max-width:540px;margin:34px auto 0;font-size:clamp(1.25rem,3.6vw,1.6rem);font-weight:400;color:var(--charcoal);font-style:italic}.movements-inline{margin-top:30px;font-family:Cinzel,serif;font-size:clamp(.7rem,2.6vw,.85rem);letter-spacing:.3em;text-transform:uppercase;color:var(--ink);display:flex;gap:14px;align-items:center;flex-wrap:wrap;justify-content:center}.movements-inline b{font-weight:600;color:var(--gold)}.movements-inline .dot{width:4px;height:4px;border-radius:50%;background:var(--pink);display:inline-block}.btn{display:inline-block;margin-top:44px;background:var(--pink);color:var(--cream);font-family:Cinzel,serif;font-size:.82rem;letter-spacing:.22em;text-transform:uppercase;text-decoration:none;padding:19px 46px;border-radius:2px;transition:transform .25s ease,box-shadow .25s ease,background .25s ease;box-shadow:0 10px 30px -12px #f0176b80}.btn:hover{transform:translateY(-2px);box-shadow:0 16px 38px -12px #f0176b99;background:#d81460}.btn:focus-visible{outline:3px solid var(--gold);outline-offset:4px}section{padding:13vh 24px}.wrap{max-width:860px;margin:0 auto}.section-label{text-align:center;margin-bottom:60px}.section-label .eyebrow{display:block;margin-bottom:18px}.section-label h2{font-family:Cormorant Garamond,serif;font-weight:500;font-size:clamp(2rem,6vw,3.2rem);line-height:1.1;letter-spacing:.01em}.section-label h2 em{font-style:italic;color:var(--pink)}.manifesto{text-align:center;padding:14vh 24px}.manifesto .wrap{max-width:620px}.manifesto .eyebrow{display:block;margin-bottom:26px}.manifesto h2{font-family:Cormorant Garamond,serif;font-weight:500;font-size:clamp(2.2rem,7vw,3.6rem);line-height:1.08;letter-spacing:.01em}.manifesto h2 em{font-style:italic;color:var(--pink)}.manifesto .rule{width:46px;height:1px;background:var(--gold);margin:34px auto;opacity:.7}.manifesto p{font-size:clamp(1.3rem,3.6vw,1.6rem);color:var(--charcoal);max-width:46ch;margin:0 auto}.manifesto p .accent{color:var(--ink);font-style:italic}.path{background:var(--cream-deep)}.steps{display:grid;gap:2px;background:#c4964a47;border:1px solid rgba(196,150,74,.28)}.step{background:var(--cream-deep);padding:44px clamp(24px,5vw,56px);display:grid;grid-template-columns:88px 1fr;align-items:baseline;gap:clamp(16px,4vw,40px)}.step-letter{font-family:Cinzel,serif;font-size:2.6rem;font-weight:600;color:var(--gold);line-height:1}.step h3{font-family:Cinzel,serif;font-weight:500;font-size:1.1rem;letter-spacing:.18em;text-transform:uppercase;margin-bottom:12px;color:var(--ink)}.step p{color:var(--charcoal);font-size:1.18rem;max-width:52ch}.detail .wrap{max-width:680px;text-align:center}.detail p{font-size:clamp(1.3rem,3.6vw,1.62rem);color:var(--ink);margin-bottom:1.3rem;font-weight:400}.detail p.muted{color:var(--charcoal);font-style:italic;font-size:1.3rem}.features{margin-top:56px;display:flex;justify-content:center;gap:clamp(28px,7vw,72px);flex-wrap:wrap}.feature{max-width:180px}.feature .num{font-family:Cinzel,serif;color:var(--gold);font-size:.74rem;letter-spacing:.3em;display:block;margin-bottom:10px}.feature span.t{font-family:Cinzel,serif;font-size:.95rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink)}.optin{background:var(--ink);color:var(--cream);text-align:center}.optin .eyebrow{color:var(--gold);display:block;margin-bottom:20px}.optin h2{font-family:Cormorant Garamond,serif;font-weight:500;font-size:clamp(2.2rem,7vw,3.6rem);line-height:1.08;margin:0 auto 8px;max-width:16ch}.optin h2 em{font-style:italic;color:var(--pink)}.optin .lede{color:#faf4f0b8;font-style:italic;font-size:1.25rem;max-width:40ch;margin:0 auto 46px}.optin .wave{margin-bottom:40px}.btn-enter{font-size:.9rem;padding:21px 56px;margin-top:8px}.closing-line{margin-top:54px;font-family:Cormorant Garamond,serif;font-style:italic;font-size:1.35rem;color:#faf4f0d9}footer{background:var(--ink);color:#faf4f066;text-align:center;padding:40px 24px 56px;font-family:Cinzel,serif;font-size:.66rem;letter-spacing:.28em;text-transform:uppercase;border-top:1px solid rgba(196,150,74,.15)}footer a{color:var(--gold);text-decoration:none}.form-card--thankyou{padding:0;box-shadow:0 30px 70px -30px #0009}.thankyou{padding:52px 40px 48px;text-align:center;animation:rise .9s cubic-bezier(.2,.7,.2,1) forwards}.thankyou__wave{display:flex;align-items:center;justify-content:center;gap:5px;height:36px;margin-bottom:28px}.thankyou__wave span{display:block;width:3px;border-radius:3px;opacity:.9;animation:pulse 1.8s ease-in-out infinite}.thankyou__eyebrow{font-family:Cinzel,serif;font-size:.68rem;letter-spacing:.42em;text-transform:uppercase;color:var(--gold);font-weight:500;display:block;margin-bottom:18px}.thankyou__heading{font-family:Cormorant Garamond,serif;font-weight:500;font-size:clamp(2rem,6vw,2.8rem);line-height:1.1;color:var(--ink);margin-bottom:0}.thankyou__rule{width:38px;height:1px;background:var(--gold);margin:24px auto;opacity:.7}.thankyou__body{font-family:Cormorant Garamond,serif;font-size:1.2rem;color:var(--charcoal);font-style:italic;max-width:34ch;margin:0 auto;line-height:1.6}.sticky-cta{display:none;position:fixed;bottom:0;left:0;right:0;z-index:100;padding:16px 24px calc(16px + env(safe-area-inset-bottom));background:linear-gradient(to top,#faf4f0fa 70%,#faf4f000);pointer-events:none;opacity:0;transform:translateY(12px);transition:opacity .4s ease,transform .4s ease}.sticky-cta--visible{opacity:1;transform:translateY(0);pointer-events:auto}.sticky-cta__btn{display:block;width:100%;text-align:center;background:var(--pink);color:var(--cream);font-family:Cinzel,serif;font-size:.78rem;letter-spacing:.22em;text-transform:uppercase;text-decoration:none;padding:18px 24px;border-radius:2px;box-shadow:0 8px 28px -10px #f0176b8c;transition:background .25s ease,box-shadow .25s ease}.sticky-cta__btn:hover{background:#d81460}.sticky-cta__btn:focus-visible{outline:3px solid var(--gold);outline-offset:4px}@media(max-width:768px){.sticky-cta{display:block}}.scroll-section{opacity:0;transform:translateY(28px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1)}.scroll-section.in-view{opacity:1;transform:translateY(0)}.scroll-child{opacity:0;transform:translateY(16px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}.in-view .scroll-child{opacity:1;transform:translateY(0)}.in-view .sc-d1{transition-delay:.1s}.in-view .sc-d2{transition-delay:.25s}.in-view .sc-d3{transition-delay:.4s}.in-view .sc-d4{transition-delay:.55s}.in-view .sc-d5{transition-delay:.7s}@media(max-width:560px){.step{grid-template-columns:1fr;gap:6px;padding:34px 26px}.step-letter{font-size:2rem}.movements-inline{gap:10px}}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;animation:none}.wave span{animation:none;transform:scaleY(.7)}html{scroll-behavior:auto}}
