:root{--ink:#321c25;--wine:#841f3c;--wine2:#68152f;--ivory:#fff7f2;--paper:#f7e8eb;--sand:#f3dfe4;--rose:#bd526e;--gold:#b78d55;--gold2:#e6c990;--muted:#9d7e88;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Montserrat',Arial,sans-serif}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ivory);color:var(--ink);font-family:var(--sans);font-size:18px;line-height:1.75}
a{color:inherit;text-decoration:none}
p{margin:0 0 1.5rem}
.nav{position:absolute;z-index:20;top:0;left:0;width:100%;padding:28px 4.5vw;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.22);color:#fff7f2}
.monogram{font-family:var(--serif);font-size:25px;letter-spacing:.12em}
.nav-cta,.button{font-size:13px;letter-spacing:.16em;text-transform:uppercase;font-weight:600}
.nav-cta{border-bottom:1px solid var(--gold2);padding:8px 0}
.hero{min-height:100svh;position:relative;display:flex;align-items:center;padding:130px 7vw 110px;background:url('assets/hero-medicine-woman.png') center/cover no-repeat}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(64,7,28,.72) 0%,rgba(91,12,39,.42) 35%,rgba(91,12,39,.04) 72%),linear-gradient(0deg,rgba(58,8,26,.35),transparent 38%)}
.hero-content{position:relative;z-index:2;max-width:850px}
.eyebrow{color:var(--gold2);font-size:12px;letter-spacing:.32em;text-transform:uppercase;font-weight:600;margin-bottom:26px}
.kicker{color:var(--gold2);font-size:15px;letter-spacing:.25em;text-transform:uppercase;font-weight:600;margin-bottom:26px}
.hero-title{margin-bottom:30px}
.hero h1{font:500 clamp(56px,5.8vw,88px)/.86 var(--serif);letter-spacing:-.045em;margin:0;color:#fff7f2;max-width:850px}
.hero-mainline{display:block;white-space:nowrap;font-size:clamp(50px,4.6vw,78px);line-height:.92}
.hero h1 em{display:block;font-weight:400;color:#f0cd95}
.hero-sub{font:italic 400 clamp(27px,3vw,43px)/1.1 var(--serif);color:#fff0e9;margin-bottom:20px}
.hero-intro{font-size:14px;letter-spacing:.1em;text-transform:uppercase;color:#edccd4;margin-bottom:35px}
.button{display:inline-block;padding:17px 26px;transition:.3s}
.button-light{border:1px solid rgba(255,255,255,.64);background:rgba(255,248,245,.1);color:#fffaf6}
.button-wine{border:1px solid var(--wine);background:var(--wine);color:#fffaf6;min-width:245px;text-align:center}
.button:hover{transform:translateY(-2px);filter:brightness(1.12)}
.section-dark,.section-wine,.section-ivory,.section-sand{padding:130px 7vw}
.section-dark{background:#70223b;color:#fff7f4}
.section-ivory{background:var(--ivory);color:var(--ink)}
.section-sand{background:var(--sand);color:var(--ink)}
.section-wine{background:var(--wine);background-image:radial-gradient(circle at 15% 0%,rgba(255,214,151,.18),transparent 38%);color:#fff9ef}
.narrow{max-width:880px;margin:auto;text-align:center}
.narrow h2,.section-heading h2,.split h2,.liana h2,.enroll h2,.closing h2{font:500 clamp(48px,6vw,86px)/.95 var(--serif);letter-spacing:-.035em;margin:0 0 40px}
.threshold h2{font-size:clamp(48px,5.3vw,76px)}
.threshold .kicker{color:#f0d59f}
.threshold-mainline{display:block;white-space:nowrap;font-size:clamp(44px,4.4vw,66px);line-height:1}
.threshold h2 em{display:block}
.narrow h2 em,.section-heading h2 em,.split h2 em,.enroll h2 em,.closing h2 em{font-weight:400}
.lead{font:italic 400 28px/1.35 var(--serif);color:var(--gold2)}
.gold-line{width:55px;height:1px;background:var(--gold);margin:40px auto}
.narrow>p:not(.kicker):not(.lead):not(.pullquote){max-width:690px;margin:0 auto 23px;color:#c9bbb0}
.pullquote{font:italic 400 clamp(28px,3vw,40px)/1.25 var(--serif);margin-top:45px!important;color:var(--ivory)!important}
.split{max-width:1200px;margin:auto;display:grid;grid-template-columns:.95fr 1.05fr;gap:5vw;align-items:start}
.split h2{font-size:clamp(49px,5vw,76px)}
.section-ivory .kicker,.section-sand .kicker{color:var(--wine)}
.body-copy{font-size:1rem;color:#4d4039}
.entry-clarifier{padding-left:20px;border-left:1px solid var(--gold);font:italic 500 21px/1.45 var(--serif);color:var(--wine)}
.body-copy strong{font:italic 500 25px var(--serif);color:var(--wine)}
.manifesto{padding:150px 7vw;background:linear-gradient(rgba(78,12,37,.56),rgba(78,12,37,.64)),url('assets/hero-medicine-woman.png') center 65%/cover fixed;text-align:center;color:#fff9ef}
.manifesto-inner{max-width:950px;margin:auto}
.manifesto p{max-width:820px;margin:0 auto 20px;font:500 clamp(20px,2vw,28px)/1.3 var(--serif);letter-spacing:.015em;color:var(--gold2)}
.manifesto h2{font:400 clamp(44px,6vw,85px)/.96 var(--serif);margin:0}
.manifesto-divider{display:block;width:1px;height:70px;background:var(--gold);margin:45px auto}
.section-heading{max-width:940px;margin:0 auto 75px;text-align:center}
.section-heading h2{margin-bottom:24px}
.section-heading.dark .kicker{color:var(--wine)}
.section-deck{max-width:700px;margin:auto;color:#62534a}
.pillars-intro{max-width:780px;margin:32px auto 0;color:#f3dfe4;font-size:1rem;line-height:1.75}
.pillars-intro p:last-child{margin-bottom:0}
.section-heading .curriculum-title{font-size:clamp(48px,5.3vw,76px)}
.curriculum-mainline{display:block;white-space:nowrap;font-size:clamp(40px,4vw,58px);line-height:1}
.curriculum-title em{display:block}
.curriculum-deck{max-width:780px;font-size:1rem}
.curriculum-questions{font:italic 500 clamp(20px,1.65vw,25px)/1.35 var(--serif);color:var(--wine);margin:28px auto}
.curriculum-charge{font:italic 500 clamp(28px,3vw,40px)/1.2 var(--serif);color:var(--wine);margin:28px 0 0}
.pillar-grid{max-width:1180px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.2);border-left:1px solid rgba(255,255,255,.2)}
.pillar-grid article{padding:45px 36px;border-right:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2)}
.pillar-grid span{color:var(--gold2);font:italic 20px var(--serif)}
.pillar-grid h3{font:500 31px var(--serif);margin:12px 0 8px}
.pillar-grid p{font-size:1rem;line-height:1.7;color:#eadbd1;margin:0}
.sessions{max-width:1000px;margin:auto;border-top:1px solid #bdaa8d}
.sessions details{border-bottom:1px solid #bdaa8d}
.sessions summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:60px 1fr 25px;gap:20px;align-items:center;padding:30px 8px}
.sessions summary::-webkit-details-marker{display:none}
.sessions summary b{font:italic 19px var(--serif);color:#8d6d3f}
.sessions summary span{min-width:0;text-align:left}
.sessions summary strong{display:block;font:500 clamp(24px,3vw,35px)/1.05 var(--serif)}
.sessions summary small{display:block;font-size:14px;line-height:1.45;letter-spacing:.1em;text-transform:uppercase;color:#796b60;margin-top:8px}
.sessions summary i{font:300 24px var(--sans);font-style:normal;transition:.3s}
.sessions details[open] summary i{transform:rotate(45deg)}
.sessions details>div{padding:0 33px 30px 88px;color:#53453d;font-size:1rem;line-height:1.75;max-width:850px;text-align:left}
.sessions .practice{font:italic 22px/1.45 var(--serif);color:var(--wine);margin-top:22px}
.journey-cta{max-width:1000px;margin:70px auto 0;padding-top:42px;border-top:1px solid #bdaa8d;text-align:center}
.journey-cta p{font:italic 23px var(--serif);color:#6b5147;margin-bottom:24px}
.for-you .split{align-items:center}
.for-you .kicker{color:#f0d59f}
.for-you ul{margin:0;padding:0;list-style:none;border-top:1px solid rgba(230,201,144,.58)}
.for-you li{position:relative;padding:18px 10px;border-bottom:1px solid rgba(230,201,144,.58);font-size:1rem;line-height:1.7;color:#eaded5}
.note{text-align:center;margin:75px auto 0;padding:24px;border:1px solid rgba(230,201,144,.68);background:rgba(255,247,242,.035);max-width:790px;font:italic 22px var(--serif);color:#f0d59f}
.image-story-grid{max-width:1320px;margin:auto;display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:5vw}
.image-story img{width:100%;height:780px;object-fit:cover;box-shadow:25px 25px 0 rgba(255,250,240,.72)}
.image-story-copy .image-story-kicker{line-height:1.5;letter-spacing:.16em;margin-bottom:20px}
.image-story-copy h2{font:500 clamp(46px,4.8vw,68px)/.98 var(--serif);margin:0 0 30px}
.image-story-copy h2 em{color:#914642}
.image-story-copy p:not(.kicker){max-width:560px;color:#5f493e}
.earth-image{min-height:78vh;display:flex;align-items:flex-end;padding:8vw;background:linear-gradient(0deg,rgba(34,19,35,.72),rgba(34,19,35,.08) 72%),url('assets/weather-medicine-woman-v3.png') center 20%/cover no-repeat;color:#fffaf7}
.earth-image-copy{max-width:940px;text-shadow:0 2px 20px rgba(21,8,15,.9),0 1px 3px rgba(21,8,15,.95)}
.earth-image-copy p{max-width:760px;margin:0 0 18px;font:600 clamp(20px,2vw,29px)/1.3 var(--serif);letter-spacing:.01em;color:#fffaf7}
.earth-image-copy h2{font:500 clamp(42px,4.7vw,70px)/1 var(--serif);margin:0}
.liana{position:relative;overflow:hidden}
.liana:before{content:'THE ANOINTING';position:absolute;top:38%;left:-4%;font:500 13vw/.7 var(--serif);white-space:nowrap;color:rgba(91,30,31,.045)}
.teacher-layout{position:relative;z-index:2;max-width:1120px;margin:auto;display:grid;grid-template-columns:.72fr 1.28fr;align-items:stretch}
.teacher-photo{min-height:670px;overflow:hidden;border:1px solid #c5a5af;background:#2b2025}
.teacher-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 30%;filter:contrast(.96) brightness(1.07)}
.liana-card{position:relative;text-align:left;padding:70px 6vw;border:1px solid #bba98a;background:rgba(251,244,232,.92)}
.liana-card .gold-line{margin-left:0}
.liana-card .kicker{text-align:left;color:var(--wine)}
.liana h2{margin-bottom:8px}
.role{font-size:12px;line-height:1.55;letter-spacing:.1em;text-transform:uppercase;color:#826740}
.liana-card>p:not(.kicker):not(.role){font-size:1rem;line-height:1.75;color:#51443c}
.living-program .kicker{color:#f0d59f}
.living-program .narrow>p:not(.kicker):not(.lead){color:#fff1e5}
.enroll{background:radial-gradient(circle at center,rgba(224,124,151,.22),transparent 52%),#681c36;color:#fff9f5}
.enroll-card{max-width:920px;margin:auto;text-align:center;border:1px solid rgba(232,196,135,.72);padding:88px 7vw;background:linear-gradient(145deg,rgba(255,247,242,.055),rgba(76,12,38,.16));box-shadow:0 0 0 8px rgba(255,247,242,.035),0 0 0 9px rgba(232,196,135,.3)}
.enroll .kicker{color:#f0d59f}
.enroll h2{margin-bottom:15px}
.enroll-sub{font:italic 27px var(--serif);color:var(--gold2)}
.includes{display:grid;grid-template-columns:1fr 1fr;gap:12px;background:none;margin:50px 0}
.includes span{display:flex;align-items:center;justify-content:flex-start;min-height:82px;border:1px solid rgba(232,196,135,.4);background:rgba(255,247,242,.055);padding:20px 24px;font-size:16px;font-weight:500;line-height:1.5;letter-spacing:.02em;text-align:left;white-space:nowrap}
.price{padding:30px 0 12px;border-top:1px solid rgba(232,196,135,.38)}
.price small{display:block;margin-bottom:7px;text-transform:uppercase;letter-spacing:.18em;font-size:14px;font-weight:600;color:#f0d59f}
.price strong{display:block;font:500 82px var(--serif);line-height:1;color:var(--gold2)}
.price p{margin:14px 0 20px;font:italic 23px/1.35 var(--serif);letter-spacing:.02em;color:#fff1e5}
.button-gold{margin-top:18px;background:#e8c487;color:#3f2721;min-width:280px}
.fine{font-size:13px;color:rgba(255,241,229,.74);max-width:590px;margin:38px auto 0;line-height:1.7}
.closing{padding:150px 7vw;text-align:center;background:var(--paper);color:var(--ink)}
.closing p{font:500 clamp(22px,2.2vw,30px)/1.35 var(--serif);letter-spacing:.015em;color:#785e3a}
.closing h2{margin:20px 0 0}
footer{padding:45px 6vw;background:#24131c;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;color:#b99ba5;font-size:9px;letter-spacing:.08em;text-transform:uppercase}
footer p{margin:0;text-align:center}
footer div{text-align:right}
footer div a{margin-left:20px}
.mobile-cta{display:none}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .75s ease,transform .75s ease}
.reveal.visible{opacity:1;transform:none}

@media(min-width:900px){.curriculum-questions{position:relative;left:50%;width:max-content;max-width:none;transform:translateX(-50%);white-space:nowrap}}

@media(max-width:800px){body{font-size:17px}
.nav{padding:22px 24px}
.nav-cta{display:none}
.hero{min-height:920px;padding:130px 25px 150px;align-items:flex-end;background-position:72% center}
.hero-shade{background:linear-gradient(0deg,rgba(64,7,28,.88) 10%,rgba(64,7,28,.42) 58%,rgba(64,7,28,.06))}
.hero h1{font-size:57px;line-height:.88}
.hero-mainline{white-space:normal;font-size:inherit;line-height:inherit}
.hero-sub{font-size:27px}
.section-dark,.section-wine,.section-ivory,.section-sand{padding:90px 25px}
.narrow h2,.section-heading h2,.split h2,.liana h2,.enroll h2,.closing h2{font-size:48px}
.threshold-mainline{white-space:normal;font-size:inherit;line-height:inherit}
.curriculum-mainline{white-space:normal;font-size:inherit;line-height:inherit}
.split{grid-template-columns:1fr;gap:35px}
.manifesto{padding:100px 16px;background-attachment:scroll}
.manifesto p{font-size:clamp(20px,6vw,24px);line-height:1.25}
.manifesto-full .full-title{display:block;white-space:nowrap}
.manifesto-desktop-break{display:none}
.manifesto h2{font-size:46px}
.pillar-grid{grid-template-columns:1fr}
.pillar-grid article{padding:35px 30px}
.image-story-grid,.teacher-layout{grid-template-columns:1fr}
.image-story img{height:620px;box-shadow:12px 12px 0 rgba(255,250,240,.72)}
.image-story-copy{padding-top:35px}
.earth-image{min-height:650px;padding:70px 25px;background-position:72% center}
.teacher-photo{min-height:560px}
.liana-card{text-align:center}
.liana-card .gold-line{margin-left:auto}
.liana-card .kicker{text-align:center}
.sessions summary{grid-template-columns:35px 1fr 20px;gap:12px;padding:24px 0}
.sessions summary strong{font-size:24px}
.sessions summary small{font-size:14px;line-height:1.5}
.sessions details>div{padding:0 15px 25px 47px}
.sessions .practice{font-size:20px}
.journey-cta{margin-top:55px;padding-top:35px}
.liana-card{padding:55px 25px}
.enroll-card{padding:60px 23px}
.includes{grid-template-columns:1fr}
.includes span{white-space:normal}
.price strong{font-size:63px}
.closing{padding:100px 25px}
footer{grid-template-columns:1fr;text-align:center;gap:15px;padding-bottom:95px}
footer div{text-align:center}
footer div a{margin:0 8px}
.mobile-cta{display:block;position:fixed;z-index:50;bottom:0;left:0;width:100%;background:var(--gold2);color:#251512;text-align:center;padding:16px;font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}
.section-heading{margin-bottom:50px}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
.reveal{opacity:1;transform:none;transition:none}
}

@media print{.reveal{opacity:1!important;transform:none!important}
.mobile-cta{display:none!important}
.hero{min-height:900px}
.manifesto{background-attachment:scroll}
details>div{display:block!important}
}
