/* ===== NAV ACTIVE COLOR OVERRIDE ===== */
.nav-links a.active { color:#3b4a3a !important; }

/* ===== HERO (Override: Accent BG, grid layout) ===== */
.hero { min-height:80vh; align-items:center; justify-content:flex-start; background:var(--accent); }
.hero-grid { display:grid; grid-template-columns:1fr 1fr; width:100%; max-width:1400px; margin:0 auto; min-height:80vh; }
.hero-img { position:relative; display:flex; align-items:center; justify-content:center; padding:6rem 2rem 4rem 4rem; }
.hero-img img { width:100%; max-width:420px; aspect-ratio:1/1; object-fit:cover; object-position:center top; display:block; opacity:0; animation:fadeIn 1s ease forwards 0.3s; }
.hero-text { display:flex; flex-direction:column; justify-content:center; padding:6rem 4rem 4rem 2rem; opacity:0; animation:slideUp 0.8s ease forwards 0.5s; }
.hero-label { color:rgba(255,255,255,0.6); margin-bottom:1.25rem; }
.hero h1 { font-size:clamp(2.4rem,4.5vw,3.8rem); margin-bottom:1.5rem; }
.hero-sub { color:rgba(255,255,255,0.75); max-width:420px; margin:0; margin-bottom:2rem; }
.hero-traits { display:flex; gap:0.6rem; flex-wrap:wrap; }
.hero-trait { font-size:0.78rem; font-weight:500; letter-spacing:0.04em; text-transform:uppercase; color:#fff; border:1px solid rgba(255,255,255,0.3); padding:0.4rem 1rem; }

/* ===== BLOK 1: OVER JOP ===== */
.over-bio { background:var(--white); }
.over-bio-inner { max-width:960px; margin:0 auto; }
.over-bio-inner h2 { font-weight:600; font-size:clamp(2rem,3.2vw,2.6rem); line-height:1.2; letter-spacing:-0.02em; margin-bottom:2rem; text-align:center; }
.over-bio-cols { display:grid; grid-template-columns:1fr 1fr; gap:3rem; }
.over-bio-cols p { font-size:1.02rem; color:var(--gray-dark); line-height:1.9; margin-bottom:1rem; }

/* ===== BLOK 2: WAT VOOR COACH ===== */
.coach-style { background:var(--sand-light); }
.coach-style-header { text-align:center; margin-bottom:3.5rem; }
.coach-style-header h2 { font-weight:600; font-size:clamp(2rem,3.2vw,2.6rem); line-height:1.2; letter-spacing:-0.02em; margin-bottom:1rem; }
.coach-style-header h2 em { font-style:normal; color:var(--accent); }
.coach-style-header p { font-size:1.02rem; color:var(--gray-dark); line-height:1.85; max-width:600px; margin:0 auto; }
.coach-cards { display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem; }
.coach-card { background:var(--white); padding:2.25rem 2rem; transition:transform 0.4s,box-shadow 0.4s; }
.coach-card:hover { transform:translateY(-3px); box-shadow:0 16px 40px rgba(10,10,8,0.06); }
.coach-card h3 { font-weight:600; font-size:1.05rem; margin-bottom:0.6rem; letter-spacing:-0.01em; }
.coach-card p { font-size:0.95rem; color:var(--gray-dark); line-height:1.8; }
.coach-link { text-align:center; margin-top:2.5rem; }
.coach-link a { color:var(--accent); font-weight:500; text-decoration:none; border-bottom:1px solid var(--accent); transition:opacity 0.3s; font-size:1rem; }
.coach-link a:hover { opacity:0.7; }

/* ===== BLOK 3: VAN ZOEKEN NAAR ZIJN ===== */
.journey { background:var(--white); }
.journey-header { text-align:center; margin-bottom:3.5rem; }
.journey-header h2 { font-weight:600; font-size:clamp(2rem,3.2vw,2.6rem); line-height:1.2; letter-spacing:-0.02em; }
.journey-cols { display:grid; grid-template-columns:repeat(3,1fr); gap:0; }
.journey-step { padding:2.5rem; border-left:1px solid var(--sand); position:relative; text-align:center; }
.journey-step:first-child { border-left:none; }
.journey-step h3 { font-weight:600; font-size:1.2rem; margin-bottom:0.75rem; letter-spacing:-0.01em; }
.journey-step p { font-size:0.98rem; color:var(--gray-dark); line-height:1.85; }
.journey-arrow { position:absolute; right:-12px; top:50%; transform:translateY(-50%); color:var(--sand); font-size:1.2rem; z-index:1; }

/* ===== BLOK 4: WERKWIJZE ===== */
.werkwijze { background:var(--sand-light); }
.werkwijze-header { text-align:center; margin-bottom:3rem; }
.werkwijze-header h2 { font-weight:600; font-size:clamp(2rem,3.2vw,2.6rem); line-height:1.2; letter-spacing:-0.02em; }
.werkwijze-list { max-width:700px; margin:0 auto; }
.werkwijze-item { padding:1.75rem 0; border-bottom:1px solid var(--sand); display:flex; gap:1.5rem; align-items:flex-start; }
.werkwijze-item:last-child { border-bottom:none; }
.werkwijze-num { font-weight:700; font-size:1.1rem; color:var(--accent); min-width:32px; padding-top:0.1rem; }
.werkwijze-content h3 { font-weight:600; font-size:1.05rem; margin-bottom:0.35rem; letter-spacing:-0.01em; }
.werkwijze-content p { font-size:0.98rem; color:var(--gray-dark); line-height:1.8; }

/* ===== RESPONSIVE ===== */
@media (max-width:1024px) {
  .hero-grid { grid-template-columns:1fr; }
  .hero-img { padding:7rem 3rem 2rem; }
  .hero-text { padding:2rem 3rem 4rem; }
}
@media (max-width:860px) {
  .over-bio-cols { grid-template-columns:1fr; }
  .coach-cards { grid-template-columns:1fr; }
  .journey-cols { grid-template-columns:1fr; }
  .journey-step { border-left:none; border-top:1px solid var(--sand); padding:2rem 1rem; }
  .journey-step:first-child { border-top:none; }
  .journey-arrow { display:none; }
}
@media (max-width:520px) {
  .hero h1 { font-size:2.2rem; }
  .hero-img img { max-width:300px; }
}
