.programs-page{--pr-forest:#102a1e;--pr-green:#183a2b;--pr-paper:#f5f1e7;--pr-gold:#c8a258;color:#1d3025;background:#f5f1e7 radial-gradient(#263a2a0d .7px,#0000 .8px) 0 0/10px 10px;overflow:hidden}.programs-hero{isolation:isolate;color:#fffdf3;background:#102b1e;align-items:center;min-height:clamp(560px,53vw,700px);display:flex;position:relative;overflow:hidden}.program-panels{z-index:-2;width:100%;height:100%;position:absolute;inset:0}.programs-drum{z-index:-1;pointer-events:none;position:absolute;inset:0}.programs-drum svg{filter:drop-shadow(0 15px 20px #04130b77);width:100%;height:100%}.programs-hero-copy{z-index:1;width:min(1220px,100% - 52px);margin:auto;padding:100px 0 116px}.programs-eyebrow{color:#edd493;letter-spacing:.22em;text-transform:uppercase;margin:0 0 17px;font-size:11px;font-weight:700}.programs-hero h1{letter-spacing:-.075em;color:#fffaf0;max-width:57vw;margin:0;font:800 clamp(62px,8.3vw,118px)/.88 Bricolage Grotesque,sans-serif}.programs-hero h1 em{color:#0000;-webkit-text-stroke:1px #f6e9c7;margin-top:8px;font-style:normal;font-weight:400;display:block}.programs-hero-aside{z-index:1;color:#f2dda2;width:200px;position:absolute;top:50%;right:max(5%,50% - 610px);transform:translateY(-45%)}.programs-hero-aside p{margin:0;font:400 19px/1.55 Instrument Sans,sans-serif}.programs-hero-aside a{color:#19392b;background:#f5e7c7;border-radius:999px;align-items:center;gap:14px;margin-top:22px;padding:14px 17px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.programs-hero-aside svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:19px;height:19px}.programs-caption{white-space:nowrap;color:#eddfb7;letter-spacing:.16em;margin:0;font-size:10px;position:absolute;bottom:18px;left:50%;transform:translate(-50%)}.program-focus{background:linear-gradient(#f5f1e7,#e9eee6 100%);padding:90px max(26px,50% - 610px) 98px;scroll-margin-top:20px}.program-focus-heading{grid-template-columns:1fr .9fr;align-items:end;gap:55px;margin-bottom:40px;display:grid}.program-focus-heading .programs-eyebrow{color:#8a6a2e}.program-focus-heading h2,.programs-connection h2,.programs-invitation h2{color:#17392a;letter-spacing:-.06em;margin:0;font:650 clamp(40px,5.4vw,70px)/.98 Bricolage Grotesque,sans-serif}.program-focus-heading>div:last-child p{color:#4f5d53;margin:0;font-size:16px;line-height:1.7}.program-focus-heading small{color:#697468;margin-top:12px;font-size:11px;line-height:1.55;display:block}.program-service-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:14px;display:grid}.program-service-card{background:linear-gradient(140deg,#fffdf8,#edf0e8);border:1px solid #c8a25883;border-radius:0 18px 18px;transition:border-color .2s,box-shadow .2s;overflow:hidden;box-shadow:0 10px 27px #1d30250c}.program-service-card.expanded{border-color:#a98949;grid-row:span 1;box-shadow:0 14px 32px #1d30251a}.program-service-card button{color:#17392a;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:38px 1fr 23px;align-items:center;gap:12px;width:100%;min-height:112px;padding:19px 20px;display:grid}.program-service-number{color:#9b7935;letter-spacing:.12em;align-self:start;font-size:10px;font-weight:700}.program-service-card button strong{letter-spacing:-.03em;font:650 23px/1.08 Bricolage Grotesque,sans-serif}.program-service-card button svg{fill:none;stroke:#765c2b;stroke-width:1.6px;stroke-linecap:round;width:20px;height:20px;transition:transform .2s}.program-service-card button:hover svg{transform:rotate(90deg)}.program-service-card button:focus-visible{outline-offset:-4px;outline:3px solid #bd9b54}.program-service-details{opacity:0;max-height:0;padding:0 20px;transition:max-height .38s,opacity .28s,padding .3s;overflow:hidden}.program-service-card.expanded .program-service-details{opacity:1;max-height:230px;padding:0 20px 22px}.program-service-details p{color:#566257;margin:0;font-size:13px;line-height:1.6}.program-service-details .program-service-tagline{color:#8a6a2e;margin-bottom:8px;font-weight:700}.programs-connection{text-align:center;background:#e2eadf;border-block:1px solid #c8a25855;padding:85px 24px}.programs-connection .programs-eyebrow{color:#8a6a2e}.programs-connection h2{font-size:clamp(36px,5vw,59px)}.programs-connection>p:not(.programs-eyebrow){color:#536158;max-width:650px;margin:18px auto 0;line-height:1.7}.programs-connection a{color:#274b35;text-underline-offset:5px;margin-top:23px;font-weight:700;display:inline-block}.programs-invitation{text-align:center;color:#fff8e9;background:#17392a;padding:73px 24px 80px}.programs-invitation .programs-eyebrow{color:#e6ce8f}.programs-invitation h2{color:#fff8e9;font-size:clamp(37px,5.2vw,62px)}.programs-invitation>p:not(.programs-eyebrow){color:#dce2d6;line-height:1.65}.programs-invitation>div{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:22px;display:flex}.programs-invitation a{color:#fff8e9;border:1px solid #e9d698;border-radius:999px;padding:13px 18px;font-size:13px;font-weight:700;text-decoration:none}.programs-invitation a:first-child{color:#183629;background:#f2e2b9}.programs-hero h1 .typed-heading,.programs-hero h1 .type-line,.programs-hero h1 .type-space,.programs-hero h1 .type-ink{font:inherit;letter-spacing:inherit;color:inherit;-webkit-text-stroke:0;white-space:normal;margin:0}.programs-hero h1 .typed-heading,.programs-hero h1 .type-line{display:block}.programs-hero h1 .type-line{position:relative}.programs-hero h1 .type-space{display:block}.programs-hero h1 .type-ink{white-space:pre;display:none;position:absolute;inset:0}.programs-hero h1 .is-typing .type-space{visibility:hidden}.programs-hero h1 .is-typing .type-ink,.programs-hero h1 .is-complete .type-ink{display:block}.programs-drum{transform:perspective(1100px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transform-origin:50% 65%;filter:brightness(var(--drum-light,1)) drop-shadow(var(--shadow-x,-7px) 10px 7px #271b1740);transition:transform .65s cubic-bezier(.2,.7,.2,1),filter .65s}.programs-connection{text-align:left;background:0 0;border:0;grid-template-columns:1fr 1fr;align-items:center;gap:65px;max-width:1280px;margin:0 auto 85px;padding:0 24px;display:grid}.programs-connection figure{margin:0}.programs-connection img{aspect-ratio:1.25;object-fit:cover;border-radius:26px 90px 26px 26px;width:100%;display:block}.programs-connection figcaption{color:#646955;margin:12px 0;font-size:12px}.programs-connection>div>p:not(.programs-eyebrow){color:#536158;max-width:650px;margin:18px 0 0;line-height:1.7}.programs-connection a{color:#253e30;border-bottom:1px solid #a38b57;align-items:center;gap:12px;margin-top:23px;padding-bottom:9px;font-weight:600;text-decoration:none;display:inline-flex}.programs-connection-arrow{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px;transition:transform .2s}.programs-connection a:hover .programs-connection-arrow{transform:translate(3px)}@media (max-width:850px){.programs-hero h1{max-width:66vw;font-size:clamp(55px,7.7vw,90px)}.programs-hero-aside{width:175px;right:4%}.program-focus-heading{gap:28px}.program-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:1000px){.programs-connection{gap:32px}}@media (max-width:620px){.programs-hero{min-height:610px}.programs-drum{display:none}.programs-hero-copy{width:calc(100% - 40px);padding:82px 0 145px}.programs-hero h1{max-width:100%;font-size:clamp(54px,12vw,78px)}.programs-hero-aside{width:calc(100% - 40px);top:auto;bottom:57px;right:20px;transform:none}.programs-hero-aside p{font-size:14px;line-height:1.4}.programs-hero-aside a{margin-top:12px;padding:11px 14px;font-size:12px}.programs-caption{letter-spacing:.1em;font-size:8px}.program-focus{padding:65px 20px 72px}.program-focus-heading{grid-template-columns:1fr;gap:16px;margin-bottom:27px}.program-focus-heading h2{font-size:42px}.program-focus-heading>div:last-child p{font-size:14px}.program-service-grid{grid-template-columns:1fr;gap:10px}.program-service-card button{min-height:85px;padding:15px}.program-service-card button strong{font-size:21px}.program-service-details{padding-inline:15px}.program-service-card.expanded .program-service-details{padding:0 15px 18px}.programs-connection{grid-template-columns:1fr;gap:20px;margin-bottom:45px;padding:0 20px}.programs-connection img{border-radius:22px 60px 22px 22px}.programs-connection h2{font-size:36px}.programs-invitation{padding:60px 20px}}@media (prefers-reduced-motion:reduce){.program-service-details,.program-service-card button svg{transition:none}.program-service-card button:hover svg{transform:none}}@media (min-width:621px){.programs-hero{aspect-ratio:2;background:0 0;width:min(1440px,93%);height:auto;min-height:0;margin:38px auto 0;display:block;overflow:visible;container-type:inline-size}.program-panels{filter:drop-shadow(0 8px 8px #3b281b30)}.programs-hero-copy{width:49%;margin:0;padding:0;position:absolute;top:16%;left:3.6%}.programs-hero h1{letter-spacing:-.055em;max-width:100%;margin:30px 0 0;font-size:8.6cqw;font-weight:800;line-height:.96}.programs-hero h1 em{letter-spacing:-.045em;-webkit-text-stroke:1.5px #f4e7cb;margin-top:9px;font-size:.83em;font-weight:500}.programs-drum{z-index:2;width:25.6%;height:91.5%;inset:8.5% auto auto 51%}.programs-drum svg{filter:drop-shadow(-7px 10px 7px #271b1740);display:block}.programs-hero-aside{width:16%;top:33%;right:2.6%;transform:none}.programs-hero-aside p{color:#f1dfb6;font-size:1.85cqw;line-height:1.33}.programs-hero-aside a{border:1px solid #fff4de;justify-content:space-between;width:100%;margin-top:18px;padding:15px 19px;box-shadow:0 5px 14px #061d1620}.programs-caption{white-space:normal;text-align:center;color:#1d3025;letter-spacing:.1em;justify-content:center;align-items:center;gap:20px;width:max-content;max-width:calc(100% - 32px);margin:34px auto 0;font-size:14px;display:flex;position:relative;bottom:auto;left:auto;transform:none}.programs-caption:before,.programs-caption:after{content:"";background:#b89966;flex:0 0 55px;width:55px;height:1px}.program-focus{background:0 0;max-width:1360px;margin:0 auto;padding:90px 20px 98px}.program-focus-heading{grid-template-columns:1fr 1fr;gap:70px;margin-bottom:48px}.program-focus-heading h2{letter-spacing:-.045em;font-size:clamp(32px,4vw,52px);line-height:1.1}}.program-service-includes{letter-spacing:.02em;font-weight:700;color:#293b2f!important;margin-top:15px!important;font-size:12px!important}.program-service-details ul{color:#293b2f;margin:7px 0 0;padding-left:19px;font-size:13px;line-height:1.65}.program-service-card.expanded .program-service-details{max-height:1400px}.program-service-details p{color:#35473b;font-size:15px;line-height:1.7}.program-service-details .program-service-tagline{color:#72551f;font-size:14px}.program-service-includes{color:#253b2d!important;margin-top:16px!important;font-size:13px!important}.program-service-details ul{color:#293b2f;font-size:14px;line-height:1.75}@media (max-width:620px){.program-service-details p,.program-service-details ul{font-size:14px;line-height:1.7}}@media (max-width:760px){.programs-hero{background:radial-gradient(at 82% 8%,#2d4c3866,#0000 48%),linear-gradient(145deg,#102b1e,#071c13 68%,#123122);border:1px solid #c8a258;border-radius:25px;align-items:flex-start;width:calc(100% - 24px);min-height:540px;margin:12px 12px 0;display:flex;box-shadow:inset 0 0 0 4px #ffffff08,0 12px 28px #1a291b18}.program-panels,.programs-drum{display:none}.programs-hero:after{content:"";z-index:0;pointer-events:none;border:1px solid #c8a25870;border-radius:19px;position:absolute;inset:7px}.programs-hero-copy{width:calc(100% - 40px);margin:0 auto;padding:48px 0 164px;position:relative;top:auto;left:auto}.programs-hero h1{overflow-wrap:normal;max-width:100%;font-size:clamp(40px,8.7vw,64px);line-height:.95}.programs-hero-aside{width:calc(100% - 40px);top:auto;bottom:27px;right:20px;transform:none}.programs-hero-aside a{width:auto;max-width:100%;margin-top:14px}.programs-caption{white-space:normal;text-align:center;color:#1d3025;letter-spacing:.08em;justify-content:center;align-items:center;gap:10px;width:max-content;max-width:calc(100% - 32px);margin:17px auto 0;font-size:11px;line-height:1.4;display:flex;position:relative;bottom:auto;left:auto;transform:none}.programs-caption:before,.programs-caption:after{content:"";background:#b89966;flex:0 0 24px;width:24px;height:1px}}.program-service-empty{color:#536158;text-align:center;background:#fffdf7;border:1px dashed #b9a77c;border-radius:14px;grid-column:1/-1;margin:0;padding:24px;line-height:1.6}
