@font-face{font-family:Satoshi;src:url('/fonts/Satoshi-Regular.otf') format('opentype');font-display:swap}@font-face{font-family:Satoshi;src:url('/fonts/Satoshi-Light.otf') format('opentype');font-weight:300;font-display:swap}
:root{--ink:#101114;--paper:#ffffff;--muted:#606574;--line:#dde1ea;--green:#004fff;--accent:#ffda00}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Satoshi,Arial,sans-serif;font-size:17px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #004fff;outline-offset:5px}img{display:block;max-width:100%}.wrap{width:min(1280px,calc(100% - 112px));margin-inline:auto}.header{height:98px;display:flex;align-items:center;justify-content:space-between;gap:32px;padding:22px 56px;background:var(--ink);color:#fff;border-bottom:1px solid #ffffff20}.brand img{width:184px;height:auto}.header nav{display:flex;align-items:center;gap:27px;font-size:13px}.header nav>a{white-space:nowrap;transition:color .2s}.header nav>a:hover{color:var(--accent)}.nav-cta{border:1px solid #ccd4e3;padding:11px 16px}.nav-cta span{margin-left:20px}.menu{display:none}.hero{height:min(760px,calc(100svh - 98px));min-height:610px;position:relative;background:var(--ink);color:white;overflow:hidden}.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-image{object-position:center;filter:saturate(.55)}.hero-shade{background:linear-gradient(90deg,#070b19e6 0%,#07102ebc 40%,#1017281f 100%),linear-gradient(0deg,#080c18b0,transparent 30%)}.hero-copy{position:relative;padding-top:78px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;line-height:1.6;margin:0 0 25px;text-transform:uppercase}.hero .eyebrow{color:#f1f4ff}h1,h2,h3,p{margin-top:0}h1,h2{font-weight:300;line-height:1.04;letter-spacing:-2.6px}h1{font-size:clamp(60px,6.9vw,106px);margin-bottom:28px}h2{font-size:clamp(40px,4.3vw,66px);margin-bottom:26px}h3{font-size:25px;line-height:1.2;font-weight:400;letter-spacing:-.4px}em{font-family:Georgia,serif;font-weight:400}p{margin-bottom:22px}.hero h1{max-width:780px}.hero h1 em{color:var(--accent)}.hero-copy>p:not(.eyebrow){font-size:19px;line-height:1.55;color:#f1f4fc;margin-bottom:32px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:40px;padding:16px 23px;min-height:58px;border:1px solid transparent;font-size:14px;font-weight:700;cursor:pointer;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.light{background:var(--paper);color:var(--ink)}.dark{background:var(--ink);color:white}.dark:hover{background:var(--green)}.outline{border-color:#c4d3ff;color:white;background:transparent}.outline:hover{background:#ffffff12}.hero-bottom{position:absolute;bottom:26px;left:0;right:0;display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.5px;border-top:1px solid #ffffff45;padding-top:20px}.purpose{padding-block:100px}.purpose>div{display:grid;grid-template-columns:1.1fr 1fr;gap:85px}.purpose h2{margin:0}.purpose-copy>p:first-child{font-size:22px;line-height:1.5}.muted{color:var(--muted)}.text-link{display:inline-block;font-size:14px;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:6px}.section{padding-block:50px 100px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:70px;margin-bottom:38px}.section-heading h2{margin-bottom:0}.section-heading>p{width:370px;max-width:100%;color:var(--muted);margin-bottom:0}.section-heading>.text-link{flex-shrink:0}.section-heading .eyebrow{margin-bottom:17px}.program-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.program-card{display:block}.card-photo{height:340px;position:relative;overflow:hidden;background:#e5eafa}.card-photo img{width:100%;height:100%;object-fit:cover;transition:transform .5s;filter:saturate(.7)}.program-card:hover img{transform:scale(1.035)}.card-photo span{position:absolute;bottom:16px;left:18px;background:var(--paper);padding:5px 10px;font-size:9px;letter-spacing:1.5px}.card-copy{padding-top:24px}.card-copy h3{display:flex;justify-content:space-between;margin-bottom:16px}.card-copy p{font-size:15px;margin-bottom:12px}.card-copy .muted{font-size:14px}.center{display:grid;grid-template-columns:1fr 1fr;background:var(--ink);color:var(--paper)}.center-photo{position:relative;min-height:700px}.center-photo img{width:100%;height:100%;object-fit:cover;position:absolute;filter:saturate(.4)}.center-photo:after{content:'';position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#070c1acc)}.center-photo>span{position:absolute;z-index:1;bottom:25px;left:40px;font-size:10px;letter-spacing:1.5px}.center-copy{padding:72px min(7vw,110px) 70px 70px}.center-copy .eyebrow{color:var(--accent)}.center-copy h2 em{color:var(--accent)}.center-copy p{font-size:16px;color:#f1f4fc}.center-copy p.muted{color:#b9c6e3}.center-copy small{display:block;font-size:11px;line-height:1.6;color:#b9c6e3;margin-top:22px}.ambition{padding-top:105px}.ambition-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.ambition-grid article{border-top:1px solid var(--line);padding-top:26px}.ambition-grid article>span,.feature-grid article>span{font-size:12px;letter-spacing:1px;color:#004fff;display:block;margin-bottom:40px}.ambition-grid h3{max-width:300px}.ambition-grid p{color:var(--muted);font-size:15px}.sponsor{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;padding-block:30px 100px}.sponsor>div{padding-block:20px}.sponsor>div p:not(.eyebrow){max-width:480px;color:var(--muted);margin-bottom:30px}.sponsor>img{width:100%;height:535px;object-fit:cover;object-position:center 48%;filter:saturate(.65)}.partners{padding-block:48px 62px;border-top:1px solid var(--line);text-align:center}.partners>div{display:flex;align-items:center;justify-content:space-around;gap:35px;margin-top:40px}.partners img{width:100px;height:55px;object-fit:contain;filter:grayscale(1);mix-blend-mode:multiply}.cta{border-top:1px solid var(--line);padding-block:80px 90px}.cta h2{max-width:870px}.cta>div{display:flex;justify-content:space-between;align-items:flex-end;gap:40px}.cta p:not(.eyebrow){max-width:530px;margin:0;color:var(--muted)}.cta .button{flex-shrink:0}footer{background:var(--ink);color:white;padding:65px 56px 25px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:50px;padding-bottom:60px}.footer-top p{font-size:21px;line-height:1.4;color:#e3eaff;margin:0}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff25;padding-top:24px;font-size:10px;color:#c2c9d8}.footer-bottom>div{display:flex;gap:25px}.footer-bottom>span:last-child{letter-spacing:1.4px}.page-hero{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;padding-block:76px 80px;align-items:center}.page-hero h1{font-size:clamp(55px,5.8vw,85px)}.page-hero .lead{max-width:540px}.page-hero>img{width:100%;height:520px;object-fit:cover;filter:saturate(.6)}.lead{font-size:21px;line-height:1.55;color:#4c566d}.method{padding-block:45px 100px}.method h2{margin-bottom:50px}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 65px}.feature-grid article{border-top:1px solid var(--line);padding:25px 0}.feature-grid article>span{margin-bottom:25px}.feature-grid p{color:var(--muted);max-width:470px}.note{background:#eff3ff;padding:60px; margin-bottom:95px}.note p:not(.eyebrow){max-width:830px;color:#4c566d}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:90px}.two-col p{color:var(--muted)}.two-col .eyebrow{color:var(--ink)}.two-col h2{font-size:43px}.contact{display:grid;grid-template-columns:1fr .85fr;gap:95px;padding-block:85px}.contact h1{font-size:80px}.small{font-size:13px;max-width:400px}form{padding:30px;background:#eff3ff}label{display:block;font-size:13px;font-weight:700;margin-bottom:22px}input,select,textarea{display:block;width:100%;margin-top:8px;border:1px solid #bcc8df;padding:12px;background:var(--paper);color:var(--ink);border-radius:0}textarea{resize:vertical}form .button{width:100%}#form-status{margin:20px 0 0;font-size:14px}.faq{max-width:950px}.faq h2{margin-bottom:40px}details{border-bottom:1px solid var(--line);padding:22px 0}summary{font-size:20px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px}summary:after{content:'+'}details[open] summary:after{content:'−'}details p{color:var(--muted);max-width:750px;margin:18px 0 0}
@media(min-width:1600px){.hero-copy{padding-top:100px}}@media(max-width:1150px){.header{padding-inline:32px}.header nav{gap:17px;font-size:11px}.brand img{width:160px}.wrap{width:calc(100% - 64px)}.center-copy{padding:60px 40px}.purpose>div,.sponsor,.page-hero,.contact{gap:45px}.card-photo{height:300px}.contact h1{font-size:65px}}@media(max-width:900px){.header{height:82px;position:relative;z-index:10}.header nav{display:none;position:absolute;left:0;right:0;top:82px;background:var(--ink);padding:22px 32px;flex-direction:column;align-items:stretch;font-size:16px;box-shadow:0 15px 25px #0003}.header nav.open{display:flex}.header nav>a{padding:9px}.menu{display:flex;gap:16px;border:0;background:none;color:white;align-items:center;font-size:14px}.hero{height:690px;min-height:0}.hero h1{font-size:82px}.hero-copy{padding-top:85px}.hero-image{object-position:37% center}.hero-shade{background:linear-gradient(90deg,#070b19ed,#07102e90)}.purpose>div{grid-template-columns:1fr;gap:35px}.purpose h2{max-width:650px}.purpose-copy{max-width:650px}.program-grid{gap:20px}.card-photo{height:260px}.card-copy h3{font-size:21px}.center{grid-template-columns:1fr}.center-photo{min-height:430px}.center-copy{padding:60px 50px}.center-copy h2 br:nth-child(2){display:none}.center-copy p{max-width:650px}.ambition-grid{gap:25px}.ambition-grid h3{font-size:22px}.sponsor{gap:40px}.sponsor img{height:490px}.section-heading{gap:30px}.section-heading>p{width:300px}.page-hero{gap:35px}.page-hero>img{height:450px}.page-hero h1{font-size:62px}.cta>div{align-items:flex-start;flex-direction:column}.footer-top{flex-wrap:wrap}.footer-bottom{flex-wrap:wrap}.footer-bottom>span:last-child{width:100%;margin-top:12px}.contact{gap:35px}.contact h1{font-size:60px}.two-col{gap:40px}}@media(max-width:640px){.wrap{width:calc(100% - 40px)}.header{padding:20px}.brand img{width:150px}.hero{height:650px}.hero-copy{padding-top:80px}.hero h1{font-size:66px;letter-spacing:-2.4px}.hero-copy>p:not(.eyebrow){font-size:17px}.eyebrow{font-size:10px;letter-spacing:1.5px}.hero-bottom{font-size:8px;gap:20px;align-items:flex-end}.hero-bottom span{max-width:200px}.hero-bottom a{max-width:85px;text-align:right}h2{font-size:43px;letter-spacing:-1.7px}.purpose{padding-block:65px}.purpose-copy>p:first-child{font-size:20px}.section{padding-block:30px 65px}.section-heading{align-items:flex-start;flex-direction:column;gap:23px;margin-bottom:30px}.section-heading>p{width:auto}.program-grid{grid-template-columns:1fr;gap:35px}.card-photo{height:380px}.card-copy h3{font-size:27px}.card-copy p{font-size:16px}.card-copy .muted{font-size:15px}.center-photo{min-height:330px}.center-photo>span{left:20px;right:20px;font-size:8px}.center-copy{padding:50px 25px}.center-copy h2{font-size:52px}.ambition{padding-top:65px}.ambition-grid{grid-template-columns:1fr;gap:24px}.ambition-grid article>span{margin-bottom:20px}.ambition-grid h3{font-size:26px;max-width:none}.sponsor{grid-template-columns:1fr;gap:30px;padding-block:10px 60px}.sponsor>img{height:460px}.sponsor>div{padding:0}.partners{padding-block:35px 45px}.partners>div{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.partners img{width:85px;margin:auto;height:45px}.cta{padding-block:55px 65px}.cta .button{width:100%;gap:20px;font-size:13px}.cta>div{gap:30px}.footer-top{gap:35px;padding-bottom:40px}.footer-top img{width:190px}.footer-top p{width:100%;font-size:23px}footer{padding:45px 25px 25px}.footer-bottom{font-size:11px;gap:15px}.footer-bottom>div{gap:25px}.page-hero{grid-template-columns:1fr;padding-block:55px 40px;gap:35px}.page-hero h1{font-size:58px}.page-hero>img{height:400px}.lead{font-size:19px}.method{padding-block:30px 65px}.feature-grid,.two-col{grid-template-columns:1fr;gap:30px}.feature-grid article{padding-bottom:0}.note{padding:35px 25px;margin-bottom:60px}.note h2{font-size:40px}.contact{grid-template-columns:1fr;gap:30px;padding-block:50px}.contact h1{font-size:59px}.contact form{padding:25px 20px}.contact .small{max-width:none}summary{font-size:18px}.faq h2{font-size:40px}.button{gap:25px}.two-col h2{font-size:40px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Keep long editorial headings within narrow screens. */
.center{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.center-copy,.center-photo{min-width:0}.center-copy h2 br{display:initial}
@media(max-width:900px){.center{grid-template-columns:minmax(0,1fr)}}
@media(max-width:640px){.center-copy h2{font-size:clamp(37px,9vw,52px)}.page-hero h1,.contact h1{overflow-wrap:normal;font-size:clamp(44px,11vw,58px)}.hero-copy>p:not(.eyebrow){font-size:clamp(15px,4vw,17px)}.contact,.page-hero,.program-grid,.ambition-grid,.feature-grid,.two-col{grid-template-columns:minmax(0,1fr)}}
.center-copy h2 br:nth-child(2){display:inline!important}
@media(max-width:380px){.center-copy h2{font-size:36px;letter-spacing:-1.8px}.hero .eyebrow{font-size:9px;letter-spacing:1px}}

/* RacketNation signature colors, matched to the supplied artwork. */
:root{--blue:#004fff;--red:#ed0000;--yellow:#ffda00}
.header{background:#fff;color:var(--ink);border-bottom:3px solid var(--blue)}
.header .brand img{width:205px}.header nav>a:hover{color:var(--blue)}
.nav-cta{border-color:var(--blue);color:var(--blue)}.header nav>.nav-cta:hover{background:var(--blue);color:white}
.hero{border-bottom:5px solid var(--red)}.hero .light{background:var(--blue);color:white}.hero .light:hover{background:#003dd1}
.dark{background:var(--blue);color:#fff}.dark:hover{background:#003dd1}.light:hover{background:#eef3ff}
.eyebrow{color:var(--blue)}.hero .eyebrow{color:#fff}.center-copy .eyebrow{color:var(--yellow)}
.text-link{color:var(--blue)}.hero-bottom a,footer .text-link{color:white}.program-card:hover h3{color:var(--blue)}
.card-photo span{border-left:3px solid var(--red)}.ambition-grid article,.feature-grid article{border-top:2px solid var(--blue)}
.ambition-grid article:nth-child(2),.feature-grid article:nth-child(2){border-top-color:var(--red)}
.ambition-grid article:nth-child(3),.feature-grid article:nth-child(3){border-top-color:var(--yellow)}
.center{background:#101114}.center-copy h2 em{color:var(--yellow)}.center-copy .outline:hover{background:var(--blue);border-color:var(--blue)}
.note{border-left:4px solid var(--blue)}.partners .eyebrow{color:var(--ink)}footer{border-top:4px solid var(--blue)}
@media(max-width:900px){.menu{color:var(--ink)}.header nav{background:white;border-bottom:3px solid var(--blue)}}
@media(max-width:640px){.header .brand img{width:165px}}

/* Dark brand theme. */
:root{--ink:#f2f5fc;--paper:#10131b;--muted:#afb9cd;--line:#303a50;--green:#004fff;--accent:#ffda00}
body{background:var(--paper);color:var(--ink)}
.header{background:#090d16;color:#f2f5fc;border-bottom-color:#004fff}
.header nav>a:hover{color:#9cb8ff}.nav-cta{color:#fff;border-color:#507fff}
.hero{background:#090d16}.hero-shade{background:linear-gradient(90deg,#060a17ed,#0b1731b3 50%,#10172840),linear-gradient(0deg,#080c18bb,transparent 35%)}
.eyebrow,.text-link{color:#95b3ff}.hero .eyebrow{color:#e8eeff}.hero h1 em{color:#ffda00}
.card-photo{background:#192133}.card-photo span{background:#111827;color:#edf2ff}
.card-copy .muted,.ambition-grid p,.feature-grid p,.purpose-copy .muted,.section-heading>p,.sponsor>div p:not(.eyebrow),.cta p:not(.eyebrow),.two-col p,details p{color:#afb9cd}
.program-card:hover h3{color:#95b3ff}.ambition-grid article>span,.feature-grid article>span{color:#95b3ff}
.center{background:#090d16}.center-copy p{color:#e1e8f8}.center-copy p.muted,.center-copy small{color:#aebbd4}
.note,form{background:#171f31}.note p:not(.eyebrow),.lead{color:#b8c5df}
input,select,textarea{background:#0e1524;color:#f2f5fc;border-color:#475671;color-scheme:dark}
input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:#85a6ff}
.partners .eyebrow{color:#dfe7f8}.partners img{filter:grayscale(1) invert(1);mix-blend-mode:screen}
footer{background:#090d16}.footer-top p{color:#dfe7f8}.footer-bottom{color:#b6c1d9}
.light{background:#f2f5fc;color:#0b1120}.dark{background:#004fff;color:white}.hero .light{background:#004fff;color:white}
.button.dark:hover,.hero .light:hover{background:#1746cb}.outline{color:#f2f5fc;border-color:#64789e}
a:focus-visible,button:focus-visible{outline-color:#ffda00}
@media(max-width:900px){.header nav{background:#090d16}.menu{color:#f2f5fc}}
/* Modern performance-tennis styling, using the existing brand palette. */
.hero{isolation:isolate}.hero-copy,.hero-bottom{z-index:1}.hero-copy h1{font-weight:300;letter-spacing:-4px}.hero-copy h1 em{display:inline-block;position:relative}.hero-copy h1 em:after{content:'';display:block;height:3px;background:var(--red);transform:skew(-35deg) scaleX(.72);transform-origin:left;margin-top:8px}.hero-copy .eyebrow:before{content:'';display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--yellow);margin-right:12px;box-shadow:0 0 18px #ffda0066}.hero-image{animation:court-drift 22s ease-in-out infinite alternate}.hero-copy{animation:rise-in .8s both}.hero-bottom{animation:rise-in 1.1s both}.button{position:relative;overflow:hidden;box-shadow:0 8px 25px #0002}.button span{transition:transform .25s}.button:hover span{transform:translate(3px,-3px)}.button:after{content:'';position:absolute;inset:-80% auto -80% -50%;width:35%;background:linear-gradient(90deg,transparent,#ffffff20,transparent);transform:rotate(25deg);transition:left .6s;pointer-events:none}.button:hover:after{left:130%}.header .nav-cta{border-radius:0;clip-path:polygon(0 0,100% 0,100% 78%,95% 100%,0 100%)}.header nav>a:not(.nav-cta){position:relative}.header nav>a:not(.nav-cta):after{content:'';position:absolute;bottom:-8px;left:0;width:100%;height:2px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .25s}.header nav>a:hover:after{transform:scaleX(1)}
.section-heading h2,.purpose h2,.sponsor h2{letter-spacing:-2.4px}.eyebrow{display:flex;align-items:center;gap:10px}.eyebrow:after{content:'';width:38px;height:1px;background:currentColor;opacity:.5}.hero .eyebrow:after{width:70px}.card-photo{clip-path:polygon(0 0,100% 0,100% 94%,94% 100%,0 100%);border-top:2px solid var(--blue)}.program-card:nth-child(2) .card-photo{border-top-color:var(--red)}.program-card:nth-child(3) .card-photo{border-top-color:var(--yellow)}.card-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#060a1780,transparent 45%);pointer-events:none}.card-photo span{z-index:1;backdrop-filter:blur(12px);background:#090d16d9}.card-copy h3>span{font-size:21px;border:1px solid var(--line);width:38px;height:38px;display:grid;place-items:center;transition:background .25s,transform .25s}.program-card:hover h3>span{background:var(--blue);color:white;transform:rotate(-6deg)}.card-copy{border-bottom:1px solid var(--line);padding-bottom:20px}.program-card:hover .card-photo img{transform:scale(1.055);filter:saturate(1)}
.center{position:relative;border-block:1px solid #303a50}.center-photo{overflow:hidden}.center-photo img{transition:transform 1s}.center:hover .center-photo img{transform:scale(1.025)}.center-copy{position:relative;background-image:linear-gradient(90deg,#ffffff03 1px,transparent 1px),linear-gradient(#ffffff03 1px,transparent 1px);background-size:72px 72px}.center-copy h2{position:relative}.center-copy h2:before{content:'NEXT /';display:block;font-size:10px;letter-spacing:4px;color:#95b3ff;margin-bottom:24px;font-weight:700}.ambition-grid article>span,.feature-grid article>span{font-size:37px;font-weight:300;font-variant-numeric:tabular-nums;letter-spacing:-2px;opacity:.8}.ambition-grid article,.feature-grid article{transition:transform .3s,background .3s}.ambition-grid article:hover,.feature-grid article:hover{transform:translateY(-5px)}.sponsor>img{clip-path:polygon(7% 0,100% 0,100% 100%,0 100%,0 7%);border-bottom:4px solid var(--blue)}.cta{position:relative;overflow:hidden}.cta:after{content:'';position:absolute;right:-70px;top:30px;width:270px;height:270px;border:1px solid #004fff33;border-radius:50%;box-shadow:0 0 0 40px #004fff08,0 0 0 80px #004fff04;pointer-events:none}.cta>div,.cta h2,.cta>.eyebrow{position:relative;z-index:1}.text-link{transition:color .2s,letter-spacing .2s}.text-link:hover{color:#ffda00;letter-spacing:.15px}.page-hero>img{clip-path:polygon(0 0,100% 0,100% 92%,92% 100%,0 100%);border-bottom:4px solid var(--blue)}.page-hero h1{animation:rise-in .65s both}.note{background-image:linear-gradient(135deg,transparent 80%,#004fff12)}.partners{position:relative}.partners .eyebrow{justify-content:center}.partners img{transition:transform .25s,opacity .25s;opacity:.75}.partners img:hover{transform:translateY(-3px);opacity:1}footer{position:relative}footer:before{content:'';position:absolute;top:-4px;left:0;width:18%;height:4px;background:var(--red)}footer:after{content:'';position:absolute;top:-4px;right:0;width:7%;height:4px;background:var(--yellow)}
.reveal-ready{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.reveal-ready.is-visible{opacity:1;transform:translateY(0)}
@keyframes rise-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes court-drift{from{transform:scale(1)}to{transform:scale(1.055)}}
@media(max-width:640px){.hero-copy h1{letter-spacing:-2.6px}.hero-copy h1 em:after{height:2px;margin-top:4px}.eyebrow:after{width:22px;flex-shrink:0}.hero .eyebrow{gap:0}.hero .eyebrow:after{display:none}.section-heading h2,.purpose h2,.sponsor h2{letter-spacing:-1.7px}.cta:after{width:180px;height:180px;right:-100px;top:70px}.card-copy h3>span{flex-shrink:0}.ambition-grid article>span,.feature-grid article>span{font-size:30px}}
@media(prefers-reduced-motion:reduce){.hero-image,.hero-copy,.hero-bottom,.page-hero h1{animation:none}.reveal-ready{opacity:1;transform:none}.button:hover span,.ambition-grid article:hover,.feature-grid article:hover{transform:none}}

.header .brand{display:flex;align-items:center;gap:12px;flex-shrink:0}.header .brand .brand-symbol{width:44px;height:44px;object-fit:contain}.header .brand .brand-name{width:145px;height:auto}
@media(max-width:640px){.header .brand{gap:9px}.header .brand .brand-symbol{width:36px;height:36px}.header .brand .brand-name{width:120px}}
/* Live tennis sculpture: no external library or image download. */
.hero-copy{pointer-events:none}.hero-copy a{pointer-events:auto}.hero h1{max-width:58%;font-size:clamp(66px,6.4vw,100px)}.tennis-motion{position:absolute;right:1%;top:4%;width:46%;height:84%;z-index:2;isolation:isolate}.tennis-motion:before{content:'';position:absolute;inset:18%;border-radius:50%;background:#004fff22;filter:blur(50px);z-index:-1}#tennis-canvas{width:100%;height:100%;display:block;touch-action:pan-y}.motion-label{position:absolute;display:flex;gap:12px;align-items:center;font:10px Satoshi,sans-serif;letter-spacing:2px;color:#e3eaff;border:1px solid #6786c944;background:#0b1528b0;border-radius:30px;padding:10px 16px;backdrop-filter:blur(10px);pointer-events:none}.motion-label i{width:5px;height:5px;border-radius:50%;background:#ffda00;box-shadow:0 0 12px #ffda00}.motion-label-one{right:3%;top:24%}.motion-label-two{left:4%;bottom:22%}.motion-caption{position:absolute;bottom:0;right:8%;left:8%;display:flex;justify-content:space-between;align-items:center;color:#9fb7e8;font-size:9px;letter-spacing:2px}.motion-caption button{width:33px;height:33px;border:1px solid #6e87ba66;border-radius:50%;background:#10182bb0;color:#fff;cursor:pointer;letter-spacing:0}.tournament-section{padding-block:85px 100px;display:grid;grid-template-columns:1fr 1fr;gap:85px;border-top:1px solid var(--line)}.tournament-intro>p:not(.eyebrow){max-width:480px;color:var(--muted)}.tournament-year{position:relative;padding:28px 32px;border-left:3px solid var(--red);background:linear-gradient(120deg,#004fff26,#0d142400);overflow:hidden}.tournament-year:after{content:'';width:160px;height:160px;position:absolute;right:-60px;top:-50px;border:1px solid #004fff55;border-radius:50%;box-shadow:0 0 0 28px #004fff0a}.tournament-year>span{font-size:9px;letter-spacing:1.7px;color:#a7beef;display:block}.tournament-year strong{font-size:clamp(80px,9vw,130px);font-weight:300;letter-spacing:-7px;line-height:1.25;color:#fff}.tournament-year p{font-size:14px;color:#b4bfd5;margin:0}.tournament-formats{display:grid;grid-template-columns:1fr 1fr;gap:0 25px;margin-top:25px}.tournament-formats span{border-bottom:1px solid var(--line);padding:15px 0;font-size:13px;color:#d7e2fa}.header nav{gap:18px}.header nav>a{font-size:12px}
@media(max-width:1150px){.header nav{gap:13px}.header nav>a{font-size:10px}.header{gap:20px}.tournament-section{gap:45px}.hero h1{font-size:76px}.tennis-motion{right:0;width:44%}}
@media(max-width:900px){.hero{height:1080px}.hero h1{max-width:100%;font-size:82px}.hero-copy{padding-top:55px}.tennis-motion{top:auto;bottom:85px;width:550px;max-width:90%;height:470px;right:5%}.motion-label-one{right:1%;top:20%}.hero-bottom{bottom:23px}.tournament-section{gap:35px}.header nav>a{font-size:16px}}
@media(max-width:640px){.hero{height:1040px}.hero-copy{padding-top:60px}.hero h1{font-size:66px;max-width:100%}.tennis-motion{width:100%;max-width:100%;height:370px;right:0;bottom:85px}.motion-label{font-size:8px;padding:8px 11px;letter-spacing:1px}.motion-label-one{right:5%;top:20%}.motion-label-two{left:5%;bottom:20%}.motion-caption{font-size:8px;right:8%;left:8%}.tournament-section{grid-template-columns:minmax(0,1fr);padding-block:55px 65px;gap:38px}.tournament-year{padding:25px}.tournament-formats{gap:0 15px}.tournament-formats span{font-size:12px}.hero-bottom{font-size:8px}.hero .eyebrow{font-size:9px}}
@media(prefers-reduced-motion:reduce){.tennis-motion:before{filter:blur(40px)}}

/* Keep navigation available throughout the page. */
.header{position:sticky;top:0;z-index:1000}

.achievement-journey{position:relative;height:470px;overflow:hidden;background:#071020;border-bottom:4px solid var(--blue);clip-path:polygon(0 0,100% 0,100% 92%,92% 100%,0 100%)}
.achievement-slide{position:absolute;inset:0;background-image:url('/images/achievement-journey-web.webp');background-size:400% 100%;opacity:0;animation:achievement-cycle 20s linear infinite;animation-delay:calc(var(--step)*5s)}
.achievement-slide:first-child{opacity:1}.achievement-slide span{position:absolute;bottom:26px;left:20px;right:20px;padding:11px 14px;background:#090d16dc;border-left:3px solid #ed0000;color:#fff;font-size:12px;letter-spacing:1px;text-transform:uppercase}
.achievement-toggle{position:absolute;right:15px;top:15px;z-index:2;width:35px;height:35px;border-radius:50%;border:1px solid #ffffff70;background:#090d16cc;color:white;cursor:pointer}
.achievement-journey.is-paused .achievement-slide{animation-play-state:paused}
@keyframes achievement-cycle{0%{opacity:0}5%,23%{opacity:1}28%,100%{opacity:0}}
@media(max-width:640px){.achievement-journey{height:420px}}
@media(prefers-reduced-motion:reduce){.achievement-slide{animation:none}.achievement-slide:first-child{opacity:1}}

.training-journey .achievement-slide{background-image:url('/images/development-training-web.webp')}

.center-concepts{position:relative;aspect-ratio:3/2;background:#071020;overflow:hidden;border-bottom:4px solid var(--blue)}
.center-concepts img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;animation:concept-alternate 12s infinite;opacity:0}
.center-concepts img:first-child{opacity:1}.center-concepts img:nth-child(2){animation-delay:6s}
.center-concepts .concept-toggle{position:absolute;right:12px;top:12px;z-index:2;width:34px;height:34px;background:#090d16cc;color:white;border:1px solid #ffffff80;border-radius:50%;cursor:pointer}
.center-concepts.is-paused img{animation-play-state:paused}
@keyframes concept-alternate{0%,45%{opacity:1}50%,95%{opacity:0}100%{opacity:1}}
@media(prefers-reduced-motion:reduce){.center-concepts img{animation:none}.center-concepts img:first-child{opacity:1}}

.center-concepts{transform:scale(1.08);transform-origin:center}

.header nav>a,.header .menu{text-transform:uppercase}

.page-hero>img.tournament-photo-full{height:auto;aspect-ratio:2960/2021;object-fit:contain;filter:none}

.header nav>a[aria-current="page"],.header nav>a.is-selected,.header nav>a:active{color:#ed0000}

.sponsor>img[src*="backing-journey-team"]{height:auto;aspect-ratio:4/3;object-fit:contain;filter:none}

.tournament-posters{min-width:0;border-bottom:4px solid #004fff;background:#0a1120}
.poster-frame{position:relative;aspect-ratio:4/5;overflow:hidden;background:#0a1120}
.poster-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;filter:saturate(.82) contrast(1.06) brightness(.96);opacity:0;transition:opacity .8s ease;pointer-events:none}
.poster-slide.is-active{opacity:1}
.poster-controls{display:flex;justify-content:center;align-items:center;gap:10px;padding:13px}
.poster-dot{padding:0;width:7px;height:7px;border:1px solid #a4b7d8;border-radius:50%;background:transparent;cursor:pointer}.poster-dot.is-active{background:#ed0000;border-color:#ed0000}
.poster-pause{margin-left:10px;border:1px solid #6c7a95;background:transparent;color:white;border-radius:50%;width:30px;height:30px;cursor:pointer}
@media(prefers-reduced-motion:reduce){.poster-slide{transition:none}}

.page-hero:has(.tournament-posters){grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}
.page-hero:has(.tournament-posters)>div{min-width:0}.page-hero:has(.tournament-posters) h1{font-size:clamp(44px,5.3vw,85px)}
@media(max-width:640px){.page-hero:has(.tournament-posters){grid-template-columns:minmax(0,1fr)}}

.tournament-posters{width:min(100%,420px,calc((100svh - 190px)*.8));justify-self:center}.tournament-posters .poster-frame{aspect-ratio:4/5}.poster-slide{transition:opacity .5s ease}
@media(max-width:640px){.tournament-posters{width:min(100%,360px,calc((100svh - 150px)*.8))}}

/* One consistent editorial frame for all content photography and galleries. */
:root{--media-radius:10px;--media-border:#34435e;--media-accent:#004fff}
.card-photo,.page-hero>img,.sponsor>img,.center-photo,.achievement-journey,.center-concepts,.tournament-posters{
 clip-path:none;border:1px solid var(--media-border);border-bottom:2px solid var(--media-accent);border-radius:var(--media-radius);overflow:hidden;background-color:#0a1120;
}
.program-card:nth-child(2) .card-photo,.program-card:nth-child(3) .card-photo{border-top-color:var(--media-border)}
.card-photo img,.center-photo img,.achievement-slide,.center-concepts img,.poster-slide{clip-path:none;border:0;border-radius:0}
.poster-frame{border-radius:calc(var(--media-radius) - 1px);background:#0a1120}
.page-hero>img,.sponsor>img{display:block}
@media(max-width:640px){:root{--media-radius:8px}}

.adult-card-slideshow{position:absolute;inset:0;background:#0a1120}
.card-photo .adult-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;filter:saturate(.78) contrast(1.05) brightness(1.02);opacity:0;transition:opacity .45s ease;transform:none}
.card-photo .adult-slide.is-active{opacity:1}.program-card:hover .adult-slide{transform:none;filter:saturate(.78) contrast(1.05) brightness(1.02)}
@media(prefers-reduced-motion:reduce){.card-photo .adult-slide{transition:none}}

.junior-card-sequence{position:absolute;inset:0;background:#0a1120}
.card-photo .junior-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center;filter:saturate(.82) contrast(1.04) brightness(1.02);opacity:0;transition:opacity .45s;transform:none;pointer-events:none}
.card-photo .junior-slide.is-active{opacity:1}.program-card:hover .junior-slide{transform:none;filter:saturate(.82) contrast(1.04) brightness(1.02)}
@media(prefers-reduced-motion:reduce){.card-photo .junior-slide{transition:none}}

.sponsor>.journey-media{position:relative;padding:0;width:100%;aspect-ratio:4/3;overflow:hidden;border:1px solid #34435e;border-bottom:2px solid #004fff;border-radius:10px;background:#0a1120}.journey-media .journey-photo,.journey-media .journey-video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;filter:none;transition:opacity .5s}.journey-video{opacity:0}.journey-media.is-playing .journey-video{opacity:1}.journey-media.is-playing .journey-photo{opacity:0}.journey-media .journey-watermark{position:absolute;right:16px;bottom:16px;width:52.2px;height:auto;opacity:.5;pointer-events:none;filter:none;border:0;border-radius:0;z-index:2}

.page-hero>.sponsorship-gallery{position:relative;width:100%;height:min(620px,72vh);min-height:320px;overflow:hidden;background:#0a1120;border:1px solid #34435e;border-bottom:2px solid #004fff;border-radius:10px;padding:0}
.sponsorship-gallery .sponsorship-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;filter:saturate(.82) contrast(1.04) brightness(1.02);opacity:0;transition:opacity .6s}
.sponsorship-gallery .sponsorship-slide.is-active{opacity:1}
.sponsorship-gallery .sponsorship-watermark{position:absolute;right:16px;bottom:16px;width:52.2px;height:auto;opacity:.5;pointer-events:none;filter:none;border:0;border-radius:0;z-index:2}
@media(max-width:640px){.page-hero>.sponsorship-gallery{height:440px;min-height:0;border-radius:8px}}
@media(prefers-reduced-motion:reduce){.sponsorship-gallery .sponsorship-slide{transition:none}}

.tournament-posters{--poster-ratio:1;width:min(100%,420px,calc((100svh - 190px)*var(--poster-ratio)));align-self:center}.tournament-posters .poster-frame{aspect-ratio:1}.tournament-posters .poster-slide{object-fit:contain;padding:0}@media(max-width:640px){.tournament-posters{width:min(100%,360px,calc((100svh - 150px)*var(--poster-ratio)))}}

/* One consistent poster canvas; rounded artwork remains fully visible. */
.tournament-posters{width:min(100%,420px,calc((100svh - 190px)*.8));border-radius:12px;overflow:hidden;background:#0a1120}
.tournament-posters .poster-frame{aspect-ratio:4/5;border-radius:11px;overflow:hidden}
.tournament-posters .poster-slide{box-sizing:border-box;padding:10px;object-fit:contain;border-radius:20px;clip-path:inset(10px round 10px)}
@media(max-width:640px){.tournament-posters{width:min(100%,360px,calc((100svh - 150px)*.8))}}
.tournament-posters .poster-slide{inset:auto;top:50%;left:50%;transform:translate(-50%,-50%);width:auto;height:auto;max-width:calc(100% - 20px);max-height:calc(100% - 20px);padding:0;border-radius:10px;clip-path:none}

/* Sponsorship slides share a fixed canvas and rounded, uncropped artwork. */
.page-hero>.sponsorship-gallery{height:auto;min-height:0;aspect-ratio:4/5;width:min(100%,420px,calc((100svh - 190px)*.8));justify-self:center;align-self:center;border-radius:12px;overflow:hidden}
.sponsorship-gallery .sponsorship-slide{inset:auto;top:50%;left:50%;transform:translate(-50%,-50%);width:auto;height:auto;max-width:calc(100% - 20px);max-height:calc(100% - 20px);padding:0;border-radius:10px;clip-path:none;object-fit:contain}
@media(max-width:640px){.page-hero>.sponsorship-gallery{height:auto;min-height:0;width:min(100%,360px,calc((100svh - 150px)*.8));border-radius:12px}}

.page-hero>img.coaching-hero-photo{object-fit:contain;object-position:center;background:#0a1120;filter:saturate(.82) contrast(1.04) brightness(1.02)}

.page-hero>.coaching-gallery{position:relative;aspect-ratio:4/5;width:min(100%,420px,calc((100svh - 190px)*.8));min-width:0;justify-self:center;align-self:center;overflow:hidden;border:1px solid #34435e;border-bottom:2px solid #004fff;border-radius:12px;background:#0a1120}
.coaching-gallery .coaching-slide{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:auto;height:auto;max-width:calc(100% - 20px);max-height:calc(100% - 20px);object-fit:contain;border-radius:10px;filter:saturate(.82) contrast(1.04) brightness(1.02);opacity:0;transition:opacity .6s;pointer-events:none}
.coaching-gallery .coaching-slide.is-active{opacity:1}
@media(max-width:640px){.page-hero>.coaching-gallery{width:min(100%,360px,calc((100svh - 150px)*.8))}}
@media(prefers-reduced-motion:reduce){.coaching-gallery .coaching-slide{transition:none}}

.page-hero>.development-video-frame{width:100%;aspect-ratio:16/9;overflow:hidden;border:1px solid #34435e;border-bottom:2px solid #004fff;border-radius:12px;background:#0a1120;align-self:center}.development-video{display:block;width:100%;height:100%;object-fit:contain}

.page-hero>img[src*="purpose-court-coaching-enhanced"]{filter:none}

/* Consistent bright, vivid photography and video grade. Concept boards stay original. */
:root{--media-enhancement:brightness(1.12) saturate(1.2) contrast(1.045)}
.hero-image,
.page-hero>img:not([src*="purpose-court-coaching-enhanced"]),
.sponsor>img,
.card-photo img,.card-photo video,
.program-card:hover .card-photo img,.program-card:hover .card-photo video,
.poster-slide,
.sponsorship-gallery .sponsorship-slide,
.coaching-gallery .coaching-slide,
.journey-media .journey-photo,.journey-media .journey-video,
.development-video,
.achievement-journey:not(.training-journey) .achievement-slide,
.training-journey .achievement-slide{filter:var(--media-enhancement)}
.center-concepts,.center-concepts img{filter:none}
.page-hero>img[src*="purpose-court-coaching-enhanced"]{filter:none}
.card-photo .adult-slide,.card-photo .junior-slide,.program-card:hover .adult-slide,.program-card:hover .junior-slide,.page-hero>img.coaching-hero-photo{filter:var(--media-enhancement)}

footer .site-version{font-size:12px;line-height:1.5;letter-spacing:.3px;color:#aebbd0;margin:0 0 14px;font-weight:400}

/* Brand partners: consistent, readable support section on every entry point. */
.partners{padding-block:72px 76px}
.partners h2{margin:22px auto 24px;max-width:850px}
.partners .partners-description{max-width:760px;margin:0 auto;color:var(--muted);font-size:18px;line-height:1.7}
.partners .partner-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px;list-style:none;padding:0;margin:42px 0 0}
.partner-grid li{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:27px 14px 23px;border:1px solid var(--line);border-radius:10px;background:#111b2b}
.partners .partner-grid img{display:block;width:100%;max-width:110px;height:55px;object-fit:contain;opacity:.9}
.partner-grid span{color:#dfe7f8;font-size:13px;letter-spacing:1.1px;font-weight:500}
@media(max-width:1000px){.partners .partner-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:640px){.partners{padding-block:48px}.partners .partners-description{font-size:16px}.partners .partner-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:30px}.partner-grid li{padding:24px 12px 20px}}

/* Original brand colors on the light partner rail, matching the reference site. */
.partners .partner-grid{gap:30px;padding:28px 30px;margin-top:42px;background:#f5f3e8;border-radius:10px}
.partners .partner-grid li{padding:0;gap:0;min-height:90px;background:transparent;border:0;border-radius:0}
.partners .partner-grid img{width:100%;max-width:140px;height:80px;filter:none;mix-blend-mode:normal;opacity:1}
.partners .partner-grid img:hover{transform:none}
@media(max-width:1000px){.partners .partner-grid{gap:24px 36px;padding:26px 30px}}
@media(max-width:640px){.partners .partner-grid{gap:20px 26px;padding:22px}.partners .partner-grid img{max-width:135px;height:70px}.partners .partner-grid li{min-height:78px}}

.partners .partner-grid a{display:flex;align-items:center;justify-content:center;width:100%;min-height:90px;border-radius:6px;transition:background-color .2s ease}
.partners .partner-grid a:hover{background:#eae7da}
.partners .partner-grid a:focus-visible{outline:2px solid #004fff;outline-offset:6px}
@media(max-width:640px){.partners .partner-grid a{min-height:78px}}

.partners .partner-link-hint{font-size:14px;line-height:1.6;color:#aebbd0;margin:24px auto 0}
.partners .partner-grid{margin-top:22px}
.partners .partner-grid a{position:relative;cursor:pointer}

/* Readable text on the Tennis Center's permanently dark panel. */
.center-copy{color:#f2f5fc}.center-copy h2{color:#f2f5fc}.center-copy h2 em{color:#ffda00}
/* Keep the offscreen video footprint stable without preloading the stream. */
video{max-width:100%}

/* ASCEND launch messaging stays within the website's established navy palette. */
.ascend-product-name{font-size:clamp(30px,3.4vw,48px);font-weight:500;letter-spacing:2px;line-height:1.2;margin:24px 0 22px;color:#f2f5fc}
.ascend-product-name span{display:block;font-size:15px;font-weight:400;letter-spacing:.5px;color:#aebbd0;margin-top:8px}
.ascend-intro>.ascend-launch-date{display:inline-block;font-size:14px;color:#dce7ff;border:1px solid #48618c;border-radius:30px;padding:10px 18px;margin:6px 0 26px;background:#14213a}
.ascend-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin:10px 0 30px}
.ascend-feature-grid article{border-top:1px solid #34435e;padding-top:20px}
.ascend-feature-grid h3{font-size:21px;margin-bottom:12px;color:#f2f5fc}
.ascend-feature-grid p{font-size:15px;color:#afb9cd;line-height:1.7;margin-bottom:0}
.ascend-launch-note{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:24px 28px;margin:0 0 34px;border:1px solid #34435e;border-left:3px solid #004fff;border-radius:10px;background:linear-gradient(110deg,#14213a,#0d1627)}
.ascend-launch-note .ascend-kicker{font-size:11px;letter-spacing:1.8px;color:#9cb8ff;margin:0 0 8px}
.ascend-launch-note .ascend-launch-title{font-size:clamp(19px,2vw,25px);line-height:1.4;color:#f2f5fc;margin:0 0 6px}
.ascend-launch-note p:last-child{font-size:14px;color:#afb9cd;margin:0}
.ascend-launch-note>a{flex-shrink:0}
.legacy-journal-note{font-size:14px;line-height:1.6;color:#afb9cd}.legacy-journal-note a{color:#9cb8ff;text-decoration:underline}
@media(max-width:760px){.ascend-feature-grid{grid-template-columns:1fr;gap:20px}.ascend-launch-note{align-items:flex-start;flex-direction:column;gap:18px;padding:22px}.ascend-intro>.ascend-launch-date{font-size:13px;padding:9px 14px}}

/* Direct access to ASCEND beside the homepage approach link. */
.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;max-width:58%}.hero .hero-ascend{background:#0b1930cc;border-color:#95b3ff;color:#fff}.hero .hero-ascend:hover{background:#163264;border-color:#fff}.hero-actions a:focus-visible{outline:3px solid #ffda00;outline-offset:4px}@media(max-width:900px){.hero-actions{max-width:100%}}@media(max-width:640px){.hero-actions{gap:10px}.hero-actions .button{padding:14px 16px;gap:16px;font-size:13px;min-height:52px}}
