
body[class] header .brand{display:flex;gap:12px;align-items:center;line-height:1.05;font-family:'DM Sans',Arial,sans-serif;font-weight:700;letter-spacing:.06em;flex-shrink:0}
body[class] header .brand img{width:76px;height:90px;object-fit:contain}
body[class] header .brand span{display:block;font-family:'DM Sans',Arial,sans-serif;font-size:.7rem;line-height:1.15;letter-spacing:.06em;font-weight:700}
body[class] header .brand b{font-family:'Bebas Neue','Arial Narrow',sans-serif;font-size:1.9rem;line-height:1.05;font-weight:400;letter-spacing:.06em}
body[class] header .navwrap{min-height:108px}
.ryla-opening,.kids-hero,.ball-hero{position:relative}
.program-hero-video{display:block;width:100%;height:100%;object-fit:cover}
.ryla-main-photo .program-hero-video{object-position:center 45%}
.ball-action-photo .program-hero-video{object-position:70% 42%}
.hero-video-toggle{position:absolute;right:24px;bottom:16px;z-index:5;border:1px solid #ffffff9c;border-radius:4px;background:#151813e8;color:#fff;padding:10px 15px;font:600 14px 'DM Sans',sans-serif;cursor:pointer;min-height:44px}
.hero-video-toggle:focus-visible{outline:3px solid #C7FC43;outline-offset:4px}
@media(max-width:760px){body[class] header .brand img{width:62px;height:74px}body[class] header .brand span{font-size:.65rem}body[class] header .brand b{font-size:1.7rem}body[class] header .navwrap{min-height:88px}.hero-video-toggle{right:15px;bottom:10px}.ball-action-photo .program-hero-video{object-position:60% center}}

body[class] header .brand{color:#151813}
/* Unified hero refinements */
body[class] header .brand>span{text-align:center}
.ryla-page .ryla-unified{padding-top:0;overflow:hidden;border-bottom:5px solid #6395ed}
.ryla-page .ryla-hero-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:55px;align-items:center;padding-block:35px 60px}
.ryla-page .ryla-hero-copy .ryla-logo-frame{width:310px;height:145px;margin-bottom:18px}
.ryla-page .ryla-hero-copy .ryla-logo-frame img{width:310px;height:310px}
.ryla-page .ryla-hero-copy .kicker{color:#a9c9ff;font-size:11px;letter-spacing:.09em;margin-bottom:16px}
.ryla-page .ryla-hero-copy h1{font-size:clamp(3.5rem,5.4vw,5.3rem);line-height:1;margin:0 0 22px}
.ryla-page .ryla-hero-copy h1 em{color:#C7FC43;font-style:normal}
.ryla-page .ryla-hero-description{color:#d9e1eb;max-width:430px;font-size:17px;line-height:1.65}
.ryla-page .ryla-hero-copy .p-actions{gap:20px;flex-wrap:wrap;margin-top:25px}
.ryla-page .ryla-hero-copy .p-actions>a:last-child{color:white;text-underline-offset:5px}
.ryla-page .ryla-film{position:relative;min-width:0;border:2px solid #6395ed;box-shadow:12px 12px 0 #6395ed;transform:rotate(1deg);margin:20px 12px 20px 0}
.ryla-page .ryla-film figure{margin:0;height:550px;overflow:hidden}
.ryla-page .ryla-film video{object-position:50% center}
.ryla-page .ryla-film-mark{position:absolute;left:-20px;bottom:32px;background:#C7FC43;color:#101316;padding:12px 18px;font:24px 'Bebas Neue',sans-serif;letter-spacing:.06em;transform:rotate(-3deg)}
.ryla-page .ryla-film .hero-video-toggle{top:15px;bottom:auto;right:15px}
.hero-social{position:relative;z-index:2;color:white;border-top:1px solid #ffffff30;margin-top:28px}
.hero-social-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:16px}
.hero-social p{margin:0!important;font-size:14px!important;letter-spacing:.02em;color:inherit!important}
.hero-social nav{display:flex;align-items:center;gap:24px}
.hero-social a{display:inline-flex;align-items:center;gap:8px;color:inherit;font:600 13px 'DM Sans',sans-serif;min-height:44px;text-decoration:none}
.hero-social svg{width:20px;height:20px;flex-shrink:0}
.hero-social a:hover{color:#C7FC43}
.hero-social a:focus-visible{outline:2px solid #C7FC43;outline-offset:5px}
.ryla-unified .hero-social{margin-top:0;background:#10131690}
.kids-hero:has(.hero-social){padding-bottom:0}
.kids-hero>.hero-social{margin-top:60px}
.kids-hero>.hero-video-toggle,.ball-hero>.hero-video-toggle{bottom:110px}
.athletic-page .ball-hero:after{background:linear-gradient(90deg,#090c09f5 0%,#090c09d9 28%,#090c0930 62%,transparent 100%),linear-gradient(0deg,#090c09a0,transparent 35%)}
.athletic-page .ball-hero-inner{padding-bottom:24px}
.ball-hero .hero-social{background:#090c09a0}
.dance-hero .hero-social{color:inherit}
@media(max-width:850px){.ryla-page .ryla-hero-grid{gap:30px}.ryla-page .ryla-film figure{height:510px}.hero-social nav{gap:18px}}
@media(max-width:700px){.ryla-page .ryla-hero-grid{grid-template-columns:1fr;padding-block:20px 40px;gap:20px}.ryla-page .ryla-hero-copy .ryla-logo-frame{width:260px;height:120px;margin-bottom:15px}.ryla-page .ryla-hero-copy .ryla-logo-frame img{width:260px;height:260px}.ryla-page .ryla-hero-copy h1{font-size:3.7rem}.ryla-page .ryla-film{margin:15px 12px 10px 6px;box-shadow:8px 8px 0 #6395ed}.ryla-page .ryla-film figure{height:360px}.ryla-page .ryla-film-mark{font-size:21px;left:-12px;bottom:20px}.hero-social-inner{align-items:flex-start;flex-direction:column;gap:4px;padding-block:15px}.hero-social nav{display:flex!important;position:static!important;background:none!important;box-shadow:none!important;padding:0!important;gap:20px;flex-wrap:wrap}.hero-social a{font-size:12px}.kids-hero>.hero-video-toggle,.ball-hero>.hero-video-toggle{bottom:126px}.athletic-page .ball-hero:after{background:linear-gradient(90deg,#090c09dd,#090c0930),linear-gradient(0deg,#090c09d9 0%,#090c0970 45%,transparent)} }
.hero-social nav{display:flex!important;position:static!important;background:none!important;box-shadow:none!important;padding:0!important;flex-wrap:wrap;border:0}
.hero-social nav a{border:0;padding:0}
/* RYLA's frame borrows the crown and paint language of its wordmark. */
.ryla-page .ryla-film{border:3px solid #101316;box-shadow:10px 11px 0 #6395ed,14px 15px 0 #101316;isolation:isolate}
.ryla-page .ryla-film:before{content:'';position:absolute;inset:-22px -20px;z-index:-1;background:linear-gradient(112deg,transparent 3%,#6395ed 3% 8%,transparent 8% 90%,#C7FC43 90% 95%,transparent 95%),url('/assets/ryla-paint.webp') center/cover;clip-path:polygon(2% 0,98% 3%,100% 95%,94% 98%,4% 100%,0 8%);transform:rotate(-2deg);pointer-events:none}
.ryla-page .ryla-film:after{content:'';position:absolute;left:-30px;top:-36px;width:100px;height:100px;background:url('/assets/crown-white.webp') center/contain no-repeat;transform:rotate(-17deg);pointer-events:none;filter:drop-shadow(2px 3px 0 #101316)}
.ryla-page .ryla-film figure{border:5px solid #101316}
.ryla-page .ryla-film-mark{clip-path:polygon(2% 5%,96% 0,100% 86%,97% 96%,0 100%);padding:15px 25px 13px 20px;box-shadow:none}
@media(max-width:700px){.ryla-page .ryla-film:before{inset:-14px -12px}.ryla-page .ryla-film:after{width:78px;height:78px;left:-20px;top:-27px}.ryla-page .ryla-film{margin-top:25px;box-shadow:7px 8px 0 #6395ed,10px 11px 0 #101316}}
/* Launch clarity and founder introduction */
.home-page .next-action .session{color:#C7FC43}
.home-page .next-action>p:not(.session){color:#e2e7dc}
.program-quick-facts{display:grid;gap:5px;padding:13px 0 13px 14px;border-left:3px solid #C7FC43;margin:20px 0;color:white;font:14px/1.5 'DM Sans',sans-serif}
.program-quick-facts strong{font-weight:700}.program-quick-facts span{color:#e1e7ef}
.kids-page .program-quick-facts{border-color:#ffe346}.athletic-page .program-quick-facts{margin-block:18px}
.founders{padding-block:85px;border-bottom:1px solid #dce1d5}
.founders-heading{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:end;margin-bottom:35px}
.founders-heading h2{margin-bottom:0}.founders-heading>p{max-width:490px;line-height:1.75;color:#46503e}
.founders-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px;margin-bottom:28px}
.founder{display:grid;grid-template-columns:180px 1fr;gap:25px;align-items:start}
.founder img{width:180px;height:230px;object-fit:cover;object-position:center;border-bottom:5px solid #C7FC43}
.founder h3{font-family:'Bebas Neue',sans-serif;font-size:30px;font-weight:400;line-height:1.15;margin:8px 0 14px}
.founder-role{font-size:10px;font-weight:700;letter-spacing:.1em;color:#4b593b;margin:0}
.founder p:not(.founder-role){font-size:15px;line-height:1.65;margin:0;color:#46503e}
@media(max-width:1000px){.founder{grid-template-columns:1fr;gap:18px}.founder img{width:100%;height:auto;aspect-ratio:1;object-fit:cover}}
@media(max-width:700px){
.founders{padding-block:45px}.founders-heading{grid-template-columns:1fr;gap:16px;margin-bottom:25px}.founders-grid{gap:30px;grid-template-columns:1fr}.founder{grid-template-columns:110px 1fr;gap:18px}.founder img{width:110px;height:145px}.founder h3{font-size:25px}.founder p:not(.founder-role){font-size:14px}.founder-role{font-size:9px}
.program-quick-facts{font-size:12px;line-height:1.45;margin:14px 0;padding-block:8px}
.home-page .hero{padding-top:26px}.home-page .hero-copy h1{font-size:clamp(2.8rem,11vw,3.6rem);line-height:.98;margin-bottom:18px}.home-page .hero-copy>p:not(.eyebrow){font-size:15px;line-height:1.55}.home-page .hero-grid{gap:25px}.home-page .hero-photos{height:290px;min-height:0}.home-page .hero-foot{margin-top:20px;padding-top:12px}.hero-social-inner{padding-block:10px}
.ryla-page .ryla-hero-copy .ryla-logo-frame{height:90px;width:220px;margin-bottom:10px}.ryla-page .ryla-hero-copy .ryla-logo-frame img{width:220px;height:220px}.ryla-page .ryla-hero-copy h1{font-size:clamp(2.75rem,11vw,3.25rem);line-height:1;margin-bottom:15px}.ryla-page .ryla-hero-description{font-size:15px;line-height:1.5;margin-bottom:12px}.ryla-page .ryla-hero-grid{gap:10px;padding-bottom:28px}.ryla-page .ryla-film figure{height:260px}.ryla-page .ryla-hero-copy .p-actions{margin-top:15px;gap:15px}.ryla-page .ryla-hero-copy .kicker{font-size:10px;margin-bottom:12px}
.kids-page .kids-wordmark{width:210px;height:105px;margin-bottom:14px}.kids-page .kids-intro .all-programs{margin-bottom:10px}.kids-page .kids-intro h1{font-size:2.5rem;margin-bottom:15px}.kids-page .kids-intro>p:not(.kicker){font-size:15px;line-height:1.5}.kids-page .kids-hero-photo{height:260px}.kids-page .kids-photo-stack{margin-top:22px}.kids-page .kids-hero>.hero-social{margin-top:35px}.kids-page .kids-photo-label{font-size:13px;padding:9px 14px}
.athletic-page .ball-logo{width:100px;height:100px;margin:8px 0 15px}.athletic-page .ball-hero h1{font-size:clamp(3.5rem,12vw,4.5rem);margin:15px 0}.athletic-page .ball-description{font-size:15px;line-height:1.5}.athletic-page .ball-hero-inner{padding-bottom:12px}.athletic-page .ball-hero .p-actions{margin-top:14px}.athletic-page .ball-welcome{margin-bottom:0}
}
.card-body .card-schedule{margin-top:18px;font-size:12px;line-height:1.55;color:#46503e}.card-schedule strong,.card-schedule span{display:block}.card-schedule strong{color:#1b2515}
/* Keep the RYLA portrait visible and contain the collage above social links. */
@media(min-width:701px){.home-page .program-portrait{height:590px}.home-page .program-portrait .portrait-basketball{top:280px;height:290px}.home-page .program-portrait .portrait-kids{bottom:0;height:260px}}
@media(max-width:700px){
.home-page .hero .program-portrait{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:230px 195px;gap:0 9px;height:auto;min-height:0;margin:16px 5px 20px;padding-bottom:12px}
.home-page .program-portrait figure{position:relative;inset:auto;width:100%;height:100%;border-width:3px}
.home-page .program-portrait .portrait-leadership{grid-column:1/-1;grid-row:1;width:94%;justify-self:center;transform:rotate(-3deg);z-index:1}
.home-page .program-portrait .portrait-kids{grid-column:1;grid-row:2;transform:translateY(-10px) rotate(-4deg);z-index:2}
.home-page .program-portrait .portrait-basketball{grid-column:2;grid-row:2;transform:translateY(-4px) rotate(4deg);z-index:2}
.home-page .program-portrait figcaption{font-size:17px;padding:4px 8px}
}
/* Small visual control with a full-size touch target and screen-reader label. */
body .hero-video-toggle{display:grid;place-items:center;width:44px;height:44px;min-height:44px;padding:0;border:0;border-radius:50%;background:transparent;color:#fff;box-shadow:none;z-index:5}
body .hero-video-toggle::before{content:'';position:absolute;inset:8px;border-radius:50%;background:#10131685;z-index:-1}
body .hero-video-toggle svg{width:15px;height:15px;stroke:currentColor;stroke-width:2.5;fill:none}
body .hero-video-toggle:hover::before,body .hero-video-toggle:focus-visible::before{background:#101316dc}
body .ball-hero>.hero-video-toggle{top:12px;right:12px;bottom:auto}
body .kids-photo-stack>.hero-video-toggle{top:20px;left:20px;right:auto;bottom:auto}
.ryla-page .ryla-film .hero-video-toggle{top:8px;right:8px;bottom:auto}

.home-page .hero-copy h1{font-size:clamp(2.7rem,4.2vw,4.5rem);line-height:1.06}
@media(max-width:700px){.home-page .hero-copy h1{font-size:clamp(2.25rem,9vw,3.5rem)}}

/* Consistent comparison details, testimony, and mobile invitations. */
.card-body .card-schedule{font-size:13px;border-top:1px solid #dfe3d9;padding-top:14px;line-height:1.65}
.card-body .card-schedule strong{font-size:13px}
.mobile-enroll[hidden]{display:none!important}
.family-voices{display:grid;grid-template-columns:1fr 1.5fr;gap:60px;padding-block:55px;border-top:1px solid #dfe3d9}
.family-voices figure,.student-voices figure{margin:0}
.family-voices blockquote,.student-voices blockquote{margin:0 0 22px;padding:0 0 0 24px;border-left:4px solid #C7FC43}
.family-voices blockquote p{font-size:clamp(20px,2vw,26px);line-height:1.5;margin:0}
.family-voices figcaption,.student-voices figcaption{font-weight:700;font-size:14px}
.family-voices figcaption span,.student-voices figcaption span{display:block;font-weight:400;font-size:12px;color:#596055;margin-top:4px}
.student-voices{padding-block:55px}
.student-voices-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin-top:30px}
.student-voices blockquote{border-color:#5788dd}
.student-voices blockquote p{font-size:23px;line-height:1.5;margin:0}
.voice-note{font-size:12px;color:#596055;margin:24px 0 0}
@media(max-width:700px){
 .hero-social nav{flex-direction:row!important;align-items:center!important;width:auto!important;gap:18px!important}
 .hero-social nav a{width:auto!important;flex:0 0 auto;font-size:12px}
 .home-page .hero-grid{padding-bottom:24px}
 .home-page .hero-social{margin-top:10px}
 .family-voices{grid-template-columns:1fr;gap:15px;padding-block:35px}
 .family-voices h2{margin-bottom:5px}
 .family-voices blockquote p,.student-voices blockquote p{font-size:20px}
 .student-voices{padding-block:35px}
 .student-voices-grid{grid-template-columns:1fr;gap:30px}
}
.family-voices figcaption,.student-voices figcaption{position:static;inset:auto;transform:none;background:none;color:#151813;padding:0;border-radius:0;box-shadow:none;max-width:none}

/* Clear actions and scholarship information. */
.brand{gap:0}.brand img{flex-shrink:0}
.home-page .hero-cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}
.home-page .hero-cta .button{min-height:54px;font-size:16px;padding:14px 24px;text-decoration:none}
.home-page .hero-cta .cta-outline{background:transparent;color:#fff;border:2px solid #fff}
.home-page .hero-cta .cta-outline:hover{background:#fff;color:#131611}
.home-page .hero-copy .hero-choice-help{font-size:14px;line-height:1.5;margin:14px 0 0}
.hero-choice-help a{font-weight:700;text-decoration:underline;text-underline-offset:4px}
.stepup-provider{display:flex;align-items:center;gap:12px;margin-top:20px;width:fit-content;max-width:100%;text-align:left}
.stepup-provider img{display:block;width:76px;height:76px;object-fit:contain;background:#fff;border-radius:4px;padding:3px}
.stepup-provider strong,.stepup-provider span{display:block;color:#fff;line-height:1.4}
.stepup-provider strong{font-size:14px}.stepup-provider span{font-size:13px;font-weight:600}
.program-card h3 a{text-decoration:none;color:inherit}.program-card h3 a:hover{text-decoration:underline;text-underline-offset:4px}
.home-program-brand:focus-visible,.program-card h3 a:focus-visible{outline:3px solid #5788dd;outline-offset:4px}
.card-bottom .program-explore{display:flex;justify-content:center;width:100%;min-height:50px;background:#C7FC43;color:#131611;font-size:15px;text-decoration:none;padding:13px 18px;letter-spacing:0}
.card-bottom .program-explore:hover{background:#b3e43b}
.guide-entry{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:0;padding-bottom:50px}
.guide-entry strong{font-size:22px}.guide-entry p{margin:6px 0 0}
.guide-button{background:#131611;color:#fff;min-height:50px;text-decoration:none;padding:13px 24px}.guide-button:hover{background:#30392a;color:#fff}
.founders>.guide-button{margin-top:25px}
@media(max-width:700px){
.home-page .hero-cta{gap:10px}.home-page .hero-cta .button{width:100%;justify-content:center}
.stepup-provider{margin-top:16px}.stepup-provider img{width:64px;height:64px}
.guide-entry{flex-direction:column;align-items:stretch;gap:18px;padding-bottom:35px}.guide-button{justify-content:center}
}

.program-portrait .portrait-link{display:block;width:100%;height:100%}.program-portrait figcaption a{color:inherit;text-decoration:none}.program-portrait figcaption a:hover{text-decoration:underline}.program-portrait a:focus-visible{outline:3px solid white;outline-offset:-4px}
/* Match the homepage outlined enrollment action on dark program heroes. */
.ryla-page .ryla-hero-copy .p-actions .p-button.outline:hover,
.ryla-page .ryla-hero-copy .p-actions .p-button.outline:focus-visible,
.athletic-page .ball-hero .p-actions .p-button.outline:hover,
.athletic-page .ball-hero .p-actions .p-button.outline:focus-visible{background:#fff;color:#131611;border-color:#fff}
/* Dark actions on light surfaces: high-contrast hover and keyboard focus. */
body .guide-button:hover,
body .guide-button:focus-visible,
.program-page #enroll .p-button.dark:hover,
.program-page #enroll .p-button.dark:focus-visible,
.kids-page header .button:hover,
.kids-page header .button:focus-visible{background:#C7FC43;color:#000;filter:none}
