@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800;900&family=Barlow:wght@400;500;600;700&display=swap');
:root{--navy:#102541;--ink:#10213c;--red:#df2036;--paper:#f5f4ef;--line:#d8dbdf}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--navy);color:var(--ink);font:17px/1.6 Barlow,Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #ed8e34;outline-offset:5px}header{height:88px;display:flex;align-items:center;justify-content:space-between;background:#fff;padding:0 5%;position:relative;z-index:5}.brand{display:flex;align-items:center;gap:13px;font-size:12px;letter-spacing:1px;line-height:1.3}.brand b{display:block;font-size:23px;letter-spacing:3px}.brand img{width:65px;height:65px;object-fit:contain}nav{display:flex;gap:32px;font-weight:600;font-size:14px}.nav-cta{font-size:14px;font-weight:700;border-bottom:2px solid var(--red);padding:8px 0}.hero{min-height:720px;height:calc(100svh - 88px);max-height:980px;position:relative;color:#fff;overflow:hidden}.hero-image{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,20,39,.92),rgba(6,20,39,.65) 35%,transparent 72%)}.hero-copy{position:relative;padding:8vh 6% 90px;max-width:760px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2.4px;margin:0 0 25px}.hero h1{font:900 clamp(74px,8vw,126px)/.91 'Barlow Condensed',Impact,sans-serif;letter-spacing:-2px;margin:0}.hero h1 em{color:var(--red)}em{font-style:normal}.hero-lead{font-size:20px;margin:26px 0}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:17px 24px;border:0;font-size:14px;font-weight:700;cursor:pointer;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px)}.red{background:var(--red);color:#fff}.navy{background:var(--navy);color:#fff}.text-link{display:block;width:fit-content;margin-top:22px;font-size:14px;border-bottom:1px solid currentColor;padding-bottom:6px}.hero-bottom{position:absolute;bottom:22px;left:6%;right:6%;display:flex;justify-content:space-between;font-size:10px;letter-spacing:2px}.ribbon{display:flex;justify-content:space-around;gap:28px;overflow:hidden;white-space:nowrap;padding:18px;background:var(--red);color:#fff;font:700 24px 'Barlow Condensed',sans-serif;letter-spacing:2px}.ribbon i{font-style:normal}.section{padding:90px 7%;position:relative;overflow:hidden}.light{background:var(--paper)}.section-top{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);margin-bottom:45px}.section-top span{font-size:10px;letter-spacing:2px}.intro{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}h2{font:800 clamp(46px,5vw,78px)/1.02 'Barlow Condensed',Impact,sans-serif;letter-spacing:-.5px;margin:0 0 30px}h2 em{color:var(--red)}.intro p{max-width:430px}.court-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:60px;border-top:1px solid #b8c0c8}.court-grid article{padding:35px 30px;border-right:1px solid #b8c0c8;position:relative}.court-grid article:first-child{padding-left:0}.court-grid article:last-child{border:0}.number{font-size:12px;color:#68798d}h3{font:700 28px 'Barlow Condensed',sans-serif;margin:16px 0 8px}.court-grid p{font-size:15px;max-width:280px}.court-icon{height:80px;width:95px;margin:24px 0;border:2px solid var(--red);position:relative}.circle{border-radius:50%;width:80px}.circle:after{content:'';position:absolute;left:50%;top:-10px;height:100px;border-left:2px solid var(--red)}.key:after{content:'';position:absolute;width:55px;height:55px;border:2px solid var(--red);border-radius:50%;left:18px;top:48px}.arc{border-radius:70px 70px 0 0}.club{background:var(--navy);color:white}.club-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;position:relative;z-index:1}.club-layout h2{font-size:clamp(50px,6vw,90px)}.club-layout p{max-width:430px}.club-logo{width:110px;height:110px;object-fit:contain;background:#fff;border-radius:50%}.club-name{font-weight:700;letter-spacing:2px;margin-bottom:0}.court-bg{position:absolute;width:700px;height:700px;border:1px solid #ffffff1c;border-radius:50%;left:-180px;top:80px}.court-bg:after{content:'';position:absolute;left:50%;height:900px;border-left:1px solid #ffffff20;top:-100px}.registration{display:grid;grid-template-columns:1fr 1fr;gap:9%}.muted{color:#5b6779;max-width:390px}.small{font-size:12px;line-height:1.6;color:#667385;max-width:480px}.process{display:flex;flex-direction:column;gap:7px;margin:30px 0;font-size:14px;font-weight:600}form{background:white;padding:35px;border-top:5px solid var(--red);box-shadow:0 16px 50px #1025410b}form h3{margin-top:0}form>p{font-size:13px;color:#657184}label{display:block;font-size:13px;font-weight:600;margin:20px 0}label span{font-weight:400}input:not([type=checkbox]),select,textarea{display:block;width:100%;padding:13px;border:1px solid #d4d9df;border-radius:0;background:#fafbfc;margin-top:7px;color:var(--ink)}.consent{display:flex;gap:10px;font-size:12px;align-items:flex-start}.consent input{margin-top:4px}form .button{width:100%;font-size:13px}#form-status{color:var(--ink)}[hidden]{display:none!important}.contact{background:var(--red);color:white}.contact h2 em{color:var(--navy)}.contact-row{display:grid;grid-template-columns:2fr 1fr 1fr;border-top:1px solid #ffffff66;border-bottom:1px solid #ffffff66;margin:35px 0}.contact-row a{padding:24px 20px 24px 0;font-size:clamp(18px,2.3vw,34px);font-weight:600;display:flex;justify-content:space-between}.contact-row a+a{padding-left:24px;border-left:1px solid #ffffff66}.contact>p:last-child{font-size:13px}footer{padding:35px 7%;display:flex;gap:30px;justify-content:space-between;align-items:center;background:#fff}footer p{font:700 24px 'Barlow Condensed',sans-serif}footer small{font-size:10px;color:#68798d;max-width:150px}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s,transform .7s}.reveal.visible{opacity:1;transform:none}@media(max-width:760px){header{height:76px;padding:0 5%}nav{display:none}.brand img{width:52px;height:52px}.brand b{font-size:18px}.hero{height:auto;min-height:760px}.hero-image{object-position:62% center}.hero-shade{background:linear-gradient(90deg,#061427e6,#06142780),linear-gradient(0deg,#061427aa,transparent)}.hero-copy{padding:80px 6% 100px}.hero h1{font-size:85px}.hero .button{max-width:100%;gap:12px;font-size:12px}.hero-lead{font-size:17px}.hero-bottom{font-size:8px}.ribbon{justify-content:flex-start;font-size:20px}.section{padding:65px 6%}.intro,.club-layout,.registration{grid-template-columns:1fr;gap:25px}.section-top span{display:none}.court-grid{grid-template-columns:1fr;margin-top:30px}.court-grid article,.court-grid article:first-child{padding:25px 0;border:0;border-bottom:1px solid #b8c0c8}.court-icon{float:right;margin:10px 10px 35px 25px}.court-grid p{max-width:65%}.club-layout{gap:20px}.registration form{padding:25px 20px}.contact-row{grid-template-columns:1fr}.contact-row a+a{padding-left:0;border-left:0;border-top:1px solid #ffffff66}footer{flex-wrap:wrap}footer small{max-width:100%}.nav-cta{font-size:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,.reveal{transition:none!important;transform:none!important;opacity:1!important}}

.wordmark{display:block;width:110px;height:48px;background:#fff url(assets/wordmark.png) center 45% / 115px auto no-repeat;flex-shrink:0}.shield{display:block;width:145px;height:155px;background:#fff url(assets/club-poster.png) -52px -10px / 410px auto no-repeat;border-radius:8px}.club-tag{display:inline-block;border:1px solid #ffffff66;padding:8px 13px;font-size:12px;letter-spacing:2px}@media(max-width:760px){.brand>span:not(.wordmark){display:none}.wordmark{width:110px}}

.athlete{display:block;width:100%;height:300px;object-fit:contain;margin:20px auto 10px}.court-grid article{display:flex;flex-direction:column}.court-grid h3{margin-top:10px}.footer-shield{width:95px;height:100px;background-size:270px auto;background-position:-34px -7px}.court-grid p{max-width:100%}@media(max-width:760px){.athlete{height:310px;float:none}.court-grid article{padding:25px 0}.court-grid p{max-width:100%}}

header .brand{align-items:flex-end;gap:12px}header .header-location{font:800 18px/1 Barlow,Arial,sans-serif;letter-spacing:.4px;padding-bottom:7px}header .wordmark{height:48px}@media(max-width:760px){header .brand .header-location{display:block;font-size:13px;padding-bottom:7px}header .brand{gap:6px}header .wordmark{width:95px;background-size:100px auto;background-position:center 44%;height:43px}}

.shield{background:transparent url(assets/shield-transparent.png) center / contain no-repeat;border-radius:0;width:145px;height:160px}.wordmark{background:transparent url(assets/wordmark-transparent.png) center / contain no-repeat;width:125px;height:58px}footer .wordmark{width:200px;height:100px}footer .shield{width:100px;height:110px}header .wordmark{width:125px;height:58px}header .header-location{padding-bottom:10px}@media(max-width:760px){header .wordmark{width:100px;height:46px}header .brand .header-location{padding-bottom:8px}footer .wordmark{width:170px;height:90px}}

.contact-icon{width:28px;height:28px;flex-shrink:0;align-self:center;color:white}.contact-row a:hover .contact-icon{transform:translateY(-2px);transition:transform .2s}

.venue-name{display:block;font:700 clamp(28px,3vw,46px)/1.15 "Barlow Condensed",Arial,sans-serif;margin:25px 0 12px}.venue-city{display:block;font-size:22px;font-weight:600;margin-bottom:12px}.venue-note{display:block;font-size:19px;line-height:1.5;max-width:750px}

.schedule{border-bottom:1px solid var(--line);padding-top:65px;padding-bottom:55px}.schedule-head{display:flex;justify-content:space-between;align-items:center;gap:20px}.schedule h2{font-size:52px;margin-bottom:25px}.day-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.day-tabs button{border:1px solid #b8c0c8;background:transparent;padding:10px 17px;color:var(--navy);font-weight:700;cursor:pointer}.day-tabs button[aria-pressed=true]{background:var(--navy);color:white;border-color:var(--navy)}#day-program h3{font-size:21px}.session-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.session-grid article{background:white;border-left:3px solid var(--red);padding:17px;display:flex;flex-direction:column}.session-grid time{font-size:24px;color:var(--red);font-weight:700}.session-grid strong{font-size:16px}.session-grid span{font-size:13px;color:#607086}@media(max-width:760px){.schedule-head{display:block}.schedule-head .text-link{margin:0 0 25px}.session-grid{grid-template-columns:repeat(2,1fr)}.day-tabs button{font-size:13px;padding:9px 12px}.schedule h2{font-size:44px}}

.day-row{display:grid;grid-template-columns:115px minmax(0,1fr);border-top:1px solid #d2d8df;align-items:stretch;padding:12px 0;gap:12px}.day-row h3{margin:0;padding:25px 5px;align-self:center}.day-row .session-grid{display:flex;overflow-x:auto;gap:8px;padding-bottom:5px;scrollbar-color:#df2036 #e6e8eb}.day-row .session-grid article{flex:1 0 135px;min-width:135px;padding:12px}.day-row .session-grid time{font-size:22px}.day-row .session-grid strong{font-size:14px}.day-row .session-grid span{font-size:12px}@media(max-width:760px){.day-row{grid-template-columns:88px minmax(0,1fr);gap:6px}.day-row h3{font-size:18px!important;padding:15px 0}.day-row .session-grid article{flex:0 0 145px}.schedule{padding-left:4%;padding-right:4%}}
/* Compact weekly slots: time and label together, detail below. */
.day-row{grid-template-columns:100px minmax(0,1fr);padding:7px 0;gap:8px}.day-row .session-grid{gap:6px}.day-row .session-grid article{display:grid;grid-template-columns:auto 1fr;align-content:center;align-items:center;column-gap:7px;row-gap:4px;flex:0 0 auto;min-width:120px;padding:9px 10px}.day-row .session-grid time{font-size:17px;line-height:1.2}.day-row .session-grid strong{font-size:12px;line-height:1.2;max-width:100px}.day-row .session-grid span{grid-column:1/-1;font-size:11px;line-height:1.3}.day-row h3{padding:10px 0}.schedule{padding-top:45px;padding-bottom:35px}@media(max-width:760px){.day-row{grid-template-columns:80px minmax(0,1fr)}.day-row .session-grid article{flex:0 0 auto;min-width:120px;max-width:185px}.day-row h3{font-size:16px!important}}
/* All sessions visible: no horizontal carousel at any size. */
.day-row .session-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));overflow:visible;gap:5px}.day-row .session-grid article{min-width:0;max-width:none;flex:none;padding:8px 6px;grid-template-columns:1fr;row-gap:3px}.day-row .session-grid time{font-size:16px}.day-row .session-grid strong{max-width:none;font-size:12px;overflow-wrap:anywhere}.day-row .session-grid span{font-size:10px;overflow-wrap:anywhere}.day-row{grid-template-columns:90px minmax(0,1fr)}@media(min-width:1250px){.day-row .session-grid article{grid-template-columns:auto 1fr;column-gap:5px}.day-row .session-grid time{font-size:15px}.day-row .session-grid strong{font-size:11px}}@media(max-width:1050px){.day-row .session-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:760px){.day-row{grid-template-columns:75px minmax(0,1fr)}.day-row .session-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.day-row .session-grid article{min-width:0;max-width:none;padding:9px 6px}.day-row h3{align-self:start;padding-top:12px}.day-row .session-grid strong{font-size:12px}.day-row .session-grid span{font-size:11px}}

.footer-brand-group{display:flex;align-items:center;gap:8px}.footer-brand-group .brand{gap:0}.footer-brand-group .wordmark{width:175px;height:85px}footer{gap:20px}.club.section{padding-top:38px;padding-bottom:38px}.club .eyebrow{margin-bottom:22px}.club-layout{align-items:center;gap:45px}.club-layout h2{font-size:clamp(42px,5vw,70px);margin-bottom:0}.club-layout .shield{width:95px;height:105px;float:left;margin:0 20px 10px 0}.club-layout p{margin-top:8px;margin-bottom:8px;font-size:15px}.club-layout .text-link{clear:both;margin-top:12px}.club-tag{padding:5px 9px!important}@media(max-width:760px){.club.section{padding-top:32px;padding-bottom:32px}.club-layout{gap:22px}.club-layout h2{font-size:44px}.footer-brand-group{gap:5px}.footer-brand-group .wordmark{width:165px;height:80px}}

.ball-shadow{position:absolute;width:300px;height:300px;right:-35px;bottom:-60px;pointer-events:none;transform:rotate(-18deg)}.club-layout{position:relative;z-index:1}.club .eyebrow{position:relative;z-index:1}@media(max-width:760px){.ball-shadow{width:230px;height:230px;right:-45px;bottom:-45px;opacity:.7}}
