:root{--blue:#123ab8;--navy:#10244d;--paper:#f7f8fc;--muted:#536078;--line:#dce1ec}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:#fff;color:var(--navy);font-family:Arial,Helvetica,sans-serif;line-height:1.6}a{color:inherit}img{max-width:100%;display:block}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #ecaa20;outline-offset:5px}.skip{position:fixed;top:-100px;left:16px;z-index:10;background:white;padding:12px}.skip:focus{top:10px}.announcement{background:var(--blue);color:white;text-align:center;padding:9px 20px;font-size:13px}.announcement span{font-weight:800;letter-spacing:1px;margin-right:14px}.announcement a{margin-left:22px;text-underline-offset:4px}header,footer{max-width:1440px;margin:auto;display:flex;justify-content:space-between;align-items:center;padding:25px 6%;gap:25px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:19px;font-weight:900;letter-spacing:.7px;line-height:1.1}.brand small{display:block;font-size:11px;letter-spacing:2.4px;margin-top:6px}.mark{font-family:Georgia,serif;font-size:48px;color:var(--blue);line-height:1}nav{display:flex;gap:28px;font-size:14px;font-weight:600}nav a{text-decoration:none}nav a:hover,.text-link:hover{color:var(--blue)}.button{display:inline-flex;justify-content:center;align-items:center;gap:32px;padding:16px 24px;background:var(--blue);color:white;text-decoration:none;font-size:14px;font-weight:700;border:1px solid transparent;border-radius:3px;transition:background .2s,transform .2s}.button:hover{background:#0c2b87;transform:translateY(-2px)}.button.small{padding:12px 17px}.hero{max-width:1440px;margin:auto;display:grid;grid-template-columns:1.1fr 1fr;padding:30px 6% 65px;gap:50px;align-items:center}.eyebrow{font-size:11px;font-weight:800;letter-spacing:2px;color:var(--blue);margin:0 0 22px}.hero h1{font-size:clamp(44px,4.8vw,70px);letter-spacing:-3px;line-height:1.06;margin:20px 0 25px;font-weight:900}.hero h1 em{color:var(--blue);font-style:normal}.lead{font-size:17px;line-height:1.8;color:var(--muted)}.actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:30px}.text-link{font-size:14px;font-weight:700;text-decoration:none}.hero-note{font-size:12px;color:var(--muted);margin-top:30px;display:flex;align-items:center;gap:9px}.dot{height:7px;width:7px;border-radius:50%;background:var(--blue)}.hero-art{height:540px;position:relative;margin-left:30px;background:var(--blue)}.gym{width:100%;height:100%;object-fit:cover;filter:brightness(.78)}.image-caption{position:absolute;top:22px;left:22px;color:white;font-size:10px;letter-spacing:1.8px;font-weight:800}.inset{position:absolute;bottom:-20px;left:-45px;width:210px;background:white;padding:8px;transform:rotate(-5deg);box-shadow:0 8px 30px #10244d30}.inset img{width:100%;height:190px;object-fit:cover}.inset span{display:block;text-align:center;font-size:10px;font-weight:700;padding:10px 0 4px}.vertical{position:absolute;bottom:20px;right:18px;color:white;writing-mode:vertical-rl;font-size:10px;letter-spacing:2px}.values-strip{display:flex;justify-content:space-around;align-items:center;gap:18px;background:var(--navy);color:#fff;padding:23px 5%;font-size:12px;font-weight:800;letter-spacing:1.5px}.values-strip i{color:#8fa7ff;font-style:normal}.section{padding:80px 6%;max-width:1440px;margin:auto}h2{font-size:clamp(32px,3.3vw,46px);letter-spacing:-1.7px;line-height:1.13;margin:0 0 24px}h3{font-size:21px;letter-spacing:-.5px;line-height:1.3}.about{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding-bottom:35px}.about p:not(.eyebrow){color:var(--muted)}.large-copy{font-size:21px;line-height:1.6;margin-top:0}.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding-top:20px}.benefits article{border-top:2px solid var(--blue);padding:24px 20px 0 0}.number{color:var(--blue);font-weight:800;font-size:12px}.benefits p{color:var(--muted);font-size:15px}.clinic{background:var(--blue);color:white;display:grid;grid-template-columns:1.7fr 1fr;gap:65px;max-width:none;padding-left:max(6%,calc((100vw - 1268px)/2));padding-right:max(6%,calc((100vw - 1268px)/2))}.clinic .eyebrow{color:#c4d3ff}.pill{display:inline-block;font-size:10px;letter-spacing:1.3px;font-weight:800;padding:5px 10px;border:1px solid #7791e7;margin:0 0 20px}.clinic h2{font-size:42px}.clinic-main>p:not(.eyebrow){max-width:590px;color:#e3eaff}.event-details{display:grid;grid-template-columns:1fr 1fr;gap:23px;margin-top:30px}dt{font-size:10px;letter-spacing:1.5px;color:#c4d3ff;font-weight:800}dd{margin:7px 0 0;font-size:15px}.white{background:white;color:var(--blue)}.white:hover{background:#e5ebff}.flyer-link{font-size:13px;text-underline-offset:5px}.date-card{border:1px solid #6c87df;align-self:center;padding:30px;text-align:center;background:#ffffff08}.date-card>span{font-size:11px;font-weight:800;letter-spacing:2px}.date-card strong{font-size:100px;line-height:.95;letter-spacing:-5px;display:block;margin:25px 0}.date-card>div{font-size:11px;font-weight:800;letter-spacing:1px;border-top:1px solid #6c87df;border-bottom:1px solid #6c87df;padding:15px 0}.date-card p{font-size:14px;color:#e3eaff}.date-card .card-bottom{font-size:9px}.section-heading{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:20px}.section-heading p:not(.eyebrow){color:var(--muted);font-size:14px}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.photo{position:relative;overflow:hidden;background:var(--paper);aspect-ratio:1/1}.photo img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.photo:hover img{transform:scale(1.04)}.photo span{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#10244dbb);padding:32px 14px 12px;color:white;font-size:11px;font-weight:700}.faq{background:var(--paper);display:grid;grid-template-columns:1fr 1fr;gap:60px}.faq h2{font-size:36px}details{border-bottom:1px solid var(--line);padding:18px 0}details:first-child{padding-top:0}summary{font-weight:700;font-size:15px;cursor:pointer}details p,details a{font-size:14px;color:var(--muted)}.contact{text-align:center;padding-top:90px;padding-bottom:90px}.contact h2{font-size:52px}.contact p:not(.eyebrow){color:var(--muted)}.contact .button{margin-top:12px}.email{display:block;margin-top:20px;font-size:13px;text-underline-offset:4px;overflow-wrap:anywhere}footer{border-top:1px solid var(--line);padding-top:30px;padding-bottom:30px}footer p,footer>a:last-child{font-size:12px;color:var(--muted)}dialog{padding:40px 18px 18px;border:0;border-radius:5px;max-width:90vw;max-height:92vh;background:var(--navy);color:white}dialog::backdrop{background:#081124dd}dialog img{max-height:72vh;width:auto;margin:auto;object-fit:contain}dialog p{font-size:13px;margin:14px 0 0;max-width:600px}.close{position:absolute;right:8px;top:2px;color:white;background:none;border:0;font-size:30px;cursor:pointer;width:36px;height:36px}@media(min-width:1500px){.clinic{padding-left:calc((100vw - 1268px)/2);padding-right:calc((100vw - 1268px)/2)}}@media(max-width:1000px){nav{gap:16px}header>.button{display:none}.hero{gap:20px}.hero h1{font-size:50px}.hero-art{height:490px}.inset{width:160px;left:-20px}.inset img{height:145px}.clinic{gap:30px}.clinic h2{font-size:36px}.date-card{padding:22px}.values-strip span:last-child,.values-strip i:last-of-type{display:none}}@media(max-width:650px){.announcement{font-size:11px;padding:9px 10px}.announcement span{display:none}.announcement a{margin-left:8px}header{padding:22px 6%;flex-wrap:wrap;gap:20px}.brand{font-size:17px}.mark{font-size:42px}nav{justify-content:space-between;width:100%;font-size:12px;gap:10px;border-top:1px solid var(--line);padding-top:14px}.hero{grid-template-columns:1fr;padding-top:15px;gap:30px;padding-bottom:55px}.hero h1{font-size:50px;letter-spacing:-2.4px}.eyebrow{font-size:9px;letter-spacing:1.5px}.lead{font-size:15px}.hero-art{height:360px;margin-left:20px;margin-right:0}.inset{width:160px}.gym{object-position:center 57%}.hero-note{font-size:11px}.actions{gap:18px}.button{padding:14px 18px;font-size:13px}.text-link{font-size:12px}.values-strip{font-size:9px;letter-spacing:1px;padding:18px 5%;gap:10px}.section{padding:55px 6%}.about,.faq{grid-template-columns:1fr;gap:12px}.large-copy{font-size:18px}.benefits{grid-template-columns:1fr;padding-top:0;gap:15px}.benefits article{padding-top:18px}.benefits h3{margin:10px 0}.benefits p{margin-top:10px}.clinic{grid-template-columns:1fr;gap:30px}.clinic h2{font-size:34px}.clinic-main>p{font-size:15px}.event-details{gap:22px 18px}dd{font-size:13px}.date-card{display:none}.section-heading{display:block}.gallery{grid-template-columns:repeat(2,1fr);gap:10px}.section-heading h2{margin-bottom:12px}.photo span{font-size:10px}.faq h2{font-size:32px}.contact h2{font-size:43px}footer{flex-wrap:wrap}footer p{max-width:180px}footer>a:last-child{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Interior pages */
body.page{background:var(--paper)}
.page header{background:#fff;border-bottom:1px solid var(--line)}
.page nav a[aria-current="page"]{color:var(--blue);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:7px}
.page-main{max-width:1440px;margin:auto}
.page-hero{padding:75px 6% 55px;background:#fff;border-bottom:1px solid var(--line)}
.page-hero h1{font-size:clamp(44px,5.5vw,76px);line-height:1.02;letter-spacing:-3px;margin:0;max-width:850px}
.page-hero .intro{font-size:19px;color:var(--muted);max-width:720px;margin:25px 0 0}
.content-section{padding:65px 6%}
.content-section h2{margin-bottom:15px}
.two-column{display:grid;grid-template-columns:1fr 1fr;gap:55px}
.info-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:35px}
.info-card{background:#fff;border-top:3px solid var(--blue);padding:28px}
.info-card h2,.info-card h3{margin-top:0}
.info-card p{color:var(--muted)}
.coach-list{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:34px}
.coach-card{background:#fff;border:1px solid var(--line);padding:25px 28px}
.coach-card h2{font-size:23px;margin:0 0 8px;letter-spacing:-.5px}
.coach-card a{color:var(--blue);font-size:14px;overflow-wrap:anywhere}
.page-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.page-gallery a{background:#fff;text-decoration:none}
.page-gallery img{width:100%;height:280px;object-fit:cover}
.page-gallery span{display:block;padding:13px 15px;font-size:12px;font-weight:700}
.contact-panel{background:var(--blue);color:#fff;padding:45px;max-width:850px}
.contact-panel .eyebrow{color:#c4d3ff}.contact-panel a:not(.button){color:#fff}
.back-link{display:inline-block;margin-bottom:28px;font-size:13px;font-weight:700;text-decoration:none;color:var(--blue)}
@media(max-width:800px){.info-cards{grid-template-columns:1fr}.page-gallery{grid-template-columns:repeat(2,1fr)}.two-column,.coach-list{grid-template-columns:1fr}.page-hero{padding-top:50px}.page-gallery img{height:220px}}
@media(max-width:500px){.page-gallery{grid-template-columns:1fr}.page-gallery img{height:280px}.contact-panel{padding:30px 22px}}
