:root{
    --black:#111111;
    --ink:#3c3c3c;
    --silver:#b0b0b0;
    --offwhite:#f5f3ef;
    --white:#ffffff;
    --line:rgba(60,60,60,0.16);
    --display:'Cormorant Garamond', serif;
    --sans:'Work Sans', sans-serif;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  @media (prefers-reduced-motion:reduce){ html{scroll-behavior:auto;} *{animation:none !important; transition:none !important;} }

  body{margin:0; background:var(--offwhite); color:var(--ink); font-family:var(--sans); font-weight:300; line-height:1.6;}
  a{color:inherit;}
  :focus-visible{outline:1px solid var(--black); outline-offset:4px;}
  .wrap{max-width:1280px; margin:0 auto; padding:0 40px;}

  /* ---------- NAV (interne pagina: scrolt gewoon mee, geen fixed logo) ---------- */
  .nav{padding:30px 40px;}
  .nav-inner{display:flex; justify-content:space-between; align-items:center; max-width:1280px; margin:0 auto;}
  .nav-logo img{height:86px; width:auto; display:block; filter:invert(76.47%);}
  .nav-toggle{display:flex; align-items:center; justify-content:center; width:44px; height:44px; background:none; border:1px solid var(--ink); border-radius:1px; cursor:pointer; padding:0; transition:opacity .2s ease;}
  .nav-toggle:hover{opacity:0.7;}
  .nav-toggle .bars{position:relative; width:20px; height:13px; display:block;}
  .nav-toggle .bars span{position:absolute; left:0; width:100%; height:1px; background:var(--ink); transition:transform .25s ease, opacity .2s ease;}
  .nav-toggle .bars span:nth-child(1){top:0;}
  .nav-toggle .bars span:nth-child(2){top:6px;}
  .nav-toggle .bars span:nth-child(3){top:12px;}
  .nav-toggle[aria-expanded="true"] .bars span:nth-child(1){transform:translateY(6px) rotate(45deg);}
  .nav-toggle[aria-expanded="true"] .bars span:nth-child(2){opacity:0;}
  .nav-toggle[aria-expanded="true"] .bars span:nth-child(3){transform:translateY(-6px) rotate(-45deg);}

  .nav-links{position:fixed; inset:0 0 0 auto; width:320px; max-width:82%; background:var(--black); display:flex; flex-direction:column; justify-content:center; align-items:flex-start; gap:30px; padding:60px 46px; list-style:none; margin:0; transform:translateX(100%); transition:transform .35s ease; z-index:60;}
  .nav-links.open{transform:translateX(0);}
  .nav-links a{font-size:0.95rem; letter-spacing:0.08em; text-transform:uppercase; text-decoration:none; color:var(--white); opacity:0.85; transition:opacity .2s ease;}
  .nav-links a:hover{opacity:1;}
  .nav-links .nav-lang{margin-top:14px; padding-top:14px; border-top:1px solid rgba(255,255,255,0.2);}
  .nav-links .nav-lang a{font-size:0.8rem; opacity:0.6;}
  .nav-links .nav-lang a:hover{opacity:1;}
  .nav-links a.active{opacity:1; border-bottom:1px solid var(--white); padding-bottom:2px;}

  .nav-overlay{position:fixed; inset:0; background:rgba(17,17,17,0.4); opacity:0; visibility:hidden; transition:opacity .3s ease; z-index:55;}
  .nav-overlay.open{opacity:1; visibility:visible;}

  /* ---------- INTERNE PAGINA'S ---------- */
  .page-header{padding-top:56px; padding-bottom:44px; border-bottom:1px solid var(--line);}
  .page-header h1{font-family:var(--display); font-style:italic; font-weight:400; font-size:clamp(1.9rem,3.6vw,3.05rem); margin:0; line-height:1.1;}
  .page-intro{font-size:1.05rem; max-width:56ch; margin:22px 0 0; color:var(--ink);}
  .page-content{padding-top:64px; padding-bottom:140px;}
  .page-content h2{font-family:var(--display); font-style:italic; font-weight:400; font-size:1.7rem; margin:0 0 18px;}
  .page-content h4{font-family:var(--sans); font-weight:500; font-size:0.9rem; letter-spacing:0.02em; margin:26px 0 8px; color:var(--ink);}
  .page-content p{margin:0 0 20px; max-width:68ch;}
  .page-block{margin-bottom:64px; padding-bottom:64px; border-bottom:1px solid var(--line);}
  .page-block:last-child{margin-bottom:0; padding-bottom:0; border-bottom:none;}

  /* ---------- COACHING: brede, rustige hero-banner ---------- */
  .coaching-hero-wrap{margin-top:44px;}
  .coaching-hero{aspect-ratio:2.4/1; background-color:#dcdcdc; background:repeating-linear-gradient(125deg, #dcdcdc 0 4px, #c2c2c2 4px 9px);}

  /* ---------- COACHING: zakelijke, overzichtelijke tekstblokken ---------- */
  .coaching-block{max-width:none; font-size:0.92rem;}
  .coaching-block h2{font-size:1.4rem;}
  .coaching-note{font-style:italic; color:var(--silver); margin-top:-4px;}

  /* ---------- COACHING: twee kolommen naast elkaar, gescheiden door lijn ---------- */
  .coaching-grid{display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:start; max-width:none; border-bottom:1px solid var(--line); margin-bottom:40px; padding-bottom:40px;}
  .coaching-col{font-size:0.92rem;}
  .coaching-col h2{font-size:1.4rem;}
  .coaching-col:nth-child(2){border-left:1px solid var(--line); padding-left:44px;}
  .coaching-intro{margin-top:0;}
  @media (max-width:900px){
    .coaching-grid{grid-template-columns:1fr; gap:48px;}
    .coaching-col:nth-child(2){border-left:none; padding-left:0;}
  }

  .coaching-list{display:flex; flex-direction:column; gap:10px; margin:0 0 20px; padding:0; list-style:none;}
  .coaching-item{max-width:60ch; padding-left:18px; position:relative;}
  .coaching-item::before{content:"\2013"; position:absolute; left:0; color:var(--silver);}
  .coaching-item .label{font-weight:500; color:var(--ink);}

  /* ---------- COACHING: video-tegels (placeholder, nog geen werkende link) ---------- */
  .video-grid{display:grid; grid-template-columns:repeat(3, 1fr); gap:16px; margin:8px 0 28px;}
  .video-tile{display:flex; flex-direction:column; gap:10px;}
  .video-thumb{aspect-ratio:16/9; background:repeating-linear-gradient(125deg, #dcdcdc 0 4px, #c2c2c2 4px 9px); display:flex; align-items:center; justify-content:center;}
  .play-icon{width:44px; height:44px; border-radius:50%; background:rgba(17,17,17,0.55); color:var(--white); display:flex; align-items:center; justify-content:center; font-size:0.85rem; padding-left:3px;}
  .video-label{font-size:0.8rem; color:var(--ink); opacity:0.75;}
  @media (max-width:720px){.video-grid{grid-template-columns:1fr 1fr;}}
  @media (max-width:480px){.video-grid{grid-template-columns:1fr;}}

  /* ---------- COACHING: inklapbare algemene voorwaarden ---------- */
  .coaching-accordion summary{cursor:pointer; font-size:0.95rem; letter-spacing:0.02em; list-style:none; display:flex; align-items:center; justify-content:space-between; color:var(--ink);}
  .coaching-accordion summary::-webkit-details-marker{display:none;}
  .coaching-accordion summary::after{content:"+"; font-size:1.2rem; line-height:1; color:var(--silver); transition:transform .2s ease;}
  .coaching-accordion[open] summary::after{transform:rotate(45deg);}
  .coaching-accordion-content{padding-top:20px;}
  .coaching-accordion-content p{margin:0 0 16px; max-width:70ch;}
  .coaching-accordion-content ul{margin:0 0 16px; padding-left:20px; max-width:70ch;}
  .coaching-accordion-content li{margin-bottom:6px;}

  footer{background:var(--offwhite); border-top:1px solid var(--line); padding:40px 0;}
  .footer-inner{display:flex; justify-content:flex-end; align-items:center; flex-wrap:wrap; gap:16px; font-size:0.78rem; letter-spacing:0.03em;}
  footer a{text-decoration:none; border-bottom:1px solid transparent;}
  footer a:hover{border-color:var(--ink);}
  .footer-links{display:flex; flex-wrap:wrap; gap:22px;}

  .reveal{opacity:0; transform:translateY(14px); transition:opacity .8s ease, transform .8s ease;}
  .reveal.in{opacity:1; transform:translateY(0);}

@media (max-width:600px){
  .nav-logo{left:20px;}
  .nav-logo img{height:auto; width:46vw; max-width:220px;}
}
