/* =====================================================================
   UNDERDOGS — luxury black design layer
   Fonts: display = Anton (Latin) + Heebo Black (Hebrew); text = Inter + Heebo.
   To use a licensed font (e.g. Almoni Tzar / Ploni), add @font-face and
   change --lx-display / --lx-text below. Nothing else needs to change.
   ===================================================================== */
:root{
  --lx-display:"Anton","Heebo",system-ui,sans-serif;
  --lx-text:"Inter","Heebo",system-ui,-apple-system,"Segoe UI",sans-serif;
  --lx-bg:#000;--lx-1:#0b0b0b;--lx-2:#121212;--lx-3:#1a1a1a;--lx-line:#242424;
  --lx-ink:#fff;--lx-mute:#a3a3a3;--lx-mute2:#6f6f6f;--lx-gold:#c9a54f;
  color-scheme:dark;
}
html{background:var(--lx-bg)}
body{background:var(--lx-bg)!important;color:var(--lx-ink);font-family:var(--lx-text)!important;font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-synthesis:none;text-rendering:optimizeLegibility}
::selection{background:#fff;color:#000}

/* ---------- type ---------- */
h1,h2{font-family:var(--lx-display)!important;font-weight:900!important;text-transform:uppercase;letter-spacing:-.02em!important;line-height:.92!important}
h3,h4{font-family:var(--lx-text)!important;font-weight:600!important;letter-spacing:-.015em!important}
.silver,.metal{background:none!important;-webkit-background-clip:border-box!important;background-clip:border-box!important;color:#fff!important;-webkit-text-fill-color:#fff}
.eyebrow,.c-eye,.sp-eye,.kg-eyebrow,.tt-sub,.sd-n,.wg-n{font-family:var(--lx-text)!important;font-weight:500!important;font-size:12px!important;letter-spacing:.18em!important;text-transform:uppercase;color:var(--lx-mute)!important}
p{color:inherit}
.sec-head p,.lead,.note,.rank-note,.wr-note,.sp-note,.tt-note{color:var(--lx-mute)!important}
a{text-underline-offset:4px}

/* ---------- buttons ---------- */
.btn,.c-btn,.ud-cta,.kg-cta,.ph-link{font-family:var(--lx-text)!important;font-weight:500!important;font-size:16px!important;letter-spacing:0!important;border-radius:999px!important;background:#fff!important;color:#000!important;box-shadow:none!important;border:0!important;padding:12px 26px!important;filter:none!important;transition:background .2s,color .2s,opacity .2s}
.btn:hover,.c-btn:hover,.ud-cta:hover,.kg-cta:hover{opacity:.82;transform:none!important}
.btn.ghost,.ph-link{background:transparent!important;color:#fff!important;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.55)!important}
.btn.ghost:hover,.ph-link:hover{box-shadow:inset 0 0 0 1.5px #fff!important;opacity:1}
.btn svg{width:18px;height:18px}

/* ---------- header ---------- */
header.top{background:rgba(0,0,0,.86)!important;backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid #161616!important;box-shadow:none!important}
.top .wrap{padding-block:12px!important}
nav ul{gap:28px!important}
nav a{font-family:var(--lx-text)!important;font-weight:500!important;font-size:15px!important;color:#fff!important;text-decoration:none;position:relative}
nav a::after{content:"";position:absolute;inset-inline:0;bottom:-6px;height:2px;background:#fff;transform:scaleX(0);transition:transform .25s}
nav a:hover::after{transform:scaleX(1)}
.top .btn{padding:9px 20px!important;font-size:15px!important}
.logo,.brand{color:#fff!important}
.ud-burger,.ud-close{border-color:#2a2a2a!important;border-radius:999px!important}
.ud-burger span,.ud-close span{background:#fff!important}
.back{color:var(--lx-mute)!important}

/* ---------- sections & surfaces ---------- */
section{padding-block:clamp(72px,10vw,128px)}
.alt,.bjj,.pricing,.contact,.c-body,.sp-faq,.ph,.hero,.sport-hero{background:var(--lx-bg)!important;border-color:var(--lx-line)!important}
.alt,.sp-faq,.c-body{background:var(--lx-1)!important}
.prog,.why,.plan,.feature,.age,.gear,.styles div,.creds div,.c-creds div,.kfam,.stripes-demo,.dcard,.sc,.tl li,.cmp-wrap,.kids,.wg-day,.c-disc,.ages,.values div{background:var(--lx-2)!important;border-color:var(--lx-line)!important;box-shadow:none!important}
.plan.best{background:#fff!important;color:#000!important}
.plan.best *{color:#000!important}
.plan.best .price b{color:#000!important}
.ptag{background:#000!important;color:#fff!important}
.ptabs{border-color:var(--lx-line)!important;border-radius:999px;overflow:hidden}
.ptabs button[aria-selected="true"]{background:#fff!important;color:#000!important}
.why-ic,.gi{background:#000!important;border-color:var(--lx-line)!important;border-radius:999px}
.prog .num,.why-n{font-family:var(--lx-display)!important;color:#fff!important;font-size:2rem!important;letter-spacing:0!important}
.facts b,.per b,.c-stats dt,.ud-stats dt,.price b{font-family:var(--lx-display)!important;font-weight:400!important;letter-spacing:.01em!important;color:#fff!important}
details{border-color:var(--lx-line)!important}
summary{font-family:var(--lx-text)!important;font-weight:600!important}
input,select,textarea{font-family:var(--lx-text)!important}
.leadform{background:var(--lx-2)!important;border:1px solid var(--lx-line)!important;border-radius:0!important}
.leadform input,.leadform select,.leadform textarea{background:#000!important;border:1px solid #2c2c2c!important;color:#fff!important;border-radius:0!important}

/* ---------- photo hero (home) ---------- */
.lx-hero{position:relative;min-height:min(92vh,900px);display:grid;align-items:end;padding:0!important;overflow:hidden;background:#000!important}
.lx-hero > img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 35%;transform:scale(1.04);animation:lxzoom 14s ease-out forwards}
.lx-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.25) 0%,rgba(0,0,0,.15) 35%,rgba(0,0,0,.78) 78%,#000 100%)}
.lx-in{position:relative;padding-block:120px 56px;display:grid;gap:18px;justify-items:start}
.lx-kicker{font-family:var(--lx-text);font-weight:500;font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.8);display:flex;align-items:center;gap:10px}
.lx-kicker i{width:7px;height:7px;border-radius:50%;background:#fff}
.lx-h1{font-family:"Anton",sans-serif!important;font-weight:400!important;font-size:clamp(4.6rem,15vw,15rem)!important;line-height:.82!important;letter-spacing:-.01em!important;margin:0;direction:ltr}
.lx-sub{font-size:clamp(1.05rem,1.6vw,1.3rem);max-width:46ch;color:rgba(255,255,255,.86)}
.lx-ctas{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}
.lx-hero .ud-stats{border-color:rgba(255,255,255,.18)!important;width:100%;margin-top:28px}
.lx-hero .ud-stats div{border-color:rgba(255,255,255,.18)!important}
.lx-hero .ud-stats dd{color:rgba(255,255,255,.7)!important}
@keyframes lxzoom{to{transform:scale(1)}}
@media (prefers-reduced-motion:reduce){.lx-hero > img{animation:none;transform:none}}

/* ---------- statement + feature grid (home) ---------- */
.lx-statement{text-align:center;padding-block:clamp(80px,11vw,140px) clamp(40px,5vw,64px)!important}
.lx-statement h2{font-size:clamp(3rem,9vw,7.5rem)!important;margin:0 auto 18px;max-width:14ch}
.lx-statement p{color:var(--lx-mute);font-size:1.15rem;margin:0 auto 26px;max-width:52ch}
.lx-statement .lx-ctas{justify-content:center}
.lx-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:0 12px clamp(80px,10vw,128px)}
.lx-card{position:relative;display:block;aspect-ratio:4/5;overflow:hidden;color:#fff;text-decoration:none;background:#111}
.lx-card img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.lx-card:hover img{transform:scale(1.04)}
.lx-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.75))}
.lx-card-in{position:absolute;inset-inline:0;bottom:0;padding:32px;z-index:1;display:grid;gap:12px;justify-items:start}
.lx-card-in small{font-size:13px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.8)}
.lx-card-in b{font-family:var(--lx-display);font-weight:900;font-size:clamp(2rem,4vw,3.4rem);line-height:.92;text-transform:uppercase;letter-spacing:-.02em}
.lx-card-in span.btn{pointer-events:none}
@media (max-width:760px){.lx-grid{grid-template-columns:1fr;padding-inline:0}.lx-card{aspect-ratio:4/4.6}.lx-card-in{padding:22px}}

/* ---------- footer & menu ---------- */
.ud-foot{background:#000!important;border-top:1px solid var(--lx-line)!important}
.ud-flogo,.ud-menu-brand{color:#fff!important}
.ud-fcol h4{font-family:var(--lx-text)!important;font-weight:600!important;color:#fff!important}
.ud-menu{background:#000!important}
.ud-menu-list a{font-family:var(--lx-display)!important;font-weight:900!important;text-transform:uppercase;font-size:clamp(2rem,7vw,3.4rem)!important;letter-spacing:-.02em!important;line-height:1!important;padding:12px 0!important}
.ud-menu-list a i{font-family:var(--lx-text)!important;font-size:12px!important;color:#6f6f6f!important;align-self:center}

/* ---------- marquee ---------- */
.ud-marq{background:#000!important;border-color:var(--lx-line)!important}
.ud-marq span{font-family:var(--lx-text)!important;color:var(--lx-mute)!important;border-color:var(--lx-line)!important}
.ud-marq b,.ud-marq time{color:#fff!important}

/* ---------- belt stripe accent ---------- */
.belt{height:3px!important}

/* ---------- reveal on scroll ---------- */
.lx-reveal{opacity:0;transform:translateY(28px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1)}
.lx-reveal.lx-in-view{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.lx-reveal{opacity:1;transform:none;transition:none}}

/* =====================================================================
   KIDS PAGE — black luxury with gold
   ===================================================================== */
body.pg-kids{--bg:#000;--paper:#121212;--ink:#fff;--muted:#a3a3a3;--line:#262626;--navy:#121212;
  --ud-bg:#000;--ud-panel:#000;--ud-ink:#fff;--ud-muted:#a3a3a3;--ud-line:#262626;--ud-acc:#d9bd72;--ud-num:#8a7a52;
  --red-t:rgba(224,65,59,.16);--yellow-t:rgba(242,181,29,.16);--blue-t:rgba(44,99,201,.2)}
.pg-kids .hero{background:radial-gradient(60% 70% at 85% 0%,rgba(217,189,114,.16),transparent 62%),radial-gradient(45% 60% at 8% 95%,rgba(44,99,201,.14),transparent 62%),#000!important}
.pg-kids .hero .lead,.pg-kids .kg-lead{color:#bdbdbd!important}
.pg-kids .art .b1{background:rgba(224,65,59,.28)}.pg-kids .art .b2{background:rgba(44,99,201,.3)}
.pg-kids .chip{background:#121212!important;color:#fff!important;box-shadow:none!important;border:1px solid #262626!important}
.pg-kids section{background:#000}
.pg-kids .belts-sec,.pg-kids .first-sec,.pg-kids #groups{background:#0b0b0b!important}
.pg-kids .kg-h2{color:#fff!important}
.pg-kids .kg-eyebrow{color:#d9bd72!important}
.pg-kids .kg-note{color:#8f8f8f!important}
.pg-kids .kg-dark{background:#121212;outline:1px solid #262626;outline-offset:-1px}
.pg-kids .bcard{background:#121212!important;border-top:3px solid var(--bc,#d9bd72)}
.pg-kids .bcard:nth-child(1){--bc:#ecebe6}.pg-kids .bcard:nth-child(2){--bc:#8f9399}.pg-kids .bcard:nth-child(3){--bc:#f0c020}.pg-kids .bcard:nth-child(4){--bc:#ec7f1f}.pg-kids .bcard:nth-child(5){--bc:#2f9a56}
.pg-kids .bcard::before{background:#000!important;color:#fff!important}
.pg-kids .bcard .age{background:#000!important;color:#fff!important}
.pg-kids .bcard small{color:#a3a3a3!important}
.pg-kids .stripe-box{background:#121212!important;border-color:#262626!important;box-shadow:none!important}
.pg-kids .stripe-box p{color:#bdbdbd!important}
.pg-kids .gain{background:#121212!important;box-shadow:none!important}
.pg-kids .gain p,.pg-kids .steps small{color:#a3a3a3!important}
.pg-kids .steps div{background:#121212!important}
.pg-kids details{background:#121212!important;box-shadow:none!important}
.pg-kids details p{color:#a3a3a3!important}
.pg-kids summary::after{background:#1f1f1f!important;color:#d9bd72!important}
.pg-kids .first-photo{border-color:#121212!important}
.pg-kids .note,.pg-kids .sec-head p{color:#a3a3a3!important}
.pg-kids .btn{background:linear-gradient(180deg,#e6c977,#b48d33)!important;color:#1a1306!important}
.pg-kids .btn.ghost{background:transparent!important;color:#e6c977!important;box-shadow:inset 0 0 0 1.5px rgba(230,201,119,.7)!important}
.pg-kids .kg-dark .kg-cta{background:#fff!important;color:#111!important}
.pg-kids .kg-light .kg-cta{background:#111!important;color:#fff!important}
.pg-kids .ud-cta{background:linear-gradient(180deg,#e6c977,#b48d33)!important;color:#1a1306!important}

/* ---------- kids contact: luminous white-gold, shimmering, persuasive ---------- */
.pg-kids .contact{position:relative;overflow:hidden;isolation:isolate}
.pg-kids .contact::before{content:"";position:absolute;inset:-40% -60%;z-index:-1;pointer-events:none;
  background:linear-gradient(115deg,transparent 40%,rgba(255,150,175,.28) 46%,rgba(255,255,255,.75) 50%,rgba(120,170,255,.28) 54%,transparent 60%);
  background-size:220% 100%;background-position:120% 0}
.pg-kids .contact h2{background-image:linear-gradient(115deg,transparent 0%,transparent 38%,rgba(255,150,175,.95) 45%,#fff 50%,rgba(120,170,255,.95) 55%,transparent 62%,transparent 100%),linear-gradient(180deg,#d6b768 0%,#b08a33 55%,#cdaa55 75%,#957320 100%)!important;background-size:300% 100%,100% 100%!important;background-position:100% 0,0 0!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;-webkit-text-fill-color:transparent!important;font-size:clamp(2.6rem,6vw,4.4rem)!important}
.pg-kids .contact .btn,.pg-kids .leadform .btn{position:relative;overflow:hidden}
.pg-kids .contact .btn::after,.pg-kids .leadform .btn::after{content:"";position:absolute;top:0;bottom:0;width:45%;left:-60%;background:linear-gradient(105deg,transparent,rgba(255,255,255,.75),transparent);transform:skewX(-18deg)}
@media (prefers-reduced-motion:no-preference){
  .pg-kids .contact::before{animation:kgsheen 5.5s ease-in-out infinite}
  .pg-kids .contact h2{animation:kshine 2.8s ease-in-out infinite}
  .pg-kids .contact .btn::after,.pg-kids .leadform .btn::after{animation:btnsheen 3.2s ease-in-out infinite}
}
@keyframes kgsheen{0%{background-position:130% 0}55%,100%{background-position:-30% 0}}
@keyframes btnsheen{0%{left:-60%}55%,100%{left:130%}}
.kc-promise{display:grid;gap:10px;margin:4px 0 6px;padding:0;list-style:none}
.kc-promise li{display:flex;align-items:center;gap:10px;font-weight:600;color:#6b5420}
.kc-promise li::before{content:"";width:20px;height:20px;flex:none;border-radius:50%;background:linear-gradient(180deg,#e6c977,#b48d33) center/100% no-repeat;-webkit-mask:radial-gradient(circle,#000 0 100%);box-shadow:inset 0 0 0 5px rgba(255,255,255,.0)}
.kc-promise li::after{content:"";order:-1}
.kc-lead{font-size:1.15rem;color:#5a4612;max-width:40ch;font-weight:500}
.kc-trust{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:6px;font-size:.88rem;color:#8a6a1e;letter-spacing:.02em}
.kc-trust span{display:inline-flex;align-items:center;gap:8px}
.kc-trust span::before{content:"";width:5px;height:5px;border-radius:50%;background:#b48d33}
.pg-kids .leadform{background:#fff!important;border:1px solid #efe4cb!important;border-radius:22px!important;box-shadow:0 40px 80px -40px rgba(140,110,40,.55),0 0 0 6px rgba(255,255,255,.35)!important}
.pg-kids .leadform input,.pg-kids .leadform select,.pg-kids .leadform textarea{background:#faf4ea!important;border:1px solid #eadfc4!important;color:#2a1f05!important;border-radius:12px!important}
.pg-kids .leadform .btn{background:linear-gradient(180deg,#d8b65e,#b48d33)!important;color:#fff!important;font-weight:700!important;padding:15px 26px!important}
.pg-kids .contact .btn.ghost{color:#8a6a1e!important;box-shadow:inset 0 0 0 1.5px #c9a54f!important}
.pg-kids .contact .eyebrow{color:#8a6a1e!important}
.pg-kids .contact{background:radial-gradient(55% 75% at 88% 0%,rgba(255,255,255,.95),transparent 65%),radial-gradient(45% 65% at 6% 100%,rgba(214,196,150,.5),transparent 70%),linear-gradient(135deg,#fbf8f0 0%,#eee6d3 55%,#e2d7bd 100%)!important;color:#a8842c}
.pg-kids .contact .where{color:#8a6a1e!important}
.pg-kids .contact .mail a{color:#8a6a1e!important}
.pg-kids .demo .bar{background:#000!important;box-shadow:0 0 0 1px #333}

/* =====================================================================
   ONE TYPE SYSTEM (from the timetable page): Heebo 900 titles + IBM Plex Mono labels
   ===================================================================== */
:root{--lx-display:"Heebo",system-ui,sans-serif;--lx-mono:"IBM Plex Mono",ui-monospace,monospace}
h1,h2,.lx-h1,.cx-title,.cx-title span,.cx-h2,.cx-cta-h,.kg-h2,.ph-title,.lx-statement h2,.lx-card-in b,.ud-menu-list a,.sd-h h2,.c-head h1{font-family:"Heebo",system-ui,sans-serif!important;font-weight:900!important;letter-spacing:-.04em!important;line-height:.88!important;text-transform:none}
.lx-h1,.cx-title span:last-child{letter-spacing:-.05em!important}
.cx-title span:first-child{-webkit-text-stroke:2px rgba(255,255,255,.9)}
.cx-marq-t,.cx-bgword,.cx-num,.prog .num,.why-n,.facts b,.per b,.c-stats dt,.ud-stats dt,.price b{font-family:"Heebo",system-ui,sans-serif!important;font-weight:900!important;letter-spacing:-.03em!important}
.eyebrow,.c-eye,.sp-eye,.kg-eyebrow,.cx-eye,.cx-en,.cx-soon,.cx-pill,.lx-kicker,.lx-card-in small,.tt-sub,.sd-n,.wg-n,.ph-eyebrow,.kg-label,.ud-fsub,.c-crumb,.tag,.range,.en,.pbadge,.ptabs small{font-family:"IBM Plex Mono",ui-monospace,monospace!important;font-weight:400!important;letter-spacing:.22em!important;text-transform:uppercase}
.cx-title span:last-child{font-size:clamp(3rem,7vw,7.2rem)!important}@media (max-width:900px){.cx-title span:last-child{font-size:clamp(2.6rem,14vw,7rem)!important}}
.ph-name{font-family:"Heebo",system-ui,sans-serif!important;font-weight:900!important;font-size:clamp(46px,8vw,120px)!important;line-height:.86!important;letter-spacing:-.04em!important;color:#fff!important;-webkit-text-fill-color:#fff!important;background:none!important;margin:0}
.ph-name .ph-outline,.ph-outline{color:transparent!important;-webkit-text-fill-color:transparent!important;-webkit-text-stroke:2px #fff}
#coach .ph-name{font-size:clamp(46px,7vw,104px)!important}
.pg-kids .hero h1 .u::after{display:none!important}
.lx-hero .ud-emblem{position:relative!important;inset:auto!important;transform:none!important;--s:clamp(130px,15vw,220px)!important;margin-bottom:4px}
.lx-h1{font-size:clamp(3rem,14.2vw,10.5rem)!important;max-width:100%}
.lx-kicker{letter-spacing:.06em!important}

/* ===== menu hover: gold with pink/blue flash (like the kids page) ===== */
.ud-menu-list a span,nav a{transition:color .2s}
.ud-menu-list a:hover span,.ud-menu-list a:focus-visible span,nav a:hover,nav a:focus-visible{
  background-image:linear-gradient(115deg,transparent 0%,transparent 36%,rgba(255,150,175,.95) 44%,#fff 50%,rgba(120,170,255,.95) 56%,transparent 64%,transparent 100%),linear-gradient(180deg,#f1d98f 0%,#d6b768 45%,#b08a33 75%,#e6c977 100%);
  background-size:300% 100%,100% 100%;background-position:100% 0,0 0;-webkit-background-clip:text;background-clip:text;color:transparent!important;-webkit-text-fill-color:transparent}
@media (prefers-reduced-motion:no-preference){.ud-menu-list a:hover span,.ud-menu-list a:focus-visible span,nav a:hover,nav a:focus-visible{animation:udmshine 1.4s ease-in-out infinite}}
@keyframes udmshine{0%{background-position:100% 0,0 0}60%,100%{background-position:-30% 0,0 0}}
.ud-menu-list a:hover i{color:#d9bd72!important}
.ud-menu-list a{border-color:#1d1d1d!important;transition:padding .3s}
.ud-menu-list a:hover{padding-inline-start:10px!important}
nav a::after{background:linear-gradient(90deg,#f1d98f,#ff96af,#78aaff,#f1d98f)!important}
.ud-menu-foot .ud-cta,.ud-fbrand .ud-cta{position:relative;overflow:hidden}
.ud-menu-foot .ud-cta::after,.ud-fbrand .ud-cta::after{content:"";position:absolute;top:0;bottom:0;width:40%;left:-60%;background:linear-gradient(105deg,transparent,rgba(255,255,255,.85),transparent);transform:skewX(-20deg)}
.ud-menu-foot .ud-cta:hover,.ud-fbrand .ud-cta:hover{background:linear-gradient(180deg,#f1d98f,#c9a54f 55%,#a8842c)!important;color:#1a1306!important;opacity:1}
@media (prefers-reduced-motion:no-preference){.ud-menu-foot .ud-cta:hover::after,.ud-fbrand .ud-cta:hover::after{animation:btnsheen 1.2s ease-in-out infinite}}
@keyframes btnsheen{0%{left:-60%}55%,100%{left:130%}}
.lx-kicker{font-family:"Frank Ruhl Libre","Heebo",serif!important;font-weight:500!important;font-size:clamp(1.05rem,1.6vw,1.3rem)!important;letter-spacing:.01em!important;text-transform:none!important;color:#f3ead2!important;gap:12px!important}
.lx-kicker i{width:22px!important;height:1px!important;border-radius:0!important;background:linear-gradient(90deg,transparent,#d9bd72)!important}
.lx-kicker{text-shadow:0 2px 12px rgba(0,0,0,.85)}

/* ===== menu hover: silver-white flash (replaces gold) ===== */
.ud-menu-list a:hover span,.ud-menu-list a:focus-visible span,nav a:hover,nav a:focus-visible{
  background-image:linear-gradient(115deg,transparent 0%,transparent 38%,rgba(255,255,255,.95) 46%,#fff 50%,rgba(255,255,255,.95) 54%,transparent 62%,transparent 100%),linear-gradient(180deg,#ffffff 0%,#d9dde2 48%,#ffffff 64%,#9aa1aa 100%)!important}
.ud-menu-list a:hover i{color:#e3e6ea!important}
nav a::after{background:linear-gradient(90deg,#9aa1aa,#fff,#9aa1aa)!important}
.ud-menu-foot .ud-cta:hover,.ud-fbrand .ud-cta:hover{background:linear-gradient(180deg,#ffffff,#d9dde2 60%,#aeb4bc)!important;color:#000!important}
.lx-kicker{font-family:"Inter","Heebo",system-ui,sans-serif!important;font-weight:500!important;font-size:clamp(1rem,1.4vw,1.15rem)!important;letter-spacing:0!important;color:rgba(255,255,255,.88)!important}

/* ===== home hero v3: no photo, big emblem, shimmering titles ===== */
.ud-spark{width:6px!important;height:6px!important;margin:-3px 0 0 -3px!important;background:radial-gradient(circle,#fff 0 .6px,transparent 1.2px),linear-gradient(90deg,transparent 45%,#fff 50%,transparent 55%),linear-gradient(0deg,transparent 45%,#fff 50%,transparent 55%)!important;filter:drop-shadow(0 0 1.5px #fff)!important}
.lx-hero{min-height:min(88vh,860px)!important;align-items:center!important;background:radial-gradient(ellipse 60% 70% at 25% 45%,#22262c 0%,#0b0c0e 55%,#000 100%)!important}
.lx-in{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);column-gap:40px;align-items:center;padding-block:120px 70px!important}
.lx-in > *{grid-column:1}
.lx-hero .ud-emblem{grid-column:2!important;grid-row:1 / span 6;align-self:center;justify-self:center;--s:min(34vw,440px)!important;margin:0!important}
.lx-h1{display:grid;gap:.12em;font-size:clamp(3rem,9.6vw,9.4rem)!important;justify-self:stretch;text-align:right}
.lx-shine{display:block;background-image:linear-gradient(115deg,transparent 0%,transparent 38%,rgba(255,255,255,.95) 47%,#fff 50%,rgba(255,255,255,.95) 53%,transparent 62%,transparent 100%),linear-gradient(180deg,#ffffff 0%,#e3e6ea 48%,#ffffff 62%,#c3c8cf 100%);background-size:300% 100%,100% 100%;background-position:100% 0,0 0;-webkit-background-clip:text;background-clip:text;color:transparent!important;-webkit-text-fill-color:transparent}
.lx-sub2{font-size:.235em;letter-spacing:.06em!important;line-height:1}
@media (prefers-reduced-motion:no-preference){.lx-shine{animation:tglint 2.8s ease-in-out infinite}.lx-sub2{animation-delay:.35s}}
@keyframes tglint{0%{background-position:100% 0,0 0}45%,100%{background-position:0% 0,0 0}}
.lx-hero .ud-stats{grid-column:1 / -1!important}
@media (max-width:860px){.lx-in{grid-template-columns:1fr;padding-block:40px 56px!important}.lx-hero .ud-emblem{grid-column:1!important;grid-row:auto;--s:min(62vw,280px)!important;order:-1}.lx-h1{font-size:clamp(3rem,16vw,6rem)!important}}
@media (min-width:861px){.lx-h1{font-size:clamp(3rem,6.9vw,7.4rem)!important}}
/* hero v4 */
.lx-h1,.lx-h1 .lx-shine{font-family:"Montserrat","Arial Black",Arial,sans-serif!important;font-weight:600!important;letter-spacing:.06em!important;line-height:1!important}
.lx-h1 .lx-sub2{letter-spacing:.32em!important;font-size:.2em}
@media (min-width:861px){.lx-h1{font-size:clamp(2.8rem,5.6vw,6rem)!important}}
@media (max-width:860px){.lx-h1{font-size:clamp(2.2rem,11.5vw,4.6rem)!important}}
.lx-hero .ud-emblem{align-self:start!important;margin-top:-40px!important}
@media (max-width:860px){.lx-hero .ud-emblem{margin-top:0!important}}
.ud-spark{width:4px!important;height:4px!important;margin:-2px 0 0 -2px!important;filter:drop-shadow(0 0 1px #fff)!important}
/* emblem v5: no outer sparkles, stronger inner glint, bigger on home */
.ud-spark{display:none!important}
.ud-emblem linearGradient stop:nth-child(1){stop-color:#ffffff}
.ud-emblem linearGradient stop:nth-child(2){stop-color:#b9bfc7}
.ud-emblem linearGradient stop:nth-child(3){stop-color:#f4f6f8}
.ud-emblem linearGradient stop:nth-child(4){stop-color:#7d848d}
.ud-emblem .glint{background-image:linear-gradient(115deg,transparent 0%,transparent 34%,rgba(255,255,255,.35) 42%,#fff 48%,#fff 52%,rgba(255,255,255,.35) 58%,transparent 66%,transparent 100%)!important;background-size:280% 100%!important;mix-blend-mode:normal!important;filter:drop-shadow(0 0 6px rgba(255,255,255,.9))}
.ud-emblem .glint.g2{background-image:linear-gradient(115deg,transparent 0%,transparent 47%,rgba(255,255,255,.95) 49.5%,rgba(255,255,255,.95) 50.5%,transparent 53%,transparent 100%)!important;background-size:280% 100%!important}
@media (prefers-reduced-motion:no-preference){
 .ud-emblem .glint{animation:udglint2 2.6s cubic-bezier(.45,0,.2,1) infinite!important}
 .ud-emblem .glint.g2{animation:udglint2 2.6s cubic-bezier(.45,0,.2,1) .18s infinite!important}}
@keyframes udglint2{0%{background-position:100% 0}50%,100%{background-position:0% 0}}
.lx-hero .ud-emblem{--s:min(40vw,520px)!important}
@media (max-width:860px){.lx-hero .ud-emblem{--s:min(72vw,320px)!important}}
@media (min-width:861px){.lx-in{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}}

.ud-emblem .glint{filter:none!important}
.ud-emblem linearGradient stop:nth-child(1){stop-color:#eef0f2}
.ud-emblem linearGradient stop:nth-child(2){stop-color:#9aa1aa}
.ud-emblem linearGradient stop:nth-child(3){stop-color:#d4d8dd}
.ud-emblem linearGradient stop:nth-child(4){stop-color:#626972}
/* schedule hero emblem: centered, larger, bright white */
.ph-row{align-items:center!important}
.ph-aside{justify-items:center!important;align-content:center;gap:14px!important}
.ph-aside .ud-emblem{--s:clamp(150px,15vw,210px)!important;margin:0 auto 6px!important;filter:drop-shadow(0 0 22px rgba(255,255,255,.18)) drop-shadow(0 12px 26px rgba(0,0,0,.6))}
.ph-aside .ud-emblem linearGradient stop{stop-color:#fff!important}
.ph-aside .ph-link{width:100%}
/* emblems: white */
.ud-emblem linearGradient stop{stop-color:#fff!important}
.ud-emblem linearGradient stop:nth-child(4){stop-color:#eceef1!important}
.ud-emblem{filter:drop-shadow(0 0 18px rgba(255,255,255,.14)) drop-shadow(0 12px 26px rgba(0,0,0,.6))}
/* slower glint sweep */
@media (prefers-reduced-motion:no-preference){
 .ud-emblem .glint{animation:udglint2 4.6s cubic-bezier(.45,0,.25,1) infinite!important}
 .ud-emblem .glint.g2{animation:udglint2 4.6s cubic-bezier(.45,0,.25,1) .3s infinite!important}}
@keyframes udglint2{0%{background-position:100% 0}65%,100%{background-position:0% 0}}
/* emblem = same colour as the UNDERDOGS title */
.ud-emblem linearGradient stop:nth-child(1){stop-color:#ffffff!important}
.ud-emblem linearGradient stop:nth-child(2){stop-color:#e3e6ea!important}
.ud-emblem linearGradient stop:nth-child(3){stop-color:#ffffff!important}
.ud-emblem linearGradient stop:nth-child(4){stop-color:#c3c8cf!important}
/* credential cards: original typography */
.creds .k,.c-creds .k{font-family:"Montserrat","Arial Black",Arial,sans-serif!important;font-weight:600!important;letter-spacing:.12em!important;font-size:1.05rem!important;color:#fff!important;text-transform:none}
.creds .k .jj{font-family:"Poppins","Montserrat",sans-serif!important;font-weight:600!important;letter-spacing:.12em!important}
.creds span:not(.k):not(.jj),.c-creds span{font-family:"Heebo",system-ui,sans-serif!important;font-weight:400;font-size:.97rem;color:#c7c9cd}
.creds b,.c-creds b{font-family:"Heebo",system-ui,sans-serif!important;font-weight:600;color:#fff}

/* =====================================================================
   KIDS PAGE v3 — one uniform light, playful background
   ===================================================================== */
body.pg-kids{--kbg:#eef5ff;--bg:#eef5ff;--paper:#fff;--ink:#1d2433;--muted:#5b6478;--line:#d8e3f3;
  --ud-bg:#eef5ff;--ud-panel:#eef5ff;--ud-ink:#1d2433;--ud-muted:#5b6478;--ud-line:#d8e3f3;--ud-acc:#a8842c;--ud-num:#9aa6bd;
  background:var(--kbg)!important;color:var(--ink)!important;color-scheme:light}
html:has(body.pg-kids){background:#eef5ff}
.pg-kids main,.pg-kids section,.pg-kids .hero,.pg-kids #groups,.pg-kids .belts-sec,.pg-kids .first-sec,.pg-kids .contact,.pg-kids footer,.pg-kids .ud-foot,.pg-kids .kg-sec{background:var(--kbg)!important;border-color:transparent!important}
.pg-kids .contact::before{display:none}
.pg-kids .kstrip{display:none}
.pg-kids header.top{background:rgba(238,245,255,.9)!important;border-bottom:1px solid #d8e3f3!important}
.pg-kids .brand span{color:#1d2433!important;text-shadow:none!important}
.pg-kids .back{color:#5b6478!important}
.pg-kids .ud-burger,.pg-kids .ud-close{border-color:#cfdbee!important}
.pg-kids .ud-burger span,.pg-kids .ud-close span{background:#1d2433!important}
.pg-kids .ud-menu{background:#eef5ff!important}
.pg-kids .ud-menu-list a{color:#1d2433!important;border-color:#d8e3f3!important}
.pg-kids .ud-menu-brand,.pg-kids .ud-flogo{color:#1d2433!important}
.pg-kids .ud-menu-mail,.pg-kids .ud-fmail{color:#1d2433!important}
.pg-kids .ud-fcol h4{color:#1d2433!important}
.pg-kids .ud-fcol a,.pg-kids .ud-flegal a,.pg-kids .ud-foot{color:#5b6478!important}
.pg-kids .ud-flegal{border-color:#d8e3f3!important}
/* text */
.pg-kids p,.pg-kids li,.pg-kids small{color:inherit}
.pg-kids .hero .lead,.pg-kids .kg-lead,.pg-kids .sec-head p,.pg-kids .note,.pg-kids .kg-note,.pg-kids .gain p,.pg-kids .steps small,.pg-kids details p,.pg-kids .bcard small,.pg-kids .stripe-box p{color:#5b6478!important}
.pg-kids .kg-h2{color:#1d2433!important}
.pg-kids .steps b{color:#a8842c!important}
/* cards: white on the light background */
.pg-kids .bcard,.pg-kids .gain,.pg-kids .steps div,.pg-kids details,.pg-kids .stripe-box,.pg-kids .kg-light{background:#fff!important;border-color:#e3ebf7!important;box-shadow:0 14px 34px -26px rgba(40,70,130,.45)!important;outline-color:#e3ebf7!important}
.pg-kids .bcard::before{background:#eef5ff!important;color:#1d2433!important}
.pg-kids .bcard .age{background:#eef5ff!important;color:#1d2433!important}
.pg-kids .chip{background:#fff!important;color:#1d2433!important;border-color:#e3ebf7!important;box-shadow:0 6px 16px -10px rgba(40,70,130,.4)!important}
.pg-kids summary::after{background:#eef5ff!important;color:#a8842c!important}
.pg-kids .demo .bar{box-shadow:none}
.pg-kids .bring{background:#fff!important;border-color:#e3ebf7!important;color:#1d2433!important}
.pg-kids .bring li{color:#4a5366!important}
.pg-kids .bring li::before{box-shadow:inset 0 0 0 5px #fff!important}
.pg-kids .first-photo{border-color:#fff!important}
.pg-kids .art .b1{background:#ffd9df!important}.pg-kids .art .b2{background:#d6e6ff!important}
/* contact on the same background */
.pg-kids .contact .where,.pg-kids .contact .mail a,.pg-kids .kc-lead{color:#4a5366!important}
.pg-kids .kc-promise li{color:#1d2433!important}
.pg-kids .contact .eyebrow{color:#a8842c!important}
.pg-kids .btn.ghost{color:#8a6a1e!important;box-shadow:inset 0 0 0 1.5px #c9a54f!important;background:#fff!important}
/* kids: both group cards white */
.pg-kids .kg-dark{background:#fff!important;color:#111!important;outline:1px solid #e3ebf7!important;outline-offset:-1px;box-shadow:0 14px 34px -26px rgba(40,70,130,.45)!important}
.pg-kids .kg-dark .kg-pts,.pg-kids .kg-dark .kg-pts li{border-color:rgba(0,0,0,.12)!important}
.pg-kids .kg-dark .kg-days li{background:rgba(0,0,0,.045)!important}
.pg-kids .kg-dark .kg-cta{background:#111!important;color:#fff!important}
.pg-kids .kg-dark .kg-name{color:#111!important}
/* kids: very soft white-pink background */
body.pg-kids{--kbg:#fff8fa;--bg:#fff8fa;--ud-bg:#fff8fa;--ud-panel:#fff8fa;--line:#f6e4ea;--ud-line:#f6e4ea}
html:has(body.pg-kids){background:#fff8fa}
.pg-kids header.top{background:rgba(255,248,250,.9)!important;border-bottom-color:#f6e4ea!important}
.pg-kids .ud-menu{background:#fff8fa!important}
.pg-kids .ud-menu-list a,.pg-kids .ud-flegal{border-color:#f6e4ea!important}
.pg-kids .bcard,.pg-kids .gain,.pg-kids .steps div,.pg-kids details,.pg-kids .stripe-box,.pg-kids .kg-light,.pg-kids .kg-dark,.pg-kids .bring,.pg-kids .chip{border-color:#f6e4ea!important;outline-color:#f6e4ea!important;box-shadow:0 14px 34px -26px rgba(150,70,100,.35)!important}
.pg-kids .bcard::before,.pg-kids .bcard .age,.pg-kids summary::after{background:#fff1f5!important}
.pg-kids .tagline{font-family:"Montserrat","Arial Black",Arial,sans-serif!important;font-weight:700!important;letter-spacing:.06em!important;text-transform:uppercase;font-size:.95rem!important}
/* kids menu hover: page palette (soft gold + pink/blue flash) */
.pg-kids .ud-menu-list a:hover span,.pg-kids .ud-menu-list a:focus-visible span,.pg-kids nav a:hover{
  background-image:linear-gradient(115deg,transparent 0%,transparent 36%,rgba(255,150,175,.95) 44%,#fff 50%,rgba(120,170,255,.95) 56%,transparent 64%,transparent 100%),linear-gradient(180deg,#dcc07a 0%,#b8923a 52%,#d6b768 72%,#9c7a26 100%)!important}
.pg-kids .ud-menu-list a:hover i{color:#e88aa3!important}
.pg-kids .ud-menu-foot .ud-cta:hover{background:linear-gradient(180deg,#e6c977,#b48d33)!important;color:#fff!important}
/* kids header brand in the page's palette */
.pg-kids .brand span{color:#1d2433!important;font-weight:700!important;letter-spacing:.03em!important}
.pg-kids .brand span em{background-image:linear-gradient(115deg,transparent 0%,transparent 38%,rgba(255,150,175,.95) 45%,#fff 50%,rgba(120,170,255,.95) 55%,transparent 62%,transparent 100%),linear-gradient(180deg,#dcc07a 0%,#b8923a 52%,#d6b768 72%,#9c7a26 100%);background-size:300% 100%,100% 100%;background-position:100% 0,0 0;-webkit-background-clip:text;background-clip:text;color:transparent!important;-webkit-text-fill-color:transparent}
@media (prefers-reduced-motion:no-preference){.pg-kids .brand span em{animation:kshine 2.8s ease-in-out infinite}}
@keyframes kshine{0%{background-position:100% 0,0 0}45%,100%{background-position:0% 0,0 0}}
/* home title: same type as every other page heading (Heebo Black) */
.lx-h1,.lx-h1 .lx-shine{font-family:"Heebo",system-ui,sans-serif!important;font-weight:900!important;letter-spacing:-.03em!important;line-height:.9!important}
.lx-h1 .lx-sub2{letter-spacing:.04em!important;font-size:.24em}
@media (min-width:861px){.lx-h1{font-size:clamp(3rem,7vw,7.6rem)!important}}
@media (max-width:860px){.lx-h1{font-size:clamp(2.6rem,14vw,5.4rem)!important}}
@media (min-width:861px){.lx-h1{font-size:clamp(3rem,6.2vw,6.8rem)!important}}
header.top .logo,header.top .logo span{font-family:"Montserrat","Arial Black",Arial,sans-serif!important;font-weight:600!important;letter-spacing:.01em!important;-webkit-text-fill-color:#fff;background:none!important;color:#fff!important}
header.top .logo span,header.top .brand span{font-family:"Montserrat","Arial Black",Arial,sans-serif!important;font-weight:600!important;font-size:1.2rem!important;letter-spacing:.01em!important}
.logo-txt{display:grid;line-height:1;gap:3px;direction:ltr;text-align:left}
header.top .logo .logo-sub{font-family:"Montserrat","Arial Black",Arial,sans-serif!important;font-weight:500!important;font-size:.56rem!important;letter-spacing:.42em!important;color:#b3b8bf!important;-webkit-text-fill-color:#b3b8bf}
.back{white-space:nowrap}
/* home title: thin & spaced (Montserrat, like the header logo) */
.lx-h1,.lx-h1 .lx-shine{font-family:"Montserrat","Arial Black",Arial,sans-serif!important;font-weight:500!important;letter-spacing:.08em!important;line-height:1!important}
.lx-h1 .lx-sub2{letter-spacing:.38em!important;font-size:.2em;font-weight:500!important}
@media (min-width:861px){.lx-h1{font-size:clamp(2.6rem,5.1vw,5.6rem)!important}}
@media (max-width:860px){.lx-h1{font-size:clamp(2rem,10.4vw,4.2rem)!important}}
@media (min-width:861px){.lx-h1{font-size:clamp(2.4rem,4.9vw,5.3rem)!important}}
.logo{display:flex;align-items:center;gap:10px}
.logo-sub{letter-spacing:.62em!important}
@media (min-width:1081px){.prog-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
