/* ── Kidi-Gym accent overrides: pink → sky blue ────────────── */
:root{ --sky:#29B6E8; --sky-hover:#3dc6f5; --sky-deep:#1f8fb8; }

.hero h1 .pink,.sec-head h2 .pink,.pink{ color:var(--sky) !important }
.btn-pink{ background:var(--sky) !important; color:#fff !important }
.btn-pink:hover{ background:var(--sky-hover) !important }
.nav-cta{ background:var(--sky) !important }
.nav-cta:hover{ background:var(--sky-hover) !important }
.nav-links a.active::after{ background:var(--sky) !important }
.sec-label .num{ color:var(--sky) !important }
.hero-eyebrow .dot{ background:var(--sky) !important; box-shadow:0 0 0 4px rgba(41,182,232,0.22) !important }
.venue-card .code{ color:var(--sky) !important }
.venue-card:hover{ border-color:var(--sky) !important }
.venue-card.venue-more{ border-color:#2a2a2a !important }
.venue-card.venue-more .code{ color:var(--sky) !important }
.venue-card.venue-home{ background:linear-gradient(135deg,#0a2a38 0%,#141414 100%) !important }
.venue-note .n{ color:var(--sky) !important }
.venue-note p a{ color:var(--sky) !important }
.tt-col.tt-col-accent .tt-col-head{ background:var(--sky) !important; color:#0a1418 }
.clo-notes ul li::before{ background:var(--sky) !important }
.clo-card .meta{ color:var(--sky) !important }
.reg-placeholder .tag{ color:var(--sky) !important }
.reg-placeholder a{ color:var(--sky) !important }
.reg-note .n{ color:var(--sky) !important }
.fees-hero .ccy{ color:var(--sky) !important }
.role-pill::before{ background:var(--sky) !important }
.level-card:hover{ border-color:var(--sky) !important }
.socials a:hover{ background:var(--sky) !important; border-color:var(--sky) !important }
.foot-col a:hover{ color:var(--sky) !important }

/* Fee stats */
.fee-stats{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:#222;margin-bottom:32px}
.fee-stat{background:#141414;padding:36px 32px;border:1px solid transparent;transition:border-color .2s;position:relative;min-height:240px;display:flex;flex-direction:column;justify-content:space-between}
.fee-stat:hover{border-color:var(--sky)}
.fee-stat .eyebrow-row{display:flex;align-items:center;gap:10px;margin-bottom:auto}
.fee-stat .eyebrow-row .code{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--sky);letter-spacing:0.2em;text-transform:uppercase}
.fee-stat .eyebrow-row .scope{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--muted);letter-spacing:0.15em;text-transform:uppercase}
.fee-stat h4{font-family:'Big Shoulders Display',sans-serif;font-weight:900;text-transform:uppercase;font-size:22px;line-height:1;margin-top:20px;margin-bottom:12px;letter-spacing:0.02em;color:#fff}
.fee-stat .amount{display:flex;align-items:baseline;gap:4px;margin-top:auto}
.fee-stat .amount .ccy{font-family:'Big Shoulders Display',sans-serif;font-weight:700;font-size:28px;color:var(--sky)}
.fee-stat .amount .amt{font-family:'Big Shoulders Display',sans-serif;font-weight:900;font-size:92px;line-height:0.85;color:#fff;letter-spacing:-0.02em}
.fee-stat .amount .per{margin-left:10px;font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--muted);letter-spacing:0.15em;text-transform:uppercase}

/* Enrolment steps */
.enrol-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:#222;margin-top:20px}
.enrol-step{background:#0a0a0a;padding:28px 26px 30px;display:flex;flex-direction:column;gap:12px;min-height:180px;border:1px solid transparent;transition:border-color .2s}
.enrol-step:hover{border-color:var(--sky)}
.enrol-step .n{font-family:'Big Shoulders Display',sans-serif;font-weight:900;font-size:44px;line-height:1;color:var(--sky);letter-spacing:-0.02em}
.enrol-step h5{font-family:'Big Shoulders Display',sans-serif;font-weight:900;text-transform:uppercase;font-size:20px;line-height:1.1;letter-spacing:0.01em;color:#fff}
.enrol-step p{font-size:14px;color:#c5c2bd;line-height:1.5}
.enrol-step p strong{color:#fff}

.fees-contact-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 28px;margin-top:24px;background:#0a0a0a;border:1px solid #2a2a2a;flex-wrap:wrap}
.fees-contact-bar .lbl{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--muted);letter-spacing:0.18em;text-transform:uppercase}
.fees-contact-bar a{font-family:'Big Shoulders Display',sans-serif;font-weight:800;text-transform:uppercase;font-size:22px;letter-spacing:0.01em;color:#fff}
.fees-contact-bar a:hover{color:var(--sky)}

/* Day-by-day timetable */
.day-group-head{background:var(--black);color:#fff;padding:18px 22px;display:flex;justify-content:space-between;align-items:center;gap:18px;border-bottom:1px solid #2a2a2a}
.day-group-head h3{font-family:'Big Shoulders Display',sans-serif;font-weight:900;text-transform:uppercase;font-size:30px;letter-spacing:0.01em;line-height:1}
.day-group-head h3 .sky{color:var(--sky)}
.day-group-head .count{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--sky);letter-spacing:0.2em;text-transform:uppercase}
.day-table{width:100%;border-collapse:collapse;font-size:14px;background:#fff}
.day-table thead th{font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:0.18em;text-transform:uppercase;text-align:left;color:var(--muted);padding:12px 18px;background:#141414;border-right:1px solid #222;font-weight:500}
.day-table thead th:last-child{border-right:none}
.day-table tbody td{padding:14px 18px;border-bottom:1px solid #e8e3d8;border-right:1px solid #e8e3d8;color:#1a1a1a;vertical-align:middle;font-size:14px}
.day-table tbody td:last-child{border-right:none}
.day-table tbody td.school{font-family:'Big Shoulders Display',sans-serif;font-weight:800;font-size:16px;text-transform:uppercase;letter-spacing:0.02em;color:var(--black)}
.day-table tbody td.time{font-family:'JetBrains Mono',monospace;font-size:12px;color:#2a2a2a;letter-spacing:0.03em;white-space:nowrap}
.day-table tbody td .age-pill{display:inline-block;font-family:'JetBrains Mono',monospace;font-size:10px;color:#fff;background:var(--sky);padding:3px 8px;letter-spacing:0.14em;text-transform:uppercase}
.day-table tbody td .age-pill.alt{background:var(--gold);color:#0a0a0a}
.day-table tbody td.em{color:var(--muted);font-family:'JetBrains Mono',monospace;font-size:12px}
.day-table tbody tr:last-child td{border-bottom:none}
.day-table tbody tr:hover td{background:#f5faff}
.day-block{border:1px solid #d4cfc5;margin-bottom:20px;background:#fff}
.tt-foot-note{display:flex;gap:24px;padding:20px 24px;background:#fff;border:1px solid #d4cfc5;border-left:3px solid var(--sky);align-items:flex-start;font-size:14px;color:#3a3a3a;line-height:1.55;margin-top:12px}
.tt-foot-note strong{color:#000}
.tt-foot-note .n{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--sky);letter-spacing:0.2em;flex-shrink:0;width:80px;padding-top:2px;text-transform:uppercase}

/* Transport */
.transport-grid{display:grid;grid-template-columns:1.1fr 0.9fr;gap:64px;align-items:center}
.transport-body h2{font-family:'Big Shoulders Display',sans-serif;font-weight:900;font-size:clamp(56px,8vw,128px);line-height:0.88;text-transform:uppercase;letter-spacing:-0.01em;margin-bottom:28px}
.transport-body h2 .sky{color:var(--sky)}
.transport-body p{font-size:18px;color:#c5c2bd;line-height:1.55;margin-bottom:20px}
.transport-body p strong{color:#fff}
.transport-ctas{display:flex;gap:16px;flex-wrap:wrap;margin-top:32px}
.transport-art{position:relative;aspect-ratio:4/3;background:linear-gradient(135deg,#0a2a38 0%,#141414 100%);border:1px solid #1f3a48;overflow:hidden;padding:28px}
.transport-art .road{position:absolute;left:0;right:0;bottom:28%;height:3px;background:repeating-linear-gradient(90deg, var(--sky) 0 18px, transparent 18px 36px)}
.transport-art .bus{position:absolute;right:10%;bottom:32%;width:160px;height:78px;background:var(--sky);border-radius:8px 18px 2px 2px}
.transport-art .bus::before{content:"";position:absolute;left:14px;top:14px;right:28px;height:30px;background:#0a1418;border-radius:4px}
.transport-art .bus::after{content:"";position:absolute;left:10px;bottom:-12px;width:22px;height:22px;background:#0a0a0a;border:3px solid var(--sky);border-radius:50%;box-shadow:90px 0 0 -3px var(--sky), 90px 0 0 0 #0a0a0a}
.transport-art .pin{position:absolute;top:22%;left:14%;width:18px;height:18px;border-radius:50% 50% 50% 0;background:var(--sky);transform:rotate(-45deg);box-shadow:0 0 0 6px rgba(41,182,232,0.2)}
.transport-art .pin::after{content:"";position:absolute;top:5px;left:5px;width:8px;height:8px;background:#0a1418;border-radius:50%}
.transport-art .tag{position:absolute;left:28px;top:28px;font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--sky);letter-spacing:0.2em;text-transform:uppercase}
.transport-art .cost-badge{position:absolute;right:28px;top:28px;font-family:'Big Shoulders Display',sans-serif;font-weight:900;text-transform:uppercase;font-size:14px;letter-spacing:0.06em;padding:8px 12px;background:var(--sky);color:#0a1418}

/* Coaches */
.coaches-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.coach-card{display:flex;flex-direction:column;align-items:center;text-align:center;gap:20px;padding:40px 28px 32px;background:#fff;border:1px solid #d4cfc5;transition:border-color .2s}
.coach-card:hover{border-color:var(--sky)}
.coach-photo{position:relative;width:180px;height:180px;border-radius:50%;background-size:cover;background-position:center;border:1px solid #d4cfc5}
.coach-photo::before{content:"";position:absolute;inset:-10px;border:1px dashed #c9c4ba;border-radius:50%;pointer-events:none}
.coach-photo .tag{position:absolute;right:-8px;bottom:4px;background:var(--sky);color:#0a1418;padding:6px 10px;font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:0.2em;text-transform:uppercase;font-weight:500}
.coach-card h4{font-family:'Big Shoulders Display',sans-serif;font-weight:900;text-transform:uppercase;font-size:26px;line-height:1;letter-spacing:0.01em;color:var(--black)}
.coach-card .role{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--sky);letter-spacing:0.18em;text-transform:uppercase}
.coach-card .bio{font-size:14px;color:#3a3a3a;line-height:1.55;margin-top:4px}

/* Clothing 6-grid */
.clo-grid-6{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:48px}

/* Learning outcomes */
.learns-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:2px;background:#222;margin-top:20px}
.learn-card{background:#0a0a0a;padding:32px 24px 28px;display:flex;flex-direction:column;gap:14px;min-height:320px;border:1px solid transparent;transition:border-color .2s;position:relative}
.learn-card:hover{border-color:var(--sky)}
.learn-ico{width:64px;height:64px;flex-shrink:0}
.learn-ico svg{width:100%;height:100%;display:block}
.learn-n{font-family:'JetBrains Mono',monospace;font-size:10px;color:var(--sky);letter-spacing:0.22em;text-transform:uppercase;margin-top:4px}
.learn-card h4{font-family:'Big Shoulders Display',sans-serif;font-weight:900;text-transform:uppercase;font-size:22px;line-height:1;letter-spacing:0.01em;color:#fff;margin-top:2px}
.learn-card p{font-size:14px;color:#c5c2bd;line-height:1.55;margin-top:auto}

.venue-pin{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:28px 32px;margin-top:36px;background:#141414;border:1px solid #2a2a2a;border-left:3px solid var(--sky);flex-wrap:wrap}
.venue-pin .pin-code{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--sky);letter-spacing:0.22em;text-transform:uppercase;display:block;margin-bottom:8px}
.venue-pin .pin-title{font-family:'Big Shoulders Display',sans-serif;font-weight:900;text-transform:uppercase;font-size:28px;letter-spacing:0.01em;color:#fff;line-height:1}
.venue-pin .pin-addr{font-family:'JetBrains Mono',monospace;font-size:12px;color:#c5c2bd;letter-spacing:0.06em;margin-top:8px}

/* Responsive */
@media (max-width:1100px){
  .fee-stats{grid-template-columns:1fr}
  .enrol-steps{grid-template-columns:1fr}
  .transport-grid{grid-template-columns:1fr;gap:40px}
  .coaches-grid{grid-template-columns:1fr;max-width:420px;margin:0 auto}
  .clo-grid-6{grid-template-columns:repeat(2,1fr)}
  .learns-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:720px){
  .clo-grid-6{grid-template-columns:1fr}
  .fees-contact-bar{flex-direction:column;align-items:flex-start;gap:6px}
  .day-group-head{flex-direction:column;align-items:flex-start;gap:6px}
  .day-group-head h3{font-size:24px}
  .day-table th:nth-child(4),.day-table td:nth-child(4){display:none}
  .day-table{min-width:460px}
}
.age-pill{white-space:nowrap}
@media (max-width:640px){
  .learns-grid{grid-template-columns:1fr}
  .venue-pin{flex-direction:column;align-items:flex-start}
}

/* Clothing notes — simplified layout (no aside card) */
.clo-notes-simple{display:flex;flex-direction:column;align-items:flex-start;grid-template-columns:unset}

/* Coach qualifications & quote */
.coach-quals{list-style:none;padding:0;margin-top:12px;display:flex;flex-direction:column;gap:4px}
.coach-quals li{font-size:12px;font-family:'JetBrains Mono',monospace;color:var(--muted);padding-left:12px;position:relative}
.coach-quals li::before{content:'·';position:absolute;left:0;color:#29B6E8}
.coach-quote{margin-top:14px;font-size:13px;font-style:italic;color:#c5c2bd;border-left:2px solid #29B6E8;padding-left:12px;line-height:1.5}

/* Ensure btn-pink text is always white */
.btn.btn-pink,.btn-pink{color:#fff!important}
