:root{--teal:#004b50;--pool:#007c83;--ink:#102f36;--soft:#eef6f6;--line:#d5e4e4;--checkout-primary:#004b50;--checkout-text:#102f36}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;color:var(--ink);font:17px/1.6 'DM Sans',Arial,sans-serif}button,input{font:inherit}a{color:inherit;text-underline-offset:4px}button{cursor:pointer}img{display:block;max-width:100%;object-fit:cover}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.05}h1,h2,.footer-brand{font-family:'Barlow Condensed','Arial Narrow',sans-serif;font-weight:700}h1{font-size:clamp(48px,4.9vw,72px);letter-spacing:-.5px}h2{font-size:clamp(38px,3.6vw,50px)}h3{font-size:25px;letter-spacing:-.6px}p+p{margin-top:18px}.wrap{width:min(1200px,calc(100% - 80px));margin:auto}.section{padding:78px 0}.skip-link{position:fixed;z-index:20000;left:15px;top:-100px;background:white;padding:10px}.skip-link:focus{top:10px}:focus-visible{outline:3px solid #ff9d46;outline-offset:5px}.topline{background:var(--teal);color:white;font-size:13px;padding:7px 0}.topline .wrap{display:flex;justify-content:space-between}.topline a{text-decoration:none}header{position:sticky;top:0;z-index:100;background:white;box-shadow:0 1px 0 var(--line)}.header-inner{min-height:94px;display:flex;justify-content:space-between;gap:28px;align-items:center}.brand,.brand img{width:260px;flex-shrink:0}.brand img{height:auto}nav{display:flex;gap:28px;align-items:center;font-size:15px;font-weight:700}nav a{text-decoration:none}nav a:hover{text-decoration:underline}.nav-call{border:1px solid var(--line);border-radius:6px;padding:11px 17px}.menu-toggle{display:none}.hero{background:var(--teal);color:white;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.08fr 1fr;gap:40px;min-height:570px;align-items:center}.hero-copy{padding:52px 0 50px}.location{font-size:14px;font-weight:600;margin-bottom:23px;display:flex;align-items:center;gap:9px}.location span{font-size:10px;color:#ff8f7c}.hero-description{font-size:18px;max-width:480px;line-height:1.65;margin-top:25px;color:#e0eeee}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:31px}.button{min-height:50px;display:inline-flex;gap:9px;justify-content:center;align-items:center;padding:13px 23px;text-decoration:none;border-radius:6px;border:0;font-weight:700;font-size:15px;line-height:1.4}.button:hover{filter:brightness(.96)}.button-white{background:#fff;color:var(--teal)}#checkoutBtn.button-coral{background:#ff654d;color:#102f36;font-weight:700;min-height:50px;padding:13px 23px;border-radius:6px}.button-teal{background:var(--teal);color:white}.hero-call{font-size:14px;font-weight:600;padding:9px 0;margin-left:3px}.hero-note{font-size:13px;color:#c9dddd;margin-top:19px}.hero-visual{position:relative;align-self:stretch;min-width:0;padding:36px 0}.hero-visual>img{height:100%;width:100%;max-height:510px;border-radius:95px 8px 95px 8px;object-position:50% 40%}.photo-tag{position:absolute;bottom:60px;left:-20px;background:white;color:var(--ink);border-radius:8px;padding:17px 23px;display:flex;align-items:center;gap:14px;line-height:1.45;font-size:14px;box-shadow:0 6px 22px #00353933}.photo-tag-mark{display:flex;align-items:center;justify-content:center;border:2px solid var(--pool);border-radius:50%;width:46px;height:46px;font-family:'Barlow Condensed',sans-serif;font-weight:800;color:var(--pool);font-size:24px}.quick-strip{background:var(--soft);border-bottom:1px solid var(--line);font-size:14px}.quick-strip .wrap{padding:21px 0;display:flex;justify-content:space-between;gap:20px}.quick-strip strong{margin-right:15px;color:var(--teal)}.quick-strip b{margin:0 14px;color:var(--pool)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:55px;margin-bottom:31px}.section-heading>p{max-width:330px;color:#53696e;font-size:16px}.eyebrow{color:var(--pool);font-size:15px;font-weight:700;margin-bottom:11px}.program-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}.program-card{border:1px solid var(--line);border-radius:10px;overflow:hidden}.program-card>img{width:100%;height:265px;object-position:50% 35%}.card-body{padding:27px 30px 29px}.age{font-size:13px;color:var(--teal);font-weight:700;background:var(--soft);padding:5px 11px;border-radius:4px;display:inline-block;margin-bottom:16px}.card-body h3{font-size:27px}.card-body p{font-size:16px;color:#53696e;margin:14px 0 19px;max-width:460px}.card-body a{font-weight:700;font-size:15px;color:var(--teal);text-decoration:none;display:flex;justify-content:space-between}.more-programs{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:25px}.more-programs article{display:flex;gap:17px;padding:24px 0;align-items:start;border-bottom:1px solid var(--line)}.sport-icon{color:var(--pool);font-size:28px;width:35px;flex-shrink:0;line-height:1.2}.more-programs h3{font-size:20px;letter-spacing:-.3px}.more-programs p{font-size:14px;color:#53696e;margin-top:9px;max-width:310px}.more-programs a{margin-left:auto;font-size:14px;white-space:nowrap;font-weight:600}.program-note{margin-top:24px;font-size:14px;color:#53696e}.about{padding:67px 0;background:var(--teal);color:white}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.about .eyebrow{color:#b3e6e5}.about h2{font-size:52px}.about-copy{font-size:17px;color:#e0eeee}.about-copy .button{margin-top:27px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.contact-intro{margin:22px 0;color:#53696e;font-size:17px}.contact-phone{font-family:'Barlow Condensed',sans-serif;font-size:39px;font-weight:700;text-decoration:none;color:var(--teal)}.contact-call{font-size:14px;color:#53696e;margin-top:2px}.address-block{margin-top:30px;border-top:1px solid var(--line);padding-top:25px}.address-block h3{font-size:18px;letter-spacing:0}.address-block address{font-style:normal;margin:12px 0;font-size:15px;color:#53696e}.address-block a{font-size:14px;font-weight:700}.payment-panel{padding:37px 38px;background:var(--soft);border:1px solid var(--line);border-radius:12px}.payment-icon{color:var(--pool);margin-bottom:20px}.payment-panel h3{font-size:28px}.payment-panel>p{margin-top:17px;color:#53696e;font-size:16px}.payment-panel .button{margin-top:23px;width:100%}.payment-panel p.payment-help{font-size:14px;line-height:1.6;margin-top:19px}.payment-provider{border-top:1px solid var(--line);padding-top:20px;margin-top:24px;font-size:12px;color:#53696e}footer{background:#102f36;color:white;padding:45px 0 0}.footer-main{display:grid;grid-template-columns:1.7fr 1fr 1fr;gap:30px;padding-bottom:34px}.footer-brand{font-size:27px;line-height:1.05}.footer-brand strong{font-size:38px}.footer-brand p{font-family:'DM Sans',sans-serif;font-size:14px;font-weight:400;margin-top:13px;color:#b7cbcf}.footer-main h3{font-size:15px;letter-spacing:0;margin-bottom:16px}.footer-main a{display:block;font-size:14px;color:#d2e0e3;text-decoration:none;margin-top:8px}.footer-main p{color:#b7cbcf;font-size:14px;margin-top:9px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #365158;padding:20px 0;font-size:12px;color:#b7cbcf}.checkout-dialog h2{font-size:34px}.checkout-intro{font-size:14px;margin-bottom:20px}.checkout-group{font-size:14px}.checkout-close{min-width:40px;min-height:40px}.checkout-dialog{max-height:calc(100dvh - 40px);overflow-y:auto;border-radius:12px}#checkoutStatus{font-size:14px}
@media(max-width:1100px){.wrap{width:calc(100% - 48px)}nav{gap:18px}.brand,.brand img{width:220px}.nav-call{display:none}.hero-grid{gap:25px}.hero-actions{gap:10px}.hero-call{width:100%}.contact-grid{gap:45px}.more-programs article{flex-wrap:wrap}.more-programs a{margin-left:52px}.section-heading{gap:25px}}
@media(max-width:760px){html{scroll-padding-top:86px}.wrap{width:calc(100% - 36px)}.topline{font-size:11px}.header-inner{min-height:78px}.brand,.brand img{width:205px}.menu-toggle{display:flex;gap:10px;align-items:center;background:white;border:1px solid var(--line);border-radius:5px;padding:8px 12px;font-size:14px}nav{display:none;position:absolute;left:0;right:0;top:100%;background:white;padding:17px 22px 23px;box-shadow:0 5px 10px #102f3615}nav.is-open{display:flex;align-items:stretch;flex-direction:column;gap:0}nav a{padding:10px 0}.hero-grid{grid-template-columns:1fr;gap:0}.hero-copy{padding:32px 0 27px}h1{font-size:54px;letter-spacing:-.3px}.location{font-size:12px;margin-bottom:18px}.hero-description{font-size:16px;margin-top:19px;max-width:440px}.hero-actions{margin-top:23px;gap:10px}.hero-call{width:auto;font-size:13px}.hero-note{font-size:12px;margin-top:14px}.button,#checkoutBtn.button-coral{padding:12px 19px;font-size:14px}.hero-visual{height:310px;padding:0 0 26px}.hero-visual>img{border-radius:45px 6px 45px 6px;object-position:center 39%;height:100%}.photo-tag{bottom:43px;left:12px;padding:11px 15px;font-size:12px;gap:10px}.photo-tag-mark{height:36px;width:36px;font-size:20px}.quick-strip .wrap{padding:17px 0;display:block;font-size:12px}.quick-strip .wrap>span{display:block}.quick-strip .wrap>span+span{margin-top:7px}.quick-strip strong{margin-right:8px}.quick-strip b{margin:0 8px}.section{padding:48px 0}.section-heading{display:block;margin-bottom:24px}.section-heading>p{margin-top:18px;max-width:460px;font-size:15px}h2{font-size:40px}.eyebrow{font-size:13px}.program-grid{grid-template-columns:1fr;gap:22px}.program-card>img{height:230px}.card-body{padding:22px}.card-body h3{font-size:25px}.card-body p{font-size:15px}.more-programs{grid-template-columns:1fr;gap:0;margin-top:12px}.more-programs article{flex-wrap:nowrap;padding:24px 0;gap:12px}.more-programs a{margin-left:auto;font-size:12px}.more-programs p{font-size:13px}.sport-icon{width:28px}.program-note{font-size:13px}.about{padding:45px 0}.about-grid{grid-template-columns:1fr;gap:24px}.about h2{font-size:43px}.about-copy{font-size:16px}.contact-grid{grid-template-columns:1fr;gap:35px}.contact-phone{font-size:38px}.contact-intro{font-size:16px}.payment-panel{padding:28px 24px}.payment-panel h3{font-size:26px}.footer-main{grid-template-columns:1fr 1fr;gap:30px}.footer-brand{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:6px;font-size:11px}.checkout-dialog{max-height:calc(100dvh - 24px)}#checkoutModal{padding:12px}}
@media(max-width:380px){h1{font-size:48px}.brand,.brand img{width:182px}.menu-toggle{padding:7px 9px}.hero-actions{gap:9px}.hero-call{width:100%;padding:3px 0}.topline{font-size:10px}.more-programs article{flex-wrap:wrap}.more-programs a{margin-left:40px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
