/* 26/27 campaign: alpine blue, snow white, lime accents. */
.rate-conditions{background:#edf4ff;color:#263e64}
.welcome .hero-consult.hero-rates{background:#fff;color:#071b4d;border-color:#fff}
:root{--kids:#0755cf;--kids-soft:#edf4ff;--adult:#0755cf;--adult-soft:#edf4ff;--advanced:#081953;--advanced-soft:#f0f4fb;--color-ink:#071b4d;--color-muted:#52617a;--blue:#0755cf;--ink:#071b4d}
html{scroll-padding-top:100px}body,.friendly-home{background:#fff;color:#071b4d}.season-bar{background:#071b4d;color:#fff}.season-bar strong{color:#e1fa79}.brand-icon{background:#0755cf;color:#fff}.brand small{font-size:8px;letter-spacing:.08em}.site-header{border-bottom-color:#e1e8f4}.nav .button.blue,.button.blue{background:#0755cf;color:#fff;border-color:#0755cf}.nav-pricing{color:#0755cf!important}.eyebrow,.mini-label{color:#0755cf}.section-title{color:#071b4d}.button:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid #5798ff;outline-offset:4px}
.welcome{padding-top:24px}.welcome-story{grid-template-columns:1.08fr .92fr;overflow:hidden;border:0;border-radius:24px;background:#062a73}.welcome-copy{background:linear-gradient(130deg,#071b4d,#0659d3);padding:50px 42px;display:flex;flex-direction:column;justify-content:center}.welcome h1{color:#fff;font-size:clamp(42px,5.2vw,72px);letter-spacing:-.065em;line-height:1.12}.welcome h1 em{color:#ddfa75;font-style:normal}.welcome-copy>p{color:#e7f0ff;font-size:17px;line-height:1.9}.soft-kicker{color:#dcecfe;background:transparent;padding:0;font-size:11px;letter-spacing:.12em}.welcome .button.blue{background:#e1fa79;color:#081a4a;border-color:#e1fa79}.welcome .hero-consult{color:#fff}.welcome-tags span,.welcome-tags span+span{color:#e5efff;background:#ffffff12;border:1px solid #ffffff32}.welcome-photo.campaign-cover{margin:0;border-radius:0;min-height:0;aspect-ratio:1122/1402;height:auto;background:#0755cf}.welcome-photo.campaign-cover>img{display:block;position:static;width:100%;height:100%;object-fit:contain}.welcome-photo:after{display:none}.category-nav a,.category-nav a:nth-child(n){background:#fff;border:1px solid #dfe7f4}.category-icon{background:#fff!important}.category-nav a:hover{background:#f2f7ff}.discovery{border-color:#dce7f7}.junior-teaser{background:#edf4ff;border-color:#d9e5fb}.season-feature{background:#071b4d;color:#fff}.season-feature h2,.season-feature p,.season-feature .mini-label,.season-feature a{color:#fff}.season-feature .button{border-color:#b5cfff}
.campaign-image-link{display:block;position:relative;color:inherit;overflow:hidden;border-radius:14px;background:#edf3ff}.campaign-image-link>img{display:block;width:100%;height:auto;max-width:none}.campaign-image-link>span{position:absolute;right:10px;bottom:10px;background:#071b4de8;color:#fff;border:1px solid #ffffff60;border-radius:6px;padding:6px 9px;font-size:10px;opacity:0;transition:opacity .15s}.campaign-image-link:hover>span,.campaign-image-link:focus-visible>span{opacity:1}
.campaign-meet{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.campaign-meet .meet-card{display:block;padding:0;overflow:hidden;border:1px solid #dce5f5;background:#fff;border-radius:16px}.campaign-meet .campaign-image-link{border-radius:0}.campaign-meet .meet-card>div{padding:22px 24px}.campaign-meet h3{font-size:26px}.campaign-meet p{margin-block:10px}.campaign-record{margin-block:30px 65px;padding:38px;display:grid;grid-template-columns:1fr 2fr;gap:30px;background:#071b4d;border-radius:20px;color:#fff}.campaign-record .eyebrow{color:#e1fa79}.campaign-record h2{color:#fff;font-size:34px;line-height:1.25;margin:12px 0}.campaign-record p{color:#bdcff1;font-size:13px}.campaign-record dl{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}.campaign-record dl>div{border-left:1px solid #ffffff30;padding-left:24px}.campaign-record dd{margin:0;color:#e1fa79;font-size:52px;font-weight:850;letter-spacing:-.05em}.campaign-record dd small{font-size:15px;letter-spacing:0;margin-left:6px}.campaign-record dt{font-size:13px;color:#e3edff;margin-top:8px}.campaign-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.campaign-gallery h3{font-size:15px;margin:15px 0 25px}.campaign-stories>.button{margin-top:12px}.journal-section{background:#f1f5fb}.resort-card{background:#edf4ff!important;border-color:#dce6f7}.closing{background:#071b4d;color:#fff}.closing h2,.closing p,.closing .eyebrow{color:#fff}.closing .button{background:#e1fa79;color:#071b4d;border-color:#e1fa79}.site-footer{background:#f2f5fa}.mobile-cta>a,.booking-dock button{background:#0755cf!important;color:white!important}
.page-intro,.page-instructors .page-intro{background:#edf4ff}.page-intro h1{color:#071b4d}.page-instructors .team-intro h1{font-size:clamp(28px,3.3vw,42px);line-height:1.3}.campaign-team-strength{padding-block:38px 0}.campaign-team-strength h2{font-size:25px;margin:12px 0 20px}.campaign-team-strength>div{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.campaign-team-strength p{padding:20px 14px;background:#f0f5ff;border-top:3px solid #0755cf;border-radius:0 0 10px 10px;margin:0;font-weight:650;font-size:14px}.page-instructors .campaign-leader{border-color:#bdd1ed}.page-instructors .campaign-leader .coach-card-location{display:none}.page-instructors .campaign-leader .coach-top{display:block}.page-instructors .campaign-profile{margin:0;width:100%;height:auto;aspect-ratio:auto;display:block;background:transparent;border-radius:16px 16px 0 0;overflow:hidden}.campaign-profile .campaign-image-link{border-radius:0}.page-instructors .campaign-leader .coach-top h2{color:#071b4d}.page-instructors .coach-body .tag{background:#edf3ff;color:#214575}.page-instructors .coach-body>.text-link{background:#0755cf;color:#fff;border-color:#0755cf}.tab-button[aria-pressed=true],.tab-button[aria-selected=true]{background:#0755cf!important;color:#fff!important;border-color:#0755cf!important}.campaign-lesson-guide{display:grid;grid-template-columns:1.5fr .65fr;align-items:center;gap:50px;padding:34px 0}.campaign-lesson-guide h2{font-size:clamp(28px,3vw,40px);line-height:1.3;max-width:600px;margin:15px 0}.campaign-lesson-guide p{line-height:1.9;color:#53637c}.campaign-lesson-guide>.campaign-image-link{max-height:360px;width:auto;justify-self:end;aspect-ratio:1122/1402}.campaign-lesson-guide img{height:100%;width:100%;object-fit:contain}.rate-grid.rate-grid-two{grid-template-columns:repeat(2,minmax(0,1fr))}.rate-card header{background:#e8f1ff}.rate-card h4,.rate-resort h3{color:#071b4d}.rate-card th{background:#f0f5ff}.rate-conditions b{color:#0755cf}/* Keep selected labels legible across the winter and campaign palettes. */
.page-booking .choice-card input:checked+span{border-color:#174a86!important;background:#174a86!important;color:#fff!important}
.page-booking .choice-card input:checked+span b,.page-booking .choice-card input:checked+span small{color:#fff!important}
.page-booking .choice-card input:checked+span i{background:#fff;border-color:#fff;color:#174a86}
.page-booking .choice-card input:focus-visible+span{outline:3px solid #174a86;outline-offset:3px}
@media(hover:hover){.page-booking .choice-card:hover input:not(:checked)+span{border-color:#174a86}}

@media(max-width:850px){.welcome-story{grid-template-columns:1fr 1fr}.welcome-copy{padding:30px 24px}.welcome h1{font-size:42px}.welcome-copy>p{font-size:14px}.hero-actions{flex-wrap:wrap}.campaign-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.campaign-meet{gap:15px}.campaign-meet .meet-card>div{padding:18px}.campaign-meet h3{font-size:22px}.campaign-record{grid-template-columns:1fr;padding:28px}.campaign-team-strength>div{grid-template-columns:repeat(2,1fr)}.campaign-lesson-guide{gap:24px}}
@media(max-width:640px){html{scroll-padding-top:78px}.brand small{font-size:6px}.welcome{padding-top:15px}.welcome-story{display:flex;flex-direction:column;border-radius:18px}.welcome-copy{padding:32px 25px}.welcome h1{font-size:46px}.welcome-copy>p{font-size:15px}.welcome-photo.campaign-cover{width:100%;aspect-ratio:1122/1402}.category-nav{gap:9px}.category-nav a{padding:10px 4px}.campaign-meet{grid-template-columns:1fr}.campaign-meet .meet-card>div{padding:20px 22px}.campaign-record{margin-block:20px 45px;padding:25px}.campaign-record h2{font-size:29px}.campaign-record dl{gap:25px 12px}.campaign-record dl>div{padding-left:12px}.campaign-record dd{font-size:40px}.campaign-record dd small{font-size:12px}.campaign-record dt{font-size:11px;line-height:1.6}.campaign-gallery{gap:12px}.campaign-gallery h3{font-size:12px;margin:10px 0 18px}.campaign-image-link>span{display:none}.campaign-team-strength p{font-size:12px;padding:16px 12px}.campaign-lesson-guide{grid-template-columns:1fr;padding:28px 0;gap:20px}.campaign-lesson-guide>.campaign-image-link{justify-self:center;width:min(100%,320px);max-height:none}.rate-grid.rate-grid-two{grid-template-columns:1fr}.season-feature h2{color:#fff}.page-instructors .team-intro h1{font-size:29px}}
