@import url("https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap");:root{--color-primary:#059669;--color-primary-dark:#047857;--color-primary-light:#ecfdf5;--color-secondary:#10b981;--color-accent-lime:#22c55e;--color-tertiary:#f59e0b;--color-tertiary-light:#fffbeb;--color-ink:#14532d;--color-ink-dark:#0b3a1f;--color-lime:#22c55e;--color-lime-dark:#059669;--color-orange:#f59e0b;--color-warning-bg:#fef3c7;--color-warning-border:#fde68a;--color-warning-text:#b45309;--color-bg:#f8fafc;--color-surface:#fff;--color-text:#0f172a;--color-text-dim:#64748b;--color-text-dim-strong:#475569;--color-border:#e2e8f0;--color-border-soft:#f1f5f9;--color-danger:#dc2626;--color-danger-bg:#fee2e2;--font-sans:"Plus Jakarta Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--radius:14px;--radius-sm:10px;--radius-lg:20px;--radius-xl:24px;--shadow-sm:0 4px 20px -2px rgba(15,23,42,.05),0 2px 6px -1px rgba(15,23,42,.02);--shadow-md:0 12px 28px -4px rgba(15,23,42,.08),0 4px 10px -2px rgba(5,150,105,.06);--shadow-lg:0 20px 40px -8px rgba(15,23,42,.16);--shadow-glow-primary:0 2px 8px rgba(5,150,105,.25);--ease-out:cubic-bezier(0.23,1,0.32,1);--ease-in-out:cubic-bezier(0.77,0,0.175,1);--ease-drawer:cubic-bezier(0.32,0.72,0,1)}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;scroll-behavior:smooth}button,input,select,textarea{font-family:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit}a,button,input,select,textarea{transition:background-color .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease,transform .15s ease}button:active{transform:scale(.97)}:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation-duration:.01ms!important;transition-duration:.01ms!important}}@keyframes ballSpinBounce{0%{transform:rotate(0deg) scale(1)}25%{transform:rotate(90deg) scale(.88)}50%{transform:rotate(180deg) scale(1)}75%{transform:rotate(270deg) scale(.88)}to{transform:rotate(1turn) scale(1)}}@keyframes ballEnter{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@keyframes ballPulse{0%,to{opacity:.35}50%{opacity:1}}.ball-loader-enter{animation:ballEnter .35s cubic-bezier(.34,1.56,.64,1) both}.ball-loader-spin{animation:ballSpinBounce .9s cubic-bezier(.45,0,.55,1) infinite}@media (prefers-reduced-motion:reduce){.ball-loader-enter{animation:none;opacity:1}.ball-loader-spin{animation:ballPulse 1.4s ease-in-out infinite}}.admin-shell{display:flex;min-height:100vh}.admin-sidebar{width:232px;flex-shrink:0;background:linear-gradient(180deg,var(--color-ink) 0,var(--color-ink-dark) 100%);color:#fff;padding:24px 16px;display:flex;flex-direction:column}.admin-sidebar .brand{font-weight:800;font-size:17px;margin-bottom:28px;letter-spacing:-.01em}.admin-sidebar nav{display:flex;flex-direction:column;gap:2px}.admin-sidebar nav a{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--radius-sm);color:hsla(0,0%,100%,.72);text-decoration:none;font-weight:600;font-size:14px}.admin-sidebar nav a:hover{background:hsla(0,0%,100%,.08);color:#fff}.admin-sidebar nav a.active{background:var(--color-primary);color:#fff;box-shadow:var(--shadow-sm)}.admin-sidebar .sidebar-footer{margin-top:auto;padding-top:16px;border-top:1px solid hsla(0,0%,100%,.15)}.admin-sidebar .sidebar-user{font-size:13px;color:hsla(0,0%,100%,.65);margin-bottom:10px}.admin-content{flex:1 1;min-width:0;padding:32px 36px}@media (max-width:768px){.admin-shell{flex-direction:column}.admin-sidebar{width:100%;padding:12px;flex-direction:row;align-items:center;overflow-x:auto}.admin-sidebar .brand{margin-bottom:0;margin-right:12px;white-space:nowrap}.admin-sidebar nav{flex-direction:row;gap:4px}.admin-sidebar nav a{white-space:nowrap;padding:8px 10px;font-size:13px}.admin-sidebar .sidebar-footer{margin-top:0;margin-left:auto;padding-top:0;border-top:none;display:flex;align-items:center}.admin-sidebar .sidebar-user{display:none}.admin-content{padding:20px 16px}}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:30;background:linear-gradient(180deg,hsla(0,0%,100%,.97),rgba(245,255,250,.94));backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(5,150,105,.12);box-shadow:0 4px 25px -4px rgba(5,150,105,.12),0 2px 10px -2px rgba(5,150,105,.08)}.site-header-inner{max-width:1440px;margin:0 auto;padding:12px 24px;justify-content:space-between;gap:16px;position:relative}.nav-links,.site-header-inner{display:flex;align-items:center}.nav-links{gap:2px}.nav-links a{padding:8px 12px;border-radius:var(--radius-sm);font-weight:600;font-size:14px;text-decoration:none;color:var(--color-text);white-space:nowrap}.nav-links a:hover{background:var(--color-bg)}.nav-toggle{display:none}.header-auth-slot{display:flex;align-items:center;gap:10px}.nav-links-auth{display:none}@media (max-width:900px){.nav-links{display:none;position:absolute;top:100%;left:0;right:0;background:var(--color-surface);flex-direction:column;align-items:stretch;padding:8px;border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-md);gap:2px}.nav-links.open{display:flex}.nav-toggle{display:inline-flex}.header-auth-slot{display:none}.nav-links-auth{display:block;padding:10px 8px 4px;margin-top:4px;border-top:1px solid var(--color-border)}.header-cta{padding:7px 12px!important;font-size:12.5px!important}}@media (max-width:400px){.header-cta{padding:6px 10px!important;font-size:12px!important}}.modal-backdrop{opacity:0;transition:opacity .25s var(--ease-out)}.modal-backdrop.is-open{opacity:1}.modal{transform-origin:center;opacity:0;transform:scale(.96);transition:opacity .25s var(--ease-out),transform .25s var(--ease-out)}.modal.is-open{opacity:1;transform:scale(1)}@media (prefers-reduced-motion:reduce){.modal{transform:none}}.admin-cell-menu{transform-origin:top right;opacity:1;transform:scale(1);transition:opacity .2s var(--ease-out),transform .2s var(--ease-out);@starting-style{opacity:0;transform:scale(.95)}}.booking-flow-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;grid-gap:28px;gap:28px;align-items:start}.booking-flow-main{min-width:0}.ticket-card{position:-webkit-sticky;position:sticky;top:84px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:18px}.lead-form-card input:focus,.lead-form-card textarea:focus,.ticket-card input:not([type=date]):focus,.ticket-card textarea:focus{outline:none!important;border-color:var(--color-primary)!important;box-shadow:0 0 0 3px var(--color-primary-light)!important}.reservas-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;grid-gap:28px;gap:28px;align-items:start}.reservas-sidebar{position:-webkit-sticky;position:sticky;top:100px}@media (max-width:899px){.reservas-grid{grid-template-columns:1fr}.reservas-sidebar{position:static}.booking-flow-grid{grid-template-columns:1fr}.ticket-card{position:static;margin-top:28px}}.courts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));grid-gap:16px;gap:16px}.services-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,220px));grid-gap:14px;gap:14px}.slot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));grid-gap:10px;gap:10px}@keyframes homeFadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes homeSpin{to{transform:rotate(1turn)}}.home-spin{animation:homeSpin .8s linear infinite}@media (prefers-reduced-motion:reduce){.home-spin{animation:none}}.home-fade-in{opacity:0;animation:homeFadeUp .7s ease forwards}@media (prefers-reduced-motion:reduce){.home-fade-in{animation:none;opacity:1}}.home-navbar{position:fixed;top:0;left:0;right:0;z-index:50;background:transparent;border-bottom:1px solid transparent;transition:background-color .25s ease,box-shadow .25s ease,border-color .25s ease,-webkit-backdrop-filter .25s ease;transition:background-color .25s ease,backdrop-filter .25s ease,box-shadow .25s ease,border-color .25s ease;transition:background-color .25s ease,backdrop-filter .25s ease,box-shadow .25s ease,border-color .25s ease,-webkit-backdrop-filter .25s ease}.home-navbar--scrolled{background:rgba(7,19,13,.78);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom-color:hsla(0,0%,100%,.08);box-shadow:0 8px 24px rgba(0,0,0,.18)}.home-navbar-links{display:flex;gap:30px;align-items:center}.home-navbar-logo-compact,.home-navbar-mobile,.home-navbar-toggle{display:none}@media (min-width:861px) and (max-width:1020px){.home-navbar-logo-full{display:none}.home-navbar-logo-compact{display:block}}.home-navbar-app{display:none}@media (min-width:1240px){.home-navbar-app{display:inline-flex}}.play-store-badge{transition:transform .15s var(--ease-out),opacity .15s ease}.play-store-badge:hover{opacity:.88}.play-store-badge:active{transform:scale(.97)}.play-store-badge:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}@media (prefers-reduced-motion:reduce){.play-store-badge{transition:none}}.home-district-pill{display:inline-flex}@media (max-width:1080px){.home-district-pill{display:none}}@media (max-width:860px){.home-district-pill,.home-navbar-links{display:none}.home-navbar-toggle{display:inline-flex!important}.home-navbar-mobile.open{display:flex}}.legal-content h2{font-size:19px;font-weight:700;color:#0b1f14;margin:32px 0 10px}.legal-content h2:first-child{margin-top:0}.legal-content h3{font-size:16px;font-weight:700;color:#0b1f14;margin:22px 0 8px}.legal-content p{margin:0 0 14px;font-size:15px;line-height:1.7;color:#233129}.legal-content ul{margin:0 0 14px;padding-left:20px}.legal-content li{margin-bottom:6px;font-size:15px;line-height:1.7;color:#233129}.legal-content a{color:#16a34a}.home-card{transition:transform .28s ease,box-shadow .28s ease}.home-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg);border-color:rgba(5,150,105,.25)}.home-card-img-wrap{overflow:hidden}.home-card-img{transition:transform .5s ease}.home-card:hover .home-card-img{transform:scale(1.06)}.home-btn-primary{transition:background-color .2s ease,transform .15s ease,box-shadow .2s ease}.home-btn-primary:hover{background-color:var(--color-primary-dark);transform:translateY(-1px);box-shadow:0 10px 24px rgba(5,150,105,.35)}.home-chip{transition:background-color .2s ease,color .2s ease,border-color .2s ease;cursor:pointer}.home-search-bar{display:grid;grid-template-columns:1.2fr 1fr 1fr auto}.home-search-field{border-right:1px solid #e5e7eb}.home-search-field:last-of-type{border-right:none}@media (max-width:860px){.home-search-bar{grid-template-columns:1fr}.home-search-field{border-right:none;border-bottom:1px solid #e5e7eb}}.home-search-console{grid-template-columns:1.4fr 1fr auto}@media (max-width:720px){.home-search-console{grid-template-columns:1fr!important}}.home-today-grid{grid-template-columns:1.6fr 1fr}@media (max-width:900px){.home-today-grid{grid-template-columns:1fr!important}}.home-today-card{flex-direction:row}.home-today-card-img{width:42%;min-width:160px}@media (max-width:560px){.home-today-card{flex-direction:column!important}.home-today-card-img{width:100%!important;min-width:0!important;height:180px}}.home-owner-grid{grid-template-columns:1.6fr 1fr}@media (max-width:760px){.home-owner-grid{grid-template-columns:1fr!important}.home-owner-cta{padding:32px 22px!important}}@media (max-width:860px){.home-footer-grid{grid-template-columns:repeat(2,1fr)!important}}@media (max-width:480px){.home-footer-grid{grid-template-columns:1fr!important}}.slot-btn-available:hover{background:var(--color-primary-light)!important;border-color:var(--color-primary)!important;transform:translateY(-2px)!important;box-shadow:var(--shadow-md)!important}@keyframes punchcardHourIn{0%{opacity:0;transform:scale(.7) translateY(6px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes punchcardGiftGlow{0%,to{box-shadow:0 4px 12px rgba(245,158,11,.35)}50%{box-shadow:0 4px 20px rgba(245,158,11,.65)}}.punchcard-hour{opacity:0;animation:punchcardHourIn .45s cubic-bezier(.34,1.56,.64,1) forwards}.punchcard-gift{animation:punchcardGiftGlow 2.2s ease-in-out infinite}@media (prefers-reduced-motion:reduce){.punchcard-hour{animation:none;opacity:1}.punchcard-gift{animation:none}}.booking-gallery-grid{grid-template-columns:1fr 1fr}.gallery-tile img{transition:transform .4s ease}.gallery-tile:hover img{transform:scale(1.06)}@media (prefers-reduced-motion:reduce){.gallery-tile img{transition:none}.gallery-tile:hover img{transform:none}}@media (max-width:720px){.booking-gallery-grid{grid-template-columns:1fr!important;height:auto!important}.booking-gallery-main{height:260px}.booking-gallery-side{grid-template-columns:1fr 1fr;grid-template-rows:none!important;height:120px}}.home-steps-grid{display:flex;align-items:flex-start;gap:8px}.home-steps-grid>.home-step{flex:1 1;min-width:0}.home-steps-arrow{display:flex;align-items:center;padding-top:24px}@media (max-width:900px){.home-steps-grid{flex-direction:column;align-items:center;gap:32px}.home-steps-grid>.home-step{width:100%;max-width:280px}.home-steps-arrow{display:none}}.home-complex-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:24px;gap:24px}@keyframes dotPulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes dotPing{75%,to{transform:scale(2.2);opacity:0}}.dot-pulse{animation:dotPulse 1.8s cubic-bezier(.4,0,.6,1) infinite}.dot-ping{position:relative}.dot-ping:before{content:"";position:absolute;inset:0;border-radius:50%;background:inherit;animation:dotPing 1.4s cubic-bezier(0,0,.2,1) infinite}@media (prefers-reduced-motion:reduce){.dot-pulse{animation:none}.dot-ping:before{animation:none;display:none}}.home-trust-strip{display:flex;justify-content:center;gap:48px;flex-wrap:wrap}@media (max-width:640px){.home-trust-strip{flex-direction:column;align-items:center;gap:18px}}.sa-shell{display:flex;min-height:100vh;background:#f8faf9}.sa-sidebar{width:240px;flex-shrink:0;background:#07130d;color:#fff;position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow-y:auto}.sa-content{flex:1 1;min-width:0;padding:24px 28px 60px}.sa-sidebar-toggle{display:none}.sa-table-wrap{overflow-x:auto}.sa-table{width:100%;border-collapse:collapse;font-size:13.5px;min-width:640px}.sa-table th{text-align:left;padding:10px 14px;font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:#6b7280;border-bottom:1px solid #e5e7eb;white-space:nowrap}.sa-table td{padding:12px 14px;border-bottom:1px solid #f1f3f1;color:#111827;vertical-align:middle}.sa-table tr:last-child td{border-bottom:none}.sa-table tr:hover td{background:#fafcfa}.sa-input,.sa-select,.sa-textarea{width:100%;padding:9px 12px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;color:#111827;background:#fff;box-sizing:border-box;font-family:inherit}.sa-input:focus,.sa-select:focus,.sa-textarea:focus{outline:none;border-color:#16a34a;box-shadow:0 0 0 3px rgba(22,163,74,.12)}.sa-label{display:block;font-size:12.5px;font-weight:600;color:#374151;margin-bottom:5px}.sa-btn{display:inline-flex;align-items:center;gap:6px;padding:9px 16px;border-radius:8px;font-size:13.5px;font-weight:600;cursor:pointer;border:1px solid transparent;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.sa-btn-primary{background:#16a34a;color:#fff}.sa-btn-primary:hover{background:#128a3e}.sa-btn-secondary{background:#fff;color:#111827;border-color:#e5e7eb}.sa-btn-secondary:hover{background:#f8faf9}.sa-btn-danger{background:#fff;color:#dc2626;border-color:#fecaca}.sa-btn-danger:hover{background:#fef2f2}.sa-nav-link{display:flex;align-items:center;gap:10px;padding:10px 16px;color:hsla(0,0%,100%,.72);text-decoration:none;font-size:13.5px;font-weight:500;border-left:3px solid transparent}.sa-nav-link:hover{background:hsla(0,0%,100%,.06);color:#fff}.sa-nav-link.active{background:rgba(22,163,74,.16);color:#fff;border-left-color:#16a34a;font-weight:700}@media (max-width:900px){.sa-sidebar{position:fixed;left:-260px;top:0;bottom:0;z-index:100;transition:left .2s ease;width:240px}.sa-sidebar.open{left:0;box-shadow:0 0 32px rgba(0,0,0,.35)}.sa-sidebar-toggle{display:inline-flex}.sa-content{padding:18px 16px 48px}.sa-overlay{position:fixed;inset:0;background:rgba(7,19,13,.4);z-index:90}}.sa-form-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:14px;gap:14px}@media (max-width:640px){.sa-form-grid{grid-template-columns:1fr}}.sa-dashboard-grid{display:grid;grid-template-columns:1.4fr 1fr;grid-gap:20px;gap:20px}@media (max-width:900px){.sa-dashboard-grid{grid-template-columns:1fr}}@keyframes promoFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes promoIconFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes promoBarFill{0%{width:0}}.promo-card{opacity:0;animation:promoFadeIn .5s ease forwards}.promo-card__icon{display:inline-block;animation:promoIconFloat 2.4s ease-in-out infinite}.promo-card__bar-fill{animation:promoBarFill .8s ease-out forwards}@media (prefers-reduced-motion:reduce){.promo-card{opacity:1}.promo-card,.promo-card__bar-fill,.promo-card__icon{animation:none}}.pay-details>summary{list-style:none}.pay-details>summary::-webkit-details-marker{display:none}.pay-details .pay-chevron{transition:transform .2s ease}.pay-details[open] .pay-chevron{transform:rotate(180deg)}@media (max-width:340px){.pay-details .pay-icon{display:none}}.pay-details>summary:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}@media (prefers-reduced-motion:reduce){.pay-details .pay-chevron{transition:none}}