:root{--ink:#17211d;--orange:#e85d27;--cream:#f5efe2;--green:#173c32;--muted:#617069}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fbfaf6;color:var(--ink);font-family:"DM Sans",sans-serif}
a{color:inherit;text-decoration:none}
.site-header{height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;border-bottom:1px solid #dcd8ce;background:#fbfaf6}
.brand{font:800 21px Manrope;letter-spacing:.08em}
.brand span,.eyebrow{color:var(--orange)}
nav{display:flex;align-items:center;gap:30px;font-size:14px;font-weight:700}
.nav-cta{border:1px solid var(--ink);padding:12px 18px}
.eyebrow{font-size:12px;font-weight:800;letter-spacing:.18em}
.hub-hero,.activity-hero{padding:105px 6vw 90px;background:var(--green);color:#fff}
.hub-hero h1,.activity-hero h1{font:800 clamp(52px,7vw,96px)/.96 Manrope;letter-spacing:-.055em;margin:15px 0 30px}
.hub-hero h1 em{color:#f17a4c;font-style:normal}
.hub-hero>p:last-child,.activity-hero>p:not(.eyebrow){max-width:760px;color:#d3ddd8;font-size:20px;line-height:1.65}
.back{display:inline-block;margin-bottom:60px;color:#d3ddd8;font-weight:700}
.time{display:inline-block;margin-top:20px;padding:9px 13px;border:1px solid #ffffff55;font-size:12px;letter-spacing:.08em}
.path-grid{display:grid;grid-template-columns:repeat(3,1fr);padding:90px 6vw;gap:20px}
.path{min-height:430px;padding:40px;display:flex;flex-direction:column;border:1px solid #cbc5b9;transition:.2s}
.path:hover{transform:translateY(-5px);box-shadow:0 18px 45px #1f2a2517}
.path span{font-size:11px;color:var(--orange);font-weight:800;letter-spacing:.14em}
.path h2{font:750 38px/1.05 Manrope;margin:auto 0 18px}
.path p{color:var(--muted);line-height:1.65}
.path b{margin-top:25px}
.path.wall{background:var(--cream)}
.value-strip{background:var(--orange);color:#fff;padding:65px 9vw;text-align:center}
.value-strip p{letter-spacing:.12em;text-transform:uppercase}
.value-strip h2{font:700 clamp(28px,4vw,52px)/1.1 Manrope;max-width:950px;margin:15px auto}
.library-invite{padding:70px 7vw;display:flex;align-items:end;justify-content:space-between;gap:40px;background:var(--cream)}
.library-invite h2{font:750 clamp(34px,4vw,54px)/1.05 Manrope;margin:10px 0}
.library-invite p:not(.eyebrow){max-width:700px;color:var(--muted);font-size:18px;line-height:1.6}
.library-invite>a,.library-next a{font-weight:800;color:var(--orange);white-space:nowrap}
.library-hero{padding:105px 6vw 95px;background:var(--ink);color:#fff}
.library-hero h1{font:800 clamp(50px,7vw,94px)/.97 Manrope;letter-spacing:-.055em;margin:15px 0 30px}
.library-hero h1 em{font-style:normal;color:#f17a4c}
.library-hero>p:last-child{max-width:780px;color:#ced7d2;font-size:20px;line-height:1.65}
.library-grid{padding:90px 6vw;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.practice-card{min-height:570px;padding:38px;border:1px solid #cbc5b9;display:flex;flex-direction:column}
.practice-card>span{font-size:11px;font-weight:800;letter-spacing:.14em;color:var(--orange)}
.practice-card h2{font:750 40px/1.03 Manrope;margin:85px 0 20px}
.practice-card>p{color:var(--muted);line-height:1.65}
.practice-card>a{font-weight:800;margin-top:auto}
.practice-card.dark{background:var(--green);color:#fff}
.practice-card.dark>p{color:#cfdbd6}
.practice-card.orange{background:var(--orange);color:#fff}
.practice-card.orange>span{color:#fff}
.practice-card.orange>p{color:#fff3ed}
.practice-prompt{border-top:1px solid currentColor;margin:25px 0;padding-top:22px}
.practice-prompt b{font-size:11px;letter-spacing:.13em}
.practice-prompt p{line-height:1.55}
.seven-day{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;padding:100px 7vw;background:var(--cream)}
.seven-day-copy h2{font:750 clamp(44px,6vw,74px)/1 Manrope;letter-spacing:-.05em;margin:15px 0 25px}
.seven-day-copy>p:last-child{color:var(--muted);font-size:18px;line-height:1.7}
.scorecard{background:#fff;padding:38px;border:1px solid #d2ccbf}
.scorecard>label{display:block;font-size:13px;font-weight:800;margin-bottom:22px}
.scorecard input[type=text]{width:100%;border:0;border-bottom:1px solid #aaa49a;padding:12px 0;font:500 16px "DM Sans"}
.days{display:grid;grid-template-columns:repeat(7,1fr);gap:7px;margin:30px 0}
.days input{position:absolute;opacity:0}
.days span{display:block;border:1px solid #bbb4a8;padding:13px 5px;text-align:center;font-size:11px;font-weight:700;cursor:pointer}
.days input:checked+span{background:var(--green);color:#fff}
.scorecard textarea{min-height:120px;margin:10px 0 22px}
.library-next{text-align:center;padding:80px 6vw}
.library-next h2{font:750 clamp(36px,5vw,60px)/1.05 Manrope;margin:12px 0 25px}
.book-detail-hero{min-height:650px;padding:80px 6vw;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:50px;background:var(--green);color:#fff}
.book-detail-hero h1{font:800 clamp(58px,8vw,110px)/.92 Manrope;letter-spacing:-.06em;margin:15px 0 25px}
.book-detail-hero>div>p:last-child{max-width:620px;color:#d1ddd7;font-size:20px;line-height:1.6}
.book-detail-hero img{width:100%;max-height:500px;object-fit:cover;object-position:center}
.book-detail-intro{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:95px 7vw;align-items:start}
.book-detail-intro h2,.book-sample h2,.book-actions h2{font:750 clamp(36px,5vw,62px)/1.05 Manrope;letter-spacing:-.045em;margin:12px 0 20px}
.book-detail-intro>p{color:var(--muted);font-size:20px;line-height:1.75}
.book-sample{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:95px 7vw;background:var(--cream);align-items:center}
.book-sample blockquote{font:700 clamp(34px,4.5vw,60px)/1.15 Manrope;letter-spacing:-.04em;margin:0;border-left:7px solid var(--orange);padding-left:32px}
.book-sample ul{padding:0;list-style:none}
.book-sample li{border-top:1px solid #bbb4a8;padding:18px 0;font-size:17px}
.book-actions{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#cfc8bb}
.book-actions>div{background:#fbfaf6;padding:85px 7vw}
.book-actions>div:last-child{background:var(--orange);color:#fff}
.book-actions>div:last-child .eyebrow{color:#fff}
.book-actions p{line-height:1.65}
.button-link{display:inline-block;padding:15px 20px;background:var(--green);color:#fff;font-weight:800;margin-top:10px}
.book-actions>div:last-child .button-link{background:#fff;color:var(--ink)}
.text-link{display:block;margin-top:22px;font-weight:800}
.activity{max-width:980px;margin:85px auto 120px;padding:0 30px}
.progress{height:5px;background:#e5dfd4;margin-bottom:50px}
.progress i{display:block;height:100%;width:25%;background:var(--orange);transition:.25s}
.step{display:none;border:0;padding:0;margin:0}
.step.active{display:block}
.step legend{font:750 clamp(32px,4vw,50px)/1.1 Manrope;letter-spacing:-.04em;margin-bottom:18px;max-width:820px}
.hint{color:var(--muted);font-size:17px}
.chips{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:35px 0}
.chips input{position:absolute;opacity:0}
.chips span{display:block;border:1px solid #c9c3b7;padding:17px;text-align:center;font-weight:700;cursor:pointer}
.chips input:checked+span{background:var(--green);border-color:var(--green);color:#fff}
.choice-list{display:grid;gap:12px;margin:35px 0}
.choice-list label{border:1px solid #cbc5b9;padding:20px;font-size:17px;cursor:pointer}
.choice-list label:has(input:checked){border-color:var(--orange);background:#fff5ef}
.choice-list input{margin-right:12px}
textarea{display:block;width:100%;min-height:170px;border:1px solid #bdb7ab;background:#fff;padding:18px;font:500 17px/1.6 "DM Sans";margin:30px 0;resize:vertical}
.step button,.result button{border:0;padding:16px 24px;font-weight:800;cursor:pointer}
.next,.finish{background:var(--orange);color:#fff}
.prev{background:transparent!important;border:1px solid #aaa49a!important}
.step-actions{display:flex;gap:12px}
.result{display:none}
.result.active{display:block}
.result h2{font:750 clamp(36px,5vw,62px)/1.05 Manrope;letter-spacing:-.04em}
.result-card{margin:35px 0;padding:35px;background:var(--cream);border-left:6px solid var(--orange);font-size:18px;line-height:1.7}
.result-card strong{display:block;color:var(--orange);font-size:11px;letter-spacing:.13em;margin-top:20px}
.result-card strong:first-child{margin-top:0}
.print{background:var(--green);color:#fff}
.book-link{display:inline-block;margin-left:18px;font-weight:800;color:var(--orange)}
footer{padding:35px 5vw;display:flex;justify-content:space-between;align-items:center;border-top:1px solid #dcd8ce;font-size:13px}
@media(max-width:800px){nav a:not(.nav-cta){display:none}
.path-grid,.library-grid{grid-template-columns:1fr}
.path{min-height:330px}
.practice-card{min-height:440px}
.practice-card h2{margin-top:55px}
.chips{grid-template-columns:1fr 1fr}
.activity{margin-top:60px}
.library-invite{align-items:start;flex-direction:column}
.seven-day{grid-template-columns:1fr}
.days{grid-template-columns:repeat(4,1fr)}
.book-detail-hero,.book-detail-intro,.book-sample,.book-actions{grid-template-columns:1fr}
.book-detail-hero{padding-top:65px}
.book-detail-hero img{max-height:360px}
footer{gap:18px;flex-wrap:wrap}
}
@media(max-width:520px){.site-header{height:72px}
.hub-hero,.activity-hero{padding:75px 7vw}
.hub-hero h1,.activity-hero h1{font-size:48px}
.path-grid{padding:60px 7vw}
.chips{grid-template-columns:1fr}
.activity{padding:0 20px}
.book-link{display:block;margin:20px 0 0}
footer{display:block;text-align:center}
footer>*{display:block;margin:13px}
}

.member-save{display:inline-block;margin:12px}.member-save button{border:0;background:#173c32;color:#fff;padding:13px 17px;font-weight:800;cursor:pointer}.member-invite{display:block;margin:18px 0;font-weight:800;color:#e85d27}
@media print{.site-header,.activity-hero,.library-hero,.library-grid,.library-next,.seven-day-copy,.progress,.print,.book-link,.member-save,.member-invite,footer{display:none}
.activity{margin:0;max-width:none}
.result-card{border:2px solid #222}
.result{display:block}
.seven-day{display:block;padding:0;background:#fff}
.scorecard{border:2px solid #222}
}
