:root{--color-bg:#fff;--color-surface:#f2f8fa;--shadow-sm:0 4px 16px rgba(6,42,51,.04);--shadow-md:0 8px 24px rgba(6,42,51,.08);--color-text:rgba(6,42,51,.92);--color-text-soft:rgba(6,42,51,.68);--color-brand:#062a33;--color-brand-light:#0d4453;--color-blue-light:#a8d7e8;--color-accent:#f2c94c;--color-border:rgba(6,42,51,.12);--font-display:"Playfair Display",Georgia,serif;--font-body:"Inter","Segoe UI",sans-serif;--max-width:1160px;--radius:10px;--ease:cubic-bezier(0.2,0.6,0.2,1)}*,:after,:before{box-sizing:border-box}html{scroll-behavior:smooth}body,html{max-width:100%;overflow-x:hidden;width:100%}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:clamp(15px,1.2vw,18px);line-height:1.6;margin:0;-webkit-font-smoothing:antialiased;overflow-wrap:anywhere;word-break:break-word}img,svg,video{height:auto;max-width:100%}img{display:block}a{color:inherit;text-decoration:none}h1,h2,h3{color:var(--color-brand);font-family:var(--font-display);letter-spacing:-.01em;line-height:1.15;margin:0 0 .5em}h1,h2,h3{font-weight:700}h2{font-size:clamp(28px,4vw,48px)}h3{font-family:var(--font-body);font-size:clamp(18px,2vw,22px);font-weight:600;letter-spacing:0;line-height:1.3}p{margin:0 0 1em}.eyebrow{color:var(--color-brand-light);font-family:var(--font-body);font-size:clamp(14px,1vw,16px);font-weight:600;letter-spacing:2px;margin:0 0 16px;text-transform:uppercase}.lead{font-size:clamp(16px,1.2vw,18px);line-height:1.6}.lead,.note{color:var(--color-text-soft);font-weight:400;max-width:52ch}.note{font-size:clamp(15px,1vw,16px)}.section-heading.center{align-items:center;display:flex;flex-direction:column;text-align:center}.section-heading.center .lead{margin-left:auto;margin-right:auto}.section-inner{margin:0 auto;max-width:var(--max-width);padding:0 24px;width:100%}.section{padding:72px 0}#galeria,#servicos{padding:56px 0}.section-alt{background:var(--color-surface);border-bottom:1px solid var(--color-border);border-top:1px solid var(--color-border)}.btn{align-items:center;border:1.5px solid transparent;border-radius:8px;cursor:pointer;display:inline-flex;font-family:var(--font-body);font-size:clamp(15px,1.2vw,17px);font-weight:600;justify-content:center;min-height:46px;padding:0 24px;transition:transform .15s var(--ease),background .15s var(--ease),border-color .15s var(--ease),color .15s var(--ease)}.btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.btn-accent{background:var(--color-accent);color:var(--color-brand)}.btn-accent:hover{background:#f5d876;transform:translateY(-2px)}.btn-outline{background:transparent;border-color:var(--color-blue-light);color:var(--color-brand)}.btn-outline:hover{background:rgba(168,215,232,.25);border-color:var(--color-brand);transform:translateY(-2px)}.btn-ghost{background:hsla(0,0%,100%,.1);border-color:hsla(0,0%,100%,.4);color:#fff}.btn-ghost:hover{background:hsla(0,0%,100%,.18);transform:translateY(-2px)}.btn-block{width:100%}.site-header{background:#fff;border-bottom:1px solid rgba(6,42,51,.06);box-shadow:0 2px 12px rgba(6,42,51,.03);left:0;position:fixed;right:0;top:0;z-index:100}.header-inner{gap:24px;justify-content:space-between;margin:0 auto;max-width:var(--max-width);padding:10px 24px}.brand,.header-inner{align-items:center;display:flex}.brand{gap:10px}.brand-logo{border-radius:6px;height:36px;object-fit:contain;width:36px}.brand-name{color:var(--color-brand);font-family:var(--font-display);font-size:1.05rem;font-weight:800;letter-spacing:-.01em}.main-nav{display:flex;gap:32px}.main-nav a{color:var(--color-text);font-family:var(--font-body);font-size:clamp(15px,1vw,16px);font-weight:500;padding:4px 0;position:relative;transition:color .15s var(--ease)}.main-nav a:hover{color:var(--color-accent)}.main-nav a:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.header-actions{align-items:center;display:flex;gap:12px}.nav-toggle{background:none;border:1px solid var(--color-border);border-radius:6px;color:var(--color-brand);cursor:pointer;display:none;padding:8px}.nav-toggle:focus-visible{outline:2px solid var(--color-accent)}.hero{display:grid;max-width:100%;min-height:100svh;overflow:hidden;padding-top:74px;position:relative;width:100%}.hero-media{background:var(--color-brand);overflow:hidden}.hero-img,.hero-media{inset:0;position:absolute}.hero-img{height:100%;object-fit:cover;opacity:0;transition:opacity 1.5s ease-in-out;width:100%}.hero-img:first-child{opacity:1}.hero-img.active{opacity:1!important}.hero-img.inactive{opacity:0!important}.hero-overlay{background:linear-gradient(rgba(0,20,25,.28),rgba(0,20,25,.42));inset:0;position:absolute}.hero-content{align-items:center;display:flex;justify-content:center;margin:0 auto;max-width:var(--max-width);padding:80px 24px 100px;position:relative;width:100%;z-index:2}.hero-nav{background:hsla(0,0%,100%,.15);border:1px solid hsla(0,0%,100%,.3);border-radius:50%;color:#fff;cursor:pointer;display:grid;font-size:1.2rem;height:50px;place-items:center;position:absolute;top:50%;transform:translateY(-50%);transition:background .15s var(--ease),color .15s var(--ease),border-color .15s var(--ease);width:50px;z-index:10}.hero-nav:focus-visible,.hero-nav:hover{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-brand);outline:none}.hero-nav-prev{left:24px}.hero-nav-next{right:24px}.hero-dots{bottom:32px;display:flex;gap:12px;justify-content:center;left:0;position:absolute;right:0;z-index:10}.hero-dot{background:hsla(0,0%,100%,.4);border:none;border-radius:50%;cursor:pointer;height:10px;padding:0;transition:background .15s var(--ease),transform .15s var(--ease);width:10px}.hero-dot:focus-visible,.hero-dot:hover{background:hsla(0,0%,100%,.8);outline:2px solid var(--color-accent);outline-offset:2px}.hero-dot.active{background:var(--color-accent);transform:scale(1.2)}.hero-plate{align-items:center;display:flex;flex-direction:column;max-width:750px;text-align:center;width:100%}.hero h1{color:var(--color-accent);font-family:var(--font-display);font-size:clamp(36px,6vw,76px);font-weight:700;letter-spacing:.04em;line-height:1.05;margin-bottom:16px;text-shadow:0 4px 16px rgba(0,0,0,.4),0 2px 4px rgba(0,0,0,.2);text-transform:uppercase}.hero-slogan{color:#fff;font-size:clamp(22px,3vw,28px);font-weight:500;line-height:1.3;margin-bottom:14px}.hero-slogan,.hero-subtitle{font-family:var(--font-body)}.hero-subtitle{color:hsla(0,0%,100%,.85);font-size:clamp(17px,2vw,20px);font-weight:400;line-height:1.5;margin:0 auto;max-width:600px}.hero-meta{color:hsla(0,0%,100%,.8);font-family:var(--font-body);font-size:clamp(15px,1vw,16px);letter-spacing:.02em;margin-top:24px}.court-grid{align-items:center;display:grid;gap:48px;grid-template-columns:1fr 1fr}.court-photo img{border-radius:var(--radius);height:420px;object-fit:cover;width:100%}.court-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-sm);margin-top:20px;padding:24px}.court-capacity{color:var(--color-brand-light);font-size:.92rem;font-weight:600}.hours-layout{align-items:center;display:grid;gap:48px;grid-template-columns:1fr 1fr;margin-top:40px}.hours-image-wrap{border-radius:16px;box-shadow:var(--shadow-sm);min-width:0;overflow:hidden;position:relative;width:100%}.hours-image-wrap img{aspect-ratio:4/3;height:100%;object-fit:cover;width:100%}.hours-extra-info{color:var(--color-text-soft);font-family:var(--font-body);font-size:clamp(14px,1vw,15px);line-height:1.6;margin:24px 0 0;text-align:center}.hours-extra-info strong{color:var(--color-brand);font-weight:600}.hours-list-wrap{display:flex;flex-direction:column;gap:8px;margin:0 0 24px;max-width:520px}.hours-row{align-items:baseline;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;padding:14px 20px}.hours-days{color:var(--color-text);font-family:var(--font-body);font-size:clamp(15px,1.2vw,16px);font-weight:500}.hours-divider{display:none}.hours-time{color:var(--color-brand);font-family:var(--font-body);font-size:clamp(15px,1.2vw,16px);font-weight:600}.pricing-cards-grid{align-items:stretch;display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));margin:40px 0;width:100%}.pricing-card{background:#fff;border:1px solid var(--color-border);border-radius:16px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;min-width:0;padding:32px}.pricing-card-title{border-bottom:1px solid rgba(6,42,51,.06);color:var(--color-brand);font-family:var(--font-body);font-size:clamp(18px,1.5vw,20px);font-weight:700;margin-bottom:24px;margin-top:0;padding-bottom:16px;text-align:center}.pricing-card-list{display:flex;flex-direction:column;flex-grow:1;gap:16px}.pricing-card-item{align-items:center;background:var(--color-surface);border:1px solid rgba(6,42,51,.04);border-radius:10px;display:flex;justify-content:space-between;padding:16px 20px}.pricing-card-item[data-highlight=true]{background:rgba(242,201,76,.12);border-color:rgba(242,201,76,.3)}.pricing-card-item[data-highlight=true] .pricing-item-price{color:var(--color-brand);font-weight:800}.pricing-item-name{color:var(--color-text-soft);font-size:clamp(15px,1.2vw,16px);font-weight:500}.pricing-item-price{color:var(--color-brand-light);font-size:clamp(16px,1.3vw,18px);font-weight:700}.services-grid{display:grid;gap:16px;grid-template-columns:1fr 1fr;margin-top:32px}.service-card{align-items:flex-start;background:#fff;border:1px solid rgba(6,42,51,.06);border-radius:16px;box-shadow:0 4px 16px rgba(6,42,51,.02);display:flex;flex-direction:column;min-width:0;padding:20px 24px;transition:transform .3s var(--ease),border-color .3s var(--ease),box-shadow .3s var(--ease)}.service-card:hover{border-color:#00a6b8;box-shadow:0 12px 24px rgba(6,42,51,.06);transform:translateY(-4px)}.service-icon{align-items:center;background:rgba(168,215,232,.15);border-radius:12px;color:#00a6b8;display:flex;height:44px;justify-content:center;margin-bottom:16px;width:44px}.s-icon{display:none;height:22px;width:22px}.service-card:first-child .s-icon-1,.service-card:nth-child(2) .s-icon-2,.service-card:nth-child(3) .s-icon-3,.service-card:nth-child(4) .s-icon-4,.service-card:nth-child(5) .s-icon-5,.service-card:nth-child(6) .s-icon-6,.service-card:nth-child(n+7) .s-icon-1{display:block}.service-header{margin-bottom:8px}.service-header h3{color:var(--color-brand);font-family:var(--font-body);font-size:clamp(18px,1.8vw,20px);font-weight:700;margin:0}.service-card p{color:var(--color-text-soft);font-size:clamp(15px,1vw,16px);font-weight:400;line-height:1.5;margin-bottom:16px}.service-card:first-child .service-desc-normal,.service-desc-first{display:none}.service-card:first-child .service-desc-first{color:var(--color-text-soft);display:block;font-size:clamp(16px,1.2vw,18px);line-height:1.6;margin-bottom:24px}.service-detail-text{display:inline-flex;font-size:14px;padding:6px 14px}.service-detail-link,.service-detail-text{align-items:center;background:rgba(168,215,232,.15);border-radius:8px;color:#00a6b8;font-weight:600;letter-spacing:.01em;margin:auto 0 0}.service-detail-link{display:none;font-size:15px;padding:8px 16px;text-decoration:none;transition:background .15s var(--ease),transform .15s var(--ease)}.service-card:first-child .service-detail-text{display:none}.service-card:first-child .service-detail-link{display:inline-flex}.service-detail-link:hover{background:rgba(168,215,232,.25);cursor:pointer;transform:translateY(-2px)}.service-detail-link:after{content:"→";display:inline-block;margin-left:6px;transition:transform .15s var(--ease)}.service-detail-link:hover:after{transform:translateX(3px)}.shop-grid{display:grid;gap:24px;grid-template-columns:repeat(4,1fr);margin-top:32px}.shop-card{background:#fff;border:1px solid rgba(6,42,51,.06);border-radius:12px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;min-width:0;padding:16px;transition:transform .3s var(--ease),box-shadow .3s var(--ease)}.shop-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.shop-img-wrap{align-items:center;aspect-ratio:1/1;background:var(--color-surface);border-radius:8px;display:flex;justify-content:center;margin-bottom:16px;padding:16px}.shop-img-wrap img{height:100%;object-fit:contain;width:100%}.shop-product-name{color:var(--color-brand);font-family:var(--font-body);font-size:clamp(15px,1.2vw,16px);font-weight:600;margin:0;text-align:center}.cta-band{background:var(--color-brand);color:#fdfefe;padding:64px 0}.cta-inner{align-items:center;display:flex;flex-wrap:wrap;gap:32px;justify-content:space-between}.cta-band h2{color:#fdfefe}.cta-band p{color:#cfe4ea;margin:0}.cta-actions{display:flex;flex-wrap:wrap;gap:14px}.gallery-grid{display:grid;gap:12px;grid-auto-flow:dense;grid-auto-rows:40px;grid-template-columns:repeat(6,1fr);margin-top:32px}.gallery-item{background:none;border:none;border-radius:14px;box-shadow:var(--shadow-sm);cursor:pointer;display:block;grid-column:span 3;grid-row:span 7;height:100%;min-width:0;overflow:hidden;padding:0;transition:box-shadow .3s var(--ease),transform .3s var(--ease);width:100%}.gallery-item:first-child{grid-column:span 3;grid-row:span 14}.gallery-item:nth-child(2),.gallery-item:nth-child(3){grid-column:span 3;grid-row:span 7}.gallery-item:nth-child(4){grid-column:span 2;grid-row:span 7}.gallery-item:nth-child(5){grid-column:span 4;grid-row:span 12}.gallery-item:nth-child(6){grid-column:span 2;grid-row:span 5}.gallery-item:nth-child(7),.gallery-item:nth-child(8){grid-column:span 3;grid-row:span 8}.gallery-item img{height:100%;object-fit:cover;object-position:center 15%;transition:transform .5s var(--ease);width:100%}.gallery-item:first-child img{object-position:center 5%}.gallery-item:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.gallery-item:hover img{transform:scale(1.01)}.gallery-item:focus-visible{outline:3px solid var(--color-accent);outline-offset:4px}.lightbox{align-items:center;display:flex;flex-direction:column;inset:0;justify-content:center;max-width:100%;opacity:0;overflow:hidden;pointer-events:none;position:fixed;transition:opacity .3s var(--ease);width:100%;z-index:1000}.lightbox.open{opacity:1;pointer-events:auto}.lightbox-overlay{backdrop-filter:blur(4px);background:rgba(6,42,51,.95);inset:0;position:absolute}.lightbox-content{align-items:center;display:flex;flex-direction:column;max-height:calc(100vh - 80px);max-width:calc(100vw - 140px);position:relative;z-index:2}.lightbox-content img{border-radius:6px;max-height:80vh;max-width:100%;object-fit:contain}.lightbox-caption{color:#fff;font-size:.95rem;margin-top:16px;text-align:center}.lightbox-close{background:hsla(0,0%,100%,.95);border:none;border-radius:50%;box-shadow:var(--shadow-sm);color:var(--color-brand);cursor:pointer;display:grid;font-size:22px;height:44px;line-height:1;padding:0;place-items:center;position:absolute;right:-60px;top:-16px;transition:transform .2s var(--ease),background .2s var(--ease),box-shadow .2s var(--ease);width:44px;z-index:10}.lightbox-close:hover{background:#fff;box-shadow:var(--shadow-md);transform:scale(1.06)}.lightbox-close:focus-visible{outline:2px solid var(--color-accent);outline-offset:4px}.lightbox-nav{background:hsla(0,0%,100%,.1);border:none;border-radius:50%;color:#fff;cursor:pointer;display:grid;font-size:1.5rem;height:50px;place-items:center;position:absolute;top:50%;transform:translateY(-50%);transition:background .15s,color .15s;width:50px}.lightbox-nav:hover{background:var(--color-accent);color:var(--color-brand)}.lightbox-nav:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.lightbox-prev{left:-60px}.lightbox-next{right:-60px}.contact-grid{display:grid;gap:48px;grid-template-columns:1fr 1fr}.contact-block{margin-top:24px}.contact-list{display:grid;font-size:clamp(15px,1.2vw,17px);gap:12px;list-style:none;margin:0 0 24px;padding:0}.contact-list li{font-weight:400}.contact-list strong{font-weight:600}.contact-list a{border-bottom:1px solid var(--color-blue-light);color:var(--color-brand-light);transition:color .15s var(--ease)}.contact-list a:hover{color:var(--color-brand)}.contact-map-block{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:26px}.map-wrap{border-radius:6px;margin-bottom:20px;max-width:100%;overflow:hidden;width:100%}.map-actions{display:flex;flex-wrap:wrap;gap:12px}.reveal{opacity:0;transform:translateY(20px);transition:opacity .6s var(--ease),transform .6s var(--ease)}.reveal.active{opacity:1;transform:translateY(0)}.site-footer{background:var(--color-brand);color:#fdfefe;padding:40px 0 0}.footer-inner{gap:12px;padding-bottom:16px}.footer-brand,.footer-inner{align-items:flex-start;display:flex;flex-direction:column}.footer-brand{text-align:left}.footer-brand-link{align-items:center;display:flex;gap:10px;margin-bottom:8px;transition:opacity .15s var(--ease)}.footer-brand-link:hover{opacity:.8}.footer-logo{border-radius:6px;height:34px;object-fit:contain;width:34px}.footer-brand-name{color:#fdfefe;font-family:var(--font-body);font-size:clamp(16px,1.2vw,18px);font-weight:700}.footer-tagline{margin:0}.footer-bottom,.footer-tagline{color:#cfe4ea;font-family:var(--font-body);font-size:clamp(14px,1vw,15px)}.footer-bottom{margin:0 auto;max-width:var(--max-width);padding:0 24px 24px;text-align:left}.whatsapp-float{background:#25d366;border-radius:50%;bottom:24px;box-shadow:var(--shadow-md);color:#fff;display:grid;height:60px;place-items:center;position:fixed;right:24px;transition:transform .2s var(--ease),box-shadow .2s var(--ease);width:60px;z-index:90}.whatsapp-float:hover{box-shadow:0 12px 28px rgba(37,211,102,.3);transform:translateY(-4px) scale(1.05)}.mobile-reserve-bar{background:var(--color-surface);border-top:1px solid var(--color-border);bottom:0;display:none;left:0;max-width:100%;padding:12px 16px;position:fixed;right:0;width:100%;z-index:99}@media (max-width:880px){.section-inner{padding:0 16px}.contact-grid,.court-grid,.services-grid{grid-template-columns:1fr}.shop-grid{gap:16px}.gallery-grid,.shop-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid{gap:12px;grid-auto-rows:40px}.gallery-item{grid-column:span 1;grid-row:span 5}.gallery-item:first-child{grid-column:span 2;grid-row:span 12}.gallery-item:nth-child(2),.gallery-item:nth-child(3),.gallery-item:nth-child(4){grid-column:span 1;grid-row:span 5}.gallery-item:nth-child(5){grid-column:span 2;grid-row:span 9}.gallery-item:nth-child(6),.gallery-item:nth-child(7),.gallery-item:nth-child(8){grid-column:span 1;grid-row:span 5}.whatsapp-float{bottom:90px;height:54px;right:16px;width:54px}.main-nav{background:var(--color-surface);border-bottom:1px solid var(--color-border);flex-direction:column;gap:16px;left:0;max-width:100%;opacity:0;overflow-x:hidden;padding:20px 16px;pointer-events:none;position:fixed;right:0;top:66px;transform:translateY(-8px);transition:opacity .15s var(--ease),transform .15s var(--ease);width:100%}.main-nav.open{opacity:1;pointer-events:auto;transform:translateY(0)}.nav-toggle{display:inline-flex}.header-actions .btn-accent{display:none}.hero-nav{font-size:1rem;height:42px;width:42px}.hero-nav-prev{left:16px}.hero-nav-next{right:16px}.hero-dots{bottom:24px}.hero-content{padding:60px 24px 80px}.mobile-reserve-bar{display:block}body{padding-bottom:74px}.hours-layout{gap:32px;grid-template-columns:1fr}.hours-image-wrap img{aspect-ratio:16/9}.pricing-cards-grid{gap:24px;grid-template-columns:1fr;margin:24px 0}.pricing-card{padding:24px}}@media (max-width:560px){.pricing-card-item{align-items:flex-start;flex-direction:column;gap:6px}.shop-grid{gap:12px;grid-template-columns:1fr}.shop-card{align-items:center;flex-direction:row;gap:16px;padding:12px 16px}.shop-img-wrap{flex-shrink:0;height:72px;margin-bottom:0;padding:8px;width:72px}.shop-product-name{text-align:left}.gallery-grid{gap:12px;grid-auto-rows:auto;grid-template-columns:1fr}.gallery-item:nth-child(n){aspect-ratio:4/3;grid-column:span 1;grid-row:auto;height:auto}.gallery-item:first-child{aspect-ratio:4/5}.gallery-item:nth-child(5){aspect-ratio:16/9}.lightbox-content{max-width:calc(100vw - 48px)}.lightbox-nav{font-size:1.2rem;height:40px;width:40px}.lightbox-prev{left:-10px}.lightbox-next{right:-10px}.lightbox-close{position:fixed;right:16px;top:16px}.cta-inner{align-items:flex-start;flex-direction:column}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation:none!important;transition:none!important}}