.ninja-queue-entry{width:min(100% - 40px,680px);margin:clamp(32px,7vw,88px) auto;padding:clamp(24px,4vw,48px);border-radius:30px;background:var(--color-cream,#fff8ed);color:var(--color-ink,#282321);box-sizing:border-box;overflow-wrap:anywhere}
.ninja-queue-entry h1{font-size:clamp(1.8rem,4vw,2.8rem);line-height:1.15;margin:12px 0 24px}
.ninja-queue-entry p{line-height:1.6}
.ninja-queue-entry form{display:grid;gap:12px;margin:28px 0}
.ninja-queue-entry label{font-weight:700}
.ninja-queue-entry input:not([type=hidden]){width:100%;min-width:0;box-sizing:border-box;min-height:48px;border:2px solid #8c857e;border-radius:10px;background:#fff;color:#282321;padding:12px;font:inherit;font-size:16px}
.ninja-queue-entry button{white-space:normal;min-height:48px;border:0;border-radius:12px;padding:14px 20px;background:#a61620;color:#fff;font:inherit;font-weight:700;cursor:pointer}
.ninja-earlybird-flow .ninja-queue-entry button.button.button--primary:not(:disabled){background:var(--color-red,#bf1e2d);border-color:var(--color-red,#bf1e2d);color:#fff}
.ninja-earlybird-flow .ninja-queue-entry button.button.button--primary:not(:disabled):is(:hover,:focus-visible){background:var(--color-red-dark,#981725);border-color:var(--color-red-dark,#981725);color:#fff}
.ninja-earlybird-flow .ninja-queue-entry button.button.button--primary:disabled{background:#e9e6ed;border-color:#e9e6ed;color:#59565e;box-shadow:none;cursor:not-allowed}
.ninja-queue-entry :is(input,button,a):focus-visible{outline:3px solid #135bb5;outline-offset:4px}
.ninja-queue-entry__note{font-size:.9rem;margin-top:24px}
.ninja-queue-entry__error{border-left:4px solid #a61620;padding:12px;background:#fff;color:#8d111b}
.ninja-queue-entry [aria-invalid=true]{border-color:#a61620}
.ninja-queue-entry h2{font-size:clamp(1.6rem,3vw,2.2rem);line-height:1.2;margin:12px 0 24px}
.ninja-queue-preview{width:min(100% - 40px,1120px);margin:clamp(32px,6vw,72px) auto;color:var(--color-ink,#282321);overflow-wrap:anywhere}
.ninja-queue-preview h1{font-size:clamp(1.9rem,4vw,2.8rem);line-height:1.15;margin:12px 0 24px}
.ninja-queue-preview>p{max-width:800px;line-height:1.6}
.ninja-queue-preview__filter{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:28px 0}
.ninja-queue-preview__filter label{font-weight:700}
.ninja-queue-preview select{max-width:100%;min-height:48px;min-width:180px;padding:10px 16px;border:2px solid #8c857e;border-radius:10px;background:#fff;color:#282321;font:inherit}
.ninja-queue-preview__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.ninja-queue-preview__course{display:flex;flex-direction:column;min-width:0;padding:24px;border:1px solid #e8d5bc;border-radius:24px;background:#fff}
.ninja-queue-preview__course h2{font-size:1.4rem;line-height:1.25;margin:8px 0 16px}
.ninja-queue-preview__course p{line-height:1.6}
.ninja-queue-preview__capacity{background:var(--color-cream,#fff8ed);padding:14px;border-radius:12px;margin-top:auto}
.ninja-queue-preview .button{white-space:normal;text-align:center;min-height:48px;padding:12px 18px}
.ninja-queue-preview :is(a,button,select):focus-visible{outline:3px solid #135bb5;outline-offset:4px}
@media(max-width:1024px){.ninja-queue-preview__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.ninja-queue-preview__grid{grid-template-columns:minmax(0,1fr)}.ninja-queue-preview__filter{align-items:stretch;flex-direction:column}.ninja-queue-preview__course{padding:22px}}

/* Public email entrance: reuses the approved family-flow shell. */
.ninja-public-entry .entry-back{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:14px;margin-bottom:24px}
.ninja-public-entry .entry-layout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);gap:80px;align-items:center;min-height:540px}
.ninja-public-entry .entry-hero h1{max-width:12ch}.ninja-public-entry .entry-hero>p:not(.eyebrow){max-width:48ch;margin-top:24px;font-size:18px}
.ninja-public-entry .entry-steps{list-style:none;padding:0;display:grid;gap:18px;margin-top:32px}
.ninja-public-entry .entry-steps li{display:flex;align-items:center;gap:16px;line-height:1.5}
.ninja-public-entry .entry-steps span{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border-radius:50%;background:#fff;color:var(--color-red-dark);font:600 15px/1 var(--font-display)}
.ninja-public-entry .entry-card{border:0;box-shadow:none;border-radius:30px;background:#fff;padding:40px;margin:0}
.ninja-public-entry .entry-card h2{font-size:30px;font-weight:400;margin-bottom:14px}
.ninja-public-entry .entry-card>p{margin-bottom:26px;color:var(--color-ink-soft)}
.ninja-public-entry .entry-form{display:grid;gap:10px}.ninja-public-entry .entry-form label{font-size:15px;font-weight:700}
.ninja-public-entry .entry-help{font-size:14px;color:var(--color-ink-soft);margin:0}
.ninja-public-entry .entry-form .button{width:100%;justify-content:space-between;gap:14px;margin-top:14px;font-family:var(--font-display);font-size:15px;font-weight:600;border-radius:30px}
.ninja-public-entry .entry-privacy{font-size:14px;line-height:1.65;color:var(--color-ink-soft);margin-top:22px!important;margin-bottom:0!important}
.ninja-public-entry .entry-existing{font-size:14px;color:var(--color-ink-soft);margin-top:24px!important;margin-bottom:0!important;padding-top:22px;border-top:1px solid #eee8df}
.ninja-public-entry .ninja-checkout-header__secure svg{width:18px;height:18px;flex:none}.ninja-public-entry .ninja-checkout-footer strong{font-weight:700}
@media(max-width:1050px){.ninja-public-entry .entry-layout{gap:40px}.ninja-public-entry .entry-card{padding:32px}.ninja-public-entry .entry-hero h1{font-size:48px}.ninja-public-entry .entry-form .button{font-size:14px}}
@media(max-width:800px){.ninja-public-entry .entry-layout{grid-template-columns:minmax(0,1fr);gap:36px;min-height:0}.ninja-public-entry .entry-hero h1{max-width:17ch}.ninja-public-entry .entry-hero>p:not(.eyebrow){max-width:52ch}.ninja-public-entry .entry-card{max-width:640px;width:100%}.ninja-public-entry .entry-steps{gap:14px;margin-top:24px}}
@media(max-width:560px){.ninja-public-entry .design-content{padding:24px 20px 44px}.ninja-public-entry .entry-back{margin-bottom:22px}.ninja-public-entry .entry-layout{gap:30px}.ninja-public-entry .entry-hero h1{font-size:40px;max-width:13ch}.ninja-public-entry .entry-hero>p:not(.eyebrow){font-size:16px;margin-top:20px}.ninja-public-entry .entry-steps{font-size:15px;gap:14px}.ninja-public-entry .entry-steps li{gap:12px}.ninja-public-entry .entry-card{padding:28px 26px}.ninja-public-entry .entry-card h2{font-size:27px}.ninja-public-entry .entry-form .button{padding:16px 18px;font-size:14px}.ninja-public-entry .entry-privacy,.ninja-public-entry .entry-existing,.ninja-public-entry .entry-help{font-size:13px}}

.ninja-earlybird-flow .ninja-public-entry{width:100%;max-width:none;margin:0;padding:0;background:transparent;border:0;border-radius:30px}
.ninja-earlybird-flow .ninja-public-entry h1{font-size:clamp(36px,4.7vw,64px);line-height:1.12;letter-spacing:-.045em;font-weight:400;margin:0}
.ninja-earlybird-flow .ninja-public-entry .entry-hero>p.eyebrow{color:#d19333;font:400 14px/1.4 Poppins,sans-serif;letter-spacing:.16em;margin:0 0 16px}
.ninja-earlybird-flow .ninja-public-entry .entry-card>h2{line-height:1.22;letter-spacing:-.035em;margin:0 0 14px}
.ninja-earlybird-flow .ninja-public-entry .entry-form{margin:0;gap:10px}
.ninja-earlybird-flow .ninja-public-entry input:not([type=hidden]){min-height:52px;border:1px solid #d4ccbf;border-radius:30px;padding:14px 18px}
.ninja-earlybird-flow .ninja-public-entry .entry-help{margin:0}
.ninja-earlybird-flow .ninja-public-entry .entry-form .button{border-radius:30px;font:600 15px/1.3 Poppins,sans-serif;min-height:52px;padding:16px 25px}
.ninja-earlybird-flow .ninja-public-entry .ninja-queue-entry__error{border:0;border-radius:30px;background:#fbedeb;color:#981725;padding:16px}
.ninja-earlybird-flow .ninja-public-entry input[aria-invalid=true]{border-color:#bf1e2d}
.ninja-public-entry .entry-hero>.button{margin-top:24px}
@media(max-width:1050px){.ninja-earlybird-flow .ninja-public-entry h1{font-size:48px}}
@media(max-width:560px){.ninja-earlybird-flow .ninja-public-entry h1{font-size:40px}.ninja-earlybird-flow .ninja-public-entry .entry-form .button{padding:16px 18px;font-size:14px}}

/* Personal waitlist offer: the same approved family shell and entrance layout. */
.ninja-waitlist-flow #ninja-startweken{display:none}
.ninja-waitlist-flow .ninja-waitlist-entry .entry-layout{min-height:480px}
.ninja-waitlist-flow .ninja-waitlist-entry .entry-hero h1{max-width:14ch}
.ninja-waitlist-flow .ninja-waitlist-entry .entry-card .entry-help{margin:20px 0 0}
.ninja-waitlist-flow .ninja-waitlist-entry .entry-card>.button{width:100%;margin-top:4px;white-space:normal;text-align:center;box-shadow:none}
.ninja-waitlist-flow .ninja-waitlist-entry .entry-form .button{box-shadow:none;justify-content:center}
@media(max-width:800px){.ninja-waitlist-flow .ninja-waitlist-entry .entry-layout{min-height:0}}

/* The standalone waitlist confirmation supplies its own approved header. */
body.ninja-waitlist-flow #ninja-native-header{display:none!important}
