/* ============================================================
   ELiN THEME LAYER — loaded AFTER main.css on every interior page.
   Forces the homepage "Nordic Light" look site-wide:
   cool palette, Fraunces/Schibsted/Plex Mono, light surfaces,
   slate bars + loader identical to the homepage 1-second ELiN.
   ============================================================ */

/* 1 ▸ retune the main.css palette to the homepage (cool, not warm taupe) */
:root{
  --ink:#2C2E33;            /* cool dark (was warm taupe) */
  --abyss:#232429;          /* slate — the 1-second ELiN colour */
  --shadow:#474B55;
  --smoke:#4E525A; --dust:#6E7278;
  --gold:#C3A356; --gold-light:#CDDEE6; --gold-pale:#EFE6CC;
  --bone:#EFEEE8; --cream:#E4E2DA; --warm-white:#F7F4ED;
  --muted:#8E8C90; --soft:#B9BCB4;
  --paper:#F6F7F4; --paper-deep:#ECEEEA; --paper-sky:#FBFCFC;
  --paper-ink:#2A2C30; --paper-muted:#4C4E52; --paper-gold:#8F6F2A;
  --fjord:#9DB8C4; --frost:#EAF2F4; --line:#E1E0D9;
}

/* 2 ▸ typography: upright, homepage stack */
body, body * { font-style: normal !important; }
body { background: var(--paper) !important; color: var(--paper-ink) !important;
  font-family: 'Schibsted Grotesk', system-ui, sans-serif; }
h1,h2,h3,.display { font-family:'Fraunces','Iowan Old Style',Georgia,serif; }

/* 3 ▸ light surfaces for the boxes main.css keeps dark */
body.light-page .contact-path, body.light-page .direct-contact, body.light-page .founder-direct,
body.light-page .location-card, body.light-page .insight-card, body.light-page .bl-featured,
body.light-page .vol-card, .voice-card, .article-card, .cta__route, .featured-interview__visual, .name-section {
  background: var(--paper-sky) !important; border: 1px solid #E3E5E0 !important; color: var(--paper-ink) !important;
  --bone: var(--paper-ink); --cream: var(--paper-ink); --warm-white: var(--paper-ink); --soft: var(--paper-muted);
}
.name-section { background: var(--paper) !important; border: 0 !important; }
.voice-card *, .article-card *, .cta__route *, .featured-interview__visual *, .name-section *,
body.light-page .contact-path *, body.light-page .direct-contact *, body.light-page .founder-direct *,
body.light-page .location-card *, body.light-page .insight-card *, body.light-page .bl-featured *,
body.light-page .vol-card * { color: var(--paper-ink) !important; }
.voice-card [class*="gold"], .article-card [class*="gold"], .cta__route [class*="gold"], .name-section [class*="gold"],
body.light-page .insight-card em, body.light-page .bl-featured em, body.light-page .bl-featured__quote,
body.light-page .vol-card em, body.light-page .contact-path em, body.light-page .direct-contact em,
body.light-page .location-card em { color: var(--paper-gold) !important; }
body.light-page .btn--primary, body.light-page .insight-card .btn, body.light-page .bl-featured .btn,
body.light-page .contact-path .btn, body.light-page .direct-contact .btn {
  background: var(--paper-ink) !important; color: #F7F4ED !important; border-color: var(--paper-ink) !important; }
.duo--light::before, .duo--light::after { background: none !important; }

/* 4 ▸ slate bars (nav scrolled + footer) */
.nav.scrolled, body.light-page .nav.scrolled, body.light-page--mist .nav.scrolled {
  background: rgba(43,44,41,0.62) !important; backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); }
.footer, body.light-page .footer { background:#232429 !important; }
.footer, .footer * { font-style: normal !important; }

/* 5 ▸ the 1-second ELiN — identical to the homepage start loader */
.loader { background:#232429 !important;
  background-image: radial-gradient(70% 90% at 50% 42%, rgba(78,98,108,.40), transparent 60%) !important; }
.loader__horizon { display:none !important; }
.loader__brand { font-family:'Fraunces','Iowan Old Style',Georgia,serif !important; font-weight:500 !important;
  font-size:54px !important; letter-spacing:-.02em !important; color:#F7F4ED !important; }
.loader__sub { font-family:'IBM Plex Mono',ui-monospace,monospace !important; font-size:11px !important;
  letter-spacing:.42em !important; text-transform:uppercase !important; color:#9AA0A0 !important; }

/* 6 ▸ mobile menu — full-screen slate, readable */
@media (max-width: 900px) {
  ul.nav__menu { position: fixed !important; inset: 0 !important; display: flex !important; flex-direction: column !important;
    justify-content: center !important; align-items: center !important; gap: 20px !important; margin: 0 !important;
    padding: 80px 24px !important; background:#232429 !important; z-index: 1200 !important; list-style: none !important;
    transition: transform .45s ease !important; }
  ul.nav__menu:not(.nav__menu--open) { transform: translateX(100%) !important; }
  ul.nav__menu.nav__menu--open { transform: translateX(0) !important; }
  ul.nav__menu li { margin: 0 !important; text-align: center !important; }
  ul.nav__menu .nav__link { font-family:'IBM Plex Mono',monospace !important; font-size: 18px !important;
    letter-spacing: .14em !important; text-transform: uppercase !important; color:#F7F4ED !important; font-weight: 500 !important; }
  ul.nav__menu .nav__link--cta { background: var(--gold-light) !important; color:#232429 !important;
    border-radius: 100px !important; padding: 13px 30px !important; font-size: 13px !important; }
}

/* ===== v39 — softer accents on interior pages ===== */
:root{ --paper-gold:#8A6F33; }
.section-label, .eyebrow, .slabel, [class*="__label"] { color:#6E7E88 !important; }
.section-label::before, .eyebrow::before, .slabel::before { background:#9DB8C4 !important; }
h1 em, h2 em, h1 .gold, h2 .gold, .section-title em { color:#A8893D !important; }

/* ===== v40 — slate top bar + homepage typography everywhere ===== */
.nav{ background:#232429 !important; }
.nav .nav__link, .nav .nav__logo, .nav a { color:#F7F4ED !important; }
.nav .nav__link.active { color:#CDDEE6 !important; }
h1,h2,h3,h4,.page-header__title,.section-title,.wp-hero__title,.cta__title,.bl-featured__title{
  font-family:'Fraunces','Iowan Old Style',Georgia,serif !important;
  font-weight:400 !important; letter-spacing:-0.015em; color:var(--paper-ink) !important; }
h1 em,h2 em,.page-header__title em,.section-title em,.wp-hero__title em,.cta__title em{
  font-style:normal !important; color:#A8893D !important; }
body,p,li,.page-header__lede{ font-family:'Schibsted Grotesk',system-ui,sans-serif !important; }
.eyebrow,.slabel,.section-label,.page-header__label,[class*="__label"],[class*="__no"],.nav__link,.btn,[class*="__meta"]{
  font-family:'IBM Plex Mono',ui-monospace,monospace !important; }
.page-header__label{ color:#6E7E88 !important; }

/* ===== v42 — luchtige page-headers (homepage-gevoel) ===== */
.page-header{background:
  radial-gradient(70% 60% at 85% 0%, rgba(157,184,196,.16), transparent 60%),
  radial-gradient(50% 45% at 8% 18%, rgba(195,163,86,.07), transparent 65%) !important;
  padding-top:clamp(150px,19vh,230px) !important; padding-bottom:clamp(60px,9vh,110px) !important;}
.page-header__title{font-weight:300 !important;}
.page-header__lede{color:var(--paper-muted) !important; line-height:1.65 !important;}

/* ===== v43 — namen op foto's altijd leesbaar (Bright Leaders) ===== */
.vol-card__visual{position:relative}
.vol-card__visual-overlay, .bl-featured__visual-overlay{
  background:linear-gradient(180deg, rgba(20,21,24,0) 30%, rgba(20,21,24,.80) 100%) !important;}
body.light-page .vol-card .vol-card__visual-overlay *, .vol-card__visual-overlay *,
body.light-page .bl-featured .bl-featured__visual-overlay *, .bl-featured__visual-overlay *{
  color:#FFFFFF !important; text-shadow:0 1px 16px rgba(0,0,0,.5);}
.vol-card__visual-overlay .vol-card__visual-vol, .bl-featured__visual-overlay [class*="-vol"]{
  color:rgba(255,255,255,.82) !important;}

/* ===== v43 — innovaties: vloeiende paginanavigatie ===== */
@view-transition { navigation: auto; }
::view-transition-old(root){animation:vtOut .38s cubic-bezier(.4,0,.2,1) both}
::view-transition-new(root){animation:vtIn .46s cubic-bezier(.2,.7,.2,1) both}
@keyframes vtOut{to{opacity:0;transform:translateY(-8px)}}
@keyframes vtIn{from{opacity:0;transform:translateY(10px)}}

/* ===== v43 — scroll-gedreven onthulling (moderne CSS, geen JS) ===== */
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    .vol-card,.insight-card,.voice-card,.article-card,.location-card,.contact-path,.bl-featured,
    .service-detail,.cta__route,figure,.wp-hero__cover{
      animation:scrollRise both; animation-timeline:view(); animation-range:entry 0% entry 55%;}
  }
}
@keyframes scrollRise{from{opacity:.001;transform:translateY(26px)}to{opacity:1;transform:none}}

/* ===== v43 — typografische verfijning ===== */
h1,h2,h3,.page-header__title,.section-title{text-wrap:balance}
p,.page-header__lede{text-wrap:pretty}
::selection{background:#EFE6CC;color:#2A2C30}
:focus-visible{outline:2px solid #9DB8C4;outline-offset:3px;border-radius:2px}

/* ===== v43 — micro-interacties ===== */
a{transition:color .25s ease}
.vol-card,.insight-card,.article-card,.voice-card,.cta__route{
  transition:transform .45s cubic-bezier(.2,.7,.2,1), box-shadow .45s ease;}
.vol-card:hover,.insight-card:hover,.article-card:hover,.voice-card:hover,.cta__route:hover{
  transform:translateY(-5px); box-shadow:0 22px 48px rgba(40,60,70,.12) !important;}
.vol-card:hover img{transform:scale(1.035)}
.vol-card img{transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}

/* ===== v44 — mobiel: Bright Leaders compact (foto + naam + link) ===== */
@media (max-width: 640px){
  .vol-card__copy{display:none !important}
  .vol-card__role{font-size:12px !important; margin-bottom:8px !important}
  .bl-featured p, .featured-interview p{
    display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden;}
}

/* ===== v50 — WITTE NAVIGATIE (alle binnenpagina's) ===== */
.nav, .nav.scrolled, body.light-page .nav, body.light-page .nav.scrolled{
  background:#FFFFFF !important; box-shadow:none !important;
  border-bottom:1px solid #E8ECEC !important;}
.nav::after{content:""; position:absolute; left:0; right:0; top:100%; height:5px;
  background:linear-gradient(90deg,#9DB8C4,#CDDEE6 45%,#EAF2F4); opacity:.9}
.nav .nav__link, .nav .nav__logo, .nav a{ color:#2A2C30 !important; }
.nav .nav__link:hover{ color:#5E7888 !important; }
.nav .nav__link.active{ color:#2A2C30 !important; border-bottom:2px solid #9DB8C4 !important; padding-bottom:3px;}
.nav .cta, .nav a.cta{ border:1px solid #2A2C30 !important; color:#2A2C30 !important; background:transparent !important;}
.nav .cta:hover{ background:#232429 !important; color:#F4F7F8 !important;}
/* mobiel menupaneel blijft donker: abyss met fjord-accenten */
@media (max-width: 900px){
  ul.nav__menu{ background:#232429 !important; }
  ul.nav__menu .nav__link{ color:#F4F7F8 !important; border-bottom:1px solid rgba(255,255,255,.08) !important;}
  ul.nav__menu .nav__link.active{ color:#CDDEE6 !important; border-bottom-color:#CDDEE6 !important;}
}

/* ===== v50 — BRIGHT LEADERS: galerij van gezichten ===== */
.bl-featured{ margin-top:clamp(20px,3vh,40px) !important; }
.vol-card{ border:none !important; background:transparent !important; }
.vol-card__visual{ border-radius:6px; overflow:hidden; box-shadow:0 18px 44px rgba(35,36,41,.10);}
.vol-card:hover .vol-card__visual{ box-shadow:0 26px 60px rgba(35,36,41,.16);}
.vol-card__visual img{ aspect-ratio:4/5; object-fit:cover; width:100%;}
@media (max-width: 640px){
  /* alleen gezichten: cover + subtiele naam, verder niets */
  .vol-card__visual-vol, .vol-card__copy, .vol-card__status, .vol-card__role,
  .vol-card__content, .bl-featured__copy, .bl-featured__meta, .bl-featured__quote,
  .bl-featured__title, .bl-featured__content{ display:none !important; }
  .vol-card__visual-name, .bl-featured__visual-name{
    font-size:13px !important; letter-spacing:.08em; font-weight:500;}
  .bl-featured__visual-vol, .bl-featured__visual-role{ display:none !important; }
  .vol-card{ margin-bottom:18px !important; }
}

/* v50.1 — contactknop in de witte balk: ink-outline (geen goud) */
.nav .nav__link--cta, .nav .nav__cta{
  background:transparent !important; border:1px solid #2A2C30 !important;
  color:#2A2C30 !important; border-radius:40px !important;}
.nav .nav__link--cta:hover, .nav .nav__cta:hover{
  background:#232429 !important; color:#F4F7F8 !important;}
/* v50.1 — mobiel BL: ook sectielabels en datumregels weg */
@media (max-width:640px){
  body[data-page="bright-leaders"] .section-label, .bl-featured + .section-label{display:none !important}
}
@media (max-width:640px){ .bl-vol-label{display:none !important} }

/* ===== v51 — ABYSS PAGE-HEADERS: elke binnenpagina opent als de homepage-familie ===== */
.page-header{
  background:#232429 !important;
  background-image:radial-gradient(60% 70% at 85% 0%, rgba(157,184,196,.16), transparent 62%),
    radial-gradient(45% 55% at 8% 100%, rgba(205,222,230,.08), transparent 65%) !important;
  padding-top:clamp(140px,17vh,210px) !important; padding-bottom:clamp(64px,9vh,110px) !important;}
.page-header__title{ color:#F4F7F8 !important; font-family:'Fraunces',Georgia,serif !important;
  font-weight:300 !important; font-size:clamp(44px,5.6vw,82px) !important; line-height:1.04 !important;
  letter-spacing:-0.015em !important;}
.page-header__title em{ color:#CDDEE6 !important; font-style:normal !important;}
.page-header__lede{ color:#B9C6CD !important; font-size:clamp(16px,1.35vw,20px) !important; line-height:1.65 !important;}
.page-header .section-label, .page-header__label{ color:#9DB8C4 !important;}
.page-header .section-label::before, .page-header__label::before{ background:#9DB8C4 !important;}

/* v51 — mobiel: paneel-letters licht houden (fix onzichtbare letters) */
@media (max-width:900px){
  ul.nav__menu .nav__link{ color:#F4F7F8 !important; }
  ul.nav__menu .nav__link.active{ color:#CDDEE6 !important; }
  ul.nav__menu .nav__register{ color:#CDDEE6 !important; }
}
/* register-link in de balk: subtiel onderscheidend */
.nav .nav__register{ color:#5E7888 !important; }
.nav .nav__register:hover{ color:#2A2C30 !important; }

/* ===== v52 — ÉÉN mobiel menu: binnenpagina-paneel = homepage-paneel ===== */
@media (max-width: 900px){
  ul.nav__menu{ background:#232429 !important; justify-content:flex-start !important; align-items:stretch !important;
    gap:0 !important; padding:96px 28px 40px !important; }
  ul.nav__menu .nav__link{ font-family:'IBM Plex Mono',ui-monospace,monospace !important; font-size:18px !important;
    font-weight:400 !important; letter-spacing:.12em !important; text-transform:uppercase;
    color:#F4F7F8 !important; width:100%; padding:15px 0 !important;
    border-bottom:1px solid rgba(255,255,255,.08) !important; font-variation-settings:normal !important;}
  ul.nav__menu .nav__link.active{ color:#CDDEE6 !important; }
  ul.nav__menu .nav__register{ color:#CDDEE6 !important; }
  ul.nav__menu .nav__link--cta, ul.nav__menu .nav__cta{ display:inline-block !important; width:auto !important;
    border:1px solid rgba(244,247,248,.55) !important; border-radius:40px !important;
    padding:13px 26px !important; margin-top:20px !important; color:#F4F7F8 !important; background:transparent !important;}
  .nav__menu .lang-switcher-mobile a{ color:#9AA0A0 !important; font-family:'IBM Plex Mono',monospace !important;
    font-size:13px !important; letter-spacing:.18em;}
  .nav__menu .lang-switcher-mobile a.active, .nav__menu .lang-switcher-mobile a.on{
    color:#F4F7F8 !important; border-bottom:1px solid #CDDEE6; padding-bottom:2px;}
  /* toggle: groter raakvlak, boven het paneel, wordt een X */
  .nav__toggle{ width:48px !important; height:48px !important; z-index:1001 !important; position:relative;
    display:flex; flex-direction:column; justify-content:center; gap:6px; align-items:center;}
  .nav__toggle-bar{ width:22px; height:2px; transition:transform .3s ease, opacity .3s ease, background .3s ease;}
  .nav__toggle--open .nav__toggle-bar{ background:#F4F7F8 !important;}
  .nav__toggle--open .nav__toggle-bar:nth-child(1){ transform:translateY(8px) rotate(45deg);}
  .nav__toggle--open .nav__toggle-bar:nth-child(2){ opacity:0;}
  .nav__toggle--open .nav__toggle-bar:nth-child(3){ transform:translateY(-8px) rotate(-45deg);}
}

/* ===== v52 — NEWS: publicatie-plaquettes (geen cursief) ===== */
.news-item__source{ font-style:normal !important; font-family:'IBM Plex Mono',monospace !important;
  font-size:12px !important; letter-spacing:.14em; text-transform:uppercase; color:#6E7E88 !important;}
.news-item{ display:grid; grid-template-columns:220px 1fr; gap:clamp(20px,3vw,40px); align-items:start;}
.news-plaque{ aspect-ratio:4/3; border-radius:6px; display:flex; flex-direction:column; justify-content:center;
  align-items:center; gap:10px; background:#232429;
  background-image:radial-gradient(70% 80% at 80% 0%, rgba(157,184,196,.18), transparent 60%);}
.news-item:nth-child(even) .news-plaque{ background:#EAF2F4;
  background-image:radial-gradient(70% 80% at 20% 100%, rgba(157,184,196,.25), transparent 65%);}
.news-plaque__mark{ font-family:'Fraunces',Georgia,serif; font-weight:300; font-size:44px; color:#CDDEE6;}
.news-item:nth-child(even) .news-plaque__mark{ color:#2A2C30;}
.news-plaque__name{ font-family:'IBM Plex Mono',monospace; font-size:10px; letter-spacing:.2em;
  text-transform:uppercase; color:#9DB8C4;}
.news-item:nth-child(even) .news-plaque__name{ color:#5E7888;}
@media (max-width:700px){ .news-item{ grid-template-columns:1fr; } .news-plaque{ aspect-ratio:5/2; } }
/* v52.1 — paneel altijd schermvullend + actieve link nooit goud */
@media (max-width: 900px){
  ul.nav__menu{ position:fixed !important; inset:0 !important; display:flex !important;
    flex-direction:column !important; transform:translateX(100%); transition:transform .45s cubic-bezier(.2,.7,.2,1);
    z-index:1000 !important; overflow-y:auto;}
  ul.nav__menu.nav__menu--open{ transform:translateX(0) !important; }
  ul.nav__menu .nav__link.active, ul.nav__menu .nav__link--active,
  ul.nav__menu .nav__link[aria-current], ul.nav__menu a[aria-current="page"]{
    color:#CDDEE6 !important; }
}
.nav__link.active, .nav__link[aria-current="page"]{ }
/* v52.2 — paneel bevrijden (blur weg van de balk) + goud definitief eruit */
.nav{ backdrop-filter:none !important; -webkit-backdrop-filter:none !important; }
ul.nav__menu .nav__link.active, ul.nav__menu.nav__menu--open .nav__link.active,
.nav ul.nav__menu li a.nav__link.active, header ul.nav__menu a.active{
  color:#CDDEE6 !important; }
.news-item em, .news-item i, figcaption{ font-style:normal !important; }
/* v52.3 — nieuwsitem: plaquette links, alle inhoud rechts */
.news-item > *:not(.news-plaque){ grid-column:2; }
.news-plaque{ grid-column:1; grid-row:1 / span 12; align-self:start; position:sticky; top:110px; }
ul.nav__menu .nav__link.active{ border-bottom-color:#CDDEE6 !important; }

/* ===== v53 — quote-share + serie-inschrijving ===== */
.quoteshare{ padding:clamp(40px,6vh,70px) clamp(22px,6vw,72px); background:#FFFFFF;}
.quoteshare__inner{ max-width:860px; margin:0 auto; text-align:center;}
.quoteshare__label{ font-family:'IBM Plex Mono',monospace; font-size:11px; letter-spacing:.22em;
  text-transform:uppercase; color:#5E7888; margin-bottom:22px;}
.quoteshare__card{ width:100%; max-width:720px; border-radius:8px; box-shadow:0 24px 60px rgba(35,36,41,.18);}
.quoteshare__actions{ display:flex; gap:14px; justify-content:center; margin-top:26px; flex-wrap:wrap;}
.quoteshare__btn{ font-family:'IBM Plex Mono',monospace; font-size:12px; letter-spacing:.14em; text-transform:uppercase;
  color:#F4F7F8; background:#232429; border-radius:40px; padding:14px 26px; text-decoration:none;}
.quoteshare__btn--ghost{ background:transparent; color:#2A2C30; border:1px solid #2A2C30;}
.seriessub{ padding:clamp(46px,7vh,84px) clamp(22px,6vw,72px); background:#EAF2F4;
  background-image:radial-gradient(60% 80% at 85% 0%, rgba(157,184,196,.25), transparent 60%);}
.seriessub__inner{ max-width:640px; margin:0 auto; text-align:center;}
.seriessub h3{ font-family:'Fraunces',Georgia,serif; font-weight:300; font-size:clamp(26px,3vw,40px); color:#2A2C30; margin:0 0 10px;}
.seriessub p{ color:#5E7888; margin:0 0 26px;}
.seriessub form{ display:flex; gap:10px; justify-content:center; flex-wrap:wrap;}
.seriessub input[type=email]{ flex:1 1 280px; max-width:360px; padding:15px 20px; border:1px solid #C7D6DC;
  border-radius:40px; font-size:15px; background:#FFFFFF;}
.seriessub button{ font-family:'IBM Plex Mono',monospace; font-size:12px; letter-spacing:.14em; text-transform:uppercase;
  background:#232429; color:#F4F7F8; border:0; border-radius:40px; padding:15px 28px; cursor:pointer;}

/* ===== v53 — inschrijfformulier: rustige blokken ===== */
.register-form .form__group, .form.register-form .form__group{ margin-bottom:18px; }
.register-form .form__label{ display:block; font-family:'IBM Plex Mono',monospace; font-size:11px;
  letter-spacing:.16em; text-transform:uppercase; color:#5E7888; margin-bottom:8px;}
.register-form .form__input, .register-form input[type=text], .register-form input[type=email],
.register-form input[type=tel], .register-form textarea, .register-form select{
  width:100%; box-sizing:border-box; background:#FFFFFF; border:1px solid #C7D6DC; border-radius:8px;
  padding:14px 16px; font-size:15px; font-family:'Schibsted Grotesk',system-ui,sans-serif; color:#2A2C30;
  transition:border-color .25s ease, box-shadow .25s ease;}
.register-form .form__input:focus, .register-form input:focus, .register-form textarea:focus{
  outline:none; border-color:#9DB8C4; box-shadow:0 0 0 3px rgba(157,184,196,.18);}
.register-form .form__textarea{ min-height:120px; resize:vertical;}
.register-form{ background:#F7FAFB; border:1px solid #E1EAED; border-radius:14px;
  padding:clamp(26px,4vw,42px); }
.register-form .form__row{ display:grid; grid-template-columns:1fr 1fr; gap:16px; }
@media (max-width:600px){ .register-form .form__row{ grid-template-columns:1fr; } }

/* ===== v53 — terugkerende waterband ===== */
.waterband{ height:clamp(120px,22vh,220px); background:url('../assets/water-white.jpg') center/cover no-repeat;
  position:relative; }
.waterband::after{ content:""; position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(247,250,251,.5), rgba(247,250,251,0) 30%, rgba(247,250,251,.5)); }

/* ===== v53 — Bright Leaders homepage: witruimte onder Marit weg ===== */
.bl-feature--solo{ margin-bottom:0 !important; }
.bl-serieslink{ margin-top:clamp(18px,2.4vh,28px) !important; margin-bottom:0 !important; }
.home-bl, section.home-bl{ padding-bottom:clamp(40px,6vh,72px) !important; }
/* v55 — whitepaper hero: licht & fris (zie inline wp-light) */

/* ===== v58 — REGISTER prominent + consistent op alle binnenpagina's ===== */
.nav .nav__register{
  border:1px solid #9DB8C4 !important; border-radius:40px !important;
  padding:9px 18px !important; color:#2A2C30 !important; margin-right:10px;
  background:linear-gradient(120deg,#F7FAFB,#EAF2F4 90%) !important;
  font-weight:500 !important; transition:all .3s ease;}
.nav .nav__register:hover{ background:#232429 !important; color:#F4F7F8 !important; border-color:#232429 !important; }
@media (max-width:900px){
  ul.nav__menu .nav__register{ border:1px solid #CDDEE6 !important; border-radius:40px !important;
    display:inline-block !important; width:auto !important; padding:12px 24px !important;
    margin-top:14px !important; background:transparent !important; color:#CDDEE6 !important; }
}


/* ===== v58 — interview-afsluiting: verzorgd i.p.v. los donker vlak ===== */
.quoteshare{ padding:clamp(48px,7vh,90px) clamp(22px,6vw,72px) clamp(30px,4vh,50px) !important;
  background:#F4F7F8 !important; }
.quoteshare__inner{ max-width:760px !important; }
.quoteshare__label{ color:#5E7888 !important; margin-bottom:26px !important; }
.quoteshare__card{ border-radius:10px !important; box-shadow:0 24px 64px rgba(35,36,41,.20) !important;
  max-width:600px !important; }
.quoteshare__actions{ margin-top:28px !important; }
.quoteshare__btn{ background:#232429 !important; }
.quoteshare__btn--ghost{ background:transparent !important; }
/* seriessub direct eronder, zelfde lichte familie zodat het één blok wordt */
.seriessub{ padding:clamp(30px,4vh,50px) clamp(22px,6vw,72px) clamp(56px,8vh,100px) !important;
  background:#F4F7F8 !important; background-image:none !important; }
.seriessub__inner{ max-width:560px !important; border-top:1px solid #DCE6EA; padding-top:clamp(40px,6vh,70px); }
.seriessub h3{ font-size:clamp(24px,2.6vw,34px) !important; }
.seriessub input[type=email]{ border-radius:40px !important; }

/* ===== v58 — Bright Leaders index: levendiger kaarten ===== */
.vol-card{ transition:transform .5s cubic-bezier(.2,.7,.2,1) !important; }
.vol-card__visual{ position:relative; overflow:hidden; border-radius:8px;
  box-shadow:0 14px 40px rgba(35,36,41,.10); transition:box-shadow .5s ease; }
.vol-card__visual img{ transition:transform 1s cubic-bezier(.2,.7,.2,1); }
.vol-card:hover{ transform:translateY(-6px) !important; }
.vol-card:hover .vol-card__visual{ box-shadow:0 28px 64px rgba(35,36,41,.18); }
.vol-card:hover .vol-card__visual img{ transform:scale(1.06); }
.vol-card__visual-overlay{ background:linear-gradient(180deg, transparent 40%, rgba(35,36,41,.78)) !important; }
/* subtiele "lees"-hint die bij hover verschijnt */
.vol-card__visual::after{ content:"Read the conversation →"; position:absolute; left:0; right:0; bottom:0;
  padding:16px 18px; font-family:'IBM Plex Mono',monospace; font-size:11px; letter-spacing:.12em;
  text-transform:uppercase; color:#CDDEE6; opacity:0; transform:translateY(8px);
  transition:opacity .4s ease, transform .4s ease; pointer-events:none; }
.vol-card:hover .vol-card__visual::after{ opacity:1; transform:translateY(0); }

/* ===== v59 — interior mobiel menu: gelijk aan homepage, leesbaar ===== */
@media (max-width:900px){
  /* strikethrough/underline weg (kwam van active/hover decoraties) */
  ul.nav__menu .nav__link, ul.nav__menu .nav__link.active{
    text-decoration:none !important; border-bottom:1px solid rgba(255,255,255,.08) !important; }
  /* links uitlijnen zoals homepage, niet gecentreerd */
  ul.nav__menu{ text-align:left !important; align-items:stretch !important; }
  ul.nav__menu li{ text-align:left !important; }
  /* register: outline-pill, lichte tekst (consistent met homepage) */
  ul.nav__menu .nav__register{
    background:transparent !important; border:1px solid #CDDEE6 !important; border-radius:40px !important;
    color:#CDDEE6 !important; padding:13px 26px !important; width:auto !important;
    display:inline-block !important; margin:16px 12px 0 0 !important; text-decoration:none !important; }
  ul.nav__menu .nav__register:hover{ background:#CDDEE6 !important; color:#232429 !important; }
  ul.nav__menu .nav__link--cta{ display:inline-block !important; width:auto !important;
    border:1px solid rgba(244,247,248,.55) !important; border-radius:40px !important;
    padding:13px 26px !important; margin-top:16px !important; color:#F4F7F8 !important; text-decoration:none !important; }
}

/* ===== v59 — mobiel: sluit-knop (X) altijd zichtbaar en bereikbaar ===== */
@media (max-width:900px){
  .nav__toggle{ position:fixed !important; top:14px; right:18px; z-index:1002 !important;
    width:48px !important; height:48px !important; display:flex !important;
    flex-direction:column; align-items:center; justify-content:center; gap:6px;
    background:transparent; border:0; cursor:pointer; }
  /* als menu open is: toggle-bars worden een duidelijke X in frost-wit */
  .nav__toggle--open .nav__toggle-bar{ background:#F4F7F8 !important; }
  /* extra: tekstlabel "Sluiten" onder de X voor duidelijkheid */
  .nav__toggle--open::after{ content:""; }
}

/* ===== v59 — taalwisselaar rechtsboven: donkergrijs, leesbaar op witte balk ===== */
.nav .lang-switcher a, .lang-switcher a{ color:#5E7888 !important; }
.nav .lang-switcher a:hover{ color:#232429 !important; }
.nav .lang-switcher a.active, .lang-switcher a.active{
  color:#232429 !important; border-bottom-color:#9DB8C4 !important; font-weight:500; }
.nav .lang-switcher__sep, .lang-switcher__sep{ color:#9DB8C4 !important; opacity:.6 !important; }

/* ============================================================
   v60 — WHAT WE DO: editorial scroll-storytelling
   ============================================================ */
/* elke dienst als een 'act' met grote nummer-marker en ademruimte */
.service-detail{ position:relative; padding:clamp(60px,10vh,130px) 0 !important; }
.service-detail + .service-detail{ border-top:1px solid #E3EAEC; }
/* groot, licht editorial nummer als anker links */
.service-detail__head{ display:grid; grid-template-columns:minmax(90px,140px) 1fr; gap:clamp(20px,4vw,56px);
  align-items:start; margin-bottom:clamp(28px,4vh,52px); }
.service-detail__number{ font-family:'Fraunces',Georgia,serif; font-weight:300;
  font-size:clamp(48px,7vw,104px); line-height:.9; color:#CDDEE6; letter-spacing:-.03em; }
.service-detail__title{ font-family:'Fraunces',Georgia,serif; font-weight:300;
  font-size:clamp(34px,4.6vw,64px); line-height:1.04; letter-spacing:-.02em; color:#232429; margin:0; }
.service-detail__title em{ font-style:normal !important; color:#232429; }
/* subtitel zonder cursief, fjord-grijs mono */
.service-detail__subtitle{ display:block; font-family:'IBM Plex Mono',monospace !important;
  font-style:normal !important; font-size:clamp(12px,1.1vw,14px) !important; letter-spacing:.08em;
  text-transform:none; color:#5E7888 !important; font-weight:400 !important; margin-top:16px !important;
  line-height:1.5; max-width:48ch; }
/* body uitgelijnd onder de titelkolom */
.service-detail__body{ display:grid; grid-template-columns:minmax(90px,140px) 1fr; gap:clamp(20px,4vw,56px); }
.service-detail__body .prose{ max-width:62ch; }
.service-detail .prose > p{ font-size:clamp(16px,1.25vw,18px); line-height:1.7; color:#3A3C42; margin:0 0 22px; }
.service-detail .prose > p:first-child{ font-size:clamp(19px,1.7vw,24px); line-height:1.5; color:#232429; }
.service-detail .prose h4{ font-family:'IBM Plex Mono',monospace; font-size:12px; letter-spacing:.18em;
  text-transform:uppercase; color:#5E7888; margin:38px 0 14px; padding-top:18px; border-top:1px solid #E8ECEC; }
.service-detail .prose ul{ list-style:none; padding:0; margin:0 0 22px; }
.service-detail .prose ul li{ position:relative; padding-left:26px; margin-bottom:16px;
  font-size:clamp(15px,1.15vw,17px); line-height:1.65; color:#3A3C42; }
.service-detail .prose ul li::before{ content:""; position:absolute; left:0; top:11px;
  width:10px; height:1px; background:#9DB8C4; }
.service-detail .prose ul li strong{ color:#232429; font-weight:600; }
.service-detail__cta{ margin-top:34px; }
/* banner-beeld per dienst: rustiger, minder hoog */
.service-banner{ border:1px solid #DCE6EA !important; border-radius:10px; }
/* zachte scroll-reveal (expressieve minimalisme) */
.service-detail.reveal{ opacity:0; transform:translateY(24px); transition:opacity .9s ease, transform .9s cubic-bezier(.2,.7,.2,1); }
.service-detail.reveal.in-view{ opacity:1; transform:none; }
@media (prefers-reduced-motion:reduce){ .service-detail.reveal{ opacity:1; transform:none; } }
@media (max-width:760px){
  .service-detail__head, .service-detail__body{ grid-template-columns:1fr; gap:14px; }
  .service-detail__body .prose{ max-width:none; }
  .service-detail__number{ font-size:clamp(40px,12vw,64px); }
}

/* ===== v60 — CEO-differentiator (waarom ELiN) ===== */
.ceo-diff{ position:relative; width:100vw; left:50%; transform:translateX(-50%);
  background:#232429; background-image:
    radial-gradient(65% 90% at 88% 0%, rgba(157,184,196,.20), transparent 60%),
    radial-gradient(50% 70% at 6% 100%, rgba(205,222,230,.10), transparent 65%);
  padding:clamp(64px,11vh,130px) 0; margin:clamp(20px,5vh,60px) 0 0; color:#F4F7F8; }
.ceo-diff__inner{ max-width:1000px; margin:0 auto; padding:0 clamp(26px,6vw,80px); }
.ceo-diff__label{ color:#9DB8C4 !important; }
.ceo-diff__title{ font-family:'Fraunces',Georgia,serif; font-weight:300;
  font-size:clamp(32px,4.6vw,64px); line-height:1.06; letter-spacing:-.02em; margin:10px 0 26px; color:#F4F7F8; }
.ceo-diff__title .gold{ color:#CDDEE6; }
.ceo-diff__lede{ font-size:clamp(18px,1.6vw,24px); line-height:1.6; color:#D7DEDE; max-width:60ch; margin:0 0 18px; }
.ceo-diff__note{ font-family:'IBM Plex Mono',monospace; font-size:13px; letter-spacing:.06em;
  color:#9DB8C4; margin:0; }
.ceo-diff.reveal{ opacity:0; transform:translateY(24px); transition:opacity .9s ease, transform .9s cubic-bezier(.2,.7,.2,1); }
.ceo-diff.reveal.in-view{ opacity:1; transform:none; }

/* ===== v60 — huisregel: geen cursief op what-we-do (em = accent, niet italic) ===== */
.service-detail .prose em, .page-header__title em, .ceo-diff em, .service-detail em{
  font-style:normal !important; font-family:'Fraunces',Georgia,serif !important; }
.page-header__title em{ color:#8A6F33 !important; }
.service-detail .prose em{ color:#232429 !important; font-weight:500; }

/* ============================================================
   v61 — interview-afsluiting: schoon, geen dubbel quote-blok
   ============================================================ */
.iv-close{ background:#F4F7F8; padding:clamp(40px,6vh,72px) clamp(22px,6vw,72px) clamp(56px,8vh,100px); }
.iv-close__inner{ max-width:620px; margin:0 auto; }
/* deel-regel: rustige tekstlinks, geen groot blok */
.iv-close__share{ display:flex; flex-wrap:wrap; align-items:center; gap:10px 22px;
  padding-bottom:clamp(30px,5vh,48px); border-bottom:1px solid #DCE6EA; margin-bottom:clamp(34px,5vh,52px); }
.iv-close__label{ font-family:'IBM Plex Mono',monospace; font-size:11px; letter-spacing:.18em;
  text-transform:uppercase; color:#5E7888; margin-right:6px; }
.iv-close__link{ font-family:'IBM Plex Mono',monospace; font-size:12px; letter-spacing:.08em;
  color:#232429; text-decoration:none; border-bottom:1px solid #9DB8C4; padding-bottom:3px; transition:color .25s, border-color .25s; }
.iv-close__link:hover{ color:#5E7888; border-color:#5E7888; }
/* subscribe: rustig, gecentreerd, leesbare donkere tekst (geen blauw-op-zwart) */
.iv-close__sub{ text-align:center; }
.iv-close__sub h3{ font-family:'Fraunces',Georgia,serif; font-weight:300;
  font-size:clamp(24px,2.6vw,34px); color:#232429; margin:0 0 8px; }
.iv-close__sub p{ color:#5E7888; font-size:15px; margin:0 0 24px; }
.iv-close__sub form{ display:flex; gap:10px; justify-content:center; flex-wrap:wrap; }
.iv-close__sub input[type=email]{ flex:1 1 260px; max-width:320px; padding:14px 18px;
  border:1px solid #C7D6DC; border-radius:40px; font-size:15px; background:#fff; color:#232429;
  font-family:'Schibsted Grotesk',system-ui,sans-serif; }
.iv-close__sub input[type=email]:focus{ outline:none; border-color:#9DB8C4; box-shadow:0 0 0 3px rgba(157,184,196,.18); }
.iv-close__sub button{ font-family:'IBM Plex Mono',monospace; font-size:12px; letter-spacing:.1em;
  text-transform:uppercase; background:#232429; color:#F4F7F8; border:0; border-radius:40px;
  padding:14px 24px; cursor:pointer; transition:background .25s; }
.iv-close__sub button:hover{ background:#3A3C42; }

/* ===== v62 — desktop Register-pill in de hoek (consistent op alle binnenpagina's) ===== */
.nav__cta--register{
  background:linear-gradient(120deg,#F7FAFB,#EAF2F4 90%) !important;
  border:1px solid #9DB8C4 !important; color:#2A2C30 !important;
  margin-right:10px; font-weight:500; }
.nav__cta--register:hover{ background:#232429 !important; color:#F4F7F8 !important; border-color:#232429 !important; }
@media (max-width:900px){
  /* op mobiel verbergen we de hoek-Register (zit al in het uitklapmenu) */
  .nav__cta--register{ display:none !important; }
}

/* ===== v63 — Why ELiN: licht, leesbaar tekstblok (geen donker vlak) ===== */
.why-elin{ max-width:var(--maxw,1200px); margin:0 auto;
  padding:clamp(48px,8vh,96px) clamp(40px,6vw,80px) clamp(36px,5vh,64px);
  border-bottom:1px solid #E3EAEC; }
.why-elin__label{ font-family:'IBM Plex Mono',monospace; font-size:11px; letter-spacing:.22em;
  text-transform:uppercase; color:#5E7888; margin:0 0 18px; }
.why-elin__title{ font-family:'Fraunces',Georgia,serif; font-weight:300;
  font-size:clamp(30px,4vw,56px); line-height:1.08; letter-spacing:-.02em; color:#232429; margin:0 0 24px; max-width:20ch; }
.why-elin__title .gold{ color:#8A6F33; }
.why-elin__lede{ font-size:clamp(18px,1.5vw,22px); line-height:1.6; color:#3A3C42; max-width:60ch; margin:0 0 16px; }
.why-elin__note{ font-family:'IBM Plex Mono',monospace; font-size:13px; letter-spacing:.04em;
  color:#5E7888; margin:0; }
.why-elin.reveal{ opacity:0; transform:translateY(22px); transition:opacity .9s ease, transform .9s cubic-bezier(.2,.7,.2,1); }
.why-elin.reveal.in-view{ opacity:1; transform:none; }
@media (prefers-reduced-motion:reduce){ .why-elin.reveal{ opacity:1; transform:none; } }
@media (max-width:760px){ .why-elin{ padding-left:26px; padding-right:26px; } }

/* ============================================================
   V64 — MOBILE GUTTER (authoritative; loads last)
   .service-detail and friends were declared `padding: ... 0
   !important` here, so the side gutter must be restored here
   too. Mirrors the comfortable phone margin used elsewhere.
   ============================================================ */
@media (max-width: 900px) {
  .service-detail, .why-elin, .begin-search, .cases,
  .vacancies, .news-list, .ideas-cta, .reg-cta, .light-band,
  .founders-direct, .direct-contact, .contact-paths, .candidate-paths,
  .closing-quote, .bl-banner, .wp-section, .author-stream, .block {
    padding-left: max(24px, env(safe-area-inset-left)) !important;
    padding-right: max(24px, env(safe-area-inset-right)) !important;
  }
}
@media (max-width: 480px) {
  .service-detail, .why-elin, .begin-search, .cases,
  .vacancies, .news-list, .ideas-cta, .reg-cta, .light-band,
  .founders-direct, .direct-contact, .contact-paths, .candidate-paths,
  .closing-quote, .bl-banner, .wp-section, .author-stream, .block {
    padding-left: max(20px, env(safe-area-inset-left)) !important;
    padding-right: max(20px, env(safe-area-inset-right)) !important;
  }
}

/* ============================================================
   V65 — Nordic light bands (service page rhythm)
   Full-bleed shimmer of light on water with a slow champagne
   sweep and a few quiet sparkles. Bespoke, CSS-only, calm.
   ============================================================ */
.lightband{ position:relative; width:100vw; left:50%; margin-left:-50vw;
  min-height:clamp(240px,40vh,420px); display:flex; align-items:center; justify-content:center;
  overflow:hidden; isolation:isolate; margin-top:clamp(20px,4vh,40px); margin-bottom:clamp(20px,4vh,40px); }
.lightband__img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover;
  filter:brightness(.31) saturate(1.12) contrast(1.08); }
.lightband__veil{ position:absolute; inset:0; z-index:1;
  background:
    radial-gradient(66% 82% at 50% 48%, rgba(7,12,20,.60), rgba(7,12,20,0) 74%),
    linear-gradient(180deg, rgba(9,15,24,.46) 0%, rgba(9,15,24,.66) 50%, rgba(9,15,24,.50) 100%); }
.lightband__shimmer{ position:absolute; inset:-10%; z-index:2; pointer-events:none;
  background:radial-gradient(38% 56% at 22% 32%, rgba(245,210,140,.30), transparent 62%);
  mix-blend-mode:screen; animation:lbDrift 16s ease-in-out infinite alternate; }
@keyframes lbDrift{ 0%{transform:translate(-5%,-3%) scale(1)} 100%{transform:translate(9%,5%) scale(1.06)} }
.lightband__text{ position:relative; z-index:4; max-width:22ch; text-align:center;
  font-family:var(--display,'Fraunces'); font-weight:500; font-size:clamp(23px,3.2vw,42px);
  line-height:1.14; letter-spacing:-.01em; color:#FCFAF4;
  text-shadow:0 1px 2px rgba(0,0,0,.6), 0 3px 34px rgba(0,0,0,.55); padding:0 26px; }
.lightband__text em{ font-style:italic; color:#F0D9A0; }
.lightband__spark{ position:absolute; z-index:3; width:3px; height:3px; border-radius:50%;
  background:#F6D592; box-shadow:0 0 8px 2px rgba(246,213,146,.55); opacity:0;
  animation:lbTwinkle 5s ease-in-out infinite; }
@keyframes lbTwinkle{ 0%,100%{opacity:0; transform:scale(.6)} 50%{opacity:.9; transform:scale(1)} }
@media (prefers-reduced-motion:reduce){
  .lightband__shimmer{ animation:none; } .lightband__spark{ animation:none; opacity:.4; }
}
