/* Navy revision. Junior section intentionally retains its original colours and layout. */
.menu-toggle{color:#f1f4f8}
:root{--dark:#f1f4f8;--muted:#b4c3d2;--line:#30465c}
body{background:#0c1d30;color:#f1f4f8}.header{background:rgba(12,29,48,.97);border-color:#30465c}.header-inner{padding-block:12px}.brand{gap:15px}.brand-logo{display:block;width:124px;height:65px;overflow:hidden;border-radius:3px;background:#f5f5f2}.brand-logo img{width:124px;height:65px;object-fit:cover;object-position:center 44%}.brand-location{font-size:10px;letter-spacing:.12em}.brand-location small{font-size:8px}.hero h1 em{color:#d8ed8b}.hero-note .sun{color:#d8ed8b}.hero-visual{border-radius:150px 150px 3px 3px;height:650px}.hero-visual>img{object-position:center 49%;object-fit:cover}.hero-visual:after{background:linear-gradient(transparent,rgba(6,20,35,.87))}.hero .eyebrow{color:#b8cddb}.eyebrow{color:#d8ed8b}.button{background:#d8ed8b;color:#0c1d30}.button:hover{background:#eaf5be}.text-link:hover{color:#d8ed8b}.trust-strip{background:#172f49}.service .number{color:#a8c4d7}.service-meta{color:#d8ed8b}.levels .level-dot{border-color:#bdd599}.levels article:nth-child(3) .level-dot{background:#e7eed3}.about-band,.reviews-band{background:#11283e}.about-photo{height:610px}.about-photo img{object-position:center 45%}.photo-stamp{color:#153f34}.credentials{border-color:var(--line)}.credentials>span{color:#d8ed8b}.private-price{background:#193650}.group-price{background:#10263c}.group-price .small{color:var(--muted)}.location-band{background:#132c44}.location-card{background:#0d2135;border-color:#395870}.location-card h3{font-size:35px}.location-card .small{color:#b4c3d2}.location-card .eyebrow{color:#d8ed8b}.court-icon{display:block;color:#d8ed8b;margin-bottom:20px}.court-icon svg{width:50px;height:50px}.map-slot{background:#1a344d;padding:24px;margin:24px 0;min-height:170px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center}.map-load{background:none;border:0;color:#eef4fa;display:flex;align-items:center;gap:12px;text-decoration:underline;text-underline-offset:5px;padding:14px;font-size:14px}.map-slot iframe{width:100%;height:280px;border:0}.map-slot.is-loaded{padding:0}.quote-mark{color:#d8ed8b}.review{border-color:#365168}.contact-band{background:#071725}.booking-box{background:#15314a;color:#f1f4f8}.booking-box input,.booking-box select{background:#0d2135;color:#edf4fb;border-color:#4c6477}.booking-box input::placeholder{color:#b1c1d0}.booking-box .small{color:#b4c3d2}.footer{color:#e2eaf3}.skip{color:#0c1d30}.license-band{padding:55px 0;background:#102238;border-block:1px solid #2c4257}.license-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.license-layout h2{font-size:40px}.license-layout p:not(.eyebrow){color:var(--muted);font-size:14px;max-width:470px}.license-image{display:block;max-width:440px;text-decoration:none;justify-self:center;transform:rotate(-2deg);transition:transform .2s}.license-image:hover{transform:rotate(0)}.license-image img{border-radius:9px;box-shadow:0 15px 40px #0005}.license-image>span{display:block;text-align:center;font-size:11px;margin-top:18px;color:#d8ed8b}.gallery-intro{color:var(--muted);max-width:580px}.client-gallery{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:38px}.client-gallery figure{background:#11283e}.client-gallery img{height:570px;object-fit:cover;object-position:center 58%}.client-gallery figure:last-child img{object-position:center 55%}.client-gallery figcaption{padding:18px 22px;font-family:Georgia,serif;font-size:21px}.social-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:15px}.social-links a{display:inline-flex;align-items:center;gap:9px;text-decoration:none;padding:11px 14px;border:1px solid #40596d;border-radius:3px;font-size:12px}.social-links a:hover{color:#d8ed8b;border-color:#d8ed8b}.social-links svg{width:21px;height:21px}.footer>.social-links{margin-top:25px}.google-reviews-link{display:flex;align-items:center;justify-content:space-between;gap:35px;border-bottom:1px solid #365168;padding-bottom:38px;margin-bottom:42px}.google-reviews-link .eyebrow{margin-bottom:10px}.google-reviews-link h3{font-size:25px}.google-reviews-link p:not(.eyebrow){font-size:14px;color:var(--muted)}.google-reviews-link .button{flex-shrink:0;font-size:12px}.google-reviews-link+.eyebrow{margin-top:30px}.junior{--dark:#163d33;--muted:#58665e;--line:#d8ded4}.junior .button{background:#d8ed8b;color:#153f34}.junior .button:hover{background:#e6f3b7}.junior .eyebrow{color:#d8ed8b}.mobile-book{background:#d8ed8b;color:#153f34}
@media(max-width:1100px){.brand-location{display:none}.hero-visual{height:590px}.license-layout{gap:50px}.client-gallery img{height:470px}}
@media(max-width:800px){.brand-logo,.brand-logo img{width:105px;height:55px}.hero-visual{height:535px}.license-layout{gap:30px}.license-layout h2{font-size:33px}.client-gallery img{height:400px}.google-reviews-link{display:block}.google-reviews-link .button{margin-top:24px}.about-photo{height:580px}}
@media(max-width:600px){.header-inner{padding-block:8px}.brand-logo,.brand-logo img{width:98px;height:50px}.hero-visual{height:450px;border-radius:115px 115px 3px 3px}.hero-visual>img{object-position:center 48%}.license-layout{grid-template-columns:1fr;gap:30px}.license-layout h2{font-size:36px}.license-image{max-width:380px}.license-band{padding:42px 0}.client-gallery{grid-template-columns:1fr;gap:24px}.client-gallery img{height:auto;max-height:none;object-fit:contain}.client-gallery figcaption{font-size:19px;padding:16px 18px}.location-card h3{font-size:33px}.about-photo{height:480px}.social-links{gap:8px}.social-links a{font-size:11px;padding:10px}.social-links svg{width:19px;height:19px}.hero h1{font-size:49px}.map-slot{padding:15px}.footer-brand .brand-location{display:block}.google-reviews-link h3{font-size:23px}}
.google-review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:30px 0}.google-review{background:#172c43;border:1px solid #38506a;border-radius:12px;padding:25px;min-width:0}.google-review header{display:flex;flex-direction:column;gap:5px}.google-review time{font-size:12px;color:#b9c9d8}.review-stars{color:#d8ed81;letter-spacing:3px;margin:15px 0}.review-body{font-size:14px;line-height:1.75;white-space:pre-line;max-height:240px;overflow:auto;scrollbar-width:thin;padding-right:8px}.review-rating{font-size:19px}.reviews-band .small{margin-top:12px}@media(max-width:900px){.google-review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.google-review-grid{grid-template-columns:1fr}.review-body{max-height:none}}
/* Real court photograph with a slow camera-style drift. */
body{isolation:isolate}.tennis-atmosphere{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none;contain:strict;background:#0c1d30}.court-photograph{position:absolute;inset:-5%;background-image:linear-gradient(90deg,rgba(8,25,43,.96),rgba(8,25,43,.88) 55%,rgba(8,25,43,.82)),url('juan-background-clean.webp');background-size:cover;background-position:center,center 53%;animation:photo-drift 28s ease-in-out infinite alternate;transform-origin:65% 60%}.motion-control{position:fixed;left:16px;bottom:18px;z-index:24;padding:7px 11px;border:1px solid #52687b;border-radius:20px;background:#0c1d30ed;color:#bacbd9;font-size:10px;cursor:pointer}.motion-switch:focus-visible+.motion-control{outline:3px solid #d8ed8b;outline-offset:3px}.motion-switch:checked+.motion-control{border-color:#d8ed8b;color:#d8ed8b}.motion-switch:checked~.tennis-atmosphere *{animation-play-state:paused!important}@keyframes photo-drift{from{transform:scale(1) translate3d(0,0,0)}to{transform:scale(1.07) translate3d(-1.5%,1%,0)}}@media(max-width:600px){.court-photograph{background-position:center,62% center}.motion-control{bottom:82px;font-size:9px}}@media(prefers-reduced-motion:reduce){.tennis-atmosphere *{animation:none!important}.motion-control{display:none}}
.location-photos{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:48px}.location-photos figure{overflow:hidden;border:1px solid #395870;border-radius:6px;background:#0d2135}.location-photos img{width:100%;aspect-ratio:3/2;object-fit:cover}.location-photos figcaption{padding:18px 22px;font-family:Georgia,serif;font-size:21px}.location-credit{grid-column:1/-1;margin:0;font-size:11px;color:#b4c3d2}@media(max-width:600px){.location-photos{grid-template-columns:1fr;gap:18px;margin-top:30px}.location-photos figcaption{font-size:18px;padding:15px 18px}}
