@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Fraunces:opsz,wght@9..144,400;9..144,500;9..144,600&family=Manrope:wght@400;500;600;700&display=swap";:root{--ink:#17251f;--paper:#f6f2ea;--sage:#a9b8a1;--moss:#46594b;--coral:#ec765b;--coral-deep:#b8492e;--sun:#e8b85d;--line:#17251f33;--display:"Fraunces", Georgia, serif;--body:"Manrope", sans-serif;--mono:"DM Mono", monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--body);margin:0}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer;border:0}.shell{width:min(1180px,100% - 72px);margin-inline:auto}.nav{border-bottom:1px solid var(--line);z-index:4;justify-content:flex-end;align-items:center;min-height:94px;display:flex;position:relative}.wordmark{font:600 1.08rem var(--body);letter-spacing:.13em}.wordmark span:first-child,.wordmark-dot{color:var(--coral)}.nav-links{align-items:center;gap:34px;font-size:.78rem;font-weight:600;display:flex}.nav-links a:not(.nav-cta){opacity:.7;transition:opacity .2s}.nav-links a:hover{opacity:1}.nav-cta{background:var(--ink);color:var(--paper);border-radius:2px;align-items:center;gap:8px;padding:14px 18px;font-size:.76rem;font-weight:700;transition:background .2s,transform .2s;display:flex}.nav-cta:hover{background:var(--moss);transform:translateY(-1px)}.menu-button{color:var(--ink);background:0 0;border-radius:2px;margin:-10px;padding:10px;transition:background .2s;display:none}.menu-button:hover{background:#17251f0f}.hero{grid-template-columns:minmax(0,.9fr) minmax(360px,1.1fr);align-items:center;gap:9%;min-height:640px;padding-block:72px 90px;display:grid;position:relative}.eyebrow{color:var(--moss);font:500 .67rem var(--mono);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:10px;margin:0 0 24px;display:flex}.eyebrow-line{background:currentColor;width:25px;height:1px;display:inline-block}.hero h1,h2{font:500 clamp(3.7rem, 7vw, 6.8rem)/.88 var(--display);letter-spacing:-.045em;margin:0}h2 em,.hero h1 em{color:var(--coral-deep);font-weight:400}.purpose-copy h2 em{color:var(--moss)}.hero-intro{color:#445047;max-width:390px;margin:32px 0 27px;font-size:.99rem;line-height:1.75}.button{border-radius:2px;justify-content:center;align-items:center;gap:12px;min-height:50px;padding:0 21px;font-size:.75rem;font-weight:700;display:inline-flex}.button-dark{background:var(--ink);color:var(--paper);transition:transform .2s,background .2s}.button-dark:hover{background:var(--moss);transform:translateY(-2px)}.microcopy{font:.66rem var(--mono);color:var(--moss);align-items:center;gap:7px;margin-top:29px;display:flex}.hero-image{background:url(/images/hero-group.jpg) 50% 40%/cover;height:510px;position:relative}.hero-image:after{content:"";background:linear-gradient(145deg,#11241b1f,#0000 55%);position:absolute;inset:0}.image-note{z-index:1;background:var(--sun);text-align:center;width:144px;height:144px;font:.8rem/1.2 var(--mono);border-radius:50%;place-content:center;display:grid;position:absolute;bottom:48px;right:-30px;transform:rotate(8deg)}.image-note strong{font:500 1.15rem var(--display)}.image-caption{z-index:1;color:#fff;font:.61rem var(--mono);text-transform:uppercase;letter-spacing:.08em;gap:16px;display:flex;position:absolute;bottom:18px;left:20px}.hero-side-note{writing-mode:vertical-rl;text-transform:uppercase;font:.58rem var(--mono);letter-spacing:.15em;color:var(--moss);position:absolute;top:132px;right:-38px}.marquee{background:var(--coral);color:var(--ink);font:500 .72rem var(--mono);letter-spacing:.13em;white-space:nowrap;padding:14px 0;overflow:hidden}.marquee div{width:max-content;animation:22s linear infinite drift}.marquee span{margin:0 22px}.section{padding-block:135px}.section-heading{justify-content:space-between;align-items:end;gap:50px;margin-bottom:62px;display:flex}.section-heading h2{font-size:clamp(3.2rem,6vw,5.5rem)}.section-lead{color:#5b665e;max-width:290px;margin:0 4% 5px 0;font-size:.87rem;line-height:1.7}.session-list{border-top:1px solid var(--line)}.session-card{border-bottom:1px solid var(--line);grid-template-columns:100px 1fr 130px 150px;align-items:center;gap:25px;min-height:125px;transition:background .2s,padding .2s;display:grid}.session-card:hover,.session-card.is-selected{background:#a9b8a133;padding-inline:18px}.date-block{color:var(--moss);font:.6rem var(--mono);align-items:baseline;gap:6px;display:flex}.date-block strong{font:500 2.5rem var(--display);color:var(--ink)}.session-info h3{font:500 1.35rem var(--display);margin:0 0 9px}.session-info p{color:#68736a;font:.68rem var(--mono);align-items:center;gap:6px;margin:0 16px 0 0;display:inline-flex}.session-status{justify-items:end;gap:8px;display:grid}.session-status span{font:.61rem var(--mono);color:var(--coral-deep)}.session-status strong{font:500 1.55rem var(--display)}.text-button,.inline-link{background:0 0;justify-self:end;align-items:center;gap:7px;font-size:.74rem;font-weight:700;transition:color .2s;display:inline-flex}.text-button{border-radius:2px;margin:-14px -6px;padding:14px 6px}.text-button:hover{color:var(--coral-deep)}.text-button:disabled{opacity:.4;cursor:default}.text-button:disabled:hover{color:inherit}.inline-link:hover{color:var(--ink);text-decoration:underline}.session-footnote{color:var(--moss);font:.65rem var(--mono);align-items:center;gap:9px;margin-top:26px;display:flex}.session-footnote .body-link{color:var(--coral-deep);text-underline-offset:3px;font-size:.85rem;font-weight:700;text-decoration:underline}.purpose{background:var(--sage);grid-template-columns:1fr 1fr;min-height:700px;padding-block:0;display:grid}.purpose-image{color:#fff;min-height:640px;font:500 clamp(2.4rem, 5vw, 4.6rem)/.9 var(--display);letter-spacing:-.04em;background:url(/images/purpose-group.jpg) 50% 65%/cover;align-items:end;padding:0 7% 9%;display:flex}.purpose-copy{max-width:650px;padding:135px max(7vw,60px) 90px}.purpose-copy h2{font-size:clamp(3.2rem,6vw,5.5rem)}.purpose-copy>p:not(.eyebrow){color:#415146;max-width:440px;margin:62px 0 47px;font-size:.9rem;line-height:1.8}.impact-row{border-top:1px solid #17251f4d;gap:28px;padding-top:20px;display:flex}.impact-row div{gap:8px;display:grid}.impact-row strong{color:var(--ink);font:.63rem var(--mono)}.impact-row span{font:.69rem var(--mono)}.inline-link{border-bottom:1px solid var(--ink);margin-top:42px;padding-bottom:7px}.detail-grid{grid-template-columns:repeat(4,1fr);gap:18px;display:grid}.detail-item{background:#a9b8a12e;border-radius:3px;padding:22px 18px 20px;position:relative;overflow:hidden}.detail-item .detail-number{font:500 2.6rem var(--display);color:#17251f14;letter-spacing:0;line-height:1;position:absolute;top:6px;right:14px}.detail-item h3{font:500 1.08rem var(--display);max-width:90%;margin:0 0 10px;position:relative}.detail-item p{color:#4d574f;max-width:100%;margin:0;font-size:.74rem;line-height:1.6;position:relative}.footer{border-top:1px solid var(--line);justify-content:flex-end;padding-block:48px 65px;display:flex}.footer-note{text-align:right;font:.65rem/1.6 var(--mono);color:var(--moss)}.modal-backdrop{z-index:10;background:#17251f94;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.booking-panel{background:var(--paper);width:min(100%,530px);max-height:calc(100vh - 40px);padding:52px 54px;position:relative;overflow:auto;box-shadow:0 24px 60px #17251f33}.close-button{color:var(--moss);background:0 0;border-radius:2px;padding:12px;transition:background .2s,color .2s;position:absolute;top:16px;right:16px}.close-button:hover{color:var(--ink);background:#17251f0f}.booking-header h2,.success-state h2{font-size:3.6rem}.booking-summary{border-block:1px solid var(--line);font:.68rem/1.4 var(--mono);gap:8px;margin:28px 0;padding:18px 0;display:grid}.booking-summary strong{font:500 1.35rem var(--display)}.booking-summary span{color:#68736a}form{gap:18px;display:grid}label{font:.66rem var(--mono);color:var(--moss);gap:8px;display:grid}input:not([type=checkbox]){border:1px solid var(--line);min-height:48px;color:var(--ink);background:0 0;outline:none;padding:0 13px}input:focus{border-color:var(--coral-deep);box-shadow:0 0 0 2px #ec765b33}.checkbox-label{grid-template-columns:auto 1fr;align-items:start;gap:9px;line-height:1.45;display:flex}.checkbox-label input{accent-color:var(--coral-deep);margin-top:2px}.form-submit{margin-top:4px}.form-note{color:#69746b;font:.61rem/1.5 var(--mono);margin:-3px 0 0}.success-state{flex-direction:column;justify-content:center;min-height:390px;display:flex}.success-icon{background:var(--sun);border-radius:50%;place-items:center;width:55px;height:55px;margin-bottom:25px;display:grid}.success-state h2{margin-bottom:24px}.success-state>p:not(.eyebrow){color:#5b665e;max-width:350px;margin-bottom:28px;font-size:.85rem;line-height:1.7}.reveal{animation:.7s both rise}.reveal-delay{animation-delay:.15s}@keyframes rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes drift{to{transform:translate(-12.5%)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=760px){.shell{width:min(100% - 40px,560px)}.nav{min-height:76px}.menu-button{display:block}.nav-links{background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:20px;padding:20px;display:none;position:absolute;top:76px;left:0;right:0}.nav-links.is-open{display:flex}.nav-cta{justify-content:center}.hero{flex-direction:column;align-items:stretch;gap:42px;padding-block:65px 80px;display:flex}.hero h1{font-size:4.3rem}.hero-image{height:430px;margin-right:15px}.hero-side-note{display:none}.image-note{width:125px;height:125px;bottom:35px;right:-15px}.section{padding-block:90px}.section-heading{margin-bottom:42px;display:block}.section-lead{margin-top:30px}.session-card{grid-template-columns:72px 1fr;gap:6px 14px;padding-block:20px}.session-card:hover,.session-card.is-selected{padding-inline:0}.date-block{grid-row:1/3;align-self:center;gap:1px;display:grid}.date-block strong{font-size:2.1rem}.session-info{grid-column:2}.session-info h3{font-size:1.18rem}.session-info p{margin:5px 0 0;font-size:.59rem;display:flex}.session-status{display:none}.text-button{grid-column:2;justify-self:start;margin-top:4px;font-size:.68rem}.text-button svg{width:16px;height:16px}.purpose{flex-direction:column;display:flex}.purpose-image{min-height:430px;padding:0 40px 45px}.purpose-copy{padding:78px 20px 85px}.impact-row{gap:14px}.impact-row span{font-size:.59rem}.detail-grid{grid-template-columns:1fr;gap:16px}.detail-item{padding:26px 24px}.footer{padding-bottom:45px}.booking-panel{padding:48px 25px 30px}.booking-header h2,.success-state h2{font-size:3.25rem}}.choice-panel h2{font-size:3.6rem}.choice-intro{color:#5b665e;max-width:340px;margin:24px 0 28px;font-size:.86rem;line-height:1.7}.choice-actions{gap:10px;display:grid}.choice-button{width:100%;min-height:44px;color:var(--ink);text-align:left;background:#a9b8a140;border:1px solid #0000;justify-content:space-between;align-items:center;gap:20px;padding:17px 18px;transition:border-color .2s,background .2s;display:flex}.choice-button:hover{border-color:var(--coral-deep);background:#a9b8a166}.choice-button:disabled{opacity:.6;cursor:wait}.choice-button span{gap:6px;display:grid}.choice-button strong{font:500 1.2rem var(--display)}.choice-button small{color:#68736a;font:.61rem var(--mono)}.form-error{color:#a74332;font:.64rem/1.5 var(--mono);margin:16px 0 0}.button:disabled{cursor:wait;opacity:.65}@media (width<=760px){.choice-panel h2{font-size:3.25rem}}
