:root {
  --bg: #07111b;
  --bg2: #0a1723;
  --panel: #0d1b28;
  --blue: #1498ff;
  --blue2: #3fb2ff;
  --text: #f7fbff;
  --muted: #c9d5df;
  --line: rgba(255,255,255,.11);
  --white: #ffffff;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: "Inter", system-ui, sans-serif;
  background: var(--bg);
  color: var(--text);
  line-height: 1.55;
}
img { display:block; width:100%; }
a { color: inherit; text-decoration: none; }
strong { font-weight: 800; }

.site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  min-height: 78px;
  display: grid;
  grid-template-columns: 230px 1fr auto;
  align-items: center;
  gap: 24px;
  padding: 12px clamp(22px, 5vw, 70px);
  background: rgba(5,14,23,.95);
  border-bottom: 1px solid var(--line);
  backdrop-filter: blur(14px);
}
.brand strong {
  font-family: "Bebas Neue", sans-serif;
  letter-spacing: .7px;
  font-size: 21px;
  line-height: .82;
  display: inline-block;
}
.brand span { color: var(--blue); }
.main-nav { display:flex; justify-content:center; gap:30px; font-size:14px; }
.main-nav a:hover, .footer-links a:hover { color: var(--blue2); }
.header-actions { display:flex; gap:10px; }

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 48px;
  padding: 0 21px;
  border: 1px solid var(--blue);
  border-radius: 8px;
  background: var(--blue);
  color: #fff;
  font-weight: 800;
  font-size: 13px;
  letter-spacing: .15px;
  transition: .2s ease;
}
.btn:hover { transform: translateY(-2px); filter: brightness(1.06); }
.btn-small { min-height: 40px; padding: 0 16px; }
.btn-outline { background: transparent; border-color: rgba(60,177,255,.8); }

.menu-toggle { display:none; background:none; border:0; padding:8px; }
.menu-toggle span { width:25px; height:2px; background:#fff; display:block; margin:5px 0; }

.hero {
  min-height: 660px;
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  background: radial-gradient(circle at 70% 30%, rgba(20,152,255,.12), transparent 35%), linear-gradient(120deg,#050c13,#091521 62%,#0b1927);
  overflow: hidden;
}
.hero-copy {
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding: 70px 6vw 70px 7vw;
}
.hero h1, .app-copy h2, .audience-section h2, .about-copy h2, .cta-copy h2 {
  margin:0;
  font-family:"Bebas Neue", sans-serif;
  font-weight:400;
  letter-spacing:.5px;
  line-height:.9;
}
.hero h1 { font-size: clamp(58px, 7vw, 105px); }
.hero h1 span, .app-copy h2 span, .audience-section h2 span, .about-copy h2 span { color: var(--blue); }
.hero-subtitle { font-size: clamp(18px,2vw,27px); margin: 20px 0 5px; }
.lead { color:var(--muted); max-width:600px; font-size:18px; }
.hero-actions, .cta-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:18px; }
.hero-image { min-height:660px; position:relative; overflow:hidden; }
.hero-image::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(7,17,27,.8),transparent 28%); pointer-events:none; }
.hero-image img { width:100%; height:100%; object-fit:cover; object-position:center; }

.coaching-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); border-top:1px solid var(--line); width:100%; margin:0 auto; }
.coaching-card { min-width:0; background: linear-gradient(180deg,#0d1823,#08131d); border-right:1px solid var(--line); }
.coaching-card:last-child { border-right:0; }
.coaching-card > img { height:230px; object-fit:cover; filter:saturate(.85) contrast(1.05); }
.card-body { padding:30px 30px 36px; }
.card-icon { color:var(--blue); font-size:28px; margin-bottom:8px; }
.coaching-card h2 { font-family:"Bebas Neue",sans-serif; font-size:42px; letter-spacing:.4px; margin:0 0 10px; }
.coaching-card p { margin:0; color:#e0e8ef; font-size:15px; }

.app-section {
  display:grid;
  grid-template-columns:.72fr 1.18fr .72fr;
  align-items:center;
  min-height:470px;
  background:linear-gradient(90deg,#07111b,#0b1b2a 65%,#0a1824);
  overflow:hidden;
}
.phone-wrap { align-self:stretch; min-height:470px; display:flex; align-items:flex-end; justify-content:center; background:radial-gradient(circle at 40% 50%,rgba(20,152,255,.13),transparent 50%); }
.phone-wrap img { width:min(100%,560px); max-height:470px; object-fit:contain; object-position:left bottom; }
.app-copy { padding:60px 3vw 55px; }
.app-video-wrap { min-height:470px; display:flex; align-items:center; justify-content:center; padding:30px 3vw 30px 0; background:radial-gradient(circle at 50% 50%,rgba(20,152,255,.12),transparent 55%); }
.app-video { width:min(100%,270px); max-height:410px; aspect-ratio:9/16; object-fit:cover; border-radius:24px; box-shadow:0 18px 45px rgba(0,0,0,.38); background:#000; }
.app-copy h2 { font-size:clamp(52px,6vw,82px); }
.app-copy > p { max-width:780px; font-size:18px; color:#e4edf4; }
.app-features { display:grid; grid-template-columns:repeat(5,1fr); margin-top:38px; border-top:1px solid var(--line); }
.app-features div { padding:22px 10px 0; text-align:center; border-right:1px solid var(--line); }
.app-features div:last-child { border-right:0; }
.app-features b { display:block; font-size:25px; color:var(--blue); margin-bottom:8px; }
.app-features span { font-size:13px; }

.audience-section { background:linear-gradient(90deg,#0b1724,#0d2940); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.section-inner { max-width:1300px; margin:0 auto; padding:45px 6vw 42px; }
.audience-section h2 { font-size:58px; }
.audience-section p { margin:8px 0 25px; color:#eff6fb; }
.audience-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:16px; }
.audience-grid div { display:flex; align-items:flex-start; gap:12px; padding:18px 16px; border:1px solid rgba(255,255,255,.08); border-radius:8px; background:rgba(255,255,255,.03); }
.audience-grid span { color:var(--blue); font-size:23px; min-width:30px; text-align:center; }
.audience-grid p { margin:0; color:#eff6fb; }
.audience-grid strong { display:block; font-size:15px; }
.audience-grid small { display:block; margin-top:6px; color:#b9c8d4; font-size:13px; line-height:1.45; }
.sport-beroep { display:flex; align-items:flex-start; gap:12px; margin-top:16px; padding:20px 18px; border:1px solid rgba(255,255,255,.12); border-radius:8px; background:rgba(255,255,255,.05); }
.sport-beroep > span { color:var(--blue); font-size:23px; min-width:30px; text-align:center; }
.sport-beroep p { margin:0; color:#eff6fb; }
.sport-beroep strong { display:block; font-size:15px; }
.sport-beroep small { display:block; margin-top:6px; color:#b9c8d4; font-size:13px; line-height:1.5; }

.about-section { display:grid; grid-template-columns:.9fr 1.1fr; background:#fff; color:#0a1723; }
.about-photo { min-height:460px; }
.about-photo img { width:100%; height:100%; object-fit:cover; object-position:center; }
.about-copy { padding:62px 6vw 55px 4vw; }
.about-copy h2 { font-size:68px; }
.about-copy > p { font-size:17px; max-width:800px; }
.credentials { display:grid; grid-template-columns:repeat(4,1fr); gap:0; margin-top:38px; border-top:1px solid #d9e2e9; }
.credentials div { padding:20px 16px 0; border-right:1px solid #d9e2e9; text-align:center; }
.credentials div:last-child { border-right:0; }
.credentials strong { display:block; font-size:14px; color:#0a1723; }
.credentials span { display:block; font-size:12px; color:#647484; margin-top:4px; }

.cta-section { position:relative; min-height:330px; display:flex; justify-content:center; align-items:center; text-align:center; background:linear-gradient(rgba(3,11,18,.7),rgba(3,11,18,.92)), radial-gradient(circle at 50% 30%,#17425f,#07111b 60%); }
.cta-copy { padding:60px 20px; max-width:950px; }
.cta-copy h2 { font-size:70px; }
.cta-copy p { font-size:17px; color:#e1eaf1; max-width:720px; margin:14px auto 0; }
.cta-actions { justify-content:center; }

footer { display:flex; justify-content:space-between; align-items:center; gap:30px; padding:28px 6vw; background:#050d14; border-top:1px solid var(--line); }
.footer-links { display:flex; gap:25px; font-size:13px; }


/* Baseline assessments */
.baseline-section {
  background:linear-gradient(135deg,#08131d,#0d2233 65%,#0a1824);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.baseline-inner { max-width:1300px; margin:0 auto; padding:58px 6vw 54px; }
.baseline-heading { max-width:900px; margin-bottom:32px; }
.baseline-heading .eyebrow { margin:0 0 8px; color:var(--blue2); font-size:12px; font-weight:800; letter-spacing:1.25px; }
.baseline-heading h2 { margin:0; font-family:"Bebas Neue",sans-serif; font-weight:400; font-size:clamp(52px,6vw,76px); line-height:.95; letter-spacing:.5px; }
.baseline-heading h2 span { color:var(--blue); }
.baseline-heading > p:last-child { margin:16px 0 0; color:#dce7ef; font-size:16px; line-height:1.7; }
.baseline-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.baseline-card { padding:26px 24px 28px; border:1px solid rgba(255,255,255,.09); border-radius:10px; background:rgba(255,255,255,.035); }
.baseline-icon { color:var(--blue); font-size:26px; margin-bottom:7px; }
.baseline-card h3 { margin:0 0 10px; font-family:"Bebas Neue",sans-serif; font-size:34px; font-weight:400; letter-spacing:.4px; }
.baseline-card p { margin:0; color:#dce7ef; font-size:14px; line-height:1.65; }
.baseline-note { margin:25px 0 0; padding-top:23px; border-top:1px solid var(--line); color:#dce7ef; font-size:14px; }

@media (max-width: 1050px) {
  .site-header { grid-template-columns:1fr auto; }
  .header-actions { display:none; }
  .menu-toggle { display:block; }
  .main-nav { display:none; position:absolute; top:78px; left:0; right:0; background:#07111b; padding:20px; flex-direction:column; align-items:center; border-bottom:1px solid var(--line); }
  .main-nav.open { display:flex; }
  .hero { grid-template-columns:1fr; }
  .hero-copy { order:1; padding:65px 7vw 45px; }
  .hero-image { order:2; min-height:520px; }
  .coaching-grid { grid-template-columns:1fr; }
  .coaching-card { display:grid; grid-template-columns:.42fr .58fr; border-right:0; border-bottom:1px solid var(--line); }
  .coaching-card > img { height:100%; min-height:310px; }
  .app-section { grid-template-columns:1fr 1fr; }
  .phone-wrap { min-height:360px; }
  .phone-wrap img { max-height:390px; }
  .app-copy { grid-column:1 / -1; order:-1; padding:45px 7vw 25px; }
  .app-video-wrap { min-height:360px; padding:20px 7vw 35px; }
  .app-video { max-height:360px; }
  .audience-grid { grid-template-columns:repeat(2,1fr); }
  .about-section { grid-template-columns:1fr; }
  .about-photo { max-height:620px; }
}

@media (max-width: 720px) {
  .site-header { min-height:68px; padding:10px 18px; }
  .main-nav { top:68px; }
  .brand strong { font-size:18px; }
  .hero-copy { padding:52px 22px 38px; }
  .hero-image { min-height:430px; }
  .hero-image::after { background:linear-gradient(180deg,rgba(7,17,27,.12),rgba(7,17,27,.45)); }
  .hero-actions, .cta-actions { flex-direction:column; align-items:stretch; }
  .btn { width:100%; }
  .coaching-card { display:block; }
  .coaching-card > img { min-height:0; height:220px; }
  .card-body { padding:26px 22px 32px; }
  .coaching-card h2 { font-size:38px; }
  .app-section { grid-template-columns:1fr; }
  .app-copy { grid-column:auto; order:initial; padding:40px 22px 28px; }
  .app-video-wrap { min-height:0; padding:0 22px 42px; }
  .app-video { width:min(100%,260px); max-height:none; }
  .app-features { grid-template-columns:1fr 1fr; }
  .app-features div { border-right:0; border-bottom:1px solid var(--line); }
  .app-features div:last-child { grid-column:1 / -1; }
  .section-inner { padding:40px 22px; }
  .audience-section h2 { font-size:48px; }
  .audience-grid { grid-template-columns:1fr; }
  .audience-grid div:last-child { grid-column:auto; }
  .about-copy { padding:45px 22px; }
  .about-copy h2 { font-size:55px; }
  .credentials { grid-template-columns:1fr 1fr; }
  .credentials div:nth-child(2) { border-right:0; }
  .credentials div:nth-child(-n+2) { border-bottom:1px solid #d9e2e9; padding-bottom:18px; }
  .cta-copy h2 { font-size:56px; }
  footer { flex-direction:column; align-items:flex-start; }
  .footer-links { flex-wrap:wrap; }
}

/* Pricing */
.pricing-section { background:#07111b; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.pricing-inner { max-width:1300px; margin:0 auto; padding:72px 6vw 68px; }
.pricing-heading { max-width:780px; margin:0 auto 38px; text-align:center; }
.pricing-heading h2 { font-size:64px; margin:6px 0 12px; }
.pricing-heading h2 span { color:var(--blue); }
.pricing-heading > p:last-child { color:#cbd7e0; line-height:1.65; }
.pricing-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; align-items:stretch; }
.price-card { position:relative; padding:34px 30px 30px; background:#0b1d2c; border:1px solid rgba(255,255,255,.10); border-radius:10px; display:flex; flex-direction:column; }
.price-card.featured { border:2px solid var(--blue); transform:translateY(-8px); box-shadow:0 18px 55px rgba(0,0,0,.24); }
.popular { position:absolute; top:-15px; left:50%; transform:translateX(-50%); background:var(--blue); color:#fff; padding:7px 18px; border-radius:999px; font-size:11px; font-weight:800; letter-spacing:.09em; white-space:nowrap; }
.price-kicker { color:var(--blue); font-weight:800; letter-spacing:.13em; font-size:12px; margin-bottom:8px; }
.price-card h3 { font-size:38px; margin:0; }
.price-choice { min-height:52px; color:#bdcad4; font-size:14px; line-height:1.5; }
.price-lines { margin:20px 0 26px; border-top:1px solid rgba(255,255,255,.10); }
.price-lines div { display:flex; justify-content:space-between; align-items:baseline; gap:18px; padding:15px 0; border-bottom:1px solid rgba(255,255,255,.10); }
.price-lines span { color:#b8c6d0; font-size:14px; }
.price-lines strong { color:#fff; white-space:nowrap; text-align:right; display:flex; flex-direction:column; align-items:flex-end; line-height:1.05; }
.price-lines .price-amount { font-size:23px; color:#fff; }
.price-lines small { margin-top:5px; font-size:10px; color:#91a3b0; font-weight:500; letter-spacing:.01em; }
.price-card .btn { margin-top:auto; width:100%; justify-content:center; }
.pricing-note { max-width:800px; margin:28px auto 0; text-align:center; color:#91a3b0; font-size:12px; }
@media (max-width:900px){ .pricing-grid{grid-template-columns:1fr;} .price-card.featured{transform:none; margin-top:8px;} }
@media (max-width:720px){ .pricing-inner{padding:55px 22px;} .pricing-heading h2{font-size:48px;} .price-card{padding:30px 22px 24px;} .price-card h3{font-size:34px;} }


/* Testimonials / social proof */
.testimonials-section { background:linear-gradient(135deg,#081826 0%,#0b2133 55%,#07111b 100%); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.testimonials-inner { max-width:1300px; margin:0 auto; padding:74px 6vw 68px; }
.testimonials-heading { max-width:800px; margin:0 auto 40px; text-align:center; }
.testimonials-heading h2 { font-size:64px; margin:6px 0 14px; }
.testimonials-heading h2 span { color:var(--blue); }
.testimonials-heading > p:last-child { color:#c5d2dc; line-height:1.7; }
.testimonials-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.testimonial-card { margin:0; position:relative; padding:34px 30px 28px; background:rgba(255,255,255,.035); border:1px solid rgba(255,255,255,.10); border-radius:10px; display:flex; flex-direction:column; min-height:360px; }
.testimonial-card.featured-testimonial { border-color:rgba(18,151,242,.75); box-shadow:0 18px 50px rgba(0,0,0,.20); }
.quote-mark { color:var(--blue); font-family:Georgia,serif; font-size:72px; line-height:.65; margin-bottom:18px; }
.testimonial-card > p { color:#f1f6f9; font-size:18px; line-height:1.65; margin:0 0 28px; }
.testimonial-card footer { margin-top:auto; padding:18px 0 0; border-top:1px solid rgba(255,255,255,.10); background:none; display:block; }
.testimonial-card footer strong { display:block; color:#fff; font-size:15px; text-transform:uppercase; letter-spacing:.05em; }
.testimonial-card footer span { display:block; margin-top:4px; color:var(--blue); font-size:12px; }
.testimonial-names { display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:12px; margin:28px 0 0; color:#9dafbc; font-size:13px; }
.testimonial-names > span { text-transform:uppercase; letter-spacing:.1em; font-size:10px; color:#718796; margin-right:5px; }
.testimonial-names strong { color:#dce6ed; }
.testimonial-names i { color:var(--blue); font-style:normal; }
.experience-message { max-width:860px; margin:42px auto 0; padding:24px 28px; text-align:center; border-left:3px solid var(--blue); border-right:3px solid var(--blue); background:rgba(18,151,242,.055); }
.experience-message strong { color:#fff; font-size:20px; letter-spacing:.04em; }
.experience-message p { color:#b8c8d3; margin:8px 0 0; line-height:1.55; }
@media (max-width:900px){ .testimonials-grid{grid-template-columns:1fr;} .testimonial-card{min-height:0;} }
@media (max-width:720px){ .testimonials-inner{padding:55px 22px;} .testimonials-heading h2{font-size:46px;} .testimonial-card{padding:28px 22px 24px;} .testimonial-card > p{font-size:16px;} .testimonial-names{line-height:1.8;} .experience-message{padding:22px 18px;} }

/* Original client photos from supplied Instagram stories */
.testimonial-photo {
  width: calc(100% + 60px);
  height: 220px;
  margin: -34px -30px 28px;
  object-fit: contain;
  object-position: center;
  border-radius: 10px 10px 0 0;
  border-bottom: 1px solid rgba(18,151,242,.35);
}
@media (max-width:720px){
  .testimonial-photo { width:calc(100% + 44px); height:230px; margin:-28px -22px 24px; }
}

/* Framing correction: keep Dean and Metehan's complete heads visible */
.testimonial-card img[src*="dean-huiberts"] { object-position: center 25% !important; }
.testimonial-card img[src*="metehan-guclu"] { object-position: center 22% !important; }

/* Photo swap: marathon in hero, original box jump in About */
.hero-image img[src*="about-marathon"] {
  object-fit: cover !important;
  object-position: center 42% !important;
}

.about-photo {
  background: #07131f;
}

.about-photo img[src*="hero-boxjump"] {
  object-fit: contain !important;
  object-position: center center !important;
}


/* Language switch */
.language-switch { display:flex; align-items:center; gap:7px; font-size:12px; font-weight:800; letter-spacing:.08em; white-space:nowrap; }
.language-switch a { color:#aebdca; padding:7px 5px; transition:.2s ease; }
.language-switch a:hover { color:#fff; }
.language-switch a.active { color:var(--blue2); }
.language-switch span { color:#546778; }
@media (max-width:1050px) {
  .site-header { grid-template-columns:1fr auto auto; gap:12px; }
  .language-switch { grid-column:2; grid-row:1; }
  .menu-toggle { grid-column:3; grid-row:1; }
  .header-actions { display:contents; }
  .header-actions > .btn { display:none; }
}
@media (max-width:720px) {
  .language-switch { font-size:11px; gap:5px; }
  .language-switch a { padding:6px 3px; }
}

/* Intake funnel */
.intake-section{background:#f4f7f9;color:#07131f;padding:85px 22px}.intake-inner{max-width:1100px;margin:auto}.intake-heading{text-align:center;max-width:760px;margin:0 auto 36px}.intake-heading h2{font-family:'Bebas Neue',sans-serif;font-size:68px;line-height:.95;margin:8px 0 14px}.intake-heading h2 span{color:var(--blue)}.intake-heading p{color:#50616e}.intake-form{background:#fff;padding:34px;border-radius:18px;box-shadow:0 18px 50px rgba(7,19,31,.09)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.intake-form label{display:flex;flex-direction:column;gap:8px;font-weight:800;font-size:13px;letter-spacing:.02em}.intake-form input,.intake-form textarea,.intake-form select{width:100%;border:1px solid #ced8df;border-radius:9px;padding:13px 14px;font:inherit;color:#07131f;background:#fff}.intake-form textarea{min-height:105px;resize:vertical}.form-wide{grid-column:1/-1}.intake-form .btn{border:0;margin-top:24px;cursor:pointer}.form-note{font-size:12px;color:#70818d;margin-top:12px}@media(max-width:720px){.intake-section{padding:60px 16px}.intake-heading h2{font-size:52px}.intake-form{padding:22px 16px}.form-grid{grid-template-columns:1fr}.form-wide{grid-column:auto}}


@media (max-width: 900px) {
  .baseline-grid { grid-template-columns:1fr; }
  .baseline-inner { padding:44px 22px 42px; }
}


/* 6-week coaching block progression */
.blocks-section{background:#07131f;color:#fff;padding:85px 22px;border-top:1px solid rgba(255,255,255,.07)}
.blocks-inner{max-width:1180px;margin:auto}.blocks-heading{max-width:850px;margin:0 auto 38px;text-align:center}.blocks-heading h2{font-family:'Bebas Neue',sans-serif;font-size:68px;line-height:.95;margin:8px 0 18px}.blocks-heading h2 span{color:var(--blue)}.blocks-heading>p:last-child{color:#b8c8d3;line-height:1.7}.progression-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.progression-card{padding:30px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.10);border-radius:12px}.progression-card h3{font-family:'Bebas Neue',sans-serif;font-size:34px;margin:8px 0 15px}.progression-card>p:last-child{color:#b8c8d3;line-height:1.65;margin-bottom:0}.progression-flow{font-weight:800;line-height:1.7;color:#fff}.progression-flow span,.block-cycle span{color:var(--blue);padding:0 4px}.block-cycle{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:10px;margin:35px auto 18px;font-size:16px;letter-spacing:.05em}.blocks-note{max-width:780px;text-align:center;color:#8fa4b3;margin:0 auto;line-height:1.6;font-size:13px}@media(max-width:760px){.blocks-section{padding:60px 16px}.blocks-heading h2{font-size:50px}.progression-grid{grid-template-columns:1fr}.progression-card{padding:24px}.block-cycle{font-size:13px;gap:6px}}


/* Four-phase performance system */
.phase-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
.phase-card{position:relative;overflow:hidden;}
.phase-card .phase-number{font-family:'Bebas Neue',sans-serif;font-size:58px;line-height:1;color:var(--blue);opacity:.95;margin-bottom:4px;}
.phase-card h3{margin-top:0;}
.phase-duration{font-size:11px!important;font-weight:800;letter-spacing:.16em;color:var(--blue)!important;margin:-8px 0 18px!important;}
.phase-card>p{color:#d5e0e7;line-height:1.6;}
.phase-card>p strong{color:#fff;}
.phase-card .phase-purpose{color:#8fa4b3!important;border-top:1px solid rgba(255,255,255,.08);padding-top:15px;margin-top:17px;margin-bottom:0;}
.nutrition-support{max-width:900px;margin:22px auto 20px;padding:20px 24px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.03);border-radius:12px;display:flex;gap:18px;align-items:flex-start;}
.nutrition-support .card-icon{margin-top:1px;flex:0 0 auto;}
.nutrition-support strong{font-size:13px;letter-spacing:.08em;}
.nutrition-support p{color:#9fb1bd;line-height:1.6;margin:7px 0 0;}
.hero .lead strong{color:#fff;letter-spacing:.04em;}
@media(max-width:760px){.phase-grid{grid-template-columns:1fr}.phase-card .phase-number{font-size:48px}.nutrition-support{padding:18px;gap:12px}.blocks-heading h2{font-size:48px}}


/* Readability: clear paragraph spacing in coaching sections */
.coaching-card .card-body p { margin-bottom: 1rem; }
.coaching-card .card-body p:last-child { margin-bottom: 0; }

/* OPC pillar photos: original images with consistent in-site labels */
.coaching-card .pillar-photo {
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 5;
  overflow: hidden;
}
.coaching-card .pillar-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.coaching-card .pillar-photo::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 34%;
  background: none;
  pointer-events: none;
}
.coaching-card .pillar-photo span {
  position: absolute;
  z-index: 1;
  left: 20px;
  right: 20px;
  bottom: 24px;
  text-align: center;
  color: #fff;
  font-family: 'Bebas Neue', 'Inter', sans-serif;
  font-size: clamp(2.2rem, 3.4vw, 4rem);
  line-height: .95;
  letter-spacing: .02em;
  font-weight: 700;
  text-transform: uppercase;
}
@media (max-width: 900px) {
  .coaching-card .pillar-photo span { left: 20px; right:20px; bottom:20px; text-align:center; }
}

/* Contact form checkbox options */
.form-field{display:flex;flex-direction:column;gap:8px}.form-label{font-weight:800;font-size:13px;letter-spacing:.02em}.field-hint{font-size:12px;color:#70818d;margin-top:-3px}.checkbox-group{display:grid;grid-template-columns:1fr 1fr;gap:9px}.intake-form .check-option{display:flex;flex-direction:row;align-items:center;gap:9px;border:1px solid #ced8df;border-radius:9px;padding:11px 12px;font-weight:600;cursor:pointer;background:#fff}.intake-form .check-option input{width:auto;margin:0;accent-color:var(--blue)}.intake-form .check-option span{line-height:1.2}@media(max-width:480px){.checkbox-group{grid-template-columns:1fr}}

@media (max-width:1200px) and (min-width:901px){ .coaching-grid{grid-template-columns:repeat(2,minmax(0,1fr));} .pricing-grid{grid-template-columns:repeat(2,1fr);} }


/* Elite Trainers optional access */
.elite-addon{margin-top:46px;padding:34px;background:linear-gradient(135deg,#0b1d2c,#0e2739);border:1px solid rgba(255,255,255,.12);border-radius:14px}
.elite-addon-head{display:flex;justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:16px}
.elite-addon-head h3{font-family:'Bebas Neue',sans-serif;font-size:48px;line-height:.95;margin:6px 0 0}
.elite-addon-head h3 span{color:var(--blue)}
.elite-price{text-align:right;display:flex;flex-direction:column;gap:4px}.elite-price strong{font-size:18px;color:#fff}.elite-price small{color:#91a3b0}
.elite-lead{max-width:1040px;color:#cbd7e0;line-height:1.7;margin:0 0 22px}
.elite-flow{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;padding:14px 18px;margin-bottom:22px;border-top:1px solid rgba(255,255,255,.09);border-bottom:1px solid rgba(255,255,255,.09);font-size:11px;font-weight:800;letter-spacing:.06em;color:#fff}.elite-flow b{color:var(--blue)}
.elite-locations{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.elite-location{display:grid;grid-template-columns:92px minmax(0,1fr);align-items:stretch;min-height:108px;overflow:hidden;background:#071722;border:1px solid rgba(255,255,255,.09);border-radius:9px}
.elite-location img{width:92px;height:100%;min-height:108px;display:block;object-fit:cover}
.elite-location:nth-child(2) img,.elite-location:nth-child(3) img{object-position:center}
.elite-location div{padding:12px 10px;min-width:0}
.elite-location h4{font-family:'Bebas Neue',sans-serif;font-size:20px;line-height:1;margin:0 0 6px;white-space:nowrap}
.elite-location p{font-size:11px;line-height:1.35;color:#d5e0e7;margin:0 0 6px}
.elite-location small{display:block;font-size:8.5px;line-height:1.4;color:#8fa4b3}
.elite-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:22px}.elite-bottom p{margin:0;color:#9fb0bc;font-size:12px;line-height:1.6}.elite-bottom .btn{white-space:nowrap}
@media(max-width:1180px){.elite-locations{grid-template-columns:repeat(2,1fr)}.elite-location{grid-template-columns:120px 1fr}.elite-location img{width:120px}}
@media(max-width:720px){.elite-addon{padding:26px 18px}.elite-addon-head{align-items:flex-start;flex-direction:column}.elite-addon-head h3{font-size:40px}.elite-price{text-align:left}.elite-locations{grid-template-columns:1fr}.elite-location{grid-template-columns:110px 1fr}.elite-location img{width:110px;min-height:112px}.elite-location h4{font-size:22px}.elite-location p{font-size:12px}.elite-location small{font-size:9px}.elite-bottom{align-items:flex-start;flex-direction:column}.elite-bottom .btn{width:100%;justify-content:center}.elite-flow{justify-content:flex-start}}


/* v3 visual updates */
.hero-image img[src*="about-marathon"]{object-fit:cover!important;object-position:center 48%!important;}
.coaching-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
.coaching-card .pillar-photo span{text-align:center!important;left:18px!important;right:18px!important;}
.app-section:has(.app-video-wrap){grid-template-columns:.85fr 1.65fr;}
.app-section .app-video-wrap{padding:32px 3vw;min-height:470px;}
.app-section .app-video{width:min(100%,300px);max-height:430px;aspect-ratio:9/16;object-fit:cover;border-radius:24px;box-shadow:0 18px 45px rgba(0,0,0,.38);background:#000;}
@media(max-width:1050px){.app-section:has(.app-video-wrap){grid-template-columns:1fr 1.35fr;}.app-section .app-video-wrap{min-height:380px;}}
@media(max-width:900px){.coaching-grid{grid-template-columns:1fr!important;}}
@media(max-width:720px){.app-section:has(.app-video-wrap){grid-template-columns:1fr;}.app-section .app-video-wrap{min-height:0;padding:10px 22px 42px;}.app-section .app-video{width:min(100%,280px);max-height:none;}}

/* v4 layout refinements */
.coaching-grid{
  width:min(1320px, calc(100% - 64px))!important;
  margin:0 auto!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  border-left:1px solid var(--line);
  border-right:1px solid var(--line);
}
.coaching-card .pillar-photo span{
  left:0!important; right:0!important; bottom:24px!important;
  width:100%; text-align:center!important; padding:0 20px;
}
.coaching-card .card-icon{display:none;}
.app-section:has(.app-video-wrap){
  grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr)!important;
  max-width:1320px; margin:0 auto;
}
.app-copy{grid-column:1;grid-row:1;padding:60px 5vw 55px;}
.app-video-wrap{grid-column:2;grid-row:1;padding:32px 4vw!important;}
.app-features{grid-template-columns:1fr!important;gap:0;margin-top:30px!important;border-top:1px solid var(--line);}
.app-features div{padding:12px 0!important;text-align:left!important;border-right:0!important;border-bottom:1px solid var(--line);font-size:14px;color:#e7eef4;}
.app-features div:last-child{border-bottom:0!important;}
.audience-grid + .tactical-audience{margin-top:16px;padding:18px 16px;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:rgba(255,255,255,.03);}
.tactical-audience p{margin:0;color:#eff6fb}.tactical-audience strong{display:block;font-size:15px}.tactical-audience small{display:block;margin-top:6px;color:#b9c8d4;font-size:13px;line-height:1.45}
.pricing-inner{max-width:1320px!important;}
.pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-width:1040px;margin:0 auto;gap:28px!important;}
@media(max-width:900px){
 .coaching-grid{width:100%!important;grid-template-columns:1fr!important;border-left:0;border-right:0;}
 .app-section:has(.app-video-wrap){grid-template-columns:1fr!important;max-width:none;}
 .app-copy{grid-column:1;grid-row:1;padding:45px 7vw 25px;}
 .app-video-wrap{grid-column:1;grid-row:2;padding:20px 7vw 35px!important;}
 .pricing-grid{grid-template-columns:1fr!important;max-width:620px;}
}

/* v5 — centered, balanced performance layout */
.coaching-grid{
  width:min(1180px, calc(100% - 80px))!important;
  max-width:1180px!important;
  margin:48px auto!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:30px!important;
  border:0!important;
}
.coaching-card{
  display:grid!important;
  grid-template-columns:minmax(360px,.95fr) minmax(0,1.05fr)!important;
  border:1px solid var(--line)!important;
  border-radius:14px!important;
  overflow:hidden!important;
}
.coaching-card:nth-child(even) .pillar-photo{grid-column:2;grid-row:1;}
.coaching-card:nth-child(even) .card-body{grid-column:1;grid-row:1;}
.coaching-card .pillar-photo{min-height:440px!important;}
.coaching-card .pillar-photo img{height:100%!important;min-height:440px!important;object-fit:cover!important;}
.coaching-card .pillar-photo span{font-size:clamp(52px,6vw,82px)!important;bottom:30px!important;}
.coaching-card .card-body{display:flex;flex-direction:column;justify-content:center;padding:52px!important;}

.app-section:has(.app-video-wrap){
  width:min(1240px, calc(100% - 80px))!important;
  max-width:1240px!important;
  margin:50px auto!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(420px,.95fr)!important;
  border:1px solid var(--line);
  border-radius:14px;
  overflow:hidden;
}
.app-copy{grid-column:1!important;grid-row:1!important;padding:60px 54px!important;}
.app-video-wrap{grid-column:2!important;grid-row:1!important;min-height:0!important;padding:38px!important;align-self:center!important;}
.app-video{width:100%!important;max-width:560px!important;max-height:none!important;aspect-ratio:16/9!important;object-fit:contain!important;border-radius:12px!important;background:#05080b!important;}
.app-features{display:block!important;margin-top:30px!important;}
.app-features div{padding:10px 0!important;text-align:left!important;border-right:0!important;border-bottom:1px solid var(--line)!important;}

.audience-grid{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;gap:16px!important;}
.audience-grid>div{flex:1 1 360px!important;max-width:410px!important;min-height:138px!important;}
.audience-grid .tactical-card{display:flex!important;align-items:flex-start!important;gap:12px!important;padding:18px 16px!important;border:1px solid rgba(255,255,255,.08)!important;border-radius:8px!important;background:rgba(255,255,255,.03)!important;}
.audience-grid .tactical-card p{margin:0;color:#eff6fb!important;}
.audience-grid .tactical-card strong{display:block;font-size:15px!important;}
.audience-grid .tactical-card small{display:block;margin-top:6px;color:#b9c8d4;font-size:13px;line-height:1.45;}
.tactical-audience{display:none!important;}

.pricing-inner{width:min(1100px, calc(100% - 80px))!important;max-width:1100px!important;margin:0 auto!important;}
.pricing-heading{max-width:820px!important;margin-left:auto!important;margin-right:auto!important;text-align:center!important;}
.pricing-grid{
  display:grid!important;
  grid-template-columns:1fr!important;
  width:min(100%,760px)!important;
  max-width:760px!important;
  margin:38px auto 0!important;
  gap:28px!important;
}
.price-card{width:100%!important;margin:0 auto!important;}
.price-card.featured{transform:none!important;}
.pricing-note{max-width:760px!important;margin-left:auto!important;margin-right:auto!important;text-align:center!important;}

@media(max-width:900px){
 .coaching-grid{width:calc(100% - 32px)!important;margin:28px auto!important;}
 .coaching-card{grid-template-columns:1fr!important;}
 .coaching-card:nth-child(even) .pillar-photo,.coaching-card:nth-child(even) .card-body{grid-column:1!important;}
 .coaching-card:nth-child(even) .pillar-photo{grid-row:1!important;}.coaching-card:nth-child(even) .card-body{grid-row:2!important;}
 .coaching-card .pillar-photo{min-height:340px!important;}.coaching-card .pillar-photo img{min-height:340px!important;}
 .coaching-card .card-body{padding:32px!important;}
 .app-section:has(.app-video-wrap){width:calc(100% - 32px)!important;grid-template-columns:1fr!important;margin:28px auto!important;}
 .app-copy{grid-column:1!important;grid-row:1!important;padding:38px 28px 24px!important;}
 .app-video-wrap{grid-column:1!important;grid-row:2!important;padding:20px 28px 38px!important;}
 .pricing-inner{width:calc(100% - 32px)!important;}
}

/* Single coaching package */
.pricing-grid.single-package{grid-template-columns:minmax(0,700px)!important;justify-content:center!important;max-width:700px!important;margin-left:auto!important;margin-right:auto!important;}
.pricing-grid.single-package .price-card{max-width:700px!important;}

/* OPC client app visual: fixed portrait frame on desktop and mobile */
.app-section .app-video-wrap{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.app-section .app-video{
  display:block!important;
  width:min(100%,430px)!important;
  height:auto!important;
  max-width:430px!important;
  max-height:none!important;
  aspect-ratio:2/3!important;
  object-fit:cover!important;
  object-position:center!important;
  border-radius:24px!important;
  background:#05080b!important;
  box-shadow:0 18px 45px rgba(0,0,0,.38)!important;
}
@media(max-width:720px){
  .app-section .app-video-wrap{padding:12px 22px 40px!important;}
  .app-section .app-video{
    width:min(100%,360px)!important;
    max-width:360px!important;
    aspect-ratio:2/3!important;
    object-fit:cover!important;
    border-radius:22px!important;
  }
}

/* Mobile fix: baseline/pricing rows must stay inside card */
@media(max-width:720px){
  .pricing-inner{
    width:calc(100% - 24px)!important;
    padding:55px 0!important;
  }
  .pricing-grid.single-package{
    width:100%!important;
    max-width:100%!important;
  }
  .price-card{
    min-width:0!important;
    padding:28px 18px 22px!important;
    overflow:hidden!important;
  }
  .price-lines div{
    display:grid!important;
    grid-template-columns:minmax(105px, .8fr) minmax(0, 1.2fr)!important;
    align-items:start!important;
    gap:12px!important;
  }
  .price-lines div > span{
    min-width:0!important;
    font-size:13px!important;
    line-height:1.35!important;
  }
  .price-lines strong{
    min-width:0!important;
    width:100%!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
    text-align:right!important;
    align-items:flex-end!important;
  }
  .price-lines small{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    font-size:10.5px!important;
    line-height:1.35!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }
}
@media(max-width:420px){
  .price-card{padding-left:16px!important;padding-right:16px!important;}
  .price-lines div{grid-template-columns:100px minmax(0,1fr)!important;gap:10px!important;}
  .price-lines div > span{font-size:12.5px!important;}
  .price-lines small{font-size:10px!important;}
}

/* OPC 2026 refresh: white / sky blue / black */
:root { --bg:#ffffff; --bg2:#f5f9fd; --panel:#ffffff; --blue:#1498ff; --blue2:#3fb2ff; --text:#080b10; --muted:#53606b; --line:rgba(8,11,16,.12); }
body { background:#fff; color:var(--text); }
.site-header { background:rgba(255,255,255,.96); border-bottom:1px solid rgba(8,11,16,.1); }
.menu-toggle span { background:#080b10; }
.hero { background:#fff; }
.hero-copy { color:#080b10; }
.hero-image { background:#fff; }
.hero-image img { object-fit:contain; object-position:center; }
.btn-outline { color:#080b10; border-color:#1498ff; }
.blocks-section,.training-phases,.app-section,.audience-section,.about-section,.pricing-section,.intake-section,.testimonials-section,.cta-section { background:#fff; color:#080b10; }
.progression-card,.price-card,.testimonial-card,.coaching-card,.nutrition-support,.intake-form { background:#f7faff; color:#080b10; border-color:rgba(8,11,16,.1); }
.blocks-heading p,.phase-purpose,.app-copy p,.about-copy p,.pricing-heading p,.pricing-note,.intake-heading p,.testimonials-heading p { color:#53606b; }
.baseline-showcase { padding:clamp(70px,8vw,120px) clamp(22px,5vw,70px); background:#f7fbff; color:#080b10; overflow:hidden; }
.baseline-inner { max-width:1320px; margin:0 auto; display:grid; grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr); gap:clamp(36px,6vw,90px); align-items:center; }
.baseline-copy h2 { margin:0 0 20px; font-family:"Bebas Neue",sans-serif; font-size:clamp(54px,7vw,96px); line-height:.9; letter-spacing:.2px; }
.baseline-copy h2 span,.baseline-copy .eyebrow { color:#1498ff; }
.baseline-copy p { color:#44515c; font-size:17px; max-width:610px; }
.baseline-copy .btn { margin-top:14px; }
.baseline-carousel-wrap { min-width:0; }
.baseline-carousel { display:flex; gap:20px; overflow-x:auto; scroll-snap-type:x mandatory; padding:8px 8vw 18px 0; scrollbar-width:none; -webkit-overflow-scrolling:touch; }
.baseline-carousel::-webkit-scrollbar { display:none; }
.baseline-slide { flex:0 0 min(390px,78vw); margin:0; scroll-snap-align:start; border-radius:18px; overflow:hidden; box-shadow:0 18px 45px rgba(12,42,70,.14); background:#fff; }
.baseline-slide img { aspect-ratio:9/16; object-fit:cover; }
.carousel-hint { margin-top:12px; color:#1498ff; font-weight:900; font-size:12px; letter-spacing:1.7px; }
@media (max-width: 900px){ .baseline-inner{grid-template-columns:1fr;} .baseline-slide{flex-basis:82vw;} .hero-image img{object-fit:contain;} }

/* FIX 2026-10-14: original hero, readable light theme, single-card baseline carousel */
.hero-image::after{display:none!important;}
.hero-image img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;filter:none!important;transform:none!important;mix-blend-mode:normal!important;opacity:1!important;}
.hero-copy,.hero-copy p,.hero-copy strong,.blocks-section,.blocks-section p,.training-phases,.training-phases p,.app-section,.app-section p,.audience-section,.audience-section p,.about-section,.about-section p,.pricing-section,.pricing-section p,.intake-section,.intake-section p,.testimonials-section,.testimonials-section p{color:#080b10!important;}
.hero h1,.blocks-section h2,.blocks-section h3,.training-phases h2,.training-phases h3,.app-section h2,.audience-section h2,.about-section h2,.pricing-section h2,.pricing-section h3,.intake-section h2,.testimonials-section h2{color:#080b10!important;}
.btn{color:#fff!important;}
.btn-outline{color:#080b10!important;}
.baseline-carousel-wrap{position:relative;max-width:520px;width:100%;margin-inline:auto;}
.baseline-carousel{display:flex!important;gap:0!important;overflow:hidden!important;scroll-behavior:smooth;scroll-snap-type:x mandatory;padding:0!important;width:100%;}
.baseline-slide{flex:0 0 100%!important;width:100%!important;max-width:none!important;border-radius:18px;scroll-snap-align:start;scroll-snap-stop:always;}
.baseline-slide img{display:block;width:100%;height:auto;aspect-ratio:auto!important;object-fit:contain!important;}
.carousel-controls{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:18px;}
.carousel-btn{width:48px;height:48px;border-radius:50%;border:2px solid #1498ff;background:#fff;color:#080b10;font-size:24px;font-weight:900;cursor:pointer;line-height:1;}
.carousel-btn:hover,.carousel-btn:focus-visible{background:#1498ff;color:#fff;}
.carousel-counter{min-width:58px;text-align:center;font-weight:900;color:#080b10;letter-spacing:.08em;}
@media(max-width:900px){.baseline-carousel-wrap{max-width:430px}.baseline-slide{flex-basis:100%!important}.hero-image{min-height:auto!important}.hero-image img{height:auto!important;}}
/* HERO FIX: show the supplied artwork exactly as-is, full width, no overlay or recolouring */
.hero{display:block!important;min-height:0!important;background:#fff!important;overflow:hidden!important;}
.hero-copy{display:none!important;}
.hero-image{width:100%!important;min-height:0!important;height:auto!important;background:#fff!important;overflow:visible!important;}
.hero-image::before,.hero-image::after{display:none!important;content:none!important;}
.hero-image img{display:block!important;width:100%!important;height:auto!important;max-width:none!important;object-fit:contain!important;object-position:center!important;filter:none!important;opacity:1!important;mix-blend-mode:normal!important;transform:none!important;background:#fff!important;}

/* Readability pass — light OPC house style */
body, main { color:#0a1723; }
.blocks-section,.training-phases,.app-section,.audience-section,.about-section,.pricing-section,.intake-section,.testimonials-section,.baseline-showcase { color:#0a1723 !important; }
.blocks-section p,.training-phases p,.app-section p,.audience-section p,.about-section p,.pricing-section p,.intake-section p,.testimonials-section p,.baseline-showcase p,
.progression-card>p,.phase-card>p,.phase-card .phase-purpose,.nutrition-support p,.app-copy>p,.audience-grid p,.audience-grid small,.sport-beroep p,.sport-beroep small,
.price-choice,.price-lines span,.price-lines small,.pricing-note,.testimonials-heading>p:last-child,.testimonial-card>p,.testimonial-names,.testimonial-names strong,.experience-message p,
.baseline-heading>p:last-child,.baseline-card p,.baseline-note { color:#425466 !important; }
.blocks-section h1,.blocks-section h2,.blocks-section h3,.training-phases h1,.training-phases h2,.training-phases h3,.app-section h1,.app-section h2,.app-section h3,
.audience-section h1,.audience-section h2,.audience-section h3,.pricing-section h1,.pricing-section h2,.pricing-section h3,.testimonials-section h1,.testimonials-section h2,.testimonials-section h3,
.progression-flow,.block-cycle,.phase-card>p strong,.experience-message strong,.testimonial-card footer strong,.price-lines strong,.price-lines .price-amount { color:#0a1723 !important; }
.progression-card,.phase-card,.nutrition-support,.price-card,.testimonial-card,.audience-grid div,.sport-beroep { background:#f7fbff !important; border-color:#dbe6ee !important; }
.app-features span,.app-features div { color:#0a1723 !important; }
.app-features { border-color:#dbe6ee !important; }
.app-features div { border-color:#dbe6ee !important; }
.elite-addon,.elite-location { background:#f7fbff !important; color:#0a1723 !important; border-color:#dbe6ee !important; }
.elite-price strong,.elite-flow,.elite-location h4 { color:#0a1723 !important; }
.elite-lead,.elite-location p,.elite-location small,.elite-bottom p { color:#425466 !important; }
.cta-section { background:#eef7ff !important; color:#0a1723 !important; }
.cta-copy p { color:#425466 !important; }
/* Buttons remain high contrast */
.btn { color:#fff !important; }
.btn-outline { color:#0a1723 !important; background:#fff !important; }
/* Header/navigation on white */
.site-header,.main-nav { color:#0a1723; }
.language-switch a { color:#425466; }
.language-switch a:hover { color:#1498ff; }
/* Footer intentionally dark, so keep its text light */
footer, footer a, footer .brand strong { color:#f7fbff !important; }

/* FINAL CONTRAST PASS — all website copy black, navy/blue only as accents */
:root{--text:#05070a;--navy:#0b2742;--blue:#1498ff;}
body,main,section,article,div,p,span,li,label,input,textarea,select,h1,h2,h3,h4,h5,h6,strong,small,a{color:#05070a;}
/* Blue/navy brand accents */
.eyebrow,.section-kicker,.baseline-copy .eyebrow,.baseline-copy h2 span,.carousel-hint,
.logo span,.brand span,.language-switch a:hover{color:#1498ff!important;}
/* Keep interactive blue buttons readable */
.btn,.carousel-btn:hover,.carousel-btn:focus-visible{background:#1498ff!important;color:#fff!important;}
.btn *,.carousel-btn:hover *,.carousel-btn:focus-visible *{color:#fff!important;}
.btn-outline{background:#fff!important;color:#05070a!important;border-color:#1498ff!important;}
/* All light sections/cards: black copy */
.blocks-section *,.training-phases *,.app-section *,.audience-section *,.about-section *,.pricing-section *,.intake-section *,.testimonials-section *,.baseline-showcase *,.cta-section *{color:#05070a;}
/* Restore intended blue accents after broad black rule */
.blocks-section .eyebrow,.training-phases .eyebrow,.app-section .eyebrow,.audience-section .eyebrow,.about-section .eyebrow,.pricing-section .eyebrow,.intake-section .eyebrow,.testimonials-section .eyebrow,.baseline-showcase .eyebrow,
.baseline-copy h2 span,.carousel-hint{color:#1498ff!important;}
.blocks-section .btn,.training-phases .btn,.app-section .btn,.audience-section .btn,.about-section .btn,.pricing-section .btn,.intake-section .btn,.testimonials-section .btn,.baseline-showcase .btn,.cta-section .btn{color:#fff!important;}
/* Forms */
input,textarea,select{background:#fff!important;color:#05070a!important;border-color:#b9c7d3!important;}
input::placeholder,textarea::placeholder{color:#4a5560!important;opacity:1;}
/* Footer is light too, so no white-on-dark text remains */
footer,.site-footer{background:#fff!important;color:#05070a!important;border-top:1px solid #dbe6ee!important;}
footer *,footer a,footer .brand strong,.site-footer *{color:#05070a!important;}
footer a:hover,.site-footer a:hover{color:#1498ff!important;}


/* Final readability + OPC pillar fix */
.coaching-grid .coaching-card .card-body,
.coaching-grid .coaching-card .card-body p,
.coaching-grid .coaching-card .card-body strong { color:#05070a !important; }
.coaching-grid .coaching-card .pillar-photo::after {
  content:"" !important; position:absolute !important; inset:0 !important;
  background:linear-gradient(to top,rgba(5,7,10,.78) 0%,rgba(5,7,10,.18) 42%,rgba(5,7,10,0) 68%) !important;
}
.coaching-grid .coaching-card .pillar-photo span { color:#fff !important; text-shadow:0 2px 14px rgba(0,0,0,.5) !important; z-index:2 !important; }


/* Compact closing baseline CTA */
.baseline-cta{background:#f7fbff;padding:76px 24px;border-top:1px solid #dbe6ee;border-bottom:1px solid #dbe6ee;color:#05070a;}
.baseline-cta-inner{width:min(900px,100%);margin:0 auto;text-align:center;}
.baseline-cta .eyebrow{margin:0 0 12px;color:#1498ff!important;font-weight:800;letter-spacing:.12em;font-size:13px;}
.baseline-cta h2{margin:0;font-size:clamp(38px,5vw,64px);line-height:.96;color:#05070a!important;}
.baseline-cta h2 span{color:#1498ff!important;}
.baseline-cta-lead{max-width:720px;margin:22px auto 0;color:#05070a!important;font-size:18px;line-height:1.65;}
.baseline-cta-points{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;max-width:720px;margin:28px auto;text-align:left;}
.baseline-cta-points div,.baseline-cta-points strong{color:#05070a!important;}
.baseline-cta-points div{padding:13px 15px;background:#fff;border:1px solid #dbe6ee;border-radius:8px;}
.baseline-cta .btn{color:#fff!important;}
/* Every audience item, including tactical professions, uses exactly the same card styling */
.audience-grid>div,.audience-grid>div.tactical-card{display:flex!important;align-items:flex-start!important;gap:12px!important;padding:18px 16px!important;border:1px solid #dbe6ee!important;border-radius:8px!important;background:#f7fbff!important;min-height:138px!important;}
.audience-grid>div p,.audience-grid>div strong,.audience-grid>div small{color:#05070a!important;}
.audience-grid>div span{color:#1498ff!important;}
@media(max-width:700px){.baseline-cta{padding:56px 18px}.baseline-cta-points{grid-template-columns:1fr}.baseline-cta-lead{font-size:16px}}

/* FINAL PILLAR PHOTO FIX — keep original photos untouched; no dark overlay/band */
.coaching-grid .coaching-card .pillar-photo::before,
.coaching-grid .coaching-card .pillar-photo::after {
  content:none !important;
  display:none !important;
  background:none !important;
}
.coaching-grid .coaching-card .pillar-photo img {
  filter:none !important;
  opacity:1 !important;
}
.coaching-grid .coaching-card .pillar-photo span {
  color:#fff !important;
  text-shadow:0 2px 8px rgba(0,0,0,.75),0 1px 3px rgba(0,0,0,.9) !important;
  z-index:2 !important;
}

/* Instagram CTA: readable on light background */
.cta-section .btn-outline[href*="instagram.com"] {
  background: #ffffff !important;
  color: #05070a !important;
  border: 2px solid #1498ff !important;
}
.cta-section .btn-outline[href*="instagram.com"] span {
  color: #05070a !important;
}
.cta-section .btn-outline[href*="instagram.com"]:hover,
.cta-section .btn-outline[href*="instagram.com"]:focus-visible {
  background: #1498ff !important;
  color: #ffffff !important;
}
.cta-section .btn-outline[href*="instagram.com"]:hover span,
.cta-section .btn-outline[href*="instagram.com"]:focus-visible span {
  color: #ffffff !important;
}


/* v3 pillar images — show complete artwork on desktop and mobile */
.coaching-grid .coaching-card .pillar-photo {
  aspect-ratio: 1 / 1 !important;
  min-height: 0 !important;
  height: auto !important;
  background: #fff !important;
  overflow: hidden !important;
}
.coaching-grid .coaching-card .pillar-photo img {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  object-fit: contain !important;
  object-position: center center !important;
  display: block !important;
}
.coaching-grid .coaching-card .pillar-photo span { display:none !important; }
@media (max-width:900px) {
  .coaching-grid .coaching-card .pillar-photo { aspect-ratio:1 / 1 !important; min-height:0 !important; }
  .coaching-grid .coaching-card .pillar-photo img { min-height:0 !important; object-fit:contain !important; }
}

/* v4 — consistent testimonial card layout */
.testimonials-grid { align-items:stretch; grid-auto-rows:1fr; }
.testimonial-card {
  box-sizing:border-box;
  height:100%;
  min-height:660px;
  overflow:hidden;
}
.testimonial-photo {
  display:block;
  width:calc(100% + 60px);
  height:295px;
  min-height:295px;
  margin:-34px -30px 28px;
  object-fit:cover;
  object-position:center center;
}
.testimonial-card > p { flex:1 1 auto; }
.testimonial-card footer { flex:0 0 auto; }
@media (max-width:900px){
  .testimonials-grid{grid-template-columns:1fr; grid-auto-rows:auto;}
  .testimonial-card{height:auto; min-height:0;}
  .testimonial-photo{height:320px; min-height:320px;}
}
@media (max-width:720px){
  .testimonial-photo{
    width:calc(100% + 44px);
    height:250px;
    min-height:250px;
    margin:-28px -22px 24px;
  }
}
