.hero{z-index:2;border-radius:0 0 20px 20px;justify-content:center;align-items:center;height:100svh;min-height:600px;margin-bottom:-60px;display:flex;position:relative;overflow:hidden}.hero-img{object-fit:cover;object-position:center center;width:100%;height:100%;position:absolute;inset:0}@media (width<=640px){.hero-img{object-position:center 25%}}.hero-overlay{z-index:1;background:#0000004d;position:absolute;inset:0}.hero-scrim-top{z-index:2;background:linear-gradient(#00000094 0%,#0000 22%);position:absolute;inset:0}.hero-scrim-center{z-index:2;background:radial-gradient(62% 38% at 50% 52%,#0000005c 0%,#0000 100%);position:absolute;inset:0}.hero-content{z-index:3;text-align:center;flex-direction:column;align-items:center;padding:1.5rem;display:flex;position:relative}.hero-lockup{width:66vw;height:auto;display:block}@media (width>=641px){.hero-lockup{width:30vw}}.hero-date{font-family:var(--f-ui);letter-spacing:.22em;text-transform:uppercase;color:var(--c-magnolia);margin-top:1.75rem;padding-left:.22em;font-size:18px;font-weight:700}@media (width<=640px){.hero-date{font-size:15px}}.hero-cta{border:2px solid var(--c-white);min-height:58px;color:var(--c-white);font-family:var(--f-ui);letter-spacing:.14em;text-transform:uppercase;background:0 0;border-radius:100px;justify-content:center;align-items:center;margin-top:2.25rem;padding:0 4.25rem;font-size:.85rem;font-weight:700;text-decoration:none;display:inline-flex}.hero-cta:hover{background:var(--c-white);color:var(--c-pine)}.intro-section{padding:calc(var(--section-y) + 60px) 0 var(--section-y)}.intro-inner{grid-template-columns:1fr 1fr;align-items:start;gap:5rem;display:grid}.werefor-line{font-family:var(--f-display);color:var(--c-pine);font-size:clamp(2.5rem,4.6vw,4.25rem);line-height:1.05}.werefor-visual,.werefor-lead{display:block}.werefor-rotor{clip-path:inset(-.15em -.5em 0);min-height:2.268em;display:grid}.werefor-phrase{font-family:var(--f-serif);color:var(--c-live-oak);visibility:hidden;grid-area:1/1;font-size:1.08em;font-style:italic;line-height:1.05}.werefor-phrase.is-current{visibility:visible}.werefor-rotor.is-rotating .werefor-phrase{opacity:0;visibility:visible;transition:transform .38s ease-out,opacity .38s ease-out,visibility 0s .38s;transform:translateY(100%)}.werefor-rotor.is-rotating .werefor-phrase.is-current{opacity:1;transition:transform .38s ease-out,opacity .38s ease-out;transform:none}.werefor-rotor.is-rotating .werefor-phrase.is-leaving{opacity:0;transform:translateY(-100%)}.intro-copy{font-family:var(--f-sans);color:var(--c-pine);-webkit-font-smoothing:auto;margin-top:-.3em;margin-bottom:1.25rem;font-size:19px;font-weight:400;line-height:1.6}.intro-tagline{font-family:var(--f-ui);color:var(--c-pine);margin-bottom:1.25rem;font-size:20px;font-weight:700;line-height:1.35}.intro-stats{text-wrap:balance;font-family:var(--f-ui);color:var(--c-pine);font-size:1rem;font-weight:700}.intro-stats span{white-space:nowrap}@media (width<=760px){.intro-inner{grid-template-columns:1fr;gap:2rem}.intro-copy{margin-top:0}}.how-section{padding:var(--section-y) 0}.steps-grid{grid-template-columns:repeat(3,1fr);gap:2.5rem;display:grid}.step-num{font-family:var(--f-display);color:var(--c-live-oak);margin-bottom:.4rem;font-size:clamp(2rem,3.5vw,3.5rem);line-height:1;display:block}.step-headline{font-family:var(--f-ui);color:var(--c-pine);margin-bottom:.35rem;font-size:1.375rem;font-weight:700;line-height:1.2}.step-text{color:var(--c-pine);font-size:1rem;line-height:1.6}@media (width<=640px){.steps-grid{grid-template-columns:1fr;gap:2rem}}.filters-bar{padding:var(--section-y) 0 0}.filters-wrap{flex-wrap:wrap;align-items:center;gap:.6rem;padding-bottom:2.5rem;display:flex}.filter-pill{appearance:none;color:var(--c-magnolia);font-family:var(--f-ui);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;opacity:.7;background:0 0;border:1.5px solid #ede8e359;border-radius:100px;padding:.45rem 1.1rem;font-size:.6rem;font-weight:700;transition:opacity .1s,background .1s,border-color .1s,color .1s}.filter-pill.active{background:var(--c-fern);color:var(--c-pine);border-color:var(--c-fern);opacity:1}.filter-pill:hover:not(.active){opacity:1}.filter-pill:focus-visible{outline:2px solid var(--c-fern);outline-offset:3px}.project-group{padding:var(--section-y) 0}.group-dark{background-color:var(--c-pine);background-image:var(--grain);padding-top:0}.group-light{background-color:var(--c-magnolia);background-image:var(--grain)}.group-header{margin-bottom:3rem}.group-headline{font-family:var(--f-display);letter-spacing:.02em;margin-bottom:.75rem;font-size:clamp(2.5rem,5vw,5rem);font-weight:400;line-height:1}.group-headline em{font-family:var(--f-serif);font-size:1.08em;font-style:italic;font-weight:400}.group-sub{max-width:58ch;font-size:1rem;line-height:1.6}.group-dark .group-headline{color:var(--c-magnolia)}.group-dark .group-headline em{color:var(--c-fern)}.group-dark .group-sub{color:var(--c-magnolia);opacity:.7}.group-light .group-headline{color:var(--c-pine)}.group-light .group-headline em{color:var(--c-live-oak)}.group-light .group-sub{color:var(--c-pine)}@media (width<=640px){.group-header{margin-bottom:2rem}}.cards-grid{grid-template-columns:repeat(3,1fr);gap:1.25rem;display:grid}@media (width<=900px){.cards-grid{grid-template-columns:1fr 1fr}}@media (width<=640px){.cards-grid{grid-template-columns:1fr}}.card{border-radius:20px;flex-direction:column;display:flex;overflow:hidden}.group-dark .card{background:var(--c-magnolia)}.group-light .card{background:var(--c-cotton)}.card-cap{color:var(--c-pine);flex-direction:column;align-items:flex-start;padding:1.5rem 1.75rem 1.25rem;display:flex}.group-dark .card-cap{background:var(--c-magnolia)}.group-light .card-cap{background:var(--c-cotton)}.card[data-ages=family] .card-cap{background:var(--c-honey)}.card-spots-num{font-family:var(--f-display);color:var(--c-pine);font-size:clamp(2.75rem,4.5vw,4rem);line-height:1}.card-spots-label{font-family:var(--f-ui);letter-spacing:.2em;text-transform:uppercase;color:var(--c-pine);margin-top:.15rem;font-size:.55rem;font-weight:700}.card-body{flex-direction:column;flex:1;padding:1.5rem 1.75rem 1.75rem;display:flex}.card-name{font-family:var(--f-ui);color:var(--c-pine);margin-bottom:.2rem;font-size:1.3125rem;font-weight:700;line-height:1.2}.card-partner{color:var(--c-pine);margin-bottom:1rem;font-size:.8rem}.card-meta{color:var(--c-pine);margin-bottom:.85rem;font-size:.9375rem;font-weight:500;line-height:1.6}.card-meta p+p{margin-top:.15rem}.card-address--hidden{font-style:italic}.card-desc{color:var(--c-pine);margin-bottom:1rem;font-size:1rem;font-weight:400;line-height:1.6}.card-badge{font-family:var(--f-ui);letter-spacing:.1em;text-transform:uppercase;color:var(--c-pine);margin-bottom:1.25rem;font-size:.8125rem;font-weight:700;display:inline-block}.card-ages{flex-wrap:wrap;align-items:center;gap:.4rem .75rem;margin-bottom:1.25rem;display:flex}.card-ages .card-badge{margin-bottom:0}.card-badge--family{background:var(--c-honey);letter-spacing:.06em;border-radius:100px;padding:.22em .8em}.card-badge--students{border:1.5px solid var(--c-pine);letter-spacing:.06em;border-radius:100px;padding:calc(.22em - 1.5px) calc(.8em - 1.5px)}.card-spacer{flex:1}.card-btn{appearance:none;background:var(--c-fern);width:100%;color:var(--c-pine);font-family:var(--f-ui);letter-spacing:.14em;text-transform:uppercase;text-align:center;cursor:pointer;border:none;border-radius:100px;padding:.85rem 1.5rem;font-size:.65rem;font-weight:700;text-decoration:none;display:block}.card-btn:hover{opacity:.85}.card-btn:focus-visible{outline:2px solid var(--c-pine);outline-offset:3px}.card-btn--soon,.card--full .card-btn{background:var(--c-cotton);color:var(--c-cypress);cursor:default}.card-btn--soon:hover,.card--full .card-btn:hover{opacity:1}.group-light .card-btn--soon,.group-light .card--full .card-btn{background:var(--c-magnolia)}.card-almost{background:var(--c-pine);color:var(--c-magnolia);font-family:var(--f-ui);letter-spacing:.1em;text-transform:uppercase;border-radius:100px;margin-top:.6rem;padding:.25em .8em;font-size:.6875rem;font-weight:700}.faq-section{padding:var(--section-y) 0}.faq-headline{font-family:var(--f-display);color:var(--c-pine);margin-bottom:3rem;font-size:clamp(2.5rem,5vw,5rem);line-height:1}.faq-headline em{font-family:var(--f-serif);color:var(--c-live-oak);font-size:1.08em;font-style:italic}.faq-list{border-top:1px solid var(--c-rule)}.faq-item{border-bottom:1px solid var(--c-rule)}.faq-item summary{cursor:pointer;font-family:var(--f-ui);color:var(--c-pine);user-select:none;justify-content:space-between;align-items:center;gap:1.5rem;padding:1.25rem 0;font-size:1.05rem;font-weight:700;line-height:1.3;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary::marker{content:""}.faq-item summary:after{content:"+";font-family:var(--f-display);color:var(--c-live-oak);flex-shrink:0;font-size:1.5rem;line-height:1}.faq-item[open] summary:after{content:"−"}.faq-answer{max-width:68ch;padding:0 0 1.5rem}.faq-answer p{color:var(--c-pine);font-size:1rem;line-height:1.65}.faq-answer p+p{margin-top:.75rem}.faq-answer a{text-decoration:underline}@media (width<=640px){.faq-headline{margin-bottom:2rem}}
