/* Every YouTube facade has one large play control centered in its full frame. */
[data-youtube]{position:relative;isolation:isolate;cursor:pointer}
[data-youtube][hidden]{display:none!important}
[data-youtube]>.youtube-play-icon{position:absolute;top:50%;left:50%;right:auto;bottom:auto;transform:translate(-50%,-50%);display:grid;place-items:center;width:clamp(56px,6vw,76px);height:clamp(56px,6vw,76px);padding-inline-start:4px;margin:0;border:2px solid #fff;border-radius:50%;background:#111820e8;color:#fff;font-size:clamp(24px,3vw,32px);line-height:1;box-shadow:0 6px 24px #0006;z-index:2;pointer-events:none}
[data-youtube]>.video-label{position:absolute;inset-inline:16px;bottom:20px;top:auto;display:block;margin:0;padding:8px 12px;border-radius:12px;background:#111820d9;color:#fff;font-size:1rem;line-height:1.5;text-align:center;z-index:2;pointer-events:none}
[data-youtube]:hover>.youtube-play-icon,[data-youtube]:focus-visible>.youtube-play-icon{background:#276b98}
/* Ninja Extreme: blue, neutral gray and crown gold, scoped to this page. */
body.ninja-page{--ink:#f7f9fc;--muted:#c9d2dc;--panel:#19212b;--line:#a7b1bc40;background:#10151c;background-image:radial-gradient(ellipse at 0% 15%,#4a99cd24,transparent 52%);color:var(--ink)}
.ninja-page .page-scroll{background:linear-gradient(145deg,#4a99cd12,transparent 45%),#10151c}
.ninja-page .header,.ninja-page .header nav.open{background:#141b24;border-color:#4a99cd50}
.ninja-page .header nav a[aria-current]{color:#80c7f4;border-color:#80c7f4}
.ninja-page .classes-hero{background:radial-gradient(ellipse at 20% 30%,#4a99cd20,transparent 65%)}
.ninja-page .classes-hero h1,.ninja-page main h2,.ninja-page main h3{color:#f7f9fc}
.ninja-page .classes-hero h1 em{color:#73bce9}
.ninja-page main .eyebrow,.ninja-page .schedule-readable h3{color:#eaca71}
.ninja-page main p,.ninja-page main .growth-intro{color:#c9d2dc}
.ninja-page .classes-hero .club-brand-panel{padding:clamp(12px,2vw,24px);border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}
.ninja-page .classes-hero .club-brand-panel::before,.ninja-page .classes-hero .club-brand-panel::after{content:none;display:none}
.ninja-page .classes-hero .club-brand-logo{border:0;border-radius:0;background:transparent;box-shadow:none;filter:none}
.ninja-page .ninja-growth,.ninja-page .coaches,.ninja-page .schedule{background:transparent}
.ninja-page .growth-grid article,.ninja-page .training-grid article,.ninja-page .training-grid article:nth-child(n),.ninja-page .schedule-readable article,.ninja-page .zoho-inquiry{background:#1c2530;color:#f7f9fc;border:1px solid #8295a644;box-shadow:0 12px 30px #0002}
.ninja-page .growth-grid article>span{color:#75bce8;background:#4a99cd1c}
.ninja-page .training-grid .eyebrow{color:#eaca71}
.ninja-page .training-grid .price,.ninja-page .training-grid .price bdi{color:#f0d17c}
.ninja-page .training-grid .price small{color:#c9d2dc}
.ninja-page main .button.primary{background:#76bce8;border:1px solid #76bce8;color:#0d1b27;box-shadow:none}
.ninja-page main .button.outline,.ninja-page .training-grid .outline{background:transparent;border-color:#8fc7e9;color:#cce9fa}
.ninja-page main .button:hover{filter:brightness(1.1)}
.ninja-page .training-grid article p.open-gym-benefit{background:#eaca7114;color:#f1d58d;border-color:#d5b85d70}
.ninja-page .inquiry{background:linear-gradient(120deg,#203a4e,#19212b)}
.ninja-page .schedule-readable dl>div{border-color:#a7b1bc40}
.ninja-page footer{background:#131a23;color:#f7f9fc;border-color:#4a99cd40}
.ninja-page .footer-top{background:linear-gradient(120deg,#284c66,#19212b)}
.ninja-page .footer-top .yellow{background:#eaca71;color:#171d25}
.ninja-page .quick-dock>a{background:#253c4c;color:#fff;border-color:#83b8d8}
.ninja-page .quick-dock>a:nth-child(even){background:#30343a}
.ninja-page :focus-visible{outline-color:#eaca71}
@media(max-width:760px){[data-youtube]>.video-label{font-size:.9rem;bottom:14px;inset-inline:12px}.ninja-page .classes-hero .club-brand-panel{max-width:360px;width:100%}}

/* Keep the approved dark atmosphere; make every content label explicit. */
.ninja-page .growth-grid article,.ninja-page .training-grid article,.ninja-page .training-grid article:nth-child(n),.ninja-page .schedule-readable article,.ninja-page .zoho-inquiry{background:#243342;border-color:#8295a666}
.ninja-page main p,.ninja-page main .growth-intro,.ninja-page .growth-grid article p{color:#e7eef5}
.ninja-page main h1,.ninja-page main h2,.ninja-page main h3{color:#f7f9fc}
.ninja-page main small,.ninja-page main dt,.ninja-page main dd,.ninja-page .training-grid .price small{color:#e7eef5}
.ninja-page main a:not(.button){color:#a5ddff}
.ninja-page main .eyebrow,.ninja-page .training-grid .eyebrow,.ninja-page .schedule-readable h3{color:#f0d17c}
.ninja-page .training-grid article p.open-gym-benefit{color:#ffe5a3;background:#3b3625;border-color:#a48a45}
/* Native portrait film: show the complete source before and after pressing play.
   Size to the available viewport, rather than creating an oversized tall tile. */
.home .venue-film{grid-template-columns:minmax(0,1fr) minmax(0,360px);gap:clamp(24px,5vw,56px);max-width:1000px;padding:clamp(20px,4vw,40px)}
.home .venue-film-copy h3{font-size:clamp(1.7rem,3vw,2.5rem);line-height:1.25}
.home .venue-film-copy p{max-width:34ch;font-size:1.05rem;line-height:1.8}
.home .venue-film [data-player-slot="venue"]{width:min(100%,360px,calc((100svh - 160px) * .562637363));max-width:100%;aspect-ratio:256/455;justify-self:center;align-self:center;border-radius:12px;background:#10151c}
.home [data-player-slot="venue"] .local-media-button{display:block;width:100%;height:auto;min-height:0;max-height:none;aspect-ratio:256/455;border-radius:12px;overflow:hidden}
.home [data-player-slot="venue"] .local-media-button[hidden]{display:none!important}
.home [data-player-slot="venue"] .local-media-button>img{position:static;display:block;width:100%;height:auto;max-height:none;aspect-ratio:256/455;object-fit:contain;object-position:center;transform:none;border-radius:0}
.home [data-player-slot="venue"] .local-video-player{display:block;width:100%;height:auto;min-height:0;max-height:none;aspect-ratio:256/455;object-fit:contain;object-position:center;transform:none;border-radius:0}
@media(max-width:760px){.home .venue-film{grid-template-columns:minmax(0,1fr);gap:20px;padding:20px 16px}.home .venue-film-copy p{max-width:none}.home .venue-film [data-player-slot="venue"]{width:min(100%,320px,calc((100svh - 160px) * .562637363))}}

/* An authentic training moment beside the benefits, without numbered steps. */
.ninja-page .growth-story{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.2fr);gap:clamp(24px,4vw,52px);align-items:stretch;margin-block:32px}
.ninja-page .growth-photo{margin:0;min-width:0;position:relative;border-radius:32px 32px 100px 32px;overflow:hidden;background:#243342}
.ninja-page .growth-photo img{display:block;width:100%;height:100%;min-height:380px;object-fit:cover;object-position:center}
.ninja-page .growth-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 28px;margin:0;align-content:center}
.ninja-page .growth-grid article{padding:8px 0 18px;border:0;border-bottom:1px solid #8295a644;border-radius:0;background:transparent!important;box-shadow:none}
.ninja-page .growth-grid article>.growth-icon{display:grid;place-items:center;width:48px;height:48px;margin-bottom:14px;border-radius:16px;background:#76bce81c;color:#9dd7fa}
.ninja-page .growth-icon svg{width:28px;height:28px}
.ninja-page .growth-grid h3{font-size:clamp(1.2rem,1.8vw,1.5rem);margin:0 0 8px}
.ninja-page .growth-grid p{margin:0;line-height:1.85}
@media(max-width:1000px){.ninja-page .growth-story{grid-template-columns:minmax(0,1fr)}.ninja-page .growth-photo{max-height:360px}.ninja-page .growth-photo img{height:360px;min-height:0;object-position:center 40%}}
@media(max-width:540px){.ninja-page .growth-story{gap:24px;margin-block:24px}.ninja-page .growth-photo{border-radius:24px 24px 64px 24px}.ninja-page .growth-photo img{height:240px}.ninja-page .growth-grid{grid-template-columns:minmax(0,1fr);gap:18px}.ninja-page .growth-grid article{display:grid;grid-template-columns:44px minmax(0,1fr);column-gap:14px;padding:0 0 18px}.ninja-page .growth-grid article>.growth-icon{grid-row:1/3;width:44px;height:44px;margin:0}.ninja-page .growth-grid p{grid-column:2}.ninja-page .growth-grid h3{align-self:center}}

/* Dark-page exceptions to the shared light footer and form note styles. */
.ninja-page .zoho-inquiry p,.ninja-page .zoho-inquiry .small{color:#e7eef5}
.ninja-page .zoho-inquiry>a{color:#a5ddff}
.ninja-page .footer-top h2{color:#f7f9fc}
.ninja-page .footer-top p,.ninja-page .footer-grid p,.ninja-page .copyright{color:#e7eef5}
.ninja-page .footer-grid h3{color:#f7f9fc}
.ninja-page .footer-grid a,.ninja-page footer .text-button{color:#cce9fa}
