:root{--blue:#0b4c9c;--blue2:#1767c4;--navy:#082b59;--sky:#eaf4ff;--ink:#12243a;--muted:#66758a;--white:#fff;--green:#1faf62;--line:#dbe6f1;--radius:22px;--shadow:0 18px 50px rgba(7,39,77,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.65}a{color:inherit;text-decoration:none}.container{width:min(1160px,calc(100% - 36px));margin:auto}.topbar{background:var(--navy);color:#dbeaff;font-size:13px}.topbar-inner{min-height:36px;display:flex;align-items:center;justify-content:space-between;gap:20px}.topbar-links{display:flex;gap:18px}.topbar-links a:hover{color:white}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);box-shadow:0 6px 25px rgba(10,52,101,.08);backdrop-filter:blur(8px)}.navbar{height:92px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand img{display:block;width:min(390px,43vw);height:auto}.nav-links{display:flex;align-items:center;gap:22px;font-size:14px;font-weight:700}.nav-links a{padding:12px 0}.nav-links a:hover{color:var(--blue)}.nav-cta{background:var(--blue);color:white!important;padding:11px 17px!important;border-radius:999px}.menu-toggle{display:none;border:0;background:var(--sky);border-radius:12px;font-size:24px;padding:8px 12px;color:var(--navy)}
.hero{position:relative;overflow:hidden;min-height:610px;display:flex;align-items:center;color:#fff;background:linear-gradient(125deg,#061f40 0%,#0b4c9c 55%,#1882d9 100%)}.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 75% 30%,rgba(255,255,255,.18),transparent 25%),linear-gradient(90deg,rgba(2,19,39,.3),transparent)}.hero-shape{position:absolute;border:1px solid rgba(255,255,255,.18);border-radius:50%}.hero-shape-one{width:530px;height:530px;right:-100px;top:-130px}.hero-shape-two{width:330px;height:330px;right:140px;bottom:-210px}.hero-content{position:relative;padding:92px 0}.eyebrow,.section-kicker{display:inline-block;font-size:12px;letter-spacing:.16em;font-weight:800;color:var(--blue);margin-bottom:12px}.eyebrow{color:#bfe0ff}.hero h1{font-family:Montserrat,Inter,sans-serif;font-size:clamp(42px,6vw,72px);line-height:1.02;letter-spacing:-.04em;max-width:860px;margin:0 0 20px}.hero>div.container p,.hero-content>p{max-width:720px;font-size:19px;color:#e7f2ff}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0 38px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:999px;font-weight:800;border:1px solid transparent;transition:.2s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:white;color:var(--blue)}.btn-light{border-color:rgba(255,255,255,.55);color:white;background:rgba(255,255,255,.08)}.hero-stats{display:flex;gap:18px;flex-wrap:wrap}.hero-stats div{min-width:165px;padding:14px 18px;border-radius:16px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18)}.hero-stats strong{display:block;font-size:21px}.hero-stats span{font-size:12px;color:#dceeff}
.section{padding:88px 0}.section-soft{background:#f4f8fc}.split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.split-reverse{grid-template-columns:.9fr 1.1fr}.section h2{font-family:Montserrat,Inter,sans-serif;font-size:clamp(32px,4vw,48px);line-height:1.12;letter-spacing:-.035em;margin:0 0 22px}.section p{color:var(--muted)}.text-link{display:inline-block;margin-top:10px;color:var(--blue);font-weight:800}.club-highlight{position:relative;min-height:360px;padding:44px;border-radius:28px;background:linear-gradient(145deg,#0b4c9c,#082b59);color:white;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;box-shadow:var(--shadow)}.club-highlight:before{content:"";position:absolute;width:330px;height:330px;border-radius:50%;border:1px solid rgba(255,255,255,.16);right:-120px;top:-130px}.highlight-mark{position:absolute;top:40px;right:45px;font-family:Montserrat;font-size:88px;font-weight:800;color:rgba(255,255,255,.1)}.club-highlight small{color:#bfe0ff;font-weight:800;letter-spacing:.13em}.club-highlight h3{font-size:29px;line-height:1.15;margin:8px 0}.club-highlight p{color:#d9eaff;margin-bottom:0}.section-heading{max-width:760px;margin-bottom:38px}.cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.feature-card{background:white;padding:28px;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 10px 28px rgba(7,39,77,.05)}.feature-card .icon{font-size:30px}.feature-card h3{margin:12px 0 8px}.feature-card p{font-size:14px;margin:0}.sports-visual{min-height:390px;border-radius:28px;background:linear-gradient(145deg,#082b59,#1767c4);position:relative;display:flex;align-items:flex-end;padding:32px;overflow:hidden}.sports-visual:before{content:"";position:absolute;inset:35px;border:2px solid rgba(255,255,255,.14);border-radius:50%}.sports-number{position:absolute;right:-14px;top:40px;font-family:Montserrat;font-size:110px;font-weight:800;color:rgba(255,255,255,.08);transform:rotate(90deg)}.sports-badge{position:relative;color:white;font-weight:800;background:rgba(255,255,255,.12);padding:12px 18px;border-radius:999px}.pill-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:25px}.pill-row span{background:var(--sky);color:var(--blue);padding:8px 14px;border-radius:999px;font-weight:800;font-size:13px}.section-dark{background:var(--navy);color:white}.heading-light .section-kicker{color:#8cc8ff}.heading-light p{color:#bed1e5}.champ-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.champ-card{padding:30px;border-radius:22px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12)}.champ-card small{color:#9ed2ff;font-weight:800}.champ-card h3{font-size:28px;margin:6px 0}.champ-card p{color:#c7d8e8}.champ-card span{font-weight:800;color:#9ed2ff}
.gallery-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;grid-template-rows:220px 220px;gap:14px}.gallery-photo{position:relative;border-radius:20px;overflow:hidden;background:linear-gradient(145deg,#0b4c9c,#66a7df);display:flex;align-items:flex-end;padding:20px;color:white;font-weight:800}.gallery-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(2,20,42,.65),transparent 60%)}.gallery-photo span{position:relative;z-index:2}.gallery-one{grid-row:1/3;background:linear-gradient(145deg,#0f5bb2,#7ac5f5)}.gallery-two{background:linear-gradient(145deg,#0b365d,#2872ad)}.gallery-three{background:linear-gradient(145deg,#376d89,#78b18c)}.gallery-four{grid-column:2/4;background:linear-gradient(145deg,#1e6f69,#7cad73)}.center{text-align:center;margin-top:28px}.btn-outline{border-color:var(--blue);color:var(--blue)}.hours-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.hours-card{background:white;border:1px solid var(--line);border-radius:22px;padding:30px;box-shadow:0 10px 28px rgba(7,39,77,.05)}.hours-card h3{color:var(--blue);font-size:24px;margin-top:0}.hours-card p{margin:7px 0}.associate{padding:72px 0;background:linear-gradient(125deg,#0b4c9c,#082b59);color:white}.associate-inner{display:flex;align-items:center;justify-content:space-between;gap:50px}.associate h2{font-family:Montserrat;font-size:clamp(32px,4vw,48px);line-height:1.1;margin:0 0 12px;max-width:760px}.associate p{color:#dbeaff;max-width:700px}.kicker-white{color:#aad7ff}.associate-points{display:flex;gap:16px;flex-wrap:wrap;color:#dbeaff;font-weight:700;font-size:14px}.btn-whatsapp{background:var(--green);color:#fff;white-space:nowrap}.footer{background:#051a34;color:#b8cbe0;padding:55px 0 20px}.footer-grid{display:grid;grid-template-columns:1.25fr 1fr .65fr;gap:45px}.footer-logo{width:min(360px,100%);filter:brightness(1.2)}.footer h3{color:#fff}.footer a:hover{color:white}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:35px;padding-top:18px;font-size:13px}.whatsapp-float{position:fixed;right:20px;bottom:20px;background:var(--green);color:white;padding:13px 17px;border-radius:999px;font-weight:800;z-index:60;box-shadow:0 12px 28px rgba(0,0,0,.22)}
@media(max-width:980px){.topbar{display:none}.navbar{height:78px}.brand img{width:290px}.menu-toggle{display:block}.nav-links{display:none;position:absolute;top:78px;left:18px;right:18px;background:white;padding:18px;border-radius:18px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch;gap:2px}.nav-links.is-open{display:flex}.nav-links a{padding:10px 12px}.split,.split-reverse{grid-template-columns:1fr}.cards-grid,.champ-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:220px 220px 220px}.gallery-one{grid-row:auto;grid-column:1/3}.gallery-four{grid-column:1/3}.associate-inner{align-items:flex-start;flex-direction:column}}
@media(max-width:640px){.container{width:min(100% - 26px,1160px)}.brand img{width:245px;max-width:72vw}.hero{min-height:580px}.hero-content{padding:72px 0}.hero h1{font-size:42px}.hero-content>p{font-size:17px}.hero-stats div{min-width:calc(50% - 10px)}.section{padding:68px 0}.cards-grid,.champ-grid,.hours-grid,.footer-grid{grid-template-columns:1fr}.club-highlight{padding:30px;min-height:330px}.gallery-grid{display:grid;grid-template-columns:1fr;grid-template-rows:repeat(4,190px)}.gallery-one,.gallery-four{grid-column:auto}.associate{padding:58px 0}.btn-whatsapp{width:100%}.whatsapp-float{font-size:13px;right:12px;bottom:12px}.footer-logo{max-width:300px}}

/* ===== V3: BANNER + ASSOCIACAO ===== */
.hero-slider{position:relative;min-height:610px;overflow:hidden;background:#082b59;color:#fff}.hero-slide{position:absolute;inset:0;display:flex;align-items:center;opacity:0;visibility:hidden;transition:opacity .65s ease,visibility .65s}.hero-slide.is-active{opacity:1;visibility:visible}.hero-slide-one{background:linear-gradient(125deg,#061f40 0%,#0b4c9c 58%,#1882d9 100%)}.hero-slide-two{background:linear-gradient(125deg,#06233e 0%,#126d81 55%,#2f8a6d 100%)}.hero-slide-three{background:linear-gradient(125deg,#0b2f62 0%,#195da9 55%,#0b4c9c 100%)}.hero-slider .hero-content{padding:92px 0;z-index:2}.hero-slider .hero-content>p{max-width:720px;font-size:19px;color:#e7f2ff}.hero-slider h1{font-family:Montserrat,Inter,sans-serif;font-size:clamp(42px,6vw,72px);line-height:1.02;letter-spacing:-.04em;max-width:900px;margin:0 0 20px}.hero-arrow{position:absolute;z-index:5;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:rgba(0,0,0,.16);color:white;font-size:34px;cursor:pointer}.hero-prev{left:18px}.hero-next{right:18px}.hero-dots{position:absolute;z-index:5;bottom:24px;left:50%;transform:translateX(-50%);display:flex;gap:9px}.hero-dots button{width:10px;height:10px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.45);cursor:pointer}.hero-dots button.is-active{width:28px;border-radius:999px;background:white}
.associate-hero{padding:72px 0;background:linear-gradient(125deg,#082b59,#0b4c9c);color:white}.associate-hero h1{font:800 clamp(38px,5vw,58px)/1.05 Montserrat,Inter,sans-serif;margin:0 0 12px}.associate-hero p{font-size:18px;color:#dbeaff;margin:0}.associate-page{max-width:1000px}.plan-choice{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:-34px 0 34px;position:relative;z-index:2}.plan-card{text-align:left;border:2px solid var(--line);background:white;border-radius:24px;padding:28px;cursor:pointer;position:relative;box-shadow:var(--shadow);font:inherit;color:var(--ink);transition:.2s}.plan-card:hover,.plan-card.is-selected{border-color:var(--blue);transform:translateY(-3px)}.plan-card.is-selected{box-shadow:0 18px 50px rgba(11,76,156,.18)}.plan-card small{color:var(--blue);font-weight:800;letter-spacing:.12em}.plan-card h2{font-size:30px;margin:5px 0 12px}.plan-price{display:flex;align-items:baseline;gap:8px;margin:8px 0 14px}.plan-price strong{font-size:27px;color:var(--navy)}.plan-price span{font-size:13px;color:var(--muted)}.plan-card p{margin:0 0 18px;color:var(--muted)}.plan-action{font-weight:800;color:var(--blue)}.plan-check{position:absolute;right:22px;top:22px;width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:#eaf3fb;color:#88a2bb}.plan-card.is-selected .plan-check{background:var(--blue);color:white}.association-form{border:1px solid var(--line);border-radius:24px;background:white;padding:32px;box-shadow:0 14px 38px rgba(7,39,77,.07)}.form-progress{display:flex;align-items:center;margin-bottom:35px}.progress-step{display:flex;align-items:center;gap:9px;color:#8a98a8}.progress-step span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#edf3f8;font-weight:800}.progress-step strong{font-size:13px}.progress-step.is-active{color:var(--blue)}.progress-step.is-active span{background:var(--blue);color:white}.progress-line{height:2px;background:#e2eaf2;flex:1;margin:0 12px}.form-step{display:none}.form-step.is-active{display:block}.form-section-title{margin-bottom:25px}.form-section-title small{font-weight:800;color:var(--blue);letter-spacing:.11em}.form-section-title h2{font-size:30px;margin:4px 0}.form-section-title p{margin:0;color:var(--muted)}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.field{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:800;color:#35475a}.field-wide{grid-column:1/-1}.field input,.field select{width:100%;height:48px;border:1px solid #cfdbe7;border-radius:12px;padding:0 13px;font:500 16px Inter,Arial,sans-serif;color:var(--ink);background:#fff;outline:none}.field input:focus,.field select:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(11,76,156,.1)}.form-actions{display:flex;justify-content:space-between;gap:12px;margin-top:28px}.btn-form,.btn-small{border:0;border-radius:999px;background:var(--blue);color:white;font-weight:800;padding:13px 22px;cursor:pointer}.btn-form-secondary{background:#edf3f8;color:var(--navy)}.btn-submit{background:var(--green)}.dependents-block{background:#f6f9fc;border:1px solid var(--line);border-radius:18px;padding:20px;margin-bottom:24px}.dependents-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:15px}.dependents-head h3{margin:0}.dependents-head p{margin:3px 0 0;color:var(--muted);font-size:13px}.dependent-row{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:12px;align-items:end;padding:14px 0;border-top:1px solid #e1e9f1}.dependent-row .field-wide{grid-column:auto}.remove-dependent{width:42px;height:42px;border:0;border-radius:10px;background:#fee9e9;color:#a12222;font-size:22px;cursor:pointer}.proposal-summary{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:24px}.proposal-summary>div{padding:16px;border-radius:14px;background:#f5f8fb}.proposal-summary small{display:block;color:var(--muted);font-weight:800;font-size:10px;letter-spacing:.1em}.proposal-summary strong{display:block;margin-top:4px}.human-check{display:grid;grid-template-columns:1.4fr .6fr;gap:24px;align-items:center;padding:20px;border:1px solid #cfe0f0;background:#f7fbff;border-radius:18px;margin-bottom:20px}.human-check p{margin:4px 0 0;color:var(--muted);font-size:13px}.math-field strong{font-size:18px;color:var(--blue)}.check-row{display:flex;align-items:flex-start;gap:10px;margin:14px 0;color:#3f5060;font-size:14px}.check-row input{margin-top:4px}.secure-note{text-align:center;color:var(--muted);font-size:12px;margin:16px 0 0}.honeypot{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}.form-alert{padding:16px 20px;border-radius:14px;margin-bottom:22px}.form-alert-error{background:#fff2f2;border:1px solid #efbaba;color:#8a2424}.form-alert ul{margin:8px 0 0;padding-left:20px}.success-page{padding:80px 0;background:#f4f8fc;min-height:620px}.success-card{max-width:720px;text-align:center;background:white;border:1px solid var(--line);border-radius:28px;padding:48px;box-shadow:var(--shadow)}.success-icon{width:72px;height:72px;margin:0 auto 20px;display:grid;place-items:center;border-radius:50%;background:#e5f8ed;color:var(--green);font-size:38px;font-weight:800}.success-card h1{font:800 40px/1.1 Montserrat,Inter,sans-serif;margin:8px 0 12px}.protocol-box{margin:24px auto;padding:18px;border-radius:16px;background:#edf5fc;max-width:420px}.protocol-box small{display:block;color:var(--muted);font-weight:800;letter-spacing:.1em}.protocol-box strong{display:block;color:var(--blue);font-size:28px}.btn-whatsapp-large{display:inline-flex;margin:16px 0;padding:15px 25px;border-radius:999px;background:var(--green);color:white;font-weight:800}.back-home{display:block;color:var(--blue);font-weight:700;margin-top:12px}
@media(max-width:760px){.hero-arrow{display:none}.plan-choice{grid-template-columns:1fr}.association-form{padding:22px}.form-progress strong{display:none}.form-grid{grid-template-columns:1fr}.field-wide{grid-column:auto}.dependent-row{grid-template-columns:1fr}.proposal-summary,.human-check{grid-template-columns:1fr}.success-card{padding:30px 20px}.associate-form-section{padding-top:60px}}


/* ===== V3.1: CRÉDITO PRUDENSITES ===== */
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.developer-credit{display:flex;align-items:center;justify-content:flex-end;gap:10px;color:#91aac3;white-space:nowrap}
.developer-credit>span{font-size:12px}
.developer-credit a{display:inline-flex;align-items:center}
.developer-credit img{display:block;width:118px;max-height:30px;object-fit:contain}
@media(max-width:640px){.footer-bottom{align-items:flex-start;flex-direction:column}.developer-credit{justify-content:flex-start}}


/* ===== V3.2: WHATSAPP SAN FERNANDO ===== */
.whatsapp-float{position:fixed;right:20px;bottom:20px;z-index:60;display:inline-flex;align-items:center;gap:10px;min-height:58px;padding:7px 17px 7px 7px;border-radius:999px;background:#25d366;color:#fff;font-weight:800;box-shadow:0 12px 28px rgba(0,0,0,.22);transition:transform .2s ease,box-shadow .2s ease}
.whatsapp-float:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(0,0,0,.26);color:#fff}
.whatsapp-avatar{width:46px;height:46px;border-radius:50%;background:#fff;display:grid;place-items:center;overflow:hidden;flex:0 0 46px}
.whatsapp-avatar img{width:38px;height:38px;object-fit:contain;display:block}
.whatsapp-copy{display:flex;flex-direction:column;line-height:1.08;text-align:left}
.whatsapp-copy strong{font-size:14px}
.whatsapp-copy small{font-size:10px;font-weight:600;margin-top:4px;color:#fff}
@media(max-width:640px){.whatsapp-float{right:12px;bottom:12px;min-height:54px;padding:6px 14px 6px 6px}.whatsapp-avatar{width:42px;height:42px;flex-basis:42px}.whatsapp-avatar img{width:35px;height:35px}.whatsapp-copy strong{font-size:13px}.whatsapp-copy small{font-size:9px}}

/* =========================================================
   V3.3 — ASSOCIAÇÃO / UX REFINADA
========================================================= */
.associate-form-section{background:#f5f8fc;padding:48px 0 86px}
.associate-page{max-width:1060px}
.associate-intro{max-width:760px;margin:0 auto 28px;text-align:center}
.associate-intro h2{font:800 clamp(30px,4vw,42px)/1.1 Montserrat,Inter,sans-serif;margin:0 0 10px;color:var(--navy)}
.associate-intro p{margin:0;color:var(--muted);font-size:16px}
.plan-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:-74px auto 28px;position:relative;z-index:3;max-width:920px}
.plan-card{appearance:none;-webkit-appearance:none;display:flex;flex-direction:column;align-items:flex-start;min-height:245px;text-align:left;border:2px solid #dbe5ef;background:#fff;border-radius:26px;padding:28px 30px 26px;cursor:pointer;position:relative;box-shadow:0 16px 38px rgba(7,39,77,.09);font:inherit;color:var(--ink);transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease,background .2s ease;overflow:hidden}
.plan-card:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:transparent;transition:.2s}
.plan-card:hover{border-color:#b6cde5;transform:translateY(-2px);box-shadow:0 20px 48px rgba(7,39,77,.12)}
.plan-card.is-selected{border-color:var(--blue);background:linear-gradient(180deg,#fff 0%,#f4f9ff 100%);box-shadow:0 20px 52px rgba(11,76,156,.16)}
.plan-card.is-selected:before{background:var(--blue)}
.plan-card small{color:var(--blue);font-weight:800;letter-spacing:.14em;font-size:11px}
.plan-card h2{font:800 34px/1.05 Montserrat,Inter,sans-serif;margin:9px 0 14px;color:var(--navy)}
.plan-price{display:flex;align-items:baseline;gap:7px;margin:0 0 14px}.plan-price strong{font-size:25px;color:var(--blue)}.plan-price span{font-size:12px;color:var(--muted)}
.plan-card p{margin:0 0 18px;color:#617287;font-size:14px;line-height:1.55;max-width:92%}
.plan-action{margin-top:auto;display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 17px;border-radius:999px;background:#eef5fc;color:var(--blue);font-size:13px;font-weight:800;transition:.2s}
.plan-card.is-selected .plan-action{background:var(--blue);color:#fff}
.plan-check{position:absolute;right:22px;top:22px;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#edf3f8;color:#8ca0b5;font-weight:900;border:1px solid #dce7f1}
.plan-card.is-selected .plan-check{background:var(--blue);color:#fff;border-color:var(--blue)}

.association-form{max-width:920px;margin:0 auto;border:1px solid #dce6ef;border-radius:28px;background:#fff;padding:34px 38px 38px;box-shadow:0 18px 50px rgba(7,39,77,.08)}
.form-progress{display:grid;grid-template-columns:auto 1fr auto 1fr auto;align-items:center;margin:0 0 34px;padding:0 4px}
.progress-step{display:flex;align-items:center;gap:10px;color:#8998a8;min-width:0}.progress-step span{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#edf3f8;font-weight:800;flex:0 0 36px;border:1px solid #dfe8f0}.progress-step strong{font-size:12px;white-space:nowrap}.progress-step.is-active{color:var(--blue)}.progress-step.is-active span{background:var(--blue);color:#fff;border-color:var(--blue);box-shadow:0 6px 16px rgba(11,76,156,.2)}.progress-line{height:2px;background:#e2eaf2;margin:0 14px;border-radius:3px}
.form-step{display:none}.form-step.is-active{display:block;animation:sfFade .22s ease}@keyframes sfFade{from{opacity:.4;transform:translateY(5px)}to{opacity:1;transform:none}}
.form-section-title{margin:0 0 26px;padding-bottom:20px;border-bottom:1px solid #edf1f5}.form-section-title small{display:inline-block;font-weight:800;color:var(--blue);letter-spacing:.11em;font-size:11px;margin-bottom:5px}.form-section-title h2{font:800 clamp(28px,3vw,36px)/1.1 Montserrat,Inter,sans-serif;margin:0 0 8px;color:var(--navy)}.form-section-title p{margin:0;color:var(--muted);font-size:14px}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px 20px}.field{display:flex!important;flex-direction:column!important;gap:8px!important;font-size:13px!important;font-weight:700!important;color:#32465b!important;min-width:0}.field-wide{grid-column:1/-1}.field input,.field select,.field textarea{display:block!important;width:100%!important;min-width:0;height:54px!important;border:1px solid #d2dde8!important;border-radius:14px!important;padding:0 15px!important;font:500 16px Inter,Arial,sans-serif!important;color:var(--ink)!important;background:#fff!important;outline:none!important;box-shadow:0 1px 2px rgba(8,43,89,.02)!important;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease!important}.field input:hover,.field select:hover{border-color:#b9c9d8!important}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--blue)!important;box-shadow:0 0 0 4px rgba(11,76,156,.10)!important;background:#fbfdff!important}.field input::placeholder{color:#9ba9b7;font-weight:400}
.form-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:30px;padding-top:22px;border-top:1px solid #edf1f5}.btn-form,.btn-small{appearance:none;border:0;border-radius:14px;background:var(--blue);color:#fff;font-weight:800;padding:0 24px;min-height:50px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.btn-form:hover,.btn-small:hover{transform:translateY(-1px);box-shadow:0 10px 22px rgba(11,76,156,.18)}.btn-form-secondary{background:#eef3f8;color:var(--navy)}.btn-form-secondary:hover{background:#e4edf5;box-shadow:none}.btn-submit{background:#159447}.btn-submit:hover{background:#11813d;box-shadow:0 10px 22px rgba(21,148,71,.2)}
.dependents-block{background:#f7faff;border:1px solid #dce8f3;border-radius:20px;padding:22px;margin:0 0 24px}.dependents-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:12px}.dependents-head h3{font:800 21px/1.2 Montserrat,Inter,sans-serif;margin:0;color:var(--navy)}.dependents-head p{margin:5px 0 0;color:var(--muted);font-size:13px}.btn-small{min-height:42px;padding:0 16px;border-radius:12px;font-size:12px}.dependent-row{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:12px;align-items:end;padding:16px 0;border-top:1px solid #e2ebf3}.dependent-row .field-wide{grid-column:auto}.remove-dependent{width:46px;height:46px;border:0;border-radius:12px;background:#fff0f0;color:#a12222;font-size:22px;cursor:pointer;border:1px solid #f2d1d1}
.proposal-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:24px}.proposal-summary>div{padding:18px;border-radius:16px;background:#f5f8fb;border:1px solid #e7edf3}.proposal-summary small{display:block;color:var(--muted);font-weight:800;font-size:10px;letter-spacing:.1em}.proposal-summary strong{display:block;margin-top:5px;color:var(--navy);overflow-wrap:anywhere}
.human-check{display:grid;grid-template-columns:1.25fr .75fr;gap:24px;align-items:center;padding:22px;border:1px solid #cfe0f0;background:#f7fbff;border-radius:20px;margin-bottom:22px}.human-check>div>strong{font-size:16px;color:var(--navy)}.human-check p{margin:5px 0 0;color:var(--muted);font-size:13px}.math-field strong{font-size:19px;color:var(--blue)}
.check-row{display:flex;align-items:flex-start;gap:11px;margin:15px 0;color:#415367;font-size:14px;line-height:1.5;cursor:pointer}.check-row input{appearance:none;width:20px;height:20px;min-width:20px;border:1.5px solid #b8c7d6;border-radius:6px;margin:1px 0 0;background:#fff;display:grid;place-content:center}.check-row input:checked{background:var(--blue);border-color:var(--blue)}.check-row input:checked:after{content:"✓";color:#fff;font-size:13px;font-weight:900}.secure-note{text-align:center;color:var(--muted);font-size:12px;margin:17px 0 0;padding:12px 16px;background:#f7f9fb;border-radius:12px}.honeypot{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}

/* WhatsApp — mesmo conceito visual do KenkoVet */
.whatsapp-float{position:fixed!important;right:22px!important;bottom:22px!important;z-index:80!important;display:inline-flex!important;align-items:center!important;gap:10px!important;min-height:62px!important;padding:7px 18px 7px 7px!important;border-radius:999px!important;background:#20c968!important;color:#fff!important;font-weight:800!important;box-shadow:0 14px 32px rgba(0,0,0,.23)!important;transition:transform .2s ease,box-shadow .2s ease!important;line-height:1!important}.whatsapp-float:hover{transform:translateY(-2px)!important;box-shadow:0 18px 38px rgba(0,0,0,.28)!important;color:#fff!important}.whatsapp-avatar{width:48px!important;height:48px!important;border-radius:50%!important;background:#fff!important;display:grid!important;place-items:center!important;overflow:hidden!important;flex:0 0 48px!important;border:2px solid rgba(255,255,255,.75)!important}.whatsapp-avatar img{width:42px!important;height:42px!important;object-fit:contain!important;display:block!important}.whatsapp-copy{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;text-align:left!important;line-height:1.05!important}.whatsapp-copy strong{font-size:14px!important;line-height:1.1!important;color:#fff!important}.whatsapp-copy small{font-size:10px!important;font-weight:600!important;margin-top:5px!important;color:#fff!important;opacity:.98!important;white-space:nowrap!important}

@media(max-width:760px){.associate-form-section{padding:38px 0 74px}.plan-choice{grid-template-columns:1fr;margin:-48px auto 22px}.plan-card{min-height:auto;padding:24px}.association-form{padding:24px 20px;border-radius:22px}.form-progress{grid-template-columns:auto 1fr auto 1fr auto;margin-bottom:28px}.progress-step strong{display:none}.progress-line{margin:0 8px}.form-grid{grid-template-columns:1fr}.field-wide{grid-column:auto}.dependent-row{grid-template-columns:1fr}.proposal-summary,.human-check{grid-template-columns:1fr}.form-actions{flex-wrap:wrap}.btn-form{flex:1;min-width:135px}.dependents-head{align-items:flex-start;flex-direction:column}.whatsapp-float{right:12px!important;bottom:12px!important;min-height:57px!important;padding:6px 14px 6px 6px!important}.whatsapp-avatar{width:45px!important;height:45px!important;flex-basis:45px!important}.whatsapp-avatar img{width:39px!important;height:39px!important}.whatsapp-copy strong{font-size:13px!important}.whatsapp-copy small{font-size:9px!important}}

/* =========================================================
   DAY USE
   ========================================================= */

.dayuse-benefits {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
    margin: 35px 0;
}

.dayuse-benefit {
    padding: 25px;
    border-radius: 18px;
    background: #fff;
    border: 1px solid #e0e7ef;
}

.dayuse-benefit strong {
    display: block;
    margin-bottom: 10px;
    font-size: 20px;
    color: #07346b;
}

.dayuse-notice {
    padding: 25px;
    border-radius: 18px;
    background: #f1f7ff;
    border: 1px solid #bcd5f0;
}

.dayuse-notice strong {
    display: block;
    margin-bottom: 8px;
    font-size: 21px;
    color: #07346b;
}

.chale-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 22px;
    margin-top: 25px;
}

.chale-card {
    overflow: hidden;
    background: #fff;
    border: 1px solid #e0e7ef;
    border-radius: 20px;
}

.chale-image-placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 180px;
    background: #edf4fb;
    font-size: 70px;
}

.chale-content {
    padding: 22px;
}

.chale-content h3 {
    color: #07346b;
}

.chale-content .btn-form {
    margin-top: 18px;
}

.dayuse-total {
    margin: 9px 0;
    font-size: 30px;
    line-height: 1;
    font-weight: 800;
    color: #0b5fb8;
}

.association-form textarea {
    width: 100%;
    padding: 14px 16px;
    border: 1px solid #d7dde5;
    border-radius: 14px;
    font: inherit;
    resize: vertical;
}

@media (max-width: 760px) {

    .dayuse-benefits,
    .chale-grid {
        grid-template-columns: 1fr;
    }

}

/* =========================================================
   CABECALHO EM DUAS LINHAS - V3.5
   ========================================================= */

.club-brand-row {
    background: #ffffff;
    border-bottom: 1px solid #eef1f5;
}

.club-brand-inner {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 92px;
    padding-top: 14px;
    padding-bottom: 14px;
}

.brand-full {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
}

.brand-full img {
    display: block;
    width: auto;
    max-width: 470px;
    max-height: 68px;
    object-fit: contain;
}

.club-menu-row {
    position: relative;
    z-index: 100;
    background: #ffffff;
    border-bottom: 1px solid #e6ebf1;
    box-shadow: 0 4px 14px rgba(0,0,0,.04);
}

.club-menu-inner {
    min-height: 62px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.nav-links-centered {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 28px;
}

.nav-links-centered a {
    white-space: nowrap;
}

.nav-links-centered .nav-cta {
    padding: 11px 22px;
    border-radius: 28px;
}

@media (max-width: 1050px) {

    .nav-links-centered {
        gap: 17px;
    }

    .nav-links-centered a {
        font-size: 14px;
    }
}

@media (max-width: 850px) {

    .club-brand-inner {
        min-height: 76px;
    }

    .brand-full img {
        max-width: 330px;
        max-height: 58px;
    }

    .club-menu-inner {
        justify-content: flex-end;
        padding-top: 9px;
        padding-bottom: 9px;
    }

    .nav-links-centered {
        justify-content: flex-start;
    }
}

@media (max-width: 520px) {

    .brand-full img {
        max-width: 285px;
    }
}


/* =========================================================
   CEP E PARENTESCO V3.6
   ========================================================= */

.cep-auto-status {
    display: block;
    min-height: 18px;
    margin-top: 7px;
    font-size: 12px;
    font-weight: 600;
}

.cep-auto-status.consultando {
    color: #1769aa;
}

.cep-auto-status.sucesso {
    color: #138a42;
}

.cep-auto-status.erro {
    color: #b42318;
}

select[name^="dependentes"][name$="[parentesco]"] {
    width: 100%;
    min-height: 54px;
    padding: 0 14px;
    border: 1px solid #cbd8e6;
    border-radius: 14px;
    background: #ffffff;
    color: #102a43;
    font: inherit;
    cursor: pointer;
}

select[name^="dependentes"][name$="[parentesco]"]:focus {
    border-color: #0b5fb8;
    outline: none;
    box-shadow: 0 0 0 3px rgba(11,95,184,.10);
}


/* =========================================================
   BANNER HOME - IMAGEM FIXA + TEXTO ROTATIVO V4.2
   ========================================================= */

.sf-home-banner {
    position: relative;
    min-height: 540px;
    display: flex;
    align-items: center;
    overflow: hidden;

    background-image:
        url('/images/banner-san-fernando.jpg');

    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.sf-banner-overlay {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            90deg,
            rgba(3, 34, 72, .84) 0%,
            rgba(3, 49, 97, .66) 42%,
            rgba(3, 49, 97, .22) 72%,
            rgba(3, 49, 97, .08) 100%
        );
}

.sf-banner-content {
    position: relative;
    z-index: 2;
    width: 100%;
    min-height: 430px;
    display: flex;
    align-items: center;
}

.sf-banner-slide {
    position: absolute;
    width: min(690px, 90%);
    opacity: 0;
    visibility: hidden;
    transform: translateY(18px);
    transition:
        opacity .8s ease,
        transform .8s ease,
        visibility .8s;
}

.sf-banner-slide.is-active {
    position: relative;
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.sf-banner-kicker {
    display: inline-block;
    margin-bottom: 13px;

    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2px;
    color: #d9ecff;
}

.sf-banner-slide h1,
.sf-banner-slide h2 {
    margin: 0 0 18px;

    max-width: 680px;

    font-family: 'Montserrat', sans-serif;
    font-size: clamp(38px, 5vw, 64px);
    line-height: 1.03;
    color: #ffffff;
}

.sf-banner-slide p {
    max-width: 590px;
    margin: 0 0 27px;

    font-size: 19px;
    line-height: 1.55;
    color: rgba(255,255,255,.94);
}

.sf-banner-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 50px;
    padding: 0 25px;

    border-radius: 30px;
    background: #ffffff;

    color: #0755a6;
    font-weight: 800;
    text-decoration: none;

    transition:
        transform .2s ease,
        box-shadow .2s ease;
}

.sf-banner-button:hover {
    transform: translateY(-2px);

    box-shadow:
        0 8px 22px rgba(0,0,0,.18);
}

.sf-banner-dots {
    position: absolute;
    z-index: 3;

    left: 50%;
    bottom: 25px;

    display: flex;
    gap: 9px;

    transform: translateX(-50%);
}

.sf-banner-dots button {
    width: 10px;
    height: 10px;
    padding: 0;

    border: 0;
    border-radius: 50%;

    background: rgba(255,255,255,.45);

    cursor: pointer;
    transition: .25s;
}

.sf-banner-dots button.is-active {
    width: 28px;
    border-radius: 8px;
    background: #ffffff;
}

@media (max-width: 768px) {

    .sf-home-banner {
        min-height: 500px;
        background-position: center;
    }

    .sf-banner-overlay {
        background:
            rgba(2, 37, 78, .70);
    }

    .sf-banner-content {
        min-height: 410px;
    }

    .sf-banner-slide {
        width: calc(100% - 36px);
    }

    .sf-banner-slide h1,
    .sf-banner-slide h2 {
        font-size: 38px;
    }

    .sf-banner-slide p {
        font-size: 17px;
    }

}


/* =========================================================
   BANNER SAN FERNANDO - AJUSTE FINAL
   ========================================================= */

.sf-home-banner {
    min-height: 560px;
    background-image: url('/images/banner-san-fernando.jpg');
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

.sf-banner-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            90deg,
            rgba(3, 34, 72, .82) 0%,
            rgba(3, 45, 88, .67) 34%,
            rgba(3, 45, 88, .35) 58%,
            rgba(3, 45, 88, .08) 82%,
            rgba(3, 45, 88, 0) 100%
        );
}

.sf-banner-content {
    min-height: 460px;
}

.sf-banner-slide {
    max-width: 680px;
}

.sf-banner-slide h1,
.sf-banner-slide h2 {
    text-shadow: 0 3px 16px rgba(0,0,0,.28);
}

.sf-banner-slide p {
    text-shadow: 0 2px 8px rgba(0,0,0,.25);
}

@media (max-width: 768px) {

    .sf-home-banner {
        min-height: 510px;
        background-position: 58% center;
    }

    .sf-banner-overlay {
        background: rgba(3, 34, 72, .68);
    }

}

/* =========================================================
   PAGINAS PUBLICAS V4.6
   ========================================================= */

.internal-hero {
    padding: 72px 0;
    background:
        linear-gradient(
            135deg,
            #07346b,
            #0b65bd
        );
    color: #fff;
}

.internal-hero h1 {
    margin: 8px 0 10px;
    font-size: clamp(36px,5vw,58px);
    color: #fff;
}

.internal-hero p {
    max-width: 760px;
    font-size: 18px;
    color: rgba(255,255,255,.9);
}

.content-narrow {
    max-width: 900px;
    margin: 0 auto;
}

.content-narrow p {
    font-size: 17px;
    line-height: 1.8;
}

.feature-callout {
    margin: 30px 0;
    padding: 26px;
    border-radius: 18px;
    background: #eef6ff;
    border-left: 5px solid #0b5fb8;
}

.sf-gallery {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 14px;
}

.sf-gallery-item {
    display: block;
    aspect-ratio: 4/3;
    overflow: hidden;
    border-radius: 14px;
    background: #edf2f7;
}

.sf-gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .3s ease;
}

.sf-gallery-item:hover img {
    transform: scale(1.045);
}

.schedules-grid {
    display: grid;
    grid-template-columns: repeat(2,1fr);
    gap: 26px;
}

.schedule-card {
    padding: 25px;
    border: 1px solid #dce5ee;
    border-radius: 18px;
    background: #fff;
}

.schedule-row {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    padding: 13px 0;
    border-bottom: 1px solid #edf1f5;
}

.documents-grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 16px;
}

.documents-grid a {
    display: block;
    padding: 22px;
    border-radius: 16px;
    background: #f3f8fd;
    border: 1px solid #d8e6f3;
    text-decoration: none;
}

.documents-grid strong,
.documents-grid span {
    display: block;
}

.documents-grid strong {
    color: #07346b;
    margin-bottom: 5px;
}

.page-actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 30px;
}

@media(max-width:900px) {

    .sf-gallery {
        grid-template-columns: repeat(2,1fr);
    }

    .documents-grid {
        grid-template-columns: repeat(2,1fr);
    }
}

@media(max-width:680px) {

    .schedules-grid,
    .documents-grid {
        grid-template-columns: 1fr;
    }
}


/* =========================================================
   DIRETORIA E CONSELHOS V4.7
   ========================================================= */

.people-grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 16px;
}

.person-card {
    padding: 22px;
    border: 1px solid #dce7f1;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 5px 18px rgba(0,0,0,.045);
}

.person-card small {
    display: block;
    margin-bottom: 7px;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    color: #72869a;
}

.person-card strong {
    display: block;
    font-size: 17px;
    color: #07346b;
    line-height: 1.4;
}

.institution-block {
    margin-top: 60px;
}

.council-columns {
    display: grid;
    grid-template-columns: repeat(2,1fr);
    gap: 22px;
}

.council-card {
    padding: 26px;
    border-radius: 18px;
    background: #f5f9fd;
    border: 1px solid #dce8f3;
}

.council-card h3 {
    margin-top: 0;
    color: #07346b;
}

.council-card ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.council-card li {
    padding: 10px 0;
    border-bottom: 1px solid #e0e9f1;
    line-height: 1.45;
}

.council-card li:last-child {
    border-bottom: 0;
}

.commission-card {
    padding: 28px;
    border-radius: 18px;
    background: linear-gradient(
        135deg,
        #07346b,
        #0b5fb8
    );
    color: #fff;
}

.commission-president {
    margin-bottom: 22px;
}

.commission-president small {
    display: block;
    opacity: .8;
}

.commission-president strong {
    display: block;
    margin-top: 5px;
    font-size: 22px;
}

.name-list {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 10px;
}

.name-list span {
    padding: 12px 14px;
    border-radius: 10px;
    background: rgba(255,255,255,.10);
}

.institution-note {
    margin-top: 36px;
    padding: 22px;
    border-left: 4px solid #0b5fb8;
    border-radius: 12px;
    background: #f3f8fd;
}

.institution-note strong {
    color: #07346b;
}

.institution-note p {
    margin: 5px 0 0;
}

@media(max-width:900px) {

    .people-grid {
        grid-template-columns: repeat(2,1fr);
    }

    .name-list {
        grid-template-columns: repeat(2,1fr);
    }
}

@media(max-width:650px) {

    .people-grid,
    .council-columns,
    .name-list {
        grid-template-columns: 1fr;
    }
}


/* =========================================================
   PAGINA O CLUBE V4.8
   ========================================================= */

.section-soft {
    background: #f5f9fd;
}

.name-list-grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 12px;
}

.name-list-grid span {
    padding: 14px 16px;
    border: 1px solid #dce7f1;
    border-radius: 12px;
    background: #fff;
    color: #17334f;
}

.institution-block > h3 {
    margin-bottom: 20px;
    color: #07346b;
    font-size: 26px;
}

.council-card h4 {
    margin-top: 0;
    color: #07346b;
}

#historia,
#diretoria,
#conselhos,
#horarios {
    scroll-margin-top: 150px;
}

@media(max-width:900px) {

    .name-list-grid {
        grid-template-columns: repeat(2,1fr);
    }
}

@media(max-width:650px) {

    .name-list-grid {
        grid-template-columns: 1fr;
    }
}


/* =========================================================
   ESTRUTURA DO CLUBE V4.9
   ========================================================= */

.structure-intro {
    max-width: 900px;
    margin: 0 auto 45px;
    text-align: center;
}

.structure-intro h2 {
    margin: 8px 0 15px;
    color: #07346b;
    font-size: clamp(30px,4vw,44px);
}

.structure-intro p {
    font-size: 17px;
    line-height: 1.75;
    color: #526579;
}

.structure-grid {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 18px;
}

.structure-card {
    position: relative;
    padding: 27px 23px;
    border: 1px solid #dce7f1;
    border-radius: 18px;
    background: #fff;
    transition:
        transform .25s ease,
        box-shadow .25s ease;
}

.structure-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 28px rgba(4,44,86,.10);
}

.structure-icon {
    margin-bottom: 15px;
    font-size: 34px;
}

.structure-card h3 {
    margin: 0 0 10px;
    color: #07346b;
}

.structure-card p {
    margin: 0 0 15px;
    color: #66798b;
    line-height: 1.6;
}

.structure-card a {
    color: #0863b8;
    font-weight: 700;
    text-decoration: none;
}

.structure-card > strong {
    display: block;
    margin-bottom: 12px;
    color: #078245;
    font-size: 19px;
}

.structure-card-featured {
    border-color: #b9dbc8;
    background:
        linear-gradient(
            145deg,
            #f4fff8,
            #ffffff
        );
}

.seo-local-block {
    display: grid;
    grid-template-columns: 1.5fr .5fr;
    gap: 50px;
    align-items: center;
}

.seo-local-block h2 {
    margin: 8px 0 12px;
    color: #07346b;
}

.seo-local-block p {
    max-width: 760px;
    font-size: 17px;
    line-height: 1.75;
}

.seo-local-actions {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.structure-cta {
    padding: 55px 0;
    background:
        linear-gradient(
            135deg,
            #06346c,
            #0b65b7
        );
    color: #fff;
}

.structure-cta .container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
}

.structure-cta span {
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.5px;
    opacity: .8;
}

.structure-cta h2 {
    margin: 7px 0;
    color: #fff;
}

.structure-cta p {
    margin: 0;
    color: rgba(255,255,255,.85);
}

.structure-cta-buttons {
    display: flex;
    gap: 12px;
    flex-shrink: 0;
}

.structure-btn-white,
.structure-btn-outline {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 13px 22px;
    border-radius: 10px;
    font-weight: 700;
    text-decoration: none;
}

.structure-btn-white {
    background: #fff;
    color: #07346b;
}

.structure-btn-outline {
    border: 1px solid rgba(255,255,255,.65);
    color: #fff;
}

@media(max-width:1050px) {

    .structure-grid {
        grid-template-columns: repeat(2,1fr);
    }
}

@media(max-width:750px) {

    .structure-grid,
    .seo-local-block {
        grid-template-columns: 1fr;
    }

    .structure-cta .container {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media(max-width:520px) {

    .structure-grid {
        grid-template-columns: 1fr;
    }

    .structure-cta-buttons {
        width: 100%;
        flex-direction: column;
    }
}


/* =========================================================
   HOME FINAL V5.0
   ========================================================= */

.sf-main-hero {
    position: relative;
    min-height: 610px;
    overflow: hidden;
    background-image:
        url('/images/banner-san-fernando.jpg');
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

.sf-main-hero-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            90deg,
            rgba(4,35,71,.88) 0%,
            rgba(4,43,82,.76) 32%,
            rgba(4,43,82,.45) 58%,
            rgba(4,43,82,.10) 83%,
            rgba(4,43,82,0) 100%
        );
}

.sf-main-hero-container {
    position: relative;
    min-height: 610px;
    display: flex;
    align-items: center;
}

.sf-home-slide {
    position: absolute;
    width: min(680px,90%);
    opacity: 0;
    visibility: hidden;
    transform: translateY(15px);
    transition:
        opacity .7s ease,
        transform .7s ease,
        visibility .7s;
    color: #fff;
}

.sf-home-slide.active {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.sf-home-kicker {
    display: block;
    margin-bottom: 10px;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2px;
    color: #d8ecff;
}

.sf-home-slide h1,
.sf-home-slide h2 {
    margin: 0 0 17px;
    color: #fff;
    font-size: clamp(43px,6vw,70px);
    line-height: 1.03;
    text-shadow: 0 3px 16px rgba(0,0,0,.22);
}

.sf-home-slide p {
    max-width: 620px;
    margin: 0;
    font-size: 19px;
    line-height: 1.65;
    color: rgba(255,255,255,.93);
}

.sf-home-actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 27px;
}

.sf-home-btn {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    padding: 14px 23px;
    border-radius: 10px;
    font-weight: 750;
    text-decoration: none;
}

.sf-home-btn-primary {
    background: #fff;
    color: #07346b;
}

.sf-home-btn-outline {
    border: 1px solid rgba(255,255,255,.7);
    color: #fff;
    background: rgba(255,255,255,.05);
}

.sf-home-dots {
    position: absolute;
    left: 15px;
    bottom: 34px;
    display: flex;
    gap: 8px;
}

.sf-home-dots button {
    width: 10px;
    height: 10px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: rgba(255,255,255,.45);
    cursor: pointer;
}

.sf-home-dots button.active {
    width: 30px;
    border-radius: 10px;
    background: #fff;
}

.sf-home-about-grid {
    display: grid;
    grid-template-columns: 1.4fr .6fr;
    gap: 70px;
    align-items: center;
}

.sf-home-about h2 {
    margin: 8px 0 15px;
    color: #07346b;
    font-size: clamp(30px,4vw,45px);
}

.sf-home-about p {
    font-size: 17px;
    line-height: 1.75;
    color: #556a7e;
}

.sf-home-about-highlight {
    padding: 38px;
    border-radius: 22px;
    background:
        linear-gradient(
            145deg,
            #07346b,
            #0c68b9
        );
    color: #fff;
    text-align: center;
}

.sf-home-about-highlight span {
    display: block;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
    opacity: .75;
}

.sf-home-about-highlight strong {
    display: block;
    margin: 8px 0;
    font-size: 72px;
    line-height: 1;
}

.sf-home-about-highlight p {
    margin: 0;
    color: rgba(255,255,255,.87);
}

.sf-text-link {
    color: #0863b8;
    font-weight: 750;
    text-decoration: none;
}

.sf-dayuse-home {
    padding: 75px 0;
    background:
        linear-gradient(
            135deg,
            #f1fff6,
            #e8f5ff
        );
}

.sf-dayuse-home-grid {
    display: grid;
    grid-template-columns: 1.1fr .9fr;
    gap: 65px;
    align-items: center;
}

.sf-dayuse-label {
    color: #098348;
    font-size: 13px;
    font-weight: 850;
    letter-spacing: 2px;
}

.sf-dayuse-home h2 {
    margin: 8px 0 15px;
    color: #07346b;
    font-size: clamp(34px,5vw,50px);
}

.sf-dayuse-home p {
    max-width: 680px;
    font-size: 17px;
    line-height: 1.7;
    color: #50677a;
}

.sf-dayuse-price {
    display: flex;
    align-items: baseline;
    gap: 9px;
    flex-wrap: wrap;
    margin: 25px 0;
}

.sf-dayuse-price small {
    width: 100%;
    color: #63788b;
}

.sf-dayuse-price strong {
    font-size: 43px;
    color: #078448;
}

.sf-dayuse-price span {
    color: #63788b;
}

.sf-dayuse-button {
    display: inline-flex;
    padding: 14px 22px;
    border-radius: 10px;
    background: #078448;
    color: #fff;
    font-weight: 750;
    text-decoration: none;
}

.sf-dayuse-features {
    display: grid;
    grid-template-columns: repeat(2,1fr);
    gap: 14px;
}

.sf-dayuse-features div {
    padding: 28px;
    border-radius: 18px;
    background: rgba(255,255,255,.8);
    border: 1px solid rgba(0,80,130,.10);
}

.sf-dayuse-features span {
    display: block;
    margin-bottom: 10px;
    font-size: 34px;
}

.sf-dayuse-features strong {
    color: #07346b;
}

.sf-home-heading {
    display: flex;
    justify-content: space-between;
    gap: 30px;
    align-items: flex-end;
    margin-bottom: 28px;
}

.sf-home-heading h2 {
    margin: 5px 0 0;
    color: #07346b;
}

.sf-home-structure-grid {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 17px;
}

.sf-home-structure-card {
    padding: 28px 23px;
    border: 1px solid #dce7f1;
    border-radius: 18px;
    background: #fff;
    text-decoration: none;
    transition: .25s ease;
}

.sf-home-structure-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 14px 28px rgba(5,49,91,.09);
}

.sf-home-structure-card > span {
    display: block;
    margin-bottom: 15px;
    font-size: 35px;
}

.sf-home-structure-card h3 {
    color: #07346b;
    margin: 0 0 8px;
}

.sf-home-structure-card p {
    margin: 0;
    color: #64788b;
    line-height: 1.6;
}

.sf-join-home {
    padding: 65px 0;
    background:
        linear-gradient(
            135deg,
            #07346b,
            #0c67b8
        );
    color: #fff;
}

.sf-join-home-grid {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 50px;
}

.sf-join-home span {
    font-size: 12px;
    font-weight: 850;
    letter-spacing: 1.8px;
    opacity: .78;
}

.sf-join-home h2 {
    margin: 9px 0;
    color: #fff;
    font-size: clamp(31px,4vw,46px);
}

.sf-join-home p {
    margin: 0;
    max-width: 660px;
    color: rgba(255,255,255,.86);
}

.sf-join-button {
    display: inline-flex;
    padding: 15px 25px;
    border-radius: 10px;
    background: #fff;
    color: #07346b;
    font-weight: 800;
    text-decoration: none;
    white-space: nowrap;
}

.sf-home-gallery {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 12px;
}

.sf-home-gallery a {
    display: block;
    aspect-ratio: 4/3;
    overflow: hidden;
    border-radius: 14px;
}

.sf-home-gallery img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .3s ease;
}

.sf-home-gallery a:hover img {
    transform: scale(1.05);
}

.sf-location-grid {
    display: grid;
    grid-template-columns: 1.4fr .6fr;
    gap: 60px;
    align-items: center;
}

.sf-location-grid h2 {
    margin: 8px 0 15px;
    color: #07346b;
}

.sf-location-grid p {
    font-size: 17px;
    line-height: 1.7;
    color: #586c7f;
}

.sf-location-actions {
    display: flex;
    flex-direction: column;
    gap: 11px;
}

@media(max-width:950px) {

    .sf-home-about-grid,
    .sf-dayuse-home-grid,
    .sf-location-grid {
        grid-template-columns: 1fr;
        gap: 35px;
    }

    .sf-home-structure-grid,
    .sf-home-gallery {
        grid-template-columns: repeat(2,1fr);
    }
}

@media(max-width:720px) {

    .sf-main-hero {
        min-height: 570px;
        background-position: 58% center;
    }

    .sf-main-hero-container {
        min-height: 570px;
    }

    .sf-main-hero-overlay {
        background: rgba(3,35,70,.72);
    }

    .sf-home-slide h1,
    .sf-home-slide h2 {
        font-size: 42px;
    }

    .sf-home-slide p {
        font-size: 17px;
    }

    .sf-join-home-grid,
    .sf-home-heading {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media(max-width:520px) {

    .sf-home-structure-grid,
    .sf-home-gallery,
    .sf-dayuse-features {
        grid-template-columns: 1fr;
    }

    .sf-home-about-highlight strong {
        font-size: 60px;
    }
}


/* =========================================================
   DESTAQUE PISCINA HOME V5.1
========================================================= */

.sf-pool-highlight {
    padding: 80px 0;
    background: #fff;
}

.sf-pool-grid {
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    gap: 60px;
    align-items: center;
}

.sf-pool-image {
    overflow: hidden;
    border-radius: 24px;
    box-shadow: 0 18px 42px rgba(4,44,85,.12);
}

.sf-pool-image img {
    display: block;
    width: 100%;
    height: 480px;
    object-fit: cover;
}

.sf-pool-content h2 {
    margin: 8px 0 18px;
    color: #07346b;
    font-size: clamp(34px,4.5vw,52px);
    line-height: 1.08;
}

.sf-pool-content p {
    color: #586d80;
    font-size: 17px;
    line-height: 1.75;
}

.sf-pool-actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 27px;
}

@media(max-width:850px) {

    .sf-pool-grid {
        grid-template-columns: 1fr;
        gap: 35px;
    }

    .sf-pool-image img {
        height: 380px;
    }
}

@media(max-width:520px) {

    .sf-pool-image img {
        height: 280px;
    }
}


/* =========================================================
   HOME SAN FERNANDO - CORRECAO VISUAL V5.2
   ========================================================= */

/* ---------- BANNER ---------- */

.sf-main-hero {
    position: relative;
    min-height: 560px;
    overflow: hidden;
    background:
        url('/images/banner-san-fernando.jpg')
        center center / cover no-repeat;
}

.sf-main-hero-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        90deg,
        rgba(3,34,70,.86) 0%,
        rgba(3,43,83,.70) 36%,
        rgba(3,43,83,.35) 62%,
        rgba(3,43,83,.05) 100%
    );
}

.sf-main-hero-container {
    position: relative;
    min-height: 560px;
    display: flex;
    align-items: center;
}

.sf-home-slide {
    position: absolute;
    left: 15px;
    top: 50%;
    transform: translateY(-46%);
    width: min(680px, calc(100% - 30px));
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition:
        opacity .65s ease,
        transform .65s ease;
    color: #fff;
}

.sf-home-slide.active {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(-50%);
}

.sf-home-kicker {
    display: block;
    margin-bottom: 10px;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
    color: #dceeff;
}

.sf-home-slide h1,
.sf-home-slide h2 {
    margin: 0 0 18px;
    color: #fff;
    font-size: clamp(42px, 6vw, 70px);
    line-height: 1.03;
    text-shadow: 0 3px 16px rgba(0,0,0,.25);
}

.sf-home-slide p {
    max-width: 620px;
    margin: 0;
    font-size: 18px;
    line-height: 1.65;
    color: rgba(255,255,255,.94);
}

.sf-home-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 27px;
}

.sf-home-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 13px 22px;
    border-radius: 9px;
    font-weight: 700;
    text-decoration: none;
}

.sf-home-btn-primary {
    background: #fff;
    color: #07346b;
}

.sf-home-btn-outline {
    border: 1px solid rgba(255,255,255,.75);
    color: #fff;
}

.sf-home-dots {
    position: absolute;
    left: 15px;
    bottom: 30px;
    display: flex;
    gap: 8px;
}

.sf-home-dots button {
    width: 10px;
    height: 10px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: rgba(255,255,255,.45);
    cursor: pointer;
}

.sf-home-dots button.active {
    width: 30px;
    border-radius: 12px;
    background: #fff;
}


/* ---------- APRESENTACAO ---------- */

.sf-home-about-grid {
    display: grid;
    grid-template-columns: 1.35fr .65fr;
    gap: 60px;
    align-items: center;
}

.sf-home-about h2 {
    margin: 8px 0 16px;
    color: #07346b;
    font-size: clamp(31px,4vw,44px);
}

.sf-home-about p {
    font-size: 17px;
    line-height: 1.75;
    color: #566b7e;
}

.sf-home-about-highlight {
    padding: 38px 30px;
    border-radius: 22px;
    background: linear-gradient(145deg,#07346b,#0b66b7);
    color: #fff;
    text-align: center;
}

.sf-home-about-highlight span {
    display: block;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
}

.sf-home-about-highlight strong {
    display: block;
    margin: 7px 0;
    font-size: 68px;
    line-height: 1;
}

.sf-home-about-highlight p {
    margin: 0;
    color: rgba(255,255,255,.88);
}

.sf-text-link {
    color: #0863b8;
    font-weight: 700;
    text-decoration: none;
}


/* ---------- PISCINA ---------- */

.sf-pool-highlight {
    padding: 75px 0;
    background: #fff;
}

.sf-pool-grid {
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    gap: 55px;
    align-items: center;
}

.sf-pool-image {
    overflow: hidden;
    border-radius: 22px;
    box-shadow: 0 15px 38px rgba(5,45,84,.13);
}

.sf-pool-image img {
    display: block;
    width: 100%;
    height: 430px;
    object-fit: cover;
}

.sf-pool-content h2 {
    margin: 8px 0 17px;
    color: #07346b;
    font-size: clamp(33px,4.3vw,49px);
    line-height: 1.1;
}

.sf-pool-content p {
    font-size: 17px;
    line-height: 1.72;
    color: #586d80;
}

.sf-pool-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 11px;
    margin-top: 25px;
}


/* ---------- DAY USE ---------- */

.sf-dayuse-home {
    padding: 70px 0;
    background: linear-gradient(135deg,#f1fff6,#e9f6ff);
}

.sf-dayuse-home-grid {
    display: grid;
    grid-template-columns: 1.1fr .9fr;
    gap: 55px;
    align-items: center;
}

.sf-dayuse-label {
    color: #098348;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
}

.sf-dayuse-home h2 {
    margin: 8px 0 15px;
    color: #07346b;
    font-size: clamp(33px,4.5vw,48px);
}

.sf-dayuse-home p {
    font-size: 17px;
    line-height: 1.7;
    color: #52697b;
}

.sf-dayuse-price {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 8px;
    margin: 22px 0;
}

.sf-dayuse-price small {
    width: 100%;
}

.sf-dayuse-price strong {
    color: #078448;
    font-size: 41px;
}

.sf-dayuse-button {
    display: inline-flex;
    padding: 13px 21px;
    border-radius: 9px;
    background: #078448;
    color: #fff;
    font-weight: 700;
    text-decoration: none;
}

.sf-dayuse-features {
    display: grid;
    grid-template-columns: repeat(2,1fr);
    gap: 14px;
}

.sf-dayuse-features div {
    padding: 26px;
    border-radius: 17px;
    background: rgba(255,255,255,.86);
    border: 1px solid rgba(6,69,119,.09);
}

.sf-dayuse-features span {
    display: block;
    margin-bottom: 8px;
    font-size: 31px;
}

.sf-dayuse-features strong {
    color: #07346b;
}


/* ---------- ESTRUTURA ---------- */

.sf-home-heading {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 25px;
    margin-bottom: 28px;
}

.sf-home-heading h2 {
    margin: 5px 0 0;
    color: #07346b;
}

.sf-home-structure-grid {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 17px;
}

.sf-home-structure-card {
    display: block;
    padding: 27px 22px;
    border: 1px solid #dce7f1;
    border-radius: 17px;
    background: #fff;
    text-decoration: none;
    transition: .25s ease;
}

.sf-home-structure-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 13px 27px rgba(5,49,91,.09);
}

.sf-home-structure-card > span {
    display: block;
    margin-bottom: 13px;
    font-size: 33px;
}

.sf-home-structure-card h3 {
    margin: 0 0 8px;
    color: #07346b;
}

.sf-home-structure-card p {
    margin: 0;
    color: #64788b;
    line-height: 1.55;
}


/* ---------- GALERIA HOME ---------- */

.sf-home-gallery {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 13px;
}

.sf-home-gallery a {
    display: block;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    border-radius: 14px;
    background: #edf3f8;
}

.sf-home-gallery img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .3s ease;
}

.sf-home-gallery a:hover img {
    transform: scale(1.05);
}


/* ---------- ASSOCIE-SE ---------- */

.sf-join-home {
    padding: 60px 0;
    background: linear-gradient(135deg,#07346b,#0b66b7);
    color: #fff;
}

.sf-join-home-grid {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 45px;
}

.sf-join-home span {
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.7px;
}

.sf-join-home h2 {
    margin: 8px 0;
    color: #fff;
    font-size: clamp(31px,4vw,45px);
}

.sf-join-home p {
    margin: 0;
    color: rgba(255,255,255,.86);
}

.sf-join-button {
    display: inline-flex;
    padding: 14px 24px;
    border-radius: 9px;
    background: #fff;
    color: #07346b;
    font-weight: 800;
    text-decoration: none;
    white-space: nowrap;
}


/* ---------- LOCALIZACAO ---------- */

.sf-location-grid {
    display: grid;
    grid-template-columns: 1.4fr .6fr;
    gap: 55px;
    align-items: center;
}

.sf-location-grid h2 {
    margin: 8px 0 14px;
    color: #07346b;
}

.sf-location-grid p {
    font-size: 17px;
    line-height: 1.7;
    color: #586c7f;
}

.sf-location-actions {
    display: flex;
    flex-direction: column;
    gap: 11px;
}


/* ---------- RESPONSIVO ---------- */

@media (max-width: 950px) {

    .sf-home-about-grid,
    .sf-pool-grid,
    .sf-dayuse-home-grid,
    .sf-location-grid {
        grid-template-columns: 1fr;
        gap: 35px;
    }

    .sf-home-structure-grid,
    .sf-home-gallery {
        grid-template-columns: repeat(2,1fr);
    }

    .sf-pool-image img {
        height: 380px;
    }
}

@media (max-width: 720px) {

    .sf-main-hero,
    .sf-main-hero-container {
        min-height: 520px;
    }

    .sf-main-hero {
        background-position: 60% center;
    }

    .sf-main-hero-overlay {
        background: rgba(3,34,70,.68);
    }

    .sf-home-slide h1,
    .sf-home-slide h2 {
        font-size: 40px;
    }

    .sf-home-heading,
    .sf-join-home-grid {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 520px) {

    .sf-home-structure-grid,
    .sf-home-gallery,
    .sf-dayuse-features {
        grid-template-columns: 1fr;
    }

    .sf-pool-image img {
        height: 280px;
    }
}


/* =========================================================
   MENU MOBILE - CORRECAO V5.4
   ========================================================= */

@media (max-width: 900px) {

    .club-menu-row {
        position: relative;
        z-index: 1000;
    }

    .menu-toggle,
    .mobile-menu-toggle {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        gap: 6px;
        margin-left: auto;
        padding: 10px 14px;
        border: 0;
        border-radius: 10px;
        background: #edf5ff;
        color: #07346b;
        font-size: 16px;
        cursor: pointer;
    }

    .main-nav,
    .site-nav,
    .club-nav {
        display: none !important;
        position: absolute;
        top: calc(100% + 8px);
        left: 15px;
        right: 15px;
        z-index: 9999;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 0 !important;
        padding: 10px;
        border: 1px solid #dce7f1;
        border-radius: 16px;
        background: #fff;
        box-shadow: 0 16px 40px rgba(0,0,0,.18);
    }

    .main-nav.is-open,
    .site-nav.is-open,
    .club-nav.is-open {
        display: flex !important;
    }

    .main-nav a,
    .site-nav a,
    .club-nav a {
        display: block;
        width: 100%;
        padding: 13px 15px !important;
        text-align: left !important;
        border-radius: 9px;
        color: #0b3158;
        text-decoration: none;
    }

    .main-nav a:hover,
    .site-nav a:hover,
    .club-nav a:hover {
        background: #f2f7fc;
    }

    body.mobile-menu-open {
        overflow: hidden;
    }

}


/* =========================================================
   MENU MOBILE SAN FERNANDO - FIX DEFINITIVO V5.5
   ========================================================= */

@media (max-width: 980px) {

    .club-menu-inner {
        position: relative;
        min-height: 62px;
        justify-content: flex-end;
    }

    .menu-toggle {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        gap: 6px;
        padding: 9px 14px;
        margin-left: auto;
        border: 0;
        border-radius: 10px;
        background: #eaf4ff;
        color: #082b59;
        font-size: 16px;
        cursor: pointer;
        position: relative;
        z-index: 10002;
    }

    .nav-links.nav-links-centered {
        display: none !important;
        position: absolute !important;
        top: calc(100% + 6px) !important;
        left: 13px !important;
        right: 13px !important;
        width: auto !important;
        max-height: calc(100vh - 150px);
        overflow-y: auto;

        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        gap: 0 !important;

        padding: 10px !important;

        background: #ffffff !important;
        border: 1px solid #dce6f0;
        border-radius: 15px;
        box-shadow: 0 16px 38px rgba(4,35,70,.20);

        z-index: 10001 !important;
    }

    .nav-links.nav-links-centered.is-open {
        display: flex !important;
    }

    .nav-links.nav-links-centered a {
        display: block !important;
        width: 100% !important;
        padding: 12px 14px !important;
        margin: 0 !important;

        text-align: left !important;

        color: #082b59 !important;
        background: transparent !important;

        border-radius: 9px !important;
    }

    .nav-links.nav-links-centered a:hover {
        background: #eef5fc !important;
    }

    .nav-links.nav-links-centered .nav-cta {
        margin-top: 6px !important;
        text-align: center !important;
        color: #ffffff !important;
        background: #0b4c9c !important;
    }

    body.sf-menu-open {
        overflow: hidden;
    }
}


/* =========================================================
   MENU MOBILE FINAL V5.7
   ========================================================= */

@media (max-width: 980px) {

    .club-menu-row {
        position: relative !important;
        z-index: 9998 !important;
        overflow: visible !important;
    }

    .club-menu-inner {
        position: relative !important;
        overflow: visible !important;
        justify-content: flex-end !important;
    }

    .menu-toggle {
        display: inline-flex !important;
        position: relative !important;
        z-index: 10001 !important;

        align-items: center;
        justify-content: center;

        margin-left: auto !important;
    }

    .nav-links.nav-links-centered {

        position: absolute !important;

        top: calc(100% + 5px) !important;
        left: 12px !important;
        right: 12px !important;

        width: auto !important;

        flex-direction: column !important;
        align-items: stretch !important;

        padding: 10px !important;

        background: #ffffff !important;

        border:
            1px solid #d9e5ef !important;

        border-radius: 14px !important;

        box-shadow:
            0 16px 35px rgba(0,0,0,.20) !important;

        z-index: 10000 !important;

        max-height:
            calc(100vh - 145px) !important;

        overflow-y: auto !important;
    }

    .nav-links.nav-links-centered a {

        width: 100% !important;

        padding:
            12px 14px !important;

        text-align: left !important;

        color: #082b59 !important;
    }

    .nav-links.nav-links-centered .nav-cta {

        margin-top: 5px !important;

        color: #ffffff !important;

        background:
            #0b4c9c !important;

        text-align: center !important;
    }

    /*
     * Cancela qualquer trava antiga
     */
    body,
    body.sf-menu-open,
    body.mobile-menu-open {

        overflow-y: auto !important;
        overflow-x: hidden !important;
    }
}

