:root{--ink:#183f35;--text:#344b43;--cream:#f8f6f0;--sage:#e8ede4;--line:#d8dfd4;--accent:#ab4d33;--white:#fff;--radius:20px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--cream);color:var(--text);font:17px/1.7 'Segoe UI',Arial,sans-serif}h1,h2,h3{color:var(--ink);font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.12;margin:0 0 24px}h1{font-size:clamp(42px,4.4vw,68px);letter-spacing:-2px}h2{font-size:clamp(32px,3vw,46px);letter-spacing:-1.2px}h3{font-size:29px}h1 em{font-weight:400;color:#687e67}p{margin:0 0 22px}a{color:inherit;text-underline-offset:5px}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{touch-action:manipulation}:focus-visible{outline:3px solid #c67742;outline-offset:5px}img{display:block;max-width:100%;object-fit:cover}figure{margin:0}.wrap{width:min(1240px,calc(100% - 96px));margin-inline:auto}section.wrap,.sage,.strip{margin-bottom:90px}.site-header{position:sticky;top:0;z-index:20;background:rgba(248,246,240,.98);border-bottom:1px solid var(--line)}.header-inner{min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:26px}.brand{text-decoration:none;display:flex;flex-direction:column;line-height:1.2;flex-shrink:0}.brand strong{font:30px Georgia,serif;color:var(--ink)}.brand small{font-size:9px;letter-spacing:2.1px;margin-top:8px}.nav{display:flex;align-items:center;gap:21px;font-size:14px}.nav a{text-decoration:none}.nav a[aria-current=page]{text-decoration:underline}.nav .button{font-size:13px;padding:12px 17px}.button{display:inline-flex;gap:24px;align-items:center;justify-content:space-between;padding:16px 23px;min-height:52px;border-radius:6px;text-decoration:none;font-size:15px;font-weight:600;border:1px solid transparent;cursor:pointer;line-height:1.5}.primary{background:var(--accent);color:white}.outline{border-color:#9cae9d;color:var(--ink);background:transparent}.light{background:var(--cream);color:var(--ink)}.button:hover{filter:brightness(.95);transform:translateY(-1px)}.text-link{display:inline-block;font-size:15px;font-weight:600;text-decoration:none}.hero .text-link{display:block;margin-top:23px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;line-height:1.5;margin-bottom:22px}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:66px;padding-top:65px;align-items:center}.hero h1{font-size:clamp(42px,4.2vw,64px)}.lead{font-size:20px;line-height:1.65;max-width:760px}.hero .lead{font-size:18px}.hero-portrait{position:relative;height:570px;border-radius:190px 190px 14px 14px;overflow:hidden;background:var(--sage)}.hero-portrait img{width:100%;height:100%;object-position:51% center}.hero-portrait figcaption{position:absolute;bottom:22px;left:22px;right:22px;background:rgba(248,246,240,.94);padding:20px 23px;border-radius:8px;font-size:13px}.hero-portrait figcaption span{display:block;font-size:12px;font-weight:bold;letter-spacing:2px}.micro{font-size:13px;line-height:1.6;color:#5a6b60;margin-top:22px}.strip{background:var(--sage);padding:24px 0}.strip-inner{display:flex;justify-content:space-around;gap:20px;font-size:14px}.strip-inner span:before{content:'✓';margin-right:12px}.split{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start}.large{font-size:23px}.clean-list{list-style:none;padding:0}.clean-list li{padding:17px 0 17px 26px;border-bottom:1px solid var(--line);position:relative}.clean-list li:before{content:'↗';position:absolute;left:0;color:var(--accent)}.sage{background:var(--sage);padding:70px 0}.steps{list-style:none;padding:0;counter-reset:step;margin:0}.steps li{counter-increment:step;position:relative;padding:17px 0 22px 55px;border-bottom:1px solid #ccd5c9}.steps li:before{content:'0' counter(step);position:absolute;left:0;font:20px Georgia;color:#8b9c87}.steps b,.steps span{display:block}.steps span{font-size:15px;margin-top:6px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:20px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{border:1px solid var(--line);border-radius:var(--radius);padding:34px;background:rgba(255,255,255,.25)}.card p{font-size:16px}.card .number{font:22px Georgia;color:#92a08a;display:block;margin-bottom:36px}.card h3{font-size:29px}.card-sub{font-weight:600}.programs .card{display:flex;flex-direction:column}.programs .button{margin-top:auto;font-size:14px;padding:14px}.dark{background:var(--ink);color:#e5ede3}.dark h3,.dark .eyebrow{color:var(--cream)}.about-teaser{padding:70px;text-align:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.about-teaser h2{font-size:50px}.note{padding:28px 34px;border-left:3px solid #9daa91;background:var(--sage)}.note p{margin:8px 0 0}.faq details{border-bottom:1px solid var(--line);padding:23px 0}.faq summary{list-style:none;font-size:19px;font-weight:600;cursor:pointer;display:flex;justify-content:space-between;gap:30px}.faq summary::-webkit-details-marker{display:none}.faq p{max-width:900px;margin:20px 35px 0 0}.faq details[open] summary span{transform:rotate(45deg)}.cta{background:var(--ink);color:var(--cream);border-radius:var(--radius);padding:65px;text-align:center}.cta h2{color:var(--cream);font-size:46px}.cta p{max-width:650px;margin-inline:auto}.collaborator{display:flex;align-items:center;justify-content:space-between;gap:30px}.collaborator h3{font-size:28px}.collaborator p{margin-bottom:12px}.site-footer{background:#e9ece3;padding:50px 0 25px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:70px}.footer-grid p{max-width:400px;font-size:14px;margin-top:22px}.footer-links{display:flex;flex-direction:column;gap:12px;font-size:14px}.footer-links a{text-decoration:none}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #cbd3c5;padding-top:20px;margin-top:35px;font-size:12px;gap:30px}.page-intro{padding-top:65px;max-width:1240px}.page-intro h1{max-width:950px}.prose{max-width:1000px}.prose>p{max-width:850px}.article{max-width:780px}.article h2{font-size:33px;margin-top:45px}.article-list{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.article-card{text-decoration:none;padding:35px 30px;background:var(--sage);border-radius:var(--radius);border:1px solid var(--line)}.article-card h2{font-size:31px;margin-top:28px}.article-card p{font-size:16px}.article-card:hover{background:#dfe7d9}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:15px;min-width:630px}th,td{padding:22px 20px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}thead{background:var(--sage)}th{font-weight:600}.day-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:24px}.day-grid span{display:block;margin-bottom:22px;color:#8b9b83}.day-grid h3{font-size:25px}.day-grid p{font-size:15px}.form-card{padding:36px;border:1px solid var(--line);border-radius:var(--radius);background:white}.form-card h2{font-size:34px}label{display:block;font-size:14px;font-weight:600;margin:18px 0 7px}input,select,textarea{display:block;width:100%;border:1px solid #afbbad;border-radius:6px;padding:13px;background:#fcfcfa;color:var(--ink)}textarea{min-height:145px;resize:vertical}input[type=checkbox]{width:20px;min-width:20px;height:20px;margin:4px 0}.check-label{display:flex;gap:12px;font-weight:400}.form-card .button{width:100%;margin-top:20px}.form-message{padding:16px;background:var(--sage);border-radius:6px;margin-bottom:20px}.error{border-left:4px solid #b6402c}.success{border-left:4px solid #4d7658}.hp{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.contact-detail{border-top:1px solid var(--line);padding-top:25px;margin-top:35px}.contact-detail small{letter-spacing:2px;font-size:10px;font-weight:700}.contact-detail p{font-size:23px}.two{grid-template-columns:1fr 1fr}.narrow{max-width:620px}.about-photo{height:500px;border-radius:var(--radius);overflow:hidden}.about-photo img{height:100%;width:100%;object-position:50%}.menu-toggle{display:none;border:1px solid var(--line);background:transparent;border-radius:5px;padding:10px 14px}.skip-link{position:absolute;top:-100px;left:10px;z-index:100;background:white;padding:12px}.skip-link:focus{top:10px}.preview-note{background:#fff0d4;color:#5c4827;text-align:center;font-size:12px;padding:8px 20px}.lesson{padding:32px;border:1px solid var(--line);border-radius:15px;margin-bottom:20px;background:white}.lesson h2{font-size:32px}.video{aspect-ratio:16/9;width:100%;border:0;border-radius:12px;margin:20px 0}.badge{display:inline-block;padding:5px 12px;background:var(--sage);border-radius:30px;font-size:12px;margin-bottom:15px}button:disabled{opacity:.5;cursor:not-allowed}
@media(max-width:1100px){.wrap{width:calc(100% - 56px)}.nav{gap:12px;font-size:12px}.nav .button{font-size:12px;padding:10px}.hero{gap:35px}.split{gap:45px}.card{padding:25px}.hero-portrait{height:530px}.day-grid{gap:15px}}
@media(max-width:820px){.header-inner{min-height:82px}.menu-toggle{display:block}.nav{display:none;position:absolute;top:82px;left:0;right:0;background:var(--cream);padding:25px;box-shadow:0 14px 20px #183f3515}.nav.open{display:flex;flex-direction:column;align-items:stretch;gap:20px;font-size:16px}.hero,.split{grid-template-columns:1fr;gap:35px}.hero{padding-top:40px}.hero-portrait{height:420px;border-radius:120px 120px 12px 12px}.hero h1{max-width:600px}.hero-portrait img{object-position:center 40%}.cards,.article-list{grid-template-columns:1fr}.programs .card{min-height:280px}.day-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr;gap:35px}.footer-grid>div:first-child{grid-column:1/-1}.strip-inner{flex-wrap:wrap;justify-content:flex-start}.section-heading{display:block}.collaborator{align-items:start;flex-direction:column}.about-teaser{padding:45px 15px}.about-teaser h2{font-size:37px}.about-photo{height:380px}section.wrap,.sage,.strip{margin-bottom:55px}.cta{padding:42px 24px}.cta h2{font-size:35px}.page-intro{padding-top:40px}.form-card{padding:25px}.two{grid-template-columns:1fr}.page-intro h1{letter-spacing:-1px}.footer-bottom{flex-direction:column;gap:10px}}
@media(max-width:480px){.wrap{width:calc(100% - 36px)}h1{font-size:42px}.hero h1{font-size:43px}.brand strong{font-size:26px}.brand small{font-size:8px}.hero-portrait{height:360px}.day-grid{grid-template-columns:1fr}.day-grid article{border-bottom:1px solid var(--line);padding-bottom:12px}.day-grid span{margin-bottom:10px}.button{font-size:14px}.strip-inner{font-size:13px}.form-card{padding:22px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;transform:none!important}}
