:root{
  --ink:#201c1a;
  --charcoal:#191615;
  --charcoal-2:#241f1d;
  --paper:#efe9df;
  --ivory:#f8f4ec;
  --white:#fffdf8;
  --line:#d8d0c4;
  --muted:#746b65;
  --muted-dark:#9b918b;
  --burgundy:#78162f;
  --burgundy-dark:#571021;
  --blush:#cfa2ad;
  --serif: Georgia, 'Times New Roman', serif;
  --sans: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif;
  --max:1280px;
  --narrow:920px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ivory);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.58;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input,textarea,select{font:inherit}
button{color:inherit}
::selection{background:var(--burgundy);color:white}
body.menu-open{overflow:hidden}

/* Navigation */
.site-header{position:sticky;top:0;z-index:90;background:rgba(25,22,21,.95);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.08)}
.nav{height:76px;max-width:var(--max);padding:0 28px;margin:auto;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:34px;color:var(--white)}
.wordmark{display:inline-flex;align-items:baseline;gap:7px;white-space:nowrap;font-size:13px;font-weight:720;letter-spacing:.095em}
.wordmark .the{font-family:var(--serif);font-style:italic;font-weight:400;letter-spacing:0;color:#c9b9b3;font-size:12px}
.nav-main{display:flex;align-items:center;justify-content:center;gap:27px;font-size:12px;color:#d9d0cb}
.nav-item{position:relative;padding:28px 0}
.nav-item>a,.nav-main>a{transition:.2s ease}.nav-item>a:hover,.nav-main>a:hover{color:#fff}
.nav-item>a:after{content:'  +';color:#9f8f89;font-size:10px}
.dropdown{position:absolute;left:-20px;top:68px;min-width:225px;padding:12px;background:#211d1b;border:1px solid #3d3633;box-shadow:0 24px 60px rgba(0,0,0,.25);opacity:0;visibility:hidden;transform:translateY(8px);transition:.18s ease}
.dropdown a{display:block;padding:11px 12px;color:#d5cbc6;border-bottom:1px solid #342e2b}.dropdown a:last-child{border-bottom:0}.dropdown a:hover{color:white;background:#2a2422}
.nav-item:hover .dropdown,.nav-item:focus-within .dropdown{opacity:1;visibility:visible;transform:none}
.nav-cta{font-size:12px;font-weight:720;padding:10px 13px;border:1px solid #b98996;color:#fff}.nav-cta:hover{background:var(--burgundy);border-color:var(--burgundy)}
.menu-toggle{display:none;background:none;border:0;color:white;font-size:24px;cursor:pointer;padding:8px}
.mobile-menu{display:none}

/* Shared */
.section{padding:112px 28px}
.section-dark{background:var(--charcoal);color:var(--white)}
.section-paper{background:var(--paper)}
.section-ivory{background:var(--ivory)}
.shell{max-width:var(--max);margin:auto}
.narrow{max-width:var(--narrow);margin:auto}
.eyebrow{margin:0 0 18px;font-size:10px;letter-spacing:.2em;text-transform:uppercase;font-weight:760;color:var(--burgundy)}
.eyebrow.light{color:#d4a1ae}
h1,h2,h3,h4,p{margin-top:0}
h1,h2,.display{font-family:var(--serif);font-weight:400;letter-spacing:-.038em}
h1{font-size:clamp(56px,7.2vw,108px);line-height:.92;margin-bottom:28px}
h2{font-size:clamp(42px,5vw,75px);line-height:1.02;margin-bottom:24px}
h3{font-size:26px;line-height:1.18;font-weight:520}
.display{font-size:clamp(46px,5.8vw,86px);line-height:.98}
.serif{font-family:var(--serif)}
.italic{font-style:italic}
.burgundy{color:var(--burgundy)}
.muted{color:var(--muted)}
.lead{font-family:var(--serif);font-size:27px;line-height:1.45;color:#332d29}
.lead.light{color:#ddd4cf}
.deck{font-size:19px;line-height:1.55;color:#5e5651;max-width:760px}
.deck.light{color:#c8beba}
.micro{font-size:11px;color:var(--muted);letter-spacing:.02em}
.rule{height:1px;background:var(--line);border:0;margin:0}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 19px;border:1px solid transparent;cursor:pointer;font-size:13px;font-weight:720;transition:.2s ease}
.button-dark{background:var(--charcoal);color:white}.button-dark:hover{background:#2d2724}
.button-burgundy{background:var(--burgundy);color:white}.button-burgundy:hover{background:var(--burgundy-dark)}
.button-outline{background:transparent;border-color:#9a8e87}.button-outline:hover{border-color:var(--burgundy);color:var(--burgundy)}
.button-light{background:var(--white);color:var(--ink)}.button-light:hover{background:#fff}
.text-link{display:inline-flex;gap:10px;align-items:center;font-size:13px;font-weight:720;border-bottom:1px solid #9d928b;padding-bottom:4px}.text-link:hover{color:var(--burgundy);border-color:var(--burgundy)}

/* Page hero */
.page-hero{padding:126px 28px 98px;background:var(--charcoal);color:white;position:relative;overflow:hidden}
.page-hero:after{content:"";position:absolute;width:760px;height:760px;border:1px solid rgba(207,162,173,.18);border-radius:50%;right:-300px;top:-460px}
.page-hero .inner{max-width:var(--max);margin:auto;position:relative;z-index:2;display:grid;grid-template-columns:1.15fr .55fr;gap:70px;align-items:end}
.page-hero h1{font-size:clamp(58px,7vw,100px);max-width:920px}
.page-hero .side-note{border-left:1px solid #4c4441;padding-left:26px;color:#a99e98;font-size:14px;max-width:310px}
.page-hero .side-note strong{color:white}

/* Home hero */
.home-hero{min-height:86vh;padding:145px 28px 92px;background:var(--charcoal);color:white;position:relative;overflow:hidden;display:flex;align-items:center}
.home-hero:before{content:"";position:absolute;inset:0;opacity:.095;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.18'/%3E%3C/svg%3E")}
.home-grid{width:100%;max-width:var(--max);margin:auto;display:grid;grid-template-columns:1.25fr .75fr;gap:90px;align-items:center;position:relative;z-index:2}
.home-hero h1 em{color:#d5a0ad;font-weight:400}
.home-hero .deck{color:#d0c7c2;max-width:700px}
.hero-actions{display:flex;align-items:center;gap:24px;margin-top:36px}
.hero-proof{margin-top:26px;color:#8e8580;font-size:11px}
.abstract-report{width:min(100%,480px);aspect-ratio:.77;background:#f4efe5;color:var(--ink);padding:28px 26px;box-shadow:0 38px 100px rgba(0,0,0,.38);transform:rotate(2.1deg);position:relative}
.abstract-report:after{content:"";position:absolute;inset:14px;border:1px solid #d7cec1;pointer-events:none}
.ar-top{display:flex;justify-content:space-between;font-size:8px;letter-spacing:.15em;font-weight:760;color:#655d57;position:relative;z-index:2}
.ar-word{font-family:var(--serif);font-size:48px;line-height:.95;margin:52px 0 20px;position:relative;z-index:2}.ar-word em{display:block;color:var(--burgundy)}
.ar-axis{position:relative;height:150px;margin-top:34px;border-left:1px solid #aaa097;border-bottom:1px solid #aaa097;z-index:2}.ar-axis:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:#cfc6bb}.ar-axis:after{content:"";position:absolute;left:55%;top:0;bottom:0;width:1px;background:#cfc6bb}
.ar-axis i{position:absolute;width:10px;height:10px;background:var(--burgundy);border-radius:50%;box-shadow:0 0 0 4px rgba(120,22,47,.1)}
.ar-axis i:nth-child(1){left:18%;top:22%}.ar-axis i:nth-child(2){left:68%;top:18%}.ar-axis i:nth-child(3){left:78%;top:63%}.ar-axis i:nth-child(4){left:37%;top:69%}.ar-axis i:nth-child(5){left:58%;top:47%}
.ar-foot{font-size:9px;color:#766d66;margin-top:25px;position:relative;z-index:2}

/* Marquee */
.marquee{overflow:hidden;background:var(--burgundy);color:white;border-top:1px solid rgba(255,255,255,.1)}
.marquee-track{display:flex;min-width:max-content;animation:marquee 46s linear infinite}
.marquee span{font-family:var(--serif);font-style:italic;font-size:18px;padding:17px 34px;border-right:1px solid rgba(255,255,255,.22)}
@keyframes marquee{to{transform:translateX(-46%)}}

/* Editorial home sections */
.editorial-split{max-width:var(--max);margin:auto;display:grid;grid-template-columns:.72fr 1.28fr;gap:100px;align-items:start}
.sticky{position:sticky;top:122px}
.quote-line{font-family:var(--serif);font-size:30px;line-height:1.35;color:var(--burgundy);padding:26px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:40px}
.big-questions{max-width:var(--max);margin:auto;border-top:1px solid var(--line)}
.big-question{display:grid;grid-template-columns:90px 1fr 220px;gap:25px;align-items:center;padding:35px 0;border-bottom:1px solid var(--line)}
.big-question .n{font-size:10px;letter-spacing:.14em;color:var(--burgundy);font-weight:760}
.big-question h3{font-family:var(--serif);font-size:clamp(28px,3.4vw,48px);font-weight:400;margin:0}
.big-question p{font-size:12px;color:var(--muted);margin:0;text-align:right}

/* Price band */
.price-band{max-width:var(--max);margin:auto;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.price-offer{padding:46px 48px}.price-offer+ .price-offer{border-left:1px solid var(--line)}
.price-label{font-size:10px;letter-spacing:.17em;color:var(--burgundy);font-weight:760;text-transform:uppercase}
.price-offer h3{font-family:var(--serif);font-size:43px;font-weight:400;margin:10px 0 10px}
.price{font-family:var(--serif);font-size:42px;color:var(--burgundy);margin:0 0 18px}.price small{font-family:var(--sans);font-size:12px;color:var(--muted);margin-left:7px}
.price-offer p{color:#625a55;max-width:510px}.price-offer ul{list-style:none;padding:18px 0;margin:20px 0;border-top:1px solid var(--line)}.price-offer li{padding:6px 0;font-size:13px}.price-offer li:before{content:'—';color:var(--burgundy);margin-right:9px}

/* Process strip */
.process-line{max-width:var(--max);margin:auto;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #49413e;border-bottom:1px solid #49413e}
.process-item{padding:32px 26px;min-height:210px}.process-item+ .process-item{border-left:1px solid #49413e}.process-item .n{font-size:10px;color:#d3a0ad;font-weight:760;letter-spacing:.14em}.process-item h3{font-family:var(--serif);font-weight:400;font-size:27px;margin:30px 0 10px}.process-item p{font-size:13px;color:#a99f99;margin:0}

/* Report showcase */
.report-stage{height:630px;max-width:1120px;margin:35px auto 70px;position:relative}
.report-page{position:absolute;width:285px;box-shadow:0 28px 55px rgba(40,30,24,.22);border:1px solid rgba(65,52,44,.12);transition:.3s ease}.report-page:hover{transform:translateY(-12px) rotate(0)!important;z-index:12}
.rp1{left:0;top:90px;transform:rotate(-8deg)}.rp2{left:25%;top:10px;transform:rotate(-2deg)}.rp3{left:51%;top:55px;transform:rotate(4deg)}.rp4{right:0;top:0;transform:rotate(8deg)}
.report-list{max-width:var(--max);margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:42px;border-top:1px solid var(--line);padding-top:32px}.report-list h3{font-family:var(--serif);font-weight:400}.report-list p{font-size:13px;color:#6a625c}

/* How it works page */
.input-example{max-width:var(--max);margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}
.example-stack{position:relative;height:520px}.example-sheet{position:absolute;width:64%;background:#f2ede4;border:1px solid #d6cec2;box-shadow:0 20px 45px rgba(34,25,21,.14);padding:24px}.example-sheet.one{left:2%;top:58px;transform:rotate(-4deg)}.example-sheet.two{right:0;top:0;transform:rotate(4deg)}
.placeholder-portrait{height:250px;background:linear-gradient(140deg,#d9d1c5,#aaa099);display:flex;align-items:flex-end;padding:16px;color:#4d4641;font-family:var(--serif);font-style:italic}.reaction{margin-top:18px;border-top:1px solid #cfc6ba;padding-top:14px}.reaction strong{display:block;font-size:10px;letter-spacing:.13em;color:var(--burgundy);margin-bottom:5px}.reaction p{font-family:var(--serif);font-size:21px;margin:0}
.explainer{max-width:650px}.explainer p{font-size:17px;color:#5b534e}.explainer .lead{color:var(--ink)}
.how-details{max-width:var(--max);margin:auto;border-top:1px solid var(--line)}
.how-row{display:grid;grid-template-columns:90px 320px 1fr;gap:35px;padding:42px 0;border-bottom:1px solid var(--line)}
.how-row .num{font-size:10px;color:var(--burgundy);font-weight:760;letter-spacing:.15em}.how-row h3{font-family:var(--serif);font-weight:400;font-size:31px}.how-row p{color:#645c57;margin:0;max-width:640px}

/* Product pages */
.product-intro{max-width:var(--max);margin:auto;display:grid;grid-template-columns:1.12fr .72fr;gap:100px}.product-summary{border-top:1px solid var(--line)}
.summary-row{display:grid;grid-template-columns:160px 1fr;padding:17px 0;border-bottom:1px solid var(--line);font-size:13px}.summary-row span:first-child{color:var(--muted)}.summary-row strong{font-weight:650}
.included{max-width:var(--max);margin:auto;display:grid;grid-template-columns:.65fr 1.35fr;gap:90px}.included-list{border-top:1px solid var(--line)}
.included-row{display:grid;grid-template-columns:54px 1fr;gap:20px;padding:24px 0;border-bottom:1px solid var(--line)}.included-row .num{color:var(--burgundy);font-size:10px;font-weight:760}.included-row h3{font-family:var(--serif);font-weight:400;font-size:27px;margin-bottom:8px}.included-row p{font-size:14px;color:#655d57;margin:0}
.callout{background:var(--charcoal);color:white;padding:48px}.callout h3{font-family:var(--serif);font-size:38px;font-weight:400}.callout p{color:#c7bdb8}.callout .price{color:#e0a9b7}

/* About */
.about-story{max-width:var(--narrow);margin:auto}.about-story p{font-family:var(--serif);font-size:26px;line-height:1.55;color:#3a332f}.principles{max-width:var(--max);margin:auto;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.principle{padding:36px;min-height:260px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.principle .n{font-size:10px;color:var(--burgundy);font-weight:760}.principle h3{font-family:var(--serif);font-weight:400;margin-top:34px}.principle p{font-size:13px;color:#655d58}

/* FAQ */
.faq{max-width:960px;margin:auto;border-top:1px solid var(--line)}
.faq-item{border-bottom:1px solid var(--line)}
.faq-question{width:100%;display:grid;grid-template-columns:1fr auto;gap:20px;text-align:left;background:none;border:0;padding:25px 0;cursor:pointer;font-family:var(--serif);font-size:26px}.faq-question span:last-child{font-family:var(--sans);font-size:19px;color:var(--burgundy);transition:.2s ease}.faq-item.open .faq-question span:last-child{transform:rotate(45deg)}
.faq-answer{max-height:0;overflow:hidden;transition:max-height .35s ease}.faq-answer>div{padding:0 80px 26px 0;color:#625a55;max-width:760px}

/* Contact */
.contact-grid{max-width:var(--max);margin:auto;display:grid;grid-template-columns:.8fr 1.2fr;gap:100px}.contact-meta{border-top:1px solid var(--line)}.contact-meta a,.contact-meta div{display:block;padding:18px 0;border-bottom:1px solid var(--line);font-size:14px}.contact-meta small{display:block;color:var(--muted);font-size:10px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:4px}.form{border-top:1px solid var(--line)}.field{padding:18px 0;border-bottom:1px solid var(--line)}.field label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.13em;color:var(--muted);margin-bottom:8px}.field input,.field textarea,.field select{width:100%;border:0;background:transparent;outline:none;color:var(--ink);font-size:17px;padding:3px 0}.field textarea{min-height:120px;resize:vertical}.form-actions{padding-top:22px;display:flex;align-items:center;gap:18px}.form-status{font-size:12px;color:var(--muted)}

/* Booking */
.booking-layout{max-width:var(--max);margin:auto;display:grid;grid-template-columns:.75fr 1.25fr;gap:80px;align-items:start}.order-summary{position:sticky;top:116px;background:var(--charcoal);color:white;padding:38px}.order-summary h2{font-size:45px}.order-summary .summary-price{font-family:var(--serif);font-size:44px;color:#dda7b5}.order-summary p{color:#bdb3ae;font-size:14px}.order-summary hr{border:0;border-top:1px solid #49413e;margin:24px 0}.order-summary .small{font-size:11px;color:#8e8580}.choice-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.choice{border:1px solid var(--line);padding:16px;cursor:pointer;background:#f6f1e8}.choice:has(input:checked){border-color:var(--burgundy);box-shadow:inset 3px 0 0 var(--burgundy)}.choice input{accent-color:var(--burgundy);margin-right:8px}.choice strong{display:block;margin-top:8px}.choice small{color:var(--muted)}

/* Legal */
.legal{max-width:800px;margin:auto}.legal h2{font-size:38px;margin-top:52px}.legal p,.legal li{color:#5f5752}.legal .notice{border-left:3px solid var(--burgundy);padding:15px 20px;background:var(--paper);margin:28px 0}

/* Footer */
.newsletter{background:var(--burgundy);color:white;padding:48px 28px}.newsletter-inner{max-width:var(--max);margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:end}.newsletter h2{font-size:48px;margin-bottom:10px}.newsletter p{color:#ebd9dd;max-width:560px}.newsletter-form{display:flex;border-bottom:1px solid rgba(255,255,255,.65)}.newsletter-form input{flex:1;border:0;background:transparent;color:white;padding:12px 0;outline:none}.newsletter-form input::placeholder{color:#e2bdc6}.newsletter-form button{border:0;background:transparent;color:white;font-weight:720;cursor:pointer;padding:12px 0 12px 18px}.newsletter-status{font-size:11px;color:#efd9de;margin-top:8px;min-height:16px}
.footer{background:#141211;color:#d8cfca;padding:56px 28px 34px}.footer-grid{max-width:var(--max);margin:auto;display:grid;grid-template-columns:1.25fr repeat(3,.7fr);gap:55px;padding-bottom:42px}.footer-brand p{font-size:12px;color:#8f8580;max-width:320px}.footer h4{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#8f8580;margin-bottom:15px}.footer a{display:block;color:#cfc5c0;font-size:12px;padding:5px 0}.footer a:hover{color:white}.footer-bottom{max-width:var(--max);margin:auto;border-top:1px solid #342f2c;padding-top:20px;display:flex;justify-content:space-between;gap:30px;align-items:center}.copyright{font-size:10px;color:#756d68}.payments{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.pay{border:1px solid #4b4440;color:#b8ada7;padding:6px 8px;font-size:9px;letter-spacing:.04em}.pay-note{font-size:9px;color:#655e59;margin-right:5px;align-self:center}

/* Motion */
.reveal{opacity:0;transform:translateY(14px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}.delay-1{transition-delay:.08s}.delay-2{transition-delay:.16s}

/* Responsive */
@media(max-width:1020px){
  .nav{grid-template-columns:auto auto}.nav-main,.nav-cta{display:none}.menu-toggle{display:block;justify-self:end}.mobile-menu{position:fixed;z-index:85;left:0;right:0;top:76px;bottom:0;background:var(--charcoal);color:white;padding:28px;overflow:auto}.mobile-menu.open{display:block}.mobile-menu a{display:block;padding:16px 0;border-bottom:1px solid #3e3734;font-family:var(--serif);font-size:27px}.mobile-menu .sub{padding-left:18px;color:#b9aea8;font-size:18px}
  .home-grid,.page-hero .inner,.editorial-split,.product-intro,.included,.contact-grid,.booking-layout,.newsletter-inner{grid-template-columns:1fr}.abstract-report{margin:20px auto 0}.sticky,.order-summary{position:static}.page-hero .side-note{border-left:0;border-top:1px solid #4c4441;padding:20px 0 0}.big-question{grid-template-columns:60px 1fr}.big-question p{display:none}.process-line{grid-template-columns:1fr 1fr}.process-item:nth-child(3){border-left:0;border-top:1px solid #49413e}.process-item:nth-child(4){border-top:1px solid #49413e}.report-list,.principles{grid-template-columns:1fr 1fr}.included{gap:45px}.choice-row{grid-template-columns:1fr}.footer-grid{grid-template-columns:1.2fr 1fr 1fr}.footer-grid>div:last-child{grid-column:2/4}
}
@media(max-width:700px){
  .section{padding:78px 20px}.page-hero{padding:96px 20px 68px}.home-hero{padding:110px 20px 65px;min-height:auto}.home-grid{gap:44px}.hero-actions{align-items:flex-start;flex-direction:column;gap:16px}.marquee span{font-size:15px;padding:14px 22px}.quote-line{font-size:25px}.big-question{grid-template-columns:40px 1fr;padding:25px 0}.price-band{grid-template-columns:1fr}.price-offer{padding:36px 0}.price-offer+ .price-offer{border-left:0;border-top:1px solid var(--line)}.process-line{grid-template-columns:1fr}.process-item+ .process-item{border-left:0;border-top:1px solid #49413e}.report-stage{height:910px}.report-page{width:52%}.rp1{left:0;top:40px}.rp2{left:47%;top:180px}.rp3{left:0;top:450px}.rp4{right:0;top:585px}.report-list,.principles{grid-template-columns:1fr}.principle{min-height:auto}.input-example{grid-template-columns:1fr}.example-stack{height:480px}.how-row{grid-template-columns:42px 1fr}.how-row p{grid-column:2}.summary-row{grid-template-columns:110px 1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/3}.footer-grid>div:last-child{grid-column:auto}.footer-bottom{align-items:flex-start;flex-direction:column}.payments{justify-content:flex-start}.newsletter h2{font-size:40px}.newsletter-form{margin-top:20px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.marquee-track{animation:none}.reveal{opacity:1;transform:none;transition:none}.report-page{transition:none}}
@media print{
  .reveal{opacity:1!important;transform:none!important}
  .marquee-track{animation:none!important;transform:none!important}
  .site-header{position:relative!important}
}

.disabled-link{opacity:.45;pointer-events:none;cursor:not-allowed}

/* Stripe checkout + payment confirmation */
.consent-field{padding-top:22px;padding-bottom:22px}.consent-line{display:flex!important;gap:12px;align-items:flex-start;text-transform:none!important;letter-spacing:0!important;color:var(--ink)!important;font-size:13px!important;line-height:1.5;cursor:pointer}.consent-line input{width:auto!important;margin-top:3px;accent-color:var(--burgundy)}.consent-line a{color:var(--burgundy);text-decoration:underline;text-underline-offset:2px}.consent-field .micro{margin:10px 0 0 27px}.micro{font-size:11px;color:var(--muted);line-height:1.55}.micro-light{font-size:11px;color:#8e8580}.form button[disabled]{opacity:.62;cursor:wait}.verify-panel{max-width:var(--max);margin:0 auto 44px;padding:20px 22px;border:1px solid var(--line);background:var(--paper);font-size:13px;color:#5f5752}.verify-panel strong{color:var(--ink)}.verify-panel a{color:var(--burgundy);text-decoration:underline}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--burgundy);margin-right:10px;box-shadow:0 0 0 4px rgba(120,22,47,.08)}[hidden]{display:none!important}

/* Paid scheduling flow — Cal.com inline embed */
.paid-flow{max-width:var(--max);margin:0 auto}.scheduler-intro{max-width:820px;margin-bottom:34px}.scheduler-intro .lead{margin-bottom:10px}.scheduler-shell{background:#fffdf8;border:1px solid var(--line);box-shadow:0 24px 70px rgba(56,43,37,.07);padding:18px 18px 12px;margin-bottom:42px}.scheduler-loading{padding:14px 14px 16px;border-bottom:1px solid var(--line);font-size:12px;color:var(--muted)}.cal-inline-embed{width:100%;min-height:720px;overflow:auto;background:#fff}.cal-inline-embed iframe{width:100%!important;min-height:720px!important;border:0!important}.scheduler-fallback{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:12px 6px 2px;color:var(--muted);font-size:11px;border-top:1px solid var(--line)}.scheduler-fallback .text-link{font-size:11px}.post-booking-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:stretch}.next-note{padding:44px;border:1px solid var(--line);background:var(--paper)}.next-note h3{font-family:var(--serif);font-size:34px;font-weight:400;margin-bottom:14px}.next-note p:last-child{color:#655d58;margin-bottom:0}
@media(max-width:900px){.post-booking-grid{grid-template-columns:1fr}.cal-inline-embed,.cal-inline-embed iframe{min-height:760px!important}.scheduler-fallback{align-items:flex-start;flex-direction:column;gap:8px}}
@media(max-width:600px){.scheduler-shell{padding:8px}.cal-inline-embed,.cal-inline-embed iframe{min-height:820px!important}.next-note{padding:32px}.scheduler-intro h2{font-size:45px}}

/* -------------------------------------------------
   V6 · Private prepared intake
   ------------------------------------------------- */
.private-header .nav{grid-template-columns:auto 1fr auto}.private-label{justify-self:center;font-size:9px;letter-spacing:.18em;color:#8f8580;font-weight:760}.intake-body{background:var(--ivory)}
.intake-hero{background:var(--charcoal);color:white;padding:104px 28px 72px}.intake-hero-inner{max-width:var(--max);margin:auto;display:grid;grid-template-columns:1.25fr .45fr;gap:90px;align-items:end}.intake-hero h1{font-size:clamp(60px,7vw,98px);margin-bottom:22px}.intake-hero .deck{max-width:850px}.intake-hero-note{border-left:1px solid #49413e;padding-left:24px;display:flex;flex-direction:column;gap:7px;align-items:flex-start}.intake-hero-note strong{font-size:14px;color:#fff;word-break:break-word}.intake-loading-wrap{min-height:350px}
.intake-toolbar-wrap{position:sticky;top:76px;z-index:40;background:rgba(248,244,236,.96);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.intake-toolbar{max-width:var(--max);margin:auto;padding:13px 28px;display:flex;justify-content:space-between;align-items:center;gap:25px}.intake-kicker{font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:760}.intake-client{font-size:11px;color:var(--muted)}.intake-toolbar-actions{display:flex;align-items:center;gap:18px}.save-pill{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#486151;border:1px solid #b9c7bd;background:#eef4ef;padding:6px 9px}.save-pill.saving{color:#775d2f;border-color:#d5c7a9;background:#f5f0e4}.save-pill.error{color:#8a2637;border-color:#d8adb6;background:#f7e9ec}.text-button{border:0;background:none;padding:0;color:var(--burgundy);cursor:pointer;font-size:11px;font-weight:720;border-bottom:1px solid #be9ba5}
.intake-section{border-bottom:1px solid var(--line)}.intake-layout{max-width:var(--max);margin:auto;display:grid;grid-template-columns:.52fr 1.48fr;gap:92px}.intake-side-sticky{position:sticky;top:145px}.intake-side h2{font-size:clamp(40px,4vw,60px);max-width:390px}.intake-side p{color:#655d57;max-width:380px}.intake-tip{margin-top:30px;border-top:1px solid var(--line);padding-top:18px;display:flex;flex-direction:column;gap:5px;font-size:12px;color:var(--muted)}.intake-tip strong{color:var(--ink)}.intake-main{min-width:0}.intake-field{border-top:1px solid var(--line);padding:26px 0}.intake-field:last-of-type{border-bottom:1px solid var(--line)}.intake-field label,.example-grid label,.reaction-field,.trajectory-block label{display:block}.intake-field label>span,.example-grid label>span,.reaction-field>span,.trajectory-block label>span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.13em;color:var(--muted);font-weight:700;margin-bottom:9px}.intake-field em,.example-grid em{font-style:normal;text-transform:none;letter-spacing:0;font-weight:400;color:#9a918b}.intake-field input,.intake-field textarea,.example-grid input,.example-grid select,.reaction-field textarea,.trajectory-block textarea,.trajectory-block select{width:100%;border:0;border-bottom:1px solid #cfc6bb;background:transparent;color:var(--ink);padding:8px 0 12px;outline:none;border-radius:0}.intake-field textarea,.reaction-field textarea,.trajectory-block textarea{resize:vertical;line-height:1.55}.intake-field input:focus,.intake-field textarea:focus,.example-grid input:focus,.example-grid select:focus,.reaction-field textarea:focus,.trajectory-block textarea:focus,.trajectory-block select:focus{border-color:var(--burgundy)}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.examples-section{background:#eee7dc}.intake-count{font-family:var(--serif);font-size:64px;line-height:1;color:var(--burgundy);margin:30px 0 10px}.intake-count small{font-family:var(--sans);font-size:10px;text-transform:uppercase;letter-spacing:.13em;color:var(--muted);margin-left:8px}.examples-list{display:flex;flex-direction:column;gap:24px}.intake-example{background:var(--ivory);border:1px solid #d2c8bb;padding:30px 32px 34px;box-shadow:0 18px 42px rgba(50,38,31,.055)}.example-header{display:flex;align-items:flex-start;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:25px}.example-header>div{display:flex;align-items:baseline;gap:16px}.example-header h3{font-family:var(--serif);font-weight:400;font-size:29px;margin:0}.example-number{font-size:10px;color:var(--burgundy);font-weight:760;letter-spacing:.13em}.remove-example{border:0;background:none;color:#8d837c;font-size:10px;text-transform:uppercase;letter-spacing:.1em;cursor:pointer;padding:5px}.remove-example:hover{color:var(--burgundy)}.example-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px 28px;margin-bottom:28px}.example-grid.compact-grid .couple-subject-field:not([hidden]){grid-column:1/3}.example-upload-block{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0;margin:8px 0 28px}.upload-heading{display:flex;justify-content:space-between;align-items:center;gap:24px}.upload-heading>div{display:flex;flex-direction:column}.upload-heading strong{font-size:12px}.upload-heading span{font-size:11px;color:var(--muted)}.upload-button{display:inline-flex;cursor:pointer;border:1px solid #a59a92;padding:9px 13px;font-size:11px;font-weight:720;white-space:nowrap}.upload-button:hover{border-color:var(--burgundy);color:var(--burgundy)}.upload-button input{position:absolute;opacity:0;pointer-events:none}.upload-button:has(input:disabled){opacity:.4;cursor:not-allowed}.upload-status{min-height:20px;padding-top:8px;font-size:10px;color:var(--burgundy)}.image-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.image-chip{min-width:0;border:1px solid var(--line);background:#fffdf8;position:relative}.image-chip img,.image-file-icon{width:100%;height:145px;object-fit:cover;background:#ddd4c9}.image-file-icon{display:flex;align-items:center;justify-content:center;font-size:10px;letter-spacing:.14em;color:#786e68}.image-chip-meta{padding:8px 28px 8px 9px;min-width:0;display:flex;flex-direction:column}.image-chip-meta span{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.image-chip-meta small{font-size:9px;color:var(--muted)}.image-chip button{position:absolute;right:7px;bottom:10px;border:0;background:none;font-size:17px;color:#8d817b;cursor:pointer}.reaction-field{margin-bottom:28px}.reaction-field textarea{font-family:var(--serif);font-size:20px}.trajectory-block{background:#f2ece3;padding:20px 22px}.trajectory-details{border-top:1px solid var(--line);margin-top:18px;padding-top:20px}.trajectory-details>label{margin-top:20px}.add-example{width:100%;margin-top:24px;border:1px dashed #a99d94;background:transparent;padding:24px;cursor:pointer;display:grid;grid-template-columns:45px 1fr;grid-template-rows:auto auto;text-align:left}.add-example>span{grid-row:1/3;font-family:var(--serif);font-size:34px;color:var(--burgundy);align-self:center}.add-example strong{font-family:var(--serif);font-size:24px;font-weight:400}.add-example small{color:var(--muted)}.add-example:hover{border-color:var(--burgundy);background:rgba(255,255,255,.25)}.add-example:disabled{opacity:.45;cursor:not-allowed}
.intake-submit-section{padding-top:90px;padding-bottom:90px}.intake-submit-grid{max-width:var(--max);margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}.intake-submit-grid h2{max-width:600px}.intake-consents{border-top:1px solid #4c4441}.intake-check{display:flex;gap:14px;padding:19px 0;border-bottom:1px solid #4c4441;color:#c8beba;font-size:12px;line-height:1.5;cursor:pointer}.intake-check input{accent-color:#d4a1ae;margin-top:3px}.intake-check strong{color:white}.intake-check a{color:white;text-decoration:underline;text-underline-offset:2px}.intake-submit-button{margin-top:28px;min-width:220px}.intake-submit-button:disabled{opacity:.6;cursor:wait}.intake-submit-status{font-size:11px;color:#d6aab5;min-height:22px;margin-top:12px}.submitted-panel{padding-top:25px;padding-bottom:40px}.submitted-panel .button{margin-top:25px}
@media(max-width:980px){.private-header .private-label{display:none}.private-header .nav{grid-template-columns:auto auto}.intake-hero-inner,.intake-layout,.intake-submit-grid{grid-template-columns:1fr}.intake-hero-inner{gap:45px}.intake-hero-note{border-left:0;border-top:1px solid #49413e;padding:18px 0 0}.intake-layout{gap:42px}.intake-side-sticky{position:static}.intake-toolbar-wrap{top:76px}.intake-side h2{max-width:none}.intake-side p{max-width:700px}}
@media(max-width:700px){.private-header .nav-cta{display:inline-flex}.intake-hero{padding:88px 20px 56px}.intake-toolbar{padding:11px 20px}.intake-client{display:none}.intake-toolbar-actions{gap:10px}.text-button{font-size:10px}.intake-example{padding:24px 20px}.example-grid,.two-col{grid-template-columns:1fr}.example-grid.compact-grid .couple-subject-field:not([hidden]){grid-column:auto}.upload-heading{align-items:flex-start;flex-direction:column}.image-strip{grid-template-columns:1fr 1fr}.image-chip img,.image-file-icon{height:150px}.trajectory-block{padding:18px}.intake-submit-grid{gap:45px}.intake-submit-section{padding-left:20px;padding-right:20px}}

/* V6 · owner intake dashboard */
.admin-login{max-width:520px;margin:0 auto;padding:45px;background:var(--paper);border:1px solid var(--line)}.admin-login h2{font-size:48px}.admin-login label{display:flex;flex-direction:column;gap:8px;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin:25px 0}.admin-login input{border:0;border-bottom:1px solid var(--line);background:transparent;padding:10px 0;font-size:18px;outline:none}.admin-error{color:var(--burgundy)}.admin-table-wrap{overflow:auto;border-top:1px solid var(--line)}.admin-table{width:100%;border-collapse:collapse;min-width:850px}.admin-table th{text-align:left;font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);padding:14px 10px;border-bottom:1px solid var(--line)}.admin-table td{padding:17px 10px;border-bottom:1px solid var(--line);font-size:12px;vertical-align:top}.admin-table td strong,.admin-table td small{display:block}.admin-table td small{color:var(--muted);margin-top:3px}.admin-status{display:inline-block;padding:5px 7px;border:1px solid var(--line);text-transform:uppercase;font-size:9px;letter-spacing:.08em}.admin-status.submitted{border-color:#8da493;color:#41604a;background:#edf3ee}.admin-status.draft{color:#7c6650;background:#f3eee7}.admin-profile{display:grid;grid-template-columns:1.2fr .6fr 1.2fr;gap:45px;padding-bottom:50px;border-bottom:1px solid var(--line)}.admin-profile p:last-child{white-space:normal}.admin-examples{display:flex;flex-direction:column;gap:50px;padding-top:50px}.admin-example{border-top:1px solid var(--line);padding-top:22px}.admin-example-head{display:grid;grid-template-columns:45px 1fr auto;gap:20px;align-items:baseline}.admin-example-head>span{font-size:10px;color:var(--burgundy);font-weight:760}.admin-example-head h2{font-size:39px;margin:0}.admin-example-head small{color:var(--muted)}.admin-subject{text-transform:uppercase;font-size:9px;letter-spacing:.12em;color:var(--burgundy);margin:9px 0}.admin-images{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:25px 0}.admin-images a{border:1px solid var(--line);background:var(--paper)}.admin-images img{width:100%;height:280px;object-fit:contain;background:#e5ddd2}.admin-images span{display:block;padding:8px 10px;font-size:9px;color:var(--muted)}.admin-copy{max-width:900px}.admin-reaction{font-family:var(--serif);font-size:24px;line-height:1.5}.admin-trajectory{margin-top:25px;padding:22px;background:var(--paper);border-left:3px solid var(--burgundy);font-size:13px}.admin-trajectory p{margin:8px 0;color:#5f5752}
@media(max-width:850px){.admin-profile{grid-template-columns:1fr}.admin-example-head{grid-template-columns:35px 1fr}.admin-example-head small{grid-column:2}.admin-images{grid-template-columns:1fr 1fr}.admin-images img{height:220px}}


/* -------------------------------------------------
   V6.1 · Post-payment handoff polish
   ------------------------------------------------- */
.journey-overview{
  display:grid;
  grid-template-columns:minmax(0,1fr) 74px minmax(0,1fr);
  align-items:center;
  gap:18px;
  margin:0 0 54px;
  padding:22px 24px;
  border:1px solid var(--line);
  background:rgba(255,253,248,.58);
}
.journey-step{display:flex;align-items:center;gap:14px;min-width:0;color:#746b65}
.journey-step>span{
  width:34px;height:34px;flex:0 0 34px;border-radius:50%;
  display:grid;place-items:center;border:1px solid #bfb4ab;
  font-size:10px;font-weight:760;letter-spacing:.08em;
}
.journey-step strong{display:block;font-family:var(--serif);font-size:20px;font-weight:400;color:#3a332f;line-height:1.15}
.journey-step small{display:block;margin-top:4px;font-size:11px;line-height:1.4;color:var(--muted)}
.journey-step.active>span{background:var(--burgundy);border-color:var(--burgundy);color:white}
.journey-connector{height:1px;background:var(--line);width:100%}

.scheduler-shell.is-booked{border-color:#b6c2b9;box-shadow:0 24px 70px rgba(52,80,60,.08)}
.booking-complete-banner{
  margin:-12px 0 28px;
  padding:18px 20px;
  display:flex;align-items:center;gap:15px;
  border:1px solid #b9c7bd;
  background:#eef4ef;
  color:#365342;
  animation:handoffReveal .45s ease both;
}
.booking-complete-banner .booking-check{
  display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;
  border-radius:50%;background:#496958;color:white;font-size:17px;font-weight:760;
}
.booking-complete-banner strong{display:block;color:#274233;font-family:var(--serif);font-size:21px;font-weight:400;line-height:1.15}
.booking-complete-banner span:last-child{display:block;margin-top:3px;font-size:11px;color:#607366}

.post-booking-grid{grid-template-columns:1fr}
.intake-next-step{
  position:relative;
  max-width:none;
  transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease,opacity .35s ease;
}
.intake-next-step.is-waiting{
  background:#282321;
  border:1px solid #514744;
  box-shadow:none;
}
.intake-next-step.is-waiting:before{
  content:"BOOK YOUR SESSION FIRST";
  position:absolute;right:28px;top:25px;
  font-size:9px;letter-spacing:.16em;font-weight:760;color:#9e8f89;
}
.intake-next-step.is-ready{
  border:1px solid #a75e72;
  box-shadow:0 28px 80px rgba(87,16,33,.18);
  transform:translateY(-2px);
  animation:intakeReady .7s cubic-bezier(.2,.8,.2,1) both;
}
.intake-next-step.is-ready:before{
  content:"NEXT STEP";
  position:absolute;right:28px;top:25px;
  font-size:9px;letter-spacing:.16em;font-weight:760;color:#e0a9b7;
}
.intake-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:24px}
.button-copy{
  background:transparent;color:#fff;border-color:#6c5e59;
}
.button-copy:hover:not(:disabled){border-color:#d2a2ae;color:#f0c5cf}
.button-copy:disabled{opacity:.42;cursor:not-allowed}
.intake-return-note{margin:16px 0 0!important;font-size:11px!important;color:#a99d98!important}
.copy-status{min-height:18px;margin:8px 0 0!important;font-size:11px!important;color:#e3bbc5!important}
.guided-next-step.is-ready{
  border-color:#b9c7bd;background:#eef4ef;
  animation:handoffReveal .45s ease both;
}
@keyframes intakeReady{
  0%{opacity:.72;transform:translateY(12px) scale(.992)}
  58%{opacity:1;transform:translateY(-4px) scale(1.006)}
  100%{opacity:1;transform:translateY(-2px) scale(1)}
}
@keyframes handoffReveal{
  from{opacity:0;transform:translateY(8px)}
  to{opacity:1;transform:none}
}
@media(max-width:760px){
  .journey-overview{grid-template-columns:1fr;gap:12px;padding:18px}
  .journey-connector{height:18px;width:1px;margin-left:16px}
  .intake-next-step.is-waiting:before,.intake-next-step.is-ready:before{position:static;display:block;margin:0 0 18px}
}
@media(prefers-reduced-motion:reduce){
  .booking-complete-banner,.intake-next-step.is-ready,.guided-next-step.is-ready{animation:none}
  .intake-next-step{transition:none}
}

/* V6.3 · Contact + The Attraction Edit */
.form-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}.form-status.success,.newsletter-status.success{color:#446345}.form-status.error,.newsletter-status.error{color:#9b243d}.newsletter-form-wrap button[disabled],.form button[disabled]{opacity:.58;cursor:wait}.newsletter-consent{font-size:10px!important;line-height:1.55!important;color:#d9c2c7!important;margin:10px 0 0!important;max-width:520px!important}.newsletter-consent a{color:#fff;text-decoration:underline;text-underline-offset:2px}.confirm-card{max-width:680px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:34px 0}.confirm-card p{font-size:17px;color:#5f5752;max-width:600px;margin:0 0 26px}.admin-nav-links{display:flex;align-items:center;gap:22px}.admin-nav-links>a:not(.nav-cta){font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--ink)}


/* Brand assets V1 */
.wordmark{
  position:relative;
  width:190px;
  height:42px;
  display:inline-flex;
  flex:0 0 auto;
  align-items:center;
}
.wordmark::before{
  content:"";
  position:absolute;
  inset:0;
  background:url("assets/logo-compact-reversed.svg") left center / contain no-repeat;
}
.wordmark span{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}
.footer .wordmark{width:220px;height:54px;margin-bottom:9px}
@media(max-width:520px){
  .wordmark{width:165px;height:38px}
}
