/* QuickServe,Centre Court design (October 2026).
   Scoped to body.cc,#page-home.cc-home and #page-about so the club portal and dashboards keep their own styling. */

:root{
  --cc-paper:#F7F8F4; --cc-paper-2:#ECEFE8; --cc-card:#FFFFFF;
  --cc-ink:#0E2018; --cc-ink-2:#2E4238; --cc-mute:#5F6F66;
  --cc-court:#143A2B; --cc-court-2:#1D5440; --cc-court-3:#2B6A51;
  --cc-lime:#C8E600; --cc-lime-2:#B5D000;
  --cc-line:rgba(14,32,24,.14); --cc-line-2:rgba(14,32,24,.08);
  --cc-on-court:#F7F8F4; --cc-on-court-2:rgba(247,248,244,.74); --cc-on-court-line:rgba(247,248,244,.16);
  --cc-sans:"Barlow",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --cc-head:"Barlow Semi Condensed","Barlow",ui-sans-serif,system-ui,sans-serif;
  --cc-disp:"Bebas Neue","Arial Narrow","Helvetica Neue Condensed",Impact,sans-serif;
  
  --cc-max:1320px; --cc-gut:clamp(20px,4.4vw,64px); --cc-nav:76px;
  --cc-ease:cubic-bezier(.2,.7,.2,1);
}/* ---------- Navigation (global) ---------- */
body.cc #main-nav{
  position:fixed!important; inset:0 0 auto 0!important; z-index:1000!important;
  height:var(--cc-nav)!important; padding:0 var(--cc-gut)!important; margin:0!important;
  display:flex!important; align-items:center!important; justify-content:space-between!important; gap:24px;
  background:rgba(247,248,244,.0)!important; border:0!important; border-bottom:1px solid transparent!important;
  box-shadow:none!important; backdrop-filter:none; -webkit-backdrop-filter:none;
  transition:background .35s var(--cc-ease), border-color .35s var(--cc-ease), height .35s var(--cc-ease);
  font-family:var(--cc-sans)!important;
}body.cc #main-nav.cc-scrolled,body.cc.cc-inner #main-nav{
  background:rgba(247,248,244,.86)!important; border-bottom-color:var(--cc-line-2)!important;
  backdrop-filter:saturate(1.3) blur(14px); -webkit-backdrop-filter:saturate(1.3) blur(14px);
}body.cc.cc-dark-page #main-nav{background:rgba(247,248,244,.96)!important; border-bottom-color:var(--cc-line-2)!important}body.cc #main-nav .logo{display:flex!important; align-items:center; gap:10px; height:auto!important; padding:0!important; text-decoration:none!important; cursor:pointer}body.cc #main-nav .logo img{display:block!important; height:36px!important; width:auto!important; max-width:none!important; margin:0!important}.cc-logo-mark{width:46px; height:30px; flex:none; display:block}.cc-logo-word{font:400 29px/1 "Bebas Neue",var(--cc-sans); letter-spacing:.01em; color:var(--cc-ink); white-space:nowrap; padding-top:3px}.cc-logo-word b{font-weight:400; color:var(--cc-court-3)}body.cc #nav-menu{display:flex!important; align-items:center!important; gap:clamp(18px,2.4vw,34px)!important; margin:0!important; padding:0!important; list-style:none!important; background:none!important; position:static!important; box-shadow:none!important}body.cc #nav-menu li{margin:0!important; padding:0!important; list-style:none!important; border:0!important}body.cc #nav-menu a{
  font:500 15px/1 var(--cc-sans)!important; letter-spacing:-.005em!important; text-transform:none!important;
  color:var(--cc-ink-2)!important; text-decoration:none!important; padding:8px 0!important; background:none!important;
  border:0!important; cursor:pointer; display:inline-flex!important; align-items:center; gap:7px; position:relative; transition:color .2s;
}body.cc #nav-menu a:not(.nav-cta)::after{content:""; position:absolute; left:0; right:0; bottom:2px; height:1px; background:currentColor; transform:scaleX(0); transform-origin:left; transition:transform .3s var(--cc-ease)}body.cc #nav-menu a:not(.nav-cta):hover{color:var(--cc-ink)!important}body.cc #nav-menu a:not(.nav-cta):hover::after{transform:scaleX(1)}body.cc #nav-menu #nav-clubs-portal svg{stroke:currentColor!important; width:13px; height:13px}body.cc #nav-menu a.nav-cta{
  background:var(--cc-court)!important; color:var(--cc-paper)!important; padding:12px 20px!important; border-radius:999px!important;
  font-weight:500!important; box-shadow:none!important; transition:background .25s, transform .25s var(--cc-ease)!important;
}body.cc #nav-menu a.nav-cta:hover{background:var(--cc-court-2)!important; transform:translateY(-1px)}body.cc #hamburger{display:none; background:none!important; border:0!important; width:44px; height:44px; padding:10px!important; cursor:pointer; position:relative; z-index:1002}body.cc #hamburger span{display:block!important; height:1.5px!important; width:24px!important; background:var(--cc-ink)!important; margin:6px 0!important; border-radius:2px; transition:transform .3s var(--cc-ease), opacity .2s}body.cc #hamburger.active span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}body.cc #hamburger.active span:nth-child(2){opacity:0}body.cc #hamburger.active span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}

@media (max-width:980px){body.cc #hamburger{display:block!important}body.cc #nav-menu{
    position:fixed!important; inset:0!important; z-index:1001!important; flex-direction:column!important; align-items:flex-start!important; justify-content:center!important;
    gap:6px!important; padding:96px var(--cc-gut) 40px!important; background:var(--cc-paper)!important;
    opacity:0; visibility:hidden; transform:translateY(-8px); transition:opacity .3s, transform .35s var(--cc-ease), visibility 0s .35s;
  }body.cc #nav-menu.open{opacity:1; visibility:visible; transform:none; transition:opacity .3s, transform .35s var(--cc-ease)}body.cc #nav-menu a{font:500 30px/1.2 var(--cc-sans)!important; letter-spacing:-.025em!important; color:var(--cc-ink)!important; padding:8px 0!important}body.cc #nav-menu a.nav-cta{font-size:18px!important; margin-top:18px; padding:16px 24px!important}.cc-logo-word{font-size:26px}
}/* ---------- Page shell ---------- */
#page-home.cc-home{background:var(--cc-paper); color:var(--cc-ink); font-family:var(--cc-sans); overflow-x:clip; overflow-y:visible; -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility}#page-home.cc-home *,#page-home.cc-home *::before,#page-home.cc-home *::after{box-sizing:border-box}#page-home.cc-home :where(h1,h2,h3,h4,p,ol,ul,dl,dd,figure,blockquote){margin:0; padding:0}#page-home.cc-home :where(ol,ul){list-style:none}#page-home.cc-home :where(a){color:inherit}#page-home.cc-home img{max-width:100%; display:block}#page-home span.cc-anchor{all:unset!important; display:block!important; position:relative!important; top:calc(-1 * var(--cc-nav) - 8px)!important; height:0!important; width:0!important; visibility:hidden!important}#page-home .cc-wrap{max-width:var(--cc-max); margin:0 auto; padding:0 var(--cc-gut)}#page-home .cc-sec{padding:clamp(80px,10vw,152px) 0; position:relative}#page-home .cc-sec.alt{background:var(--cc-paper-2)}#page-home .cc-sec.cc-dark{background:var(--cc-court); color:var(--cc-on-court)}#page-home .cc-kicker{font:500 13px/1.3 var(--cc-sans); letter-spacing:.09em; text-transform:uppercase; color:var(--cc-mute); display:flex; align-items:center; gap:10px}#page-home .cc-kicker::before{content:""; width:7px; height:7px; border-radius:50%; background:var(--cc-lime); box-shadow:0 0 0 1px rgba(14,32,24,.25) inset; flex:none}#page-home .cc-dark .cc-kicker{color:var(--cc-on-court-2)}#page-home .cc-dark .cc-kicker::before{box-shadow:none}#page-home .cc-h2{font:600 clamp(2.3rem,4.6vw,4.4rem)/1 var(--cc-sans); letter-spacing:-.04em; color:inherit; max-width:16ch}#page-home .cc-h2 em,#page-home .cc-h1 em,#page-home .cc-statement em,#page-home .cc-quote em{font-family:inherit; font-style:normal; font-weight:inherit; letter-spacing:inherit}#page-home .cc-h2 em{color:var(--cc-court-3)}#page-home .cc-dark .cc-h2 em{color:var(--cc-lime)}#page-home .cc-lede{font:400 clamp(1.06rem,1.25vw,1.2rem)/1.6 var(--cc-sans); color:var(--cc-ink-2); max-width:54ch}#page-home .cc-dark .cc-lede{color:var(--cc-on-court-2)}#page-home .cc-body{font:400 1rem/1.62 var(--cc-sans); color:var(--cc-ink-2)}#page-home .cc-dark .cc-body{color:var(--cc-on-court-2)}#page-home .cc-btn{display:inline-flex; align-items:center; gap:10px; font:500 16px/1 var(--cc-sans); letter-spacing:-.005em; padding:17px 26px; border-radius:999px; border:1px solid transparent; text-decoration:none; cursor:pointer; transition:background .25s, color .25s, border-color .25s, transform .3s var(--cc-ease)}#page-home .cc-btn svg{width:16px; height:16px; transition:transform .3s var(--cc-ease)}#page-home .cc-btn:hover svg{transform:translateX(3px)}#page-home .cc-btn.primary{background:var(--cc-court); color:var(--cc-paper)}#page-home .cc-btn.primary:hover{background:var(--cc-court-2); transform:translateY(-1px)}#page-home .cc-btn.lime{background:var(--cc-lime); color:var(--cc-ink)}#page-home .cc-btn.lime:hover{background:#D6F01A; transform:translateY(-1px)}#page-home .cc-btn.ghost{background:transparent; color:var(--cc-ink); border-color:var(--cc-line)}#page-home .cc-btn.ghost:hover{border-color:var(--cc-ink)}#page-home .cc-link{font:500 16px/1 var(--cc-sans); color:var(--cc-ink); text-decoration:none; display:inline-flex; gap:8px; align-items:center; padding:6px 0; border-bottom:1px solid var(--cc-line); transition:border-color .25s}#page-home .cc-link:hover{border-color:var(--cc-ink)}#page-home .cc-link svg{width:15px; height:15px; transition:transform .3s var(--cc-ease)}#page-home .cc-link:hover svg{transform:translateX(3px)}/* reveal */
.cc-js [data-rv]{opacity:0; transform:translateY(22px); transition:opacity .9s var(--cc-ease), transform 1s var(--cc-ease)}.cc-js #page-home [data-rv].in{opacity:1; transform:none}.cc-js #page-home [data-rv="2"]{transition-delay:.08s}.cc-js #page-home [data-rv="3"]{transition-delay:.16s}.cc-js #page-home [data-rv="4"]{transition-delay:.24s}
@media (prefers-reduced-motion:reduce){.cc-js #page-home [data-rv]{opacity:1; transform:none; transition:none}}/* ---------- Hero ---------- */
.cc-hero{padding:calc(var(--cc-nav) + clamp(28px,5vw,72px)) 0 clamp(56px,7vw,104px)}#page-home .cc-hero .cc-wrap{display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr); gap:clamp(36px,5vw,80px); align-items:stretch}#page-home .cc-hero-copy{display:flex; flex-direction:column; justify-content:space-between; gap:48px; padding-top:clamp(8px,3vw,40px)}#page-home .cc-status{display:inline-flex; align-items:center; gap:12px; font:500 14px/1.3 var(--cc-sans); color:var(--cc-ink-2); padding:8px 16px 8px 10px; border:1px solid var(--cc-line); border-radius:999px; align-self:flex-start; background:rgba(252,251,248,.6)}#page-home .cc-dot{position:relative; width:10px; height:10px; border-radius:50%; background:var(--cc-lime); box-shadow:0 0 0 1px rgba(14,32,24,.3) inset; flex:none}#page-home .cc-dot::after{content:""; position:absolute; inset:-5px; border-radius:50%; border:1px solid var(--cc-lime-2); opacity:0; animation:ccPing 2.6s var(--cc-ease) infinite}
@keyframes ccPing{0%{transform:scale(.6); opacity:.9}70%,100%{transform:scale(1.5); opacity:0}}#page-home .cc-h1{font:600 clamp(3.1rem,min(6.4vw,12vh),6.6rem)/.92 var(--cc-sans); letter-spacing:-.05em; color:var(--cc-ink); margin:28px 0 0!important}#page-home .cc-h1 em{color:var(--cc-court-3); letter-spacing:-.03em; padding-right:.04em}#page-home .cc-hero-lede{margin-top:28px!important; max-width:44ch}#page-home .cc-ctas{display:flex; flex-wrap:wrap; align-items:center; gap:14px 28px; margin-top:36px}#page-home .cc-facts{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid var(--cc-line)}#page-home .cc-fact{padding:22px 20px 0 0}#page-home .cc-fact + .cc-fact{padding-left:22px; border-left:1px solid var(--cc-line)}#page-home .cc-fact b{display:block; font:400 clamp(2.6rem,3.6vw,3.4rem)/.95 var(--cc-disp); letter-spacing:.01em; color:var(--cc-ink)}#page-home .cc-fact span{display:block; margin-top:8px; font:400 14px/1.4 var(--cc-sans); color:var(--cc-mute)}#page-home .cc-hero-media{position:relative; margin:0}#page-home .cc-hero-media .cc-photo{position:relative; height:100%; min-height:560px; max-height:calc(100vh - var(--cc-nav) - 40px); border-radius:6px; overflow:hidden; background:#d9d3c6}#page-home .cc-hero-media .cc-photo img{width:100%; height:100%; object-fit:cover; object-position:50% 58%; transform:scale(1.04); transition:transform 1.6s var(--cc-ease)}#page-home .cc-hero-media.in .cc-photo img,.no-js .cc-hero-media .cc-photo img{transform:none}#page-home .cc-caption{display:flex; justify-content:space-between; gap:16px; margin-top:14px; font:400 13.5px/1.45 var(--cc-sans); color:var(--cc-mute)}#page-home .cc-caption span:last-child{font:500 12px/1.6 var(--cc-sans); letter-spacing:.08em; text-transform:uppercase; font-style:normal}#page-home .cc-tag{position:absolute; left:18px; bottom:18px; display:flex; align-items:center; gap:10px; padding:10px 14px; border-radius:999px; background:rgba(247,248,244,.92); backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px); font:500 13.5px/1 var(--cc-sans); color:var(--cc-ink)}/* ---------- Brand strip ---------- */
.cc-brands{border-top:1px solid var(--cc-line); border-bottom:1px solid var(--cc-line)}#page-home .cc-brands .cc-wrap{display:flex; align-items:center; gap:clamp(20px,4vw,56px); padding-top:26px; padding-bottom:26px; flex-wrap:wrap}#page-home .cc-brands p{font:600 12.5px/1.2 var(--cc-sans); letter-spacing:.1em; text-transform:uppercase; color:var(--cc-mute); flex:none}#page-home .cc-brands ul{display:flex; flex:1; justify-content:space-between; gap:18px clamp(20px,3vw,44px); flex-wrap:wrap}#page-home .cc-brands li{font:600 15px/1 var(--cc-sans); letter-spacing:.14em; text-transform:uppercase; color:var(--cc-ink-2); opacity:.78}/* ---------- Problem ---------- */
.cc-split{display:grid; grid-template-columns:minmax(160px,.28fr) minmax(0,1fr); gap:clamp(28px,5vw,80px)}#page-home .cc-side{position:sticky; top:calc(var(--cc-nav) + 28px); align-self:start}#page-home .cc-side-photo{margin-top:28px!important}#page-home .cc-side-photo .cc-photo{aspect-ratio:4/5; border-radius:6px; overflow:hidden; background:#d9d3c6}#page-home .cc-side-photo img{width:100%; height:100%; object-fit:cover}#page-home .cc-statement{font:400 clamp(1.9rem,3.6vw,3.35rem)/1.12 var(--cc-sans); letter-spacing:-.03em; color:var(--cc-ink); max-width:24ch}#page-home .cc-statement em{color:var(--cc-court-3)}#page-home .cc-moments{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(24px,3vw,48px); margin-top:clamp(56px,6vw,88px)!important; counter-reset:m}#page-home .cc-moments li{border-top:1px solid var(--cc-ink); padding-top:22px}#page-home .cc-num{display:block; font:400 26px/1 var(--cc-disp); letter-spacing:.04em; color:var(--cc-court-3); margin-bottom:22px}#page-home .cc-moments h3{font:600 21px/1.2 var(--cc-sans); letter-spacing:-.02em; margin-bottom:12px!important}#page-home .cc-close{margin-top:clamp(56px,6vw,80px)!important; display:flex; align-items:center; gap:20px; font:500 18px/1.45 var(--cc-sans); color:var(--cc-ink); max-width:60ch}#page-home .cc-close::before{content:""; width:44px; height:2px; background:var(--cc-lime-2); flex:none}/* ---------- Machine (court) ---------- */
#page-home .cc-machine{overflow:hidden}#page-home .cc-machine-top{display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:clamp(36px,6vw,104px); align-items:center}#page-home .cc-machine-art{position:relative; display:flex; justify-content:center; align-items:center}#page-home.cc-home .cc-machine-art .machine-wrap{width:100%}#page-home.cc-home .cc-machine-art .machine{max-width:430px!important}#page-home .cc-slot-ph{width:min(100%,430px); aspect-ratio:640/880; border:1px dashed var(--cc-on-court-line); border-radius:12px}#page-home .cc-slot-ph.wide{width:100%; aspect-ratio:auto; height:354px; margin-top:48px}#page-home .cc-slot-ph.short{height:225px; margin-top:18px}#page-home .cc-court-lines{position:absolute; inset:-6% -30% -4% -30%; width:160%; height:110%; opacity:.9; pointer-events:none}#page-home .cc-machine-art img{position:relative; width:min(78%,420px); height:auto; filter:drop-shadow(0 40px 40px rgba(0,0,0,.35)) drop-shadow(0 8px 10px rgba(0,0,0,.25))}#page-home .cc-specs{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:34px 40px; margin-top:52px!important}#page-home .cc-specs li{border-top:1px solid var(--cc-on-court-line); padding-top:20px}#page-home .cc-specs h3{font:600 18px/1.25 var(--cc-sans); letter-spacing:-.015em; color:var(--cc-on-court); margin-bottom:8px!important}#page-home .cc-specs p{font:400 15.5px/1.55 var(--cc-sans); color:var(--cc-on-court-2)}/* ---------- Products ---------- */
.cc-products .cc-wrap{display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr); gap:clamp(40px,6vw,104px); align-items:start}#page-home .cc-menu{margin-top:52px!important}#page-home .cc-menu-group + .cc-menu-group{margin-top:40px}#page-home .cc-menu-group > h3{display:flex; align-items:baseline; justify-content:space-between; gap:16px; font:400 28px/1 var(--cc-disp); letter-spacing:.02em; color:var(--cc-court-3); padding-bottom:12px; border-bottom:1px solid var(--cc-ink)}#page-home .cc-menu-group > h3 small{font:500 12px/1 var(--cc-sans); font-style:normal; letter-spacing:.09em; text-transform:uppercase; color:var(--cc-mute)}#page-home .cc-item{display:grid; grid-template-columns:minmax(0,1fr) auto; gap:4px 24px; align-items:baseline; padding:16px 0; border-bottom:1px solid var(--cc-line)}#page-home .cc-item b{font:600 18px/1.3 var(--cc-sans); letter-spacing:-.015em; color:var(--cc-ink)}#page-home .cc-item i{font-style:normal; font:400 14.5px/1.4 var(--cc-sans); color:var(--cc-mute); grid-column:1}#page-home .cc-item em{grid-row:1/3; grid-column:2; align-self:center; font:400 30px/1 var(--cc-disp); font-style:normal; color:var(--cc-ink); letter-spacing:-.01em}#page-home .cc-item.inline{grid-template-columns:1fr}#page-home .cc-note{margin-top:22px!important; font:400 15px/1.5 var(--cc-sans); color:var(--cc-mute)}#page-home .cc-products figure{position:sticky; top:calc(var(--cc-nav) + 28px)}#page-home .cc-products .cc-photo{aspect-ratio:4/5; border-radius:6px; overflow:hidden; background:#d9d3c6}#page-home .cc-products .cc-photo img{width:100%; height:100%; object-fit:cover}/* ---------- How it works ---------- */
.cc-how-head{display:flex; justify-content:space-between; align-items:flex-end; gap:40px; flex-wrap:wrap}#page-home .cc-how-head .cc-h2{max-width:15ch}#page-home .cc-how-head .cc-lede,#page-home .cc-where-head .cc-lede{max-width:40ch}#page-home .cc-steps{position:relative; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:clamp(20px,2.6vw,40px); margin-top:clamp(56px,6vw,96px)!important}#page-home .cc-steps::before{content:""; position:absolute; left:0; right:0; top:6px; height:1px; background:var(--cc-ink); opacity:.85}#page-home .cc-step{position:relative; padding-top:44px; display:flex; flex-direction:column}#page-home .cc-step .cc-yours{margin-top:auto!important}#page-home .cc-step .cc-body{margin-bottom:22px!important}#page-home .cc-step::before{content:""; position:absolute; top:0; left:0; width:13px; height:13px; border-radius:50%; background:var(--cc-paper-2); border:1.5px solid var(--cc-ink)}#page-home .cc-step:last-child::before{background:var(--cc-lime); border-color:var(--cc-ink)}#page-home .cc-when{font:500 12.5px/1 var(--cc-sans); letter-spacing:.09em; text-transform:uppercase; color:var(--cc-mute)}#page-home .cc-step h3{font:600 23px/1.15 var(--cc-sans); letter-spacing:-.025em; margin:14px 0 12px!important}#page-home .cc-step .cc-body{font-size:15.5px}#page-home .cc-yours{margin-top:22px!important; padding-top:16px; border-top:1px solid var(--cc-line); font:500 15.5px/1.4 var(--cc-sans); color:var(--cc-ink)}#page-home .cc-yours small{display:block; font:500 11.5px/1 var(--cc-sans); font-style:normal; letter-spacing:.09em; text-transform:uppercase; color:var(--cc-mute); margin-bottom:8px}#page-home .cc-quote{margin-top:clamp(64px,7vw,104px)!important; font:400 clamp(2.2rem,3.8vw,3.6rem)/.98 var(--cc-disp); letter-spacing:.01em; text-transform:uppercase; color:var(--cc-ink); max-width:28ch}#page-home .cc-quote em{color:var(--cc-court-3)}/* ---------- Two audiences ---------- */
.cc-aud-head{text-align:left; max-width:900px}#page-home .cc-aud{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(24px,3vw,40px); margin-top:clamp(48px,5vw,80px)!important}#page-home .cc-aud-col{background:var(--cc-card); border:1px solid var(--cc-line-2); border-radius:6px; padding:clamp(28px,3.4vw,52px)}#page-home .cc-aud-col.dark{background:var(--cc-court); color:var(--cc-on-court); border-color:transparent}#page-home .cc-aud-col h3{font:600 28px/1.1 var(--cc-sans); letter-spacing:-.03em}#page-home .cc-aud-col h3 em{font-family:inherit; font-style:normal; font-weight:inherit}#page-home .cc-aud-col.dark h3 em{color:var(--cc-lime)}#page-home .cc-aud-col > p{margin-top:12px!important; color:var(--cc-mute); font:400 15.5px/1.5 var(--cc-sans)}#page-home .cc-aud-col.dark > p{color:var(--cc-on-court-2)}#page-home .cc-list{margin-top:30px!important}#page-home .cc-list li{display:grid; grid-template-columns:150px minmax(0,1fr); gap:20px; padding:18px 0; border-top:1px solid var(--cc-line)}#page-home .cc-aud-col.dark .cc-list li{border-top-color:var(--cc-on-court-line)}#page-home .cc-list b{font:600 16px/1.35 var(--cc-sans); letter-spacing:-.01em}#page-home .cc-list span{font:400 15.5px/1.5 var(--cc-sans); color:var(--cc-ink-2)}#page-home .cc-aud-col.dark .cc-list span{color:var(--cc-on-court-2)}/* ---------- Portal (court) ---------- */
.cc-portal .cc-wrap{display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:clamp(40px,6vw,104px); align-items:center}#page-home .cc-feats{margin-top:40px!important}#page-home .cc-feats li{display:grid; grid-template-columns:28px minmax(0,1fr); gap:14px; padding:16px 0; border-top:1px solid var(--cc-on-court-line)}#page-home .cc-feats li::before{content:""; width:9px; height:9px; margin-top:7px; border-radius:50%; background:var(--cc-lime)}#page-home .cc-feats b{display:block; font:600 16.5px/1.35 var(--cc-sans); color:var(--cc-on-court)}#page-home .cc-feats span{display:block; margin-top:4px; font:400 15px/1.5 var(--cc-sans); color:var(--cc-on-court-2)}#page-home .cc-signin{margin-top:40px; padding:22px; border-radius:6px; background:rgba(247,248,244,.06); border:1px solid var(--cc-on-court-line)}#page-home .cc-signin > p{font:500 15px/1.3 var(--cc-sans); color:var(--cc-on-court); margin-bottom:14px!important}#page-home .cc-signin > p span{color:var(--cc-on-court-2); font-weight:400}#page-home .cc-signin form{display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) auto; gap:10px}#page-home .cc-signin select,#page-home .cc-signin input{width:100%; height:50px; padding:0 16px; border-radius:6px; border:1px solid var(--cc-on-court-line); background:rgba(247,248,244,.08); color:var(--cc-on-court); font:400 15px/1 var(--cc-sans); outline:none; -webkit-appearance:none; appearance:none}#page-home .cc-signin select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none' stroke='%23F4F1EA' stroke-width='1.6'%3E%3Cpath d='M1 1.5l5 5 5-5'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 16px center; padding-right:38px}#page-home .cc-signin select option{color:#0E2018; background:#F4F1EA}#page-home .cc-signin input::placeholder{color:rgba(247,248,244,.5)}#page-home .cc-signin select:focus,#page-home .cc-signin input:focus{border-color:var(--cc-lime)}#page-home .cc-signin button{height:50px; padding:0 24px; border-radius:6px; border:0; background:var(--cc-lime); color:var(--cc-ink); font:600 15px/1 var(--cc-sans); cursor:pointer; transition:background .2s}#page-home .cc-signin button:hover{background:#D6F01A}#page-home .cc-signin #qsv2-err{grid-column:1/-1; font:400 14px/1.4 var(--cc-sans); color:#F2B8A2; min-height:0}#page-home .cc-signin #qsv2-err:empty{display:none}#page-home .cc-dash{background:var(--cc-paper); color:var(--cc-ink); border-radius:8px; padding:26px; box-shadow:0 40px 80px -30px rgba(0,0,0,.55), 0 0 0 1px rgba(255,255,255,.04)}#page-home .cc-dash-top{display:flex; justify-content:space-between; align-items:center; padding-bottom:18px; border-bottom:1px solid var(--cc-line)}#page-home .cc-dash-top b{font:600 16px/1 var(--cc-sans); letter-spacing:-.01em}#page-home .cc-dash-top span{display:inline-flex; align-items:center; gap:8px; font:500 12.5px/1 var(--cc-sans); color:var(--cc-mute)}#page-home .cc-dash-top span i{width:8px; height:8px; border-radius:50%; background:var(--cc-lime); box-shadow:0 0 0 1px rgba(14,32,24,.3) inset}#page-home .cc-kpis{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; padding:18px 0; border-bottom:1px solid var(--cc-line)}#page-home .cc-kpis div + div{padding-left:16px; border-left:1px solid var(--cc-line)}#page-home .cc-kpis small{display:block; font:500 11.5px/1.2 var(--cc-sans); letter-spacing:.06em; text-transform:uppercase; color:var(--cc-mute)}#page-home .cc-kpis b{display:block; margin-top:8px; font:400 34px/1 var(--cc-disp); letter-spacing:.01em}#page-home .cc-bars{display:flex; align-items:flex-end; gap:8px; height:150px; padding:22px 0 0}#page-home .cc-bars i{flex:1; background:var(--cc-court-2); border-radius:2px 2px 0 0; opacity:.9; transform-origin:bottom; transition:transform 1.1s var(--cc-ease)}#page-home .cc-bars i.now{background:var(--cc-lime); box-shadow:0 0 0 1px rgba(14,32,24,.25) inset}.cc-js #page-home .cc-dash:not(.in) .cc-bars i{transform:scaleY(.05)}#page-home .cc-bar-x{display:flex; gap:8px; margin-top:8px; font:500 11px/1 var(--cc-sans); color:var(--cc-mute)}#page-home .cc-bar-x span{flex:1; text-align:center}#page-home .cc-ledger{margin-top:20px!important; border-top:1px solid var(--cc-line)}#page-home .cc-ledger li{display:flex; justify-content:space-between; padding:12px 0; border-bottom:1px solid var(--cc-line-2); font:400 14px/1 var(--cc-sans)}#page-home .cc-ledger li b{font-weight:500}#page-home .cc-pill{font:600 11px/1 var(--cc-sans); letter-spacing:.06em; text-transform:uppercase; padding:6px 9px; border-radius:999px; background:rgba(30,84,64,.1); color:var(--cc-court-2)}#page-home .cc-pill.acc{background:rgba(200,230,0,.35); color:var(--cc-ink)}#page-home .cc-illus{margin-top:14px!important; font:400 12.5px/1.3 var(--cc-sans); color:var(--cc-on-court-2); text-align:right}/* ---------- Terms ---------- */
.cc-terms-list{margin-top:clamp(40px,5vw,64px)!important; border-top:1px solid var(--cc-ink)}#page-home .cc-terms-list > div{display:grid; grid-template-columns:minmax(150px,.32fr) minmax(0,1fr); gap:24px; padding:24px 0; border-bottom:1px solid var(--cc-line)}#page-home .cc-terms-list dt{font:600 17px/1.4 var(--cc-sans); letter-spacing:-.01em}#page-home .cc-terms-list dd{font:400 17px/1.55 var(--cc-sans); color:var(--cc-ink-2); max-width:62ch}#page-home .cc-terms-list dd strong{font-weight:600; color:var(--cc-ink)}/* ---------- Locations ---------- */
.cc-where-head{display:flex; justify-content:space-between; align-items:flex-end; gap:40px; flex-wrap:wrap}#page-home .cc-where{display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,1fr); gap:clamp(24px,3vw,40px); margin-top:clamp(48px,5vw,72px)!important; align-items:stretch}#page-home .cc-where #ccmap{position:relative; min-height:560px; height:100%; border-radius:6px; overflow:hidden; background:#E4E1D9; z-index:1}#page-home .cc-map-note{position:absolute; left:14px; top:14px; z-index:500; padding:9px 13px; border-radius:999px; background:rgba(247,248,244,.94); font:500 12.5px/1 var(--cc-sans); color:var(--cc-ink-2); pointer-events:none}#page-home .cc-clubs{display:grid; gap:14px; align-content:start}#page-home .cc-club{display:grid; grid-template-columns:132px minmax(0,1fr); gap:20px; padding:14px; background:var(--cc-card); border:1px solid var(--cc-line-2); border-radius:6px; align-items:center}#page-home .cc-club img{width:132px; height:150px; object-fit:cover; border-radius:4px}#page-home .cc-club .ph{width:132px; height:150px; border-radius:4px; background:var(--cc-paper-2); display:grid; place-items:center; font:400 22px/1 var(--cc-disp); letter-spacing:.03em; color:var(--cc-mute); text-align:center; padding:12px; border:1px dashed var(--cc-line)}#page-home .cc-club-meta{flex-wrap:wrap; display:flex; align-items:center; gap:10px; font:500 12px/1 var(--cc-sans); letter-spacing:.08em; text-transform:uppercase; color:var(--cc-mute)}#page-home .cc-live{display:inline-flex; align-items:center; gap:6px; padding:5px 9px; border-radius:999px; background:rgba(200,230,0,.38); color:var(--cc-ink); font-weight:600; letter-spacing:.06em}#page-home .cc-live::before{content:""; width:6px; height:6px; border-radius:50%; background:var(--cc-court)}#page-home .cc-soon{white-space:nowrap; padding:5px 9px; border-radius:999px; border:1px solid var(--cc-line); color:var(--cc-ink-2); font-weight:600; letter-spacing:.06em}#page-home .cc-club h3{font:600 20px/1.2 var(--cc-sans); letter-spacing:-.02em; margin:12px 0 8px!important}#page-home .cc-club p{font:400 14.5px/1.5 var(--cc-sans); color:var(--cc-ink-2)}#page-home .cc-club small{display:block; margin-top:10px; font:600 12px/1 var(--cc-sans); letter-spacing:.06em; text-transform:uppercase; color:var(--cc-mute)}#page-home .cc-club.next{background:transparent; border-style:dashed; border-color:var(--cc-line)}#page-home .cc-club.next a{margin-top:12px}#page-home .cc-pin{width:auto!important; height:auto!important; background:none!important; border:0!important}#page-home .cc-pin > div{display:flex; align-items:center; gap:8px; transform:translate(-9px,-9px); white-space:nowrap}#page-home .cc-pin i{width:18px; height:18px; border-radius:50%; background:var(--cc-lime); border:3px solid var(--cc-court); box-shadow:0 0 0 6px rgba(200,230,0,.28); flex:none}#page-home .cc-pin b{font:600 12.5px/1 var(--cc-sans); letter-spacing:.02em; padding:7px 10px; border-radius:999px; background:var(--cc-court); color:var(--cc-paper)}#page-home .leaflet-control-zoom{border:0!important; box-shadow:0 2px 10px rgba(0,0,0,.12)!important; border-radius:6px!important; overflow:hidden}#page-home .leaflet-control-zoom a{color:var(--cc-ink)!important; background:var(--cc-card)!important; font:400 18px/30px var(--cc-sans)!important}#page-home .leaflet-control-attribution{background:rgba(247,248,244,.8)!important; font:400 10.5px/1.4 var(--cc-sans)!important; color:var(--cc-mute)!important}/* ---------- FAQ ---------- */
.cc-faq .cc-wrap{display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:clamp(40px,6vw,104px); align-items:start}#page-home .cc-faq-head{position:sticky; top:calc(var(--cc-nav) + 28px)}#page-home .cc-faq-head p{margin-top:22px!important}#page-home .cc-faq-list{border-top:1px solid var(--cc-ink)}#page-home .cc-faq-list details{border-bottom:1px solid var(--cc-line)}#page-home .cc-faq-list summary{list-style:none; display:flex; justify-content:space-between; align-items:center; gap:24px; padding:26px 0; cursor:pointer; font:600 clamp(18px,1.6vw,21px)/1.3 var(--cc-sans); letter-spacing:-.02em; color:var(--cc-ink)}#page-home .cc-faq-list summary::-webkit-details-marker{display:none}#page-home .cc-faq-list summary i{position:relative; width:30px; height:30px; flex:none; border-radius:50%; border:1px solid var(--cc-line); transition:background .25s, border-color .25s, transform .35s var(--cc-ease)}#page-home .cc-faq-list summary i::before,#page-home .cc-faq-list summary i::after{content:""; position:absolute; left:50%; top:50%; width:11px; height:1.5px; background:var(--cc-ink); transform:translate(-50%,-50%)}#page-home .cc-faq-list summary i::after{transform:translate(-50%,-50%) rotate(90deg); transition:transform .35s var(--cc-ease)}#page-home .cc-faq-list details[open] summary i{background:var(--cc-lime); border-color:var(--cc-lime)}#page-home .cc-faq-list details[open] summary i::after{transform:translate(-50%,-50%) rotate(0deg)}#page-home .cc-faq-list summary:hover i{border-color:var(--cc-ink)}#page-home .cc-faq-list details > p{padding:0 56px 28px 0; font:400 16.5px/1.6 var(--cc-sans); color:var(--cc-ink-2); max-width:62ch}/* ---------- Contact ---------- */
.cc-contact .cc-wrap{display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:clamp(40px,6vw,104px); align-items:start}#page-home .cc-contact .cc-h2{max-width:12ch}#page-home .cc-details{margin-top:44px!important; border-top:1px solid var(--cc-line)}#page-home .cc-details > div{display:grid; grid-template-columns:120px minmax(0,1fr); gap:20px; padding:16px 0; border-bottom:1px solid var(--cc-line)}#page-home .cc-details dt{font:500 12.5px/1.6 var(--cc-sans); letter-spacing:.08em; text-transform:uppercase; color:var(--cc-mute)}#page-home .cc-details dd{font:500 16px/1.5 var(--cc-sans); color:var(--cc-ink)}#page-home .cc-details dd a{text-decoration:none; border-bottom:1px solid var(--cc-line)}#page-home .cc-details dd a:hover{border-color:var(--cc-ink)}#page-home .cc-form-card{background:var(--cc-card); border:1px solid var(--cc-line-2); border-radius:8px; padding:clamp(26px,3.2vw,44px); box-shadow:0 30px 60px -40px rgba(14,32,24,.35)}#page-home .cc-form-card h3{font:600 26px/1.15 var(--cc-sans); letter-spacing:-.025em}#page-home .cc-form-card > p{margin-top:8px!important; font:400 15px/1.5 var(--cc-sans); color:var(--cc-mute)}#page-home #contact-form.cc-form{display:grid; grid-template-columns:1fr 1fr; gap:18px 16px; margin-top:28px}#page-home .cc-field{display:flex; flex-direction:column; gap:8px}#page-home .cc-field.full{grid-column:1/-1}#page-home .cc-field label{font:500 13px/1 var(--cc-sans); color:var(--cc-ink-2)}#page-home .cc-form input,#page-home .cc-form select,#page-home .cc-form textarea{width:100%; padding:14px 16px; border-radius:6px; border:1px solid var(--cc-line); background:#fff; color:var(--cc-ink); font:400 16px/1.4 var(--cc-sans); outline:none; transition:border-color .2s, box-shadow .2s; -webkit-appearance:none; appearance:none; box-shadow:none}#page-home .cc-form select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none' stroke='%230E2018' stroke-width='1.6'%3E%3Cpath d='M1 1.5l5 5 5-5'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 16px center; padding-right:40px}#page-home .cc-form textarea{min-height:128px; resize:vertical}#page-home .cc-form input:focus,#page-home .cc-form select:focus,#page-home .cc-form textarea:focus{border-color:var(--cc-court-3); box-shadow:0 0 0 4px rgba(43,106,81,.12)}#page-home .cc-form input::placeholder,#page-home .cc-form textarea::placeholder{color:#9AA59F}#page-home .cc-form .form-submit{grid-column:1/-1; justify-content:center; width:100%; margin-top:6px; padding:18px 26px; font-size:16px; border:0}#page-home .cc-form-foot{grid-column:1/-1; font:400 13.5px/1.5 var(--cc-sans); color:var(--cc-mute); text-align:center}#page-home .cc-form-foot a{color:var(--cc-ink); cursor:pointer}#page-home .cc-form-card #form-success{font:400 16px/1.6 var(--cc-sans); color:var(--cc-ink); padding:24px 0 4px}#page-home .cc-form-card #form-success h3,#page-home .cc-form-card #form-success h4{font:600 24px/1.2 var(--cc-sans); letter-spacing:-.02em; margin:12px 0 8px}#page-home .cc-form-card #form-success *{color:inherit}/* ---------- Footer (global) ---------- */
body.cc footer{background:var(--cc-court)!important; color:var(--cc-on-court-2)!important; font-family:var(--cc-sans)!important; border:0!important; padding:clamp(64px,7vw,96px) var(--cc-gut) 32px!important; margin:0!important}body.cc footer .footer-inner{max-width:var(--cc-max); margin:0 auto!important; gap:clamp(28px,4vw,64px)!important}body.cc footer h5{font:500 12.5px/1 var(--cc-sans)!important; letter-spacing:.09em!important; text-transform:uppercase!important; color:var(--cc-on-court)!important; opacity:.6; margin-bottom:18px!important}body.cc footer a,body.cc footer li{font:400 15px/1.5 var(--cc-sans)!important; color:var(--cc-on-court-2)!important; text-decoration:none!important; text-transform:none!important; letter-spacing:0!important}body.cc footer a:hover{color:var(--cc-on-court)!important}body.cc footer .footer-tagline{font:400 15px/1.55 var(--cc-sans)!important; color:var(--cc-on-court-2)!important; max-width:30ch}body.cc footer .footer-bottom{max-width:var(--cc-max); margin:clamp(48px,6vw,80px) auto 0!important; padding-top:24px!important; border-top:1px solid var(--cc-on-court-line)!important; font:400 13.5px/1.5 var(--cc-sans)!important; color:var(--cc-on-court-2)!important}body.cc footer .footer-bottom p{color:var(--cc-on-court-2)!important; font:inherit!important}body.cc footer .city-chip{font:500 12px/1 var(--cc-sans)!important; letter-spacing:.06em!important; text-transform:uppercase!important; color:var(--cc-on-court)!important; background:rgba(247,248,244,.08)!important; border:1px solid var(--cc-on-court-line)!important; border-radius:999px!important; padding:7px 11px!important}/* ---------- About page ---------- */
body.cc #page-about{background:var(--cc-paper)!important; color:var(--cc-ink)!important; font-family:var(--cc-sans)!important}body.cc #page-about > :first-child{background:var(--cc-paper)!important; padding-top:calc(var(--cc-nav) + clamp(48px,7vw,104px))!important; border:0!important}body.cc #page-about :is(h1){font:600 clamp(3rem,7vw,6.4rem)/.94 var(--cc-sans)!important; letter-spacing:-.05em!important; text-transform:none!important; color:var(--cc-ink)!important}body.cc #page-about :is(h2){font:600 clamp(1.7rem,2.6vw,2.4rem)/1.1 var(--cc-sans)!important; letter-spacing:-.035em!important; color:var(--cc-ink)!important; border:0!important; text-transform:none!important}body.cc #page-about :is(h3,h4){font-family:var(--cc-sans)!important; color:var(--cc-ink)!important; letter-spacing:-.02em!important}body.cc #page-about :is(p,li){color:var(--cc-ink-2)!important; font-family:var(--cc-sans)!important; font-size:17px!important; line-height:1.65!important}body.cc #page-about a{color:var(--cc-court-3)!important}body.cc #page-about :is([class*=label],[class*=eyebrow],[class*=kicker]){color:var(--cc-court-3)!important; font-family:var(--cc-sans)!important}body.cc #page-about :is([class*=card],[class*=value]){background:var(--cc-card)!important; border-color:var(--cc-line-2)!important; color:var(--cc-ink)!important}body.cc #page-about svg{stroke:var(--cc-court-3)}

/* ---------- Responsive ---------- */
@media (max-width:1080px){#page-home .cc-hero .cc-wrap,#page-home .cc-machine-top,#page-home .cc-products .cc-wrap,#page-home .cc-portal .cc-wrap,#page-home .cc-faq .cc-wrap,#page-home .cc-contact .cc-wrap,#page-home .cc-where{grid-template-columns:minmax(0,1fr)}#page-home .cc-hero-media .cc-photo{min-height:0; height:auto; width:100%; aspect-ratio:4/4.6; max-height:none}#page-home .cc-split{grid-template-columns:minmax(0,1fr)}#page-home .cc-side,#page-home .cc-faq-head,#page-home .cc-products figure{position:static}#page-home .cc-steps{grid-template-columns:repeat(2,minmax(0,1fr)); row-gap:56px}#page-home .cc-steps::before{display:none}#page-home .cc-step{border-top:1px solid var(--cc-ink)}#page-home .cc-step::before{top:-7px}#page-home .cc-machine-art{order:2}#page-home .cc-side-photo .cc-photo{aspect-ratio:4/3}#page-home .cc-where #ccmap{min-height:420px}#page-home .cc-aud{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:680px){:root{--cc-nav:68px}#page-home .cc-h1{font-size:clamp(2.9rem,13.5vw,4rem)}#page-home .cc-facts{grid-template-columns:1fr 1fr 1fr}#page-home .cc-fact{padding-right:10px}#page-home .cc-fact + .cc-fact{padding-left:12px}#page-home .cc-fact b{font-size:1.9rem}#page-home .cc-fact span{font-size:12.5px}#page-home .cc-moments,#page-home .cc-specs{grid-template-columns:minmax(0,1fr)}#page-home .cc-steps{grid-template-columns:minmax(0,1fr); row-gap:44px}#page-home .cc-list li,#page-home .cc-terms-list > div,#page-home .cc-details > div{grid-template-columns:1fr; gap:6px}#page-home .cc-club{grid-template-columns:96px minmax(0,1fr); gap:16px}#page-home .cc-club img,#page-home .cc-club .ph{width:96px; height:120px}#page-home .cc-signin form{grid-template-columns:1fr}#page-home #contact-form.cc-form{grid-template-columns:1fr}#page-home .cc-brands .cc-wrap{flex-direction:column; align-items:flex-start; gap:14px}
  #page-home .cc-brands ul{display:grid; grid-template-columns:1fr 1fr; gap:14px 20px; width:100%}
  #page-home .cc-brands li{font-size:13px}#page-home .cc-kpis b{font-size:24px}#page-home .cc-caption{flex-direction:column; gap:6px}#page-home .cc-faq-list details > p{padding-right:0}#page-home .cc-btn{padding:16px 22px}
}

/* ---------- Cartoon machine (animated) ---------- */
#page-home .cc-mach{position:relative; width:100%; max-width:430px; height:auto; display:block; filter:drop-shadow(0 38px 60px rgba(0,0,0,.55)); animation:ccFloat 9s ease-in-out infinite}
#page-home .cc-mach-glow{position:absolute; inset:8% 12%; background:radial-gradient(circle, rgba(195,219,46,.13), transparent 66%); filter:blur(14px); animation:ccBreathe 7s ease-in-out infinite; pointer-events:none}
#page-home .cc-mach text{font-family:var(--cc-sans)}
#page-home .cc-mach .slot-plate{fill:rgba(255,255,255,.05); stroke:rgba(255,255,255,.12); transition:fill .25s, stroke .25s}
#page-home .cc-mach .slot-plate.on{fill:rgba(195,219,46,.18); stroke:#C3DB2E}
#page-home .cc-mach .slot-code{fill:#C3DB2E; font-weight:700; transition:fill .25s}
#page-home .cc-mach .slot-code.on{fill:#EEF9A8}
#page-home .cc-mach .slot-price{fill:#C6CEC4}
#page-home .cc-mach .key{fill:#333B33; transition:fill .15s}
#page-home .cc-mach .key.on{fill:#C3DB2E}
#page-home .cc-mach .m-tray{fill:rgba(255,255,255,.03); stroke:rgba(255,255,255,.14); transition:fill .3s, stroke .3s}
#page-home .cc-mach .m-tray.on{fill:rgba(195,219,46,.16); stroke:#C3DB2E}
#page-home .cc-mach .m-tap{transform-box:fill-box; transform-origin:center; transition:transform .16s ease}
#page-home .cc-mach .m-tap.on{transform:scale(.93)}
#page-home .cc-mach .m-ring{transform-box:fill-box; transform-origin:center}
#page-home .cc-mach .m-sweep{animation:ccSweep 6.5s ease-in-out infinite}
#page-home .cc-mach .m-strip{animation:ccStrip 4s ease-in-out infinite}
@keyframes ccFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes ccBreathe{0%,100%{opacity:.65}50%{opacity:1}}
@keyframes ccSweep{0%{transform:translateX(-150px)}60%,100%{transform:translateX(420px)}}
@keyframes ccStrip{0%,100%{opacity:.7}50%{opacity:1}}

/* ---------- Product cartoons ---------- */
#page-home .cc-prods{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:52px}
#page-home .cc-prods-b{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:18px}
#page-home .cc-prod{position:relative; padding:26px 26px 24px; border-radius:8px; background:linear-gradient(180deg,rgba(247,248,244,.075),rgba(247,248,244,.02)); border:1px solid var(--cc-on-court-line); transition:transform .45s var(--cc-ease), border-color .3s}
#page-home .cc-prod:hover{transform:translateY(-4px); border-color:rgba(200,230,0,.5)}
#page-home .cc-can{height:196px; display:flex; align-items:center; justify-content:center}
#page-home .cc-can svg{width:86px; height:auto; overflow:visible; filter:drop-shadow(0 18px 16px rgba(0,0,0,.35)); animation:ccBob 5.6s ease-in-out infinite; transform-origin:50% 85%}
#page-home .cc-prod:nth-child(2) .cc-can svg{animation-delay:-1.9s}
#page-home .cc-prod:nth-child(3) .cc-can svg{animation-delay:-3.7s}
#page-home .cc-prod:hover .cc-can svg{animation-play-state:paused}
@keyframes ccBob{0%,100%{transform:translateY(0) rotate(-5deg)}50%{transform:translateY(-10px) rotate(5deg)}}
#page-home .cc-can svg text,#page-home .cc-shelf svg text{font-family:var(--cc-sans)}
#page-home .cc-prod-brand{font:500 12px/1 var(--cc-sans); letter-spacing:.12em; text-transform:uppercase; color:var(--cc-on-court-2); margin-top:16px!important}
#page-home .cc-prod h3{font:600 24px/1.15 var(--cc-sans); letter-spacing:-.025em; color:var(--cc-on-court); margin-top:8px!important}
#page-home .cc-prod-spec{font:400 14px/1.4 var(--cc-sans); color:var(--cc-lime); margin-top:8px!important}
#page-home .cc-prod-price{font:400 40px/1 var(--cc-disp); letter-spacing:.01em; color:var(--cc-on-court); margin-top:20px!important; padding-top:18px; border-top:1px solid var(--cc-on-court-line)}
#page-home .cc-pcard{padding:22px 24px 24px; border-radius:8px; background:rgba(247,248,244,.04); border:1px solid var(--cc-on-court-line); display:flex; flex-direction:column}
#page-home .cc-shelf{height:122px; display:flex; align-items:flex-end; justify-content:center; gap:12px; padding-bottom:14px; border-bottom:1px solid var(--cc-on-court-line); margin-bottom:18px}
#page-home .cc-shelf svg{height:auto; filter:drop-shadow(0 10px 10px rgba(0,0,0,.3)); transition:transform .4s var(--cc-ease)}
#page-home .cc-pcard:hover .cc-shelf svg{transform:translateY(-4px)}
#page-home .cc-pcard:hover .cc-shelf svg:nth-child(2){transition-delay:.05s}
#page-home .cc-pcard:hover .cc-shelf svg:nth-child(3){transition-delay:.1s}
#page-home .cc-pcard:hover .cc-shelf svg:nth-child(4){transition-delay:.15s}
#page-home .cc-pcard h4{font:600 19px/1.2 var(--cc-sans); color:var(--cc-on-court); letter-spacing:-.015em}
#page-home .cc-pcard p{font:400 14.5px/1.5 var(--cc-sans); color:var(--cc-on-court-2); margin-top:8px!important}
#page-home .cc-inside{margin-top:clamp(96px,10vw,150px); padding-top:clamp(64px,7vw,96px); border-top:1px solid var(--cc-on-court-line)}
#page-home .cc-inside-head{display:flex; justify-content:space-between; align-items:flex-end; gap:24px 40px; flex-wrap:wrap}
#page-home .cc-inside-head .cc-h2{max-width:14ch}
#page-home .cc-inside-head .cc-lede{max-width:46ch}
@media (max-width:860px){ #page-home .cc-prods,#page-home .cc-prods-b{grid-template-columns:minmax(0,1fr)} #page-home .cc-prod{display:grid; grid-template-columns:96px minmax(0,1fr); column-gap:18px; align-items:center} #page-home .cc-can{height:150px; grid-row:1/6} #page-home .cc-can svg{width:66px} #page-home .cc-prod-brand{margin-top:0!important} #page-home .cc-prod-price{font-size:28px; margin-top:12px!important; padding-top:12px} }
@media (prefers-reduced-motion:reduce){ #page-home .cc-mach,#page-home .cc-mach-glow,#page-home .cc-mach .m-sweep,#page-home .cc-mach .m-strip,#page-home .cc-can svg{animation:none} }

/* the previous design's tennis-ball cursor is retired */
#qs-trail{display:none!important}
#page-home.cc-home,#page-home.cc-home *{cursor:auto!important}
#page-home.cc-home :is(a,button,select,summary,label,[role=button],[data-cc-go],[data-cc-portal]){cursor:pointer!important}
#page-home.cc-home :is(input,textarea){cursor:text!important}
#page-home.cc-home #ccmap,#page-home.cc-home #ccmap *{cursor:grab!important}
#page-home.cc-home #ccmap .leaflet-control-zoom a{cursor:pointer!important}
body.cc footer .logo img{height:38px!important; width:auto!important; max-width:none!important}
#page-home .cc-side-photo .cc-caption span,#page-home .cc-side-photo .cc-caption span:last-child{font:400 13.5px/1.45 var(--cc-sans); text-transform:none; letter-spacing:0; color:var(--cc-mute)}

/* ---------- Type system: club signage (Bebas Neue display, Public Sans text) ---------- */
#page-home.cc-home{font-family:var(--cc-sans)}
#page-home .cc-h1{font:400 clamp(4.2rem,min(9vw,15.5vh),9.4rem)/.88 var(--cc-disp); letter-spacing:.005em; text-transform:uppercase; margin:26px 0 0!important; text-wrap:balance}
#page-home .cc-h2{font:400 clamp(3rem,5.4vw,5.4rem)/.9 var(--cc-disp); letter-spacing:.01em; text-transform:uppercase; max-width:22ch; text-wrap:balance}
#page-home .cc-how-head .cc-h2{max-width:20ch}
#page-home .cc-contact .cc-h2{max-width:14ch}
#page-home .cc-inside-head .cc-h2{max-width:18ch}
#page-home .cc-statement{font:500 clamp(1.7rem,2.9vw,2.7rem)/1.2 var(--cc-sans); letter-spacing:-.025em; max-width:26ch}
#page-home .cc-statement em{color:var(--cc-court-3)}
#page-home .cc-hero-lede{font-size:clamp(1.05rem,1.2vw,1.15rem)}
#page-home .cc-moments h3,#page-home .cc-step h3,#page-home .cc-specs h3{font-weight:700; letter-spacing:-.015em}
#page-home .cc-aud-col h3{font:400 clamp(2.2rem,3vw,2.8rem)/.95 var(--cc-disp); letter-spacing:.01em; text-transform:uppercase}
#page-home .cc-prod h3{font:400 32px/1 var(--cc-disp); letter-spacing:.015em; text-transform:uppercase}
#page-home .cc-pcard h4{font:400 28px/1 var(--cc-disp); letter-spacing:.02em; text-transform:uppercase}
#page-home .cc-form-card h3{font:400 clamp(2rem,2.6vw,2.5rem)/1 var(--cc-disp); letter-spacing:.01em; text-transform:uppercase}
#page-home .cc-club h3{font-weight:700}
#page-home .cc-btn,#page-home .cc-link{font-weight:600}
#page-home .cc-faq-list summary{font-weight:600; letter-spacing:-.01em}
#page-home .cc-dash-top b{font-weight:700}
body.cc #nav-menu a.nav-cta{font-weight:600!important}

@media (max-width:680px){ #page-home .cc-map-note{display:none} #page-home .cc-pin i,#page-home .cc-staticpin i{width:14px!important; height:14px!important; border-width:2px!important; box-shadow:0 0 0 4px rgba(200,230,0,.3)!important} #page-home .cc-pin b,#page-home .cc-staticpin b{font-size:11px!important; padding:5px 8px!important} #page-home .cc-pin > div,#page-home .cc-staticpin{transform:translate(-7px,-7px)!important; gap:6px!important} }

/* ---------- Sentence case everywhere except the hero heading ---------- */
#page-home .cc-now{display:inline-flex; align-items:center; gap:10px; font:600 15px/1.3 var(--cc-sans); color:var(--cc-court-2); margin:0}
#page-home .cc-now svg{width:20px; height:20px; flex:none}
#page-home .cc-h2{font:800 clamp(2.3rem,4.3vw,4.1rem)/1.03 var(--cc-sans); letter-spacing:-.04em; text-transform:none; max-width:17ch}
#page-home .cc-how-head .cc-h2{max-width:15ch}
#page-home .cc-contact .cc-h2{max-width:12ch}
#page-home .cc-inside-head .cc-h2{max-width:14ch}
#page-home .cc-quote{font:700 clamp(1.5rem,2.5vw,2.25rem)/1.22 var(--cc-sans); letter-spacing:-.025em; text-transform:none; max-width:32ch}
#page-home .cc-aud-col h3{font:800 clamp(1.6rem,2.2vw,2rem)/1.08 var(--cc-sans); letter-spacing:-.03em; text-transform:none}
#page-home .cc-prod h3{font:800 22px/1.15 var(--cc-sans); letter-spacing:-.025em; text-transform:none}
#page-home .cc-pcard h4{font:800 19px/1.2 var(--cc-sans); letter-spacing:-.02em; text-transform:none}
#page-home .cc-form-card h3{font:800 clamp(1.5rem,2vw,1.8rem)/1.1 var(--cc-sans); letter-spacing:-.03em; text-transform:none}
#page-home .cc-fact b{font:800 clamp(2rem,2.9vw,2.6rem)/1 var(--cc-sans); letter-spacing:-.045em}
#page-home .cc-prod-price{font:800 30px/1 var(--cc-sans); letter-spacing:-.03em}
#page-home .cc-kpis b{font:800 26px/1 var(--cc-sans); letter-spacing:-.03em}
#page-home .cc-num{font:700 14px/1 var(--cc-sans); letter-spacing:0; color:var(--cc-court-3); margin-bottom:18px}
#page-home .cc-club .ph{font:700 15px/1.3 var(--cc-sans); letter-spacing:0}
#page-home .cc-kicker{font:600 14px/1.3 var(--cc-sans); letter-spacing:0; text-transform:none; color:var(--cc-court-3)}
#page-home .cc-kicker::before{display:none}
#page-home .cc-dark .cc-kicker,#page-home .cc-dark .cc-kicker{color:var(--cc-lime)}
#page-home .cc-caption span,#page-home .cc-caption span:last-child{text-transform:none; letter-spacing:0; font:400 13.5px/1.45 var(--cc-sans); font-style:normal}
#page-home .cc-brands p{font:600 14px/1.2 var(--cc-sans); letter-spacing:0; text-transform:none}
#page-home .cc-brands li{font:700 16px/1 var(--cc-sans); letter-spacing:-.01em; text-transform:none}
#page-home .cc-when{font:600 13.5px/1.2 var(--cc-sans); letter-spacing:0; text-transform:none; color:var(--cc-court-3)}
#page-home .cc-yours small{font:500 13px/1.2 var(--cc-sans); letter-spacing:0; text-transform:none}
#page-home .cc-prod-brand{font:600 13.5px/1 var(--cc-sans); letter-spacing:0; text-transform:none}
#page-home .cc-club-meta{font:500 13.5px/1 var(--cc-sans); letter-spacing:0; text-transform:none}
#page-home .cc-live,#page-home .cc-soon{font:600 12.5px/1 var(--cc-sans); letter-spacing:0; text-transform:none}
#page-home .cc-live::before{display:none}
#page-home .cc-club small{font:500 13px/1.2 var(--cc-sans); letter-spacing:0; text-transform:none}
#page-home .cc-kpis small{font:500 12.5px/1.25 var(--cc-sans); letter-spacing:0; text-transform:none}
#page-home .cc-pill{font:600 12px/1 var(--cc-sans); letter-spacing:0; text-transform:none}
#page-home .cc-details dt{font:500 14px/1.6 var(--cc-sans); letter-spacing:0; text-transform:none}
#page-home .cc-field label{font:600 13.5px/1 var(--cc-sans)}
body.cc footer h5{text-transform:none!important; letter-spacing:0!important; font:600 14px/1 var(--cc-sans)!important; opacity:.75}
body.cc footer .city-chip{text-transform:none!important; letter-spacing:0!important; font:500 12.5px/1 var(--cc-sans)!important}
#page-home .cc-club.next{grid-template-columns:minmax(0,1fr); padding:22px 24px}
#page-home .cc-club.next h3{margin-top:0!important}

/* ---------- Barlow: athletic text and headings ---------- */
#page-home.cc-home{font-size:17px}
#page-home .cc-h2{font:700 clamp(2.6rem,4.8vw,4.6rem)/.98 var(--cc-head); letter-spacing:-.015em}
#page-home .cc-statement{font:600 clamp(1.9rem,3.2vw,3rem)/1.12 var(--cc-head); letter-spacing:-.01em}
#page-home .cc-quote{font:700 clamp(1.7rem,2.8vw,2.6rem)/1.12 var(--cc-head); letter-spacing:-.01em}
#page-home .cc-aud-col h3{font:700 clamp(1.8rem,2.4vw,2.2rem)/1.02 var(--cc-head); letter-spacing:-.01em}
#page-home .cc-prod h3{font:700 25px/1.1 var(--cc-head); letter-spacing:-.005em}
#page-home .cc-pcard h4{font:700 22px/1.15 var(--cc-head)}
#page-home .cc-form-card h3{font:700 clamp(1.7rem,2.2vw,2rem)/1.05 var(--cc-head)}
#page-home .cc-fact b{font:700 clamp(2.3rem,3.2vw,2.9rem)/1 var(--cc-head); letter-spacing:-.02em}
#page-home .cc-prod-price{font:700 34px/1 var(--cc-head); letter-spacing:-.01em}
#page-home .cc-kpis b{font:700 30px/1 var(--cc-head)}
#page-home .cc-moments h3,#page-home .cc-step h3,#page-home .cc-specs h3,#page-home .cc-club h3{font-family:var(--cc-head); font-weight:700; letter-spacing:-.005em}
#page-home .cc-moments h3{font-size:23px} #page-home .cc-step h3{font-size:25px} #page-home .cc-specs h3{font-size:20px} #page-home .cc-club h3{font-size:22px}
#page-home .cc-faq-list summary{font-family:var(--cc-head); font-weight:700; font-size:clamp(19px,1.7vw,22px); letter-spacing:-.005em}
#page-home .cc-lede{font-size:clamp(1.08rem,1.3vw,1.22rem); line-height:1.55}
#page-home .cc-body,#page-home .cc-list span,#page-home .cc-terms-list dd,#page-home .cc-faq-list details > p{font-family:var(--cc-sans)}
#page-home .cc-btn{border-radius:6px; font-weight:600; letter-spacing:.005em}
body.cc #nav-menu a.nav-cta{border-radius:6px!important}
#page-home .cc-signin button,#page-home .cc-signin select,#page-home .cc-signin input{border-radius:6px}

/* Legacy qs-polish.css forces heading font, weight and tracking with !important; re-assert the new type system on the home page */
#page-home h1,#page-home h2,#page-home h3,#page-home h4,#page-home h5{font-family:var(--cc-head)!important; font-weight:700!important; letter-spacing:-.005em!important}
#page-home .cc-h1{font-family:var(--cc-disp)!important; font-weight:400!important; letter-spacing:.005em!important}
#page-home .cc-h2{letter-spacing:-.015em!important}
#page-home .cc-pcard h4{letter-spacing:-.02em!important}
#page-home .cc-aud-col h3{letter-spacing:-.01em!important}
#page-home .cc-form-card h3{letter-spacing:-.03em!important}

/* The old site's inline styles and qs-v2.css still load for the other pages; neutralise what leaks onto the new home */
#page-home .cc-hero{padding:calc(var(--cc-nav) + clamp(28px,5vw,72px)) 0 clamp(56px,7vw,104px)}
#page-home section{background:transparent}
#page-home .cc-signin #qsv2-signin{display:grid}
#page-home .cc-signin #qsv2-go{font:600 15px/1 var(--cc-sans); margin-top:0}
#page-home .cc-form label{text-transform:none; letter-spacing:normal}
#page-home .cc-form select option{color:var(--cc-ink); background:transparent}
#page-home .cc-form-card #form-success{max-width:none; margin:0; background:transparent; border:0; border-radius:0}

/* Mobile menu: a backdrop-filter on the nav makes it the containing block for the fixed full-screen menu, so once the page was scrolled the menu shrank to the nav bar. Use a solid bar on small screens instead */
@media (max-width:980px){
  body.cc #main-nav, body.cc #main-nav.cc-scrolled, body.cc.cc-inner #main-nav{backdrop-filter:none!important; -webkit-backdrop-filter:none!important}
  body.cc #main-nav.cc-scrolled, body.cc.cc-inner #main-nav{background:rgba(247,248,244,.97)!important}
  body.cc #main-nav .logo{position:relative; z-index:1002}
  body.cc:has(#nav-menu.open){overflow:hidden!important}
}

/* About page: same column as the body copy, the new type system, a readable rollout timeline and a light call to action */
body.cc #page-about .pg-hero{max-width:800px; margin:0 auto!important; box-sizing:border-box; padding-bottom:clamp(24px,3vw,40px)!important}
body.cc #page-about .pg-hero h1{font:700 clamp(2.6rem,5vw,4.2rem)/1 var(--cc-head)!important; letter-spacing:-.02em!important; margin:14px 0 18px!important}
body.cc #page-about .pg-label{font:600 14px/1.2 var(--cc-sans)!important; letter-spacing:0!important; text-transform:none!important}
body.cc #page-about :is(h2){font:700 clamp(1.8rem,2.8vw,2.4rem)/1.08 var(--cc-head)!important; letter-spacing:-.015em!important}
body.cc #page-about :is(h3){font-family:var(--cc-head)!important; font-weight:700!important; letter-spacing:-.005em!important}
body.cc #page-about .sb ul{list-style:none!important; padding:0!important; margin:6px 0 0!important; border-top:1px solid var(--cc-line)}
body.cc #page-about .sb ul li{display:grid!important; grid-template-columns:150px minmax(0,1fr); column-gap:24px; row-gap:2px; padding:16px 0!important; margin:0!important; border-bottom:1px solid var(--cc-line)}
body.cc #page-about .sb ul li::before{content:none!important; display:none!important}
body.cc #page-about .sb ul li strong{color:var(--cc-ink)!important; font-weight:600!important}
@media (max-width:600px){
  body.cc #page-about .sb ul li{grid-template-columns:minmax(0,1fr)}
}
body.cc #page-about .pg-cta{background:var(--cc-paper-2)!important; color:var(--cc-ink)!important; text-align:center!important; padding:clamp(64px,8vw,112px) var(--cc-gut)!important; border:0!important}
body.cc #page-about .pg-cta h2{color:var(--cc-ink)!important; font:700 clamp(2rem,3.6vw,3rem)/1.05 var(--cc-head)!important; letter-spacing:-.015em!important; text-transform:none!important; margin:0 0 14px!important}
body.cc #page-about .pg-cta p{color:var(--cc-ink-2)!important; max-width:520px; margin:0 auto 28px!important}
body.cc #page-about .pg-cta a.btn-primary{display:inline-flex!important; align-items:center; justify-content:center; height:50px; padding:0 26px!important; border-radius:6px!important; border:0!important; background:var(--cc-court)!important; color:var(--cc-on-court)!important; font:600 15px/1 var(--cc-sans)!important; letter-spacing:0!important; text-transform:none!important; box-shadow:none!important; text-decoration:none!important}
body.cc #page-about .pg-cta a.btn-primary:hover{background:var(--cc-court-2)!important}
