:root{--bg:#fff;--surface:#f0f5fa;--blue:#244f88;--text:#222e4a;--muted:#59677a;--orange:#ef7809}body{background:#fff}.header{height:124px;border-color:#dce3ef}.brand{flex-shrink:0}.brand img{display:block;width:113px;height:94px;object-fit:contain}.header nav{color:#354365;font-weight:600}.header-cta{border-color:#244f8840;color:#244f88}.header-cta:hover{background:#f0f5fa}.hero{padding-top:56px;padding-bottom:68px;gap:40px}.hero h1{font-size:clamp(55px,6.3vw,87px);color:#232553}.outline{-webkit-text-stroke:0;color:#2672a6}.hero h2{font-size:27px;line-height:1.3}.hero h2 em{color:#d15e00}.hero-copy strong{color:#232553}.button{background:var(--orange);color:#fff}.button:hover{background:#d45c00}.hero-art{transform:none;gap:10px;margin:0;height:535px}.photo{border-radius:90px 8px 8px 8px}.swimming{border-radius:8px 8px 90px 8px}.photo>span{color:white}.photo:after{background:linear-gradient(0deg,#162d59b0,transparent 70%)}.top-badge{background:#244f88;color:white;transform:none;right:-14px;bottom:42px;box-shadow:0 12px 26px #17315a26}.top-badge strong span{color:#ffad52}.plus{color:#fff;text-shadow:0 2px 20px #17315a80}.ticker{background:#ee7808;color:white}.section-intro h2,.freedom h2{color:#252655}.section-intro h2 span,.freedom h2 span{color:#2370a6}.modality{border-radius:6px;color:white}.modality:before{background:linear-gradient(0deg,#102449 3%,#102449ad 42%,#10244914);border-radius:6px}.activities{background:#f0f5fa}.activity-grid,.activity-grid>div{border-color:#cad5e4}.activity-grid h3{color:#24334d;font-weight:600}.activity-grid>div>span{color:#e26c00}.pool-info{border-color:#c1d2e5;background:white}.pool-info>span{color:#e26c00}.routine>div{border-color:#d8dfeb}.routine>div>span{color:#879ab0}.routine b{color:#25395c}.about{background:#243963;color:white;border:0}.about .eyebrow,.about h2>span{color:#ffb362}.about p:not(.eyebrow){color:#d5dfef}.years>small{color:#d5dfef}.years>strong{color:#ffad52}.contact{background:white}.contact h2>span{color:#2370a6}.location{border-color:#dae2ed}.location .map-link{color:#244f88}.location a:hover{color:#ce5c00}.footer{border-color:#dce3ef}.footer .brand img{width:84px;height:70px}.footer a:hover{color:#d26400}a:focus-visible{outline-color:#ef7809}.hero-note strong{color:#244f88}.eyebrow{color:#244f88}.header nav a:hover{color:#d26400}.hero-art[aria-label]{color:white}@media(max-width:1050px){.hero-art{height:485px}.hero{gap:28px}.header nav{gap:22px}.hero h2{font-size:24px}}@media(max-width:720px){.header{height:102px}.brand img{width:93px;height:78px}.header-cta{font-size:12px}.hero{padding-top:32px;gap:35px}.hero h1{font-size:clamp(52px,12vw,80px)}.hero h2{font-size:25px}.hero-art{height:385px;width:calc(100% - 16px)}.photo{border-top-left-radius:65px}.swimming{border-top-left-radius:8px;border-bottom-right-radius:65px}.top-badge{right:-8px;bottom:30px}.hero .eyebrow{letter-spacing:1px}.about h2{font-size:38px}.footer{gap:22px}.footer>span{order:4}.footer .brand img{width:76px;height:64px}}

.strength,.gym-card{background-image:url('assets/academia-musculacao.jpg')}.swimming,.pool-card{background-image:url('assets/gallery/piscina-atual.webp')}.strength{background-position:45% center}.swimming{background-position:55% center}

.gallery-section{background:#162e58;color:#fff;overflow:hidden}.gallery-section .section{padding-block:92px}.gallery-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:end;margin-bottom:42px}.gallery-heading h2{margin:0;color:#fff}.gallery-heading h2 span{color:#ffad52}.gallery-heading>p{margin:0 0 8px;color:#d7e1ef;max-width:470px}.gallery-section .eyebrow{color:#ffad52}.carousel-shell{position:relative;min-width:0}.carousel-viewport{overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-inline:contain}.carousel-viewport::-webkit-scrollbar{display:none}.carousel-viewport:focus-visible{outline:3px solid #ffad52;outline-offset:8px}.photo-carousel{display:flex;gap:18px}.photo-carousel figure{position:relative;flex:0 0 calc((100% - 36px)/3);aspect-ratio:4/3;margin:0;overflow:hidden;border-radius:6px;background:#102448;scroll-snap-align:start}.photo-carousel img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .45s ease}.photo-carousel figure:hover img{transform:scale(1.025)}.photo-carousel figure:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#0a1c3ad6);pointer-events:none}.photo-carousel figcaption{position:absolute;z-index:1;left:22px;right:18px;bottom:20px;color:white;font-family:'Barlow Condensed','Arial Narrow',Impact,sans-serif;font-size:23px;font-weight:700;line-height:1.1;text-transform:uppercase;letter-spacing:.03em}.carousel-footer{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;margin-top:24px}.carousel-status{margin:0;color:#d7e1ef;font-size:14px}.carousel-dots{display:flex;align-items:center;justify-content:center;gap:9px}.carousel-dot{width:9px;height:9px;padding:0;border:1px solid #d7e1ef;border-radius:50%;background:transparent;cursor:pointer}.carousel-dot[aria-current="true"]{background:#ffad52;border-color:#ffad52}.carousel-actions{display:flex;justify-content:flex-end;gap:10px}.carousel-arrow{display:grid;place-items:center;width:48px;height:48px;border:1px solid #ffffff70;border-radius:50%;background:transparent;color:white;font-size:23px;cursor:pointer;transition:background .2s,border-color .2s}.carousel-arrow:hover:not(:disabled){background:#ffad52;border-color:#ffad52;color:#162e58}.carousel-arrow:disabled{opacity:.32;cursor:not-allowed}.carousel-arrow:focus-visible,.carousel-dot:focus-visible{outline:3px solid #ffad52;outline-offset:3px}

@media(max-width:1050px){.gallery-heading{gap:35px}.photo-carousel figure{flex-basis:calc((100% - 18px)/2)}}
@media(max-width:720px){.gallery-section .section{padding-block:64px}.gallery-heading{grid-template-columns:1fr;gap:4px;margin-bottom:28px}.gallery-heading>p{font-size:16px}.photo-carousel{gap:12px}.photo-carousel figure{flex-basis:100%;aspect-ratio:4/3}.photo-carousel figcaption{left:18px;right:16px;bottom:17px;font-size:21px}.carousel-footer{grid-template-columns:1fr auto;margin-top:18px}.carousel-status{display:none}.carousel-dots{justify-content:flex-start}.carousel-arrow{width:44px;height:44px}}

@media(prefers-reduced-motion:reduce){.photo-carousel img,.carousel-arrow{transition:none}.carousel-viewport{scroll-behavior:auto}}
