
/* ===== per-page hero layouts ===== */
@keyframes morph{50%{border-radius:42% 58% 45% 55%/55% 42% 58% 45%}}
.hs2.pg-youth:not(.vF){background:linear-gradient(135deg,var(--sage-light),var(--lime))}
.hs2.pg-yoga-mobility:not(.vF){background:radial-gradient(circle at 78% 28%,rgba(213,231,161,.9),transparent 42%),linear-gradient(var(--sage-pale),var(--sage-light))}
.hs2.pg-community-events:not(.vF){background:linear-gradient(135deg,var(--lime),var(--sage-light))}
.hs2.pg-gallery:not(.vF){background:linear-gradient(120deg,var(--sage-pale),#fff)}
.hs2.pg-faq:not(.vF){background:linear-gradient(var(--sage-pale),var(--ivory));min-height:70svh}
.hs2.pg-run-club:not(.vF){background:linear-gradient(240deg,var(--ivory),var(--sage-light))}
.hs2.pg-programs:not(.vF){background:linear-gradient(var(--ivory),var(--sage-pale))}
.hs2.pg-about .frame{border-radius:50%!important}
.hs2.pg-kids-3-7 .frame{border-radius:58% 42% 51% 49%/46% 55% 45% 54%!important;animation:morph 12s ease-in-out infinite}
@media(min-width:901px){
.hs2.pg-programs:not(.vF){align-items:flex-start;padding-top:128px;padding-bottom:40px}
.hs2.pg-programs:not(.vF) .in{max-width:780px;margin:0 auto!important}.hs2.pg-programs:not(.vF) .sl>*{text-align:center!important;margin-inline:auto!important;justify-self:center}.hs2.pg-programs:not(.vF) .slides{justify-items:center}.hs2.pg-programs:not(.vF) .cta-row{justify-content:center}.hs2.pg-programs:not(.vF) .qt,.hs2.pg-programs:not(.vF) .tx{display:none}
.hs2.pg-programs:not(.vF)>.bgs{left:var(--pad);right:var(--pad);width:auto;top:auto;bottom:64px;height:50vh;border-radius:44px}.hs2.pg-programs:not(.vF):after{display:none}
.hs2.pg-kids-8-14:not(.vF)>.bgs{right:0;top:0;bottom:0;width:54vw;border-radius:0;box-shadow:none;clip-path:polygon(20% 0,100% 0,100% 100%,0 100%)}.hs2.pg-kids-8-14:not(.vF):after,.hs2.pg-kids-8-14:not(.vF) .badge2{display:none}.hs2.pg-kids-8-14:not(.vF) .in{max-width:42vw}
.hs2.pg-youth:not(.vF)>.bgs{width:min(46vw,580px);height:auto;aspect-ratio:1;top:50%;bottom:auto;transform:translateY(-50%)!important;border-radius:50%}
.hs2.pg-youth:not(.vF):after{width:calc(min(46vw,580px) + 64px);height:auto;aspect-ratio:1;top:50%;bottom:auto;transform:translateY(-50%);right:calc(var(--pad) - 32px);border:2px solid var(--forest);border-radius:50%;opacity:.22}.hs2.pg-youth:not(.vF) .in{max-width:min(620px,48vw)}
.hs2.pg-adult-fitness:not(.vF)>.bgs{z-index:0;inset:0;width:100%;border-radius:0;box-shadow:none}.hs2.pg-adult-fitness:not(.vF):before{display:block;content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(14,28,21,.92),rgba(14,28,21,.55) 55%,rgba(14,28,21,.1))}.hs2.pg-adult-fitness:not(.vF):after,.hs2.pg-adult-fitness:not(.vF) .badge2{display:none}.hs2.pg-adult-fitness:not(.vF) .ctl{bottom:70px}
.hs2.pg-yoga-mobility:not(.vF)>.bgs{border-radius:58% 42% 51% 49%/46% 55% 45% 54%;animation:morph 12s ease-in-out infinite}
.hs2.pg-yoga-mobility:not(.vF):after{border:0;background:var(--sage-light);opacity:.9;transform:rotate(7deg);border-radius:46% 54% 42% 58%/52% 44% 56% 48%;right:calc(var(--pad) - 30px);top:96px;bottom:60px}.hs2.pg-yoga-mobility:not(.vF) .in{max-width:min(600px,46vw)}
.hs2.pg-run-club:not(.vF){justify-content:flex-end}.hs2.pg-run-club:not(.vF)>.bgs{right:auto;left:var(--pad);border-radius:44px 220px 44px 220px}.hs2.pg-run-club:not(.vF):after{display:none}.hs2.pg-run-club:not(.vF) .in{max-width:min(600px,46vw)}.hs2.pg-run-club:not(.vF) .bar{left:auto;right:var(--pad)}.hs2.pg-run-club:not(.vF) .ctl{left:auto;right:var(--pad)}
.hs2.pg-treks-adventures:not(.vF){clip-path:polygon(0 0,100% 0,100% 88%,85% 96%,70% 87%,52% 98%,36% 88%,18% 97%,0 88%);padding-bottom:150px}.hs2.pg-treks-adventures:not(.vF)>.bgs{z-index:0;inset:0;width:100%;border-radius:0;box-shadow:none}.hs2.pg-treks-adventures:not(.vF):before{display:block;content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(0deg,rgba(14,28,21,.9),rgba(14,28,21,.15) 70%)}.hs2.pg-treks-adventures:not(.vF):after,.hs2.pg-treks-adventures:not(.vF) .badge2{display:none}.hs2.pg-treks-adventures:not(.vF){align-items:flex-end}.hs2.pg-treks-adventures:not(.vF) .ctl{bottom:96px}
.hs2.pg-community-events:not(.vF)>.bgs{right:calc(var(--pad) + 30px);width:min(38vw,500px);top:130px;bottom:110px;border:14px solid #fff;border-bottom-width:60px;border-radius:10px;transform:rotate(5deg)!important}
.hs2.pg-community-events:not(.vF):after{display:block;background:var(--sage);border:0;border-radius:10px;opacity:.9;width:min(38vw,500px);right:calc(var(--pad) + 80px);top:140px;bottom:120px;transform:rotate(-6deg)}.hs2.pg-community-events:not(.vF) .in{max-width:min(580px,46vw)}
.hs2.pg-retreats:not(.vF)>.bgs{z-index:0;left:22px;right:22px;width:auto;top:92px;bottom:22px;border-radius:48px;box-shadow:none}.hs2.pg-retreats:not(.vF):before{display:block;content:"";position:absolute;left:22px;right:22px;top:92px;bottom:22px;border-radius:48px;z-index:1;background:linear-gradient(0deg,rgba(14,28,21,.82),rgba(14,28,21,.55))}.hs2.pg-retreats:not(.vF):after,.hs2.pg-retreats:not(.vF) .badge2{display:none}
.hs2.pg-retreats:not(.vF) .in{margin:0 auto!important;max-width:760px;text-align:center}.hs2.pg-retreats:not(.vF) .sl>*{text-align:center!important;margin-inline:auto!important;justify-self:center}.hs2.pg-retreats:not(.vF) .slides{justify-items:center}.hs2.pg-retreats:not(.vF) .cta-row{justify-content:center}.hs2.pg-retreats:not(.vF) .qt{display:none}.hs2.pg-retreats:not(.vF) .ctl{left:50%;transform:translateX(-50%);bottom:56px;z-index:5}
.hs2.pg-gallery:not(.vF){min-height:74svh}.hs2.pg-gallery:not(.vF)>.bgs{width:min(54vw,720px);height:330px;top:50%;bottom:auto;transform:translateY(-50%)!important;border-radius:999px}.hs2.pg-gallery:not(.vF):after{width:calc(min(54vw,720px) + 36px);height:366px;top:50%;bottom:auto;transform:translateY(-50%);border-radius:999px}.hs2.pg-gallery:not(.vF) .in{max-width:min(520px,40vw)}
.hs2.pg-get-started:not(.vF)>.bgs{right:auto;left:calc(var(--pad) + 22px);width:min(40vw,540px);border-radius:44px;box-shadow:22px 22px 0 var(--sage-light),0 40px 80px -30px rgba(20,40,31,.5)}.hs2.pg-get-started:not(.vF):after{display:none}.hs2.pg-get-started:not(.vF){justify-content:flex-end}.hs2.pg-get-started:not(.vF) .in{max-width:min(560px,46vw)}.hs2.pg-get-started:not(.vF) .ctl{left:auto;right:var(--pad)}
.hs2.pg-corporate:not(.vF)>.bgs{left:0;right:auto;top:0;bottom:0;width:52vw;border-radius:0;box-shadow:none;clip-path:polygon(0 0,100% 0,84% 100%,0 100%)}.hs2.pg-corporate:not(.vF):after,.hs2.pg-corporate:not(.vF) .badge2{display:none}.hs2.pg-corporate:not(.vF){justify-content:flex-end}.hs2.pg-corporate:not(.vF) .in{max-width:40vw}.hs2.pg-corporate:not(.vF) .ctl{left:auto;right:var(--pad)}
.hs2.pg-faq:not(.vF){padding-top:290px;padding-bottom:70px}.hs2.pg-faq:not(.vF)>.bgs{left:50%;right:auto;top:112px;bottom:auto;width:150px;height:150px;border-radius:50%;transform:translateX(-50%)!important}.hs2.pg-faq:not(.vF):after{display:none}.hs2.pg-faq:not(.vF) .in{margin:0 auto!important;text-align:center;max-width:720px}.hs2.pg-faq:not(.vF) .sl>*{text-align:center!important;margin-inline:auto!important;justify-self:center}.hs2.pg-faq:not(.vF) .slides{justify-items:center}.hs2.pg-faq:not(.vF) .cta-row{justify-content:center}.hs2.pg-faq:not(.vF) .qt{display:none}.hs2.pg-faq:not(.vF) .ctl{left:50%;transform:translateX(-50%);bottom:24px}
}
.hs2.pg-kids-8-14:not(.vF){background:var(--forest-deep);color:#fff}.hs2.pg-kids-8-14:not(.vF) .t,.hs2.pg-kids-8-14:not(.vF) .t em{color:#fff}.hs2.pg-kids-8-14:not(.vF) .t em{color:var(--lime)}.hs2.pg-kids-8-14:not(.vF) .tx{color:#e3eddc}.hs2.pg-kids-8-14:not(.vF) .label{background:rgba(213,231,161,.16);color:var(--lime)}.hs2.pg-kids-8-14:not(.vF) .qt,.hs2.pg-kids-8-14:not(.vF) .qt cite{color:#fff;border-color:var(--lime)}.hs2.pg-kids-8-14:not(.vF) .btn.sage{background:var(--lime);color:var(--forest-deep)}.hs2.pg-kids-8-14:not(.vF) .btn.ghost{color:#fff;border-color:#fff}.hs2.pg-kids-8-14:not(.vF) .btn.ghost:hover{background:#fff;color:var(--forest)}.hs2.pg-kids-8-14:not(.vF) .crumbs,.hs2.pg-kids-8-14:not(.vF) .crumbs a{color:#cfe0c6}.hs2.pg-kids-8-14:not(.vF) .ctl{color:#fff}.hs2.pg-kids-8-14:not(.vF) .ctl button.ar{background:transparent;border-color:#fff;color:#fff}.hs2.pg-kids-8-14:not(.vF) .dots button{background:rgba(255,255,255,.3)}.hs2.pg-kids-8-14:not(.vF) .bar{background:rgba(255,255,255,.12);color:#fff;backdrop-filter:blur(10px)}.hs2.pg-adult-fitness:not(.vF){background:var(--forest-deep);color:#fff}.hs2.pg-adult-fitness:not(.vF) .t,.hs2.pg-adult-fitness:not(.vF) .t em{color:#fff}.hs2.pg-adult-fitness:not(.vF) .t em{color:var(--lime)}.hs2.pg-adult-fitness:not(.vF) .tx{color:#e3eddc}.hs2.pg-adult-fitness:not(.vF) .label{background:rgba(213,231,161,.16);color:var(--lime)}.hs2.pg-adult-fitness:not(.vF) .qt,.hs2.pg-adult-fitness:not(.vF) .qt cite{color:#fff;border-color:var(--lime)}.hs2.pg-adult-fitness:not(.vF) .btn.sage{background:var(--lime);color:var(--forest-deep)}.hs2.pg-adult-fitness:not(.vF) .btn.ghost{color:#fff;border-color:#fff}.hs2.pg-adult-fitness:not(.vF) .btn.ghost:hover{background:#fff;color:var(--forest)}.hs2.pg-adult-fitness:not(.vF) .crumbs,.hs2.pg-adult-fitness:not(.vF) .crumbs a{color:#cfe0c6}.hs2.pg-adult-fitness:not(.vF) .ctl{color:#fff}.hs2.pg-adult-fitness:not(.vF) .ctl button.ar{background:transparent;border-color:#fff;color:#fff}.hs2.pg-adult-fitness:not(.vF) .dots button{background:rgba(255,255,255,.3)}.hs2.pg-adult-fitness:not(.vF) .bar{background:rgba(255,255,255,.12);color:#fff;backdrop-filter:blur(10px)}.hs2.pg-treks-adventures:not(.vF){background:var(--forest-deep);color:#fff}.hs2.pg-treks-adventures:not(.vF) .t,.hs2.pg-treks-adventures:not(.vF) .t em{color:#fff}.hs2.pg-treks-adventures:not(.vF) .t em{color:var(--lime)}.hs2.pg-treks-adventures:not(.vF) .tx{color:#e3eddc}.hs2.pg-treks-adventures:not(.vF) .label{background:rgba(213,231,161,.16);color:var(--lime)}.hs2.pg-treks-adventures:not(.vF) .qt,.hs2.pg-treks-adventures:not(.vF) .qt cite{color:#fff;border-color:var(--lime)}.hs2.pg-treks-adventures:not(.vF) .btn.sage{background:var(--lime);color:var(--forest-deep)}.hs2.pg-treks-adventures:not(.vF) .btn.ghost{color:#fff;border-color:#fff}.hs2.pg-treks-adventures:not(.vF) .btn.ghost:hover{background:#fff;color:var(--forest)}.hs2.pg-treks-adventures:not(.vF) .crumbs,.hs2.pg-treks-adventures:not(.vF) .crumbs a{color:#cfe0c6}.hs2.pg-treks-adventures:not(.vF) .ctl{color:#fff}.hs2.pg-treks-adventures:not(.vF) .ctl button.ar{background:transparent;border-color:#fff;color:#fff}.hs2.pg-treks-adventures:not(.vF) .dots button{background:rgba(255,255,255,.3)}.hs2.pg-treks-adventures:not(.vF) .bar{background:rgba(255,255,255,.12);color:#fff;backdrop-filter:blur(10px)}.hs2.pg-retreats:not(.vF){background:var(--forest-deep);color:#fff}.hs2.pg-retreats:not(.vF) .t,.hs2.pg-retreats:not(.vF) .t em{color:#fff}.hs2.pg-retreats:not(.vF) .t em{color:var(--lime)}.hs2.pg-retreats:not(.vF) .tx{color:#e3eddc}.hs2.pg-retreats:not(.vF) .label{background:rgba(213,231,161,.16);color:var(--lime)}.hs2.pg-retreats:not(.vF) .qt,.hs2.pg-retreats:not(.vF) .qt cite{color:#fff;border-color:var(--lime)}.hs2.pg-retreats:not(.vF) .btn.sage{background:var(--lime);color:var(--forest-deep)}.hs2.pg-retreats:not(.vF) .btn.ghost{color:#fff;border-color:#fff}.hs2.pg-retreats:not(.vF) .btn.ghost:hover{background:#fff;color:var(--forest)}.hs2.pg-retreats:not(.vF) .crumbs,.hs2.pg-retreats:not(.vF) .crumbs a{color:#cfe0c6}.hs2.pg-retreats:not(.vF) .ctl{color:#fff}.hs2.pg-retreats:not(.vF) .ctl button.ar{background:transparent;border-color:#fff;color:#fff}.hs2.pg-retreats:not(.vF) .dots button{background:rgba(255,255,255,.3)}.hs2.pg-retreats:not(.vF) .bar{background:rgba(255,255,255,.12);color:#fff;backdrop-filter:blur(10px)}.hs2.pg-corporate:not(.vF){background:var(--forest-deep);color:#fff}.hs2.pg-corporate:not(.vF) .t,.hs2.pg-corporate:not(.vF) .t em{color:#fff}.hs2.pg-corporate:not(.vF) .t em{color:var(--lime)}.hs2.pg-corporate:not(.vF) .tx{color:#e3eddc}.hs2.pg-corporate:not(.vF) .label{background:rgba(213,231,161,.16);color:var(--lime)}.hs2.pg-corporate:not(.vF) .qt,.hs2.pg-corporate:not(.vF) .qt cite{color:#fff;border-color:var(--lime)}.hs2.pg-corporate:not(.vF) .btn.sage{background:var(--lime);color:var(--forest-deep)}.hs2.pg-corporate:not(.vF) .btn.ghost{color:#fff;border-color:#fff}.hs2.pg-corporate:not(.vF) .btn.ghost:hover{background:#fff;color:var(--forest)}.hs2.pg-corporate:not(.vF) .crumbs,.hs2.pg-corporate:not(.vF) .crumbs a{color:#cfe0c6}.hs2.pg-corporate:not(.vF) .ctl{color:#fff}.hs2.pg-corporate:not(.vF) .ctl button.ar{background:transparent;border-color:#fff;color:#fff}.hs2.pg-corporate:not(.vF) .dots button{background:rgba(255,255,255,.3)}.hs2.pg-corporate:not(.vF) .bar{background:rgba(255,255,255,.12);color:#fff;backdrop-filter:blur(10px)}/* ===== contact ===== */
.ct-hero{padding:150px var(--pad) 80px;background:linear-gradient(120deg,var(--ivory),var(--sage-pale) 70%,var(--sage-light));overflow:hidden}
.ct-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(30px,5vw,80px);align-items:center;position:relative}
.ct-hero h1{font:500 clamp(2.4rem,4.6vw,4.4rem)/1.04 var(--font-editorial);letter-spacing:-.025em;margin:1.2rem 0}.ct-hero h1 em{color:var(--sage-d)}
.ct-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:2rem}
a.cc{display:flex;align-items:center;gap:14px;padding:18px;background:#fff;border-radius:24px;border:1px solid rgba(32,59,47,.08);transition:.45s var(--ease)}
a.cc:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:var(--sage)}
a.cc small{display:block;font:700 .68rem var(--font-display);letter-spacing:.12em;text-transform:uppercase;color:var(--sage-d)}a.cc b{display:block;font:700 .95rem/1.25 var(--font-display);color:var(--forest)}a.cc i{margin-left:auto;font-style:normal;color:var(--sage-d);transition:.3s}a.cc:hover i{transform:translateX(4px)}
.ct-pic{position:relative;justify-self:center;width:min(100%,460px)}.ct-pic .arch{border-radius:999px 999px 44px 44px;overflow:hidden;aspect-ratio:4/5;box-shadow:0 40px 80px -30px rgba(20,40,31,.5)}.ct-pic .arch img{width:100%;height:100%}
.ct-pic .chip{position:absolute;left:-30px;bottom:50px;background:#fff;border-radius:22px;padding:14px 20px;box-shadow:var(--shadow);animation:bob 6s ease-in-out infinite}.ct-pic .chip b{display:block;font:800 1rem var(--font-display);color:var(--forest)}.ct-pic .chip span{font-size:.82rem;color:var(--muted)}
.ct-pic .badge-r{position:absolute;right:-26px;top:70px;width:120px;height:120px;border-radius:50%;overflow:hidden;border:6px solid #fff;box-shadow:var(--shadow);animation:bob 7s ease-in-out infinite reverse}.badge-r img{width:100%;height:100%}
.ct-form{display:grid;grid-template-columns:1.25fr .75fr;background:#fff;border-radius:44px;overflow:hidden;box-shadow:0 50px 90px -40px rgba(20,40,31,.45)}
.ct-form form{padding:clamp(26px,4vw,56px);display:grid;gap:16px}
.ct-form label{display:grid;gap:6px;font:700 .85rem var(--font-display);color:var(--forest)}
.ct-form input:not([type=radio]),.ct-form textarea{font:500 1rem var(--font-body);padding:14px 18px;border:1.5px solid rgba(32,59,47,.14);border-radius:16px;background:var(--ivory);transition:.3s;width:100%}
.ct-form input:focus,.ct-form textarea:focus{outline:0;border-color:var(--sage);box-shadow:0 0 0 4px rgba(131,167,122,.22);background:#fff}
.ct-form .two{display:grid;grid-template-columns:1fr 1fr;gap:16px}.ct-form .err{color:#b4472f;font-weight:500;font-size:.8rem}
.pick{border:0;display:flex;flex-wrap:wrap;gap:8px}.pick legend{font:700 .85rem var(--font-display);color:var(--forest);margin-bottom:8px}.pick label{display:block}.pick input{position:absolute;opacity:0}
.pick span{display:block;padding:8px 14px;border-radius:999px;border:1.5px solid rgba(32,59,47,.16);font:600 .85rem var(--font-body);color:var(--olive);cursor:pointer;transition:.3s}.pick span:hover{border-color:var(--sage)}.pick input:checked+span{background:var(--forest);color:#fff;border-color:var(--forest)}.chips input:focus-visible+span{outline:3px solid var(--lime)}
.ct-form aside{background:linear-gradient(160deg,var(--forest),var(--forest-deep));color:#fff;padding:clamp(26px,4vw,48px);position:relative;overflow:hidden}
.ct-form aside:before{content:"";position:absolute;right:-90px;top:-90px;width:260px;height:260px;border-radius:50%;background:var(--sage);opacity:.25}
.ct-form aside h3{font:500 1.7rem var(--font-editorial);margin-bottom:1.2rem;position:relative}
.next{list-style:none;counter-reset:n;display:grid;gap:18px;position:relative}.next li{counter-increment:n;padding-left:52px;position:relative}.next li:before{content:counter(n);position:absolute;left:0;top:0;width:36px;height:36px;border-radius:50%;background:var(--lime);color:var(--forest-deep);display:grid;place-items:center;font:800 .9rem var(--font-display)}
.next b{display:block;font-family:var(--font-display)}.next span{font-size:.9rem;opacity:.8}
.addr{margin-top:2rem;padding-top:1.4rem;border-top:1px solid rgba(255,255,255,.18);position:relative}.addr small{color:var(--lime);font:700 .7rem var(--font-display);letter-spacing:.14em;text-transform:uppercase}.addr p{margin:.5rem 0 1rem;opacity:.9;font-size:.95rem}.addr .btn{background:var(--lime);color:var(--forest-deep)}
.mapw{border-radius:40px;overflow:hidden;box-shadow:var(--shadow);height:380px;border:6px solid #fff}.mapw iframe{width:100%;height:100%;border:0;filter:saturate(.85)}
@media(max-width:900px){.ct-grid,.ct-form{grid-template-columns:1fr}.ct-cards,.ct-form .two{grid-template-columns:1fr}.ct-pic{width:min(100%,360px)}.ct-pic .chip{left:0}.ct-pic .badge-r{right:0}.ct-hero{padding-top:110px}}
.ct-form .err:empty{display:none}.ct-form .two{align-items:start}
.pick span{background:#fff!important;box-shadow:none;margin:0;backdrop-filter:none}.pick input:checked+span{background:var(--forest)!important;color:#fff}
.pick label{position:relative}.pick input{left:0;top:0;width:1px;height:1px}
