/* ============================================================
   NACHTRESET, HET BOEK: gedeelde stijl voor alles achter de kaft
   ------------------------------------------------------------
   Zelfde taal als de homepage (index.html): mist en petrol,
   Geist en Geist Mono, oranje als accent, bergruggen als overgang.
   Dit bestand wordt als LAATSTE stylesheet in de <head> geladen en
   zet de oudere kleuren en lettertypes van de hoofdstukken, het
   portaal en de losse pagina's om naar die ene stijl.
   Wie hier een kleur wijzigt, wijzigt hem overal behalve op de
   homepage zelf (die heeft dezelfde waarden in index.html staan).
   ============================================================ */

:root{
  color-scheme:light;
  --mist:#EEF3F5; --wit:#F7FAFB; --inkt:#0F222C; --zacht:#3F5560; --petrol:#06465F; --nacht:#0B1C24;
  --oranje:#F2691F; --oranje-diep:#D9530C; --op-oranje:#1A0E06;
  --lijn:rgba(15,34,44,.16); --lijn-zacht:rgba(15,34,44,.09);
  --boek-display:'Geist',system-ui,-apple-system,'Segoe UI',sans-serif;
  --boek-mono:'Geist Mono',ui-monospace,Menlo,monospace;
  --kolom:680px;

  /* oude namen, nieuwe waarden (hoofdstukken) */
  --bg:var(--wit); --bg-soft:var(--mist); --bg-card:#fff; --bg-tint:var(--mist); --bg-warm:#FDF1E8; --band:var(--mist);
  --paper:var(--wit); --paper-warm:var(--mist); --paper-card:#fff;
  --ink:var(--inkt); --ink-soft:var(--zacht); --ink-dim:var(--zacht); --ink-mid:var(--zacht); --ink-mute:#5B6E78; --ink-muted:#5B6E78; --muted:#5B6E78;
  --text-dark:var(--inkt); --text-mid:var(--zacht); --text-muted:#5B6E78;
  --orange:#E65C12; --orange-deep:var(--oranje-diep); --orange-d:var(--oranje-diep); --orange-mid:var(--oranje-diep);
  --orange-soft:#F58A4B; --orange-s:#F58A4B; --orange-light:#FDF1E8;
  --orange-glow:rgba(242,105,31,.10); --orange-g:rgba(242,105,31,.10);
  --terra:#E65C12; --terra-dark:var(--oranje-diep); --terra-soft:#F58A4B;
  --teal:var(--petrol); --teal-light:rgba(6,70,95,.07);
  --line:var(--lijn); --line-strong:rgba(15,34,44,.24); --line-s:rgba(15,34,44,.24); --rule:var(--lijn); --border:var(--lijn);
  --navy:var(--petrol); --blue-gray:#5B6E78;
  --green:#1F7A5A; --green-g:rgba(31,122,90,.10); --green-light:rgba(31,122,90,.09); --success:#1F7A5A;
  --radius:18px;
  --font:var(--boek-display); --font-iaw:var(--boek-display);

  /* Lars en de hoofdstukbalk */
  --nr-ink:var(--inkt); --nr-ink-soft:var(--zacht); --nr-paper:#fff; --nr-paper-warm:var(--mist); --nr-paper-cool:#fff;
  --nr-primary:var(--petrol); --nr-primary-deep:var(--nacht); --nr-primary-soft:#3F6B7D;
  --nr-accent:var(--oranje); --nr-accent-deep:var(--oranje-diep); --nr-accent-soft:#FFB98A;
  --nr-muted:#5B6E78; --nr-line:var(--lijn); --nr-line-soft:var(--lijn-zacht);
  --nr-serif:var(--boek-display); --nr-sans:var(--boek-display);
}

/* ---------- basis ---------- */
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:var(--wit) !important;color:var(--inkt);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
body,h1,h2,h3,h4,h5,h6,p,span,div,a,button,input,textarea,select,li,em,strong,small,label,blockquote,figcaption,td,th,cite,summary,text,tspan{
  font-family:var(--boek-display) !important;
}
h1,h2,h3,h4{letter-spacing:-0.03em;text-wrap:balance;font-style:normal !important}
h1 em,h2 em,h3 em{font-style:normal !important}
p{text-wrap:pretty}
::selection{background:rgba(242,105,31,.28);color:var(--inkt)}
:focus-visible{outline:2px solid var(--oranje);outline-offset:3px}
[hidden]{display:none !important}
img,svg{max-width:100%}

/* ---------- hoofdstukbalk (bovenaan elk hoofdstuk) ---------- */
.iaw-modulebar{
  position:sticky;top:0;z-index:200;display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:8px clamp(14px,3.5vw,40px);min-height:56px;
  background:rgba(238,243,245,.86);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
  border-bottom:1px solid var(--lijn);color:var(--inkt);font-size:14px;
}
.iaw-modulebar a{color:var(--inkt);text-decoration:none;display:inline-flex;align-items:center;min-height:44px;padding:0 10px;border-radius:999px;transition:background .2s,color .2s}
.iaw-modulebar a:hover{background:rgba(6,70,95,.08)}
.iaw-mb-brand{gap:10px;font-family:var(--boek-mono) !important;font-size:12px !important;letter-spacing:.2em;text-transform:uppercase;font-weight:500;padding-left:0 !important}
.iaw-mb-brand:hover{background:transparent !important}
.iaw-mb-brand svg{width:24px;height:22px;flex:none;overflow:visible}
.iaw-mb-brand svg path{fill:rgba(6,70,95,.06);stroke:var(--petrol);stroke-width:1;vector-effect:non-scaling-stroke;stroke-linejoin:round}
.iaw-mb-mid{font-family:var(--boek-mono) !important;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--petrol);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.iaw-mb-mid b{font-weight:400;color:#5B6E78}
.iaw-mb-nav{display:flex;align-items:center;gap:2px;flex:none}
.iaw-mb-nav .sep{display:none}
.iaw-mb-nav .disabled{opacity:.35;padding:0 10px}
.iaw-mb-nav a.volgende{border:1px solid var(--lijn);padding:0 16px}
.iaw-mb-nav a.volgende:hover{border-color:var(--petrol)}
@media(max-width:760px){
  .iaw-mb-mid{display:none}
  .iaw-mb-brand span.woord{display:none}
  .iaw-modulebar{font-size:14px;gap:6px}
}

/* leeslint: dunne oranje lijn rechts die meeloopt met het lezen (zoals op de kaft) */
.boek-leeslint{position:fixed;top:0;right:clamp(4px,1.2vw,18px);width:2px;height:100vh;z-index:190;pointer-events:none;background:rgba(15,34,44,.08)}
.boek-leeslint i{display:block;width:100%;height:100%;background:var(--oranje);box-shadow:0 0 10px rgba(242,105,31,.6);transform-origin:top;transform:scaleY(var(--lees,0))}
/* de oude voortgangsbalkjes bovenaan maken plaats voor de leeslint */
.progress-bar,.progress-bar-container{display:none !important}

/* ---------- hoofdstukopening ---------- */
body .module-header{
  position:relative;overflow:hidden;isolation:isolate;
  background:linear-gradient(to bottom,#D5E4EA 0,#E4EDF1 48%,var(--mist) 100%) !important;
  color:var(--inkt) !important;border:0 !important;
  padding:clamp(72px,11vw,128px) max(clamp(20px,5vw,64px),calc((100% - 980px) / 2)) clamp(150px,20vw,230px) !important;
  margin:0 !important;max-width:none !important;width:auto !important;text-align:left !important;display:block !important;
}
body .module-header > *{position:relative;z-index:2;margin-left:0 !important;margin-right:0 !important}
/* het grote hoofdstukcijfer in contourlijn */
body .module-header::before{
  content:attr(data-nr) !important;position:absolute !important;z-index:1;inset:auto !important;
  right:clamp(-10px,3vw,60px) !important;top:clamp(10px,4vw,40px) !important;left:auto !important;bottom:auto !important;
  width:auto !important;height:auto !important;border:0 !important;border-radius:0 !important;background:none !important;
  font-family:var(--boek-display);font-weight:200;letter-spacing:-0.06em;line-height:.8;
  font-size:clamp(9rem,30vw,24rem);color:transparent;-webkit-text-stroke:1px rgba(6,70,95,.22);
  pointer-events:none;user-select:none;filter:none !important;opacity:1 !important;transform:none;
  animation:boek-cijfer 1.4s cubic-bezier(.2,.7,.2,1) both;
}
/* bergruggen onderaan, de voorste rug heeft de kleur van de bladzijde */
body .module-header::after{
  content:"" !important;position:absolute !important;z-index:1;left:0 !important;right:0 !important;bottom:-1px !important;top:auto !important;
  width:100% !important;height:clamp(120px,19vw,240px) !important;border:0 !important;border-radius:0 !important;
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 240' preserveAspectRatio='none'%3E%3Cpath fill='%23F7FAFB' d='M0 190 C120 160 210 205 330 182 C470 154 560 204 700 186 C850 166 930 210 1080 184 C1220 160 1330 196 1440 176 L1440 240 L0 240 Z'/%3E%3C/svg%3E") bottom/100% 100% no-repeat,
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 240' preserveAspectRatio='none'%3E%3Cpath fill='%2306465F' fill-opacity='.16' d='M0 150 C140 100 250 160 400 128 C540 98 640 150 790 120 C930 92 1040 150 1190 116 C1300 92 1380 120 1440 104 L1440 240 L0 240 Z'/%3E%3C/svg%3E") bottom/100% 100% no-repeat,
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 240' preserveAspectRatio='none'%3E%3Cpath fill='%2306465F' fill-opacity='.10' d='M0 96 C160 30 300 110 470 62 C620 20 740 96 900 54 C1050 16 1180 90 1320 46 C1380 28 1420 40 1440 34 L1440 240 L0 240 Z'/%3E%3C/svg%3E") bottom/100% 100% no-repeat !important;
  pointer-events:none;filter:none !important;opacity:1 !important;transform:none !important;animation:none !important;
}
body .module-header .module-label{
  font-family:var(--boek-mono) !important;font-size:12px !important;font-weight:400 !important;letter-spacing:.2em !important;text-transform:uppercase;
  color:var(--petrol) !important;display:flex;align-items:center;gap:12px;margin-bottom:22px !important;
  animation:boek-op .8s .05s cubic-bezier(.2,.7,.2,1) both;
}
body .module-header .module-label::before{content:"" !important;display:inline-block;width:8px !important;height:8px !important;border-radius:50%;background:var(--oranje) !important;flex:none;animation:boek-adem 10s ease-in-out infinite}
body .module-header h1{
  font-size:clamp(2.7rem,8vw,5.6rem) !important;line-height:.95 !important;letter-spacing:-0.05em !important;font-weight:650 !important;
  color:var(--inkt) !important;max-width:12em;margin-top:0 !important;margin-bottom:22px !important;text-wrap:balance;
  animation:boek-op .9s .12s cubic-bezier(.2,.7,.2,1) both;
}
body .module-header h1 em,body .module-header h1 strong{color:var(--petrol) !important;font-style:normal !important;font-weight:650 !important}
body .module-header .module-sub{
  font-size:clamp(1.08rem,2.1vw,1.3rem) !important;line-height:1.5 !important;color:var(--zacht) !important;max-width:33em !important;font-weight:400 !important;
  animation:boek-op .9s .2s cubic-bezier(.2,.7,.2,1) both;
}
body .module-header .module-meta{display:flex !important;flex-wrap:wrap;gap:8px 22px !important;margin-top:28px !important;animation:boek-op .9s .28s cubic-bezier(.2,.7,.2,1) both}
body .module-header .module-meta .meta-item{font-family:var(--boek-mono) !important;font-size:12px !important;letter-spacing:.14em;text-transform:uppercase;color:var(--petrol) !important;display:flex;align-items:center;gap:8px}
body .module-header .module-meta .meta-dot{width:5px !important;height:5px !important;border-radius:50%;background:var(--oranje) !important;flex:none}
body .module-header .mh-scroll-hint{display:none !important}
@keyframes boek-op{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes boek-cijfer{from{opacity:0;transform:translateY(-24px) scale(1.04)}to{opacity:1;transform:none}}
@keyframes boek-adem{0%,100%{transform:scale(.7);box-shadow:0 0 0 0 rgba(242,105,31,0)}40%{transform:scale(1.1);box-shadow:0 0 0 6px rgba(242,105,31,.16)}}
@media(max-width:600px){
  body .module-header{padding:64px 20px 130px !important}
  body .module-header::before{font-size:11rem;right:-6px !important;top:18px !important}
}

/* ---------- inhoud van het hoofdstuk (was: leerpas) ---------- */
body .leerpas{
  background:transparent !important;border:0 !important;box-shadow:none !important;border-radius:0 !important;
  max-width:var(--kolom) !important;width:auto !important;margin:0 auto !important;padding:8px 20px clamp(40px,7vw,72px) !important;position:static !important;
}
body .leerpas__title{
  font-family:var(--boek-mono) !important;font-size:12px !important;letter-spacing:.2em !important;text-transform:uppercase;font-weight:400 !important;
  color:var(--petrol) !important;text-align:left !important;margin:0 0 14px !important;padding:0 !important;display:block !important;
}
body .leerpas__title::before,body .leerpas__title::after{display:none !important}
body .leerpas__list{display:block !important;border:0 !important;border-top:1px solid var(--inkt) !important;border-radius:0 !important;background:transparent !important;box-shadow:none !important;padding:0 !important;margin:0 !important;max-width:none !important;overflow:visible !important}
body .leerpas__step{
  display:grid !important;grid-template-columns:5ch 1fr auto !important;gap:2px 14px !important;align-items:baseline !important;
  padding:14px 4px !important;margin:0 !important;border:0 !important;border-bottom:1px solid var(--lijn) !important;border-radius:0 !important;
  background:transparent !important;text-decoration:none !important;color:var(--inkt) !important;min-height:56px;transition:background .2s,padding .2s;
}
body .leerpas__step:hover{background:rgba(6,70,95,.05) !important;padding-left:10px !important}
body .leerpas__step::after{content:"\2193";grid-column:3;grid-row:1 / span 2;align-self:center;color:var(--petrol);font-size:15px;opacity:.6;position:static !important;border:0 !important;width:auto !important;height:auto !important;transform:none !important;background:none !important}
body .leerpas__step-num{font-family:var(--boek-mono) !important;font-size:12px !important;letter-spacing:.1em;color:var(--petrol) !important;grid-row:1 / span 2;background:none !important;border:0 !important;width:auto !important;height:auto !important;font-weight:400 !important;padding:0 !important}
body .leerpas__step-label{font-size:1.08rem !important;font-weight:600 !important;letter-spacing:-0.02em;color:var(--inkt) !important;grid-column:2}
body .leerpas__step-desc{font-size:.93rem !important;color:var(--zacht) !important;grid-column:2}
body .leerpas__step svg,body .leerpas__step .leerpas__arrow{display:none !important}

/* ---------- leestekst: rustiger, groter, zoals een bladzijde ---------- */
body section.chapter .wrap > p:not([class*="bron"]):not([class*="source"]):not([class*="src"]):not([class*="ref"]):not([class*="cap"]):not([style*="font-size"]),
body .section__inner > p:not([class*="bron"]):not([class*="source"]):not([class*="src"]):not([class*="ref"]):not([class*="cap"]):not([style*="font-size"]),
body section.sec > p:not([class*="bron"]):not([class*="source"]):not([class*="src"]):not([class*="ref"]):not([class*="cap"]):not([style*="font-size"]),
body .content-wrap .section > p:not([class*="bron"]):not([class*="source"]):not([class*="src"]):not([class*="ref"]):not([class*="cap"]):not([style*="font-size"]),
body main.main .section > p:not([class*="bron"]):not([class*="source"]):not([class*="src"]):not([class*="ref"]):not([class*="cap"]):not([style*="font-size"]),
body main > section.section > p:not([class*="bron"]):not([class*="source"]):not([class*="src"]):not([class*="ref"]):not([class*="cap"]):not([style*="font-size"]){
  font-size:clamp(1.03rem,1.1vw + .8rem,1.14rem) !important;line-height:1.72 !important;color:var(--zacht) !important;
}
body section.chapter .wrap > p strong,body .section__inner > p strong,body section.sec > p strong,body .content-wrap .section > p strong,body main.main .section > p strong,body main > section.section > p strong{color:var(--inkt);font-weight:600}
body h2{color:var(--inkt)}
body h2 em,body h3 em{color:var(--petrol) !important}
/* kleine opschriften boven een deel: mono, petrol */
body .eyebrow,body .section-label,body .sec-label,body .section__num,body .chapter-num,body .section-num,body .deel-label,body .section-tag,body .sec-eyebrow,body .hbox-label,body .oef-label{
  font-family:var(--boek-mono) !important;letter-spacing:.16em !important;text-transform:uppercase;color:var(--petrol) !important;font-weight:400 !important;font-style:normal !important;
}
body .eyebrow::before,body .sec-label::before,body .section__num::before{background:var(--oranje) !important}
/* eerste-letter-versiering uit de oude opmaak hoort niet bij deze stijl */
body .dropcap::first-letter,body .story p:first-of-type::first-letter,body p.lead::first-letter,body .section__inner > p:first-of-type::first-letter{float:none !important;font-size:inherit !important;line-height:inherit !important;color:inherit !important;margin:0 !important;padding:0 !important;font-weight:inherit !important;font-family:inherit !important}

/* kaarten en invulvelden */
body textarea,body input[type=text],body input[type=email],body input[type=password],body select{
  border:1px solid var(--lijn) !important;border-radius:12px !important;background:#fff !important;color:var(--inkt) !important;
}
body textarea:focus,body input[type=text]:focus,body input[type=email]:focus,body input[type=password]:focus,body select:focus{outline:2px solid var(--oranje) !important;outline-offset:1px;border-color:transparent !important}
body textarea{min-height:110px;line-height:1.6;padding:14px 16px}

/* hoofdknoppen: oranje met donkere letter, net als op de kaft */
body .start-btn,body .nav-btn.primary,body .loop-btn.primary,body .btn-pay,body .btn-primary,body .btn-orange,body .btn-auth,body .m0-start a,
body .m0-card .btn-go,body .module-card .btn-open,body .lars-send,body .chat-send,body .iaw-lars-send,body .btn-confirm-yes,body .lars__cta,body .checkin__btn,
body .hertest-btn,body .tw-btn,body .btn-cta,body .cta-btn{
  background:var(--oranje) !important;border:1px solid var(--oranje) !important;color:var(--op-oranje) !important;border-radius:999px !important;font-weight:500 !important;
  text-transform:none !important;letter-spacing:0 !important;min-height:48px;transition:transform .2s,box-shadow .3s;
}
body .start-btn:hover,body .nav-btn.primary:hover:not(:disabled),body .loop-btn.primary:hover,body .btn-pay:hover,body .btn-primary:hover,body .btn-orange:hover,body .btn-auth:hover,body .m0-start a:hover,
body .m0-card .btn-go:hover,body .module-card .btn-open:hover,body .iaw-lars-send:hover:not(:disabled),body .btn-confirm-yes:hover,body .hertest-btn:hover,body .tw-btn:hover{
  background:var(--oranje) !important;transform:translateY(-1px);box-shadow:0 8px 24px -8px rgba(242,105,31,.6);
}

/* ---------- Lars in de kantlijn ---------- */
.iaw-lars-inline{margin:28px 0}
.iaw-lars-inline-card{
  background:#fff;border:1px solid var(--lijn);border-left:2px solid var(--oranje);border-radius:4px 18px 18px 4px;
  box-shadow:0 22px 48px -30px rgba(6,70,95,.5);overflow:hidden;max-width:var(--kolom);margin:0 auto;
}
.iaw-lars-inline-head{display:flex;align-items:center;gap:12px;padding:16px 20px 12px;background:transparent;color:var(--inkt);border-bottom:1px solid var(--lijn-zacht)}
.iaw-lars-avatar{
  width:36px;height:36px;border-radius:50%;background:var(--petrol);color:#fff;display:flex;align-items:center;justify-content:center;
  font-weight:500;font-size:15px;flex:none;font-style:normal;position:relative;
}
.iaw-lars-avatar::after{content:"";position:absolute;right:-1px;bottom:-1px;width:9px;height:9px;border-radius:50%;background:var(--oranje);border:2px solid #fff;animation:boek-adem 10s ease-in-out infinite}
.iaw-lars-name{font-size:16px;font-weight:600;letter-spacing:-0.01em;color:var(--inkt)}
.iaw-lars-sub{font-family:var(--boek-mono) !important;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--petrol);font-weight:400;margin-top:2px}
.iaw-lars-messages{display:flex;flex-direction:column;gap:12px;overflow-y:auto}
.iaw-lars-inline .iaw-lars-messages{padding:20px;min-height:120px;max-height:460px;background:#fff}
.iaw-lars-inline .iaw-lars-messages:empty{display:none}
.iaw-lars-msg{padding:12px 16px;border-radius:14px;font-size:16px;line-height:1.55;max-width:88%;white-space:pre-wrap;animation:boek-op .35s ease both}
.iaw-lars-msg.is-lars{background:var(--mist);color:var(--inkt);align-self:flex-start;border-bottom-left-radius:4px}
.iaw-lars-msg.is-user{background:var(--petrol);color:#F4F7F8;align-self:flex-end;border-bottom-right-radius:4px}
.iaw-lars-msg.is-thinking{background:transparent;color:#5B6E78;padding:6px 2px;display:flex;align-items:center;gap:8px;font-size:14px}
.iaw-lars-msg.is-thinking::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--oranje);animation:boek-denk 1.2s ease-in-out infinite}
@keyframes boek-denk{0%,100%{transform:scale(.6);opacity:.5}50%{transform:scale(1.15);opacity:1}}
.iaw-lars-input-row{display:flex;gap:8px;padding:12px 14px;border-top:1px solid var(--lijn-zacht);background:var(--wit)}
.iaw-lars-input-row input{flex:1;min-width:0;min-height:48px;padding:10px 16px !important;border-radius:999px !important;font-size:16px}
.iaw-lars-send{padding:0 22px;font-size:15px;cursor:pointer}
.iaw-lars-send:disabled{opacity:.5;cursor:default}
.iaw-lars-voet{font-family:var(--boek-mono) !important;font-size:11px;letter-spacing:.04em;color:#5B6E78;padding:0 20px 12px;background:var(--wit)}
@media(max-width:600px){
  .iaw-lars-input-row{flex-direction:column;align-items:stretch}
  .iaw-lars-send{width:100%}
  .iaw-lars-msg{max-width:94%}
}
/* de oudere Lars-blokken in de tekst (de vraag van Lars boven het invulvak) */
body .lars,body .lars-block,body .lars-card{
  background:#fff !important;border:1px solid var(--lijn) !important;border-left:2px solid var(--oranje) !important;border-radius:4px 18px 18px 4px !important;
  box-shadow:0 22px 48px -30px rgba(6,70,95,.5) !important;color:var(--inkt) !important;
}
body .lars__avatar,body .lars-avatar,body .lars::before{background:var(--petrol) !important;color:#fff !important;font-style:normal !important}
body .lars__name,body .lars-naam{color:var(--inkt) !important;font-weight:600 !important}
body .lars__role,body .lars-rol,body .lars .who{font-family:var(--boek-mono) !important;font-size:11px !important;letter-spacing:.16em !important;text-transform:uppercase;color:var(--petrol) !important;font-weight:400 !important}
body .lars__msg,body .lars-tekst,body .lars p{color:var(--inkt) !important;font-style:normal !important;font-size:1.05rem !important;line-height:1.6 !important}
body .lars__hint{border:1px dashed rgba(6,70,95,.35) !important;border-radius:999px !important;background:transparent !important;color:var(--petrol) !important;font-size:14px !important;cursor:pointer}
body .lars__hint:hover{background:rgba(6,70,95,.06) !important}
body .lars__status{display:none !important}

/* ---------- slot van een hoofdstuk: door naar het volgende ---------- */
.boek-verder{
  position:relative;background:var(--petrol);color:#F4F7F8;padding:clamp(56px,9vw,110px) clamp(20px,5vw,64px);margin-top:clamp(40px,7vw,90px);overflow:hidden;
}
.boek-verder::before{
  content:"";position:absolute;left:0;right:0;bottom:calc(100% - 1px);height:clamp(36px,6vw,78px);
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 80' preserveAspectRatio='none'%3E%3Cpath fill='%2306465F' d='M0 50 C160 14 300 62 470 36 C640 10 760 58 930 34 C1090 12 1240 54 1440 26 L1440 80 L0 80 Z'/%3E%3C/svg%3E") bottom/100% 100% no-repeat;
}
.boek-verder-in{max-width:calc(var(--kolom) + 300px);margin:0 auto;position:relative;z-index:1;display:grid;gap:18px;justify-items:start}
.boek-verder .oog{font-family:var(--boek-mono) !important;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:#FFB98A}
.boek-verder h2{font-size:clamp(2rem,5vw,3.2rem);line-height:1.02;letter-spacing:-0.04em;font-weight:600;color:#F4F7F8 !important;max-width:14em;margin:0}
.boek-verder p{color:#C2CED4 !important;max-width:32em;font-size:1.1rem;line-height:1.6;margin:0}
.boek-verder .rij{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}
.boek-verder a.knop{display:inline-flex;align-items:center;min-height:48px;padding:10px 28px;border-radius:999px;background:var(--oranje);color:var(--op-oranje) !important;font-weight:500;font-size:16px;text-decoration:none;border:1px solid var(--oranje);transition:transform .2s,box-shadow .3s}
.boek-verder a.knop:hover{transform:translateY(-1px);box-shadow:0 8px 24px -8px rgba(242,105,31,.6)}
.boek-verder a.knop.stil{background:transparent;color:#F4F7F8 !important;border-color:rgba(244,247,248,.5)}
.boek-verder a.knop.stil:hover{box-shadow:none;border-color:#F4F7F8}
.boek-verder .cijfer{position:absolute;right:-6px;bottom:-40px;font-weight:200;letter-spacing:-0.06em;font-size:clamp(9rem,26vw,20rem);line-height:.8;color:transparent;-webkit-text-stroke:1px rgba(244,247,248,.24);pointer-events:none;user-select:none}

/* "bewaard"-seintje bij invulvelden */
.boek-bewaard{font-family:var(--boek-mono) !important;font-size:11px;letter-spacing:.06em;color:var(--petrol);opacity:0;transition:opacity .4s;display:block;margin-top:6px;min-height:1.2em}
.boek-bewaard.aan{opacity:.85}

/* toegangscontrole: rustig laadscherm in de stijl van het boek */
#iaw-gate{background:linear-gradient(to bottom,#D5E4EA 0,var(--mist) 100%) !important}
#iaw-gate > div{font-family:var(--boek-mono) !important;font-size:12px !important;letter-spacing:.2em !important;text-transform:uppercase;color:var(--petrol) !important}

/* ---------- telefoon ---------- */
@media (max-width:640px){
  input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea{font-size:16px !important}
  input[type=checkbox]{width:22px;height:22px}
  .brand,.topbar-back,.back,.home-link,.back-link{display:inline-flex;align-items:center;min-height:44px}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none !important;transition:none !important}
  .boek-leeslint{display:none}
  html{scroll-behavior:auto}
}

/* ============================================================
   PORTAAL: de inhoudsopgave van het boek
   ============================================================ */
.oog{font-family:var(--boek-mono) !important;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--petrol);display:block;margin-bottom:12px}
#loading{background:linear-gradient(to bottom,#D5E4EA 0,var(--mist) 100%) !important;font-family:var(--boek-mono) !important;font-size:12px !important;letter-spacing:.2em !important;color:var(--petrol) !important}
#auth-screen{background:linear-gradient(to bottom,#D5E4EA 0,#E4EDF1 45%,var(--mist) 100%) !important}
.auth-box{border-radius:18px !important;border:1px solid var(--lijn) !important;box-shadow:0 40px 80px -44px rgba(6,70,95,.55) !important;background:#fff !important}
.auth-logo{font-family:var(--boek-mono) !important;font-size:13px !important;letter-spacing:.22em !important;text-transform:uppercase;font-weight:500 !important;color:var(--inkt) !important}
.auth-tab.active{color:var(--petrol) !important;border-bottom-color:var(--oranje) !important}
.auth-nieuw{font-size:14px;color:var(--zacht);margin-top:1.25rem}
.auth-nieuw a{color:var(--petrol)}
body .topbar{background:rgba(238,243,245,.86) !important;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--lijn) !important}
body .topbar-logo{font-family:var(--boek-mono) !important;font-size:12px !important;letter-spacing:.2em !important;text-transform:uppercase;font-weight:500 !important}
body .sidebar{background:var(--mist) !important;border-right:1px solid var(--lijn) !important}
body .sidebar-section{font-family:var(--boek-mono) !important;font-size:11px !important;letter-spacing:.18em !important;color:var(--petrol) !important;font-weight:400 !important}
body .sidebar nav a{min-height:44px;gap:10px;color:var(--zacht) !important}
body .sidebar nav a b{font-family:var(--boek-mono) !important;font-weight:400;font-size:12px;color:var(--petrol);margin-right:8px}
body .sidebar nav a.active{color:var(--inkt) !important;border-left-color:var(--oranje) !important;background:#fff !important}
body .lock-icon{font-family:var(--boek-mono) !important;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#5B6E78;white-space:nowrap}
body .main{max-width:860px}
body .m0-welcome h1{font-size:clamp(2.2rem,5.4vw,3.4rem) !important;line-height:1 !important;letter-spacing:-0.045em !important;font-weight:650 !important}
body .m0-welcome .m0-intro{font-weight:400 !important;color:var(--zacht) !important}
.m0-verder{display:grid;grid-template-columns:1fr auto;gap:4px 20px;align-items:center;text-decoration:none;background:var(--petrol);color:#F4F7F8;border-radius:18px;padding:24px 28px;margin-bottom:1.75rem;transition:transform .2s,box-shadow .3s}
.m0-verder[hidden]{display:none}
.m0-verder:hover{transform:translateY(-1px);box-shadow:0 22px 44px -26px rgba(6,70,95,.8)}
.m0-verder__label{font-family:var(--boek-mono) !important;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:#FFB98A}
.m0-verder__titel{grid-column:1;font-size:1.35rem;font-weight:600;letter-spacing:-0.03em;line-height:1.15}
.m0-verder__knop{grid-column:2;grid-row:1 / span 2;display:inline-flex;align-items:center;min-height:48px;padding:0 24px;border-radius:999px;background:var(--oranje);color:var(--op-oranje);font-weight:500;font-size:15px;white-space:nowrap}
body .m0-start{background:var(--petrol) !important;border-radius:18px !important;margin-bottom:1.75rem}
.m0-inhoud{margin:2.25rem 0 2.5rem}
.boek-inhoud{list-style:none;padding:0;margin:0;border-top:1px solid var(--inkt)}
.boek-inhoud li{border-bottom:1px solid var(--lijn)}
.boek-inhoud a{display:grid;grid-template-columns:4ch 1fr auto;gap:4px 16px;align-items:baseline;padding:18px 6px;text-decoration:none;color:var(--inkt);min-height:64px;transition:background .2s,padding .2s}
.boek-inhoud a:hover{background:rgba(6,70,95,.05);padding-left:12px}
.boek-inhoud .n{font-family:var(--boek-mono) !important;font-size:13px;letter-spacing:.1em;color:var(--petrol)}
.boek-inhoud .t b{display:block;font-size:1.18rem;font-weight:600;letter-spacing:-0.025em;line-height:1.25}
.boek-inhoud .t i{display:block;font-style:normal;color:var(--zacht);font-size:.98rem;line-height:1.5;margin-top:3px}
.boek-inhoud .s{font-family:var(--boek-mono) !important;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#5B6E78;white-space:nowrap}
.boek-inhoud a.gelezen .s{color:var(--green)}
.boek-inhoud a.gelezen .n::after{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--green);margin-left:6px;vertical-align:middle}
.boek-inhoud a.hier .s{color:var(--oranje-diep)}
.boek-inhoud a.hier .n::after{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--oranje);margin-left:6px;vertical-align:middle;animation:boek-adem 10s ease-in-out infinite}
body .m0-letter{background:#fff !important;border:1px solid var(--lijn) !important;border-left:2px solid var(--oranje) !important;border-radius:4px 18px 18px 4px !important;box-shadow:0 22px 48px -30px rgba(6,70,95,.5) !important}
body .m0-letter p{font-style:normal !important;color:var(--inkt) !important;font-size:1.08rem !important;line-height:1.65 !important}
body .m0-letter__eyebrow,body .m0-belofte__label{font-family:var(--boek-mono) !important;letter-spacing:.18em !important;color:var(--petrol) !important;font-weight:400 !important;font-size:11px !important}
body .m0-letter__sign{font-style:normal !important;color:var(--zacht) !important}
body .m0-how{box-shadow:none !important;border:1px solid var(--lijn) !important}
body .m0-belofte--featured{background:var(--nacht) !important;border-color:var(--nacht) !important}
body .m0-belofte--featured .m0-belofte__label{color:#FFB98A !important}
body .paywall{background:#fff !important;border:1px solid var(--lijn) !important}
@media(max-width:600px){
  .m0-verder{grid-template-columns:1fr;padding:22px}
  .m0-verder__knop{grid-column:1;grid-row:auto;justify-content:center;margin-top:12px}
  .boek-inhoud a{grid-template-columns:3.4ch 1fr}
  .boek-inhoud .s{grid-column:2}
}

/* ============================================================
   LOSSE PAGINA'S (afrekenen, bedankt, vragen, contact, begeleiding, juridisch)
   ============================================================ */
body .brand,body .logo,body .nav-logo,body .site-logo{font-family:var(--boek-mono) !important;letter-spacing:.2em !important;text-transform:uppercase;font-size:12px !important;font-weight:500 !important}
body .hero h1,body main h1{letter-spacing:-0.045em !important;font-weight:650 !important;line-height:1.02 !important}

/* keuzeknoppen ("welke manier kies je deze week") */
.manier-choice{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 16px}
.manier-chip{font:inherit;font-size:15px;min-height:44px;padding:8px 18px;border-radius:999px;border:1px solid var(--lijn);background:#fff;color:var(--inkt);cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.manier-chip:hover{border-color:var(--petrol)}
.manier-chip[aria-checked="true"]{background:var(--petrol);border-color:var(--petrol);color:#fff}
.manier-other{margin-bottom:12px}
body .reflect__sublabel{display:block;font-size:14px;color:var(--zacht);margin:10px 0 6px}
body .reflect-input{width:100%;min-height:48px;padding:10px 14px;font-size:16px}
