:root{--bg: #ffffff;--bg-2: #f8f9fa;--panel: #ffffff;--panel-border: rgba(0,0,0,.08);--panel-hover: #fafbfc;--accent: #16a34a;--accent-2: #15803d;--text: #1a1a1a;--muted: #6b7280;--shadow: 0 4px 20px rgba(0,0,0,.08)}*{box-sizing:border-box}html,body,#root{height:100%;scroll-behavior:smooth}body{margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji";background:var(--bg);color:var(--text)}.app{display:flex;min-height:100%;flex-direction:column}.container{width:100%;max-width:1000px;margin:0 auto;padding:16px}@media (min-width: 640px){.container{padding:24px}}header.container{text-align:center;padding-top:40px}h1{margin:0 0 8px;font-size:32px;letter-spacing:.5px}h2{font-size:28px}@media (min-width: 640px){h1{font-size:40px}h2{font-size:32px}}p{margin:0;color:var(--muted);line-height:1.6}main.container{flex:1;display:flex;flex-direction:column;gap:20px}.card{background:var(--panel);border:1px solid var(--panel-border);border-radius:16px;padding:20px;box-shadow:var(--shadow);transition:transform .18s ease,background .18s ease,border-color .18s ease}@media (min-width: 640px){.card{padding:32px}}.card:hover{transform:translateY(-2px);background:var(--panel-hover);border-color:#0000001f}button{background:var(--accent);color:#fff;border:none;padding:10px 14px;border-radius:10px;cursor:pointer;font-weight:700;box-shadow:0 4px 12px #16a34a40;transition:transform .12s ease,filter .12s ease,box-shadow .12s ease}button:hover{filter:brightness(.95);transform:translateY(-1px);box-shadow:0 6px 16px #16a34a4d}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.tile{display:block;background:var(--bg-2);border:1px solid var(--panel-border);border-radius:12px;padding:14px 16px;color:var(--text);text-decoration:none;transition:transform .12s ease,background .12s ease,border-color .12s ease}.tile:hover{transform:translateY(-2px);background:var(--panel-hover);border-color:#00000026}footer.container{text-align:center;color:var(--muted);padding-bottom:40px}.footer-content{display:flex;flex-direction:column;align-items:center;gap:16px}@media (min-width: 640px){.footer-content{flex-direction:row;justify-content:space-between;align-items:center}}.reviews-link{color:var(--accent);text-decoration:none;font-weight:600;padding:8px 16px;border-radius:8px;border:1px solid var(--accent);transition:background .15s ease,color .15s ease}.reviews-link:hover,.reviews-link:active{background:var(--accent);color:#fff}.navbar{position:sticky;top:0;z-index:10;background:var(--bg);border-bottom:1px solid var(--panel-border);box-shadow:0 2px 8px #0000000f}.navbar-inner{display:flex;align-items:center;justify-content:space-between;padding-top:12px;padding-bottom:12px;flex-wrap:wrap;gap:12px}@media (min-width: 640px){.navbar-inner{padding-top:14px;padding-bottom:14px;flex-wrap:nowrap;gap:0}}.brand{display:flex;align-items:center;gap:8px;font-weight:700;letter-spacing:.3px;font-size:14px}@media (min-width: 640px){.brand{gap:12px;font-size:16px}}.brand .logo{height:40px;width:auto;object-fit:contain}@media (min-width: 640px){.brand .logo{height:48px}}.brand-text{display:none}@media (min-width: 640px){.brand-text{display:inline}}.nav-links{display:flex;gap:8px;flex-wrap:wrap}@media (min-width: 640px){.nav-links{gap:16px;flex-wrap:nowrap}}.nav-links a{color:var(--text);text-decoration:none;opacity:.85;padding:6px 10px;border-radius:8px;transition:background .12s ease,opacity .12s ease,color .12s ease;font-size:14px;-webkit-tap-highlight-color:transparent}@media (min-width: 640px){.nav-links a{padding:8px 12px;font-size:16px}}.nav-links a:hover,.nav-links a:active{opacity:1;background:var(--bg-2);color:var(--accent)}.btn{display:inline-block;background:linear-gradient(90deg,var(--accent) 0%,var(--accent-2) 100%);color:#fff;border:none;padding:14px 20px;border-radius:12px;cursor:pointer;font-weight:700;text-decoration:none;box-shadow:0 4px 12px #16a34a40;transition:transform .12s ease,filter .12s ease,box-shadow .12s ease;font-size:15px;min-height:48px;-webkit-tap-highlight-color:transparent;text-align:center}@media (min-width: 640px){.btn{padding:12px 24px;font-size:16px;min-height:auto}}.btn:hover,.btn:active{filter:brightness(.95);transform:translateY(-1px);box-shadow:0 6px 16px #16a34a4d}.btn-outline{background:transparent;color:var(--text);border:2px solid var(--accent);padding:14px 20px;border-radius:12px;transition:border-color .12s ease,background .12s ease,color .12s ease;font-size:15px;min-height:48px;-webkit-tap-highlight-color:transparent;text-align:center}@media (min-width: 640px){.btn-outline{padding:12px 24px;font-size:16px;min-height:auto}}.btn-outline:hover,.btn-outline:active{border-color:var(--accent-2);background:var(--accent);color:#fff}.hero{padding:32px 0}@media (min-width: 640px){.hero{padding:56px 0}}.hero-inner{display:grid;grid-template-columns:1fr;align-items:center;gap:24px}@media (min-width: 800px){.hero-inner{grid-template-columns:1.4fr 1fr}}.hero-copy h1{font-size:32px;margin-bottom:12px;letter-spacing:.3px;line-height:1.2}@media (min-width: 640px){.hero-copy h1{font-size:40px}}@media (min-width: 800px){.hero-copy h1{font-size:48px}}.hero-copy p{font-size:16px;color:var(--muted);line-height:1.6}@media (min-width: 640px){.hero-copy p{font-size:18px}}.hero-actions{display:flex;flex-direction:column;gap:12px;margin-top:20px}@media (min-width: 640px){.hero-actions{flex-direction:row;margin-top:16px}}.hero-visual{display:flex;justify-content:center;align-items:center}.hero-logo{max-width:200px;width:100%;height:auto;object-fit:contain}@media (min-width: 640px){.hero-logo{max-width:280px}}.programs{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;padding-left:16px}.programs h3{margin:0 0 6px}.coach-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:24px}.coach-gallery img{width:100%;height:320px;object-fit:cover;border-radius:16px;border:1px solid var(--panel-border);box-shadow:0 8px 24px #0000001a;transition:transform .2s ease,box-shadow .2s ease}.coach-gallery img:hover{transform:translateY(-4px) scale(1.02);box-shadow:0 12px 32px #00000026}.courts-grid{display:grid;grid-template-columns:1fr;gap:16px;margin-top:20px}@media (min-width: 640px){.courts-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:24px}}@media (min-width: 800px){.courts-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px}}.courts-grid img{width:100%;height:280px;object-fit:cover;border-radius:16px;border:1px solid var(--panel-border);box-shadow:0 8px 24px #0000001a;transition:transform .2s ease,box-shadow .2s ease}@media (min-width: 640px){.courts-grid img{height:320px}}@media (min-width: 800px){.courts-grid img{height:400px}}.courts-grid img:hover,.courts-grid img:active{transform:translateY(-4px) scale(1.02);box-shadow:0 12px 32px #00000026}.gallery-grid{display:grid;grid-template-columns:1fr;gap:16px}@media (min-width: 640px){.gallery-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}}@media (min-width: 800px){.gallery-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px}}.gallery-grid img{width:100%;height:280px;object-fit:cover;border-radius:16px;border:1px solid var(--panel-border);box-shadow:0 8px 24px #0000001a;transition:transform .2s ease,box-shadow .2s ease}@media (min-width: 640px){.gallery-grid img{height:320px}}@media (min-width: 800px){.gallery-grid img{height:400px}}.gallery-grid img:hover,.gallery-grid img:active{transform:translateY(-4px) scale(1.02);box-shadow:0 12px 32px #00000026}.contact-info{margin:20px 0;padding:16px;background:var(--bg-2);border-radius:12px;border:1px solid var(--panel-border)}@media (min-width: 640px){.contact-info{padding:20px}}.phone-display{font-size:16px;color:var(--text);line-height:1.6}@media (min-width: 640px){.phone-display{font-size:18px}}.phone-display strong{color:var(--text);margin-right:8px;display:block;margin-bottom:4px}@media (min-width: 640px){.phone-display strong{display:inline;margin-bottom:0}}.phone-link{color:var(--accent);text-decoration:none;font-weight:600;transition:color .15s ease;display:block;margin-top:4px;font-size:18px}@media (min-width: 640px){.phone-link{display:inline;margin-top:0;font-size:inherit}}.phone-link:hover,.phone-link:active{color:var(--accent-2);text-decoration:underline}.hours-display{font-size:16px;color:var(--text);line-height:1.6;margin-top:16px}@media (min-width: 640px){.hours-display{font-size:18px}}.hours-display strong{color:var(--text);margin-right:8px;display:block;margin-bottom:4px}@media (min-width: 640px){.hours-display strong{display:inline;margin-bottom:0}}.hours-text{color:var(--accent);font-weight:600;display:block;margin-top:4px;font-size:18px}@media (min-width: 640px){.hours-text{display:inline;margin-top:0;font-size:inherit}}.contact-actions{display:flex;flex-direction:column;gap:12px;margin-top:16px}@media (min-width: 640px){.contact-actions{flex-direction:row;flex-wrap:wrap}}.reviews-container{margin-top:24px}.reviews-slider-wrapper{position:relative;width:100%;max-width:900px;margin:0 auto 24px}.reviews-slider{position:relative;width:100%;overflow:hidden;background:#f5f5f5;height:600px;border-radius:16px;box-shadow:0 8px 24px #0000001a;border:1px solid var(--panel-border)}.reviews-slides{display:flex;transition:transform .5s ease-in-out;width:100%;height:100%;position:relative}.review-slide-item{min-width:100%;width:100%;flex-shrink:0;display:flex!important;align-items:center;justify-content:center;height:100%;padding:24px 60px;box-sizing:border-box;background:#fff}.review-image{max-width:100%!important;max-height:100%!important;width:auto!important;height:auto!important;display:block!important;visibility:visible!important;opacity:1!important;object-fit:contain;background:#fff;border-radius:8px;cursor:pointer;transition:transform .2s ease}.review-image:hover{transform:scale(1.02)}@media (max-width: 640px){.review-image{cursor:pointer}}@media (max-width: 640px){.reviews-slider{height:450px}.review-slide-item{padding:16px 50px}}.slider-btn{position:absolute;top:50%;transform:translateY(-50%);background:#fffffff2;border:none;width:48px;height:48px;border-radius:50%;font-size:32px;font-weight:700;color:var(--accent);cursor:pointer;z-index:10;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #0003;transition:all .2s ease;-webkit-tap-highlight-color:transparent}.slider-btn:hover,.slider-btn:active{background:#fff;box-shadow:0 6px 16px #0000004d;transform:translateY(-50%) scale(1.1)}.slider-btn-prev{left:8px}.slider-btn-next{right:8px}@media (max-width: 640px){.slider-btn{width:28px;height:28px;font-size:18px;background:#ffffffe6;box-shadow:0 2px 6px #0003}.slider-btn-prev{left:8px}.slider-btn-next{right:8px}.slider-btn:hover,.slider-btn:active{background:#fffffff2;transform:translateY(-50%) scale(1.05)}.review-slide-item{padding:16px 52px}.review-image{padding:0 4px}}.reviews-dots{display:flex;justify-content:center;gap:12px;margin-bottom:24px}.dot{width:12px;height:12px;border-radius:50%;border:none;background:#0003;cursor:pointer;transition:all .2s ease;padding:0;-webkit-tap-highlight-color:transparent}.dot:hover{background:#0006;transform:scale(1.2)}.dot.active{background:var(--accent);width:32px;border-radius:6px}.reviews-cta{display:flex;flex-direction:column;gap:12px;align-items:center;margin-top:24px}@media (min-width: 640px){.reviews-cta{flex-direction:row;justify-content:center}}.review-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000f2;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px;box-sizing:border-box}.modal-content{position:relative;width:100%;height:100%;max-width:90vw;max-height:90vh;display:flex;align-items:center;justify-content:center}.modal-image{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;border-radius:8px;box-shadow:0 8px 32px #00000080}.modal-close-btn{position:absolute;top:20px;right:20px;background:#ffffffe6;border:none;width:48px;height:48px;border-radius:50%;font-size:32px;font-weight:700;color:var(--text);cursor:pointer;z-index:1001;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #0000004d;transition:all .2s ease;-webkit-tap-highlight-color:transparent}.modal-close-btn:hover,.modal-close-btn:active{background:#fff;transform:scale(1.1)}.modal-nav-btn{position:absolute;top:50%;transform:translateY(-50%);background:#ffffffe6;border:none;width:56px;height:56px;border-radius:50%;font-size:36px;font-weight:700;color:var(--accent);cursor:pointer;z-index:1001;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #0000004d;transition:all .2s ease;-webkit-tap-highlight-color:transparent}.modal-nav-btn:hover,.modal-nav-btn:active{background:#fff;transform:translateY(-50%) scale(1.1)}.modal-nav-prev{left:20px}.modal-nav-next{right:20px}@media (max-width: 640px){.review-modal{padding:10px}.modal-close-btn{top:10px;right:10px;width:40px;height:40px;font-size:28px}.modal-nav-btn{width:44px;height:44px;font-size:32px}.modal-nav-prev{left:10px}.modal-nav-next{right:10px}.modal-content{max-width:95vw;max-height:85vh}}
