
@import url('https://fonts.googleapis.com/css2?family=Urbanist:wght@400;500;600;700;800;900&family=Bebas+Neue&display=swap');

:root {
  --text-xs: clamp(0.75rem, 0.7rem + 0.25vw, 0.875rem);
  --text-sm: clamp(0.875rem, 0.8rem + 0.35vw, 1rem);
  --text-base: clamp(1rem, 0.95rem + 0.25vw, 1.125rem);
  --text-lg: clamp(1.125rem, 1rem + 0.75vw, 1.45rem);
  --text-xl: clamp(1.45rem, 1.15rem + 1.25vw, 2.2rem);
  --text-2xl: clamp(2rem, 1.2rem + 2.5vw, 3.4rem);
  --text-3xl: clamp(2.8rem, 1rem + 4vw, 5.2rem);
  --space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;
  --space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;
  --radius-sm:.45rem;--radius-md:.8rem;--radius-lg:1.2rem;--radius-xl:1.8rem;--radius-full:9999px;
  --font-display:'Bebas Neue', sans-serif;
  --font-body:'Urbanist', sans-serif;
  --shadow-sm:0 1px 2px rgba(0,0,0,.06);--shadow-md:0 12px 30px rgba(0,0,0,.08);--shadow-lg:0 25px 70px rgba(0,0,0,.12);
  --content:min(1200px, calc(100vw - 2rem));
  --transition:180ms cubic-bezier(.16,1,.3,1);
  --bg:#f4f4f2;--surface:#ffffff;--surface-2:#f7f0e8;--surface-3:#e6e2db;--border:#d8d2c8;
  --text:#141414;--muted:#64615c;--faint:#96938e;--inverse:#fefcf8;
  --primary:#ff5a1f;--primary-hover:#e54a12;--accent:#16a34a;--accent-soft:#ffe7da;
  --accent-2:#111827;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;font-family:var(--font-body);font-size:var(--text-base);line-height:1.6;
  background:var(--bg);color:var(--text);direction:rtl;text-align:right;
}
a{text-decoration:none;color:inherit}
img{max-width:100%;height:auto;display:block}
h1,h2,h3,h4{font-family:var(--font-display);line-height:1.15;margin:0 0 var(--space-4);letter-spacing:.02em}
p{margin:0 0 var(--space-4);color:var(--muted);max-width:70ch}
ul{margin:0 0 var(--space-4);padding-inline-start:var(--space-6);color:var(--muted)}
.container{width:var(--content);margin-inline:auto;padding-inline:var(--space-4)}
section{padding:var(--space-16) 0}

/* Focus */
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{
  outline:2px solid var(--primary);outline-offset:3px;
}

/* Section utilities */
.eyebrow{
  display:inline-flex;padding:var(--space-2) var(--space-3);border-radius:var(--radius-full);
  background:var(--accent-soft);color:var(--primary);font-size:var(--text-xs);
  font-weight:800;text-transform:uppercase;letter-spacing:.08em;margin-bottom:var(--space-4);
}
.section-head{
  display:flex;justify-content:space-between;align-items:flex-end;gap:var(--space-6);
  margin-bottom:var(--space-10);flex-wrap:wrap;
}
.section-head h2{font-size:var(--text-2xl);max-width:16ch;margin:0}
.section-head p{margin:0;max-width:42ch}
.reveal{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}
.reveal.visible{opacity:1;transform:none}

/* Hero */
.hero{padding-top:var(--space-12)}
.hero-grid{display:grid;grid-template-columns:1fr .95fr;gap:var(--space-10);align-items:center}
.hero-copy h1{font-size:var(--text-3xl);max-width:12ch}
.hero-copy > p{font-size:var(--text-lg);max-width:42ch}
.hero-actions{display:flex;gap:var(--space-4);flex-wrap:wrap;margin-top:var(--space-6)}
.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4);margin-top:var(--space-8)}
.chip{
  padding:var(--space-5);border-radius:var(--radius-lg);background:var(--surface);
  border:1px solid var(--border);box-shadow:var(--shadow-sm);
}
.chip strong{display:block;font-size:var(--text-xl);color:var(--text);font-family:var(--font-display)}
.chip span{font-size:var(--text-sm);color:var(--muted)}
.hero-visual{
  padding:var(--space-6);border-radius:var(--radius-xl);
  background:linear-gradient(145deg,var(--surface),var(--surface-2));
  border:1px solid var(--border);box-shadow:var(--shadow-lg);position:relative;overflow:hidden;
}
.hero-visual::before{
  content:'';position:absolute;inset:auto auto -80px -80px;width:260px;height:260px;
  border-radius:50%;background:rgba(255,90,31,.12);
}
.hero-court{
  aspect-ratio:4/5;border-radius:var(--radius-lg);position:relative;overflow:hidden;
  background:linear-gradient(180deg,rgba(255,90,31,.08),rgba(22,163,74,.06));
  border:1px solid color-mix(in srgb,var(--border) 76%,var(--primary) 24%);
}
.hero-court .lane{position:absolute;inset:8%;border:3px solid rgba(20,20,20,.35);border-radius:var(--radius-md)}
.hero-court .cross{position:absolute;right:50%;top:8%;bottom:8%;width:3px;background:rgba(20,20,20,.25);transform:translateX(50%)}
.hero-court .rail{position:absolute;right:8%;left:8%;top:50%;height:3px;background:rgba(20,20,20,.25)}
.hero-badge{
  position:absolute;right:var(--space-4);top:var(--space-4);padding:var(--space-2) var(--space-3);
  border-radius:var(--radius-md);background:var(--primary);color:var(--inverse);
  font-family:var(--font-display);font-size:var(--text-lg);transform:rotate(-6deg);box-shadow:var(--shadow-md);
}
.hero-note{
  position:absolute;max-width:190px;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);
  background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-md);
}
.hero-note strong{display:block;color:var(--text);font-size:var(--text-sm)}
.hero-note.a{right:var(--space-4);bottom:var(--space-4)}
.hero-note.b{left:var(--space-4);bottom:28%}

/* Features */
.feature-layout{display:grid;grid-template-columns:1fr .9fr;gap:var(--space-8);align-items:start}
.feature-list{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4)}
.feature,.plan,.benefit,.quote,.step,.contact-card-item{
  background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);
  box-shadow:var(--shadow-sm);padding:var(--space-6);
}
.feature h3,.plan h3,.benefit h3,.step h3{font-size:var(--text-lg)}
.feature-link{color:var(--primary);font-weight:700;font-size:var(--text-sm)}
.feature-link:hover{text-decoration:underline}
.urban-panel{
  padding:var(--space-8);border-radius:var(--radius-xl);
  background:linear-gradient(135deg,var(--primary),#ff7a45 56%,var(--accent));
  color:var(--inverse);box-shadow:var(--shadow-lg);position:relative;overflow:hidden;
}
.urban-panel p{color:rgba(255,255,255,.88)}
.urban-panel .eyebrow{background:rgba(255,255,255,.15);color:var(--inverse)}
.urban-panel::before{
  content:'';position:absolute;inset:auto auto -70px -70px;width:220px;height:220px;
  border-radius:50%;background:rgba(255,255,255,.12);
}

/* Plans */
.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4)}
.plan{position:relative;display:flex;flex-direction:column}
.plan.featured{
  transform:translateY(-6px);
  background:linear-gradient(180deg,var(--surface),#fff3ea);
  border-color:color-mix(in srgb,var(--primary) 30%,var(--border));
}
.plan-tag{
  display:inline-flex;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);
  background:var(--accent);color:#07140a;font-size:var(--text-xs);font-weight:800;margin-bottom:var(--space-3);
}
.plan ul{list-style:none;padding:0;margin:var(--space-4) 0}
.plan li{padding-inline-start:var(--space-5);position:relative;margin-bottom:var(--space-2)}
.plan li::before{content:'✓';position:absolute;inset-inline-start:0;color:var(--accent);font-weight:700}
.plan-cta{margin-top:auto;padding-top:var(--space-4)}

/* Metrics */
.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4)}
.metric{
  padding:var(--space-6);background:var(--surface);border:1px solid var(--border);
  border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow-sm);
}
.metric strong{display:block;font-size:var(--text-2xl);color:var(--text);font-family:var(--font-display)}
.metric span{font-size:var(--text-sm);color:var(--muted)}

/* Quotes */
.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4)}
.quote{position:relative;overflow:hidden}
.quote::before{
  content:'"';position:absolute;left:var(--space-4);top:-.2rem;
  font-family:var(--font-display);font-size:5rem;line-height:1;
  color:color-mix(in srgb,var(--primary) 24%,transparent);
}
.quote p:first-of-type{font-size:var(--text-lg);color:var(--text);position:relative}
.quote cite{display:block;font-style:normal;font-weight:700;color:var(--text);margin-top:var(--space-3)}
.quote span{font-size:var(--text-sm);color:var(--muted)}

/* Gallery */
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4)}
.gallery-item{
  border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--border);
  box-shadow:var(--shadow-sm);aspect-ratio:4/3;object-fit:cover;width:100%;
}

/* FAQ */
.faq-layout{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-8)}
details{
  background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);
  padding:var(--space-4) var(--space-5);box-shadow:var(--shadow-sm);margin-bottom:var(--space-3);
}
summary{cursor:pointer;font-weight:800;font-family:var(--font-display);font-size:var(--text-base);color:var(--text)}
details p{margin:var(--space-3) 0 0;font-size:var(--text-sm)}

/* CTA band */
.cta-band{
  padding:var(--space-12);border-radius:var(--radius-xl);
  background:linear-gradient(145deg,var(--accent-2),#394150 70%,var(--primary));
  color:var(--inverse);display:grid;grid-template-columns:1fr auto;gap:var(--space-8);
  align-items:center;box-shadow:var(--shadow-lg);position:relative;overflow:hidden;
}
.cta-band p{color:rgba(255,255,255,.85);margin:0}
.cta-band .eyebrow{background:rgba(255,255,255,.16);color:var(--inverse)}
.cta-band::before{
  content:'';position:absolute;inset:-60px auto auto -60px;width:220px;height:220px;
  border-radius:50%;background:rgba(255,90,31,.14);
}
.cta-band-actions{display:flex;flex-direction:column;gap:var(--space-3);position:relative}
.btn-secondary-light{
  background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);color:var(--inverse);
}
.btn-secondary-light:hover{background:rgba(255,255,255,.2)}

/* Process / how-it-works */
.process{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4)}
.step{position:relative;overflow:hidden}
.step-no{font-size:var(--text-xs);font-weight:900;color:var(--primary);text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--space-2)}
.step::after{
  content:'';position:absolute;left:-30px;bottom:-30px;width:100px;height:100px;
  border-radius:50%;background:color-mix(in srgb,var(--accent) 20%,transparent);
}

/* Page header */
.page-header{padding:var(--space-12) 0 var(--space-8);background:var(--surface-2);border-bottom:1px solid var(--border)}
.page-header h1{font-size:var(--text-2xl);margin:0}
.page-header p{margin:var(--space-3) 0 0;max-width:60ch}

/* Contact */
.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-10);align-items:start}
.contact-cards{display:grid;gap:var(--space-4)}
.contact-card-item h3{font-size:var(--text-base);margin-bottom:var(--space-2)}
.contact-card-item a{color:var(--primary);font-weight:600}
.contact-card-item a:hover{text-decoration:underline}
.contact-contactus-form-wrapper{
  background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);
  padding:var(--space-8);box-shadow:var(--shadow-sm);
}
.contact-contactus-form-wrapper h2{margin-top:0}
.map-embed{
  width:100%;min-height:320px;border:1px solid var(--border);border-radius:var(--radius-lg);
  overflow:hidden;box-shadow:var(--shadow-sm);
}
.map-embed iframe{width:100%;height:320px;border:0;display:block}

/* Program detail blocks */
.program-detail{
  display:grid;grid-template-columns:1fr 1fr;gap:var(--space-8);align-items:center;
  padding:var(--space-8);background:var(--surface);border:1px solid var(--border);
  border-radius:var(--radius-xl);margin-bottom:var(--space-6);box-shadow:var(--shadow-sm);
}
.program-detail:nth-child(even){background:var(--surface-2)}
.program-detail h2{margin:0;font-size:var(--text-xl)}
.program-detail ul{margin:var(--space-4) 0 0}

/* Header */
.header-racket-arena{
  position:sticky;top:0;z-index:100;background:color-mix(in srgb,var(--bg) 90%,transparent);
  backdrop-filter:blur(12px);border-bottom:1px solid var(--border);
}
.header-racket-arena-container{
  width:var(--content);margin-inline:auto;padding:var(--space-4);
  display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);
}
.header-racket-arena-brand{display:flex;align-items:center;gap:var(--space-3)}
.header-racket-arena-logo-img{width:44px;height:44px;border-radius:var(--radius-md);object-fit:cover}
.header-racket-arena-logo-text{font-family:var(--font-display);font-weight:700;font-size:var(--text-lg)}
.header-racket-arena-desktop-nav{display:none;align-items:center;gap:var(--space-2);flex-wrap:wrap}
.header-racket-arena-nav-link{
  padding:var(--space-2) var(--space-3);border-radius:var(--radius-full);
  font-size:var(--text-sm);color:var(--muted);transition:color var(--transition),background var(--transition);
}
.header-racket-arena-nav-link:hover{color:var(--text);background:var(--surface-3)}
.header-racket-arena-cta-button{
  padding:var(--space-2) var(--space-5);border-radius:var(--radius-full);
  background:var(--primary);color:var(--inverse);font-weight:700;font-size:var(--text-sm);
}
.header-racket-arena-cta-button:hover{background:var(--primary-hover)}
.header-racket-arena-mobile-toggle{
  display:flex;align-items:center;justify-content:center;width:44px;height:44px;
  border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);cursor:pointer;
}
.header-racket-arena-hamburger{
  display:block;width:20px;height:2px;background:var(--text);position:relative;
}
.header-racket-arena-hamburger::before,.header-racket-arena-hamburger::after{
  content:'';position:absolute;left:0;width:20px;height:2px;background:var(--text);
}
.header-racket-arena-hamburger::before{top:-6px}
.header-racket-arena-hamburger::after{top:6px}
.header-racket-arena-mobile-menu{
  display:none;position:fixed;inset:0;z-index:200;background:var(--surface);
  flex-direction:column;padding:var(--space-6);
}
.header-racket-arena-mobile-menu.active{display:flex}
.header-racket-arena-mobile-header{display:flex;justify-content:flex-end;margin-bottom:var(--space-8)}
.header-racket-arena-mobile-close{
  width:44px;height:44px;border:1px solid var(--border);border-radius:var(--radius-md);
  background:var(--surface-2);cursor:pointer;font-size:1.25rem;
}
.header-racket-arena-mobile-links{display:flex;flex-direction:column;gap:var(--space-2)}
.header-racket-arena-mobile-link{
  padding:var(--space-4);border-radius:var(--radius-md);font-size:var(--text-lg);color:var(--text);
}
.header-racket-arena-mobile-cta{
  margin-top:var(--space-4);padding:var(--space-4);border-radius:var(--radius-full);
  background:var(--primary);color:var(--inverse);text-align:center;font-weight:700;
}

/* Footer */
.footer{background:var(--surface-2);border-top:1px solid var(--border);padding:var(--space-16) 0 var(--space-8)}
.footer-grid{display:grid;gap:var(--space-8);grid-template-columns:1fr}
.footer h3{font-size:var(--text-base);color:var(--text);margin-bottom:var(--space-4)}
.footer-nav,.footer-legal-links{display:flex;flex-direction:column;gap:var(--space-2)}
.footer-nav a,.footer-legal-links a{color:var(--muted);font-size:var(--text-sm)}
.footer-nav a:hover,.footer-legal-links a:hover{color:var(--primary)}
.footer-contact-info p{font-size:var(--text-sm);margin-bottom:var(--space-2)}
.footer-copyright{grid-column:1/-1;margin-top:var(--space-4);padding-top:var(--space-6);border-top:1px solid var(--border)}
.footer-copyright p{font-size:var(--text-xs);color:var(--faint)}

/* Buttons & cookie */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);
  min-height:46px;padding:var(--space-3) var(--space-6);border-radius:var(--radius-full);
  border:1px solid transparent;font-weight:700;cursor:pointer;transition:all var(--transition);
  font-family:var(--font-body);font-size:var(--text-sm);
}
.btn-primary{background:var(--primary);color:var(--inverse)}
.btn-primary:hover{background:var(--primary-hover)}
.btn-secondary{background:var(--surface);border-color:var(--border);color:var(--text)}
.btn-secondary:hover{background:var(--surface-3)}
.cookie-banner{
  position:fixed;bottom:0;left:0;right:0;z-index:150;padding:var(--space-4);
  background:var(--surface);border-top:1px solid var(--border);box-shadow:var(--shadow-lg);
}
.cookie-banner.hidden{display:none}
.cookie-banner-inner{
  width:var(--content);margin-inline:auto;display:flex;flex-wrap:wrap;
  align-items:center;justify-content:space-between;gap:var(--space-4);
}
.cookie-banner-actions{display:flex;gap:var(--space-2)}

/* Legal */
.legal-court{padding:var(--space-16) 0;background:var(--bg)}
.legal-court .content{max-width:800px;margin-inline:auto;padding:var(--space-8) 0}
.legal-court h1{font-size:var(--text-2xl);margin-bottom:var(--space-4);color:var(--text)}
.legal-court .update-date{
  display:block;font-size:var(--text-sm);color:var(--muted);
  margin-bottom:var(--space-8);
}
.legal-court section{margin-bottom:var(--space-10)}
.legal-court h2{
  font-size:var(--text-lg);margin:var(--space-8) 0 var(--space-4);
  color:var(--text);
}
.legal-court section > h2:first-child{margin-top:0}
.legal-court p{font-size:var(--text-base);color:var(--text);line-height:1.75;margin-bottom:var(--space-4)}
.legal-court ul{list-style:none;padding:0;margin:0 0 var(--space-4)}
.legal-court li{
  font-size:var(--text-base);color:var(--text);line-height:1.75;
  margin-bottom:var(--space-2);padding-inline-start:var(--space-6);position:relative;
}
.legal-court li::before{
  content:'•';position:absolute;inset-inline-start:0;color:var(--primary);font-weight:700;
}
.legal-court .contact-section{
  background:var(--surface-2);padding:var(--space-8);border-radius:var(--radius-lg);
  border-inline-start:4px solid var(--primary);margin-top:var(--space-8);
}
.legal-court .contact-section h2{margin-top:0}
.legal-court .contact-section strong{color:var(--primary);font-weight:700}
.legal-court a{color:var(--primary);font-weight:600}
.legal-court a:hover{text-decoration:underline}
@media (min-width:768px){
  .legal-court .content{padding:var(--space-12) 0}
}

/* Utility pages */
.error-page,.thank-you-page{padding:var(--space-20) 0;text-align:center}
.error-page h1,.thank-you-page h1{font-size:var(--text-2xl)}
.error-page .hero-actions,.thank-you-page .hero-actions{justify-content:center;margin-top:var(--space-8)}

/* Contact form */
.contact-contactus-form{display:flex;flex-direction:column;gap:var(--space-4)}
.contact-contactus-label{font-weight:600;font-size:var(--text-sm);color:var(--text)}
.contact-contactus-input,.contact-contactus-textarea{
  width:100%;padding:var(--space-3);border:1px solid var(--border);
  border-radius:var(--radius-md);background:var(--surface);font:inherit;color:var(--text);
}
.contact-contactus-textarea{min-height:140px;resize:vertical}
.contact-contactus-submit{
  padding:var(--space-3) var(--space-6);border:none;border-radius:var(--radius-full);
  background:var(--primary);color:var(--inverse);font-weight:700;cursor:pointer;font:inherit;
}
.contact-contactus-submit:hover{background:var(--primary-hover)}

@media (min-width:768px){
  .header-racket-arena-desktop-nav{display:flex}
  .header-racket-arena-mobile-toggle{display:none}
  .footer-grid{grid-template-columns:repeat(2,1fr)}
}
@media (min-width:1024px){
  .footer-grid{grid-template-columns:repeat(4,1fr)}
}
@media (max-width:1024px){
  .hero-grid,.feature-layout,.faq-layout,.cta-band,.contact-layout,.program-detail{grid-template-columns:1fr}
  .feature-list,.plan-grid,.metrics,.quotes,.gallery-grid,.process{grid-template-columns:repeat(2,1fr)}
  .plan.featured{transform:none}
  .cta-band-actions{flex-direction:row;flex-wrap:wrap}
}
@media (max-width:720px){
  .hero-stats,.feature-list,.plan-grid,.metrics,.quotes,.gallery-grid,.process{grid-template-columns:1fr}
  .section-head{display:block}
  .section-head h2{max-width:none}
  .hero-actions{flex-direction:column;align-items:stretch}
}
@media (prefers-reduced-motion:reduce){
  *,.reveal{scroll-behavior:auto!important;transition:none!important;animation:none!important}
  .reveal{opacity:1;transform:none}
}
