/* created: 2026-10-09; updated: 2026-10-09 */
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,500;1,600&display=swap');
:root{--cream:#faf6ef;--paper:#fffdf9;--ink:#302321;--muted:#70645e;--red:#a93632;--gold:#e3b76d;--line:#ddd3c6;--serif:'Playfair Display',Georgia,serif;--sans:Manrope,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.65}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:3px solid var(--red);outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2{font-family:var(--serif);font-weight:500;line-height:1.18;letter-spacing:-.02em}h2{font-size:clamp(2.2rem,4.1vw,3.7rem)}h2 em{color:var(--red);font-weight:500}h3{font-size:1.2rem;line-height:1.4;letter-spacing:-.025em}p{color:var(--muted)}.container{width:min(1180px,calc(100% - 80px));margin-inline:auto}.section{padding:96px 0}.eyebrow{font-size:.85rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--red);margin-bottom:23px}.eyebrow.light{color:var(--gold)}.section-intro{font-size:1.08rem;max-width:600px}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--red);color:#fffdf7;border:1px solid var(--red);padding:18px 29px;border-radius:8px;font-size:1rem;font-weight:700;line-height:1.4;text-align:center;transition:background .2s,transform .2s}.button:hover{background:#882b28;transform:translateY(-2px)}.button-small{padding:12px 21px;font-size:.9rem}.button-gold{background:var(--gold);border-color:var(--gold);color:var(--ink)}.button-gold:hover{background:#efc98b}.text-link{font-size:.95rem;font-weight:600;text-decoration:underline;text-underline-offset:5px}.skip{position:fixed;top:-100px;z-index:100;background:var(--paper);padding:10px}.skip:focus{top:10px}.site-header{background:rgba(250,246,239,.97);border-bottom:1px solid var(--line)}.header-inner{min-height:94px;display:flex;align-items:center;gap:30px;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px;font-size:.96rem;font-weight:800;line-height:1.5}.brand small{display:block;color:var(--muted);font-weight:400;font-size:.8rem}.brand-mark{display:grid;place-items:center;border:1px solid var(--red);color:var(--red);font-family:var(--serif);font-weight:600;width:45px;height:45px;border-radius:50%;font-size:1.1rem}.header-inner nav{display:flex;gap:28px;font-size:.9rem}.header-inner nav a:hover{color:var(--red)}.hero{padding-top:62px}.hero-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:74px;align-items:center}.hero-copy .eyebrow{display:flex;align-items:center;gap:12px}.short-line{width:26px;height:1px;background:var(--red)}h1{font-size:clamp(3.4rem,5.4vw,5rem)}h1 .number{color:var(--red)}h1 em{font-weight:500;color:var(--red)}.hero-lead{font-size:1.2rem;line-height:1.6;color:var(--ink);max-width:500px;margin-top:26px}.hero-description{font-size:1rem;margin-top:14px;max-width:500px}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin-top:30px}.hero-note{font-size:.82rem;line-height:1.6;margin-top:16px;max-width:430px}.hero-visual{display:grid;gap:16px;min-width:0}.portrait-frame{position:relative;border-radius:180px 180px 8px 8px;overflow:hidden;background:#d9cfc1;aspect-ratio:4/5.1}.portrait-frame img{width:100%;height:100%;object-fit:cover;object-position:center 34%}.portrait-caption{position:absolute;inset:auto 0 0;padding:68px 28px 27px;background:linear-gradient(transparent,rgba(40,28,24,.88));color:white}.portrait-caption span{display:block;font-size:.78rem;letter-spacing:.07em;color:#f1dbc0}.portrait-caption strong{display:block;font-size:1.55rem;line-height:1.4}.portrait-caption p{font-size:.85rem;color:#efe3d6}.visual-label{padding:19px 25px;background:var(--paper);border:1px solid var(--line);box-shadow:0 12px 25px #3023210b;border-radius:8px;line-height:1.6}.visual-label span{font-size:.85rem;display:block;color:var(--muted)}.visual-label strong{font-size:.9rem}.format-strip{margin-top:56px;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:26px 0}.format-strip>div{padding:0 25px;border-left:1px solid var(--line)}.format-strip>div:first-child{padding-left:0;border:0}.format-strip strong{display:block;font-size:1.23rem;color:var(--red)}.format-strip span{display:block;color:var(--muted);font-size:.82rem;margin-top:3px}.split-heading{display:grid;grid-template-columns:1.45fr 1fr;gap:65px;align-items:end}.pain-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:42px}.pain-grid article{border-top:1px solid var(--line);padding-top:20px}.pain-grid .index{display:block;font-size:.82rem;color:var(--red);margin-bottom:15px}.pain-grid h3{margin-bottom:14px}.pain-grid p{font-size:1rem}.result-section{background:var(--ink);color:var(--cream);position:relative}.result-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:110px}.result-section h2 em{color:var(--gold)}.result-grid>div>p:not(.eyebrow){color:#cdbfb3;max-width:350px;margin-top:23px}.result-grid .button{margin-top:30px}.result-list article{display:flex;gap:24px;border-bottom:1px solid #ffffff24;padding:23px 0}.result-list article:first-child{padding-top:0}.result-list article>span{color:var(--gold);font-size:.85rem;padding-top:4px}.result-list h3{font-size:1.2rem}.result-list p{margin-top:7px;color:#cdbfb3;font-size:1rem}.section-heading .section-intro{margin-top:24px}.day-list{margin-top:42px}.day{display:grid;grid-template-columns:150px 1fr;gap:38px;border-top:1px solid var(--line);padding:36px 0}.day-number{line-height:1.3}.day-number>span{font-size:.85rem;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.day-number strong{display:block;font-family:var(--serif);font-size:4.5rem;line-height:1.2;color:var(--red);font-weight:500}.day-number small{font-size:.85rem;color:var(--muted)}.day-tag{font-size:.82rem;font-weight:700;letter-spacing:.04em;color:var(--red);margin-bottom:12px}.day-content h3{font-family:var(--serif);font-size:1.85rem;font-weight:500;margin-bottom:12px}.day-content>p{max-width:800px}.day-content ul{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px 28px;margin:23px 0}.day-content li{font-size:.96rem;padding-left:19px;position:relative}.day-content li:before{content:'';position:absolute;width:6px;height:6px;background:var(--red);border-radius:50%;left:0;top:11px}.day-result{padding:17px 23px;background:#efe7da;border-left:3px solid var(--gold);border-radius:0 6px 6px 0}.day-result>span{font-size:.77rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);display:block;margin-bottom:4px}.day-result strong{font-size:1rem;font-weight:600}.day-content .homework{font-size:.86rem;line-height:1.65;margin-top:13px}.program-note{margin-top:15px;background:var(--paper);border:1px solid var(--line);padding:22px 28px;border-radius:8px;display:grid;grid-template-columns:200px 1fr;gap:30px}.program-note strong{font-size:.95rem}.program-note p{font-size:.92rem}.materials-section{background:#eee5d8}.materials-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:85px}.materials-grid .section-intro{margin-top:23px}.materials-list article{display:flex;gap:20px;padding:20px 0;border-bottom:1px solid #cfc2b1}.materials-list article:first-child{padding-top:0}.material-number{color:var(--red);font-size:.85rem;padding-top:5px}.materials-list p{font-size:.94rem;margin-top:6px}.audience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:36px}.audience-grid article{padding:25px;border:1px solid var(--line);border-radius:8px;background:var(--paper)}.audience-grid h3{font-size:1.1rem;margin-bottom:12px}.audience-grid p{font-size:.96rem}.audience-note{margin-top:25px;font-size:.94rem;max-width:850px}.host-section{padding-top:0}.host-grid{display:grid;grid-template-columns:340px 1fr;gap:75px;align-items:center;border-top:1px solid var(--line);padding-top:75px}.host-photo{border-radius:140px 140px 8px 8px;overflow:hidden;height:420px}.host-photo img{width:100%;height:100%;object-fit:cover;object-position:center 33%}.host-lead{font-size:1.1rem;margin-top:22px;max-width:580px}.host-grid blockquote{margin:25px 0;padding:0 0 0 20px;border-left:2px solid var(--gold);font-family:var(--serif);font-size:1.3rem;line-height:1.55;color:var(--ink)}.host-footnote{font-size:.88rem}.faq-section{background:var(--paper)}.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.faq-list details{border-bottom:1px solid var(--line);padding:19px 0}.faq-list details:first-child{border-top:1px solid var(--line)}.faq-list summary{cursor:pointer;list-style:none;font-size:1rem;font-weight:600;position:relative;padding-right:40px;line-height:1.6}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';position:absolute;right:1px;top:0;font-size:1.3rem;color:var(--red);font-weight:400}.faq-list details[open] summary:after{content:'−'}.faq-list details p{font-size:.95rem;margin-top:12px;padding-right:25px}.closing{background:var(--ink);padding:88px 0;text-align:center;color:var(--cream)}.closing h2{font-size:clamp(2.3rem,4.2vw,3.8rem)}.closing h2 em{color:var(--gold)}.closing p:not(.eyebrow){color:#d7c7b7;font-size:1.1rem;margin:25px 0}.closing small{display:block;color:#cdbfb3;margin-top:17px;font-size:.82rem}footer{background:#251b19;color:#d7c7b7;padding:27px 0;font-size:.8rem}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:25px}.footer-inner p{color:#efe3d6;font-weight:600}.footer-inner p span{display:block;font-weight:400;color:#b9a99d;margin-top:3px}.footer-inner a{text-decoration:underline;text-underline-offset:4px}.mobile-cta{display:none}
@media(min-width:1500px){.hero{padding-top:75px}.hero-grid{gap:100px}}
@media(max-width:1000px){.container{width:calc(100% - 48px)}.hero-grid{gap:35px;grid-template-columns:1.2fr 1fr}h1{font-size:4rem}.hero-actions{align-items:flex-start;flex-direction:column;gap:14px}.hero-lead{font-size:1.1rem}.visual-label{padding:14px 18px}.format-strip>div{padding-inline:15px}.split-heading{gap:35px}.result-grid,.materials-grid{gap:50px}.host-grid{grid-template-columns:290px 1fr;gap:40px}.faq-grid{gap:45px}.header-inner nav{display:none}.day{grid-template-columns:110px 1fr;gap:25px}}
@media(max-width:760px){html{scroll-padding-top:25px}.container{width:calc(100% - 36px)}body{font-size:16px}.section{padding:62px 0}.site-header .header-inner{min-height:78px;gap:14px}.header-inner nav{display:none}.brand{font-size:.88rem;gap:9px}.brand small{font-size:.72rem}.brand-mark{width:37px;height:37px;font-size:.95rem}.header-inner .button-small{padding:11px 16px;font-size:.9rem}.hero{padding-top:35px}.hero-grid{grid-template-columns:1fr;gap:34px}h1{font-size:clamp(2.5rem,11.8vw,4.4rem);line-height:1.18}.eyebrow{font-size:.76rem;margin-bottom:18px}.hero-lead{font-size:1.12rem;margin-top:23px}.hero-description{font-size:.98rem}.hero-actions{margin-top:24px}.hero-actions .button{width:100%}.hero-note{font-size:.8rem}.hero-visual{max-width:390px;width:100%;margin-inline:auto}.portrait-frame{aspect-ratio:4/4.1;border-radius:140px 140px 8px 8px}.portrait-frame img{object-position:center 30%}.portrait-caption{padding:65px 22px 25px}.portrait-caption strong{font-size:1.3rem}.format-strip{margin-top:33px;grid-template-columns:1fr 1fr;gap:22px 0;padding:22px 0}.format-strip>div{padding:0 16px}.format-strip>div:nth-child(odd){padding-left:0;border-left:0}.format-strip strong{font-size:1.1rem}.format-strip span{font-size:.8rem}.split-heading,.result-grid,.materials-grid,.faq-grid{grid-template-columns:1fr;gap:27px}h2{font-size:clamp(2rem,8.5vw,2.5rem)}.section-intro{font-size:1rem}.pain-grid{grid-template-columns:1fr;gap:25px;margin-top:28px}.pain-grid .index{margin-bottom:8px}.pain-grid h3{font-size:1.13rem;margin-bottom:9px}.result-list article{padding:19px 0;gap:17px}.result-list article:first-child{padding-top:10px}.result-list h3{font-size:1.07rem}.result-list p{font-size:.95rem}.result-grid>div>p:not(.eyebrow){max-width:100%}.result-grid .button{width:100%}.day-list{margin-top:28px}.day{grid-template-columns:1fr;gap:17px;padding:26px 0}.day-number{display:flex;align-items:center;gap:12px}.day-number strong{font-size:2.4rem;line-height:1}.day-number small{margin-left:auto}.day-number>span{font-size:.78rem}.day-content h3{font-size:1.65rem}.day-tag{font-size:.74rem}.day-content ul{grid-template-columns:1fr;gap:10px;margin:18px 0}.day-content li{font-size:.95rem}.day-result{padding:14px 17px}.day-result strong{font-size:.94rem}.program-note{grid-template-columns:1fr;gap:8px;padding:20px}.materials-list{margin-top:6px}.materials-list h3{font-size:1.07rem}.audience-grid{grid-template-columns:1fr;gap:14px;margin-top:26px}.audience-grid article{padding:22px}.audience-note{font-size:.9rem}.host-section{padding-top:0}.host-grid{grid-template-columns:1fr;gap:28px;padding-top:55px}.host-photo{max-width:310px;height:350px}.host-grid .eyebrow{margin-bottom:12px}.host-lead{font-size:1rem}.host-grid blockquote{font-size:1.18rem;margin-top:22px}.faq-list summary{font-size:.96rem}.closing{padding:62px 0}.closing h2{font-size:clamp(2rem,8vw,2.35rem)}.closing .button{width:100%;max-width:390px}.closing p:not(.eyebrow){font-size:1rem}.closing small{font-size:.8rem;max-width:300px;margin-inline:auto}.footer-inner{align-items:flex-start;flex-direction:column;gap:18px}footer{padding-bottom:27px}.mobile-cta{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;justify-content:space-between;gap:10px;padding:12px 18px max(12px,env(safe-area-inset-bottom));background:rgba(250,246,239,.98);border-top:1px solid var(--line);box-shadow:0 -4px 20px #3023210a}.mobile-cta>span{font-size:.82rem;font-weight:700;line-height:1.5;text-align:center}.mobile-cta small{display:block;font-size:.72rem;font-weight:400;color:var(--muted)}.mobile-cta .button{width:100%;font-size:1rem;padding:12px 18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}.button:hover{transform:none}}

.event-schedule{margin-top:22px;padding:14px 18px;border-left:3px solid var(--red);background:#efe7da;border-radius:0 6px 6px 0}.event-schedule strong{display:block;color:var(--ink);font-size:1.1rem}.event-schedule span{display:block;font-size:.94rem;margin-top:3px}.day-date{font-weight:700;font-size:.94rem;color:var(--ink);margin:9px 0 8px;line-height:1.6}.day-date span{display:block;font-weight:400;font-size:.85rem;color:var(--muted)}
@media(max-width:760px){.day-number{flex-wrap:wrap}.day-date{margin:0 0 0 auto;text-align:right}.day-number small{width:100%;margin:0;text-align:right}.event-schedule{padding:12px 15px}.event-schedule strong{font-size:1.05rem}.event-schedule span{font-size:.86rem}.format-strip strong{font-size:1rem}.mobile-cta small{max-width:none;font-size:.8rem}}

.day-content .day-practice{font-size:.94rem;color:var(--ink);margin:0 0 18px;padding-left:16px;border-left:2px solid var(--red)}.day-content li strong{font-weight:700;color:var(--ink)}

/* Keep text in its own layout area at every viewport width. */
.hero-grid>*,.split-heading>*,.result-grid>*,.materials-grid>*,.faq-grid>*,.host-grid>*,.day>*,.format-strip>*,.result-list article>div,.materials-list article>div{min-width:0}
h1,h2,h3,.brand,.button,.day-date{overflow-wrap:anywhere}
.button{max-width:100%}.brand-mark{flex-shrink:0}.short-line{flex-shrink:0}
.hero-copy .eyebrow{line-height:1.6}.header-inner{padding-block:16px;flex-wrap:wrap}
.day-number{min-width:0}.format-strip{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:760px){
 .format-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
 .day-number{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:8px 12px}
 .day-date{grid-column:3;grid-row:1;margin:0;text-align:right}
 .day-number small{grid-column:3;grid-row:2;text-align:right}
 .day-number>span{grid-column:1;grid-row:1}.day-number>strong{grid-column:2;grid-row:1}
 .visual-label{padding:18px 22px}.visual-label span,.visual-label strong{font-size:.94rem}
 .day-date span{font-size:.85rem}.event-schedule span{line-height:1.65}
}
@media(max-width:520px){
 .header-inner{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;padding-block:16px}
 .header-inner .button{width:100%}.brand{font-size:.95rem}.brand small{font-size:.8rem}
 .portrait-caption{padding:65px 18px 22px}.portrait-caption strong{font-size:1.25rem}
}
