
:root {
--diep: #0A71D9;      
  --logo: #008AFC;      
  --helder: #119CFF;    
  --ijs: #96F8F4;       
  --nacht: #020719;     
  --navy: #1C1F37;      
  --grijs: #A5A5A5;
  --licht: #ECECEC;
--wit: #FFFFFF;
  --mist: #F4F6FA;      
  --lijn: #E1E6EE;
  --zacht: #4A5568;     
  --ijsvlak: #E8F3FF;   
--r: 20px;            
  --r-klein: 12px;
  --breed: 1440px;
  --marge: 120px;
}
* { box-sizing: border-box; margin: 0; padding: 0; }
body { background: #DCE2EA; font-family: Inter, system-ui, sans-serif; color: var(--nacht); -webkit-font-smoothing: antialiased; }
.kop-1, .kop-2, .kop-3 { font-family: Kanit, sans-serif; font-style: italic; font-weight: 800; letter-spacing: -0.01em; color: var(--nacht); }
.kop-1 { font-size: 76px; line-height: 0.98; }
.kop-2 { font-size: 48px; line-height: 1.04; }
.kop-3 { font-size: 30px; line-height: 1.12; }
.kop-4 { font-family: Inter, sans-serif; font-weight: 600; font-size: 20px; line-height: 1.3; }
.intro { font-size: 21px; line-height: 1.5; color: var(--zacht); }
.tekst { font-size: 17px; line-height: 1.6; color: var(--zacht); }
.klein { font-size: 14px; line-height: 1.5; color: var(--zacht); }
.label { font-family: "JetBrains Mono", monospace; font-weight: 500; font-size: 12px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--diep); }
.op-donker { color: #FFFFFF; }
.op-donker.tekst, .op-donker .tekst, .op-donker .intro { color: #C9D3E3; }
.knop { position: relative; display: inline-block; flex: none; cursor: pointer; vertical-align: middle; overflow: hidden; border-radius: 12px; }
.knop .vorm { position: absolute; left: 0; top: 0; display: block; }
.knoptekst { position: absolute; top: 0; height: 100%; display: flex; align-items: center; white-space: nowrap; font-family: Kanit, sans-serif; font-style: italic; font-weight: 600; letter-spacing: 0.005em; }
.knoppijl { position: absolute; line-height: 0; transition: transform .2s cubic-bezier(.2,.9,.2,1); }
.knop .tab { transition: transform .2s cubic-bezier(.2,.9,.2,1); }
.knop .glans { position: absolute; top: 0; left: -40%; width: 18px; height: 100%; background: rgba(255,255,255,.3); transform: skewX(43.65deg); opacity: 0; pointer-events: none; }
.knop-a:hover .glans { animation: snede .42s cubic-bezier(.3,.7,.2,1) 1; }
.knop-a:hover .tab { transform: translateX(5px); }
.knop-a:hover .knoppijl { transform: translate(5px, -2px); }
.knop-g:hover .knoppijl { transform: translate(3px, -3px); }
.knop-g .deel { transition: fill .18s ease; }
@keyframes snede { 0% { left: -20%; opacity: 1; } 100% { left: 110%; opacity: 1; } }
@media (prefers-reduced-motion: reduce) { .knop .glans { display: none; } .knop .tab, .knoppijl { transition: none; } }
.vlak { position: relative; }
.vlak > .vlakvorm { position: absolute; left: 0; top: 0; display: block; z-index: 0; }
.vlak > *:not(.vlakvorm) { position: relative; z-index: 1; }
.frame { background: var(--wit); width: var(--breed); flex: none; position: relative; overflow: hidden; }
.board { display: flex; gap: 240px; align-items: flex-start; padding: 120px; width: max-content; }
.bordkop { font-family: "JetBrains Mono", monospace; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--diep); }
@media (hover: hover) and (pointer: fine) {
  html::-webkit-scrollbar { width: 12px; }
  html::-webkit-scrollbar-track { background: #F4F6FA; box-shadow: inset 1px 0 0 #E1E6EE; }
  html::-webkit-scrollbar-thumb {
    min-height: 56px; border: 3px solid transparent; border-top-width: 0; border-bottom-width: 0;
    background: linear-gradient(135deg, transparent 4px, #0A71D9 4px) top left / 100% 51% no-repeat padding-box,
                linear-gradient(-45deg, transparent 4px, #0A71D9 4px) bottom right / 100% 51% no-repeat padding-box;
  }
  html::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(135deg, transparent 4px, #008AFC 4px) top left / 100% 51% no-repeat padding-box,
                linear-gradient(-45deg, transparent 4px, #008AFC 4px) bottom right / 100% 51% no-repeat padding-box;
  }
  html::-webkit-scrollbar-thumb:active {
    background: linear-gradient(135deg, transparent 4px, #020719 4px) top left / 100% 51% no-repeat padding-box,
                linear-gradient(-45deg, transparent 4px, #020719 4px) bottom right / 100% 51% no-repeat padding-box;
  }
  @supports not selector(::-webkit-scrollbar) {
    html { scrollbar-color: #0A71D9 #F4F6FA; scrollbar-width: thin; }
  }
}
.board { display: flex; gap: 240px; align-items: flex-start; padding: 120px; width: max-content; }
.pagina { width: 1440px; background: #fff; position: relative; overflow: hidden; flex: none; }
.sec { position: relative; overflow: hidden; }
.abs { position: absolute; }
.c1 { font-family: Anton, sans-serif; font-size: 168px; line-height: .9; text-transform: uppercase; letter-spacing: -.005em; color: #fff; }
.c2 { font-family: Anton, sans-serif; font-size: 120px; line-height: .92; text-transform: uppercase; letter-spacing: -.004em; color: #fff; }
.b1 { font-family: Kanit, sans-serif; font-style: italic; font-weight: 800; font-size: 64px; line-height: 1.02; letter-spacing: -.012em; color: var(--nacht); }
.b2 { font-family: Kanit, sans-serif; font-style: italic; font-weight: 800; font-size: 44px; line-height: 1.06; letter-spacing: -.01em; color: var(--nacht); }
.b3 { font-family: Kanit, sans-serif; font-style: italic; font-weight: 800; font-size: 28px; line-height: 1.12; color: var(--nacht); }
.dun { font-family: Kanit, sans-serif; font-style: italic; font-weight: 300; }
.wit { color: #fff; }
.zachtwit { color: #C9D3E3; }
.helder { color: var(--helder); }
.intro { font-size: 20px; line-height: 1.55; }
.tekst { font-size: 17px; line-height: 1.6; }
.label.licht { color: var(--helder); }
.label.wit { color: #fff; }
.link { display: inline-flex; align-items: center; gap: 10px; font-weight: 600; font-size: 16px; color: var(--diep); padding-bottom: 6px; border-bottom: 2px solid currentColor; }
.link.wit { color: #fff; }
.beeld { position: absolute; border-radius: 20px; overflow: hidden; background: #DDE8F5; }
.beeld.donker { background: #13223F; }
.beeld.blauw { background: #0B5FB8; }
.beeld .merk { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); opacity: .14; line-height: 0; }
.beeld.donker .merk, .beeld.blauw .merk { opacity: .2; }
.beeld .code { position: absolute; left: 16px; top: 16px; font-family: "JetBrains Mono", monospace; font-weight: 500; font-size: 12px; letter-spacing: .08em; background: var(--nacht); color: #fff; padding: 5px 9px; border-radius: 7px; }
.beeld.donker .code, .beeld.blauw .code { background: var(--ijs); color: var(--nacht); }
.beeld .wat { position: absolute; left: 16px; right: 16px; bottom: 16px; font-size: 14px; line-height: 1.4; font-weight: 500; color: #33445E; }
.beeld.donker .wat, .beeld.blauw .wat { color: #DCE6F5; }
.foto { position: absolute; object-fit: cover; border-radius: 20px; display: block; }
.pil { display: inline-flex; align-items: center; gap: 10px; border-radius: 999px; padding: 10px 20px; font-size: 15px; font-weight: 500; white-space: nowrap; }
.pil img { width: 34px; height: 34px; border-radius: 50%; object-fit: cover; margin: -4px 0 -4px -12px; }
.rond { border-radius: 50%; object-fit: cover; display: block; }
.lijn { border-top: 1px solid var(--lijn); }
.waaier .kaart { position: absolute; width: 280px; height: 498px; border-radius: 20px; overflow: hidden; box-shadow: 0 30px 60px rgba(0,0,0,.35); }
.menupil { position: absolute; left: 50%; transform: translateX(-50%); display: flex; align-items: center; gap: 14px; background: #fff; border-radius: 999px; padding: 8px 22px 8px 8px; box-shadow: 0 16px 40px rgba(2,7,25,.35); }
.menupil img { width: 40px; height: 40px; border-radius: 50%; object-fit: cover; }
.menupil b { font-size: 16px; font-weight: 600; color: var(--nacht); }
.streepjes { display: flex; flex-direction: column; gap: 5px; margin-left: 6px; }
.streepjes i { display: block; width: 20px; height: 2px; background: var(--nacht); border-radius: 2px; }
.sterren { display: flex; align-items: center; gap: 10px; font-size: 14px; color: #C9D3E3; }
.sterren span { color: var(--helder); letter-spacing: 2px; font-size: 15px; }
.loper { position: absolute; left: 0; right: 0; white-space: nowrap; display: flex; align-items: center; gap: 28px; font-family: "JetBrains Mono", monospace; font-size: 15px; letter-spacing: .08em; text-transform: uppercase; }
.loper i { font-style: normal; opacity: .55; }
.nummer { font-family: Kanit, sans-serif; font-style: italic; font-weight: 200; font-size: 168px; line-height: .9; color: var(--diep); letter-spacing: -.02em; }
.dienst { position: absolute; left: 120px; width: 1200px; height: 560px; }
.dienst .inhoud { position: absolute; left: 64px; top: 64px; width: 500px; }
.dienst > .beeld { position: absolute; }
.bel { position: absolute; border-radius: 50%; border: 1.5px solid #CFD8E6; display: flex; align-items: center; justify-content: center; text-align: center; font-weight: 600; font-size: 16px; line-height: 1.25; color: var(--nacht); background: #fff; padding: 12px; }
.review { position: absolute; border-radius: 20px; background: var(--mist); padding: 28px; }
.review .sterren span { color: #F5B300; }
.review p { font-size: 16px; line-height: 1.55; color: var(--nacht); margin: 12px 0 18px; }
.review b { font-size: 15px; }
.review small { display: block; font-size: 13px; color: var(--zacht); margin-top: 2px; }
.vraag { display: flex; justify-content: space-between; align-items: center; padding: 26px 0; font-weight: 600; font-size: 20px; color: var(--nacht); }
.vraag .plus { width: 36px; height: 36px; border-radius: 50%; background: var(--mist); display: flex; align-items: center; justify-content: center; color: var(--diep); font-size: 22px; font-weight: 500; flex: none; }
.vraag.open .plus { background: var(--diep); color: #fff; }
.voetkolom { font-size: 15px; line-height: 2.1; color: #C9D3E3; }
.voetkolom .label { display: block; margin-bottom: 10px; }
.notitie { width: 900px; background: #fff; padding: 72px; border-radius: 20px; flex: none; }
.notitie h1 { font-family: Kanit, sans-serif; font-style: italic; font-weight: 800; font-size: 52px; line-height: 1.04; margin: 18px 0 20px; }
.notitie h2 { font-family: Kanit, sans-serif; font-style: italic; font-weight: 800; font-size: 26px; margin: 34px 0 10px; }
.notitie p, .notitie li { font-size: 17px; line-height: 1.6; color: var(--zacht); }
.notitie ul { margin: 8px 0 0 20px; }
.notitie li { margin-bottom: 6px; }
.notitie b { color: var(--nacht); }
.keuze { width: 1440px; flex: none; }
.keuze .kop-keuze { background: #fff; padding: 40px 56px; border-radius: 20px 20px 0 0; }
.keuze .kop-keuze h2 { font-family: Kanit, sans-serif; font-style: italic; font-weight: 800; font-size: 40px; line-height: 1.05; margin-top: 8px; }
.keuze .kop-keuze p { font-size: 17px; line-height: 1.55; color: var(--zacht); margin-top: 8px; max-width: 1100px; }
:root { --woordmerk: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%2255%20-1313%202446%20275.5%22%20fill%3D%22%23000%22%3E%3Cpath%20d%3D%22M152.5-1136.46c-65.06%2C0-97.59-29.66-97.59-89s32.53-87.43%2C97.59-87.43h135.79l.19%2C78.41h-135.98c-13.01%2C0-19.52%2C3.01-19.52%2C9.02%2C0%2C7.06%2C6.5%2C10.58%2C19.52%2C10.58h39.04c65.06%2C0%2C97.59%2C29.14%2C97.59%2C87.43s-32.53%2C89-97.59%2C89H55.11v-78.41h136.42c13.01%2C0%2C19.52-3.53%2C19.52-10.58%2C0-6.01-6.51-9.02-19.52-9.02h-39.04Z%22%2F%3E%3Cpath%20d%3D%22M309.77-1312.88h77.33v98.01h97.59l-.19-58.81.46-39.2h77.8v274.43h-78.07v-98.01h-97.59v98.01l-77.33.02%22%2F%3E%3Cpath%20d%3D%22M1122.97-1312.88l-171.13-.18%2C33%2C35%2C.58%2C239.63h78.71l-.08-78.72h58.92c65.6%2C0%2C98.4-26.79%2C98.4-94.37s-32.8-101.37-98.4-101.37ZM1122.97-1195.24h-59l-.04-38.55h59.04c13.12%2C0%2C19.68%2C5.76%2C19.68%2C19.28s-6.56%2C19.28-19.68%2C19.28Z%22%2F%3E%3Cpath%20d%3D%22M1377.75-1312.88h78.07v78.41h-78.07c-16.14%2C0-29.93%2C5.75-41.38%2C17.25-11.45%2C11.5-17.17%2C25.36-17.17%2C41.56s5.72%2C30.06%2C17.17%2C41.56c11.45%2C11.5%2C25.24%2C17.25%2C41.38%2C17.25h78.07v78.42h-78.07c-37.74%2C0-69.94-13.39-96.61-40.19-26.68-26.79-40.01-59.14-40.01-97.04s13.33-70.25%2C40.01-97.04c26.67-26.79%2C58.88-40.19%2C96.61-40.19Z%22%2F%3E%3Cpath%20d%3D%22M1475.51-1312.88h79.61v196.02h77.88v78.41h-156.95%22%2F%3E%3Cpath%20d%3D%22M1731.78-1312.88v274.43h-78.07l-.19-274.43h78.26Z%22%2F%3E%3Cpath%20d%3D%22M1887.72-1312.88h78.07v78.41h-78.07c-16.14%2C0-29.93%2C5.75-41.38%2C17.25-11.45%2C11.5-17.17%2C25.36-17.17%2C41.56s5.72%2C30.06%2C17.17%2C41.56c11.45%2C11.5%2C25.24%2C17.25%2C41.38%2C17.25h78.07v78.41h-78.07c-37.74%2C0-69.94-13.39-96.61-40.18-26.68-26.79-40.01-59.13-40.01-97.03s13.33-70.24%2C40.01-97.03c26.67-26.79%2C58.88-40.18%2C96.61-40.18Z%22%2F%3E%3Cpath%20d%3D%22M2363.25-1136.51c-65.06-.22-97.49-29.99-97.29-89.33.2-58.29%2C32.82-87.32%2C97.88-87.11l135-.11-75%2C79-60.27-.47c-13.01-.04-19.53%2C2.94-19.55%2C8.95-.02%2C7.06%2C6.47%2C10.61%2C19.48%2C10.65l39.04.13c65.06.22%2C97.49%2C29.47%2C97.29%2C87.76-.2%2C59.34-32.83%2C88.89-97.88%2C88.68l-136.32-.46.21-78.24%2C136.38.28c13.01.04%2C19.53-3.46%2C19.55-10.52.02-6.01-6.48-9.04-19.49-9.08l-39.04-.13Z%22%2F%3E%3Cpath%20d%3D%22M1985.84-1313.06l77.9.18v127.43l86.61-127.43%2C94.49-.18-100%2C149%2C102%2C125h-101l-82.1-100.72v101.35h-78.03%22%2F%3E%3Cpath%20d%3D%22M624.47-1109.37%22%2F%3E%3Cpath%20d%3D%22M890.84-1117.06c58-20%2C74.13-46.58%2C74.13-98.35%2C0-64.71-32.58-97.06-97.74-97.06l-256.47-.41%2C263.87%2C274.46h91.2l-75-78.63ZM865.54-1195.77h-50.28l-35.04-37.88h89.56c9.23%2C0%2C16.71%2C5.47%2C16.71%2C14.68v7.27c0%2C9.35-11.59%2C15.92-20.95%2C15.92Z%22%2F%3E%3Cpolygon%20points%3D%22750.84%20-1137.06%20583.36%20-1312.64%20583.84%20-1068.06%20641.04%20-1122.87%20674.41%20-1039.29%20706.93%20-1052.27%20673.07%20-1137.06%20750.84%20-1137.06%22%2F%3E%3C%2Fsvg%3E"); }
:root { --z: 1; --marge: 0px; }
html { background: var(--nacht); scroll-behavior: smooth; }
body { position: relative; width: 1440px; margin: 0 auto; background: #fff; color: var(--nacht); overflow-x: hidden; }
html.wacht body { opacity: 0; }
body { transition: opacity .2s ease; }
a { color: inherit; text-decoration: none; }
.sec { scroll-margin-top: 0; }
.kop-logo, .kop-nav, .kop-knop { position: fixed; z-index: 60; }
.kop-logo { left: calc(120px + var(--marge)); top: 58px; line-height: 0; }
.kop-logo { mix-blend-mode: difference; }
.kop-logo .omkeer { display: none; }
@supports ((backdrop-filter: invert(1)) or (-webkit-backdrop-filter: invert(1))) and ((mask-image: none) or (-webkit-mask-image: none)) {
  .kop-logo { mix-blend-mode: normal; }
  .kop-logo [data-inlinelogo] { visibility: hidden; }
  .kop-logo .omkeer { display: block; position: absolute; inset: 0;
    -webkit-backdrop-filter: blur(3px) grayscale(1) invert(1) contrast(80); backdrop-filter: blur(3px) grayscale(1) invert(1) contrast(80);
    -webkit-mask: var(--woordmerk) center / 100% 100% no-repeat; mask: var(--woordmerk) center / 100% 100% no-repeat; }
}
.kop-nav { left: 50%; top: 54px; display: flex; gap: 6px; transform: translateX(-50%); }
.kop-nav a, .kop-nav button { display: inline-flex; align-items: center; gap: 8px; height: 44px; padding: 0 14px; border: 0; border-radius: 999px; background: transparent; font: 600 16px/1 Inter, sans-serif; color: #fff; cursor: pointer; transition: background .18s ease, color .18s ease; }
.kop-nav a:hover, .kop-nav button:hover, .kop-nav button[aria-expanded="true"] { background: rgba(255,255,255,.1); }
.kop-nav button[aria-expanded="true"] { color: var(--helder); }
.kop-nav .haakje { width: 9px; height: 9px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: translateY(-3px) rotate(45deg); transition: transform .2s ease; }
.kop-nav button[aria-expanded="true"] .haakje { transform: translateY(1px) rotate(-135deg); }
.kop-logo:focus-visible, .kop-nav a:focus-visible, .kop-nav button:focus-visible, .kop-knop a:focus-visible, .menuknop:focus-visible, .mega a:focus-visible, .menupaneel a:focus-visible { outline: 3px solid var(--ijs); outline-offset: 3px; }
.kop-nav { transition: opacity .3s ease, transform .3s ease, visibility 0s linear 0s; }
body.gescrold .kop-nav { opacity: 0; visibility: hidden; pointer-events: none; transform: translate(-50%, -14px); transition: opacity .3s ease, transform .3s ease, visibility 0s linear .3s; }
.kop-knop { right: calc(120px + var(--marge)); top: 52px; width: 247px; height: 48px; }
.kop-knop a { position: absolute; right: 0; top: 0; display: block; line-height: 0; transition: opacity .25s ease; }
.kop-knop .op-licht { opacity: 0; pointer-events: none; }
body[data-onder="licht"] .kop-knop .op-licht { opacity: 1; pointer-events: auto; }
body[data-onder="licht"] .kop-knop .op-donker { opacity: 0; pointer-events: none; }
body[data-onder="licht"] .kop-knop .op-licht .knop { box-shadow: 0 10px 26px rgba(2,7,25,.16); }
.doek { position: fixed; inset: 0; z-index: 55; background: rgba(2,7,25,.6); opacity: 0; visibility: hidden; transition: opacity .25s ease, visibility 0s linear .25s; }
body.mega-open .doek, body.menu-open .doek { opacity: 1; visibility: visible; transition: opacity .25s ease, visibility 0s linear 0s; }
body.mega-open .kop-logo, body.mega-open .kop-nav, body.mega-open .kop-knop { z-index: 62; }
.mega { position: fixed; left: calc(120px + var(--marge)); top: 118px; width: 1200px; height: 420px; z-index: 61; opacity: 0; visibility: hidden; transform: translateY(-10px); transition: opacity .22s ease, transform .22s ease, visibility 0s linear .22s; }
body.mega-open .mega { opacity: 1; visibility: visible; transform: none; transition: opacity .22s ease, transform .22s ease, visibility 0s linear 0s; }
.mega .rij { display: flex; gap: 14px; align-items: flex-start; padding: 8px; margin: -8px; border-radius: 14px; transition: background .18s ease; }
.mega .rij:hover { background: var(--mist); }
.hero2 { position: relative; height: calc(100vh / var(--z)); min-height: 620px; overflow: hidden; background: var(--nacht); }
.hero2 video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.hero2 .laag { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(2,7,25,.92) 0%, rgba(2,7,25,.72) 45%, rgba(2,7,25,.2) 100%), linear-gradient(0deg, rgba(10,113,217,.55) 0%, rgba(10,113,217,0) 40%); }
.hero2 h1 { position: absolute; left: 120px; bottom: 40px; font-weight: 400; }
.hero2 h1 .c1 { display: block; white-space: nowrap; }
.hero2 h1 .tweede { margin-left: 127px; }
.hero2 h1 .b2 { display: block; margin-top: 1px; white-space: nowrap; }
.menuknop { position: fixed; left: var(--marge); bottom: 40px; z-index: 70; display: flex; align-items: center; gap: 14px; height: 42px; background: #fff; border: 0; border-radius: 999px; padding: 0 22px 0 20px; box-shadow: 0 16px 40px rgba(2,7,25,.35), 0 0 0 1px rgba(2,7,25,.06); cursor: pointer; will-change: transform; font: inherit; }
.menuknop b { font-size: 16px; font-weight: 600; color: var(--nacht); }
.menuknop .dicht { display: none; font-size: 18px; line-height: 1; color: var(--nacht); }
body.menu-open .menuknop .open { display: none; }
body.menu-open .menuknop .dicht { display: inline; }
body.menu-open .kop-nav, body.menu-open .kop-knop { z-index: 50; }
body.menu-open .kop-logo { z-index: 62; }
.menupaneel { position: fixed; left: 620px; margin-left: var(--marge); bottom: 96px; width: 700px; height: 484px; z-index: 69; opacity: 0; visibility: hidden; transform: translateY(16px); transition: opacity .25s ease, transform .25s ease, visibility 0s linear .25s; }
body.menu-open .menupaneel { opacity: 1; visibility: visible; transform: none; transition: opacity .25s ease, transform .25s ease, visibility 0s linear 0s; }
.menupaneel .groot a { display: flex; align-items: baseline; gap: 14px; margin-bottom: 10px; }
.menupaneel .groot a:hover .b2 { color: var(--diep); }
.stapel { position: relative; padding: 0 120px 150px; }
.stapel .dienst { position: sticky; left: auto; top: calc(130px + var(--i) * 26px); margin-bottom: 44px; }
.stapel .dienst:last-child { margin-bottom: 0; }
html.beweeg [data-kom] { opacity: 0; transform: translateY(24px); transition: opacity .6s cubic-bezier(.2,.9,.2,1), transform .6s cubic-bezier(.2,.9,.2,1); }
html.beweeg [data-kom].in { opacity: 1; transform: none; }
.afv-kop { font-family: Anton, sans-serif; font-weight: 400; font-size: 80px; line-height: .92; text-transform: uppercase; letter-spacing: -.004em; color: var(--nacht); }
.afv-kop > span { display: block; white-space: nowrap; }
.afv-kop .tweede { margin-left: 100px; }
.afv-kop .blauw { color: var(--diep); }
.afv-note { position: relative; transform: rotate(1.6deg); }
.afv-achter { position: absolute; inset: 0; border-radius: 16px; background: #D5E3F4; transform: rotate(-5deg) translate(-14px, 10px); }
.afv-vel { position: relative; padding: 54px 40px 14px; background: #fff; border-radius: 16px; box-shadow: 0 30px 70px rgba(2,7,25,.14), 0 2px 6px rgba(2,7,25,.05); }
.afv-gaten { position: absolute; left: 40px; right: 40px; top: 16px; display: flex; justify-content: space-between; }
.afv-gaten i { display: block; width: 12px; height: 20px; border-radius: 6px; background: var(--nacht); }
.afv-velkop { display: flex; justify-content: space-between; align-items: center; padding-bottom: 16px; border-bottom: 2px solid var(--nacht); }
.afv-velkop .label { font-size: 13px; }
.afv-teller { font-family: "JetBrains Mono", monospace; font-weight: 500; font-size: 13px; letter-spacing: .08em; padding: 6px 12px; border-radius: 999px; background: var(--mist); color: var(--nacht); transition: background .25s ease, color .25s ease; }
.afv-teller.vol { background: var(--diep); color: #fff; }
.afv-vink { display: flex; gap: 22px; align-items: flex-start; width: 100%; padding: 26px 0; border: 0; border-top: 1px solid var(--lijn); background: none; font: inherit; color: inherit; text-align: left; cursor: pointer; }
.afv-vink:first-of-type { border-top: 0; }
.afv-vak { position: relative; flex: none; width: 44px; height: 44px; margin-top: 2px; border-radius: 12px; border: 2.5px solid var(--nacht); background: #fff; transition: background .2s ease, border-color .2s ease, transform .3s cubic-bezier(.2,.9,.2,1); }
.afv-vak .pijl { position: absolute; left: 13px; top: 8px; opacity: 0; transform: translate(-16px, -18px) scale(1.6); transition: opacity .18s ease, transform .35s cubic-bezier(.2,.9,.2,1); }
.afv-vak::after { content: ""; position: absolute; inset: -6px; border-radius: 16px; border: 3px solid var(--diep); opacity: 0; pointer-events: none; }
.afv-vink[aria-pressed="true"] .afv-vak { background: var(--diep); border-color: var(--diep); transform: rotate(-4deg); }
.afv-vink[aria-pressed="true"] .afv-vak .pijl { opacity: 1; transform: none; }
.afv-vak.klik::after { animation: klikring .5s ease-out 1; }
@keyframes klikring { 0% { opacity: .7; transform: scale(.8); } 100% { opacity: 0; transform: scale(1.7); } }
.afv-vink:hover .afv-vak { border-color: var(--diep); }
.afv-vink:focus-visible { outline: 3px solid var(--diep); outline-offset: 4px; border-radius: 8px; }
.afv-vink b { display: block; font-family: Kanit, sans-serif; font-style: italic; font-weight: 800; font-size: 28px; line-height: 1.12; color: var(--nacht); margin-bottom: 8px; }
.afv-vink .t { display: block; font-size: 16px; line-height: 1.55; color: var(--zacht); }
.afv-muis { position: absolute; left: 0; top: 0; z-index: 6; line-height: 0; pointer-events: none; will-change: transform; filter: drop-shadow(0 10px 14px rgba(2,7,25,.28)); }
.afv-muis svg { display: block; transition: transform .16s ease; transform-origin: 3px 3px; }
.afv-muis.druk svg { transform: scale(.86); }
.zw-dingen { position: absolute; left: 0; top: 290px; width: 1440px; height: 300px; }
.zw-ding { position: absolute; top: 0; width: 384px; height: 300px; }
.zw-stap { position: absolute; top: 622px; width: 350px; }
.zw-stap h3 { margin-bottom: 8px; }
.zw-stap p { color: var(--zacht); }
.zw-nr { display: block; font-family: "JetBrains Mono", monospace; font-weight: 500; font-size: 13px; letter-spacing: .14em; color: var(--diep); margin-bottom: 10px; }
.zw-knop { position: absolute; left: 120px; top: 826px; }
.zw-bel .portret { position: absolute; left: 34px; top: 34px; width: 104px; height: 104px; border: 4px solid rgba(255,255,255,.9); }
.zw-bel .wie { position: absolute; left: 156px; top: 64px; }
.zw-bel .tijd { position: absolute; left: 34px; bottom: 22px; font-family: Kanit, sans-serif; font-style: italic; font-weight: 200; font-size: 80px; line-height: 1; letter-spacing: -.02em; color: #fff; }
.zw-bel .golf { position: absolute; right: 34px; bottom: 44px; display: flex; align-items: flex-end; gap: 5px; height: 56px; }
.zw-bel .golf i { display: block; width: 6px; height: 14px; border-radius: 3px; background: var(--helder); transform-origin: 50% 100%; transition: height .3s ease; }
.zw-bel.loopt .golf i:nth-child(1), .zw-bel.loopt .golf i:nth-child(7) { height: 20px; }
.zw-bel.loopt .golf i:nth-child(2), .zw-bel.loopt .golf i:nth-child(6) { height: 38px; }
.zw-bel.loopt .golf i:nth-child(3), .zw-bel.loopt .golf i:nth-child(5) { height: 52px; }
.zw-bel.loopt .golf i:nth-child(4) { height: 30px; }
.zw-bel.loopt .golf i:nth-child(8) { height: 44px; }
.zw-bel.loopt .golf i:nth-child(9) { height: 26px; }
html.beweeg .zw-bel.loopt .golf i { animation: zwgolf 1.1s ease-in-out infinite alternate; }
html.beweeg .zw-bel.loopt .golf i:nth-child(2n) { animation-delay: -.3s; }
html.beweeg .zw-bel.loopt .golf i:nth-child(3n) { animation-delay: -.6s; }
html.beweeg .zw-bel.loopt .golf i:nth-child(5n) { animation-delay: -.85s; }
@keyframes zwgolf { from { transform: scaleY(.35); } to { transform: scaleY(1); } }
.zw-plan { border-radius: 20px; background: var(--ijsvlak); }
.zw-plan .achter { position: absolute; left: 62px; top: 30px; width: 260px; height: 244px; border-radius: 14px; background: #C9DCF3; transform: rotate(-6deg); }
.zw-plan .vel { position: absolute; left: 62px; top: 26px; width: 260px; height: 248px; padding: 26px 24px 0; border-radius: 14px; background: #fff; box-shadow: 0 18px 40px rgba(2,7,25,.14); transform: rotate(2deg); }
.zw-plan .regel { display: flex; align-items: center; gap: 12px; padding: 11px 0; font-weight: 600; font-size: 16px; color: var(--nacht); border-top: 1px solid var(--lijn); }
.zw-plan .regel:first-child { border-top: 0; }
.zw-plan .vakje { position: relative; flex: none; width: 26px; height: 26px; border-radius: 8px; border: 2px solid var(--nacht); transition: background .2s ease, border-color .2s ease, transform .3s cubic-bezier(.2,.9,.2,1); }
.zw-plan .vakje .pijl { position: absolute; left: 7px; top: 4px; opacity: 0; transform: translate(-8px, -9px) scale(1.5); transition: opacity .18s ease, transform .3s cubic-bezier(.2,.9,.2,1); }
.zw-plan .regel.aan .vakje { background: var(--diep); border-color: var(--diep); transform: rotate(-4deg); }
.zw-plan .regel.aan .vakje .pijl { opacity: 1; transform: none; }
.zw-plan .stempel { position: absolute; right: -22px; bottom: 22px; padding: 7px 14px; border: 2.5px solid var(--diep); border-radius: 8px; font-family: "JetBrains Mono", monospace; font-weight: 500; font-size: 13px; letter-spacing: .12em; text-transform: uppercase; color: var(--diep); background: #fff; transform: rotate(-9deg) scale(1.7); opacity: 0; transition: opacity .15s ease, transform .3s cubic-bezier(.3,1.5,.5,1); }
.zw-plan .stempel.aan { opacity: 1; transform: rotate(-9deg) scale(1); }
.zw-aanuit .baan { position: absolute; left: 92px; top: 78px; width: 200px; height: 96px; border-radius: 48px; background: rgba(255,255,255,.24); transition: background .3s ease; }
.zw-aanuit .knopje { position: absolute; left: 8px; top: 8px; width: 80px; height: 80px; border-radius: 50%; background: #fff; box-shadow: 0 6px 14px rgba(2,7,25,.25); display: flex; align-items: center; justify-content: center; transition: transform .45s cubic-bezier(.3,1.4,.5,1), background .3s ease; }
.zw-aanuit .knopje .pijl { opacity: .25; transition: opacity .3s ease; }
.zw-aanuit .stand { position: absolute; left: 0; right: 0; top: 206px; text-align: center; font-family: Kanit, sans-serif; font-style: italic; font-weight: 800; font-size: 44px; line-height: 1; color: rgba(255,255,255,.45); transition: color .3s ease; }
.zw-aanuit.aan .baan { background: #fff; }
.zw-aanuit.aan .knopje { transform: translateX(104px); background: var(--nacht); }
.zw-aanuit.aan .knopje .pijl { opacity: 1; }
.zw-aanuit.aan .stand { color: #fff; }
.zw-aanuit .zw-muis { position: absolute; left: 0; top: 0; z-index: 6; line-height: 0; pointer-events: none; filter: drop-shadow(0 10px 14px rgba(2,7,25,.28)); transform: translate3d(318px, 232px, 0); transition: transform .8s cubic-bezier(.2,.9,.2,1); }
.zw-aanuit.wijst .zw-muis { transform: translate3d(138px, 128px, 0); }
.zw-muis svg { display: block; transition: transform .16s ease; transform-origin: 3px 3px; }
.zw-muis.druk svg { transform: scale(.86); }
.sr { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.loopregel { position: absolute; left: 120px; top: 494px; width: 1200px; padding: 6px 0; font-weight: 400; }
.loopregel .baan, .loopregel .stuk { display: block; }
.loopregel .stuk { font-size: 96px; }
.loopregel .stuk .pijl, .loopregel .stuk.tweede { display: none; }
html.beweeg .loopregel { left: 16px; width: 1408px; overflow: hidden; }
html.beweeg .loopregel .baan { display: flex; width: max-content; animation: loopregel 38s linear infinite; }
html.beweeg .loopregel .stuk, html.beweeg .loopregel .stuk.tweede { display: flex; align-items: center; gap: 56px; font-size: 132px; white-space: nowrap; padding-right: 56px; }
html.beweeg .loopregel .stuk .pijl { display: block; flex: none; }
@keyframes loopregel { to { transform: translateX(-50%); } }
.werk-baan { position: relative; display: block; height: calc(760px + 3 * 560px); background: #fff; }
.werk-pin { position: sticky; top: min(24px, calc(100vh / var(--z) - 776px)); left: auto; width: 1408px; height: 760px; margin: 0 16px; overflow: hidden; border-radius: 20px; background: var(--nacht); }
.werk-fotos img { position: absolute; left: 0; top: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0; transition: opacity .6s ease; }
.werk-fotos img.aan { opacity: 1; }
.werk-pin .laag { position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: linear-gradient(180deg, rgba(2,7,25,.72) 0%, rgba(2,7,25,0) 30%), linear-gradient(90deg, rgba(2,7,25,.84) 0%, rgba(2,7,25,.46) 48%, rgba(2,7,25,.1) 100%), linear-gradient(0deg, rgba(2,7,25,.84) 0%, rgba(2,7,25,0) 50%); }
.werk-pin .hoek { position: absolute; left: 0; bottom: 0; display: block; z-index: 5; }
.werk-pin .werk-lijst { position: absolute; left: 104px; top: 98px; z-index: 4; display: flex; gap: 34px; }
.werk-lijst button { display: inline-flex; align-items: baseline; gap: 12px; padding: 6px 0; border: 0; border-bottom: 2px solid transparent; background: none; font: 500 15px/1.4 Inter, sans-serif; color: rgba(255,255,255,.72); cursor: pointer; transition: color .2s ease, border-color .2s ease; }
.werk-lijst button span { font-family: "JetBrains Mono", monospace; font-size: 13px; }
.werk-lijst button:hover { color: #fff; }
.werk-lijst button[aria-current="true"] { color: #fff; font-weight: 600; border-bottom-color: var(--helder); }
.werk-lijst button[aria-current="true"] span { color: var(--helder); }
.werk-lijst button:focus-visible, .werk-rond:focus-visible, .vragenlijst .vraag:focus-visible { outline: 3px solid var(--ijs); outline-offset: 3px; }
.werk-pin .werk-case { position: absolute; left: 104px; bottom: 66px; width: 1060px; z-index: 3; opacity: 0; visibility: hidden; transition: opacity .45s ease, visibility 0s linear .45s; }
.werk-pin .werk-case.actief { opacity: 1; visibility: visible; transition: opacity .45s ease, visibility 0s linear 0s; }
.werk-case h3 { font-family: Anton, sans-serif; font-weight: 400; font-size: 84px; line-height: .94; text-transform: uppercase; letter-spacing: -.004em; color: #fff; white-space: nowrap; transform: translateY(24px); transition: transform .6s cubic-bezier(.2,.9,.2,1); }
.werk-case.actief h3 { transform: none; }
.werk-case p { font-size: 20px; line-height: 1.5; color: #DCE6F5; margin-top: 16px; }
.werk-case p b { color: #fff; }
.werk-case .verder { margin-top: 18px; }
.werk-pin .werk-rond { position: absolute; right: 72px; bottom: 60px; z-index: 4; width: 150px; height: 150px; border-radius: 50%; background: var(--diep); display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; color: #fff; font-weight: 600; font-size: 15px; transition: transform .25s cubic-bezier(.2,.9,.2,1); }
.werk-pin .werk-rond:hover { transform: scale(1.06); }
.werk-pin .werk-teller { position: absolute; right: 72px; top: 100px; z-index: 4; font-family: "JetBrains Mono", monospace; font-size: 14px; color: #fff; background: rgba(2,7,25,.6); padding: 6px 12px; border-radius: 999px; }
.bel img { display: block; height: auto; }
.bel.donker { background: var(--nacht); border-color: var(--nacht); }
.bellenveld { position: absolute; }
html.beweeg .bellenveld .bel { animation: none; }
.bellenveld .bel, .bellenveld a.bel { transition: none; cursor: grab; user-select: none; -webkit-user-select: none; touch-action: pan-y; will-change: transform; }
.bellenveld .bel img { pointer-events: none; -webkit-user-drag: none; }
.bellenveld a.bel { cursor: pointer; }
.bellenveld.sleept .bel, .bellenveld.sleept a.bel { cursor: grabbing; }
a.bel { transition: transform .25s cubic-bezier(.2,.9,.2,1); }
html.beweeg .bel { animation: zweef 7s ease-in-out infinite alternate; }
html.beweeg .bel:nth-child(2n) { animation-duration: 8.5s; animation-delay: -3s; }
html.beweeg .bel:nth-child(3n) { animation-duration: 6s; animation-delay: -1.5s; }
html.beweeg .bel:nth-child(5n) { animation-duration: 9.5s; animation-delay: -5s; }
@keyframes zweef { from { transform: translateY(-6px); } to { transform: translateY(7px); } }
html.beweeg .licht-op { opacity: .26; transition: opacity .5s ease; }
html.beweeg .licht-op.aan { opacity: 1; }
.voorna { position: absolute; border-radius: 20px; overflow: hidden; background: #13223F; }
.voorna .na { position: absolute; left: 0; top: 0; display: block; transform: translateY(46px); will-change: transform; }
.voorna .code { position: absolute; left: 16px; top: 16px; z-index: 2; font-family: "JetBrains Mono", monospace; font-weight: 500; font-size: 12px; letter-spacing: .08em; background: var(--ijs); color: var(--nacht); padding: 5px 9px; border-radius: 7px; transition: opacity .3s ease; }
.voorna .na-code { left: auto; top: auto; right: 16px; bottom: 54px; background: var(--nacht); color: #fff; }
.voorna .wat { position: absolute; z-index: 2; left: 16px; top: 52px; font-size: 14px; line-height: 1.4; font-weight: 500; color: #DCE6F5; transition: opacity .3s ease; }
.voorna .na-wat { left: auto; top: auto; right: 20px; bottom: 22px; color: #33445E; }
html.beweeg .voorna:not(.na-zichtbaar) .na-code, html.beweeg .voorna:not(.na-zichtbaar) .na-wat { opacity: 0; }
html.beweeg .voorna.voor-weg .code:not(.na-code), html.beweeg .voorna.voor-weg .voor-wat { opacity: 0; }
.weekrij { padding: 20px 0; }
.weekrij .oud { font-size: 15px; color: #6B7280; text-decoration: line-through; text-decoration-color: currentColor; transition: color .4s ease, text-decoration-color .4s ease; }
.weekrij .nieuw { font-weight: 600; font-size: 18px; margin-top: 6px; transition: opacity .4s ease; }
html.beweeg .weekrij:not(.om) .oud { color: var(--nacht); text-decoration-color: transparent; }
html.beweeg .weekrij:not(.om) .nieuw { opacity: .26; }
.oms { position: relative; display: block; overflow: hidden; background: var(--diep); flex: none; }
.oms.licht { background: #DDE8F5; }
.oms.donker { background: var(--navy); }
.oms.nacht { background: var(--nacht); }
.oms .gp { position: absolute; line-height: 0; transition: transform .45s cubic-bezier(.2,.9,.2,1); }
.oms .code { position: absolute; left: 12px; top: 12px; font-family: "JetBrains Mono", monospace; font-weight: 500; font-size: 11px; line-height: 1; letter-spacing: .08em; background: var(--nacht); color: #fff; padding: 5px 8px; border-radius: 6px; }
.oms.donker .code, .oms.nacht .code { background: var(--ijs); color: var(--nacht); }
.bc-kop { position: absolute; left: 120px; top: 100px; width: 1200px; font-family: Anton, sans-serif; font-weight: 400; font-size: 138px; line-height: .9; letter-spacing: -.004em; text-transform: uppercase; color: #fff; white-space: nowrap; }
.bc-plek { position: absolute; width: 270px; height: 392px; z-index: 2; }
.bc-plek:hover, .bc-plek:focus-within { z-index: 4; }
.bc-kaart { position: absolute; left: 0; top: 0; display: block; width: 270px; height: 392px; padding: 12px; border-radius: 18px; background: #fff; color: var(--nacht); box-shadow: 0 26px 50px rgba(2,7,25,.3); transform: rotate(var(--hoek, 0deg)); transition: transform .35s cubic-bezier(.2,.9,.2,1), box-shadow .3s ease; }
.bc-kaart:hover, .bc-kaart:focus-visible { transform: rotate(0deg) translateY(-14px); box-shadow: 0 40px 70px rgba(2,7,25,.42); }
.bc-kaart:focus-visible, .bc-rond:focus-visible { outline: 3px solid var(--ijs); outline-offset: 3px; }
.bc-kaart:hover .oms .gp { transform: translate(6px, -6px); }
.bc-kaart .oms { width: 246px; height: 190px; border-radius: 10px; }
.bc-kaart .datum { display: block; font-family: "JetBrains Mono", monospace; font-size: 13px; line-height: 1.3; letter-spacing: .02em; color: var(--zacht); margin: 16px 6px 0; }
.bc-kaart h3 { font-family: Kanit, sans-serif; font-style: italic; font-weight: 800; font-size: 21px; line-height: 1.14; letter-spacing: -.005em; margin: 8px 6px 0; }
.bc-rond { position: absolute; z-index: 5; width: 150px; height: 150px; border-radius: 50%; background: var(--nacht); display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; color: #fff; font-weight: 600; font-size: 15px; line-height: 1.2; text-align: center; }
.bc-rond > span:first-child { line-height: 0; }
.bc-rond:hover { background: var(--navy); }
html.beweeg .bc-plek[data-kom] { opacity: 1; transform: none; transition: none; }
html.beweeg .bc-plek[data-kom]:not(.in) .bc-kaart { opacity: 0; }
html.beweeg .bc-plek[data-kom].in .bc-kaart { animation: kaartval .8s cubic-bezier(.2,.9,.2,1) backwards; animation-delay: calc(var(--d, 0) * 90ms); }
@keyframes kaartval { from { opacity: 0; transform: rotate(calc(var(--hoek, 0deg) * 3)) translateY(70px); } to { opacity: 1; transform: rotate(var(--hoek, 0deg)); } }
.fd-vlak { left: 16px; top: 0; width: 1408px; height: 1180px; background: var(--nacht); border-radius: 20px; overflow: hidden; }
.fd-vlak > * { position: absolute; }
.fd-vlak img.foto { left: 0; top: 0; width: 1408px; height: 660px; object-fit: cover; object-position: 50% 24%; }
.fd-laag { left: 0; top: 0; width: 1408px; height: 661px; background: linear-gradient(0deg, #020719 0%, rgba(2,7,25,.9) 24%, rgba(2,7,25,.42) 50%, rgba(2,7,25,.1) 78%, rgba(2,7,25,.1) 100%); }
.fd-kop { font-size: 76px; font-weight: 400; line-height: .96; text-align: center; }
.ft-kop { font-family: Kanit, sans-serif; font-style: italic; font-weight: 800; font-size: 24px; line-height: 1.1; color: #fff; margin-bottom: 14px; }
.ft-lijst a { display: block; width: max-content; font-size: 16px; line-height: 2.1; color: #C9D3E3; transition: color .15s ease, transform .2s cubic-bezier(.2,.9,.2,1); }
.ft-lijst a:hover { color: #fff; transform: translateX(6px); }
.ft-mail { display: block; width: max-content; font-family: Kanit, sans-serif; font-style: italic; font-weight: 800; font-size: 30px; line-height: 1.1; color: #fff; padding-bottom: 6px; border-bottom: 2px solid var(--helder); }
.ft-contact p { font-size: 16px; line-height: 2.1; color: #C9D3E3; margin-top: 14px; }
.ft-contact p a:hover, .ft-recht a:hover { color: #fff; }
.ft-recht { display: flex; justify-content: space-between; align-items: center; font-size: 13px; line-height: 1.4; color: #7F8BA3; border-top: 1px solid rgba(255,255,255,.12); padding-top: 22px; }
.ft-recht span.r a { margin-left: 26px; }
.ft-lijst a:focus-visible, .ft-contact a:focus-visible, .ft-recht a:focus-visible { outline: 3px solid var(--ijs); outline-offset: 3px; }
.ft-lijst .ft-kop a { display: inline-block; width: auto; font: inherit; line-height: inherit; color: inherit; }
.ft-lijst .ft-kop a:hover { color: #fff; transform: translateX(6px); }
.ft-logo { display: block; line-height: 0; position: relative; }
.ft-logo:focus-visible { outline: 3px solid var(--diep); outline-offset: 8px; border-radius: 6px; }
.ft-logo .ft-muis { position: absolute; left: 0; top: 0; width: 46px; pointer-events: none; z-index: 2; filter: drop-shadow(0 6px 14px rgba(0,0,0,.45)); }
.ft-logo .ft-muis svg { display: block; width: 100%; height: auto; }
.ft-logo .ft-ring { position: absolute; left: 0; top: 0; width: 64px; height: 64px; margin: -32px 0 0 -32px; border-radius: 50%; border: 3px solid var(--helder); pointer-events: none; opacity: 0; }
.vkop { display: flex; justify-content: space-between; align-items: flex-end; margin-bottom: 48px; }
.vragenlijst { position: relative; }
.vragenlijst h3 { font: inherit; }
.vraagblok { border-top: 1px solid var(--lijn); }
.vraagblok:last-child { border-bottom: 1px solid var(--lijn); }
.vragenlijst .vraag { justify-content: flex-start; gap: 0; width: 100%; padding: 24px 0; border: 0; background: none; font-family: inherit; text-align: left; cursor: pointer; }
.vragenlijst .vraag .nr { width: 96px; flex: none; font-family: "JetBrains Mono", monospace; font-weight: 400; font-size: 14px; letter-spacing: .02em; color: var(--diep); }
.vragenlijst .vraag .q { flex: 1; font-family: Anton, sans-serif; font-weight: 400; font-size: 56px; line-height: 1.04; letter-spacing: -.004em; text-transform: uppercase; color: var(--nacht); transition: color .2s ease, transform .3s cubic-bezier(.2,.9,.2,1); }
.vragenlijst .vraag:hover .q { transform: translateX(10px); }
.vragenlijst .vraag:hover .q, .vraagblok.open .q { color: var(--diep); }
.vragenlijst .rond { width: 60px; height: 60px; flex: none; border-radius: 50%; border: 1.5px solid #C5CCD8; display: flex; align-items: center; justify-content: center; transition: background .2s ease, border-color .2s ease; }
.vragenlijst .vraag:hover .rond { border-color: var(--nacht); }
.vraagblok.open .rond, .vraagblok.open .vraag:hover .rond { background: var(--diep); border-color: var(--diep); }
.pm { display: block; }
.pm path { fill: none; stroke: var(--nacht); stroke-width: 2.2; stroke-linecap: round; transition: stroke .2s ease; }
.pm .staand { transform-origin: 10px 10px; transition: transform .3s cubic-bezier(.2,.9,.2,1), stroke .2s ease, visibility 0s linear 0s; }
.vraagblok.open .pm path { stroke: #fff; }
.vraagblok.open .pm .staand { transform: scaleY(0); visibility: hidden; transition: transform .3s cubic-bezier(.2,.9,.2,1), stroke .2s ease, visibility 0s linear .3s; }
.antwoord { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .4s cubic-bezier(.2,.9,.2,1); }
.vraagblok.open .antwoord { grid-template-rows: 1fr; }
.antwoord > div { min-height: 0; overflow: hidden; visibility: hidden; transition: visibility 0s linear .4s; }
.vraagblok.open .antwoord > div { visibility: visible; transition: visibility 0s linear 0s; }
.antwoord p { margin: 0 0 34px 96px; max-width: 700px; font-size: 19px; line-height: 1.6; color: var(--zacht); }
.blogwissel { border-radius: 20px; overflow: hidden; background: #fff; box-shadow: 0 20px 44px rgba(2,7,25,.28); }
.blogwissel .balk { position: absolute; left: 0; top: 0; right: 0; height: 30px; z-index: 2; display: flex; align-items: center; gap: 7px; padding-left: 16px; background: #EEF2F7; }
.blogwissel .balk i { display: block; width: 9px; height: 9px; border-radius: 50%; background: #C3CCDA; }
.blogwissel .beelden { position: absolute; left: 0; top: 30px; display: block; width: 540px; height: 390px; }
.blogwissel img { position: absolute; left: 0; top: 0; width: 540px; height: 390px; object-fit: cover; opacity: 0; transition: opacity .7s ease; }
.blogwissel img.aan { opacity: 1; }
.knoplink { display: inline-block; line-height: 0; }
.tijdelijk { position: absolute; left: 16px; top: 16px; font-family: "JetBrains Mono", monospace; font-weight: 500; font-size: 12px; letter-spacing: .08em; background: var(--ijs); color: var(--nacht); padding: 5px 9px; border-radius: 7px; z-index: 2; }
html.figma .kop-logo, html.figma .kop-nav, html.figma .kop-knop, html.figma .menuknop { position: absolute; }
html.figma .kop-logo { mix-blend-mode: normal; }
html.figma .kop-logo .omkeer { display: none; }
html.figma .kop-logo [data-inlinelogo] { visibility: visible; }
html.figma .doek, html.figma .mega, html.figma .menupaneel { display: none; }
html.figma .hero2 { height: 900px; }
html.figma .werk-baan { height: 760px; }
html.figma .stapel .dienst { position: relative; top: auto; }
html.figma .blogwissel img { opacity: 1; }
html.figma .blogwissel img:nth-child(1) { z-index: 7; }
html.figma .blogwissel img:nth-child(2) { z-index: 6; }
html.figma .blogwissel img:nth-child(3) { z-index: 5; }
html.figma .blogwissel img:nth-child(4) { z-index: 4; }
html.figma .blogwissel img:nth-child(5) { z-index: 3; }
html.figma .blogwissel img:nth-child(6) { z-index: 2; }
html.figma .blogwissel img:nth-child(7) { z-index: 1; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  body, .kop-logo, .kop-nav, .kop-knop a, .doek, .mega, .menupaneel, .kop-nav .haakje, .werk-pin .werk-case, .werk-case h3, .werk-fotos img, .werk-pin .werk-rond, .antwoord, .antwoord > div, a.bel, .bc-kaart, .oms .gp, .vragenlijst .vraag .q, .vragenlijst .rond, .pm path, .pm .staand, .ft-lijst a { transition: none !important; }
  .werk-case h3 { transform: none; }
  .afv-vak, .afv-vak .pijl, .afv-teller, .afv-muis svg { transition: none !important; }
  .zw-bel .golf i, .zw-plan .vakje, .zw-plan .vakje .pijl, .zw-plan .stempel, .zw-aanuit .baan, .zw-aanuit .knopje, .zw-aanuit .knopje .pijl, .zw-aanuit .stand, .zw-aanuit .zw-muis, .zw-muis svg { transition: none !important; }
  .afv-vak.klik::after { animation: none; }
  .mega, .menupaneel { transform: none !important; }
  body.gescrold .kop-nav { transform: translateX(-50%); }
}
@media (min-width: 1441px) {
  html { background: #fff; }
}
@media (min-width: 761px) { .fd-vlak:has(> svg[style*="right:0;top:0"]) { border-top-right-radius: 0 !important; } }
@media (min-width: 761px) { .fd-vlak:has(> svg[style*="right:0;top:0"]) { clip-path: polygon(0 0, calc(100% - 72px) 0, 100% 76px, 100% 100%, 0 100%); } }
@media (min-width: 761px) {
  .werk-baan { --werk-hoog: max(620px, calc(100vh / var(--z))); height: calc(var(--werk-hoog) + 3 * 560px); }
  html.figma .werk-baan { height: var(--werk-hoog); }
  .werk-pin { top: 0; width: 1440px; height: var(--werk-hoog); margin: 0; border-radius: 0; }
  .werk-pin .hoek { display: none; }
  .werk-pin .werk-lijst { left: 120px; top: 122px; }
  .werk-pin .werk-case { left: 120px; }
  .werk-pin .werk-rond { right: 88px; }
  .werk-pin .werk-teller { right: 88px; top: 124px; }
}
@media (max-width: 760px) {
html { -webkit-text-size-adjust: 100%; }
  body { width: 100% !important; min-width: 0 !important; margin: 0 !important; zoom: 1 !important; overflow-x: hidden; }
  .pagina { width: 100% !important; overflow: hidden; }
  img, video { max-width: 100%; }
.kop-nav, .mega { display: none !important; }
  .doek, .menupaneel { display: none; }
  .kop-logo { left: 20px !important; top: 28px !important; transform: scale(.5) !important; transform-origin: left top; }
  .kop-knop { left: auto !important; right: 20px !important; top: 18px !important; transform: scale(.76) !important; transform-origin: right top; }
  .menuknop { left: 50% !important; right: auto !important; top: 778px !important; bottom: auto !important; transform: translateX(-50%) !important; z-index: 70; box-shadow: 0 10px 30px rgba(2,7,25,.28); }
  html:not(.figma) .menuknop { position: fixed !important; top: auto !important; bottom: 18px !important; }
body.menu-open .doek { display: block !important; opacity: 1 !important; visibility: visible !important; }
  body.menu-open .menupaneel { display: block !important; position: fixed !important; left: 8px !important; right: 8px !important; top: auto !important; bottom: 72px !important; width: auto !important; height: auto !important; max-height: calc(100vh - 96px); overflow: auto; margin: 0 !important; padding: 26px 20px 24px; border-radius: 16px; opacity: 1 !important; visibility: visible !important; transform: none !important; z-index: 69; box-shadow: 0 24px 60px rgba(2,7,25,.4); }
  html.figma body.menu-open .menupaneel { position: absolute !important; top: 84px !important; bottom: auto !important; max-height: none; }
  html.figma body.menu-open .doek { position: absolute !important; height: 844px; }
  body.menu-open .menupaneel > div { position: static !important; left: auto !important; top: auto !important; width: auto !important; }
  body.menu-open .menupaneel .groot a { display: flex; align-items: baseline; gap: 12px; padding: 3px 0; min-height: 44px; box-sizing: border-box; }
  body.menu-open .menupaneel .groot .b2 { font-size: 34px !important; line-height: 1.05 !important; }
  body.menu-open .menupaneel > div + div { margin-top: 22px; padding-top: 20px; border-top: 1px solid var(--lijn); }
  body.menu-open .menupaneel > div + div > div:first-of-type { font-size: 16px !important; line-height: 2 !important; display: flex; gap: 16px; }
body.menu-open .menupaneel > div + div > div:first-of-type > div { flex: 1 1 0; min-width: 0; }
  body.menu-open .menupaneel > div + div > div:nth-of-type(2) { margin-top: 20px !important; padding-top: 18px !important; }
.pagina .sec { height: auto !important; min-height: 0 !important; padding: 64px 20px; box-sizing: border-box; }
  .pagina > section:not(.sec) { padding: 64px 20px !important; box-sizing: border-box; }
  .pagina .sec > *, .pagina .binnen > * { position: relative !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; width: auto !important; max-width: 100%; transform: none !important; box-sizing: border-box; }
  .pagina .sec > * + * { margin-top: 24px; }
  .pagina .sec > h2 + p, .pagina .sec > h2 + .intro { margin-top: 16px; }
.c1, .c2 { font-size: 60px !important; line-height: .95 !important; width: auto !important; overflow-wrap: normal; }
  .b1 { font-size: 36px !important; line-height: 1.06 !important; white-space: normal !important; width: auto !important; text-wrap: balance; }
  .b2 { font-size: 26px !important; line-height: 1.12 !important; white-space: normal !important; }
  .b3 { font-size: 21px !important; line-height: 1.16 !important; }
  .intro { font-size: 18px !important; line-height: 28px !important; }
  .link { font-size: 16px; }
.pagina > header.sec { margin: 0; border-left: 8px solid transparent; border-right: 8px solid transparent; padding: 112px 12px 28px !important; border-radius: 0; background: var(--nacht); background-origin: border-box; display: flex; flex-direction: column; gap: 28px; overflow: visible; clip-path: inset(0); }
  .pagina > header.sec > * + * { margin-top: 0; }
  .pagina > header.sec > h1 { order: 1; margin: 0; }
  .pagina > header.sec > .binnen { order: 2; height: auto !important; background: none !important; border-radius: 0 !important; overflow: visible; display: flex; flex-direction: column; gap: 16px; }
  .pagina > header.sec > .binnen > svg { display: none !important; }                 
  .pagina > header.sec > .binnen { clip-path: none !important; }                       
  .pagina > header.sec > *:not(h1):not(.binnen) { order: 3; }
  .dp-kop .c2 { width: auto !important; }
.dp-kop .c2 { padding-left: .5em; text-indent: -.5em; }
  .dp-kop .c2::before { display: none; }
  .dp-kop .c2 .kop-terug { margin-left: -.5em; padding-right: 0; }
  .dp-kop .b2 { margin-top: 12px; font-size: 22px !important; white-space: normal !important; width: auto !important; }
.pagina > header.sec > .binnen:not(.dp-foto):not(:has(> :not(svg))) { display: none !important; }
.pagina > header.sec > .binnen.dp-foto { position: absolute !important; inset: 0 -8px !important; order: 0; display: block; width: auto !important; height: auto !important; max-width: none; border-radius: 0 !important; background: var(--nacht) !important; overflow: hidden; }
  .pagina > header.sec > .binnen.dp-foto > * { position: absolute !important; left: 0 !important; top: 0 !important; width: 100% !important; height: 100% !important; max-width: none; }
  .pagina > header.sec > .binnen.dp-foto > img, .pagina > header.sec > .binnen.dp-foto > video { object-fit: cover; }
  .pagina > header.sec > .binnen.dp-foto > .boven { height: 150px !important; }
  .pagina > header.sec:has(> .binnen.dp-foto) { min-height: 540px !important; justify-content: flex-end; padding-bottom: 48px !important; }
  .pagina > header.sec:has(> .binnen.dp-foto) > h1 { position: relative !important; z-index: 2; }
.pagina:has(#team) > header.sec > .binnen.dp-foto, .pagina:has(> #vragen:nth-child(2)) > header.sec > .binnen.dp-foto, .pagina.hero-foto-heel > header.sec > .binnen.dp-foto { position: relative !important; inset: auto !important; order: 2; aspect-ratio: 16 / 9; border-radius: 12px !important; }
  .pagina:has(#team) > header.sec > .binnen.dp-foto > .laag, .pagina:has(#team) > header.sec > .binnen.dp-foto > .boven, .pagina:has(> #vragen:nth-child(2)) > header.sec > .binnen.dp-foto > .laag, .pagina:has(> #vragen:nth-child(2)) > header.sec > .binnen.dp-foto > .boven { display: none; }
  .pagina:has(#team) > header.sec, .pagina:has(> #vragen:nth-child(2)) > header.sec { min-height: 0 !important; justify-content: flex-start; padding-bottom: 40px !important; }
.blogwissel { width: 100% !important; height: auto !important; aspect-ratio: 540 / 420; border-radius: 14px; }
  .blogwissel .balk { height: 22px; padding-left: 12px; gap: 5px; }
  .blogwissel .balk i { width: 7px; height: 7px; }
  .blogwissel .beelden { top: 22px !important; width: 100% !important; height: calc(100% - 22px) !important; }
  .blogwissel .beelden img { width: 100% !important; height: 100% !important; object-fit: cover; object-position: left top; }
  .blogwissel.groot { aspect-ratio: 660 / 343; }
.pagina > header.sec > .binnen > .blogwissel + .blogwissel { margin-top: 0; }
  .pagina > header.sec > .binnen > .blogwissel:first-child:not(:last-of-type) { display: none; }
.ot-kaart { width: 100% !important; height: auto !important; aspect-ratio: 1 / 1; border-radius: 16px; }
  .ot-kaart.klein { width: 220px !important; }
.vlak.vlak-rond { border-radius: 16px; }
  .vlak.vlak-rond > * { position: relative; }
.pagina .sec.tel-vlak { margin: 12px 8px; padding: 32px 16px 36px; border-radius: 16px; }
  .pagina .sec.tel-vlak .ot-kaart.klein { width: 168px !important; }
.pagina .sec.tel-vlak:has(> .ot-kaart.klein + .ot-kaart.klein) { display: grid; grid-template-columns: 1fr 1fr; column-gap: 14px; }
  .pagina .sec.tel-vlak:has(> .ot-kaart.klein + .ot-kaart.klein) > * { grid-column: 1 / -1; }
  .pagina .sec.tel-vlak:has(> .ot-kaart.klein + .ot-kaart.klein) > .ot-kaart.klein { grid-column: auto; width: 100% !important; margin-top: 0 !important; }
.pagina #vanzelf .ot-kaart.klein { width: 100% !important; aspect-ratio: 16 / 10; transform: none !important; }
  .pagina #vanzelf .ot-kaart.klein img { object-fit: cover; object-position: 50% 0 !important; }
.av-def p { font-size: 20px !important; line-height: 30px !important; margin-bottom: 16px; }
  .av-wie img { width: 44px; height: 44px; }
  .av-pad { flex-wrap: wrap; row-gap: 6px; }
.vkop { flex-direction: column; align-items: flex-start !important; gap: 14px; margin-bottom: 28px !important; }
  .vkop > div { padding-bottom: 0 !important; }
  .vragenlijst .vraag { gap: 12px; padding: 18px 0 !important; align-items: flex-start; }
  .vragenlijst .vraag .nr { display: none; }
  .vragenlijst .vraag .q { font-size: 30px !important; line-height: 1.02 !important; flex: 1; min-width: 0; hyphens: auto; hyphenate-limit-chars: 18 5 5; overflow-wrap: anywhere; }
  .vragenlijst .vraag .rond { flex: none; width: 40px !important; height: 40px !important; }
  .vragenlijst .antwoord, .vragenlijst .antwoord > div, .vragenlijst .antwoord p { padding-left: 0 !important; margin-left: 0 !important; max-width: none !important; }
  .vragenlijst .antwoord > div { padding: 0 0 20px 0 !important; }
  .vragenlijst .antwoord p { font-size: 17px !important; line-height: 27px !important; }
  .ct-lijst .vraag { flex-wrap: wrap; }
  .ct-lijst .ct-bij { order: 3; flex: 0 0 100%; margin: 4px 0 0 !important; text-align: left !important; font-size: 16px !important; line-height: 24px !important; max-width: none !important; }
.rs-vlak { height: auto !important; padding: 28px 24px 30px; margin-left: -12px; margin-right: -12px; max-width: none !important; }
  .rs-vlak > * { position: relative !important; left: auto !important; top: auto !important; height: auto !important; }
  .rs-rij { flex-direction: column; align-items: flex-start; gap: 14px; }
  .rs-getal.groot { font-size: 104px !important; line-height: .88 !important; }
  .rs-wat.groot { font-size: 23px !important; }
  .rs-naast { max-width: none; gap: 12px; }
.knoplink { display: inline-block; max-width: 100%; }
.link { position: relative; }
  .link::after { content: ""; position: absolute; left: -6px; right: -6px; top: -9px; bottom: -9px; }
  .kop-knop a::after, .menuknop::after { content: ""; position: absolute; left: 0; right: 0; top: -8px; bottom: -8px; }
html { background: #fff; }
.pagina { padding-bottom: calc(8px + env(safe-area-inset-bottom, 0px)); }
  .pagina > footer.sec { margin: 0 8px 0; padding: 0 12px 26px !important; border-radius: 16px; background: var(--nacht) !important; overflow: hidden; display: grid; grid-template-columns: 1fr 1fr; column-gap: 16px; }
  .pagina > footer.sec > * { grid-column: 1 / -1; margin-top: 0 !important; }
  .pagina > footer.sec > .fd-vlak { height: 330px !important; margin: 0 -12px; border-radius: 0; background: var(--nacht); width: calc(100% + 24px) !important; max-width: none !important; }
  .fd-vlak img.foto { width: 100% !important; height: 100% !important; object-position: 60% 24%; }
  .fd-laag { width: 100% !important; height: 100% !important; }
  .fd-vlak > svg { display: none !important; }
  .fd-kop { font-size: 44px !important; line-height: .98 !important; text-align: left !important; margin-top: -86px !important; z-index: 2; }
  .pagina > footer.sec > p.intro { text-align: left !important; margin-top: 14px !important; }
  .pagina > footer.sec > div:has(> .knoplink) { flex-direction: column; align-items: flex-start !important; justify-content: flex-start !important; gap: 20px !important; margin-top: 24px !important; }
  .pagina > footer.sec > .ft-lijst { grid-column: auto; margin-top: 44px !important; }
  .pagina > footer.sec > .ft-lijst:nth-of-type(3n) { }
  .ft-kop { font-size: 20px; margin-bottom: 8px; }
  .ft-lijst a { font-size: 16px; line-height: 44px; }
  .pagina > footer.sec > .ft-contact { margin-top: 40px !important; }
  .ft-mail { font-size: 24px; }
  .pagina > footer.sec > .ft-recht { flex-direction: column; align-items: flex-start; gap: 12px; margin-top: 32px !important; padding-top: 18px; }
  .ft-recht span.r { display: flex; flex-wrap: wrap; gap: 0 20px; }
  .ft-recht span.r a { line-height: 44px; }
  .ft-contact p { line-height: 44px !important; margin-top: 8px !important; }
  .ft-recht span.r a { margin-left: 0; }
  .pagina > footer.sec > div:has([data-inlinelogo]) { margin-top: 26px !important; }
  .pagina > footer.sec [data-inlinelogo] svg { width: 100% !important; height: auto !important; }
}
@media (max-width: 760px) {
.hero2 { margin: 0; height: 100vh; height: 100svh; min-height: 560px; border-radius: 0; }
  html.figma .hero2 { height: 800px; }
  .hero2 video { object-position: 70% 50%; }
  .hero2 .laag { background: linear-gradient(0deg, rgba(2,7,25,.92) 0%, rgba(2,7,25,.62) 34%, rgba(2,7,25,.2) 64%, rgba(2,7,25,.62) 100%), linear-gradient(0deg, rgba(10,113,217,.5) 0%, rgba(10,113,217,0) 38%); }
  .hero2 h1 { left: 20px; right: 20px; bottom: 74px; }
  .hero2 h1 .c1 { font-size: min(64px, 16.4vw) !important; line-height: .92 !important; }
  .hero2 h1 .tweede { margin-left: .75em; }
  .hero2 h1 .b2 { margin-top: 12px; font-size: 24px !important; white-space: normal !important; }
main#top > #jesse { margin: 12px 8px; padding: 12px 12px 38px; border-radius: 16px; background: var(--diep) !important; display: flex; flex-direction: column; }
  main#top > #jesse > [data-vlak] { display: none; }
  main#top > #jesse > .jesse-hoek { display: none !important; }   
  main#top > #jesse > * { margin-top: 0; }
  main#top > #jesse > video.foto { order: 1; width: 100% !important; height: 216px !important; border-radius: 12px; object-position: 50% 40%; }
  main#top > #jesse > video.foto + div { position: absolute !important; left: 12px !important; right: 12px !important; top: 108px !important; width: auto !important; height: 120px !important; border-radius: 0 0 12px 12px !important; }
  main#top > #jesse > .loopregel { order: 2; margin: -46px 4px 0; padding: 0; z-index: 2; }
  .loopregel .stuk { font-size: 50px !important; line-height: .94 !important; text-wrap: balance; }
html.beweeg main#top > #jesse > .loopregel { margin: -40px -12px 0; padding: 4px 0; overflow: hidden; max-width: none; }
  html.beweeg .loopregel .stuk, html.beweeg .loopregel .stuk.tweede { font-size: 72px !important; gap: 28px; padding-right: 28px; }
  html.beweeg .loopregel .stuk .pijl { width: auto; height: 46px; }
  main#top > #jesse > div:has(> .intro) { display: contents; }
  main#top > #jesse .intro { order: 3; margin: 22px 4px 0; }
  main#top > #jesse .intro + .tekst { order: 4; margin: 14px 4px 0 !important; }
  main#top > #jesse > div:has(> .pil) { order: 5; margin: 26px 4px 0; }
  main#top > #jesse .pil { font-size: 15px; padding: 9px 16px; }
  main#top > #jesse .pil + div { flex-direction: row !important; flex-wrap: wrap; gap: 8px !important; margin-top: 10px !important; }
  main#top > #jesse .intro ~ div { order: 6; margin: 28px 4px 0 !important; }
.pagina > section:has(> .stapel), main#top > section:has(> .stapel) { padding: 64px 0 12px !important; }
  section > div:has(+ .stapel) { height: auto !important; padding: 0 20px 28px; }
  section > div:has(+ .stapel) > * { position: relative !important; left: auto !important; top: auto !important; width: auto !important; }
  section > div:has(+ .stapel) > * + * { margin-top: 16px; }
.stapel { padding: 0 8px 28px !important; display: flex; flex-direction: column; gap: 12px; }
  html.figma .stapel .dienst { position: relative !important; top: auto !important; }
html:not(.figma) .stapel .dienst > :not(.inhoud) { max-height: max(140px, calc(100svh - 430px)); }
  .stapel .dienst { position: sticky !important; left: auto !important; top: calc(72px + var(--i, 0) * 10px) !important; width: auto !important; height: auto !important; margin: 0 !important; padding: 30px 16px 30px; display: flex; flex-direction: column; }
  .stapel .dienst > .inhoud { display: contents; }
  .stapel .dienst > .inhoud > * { order: 3; }
  .stapel .dienst > .inhoud > h3 { order: 1; }
  .stapel .dienst > :not(.inhoud) { order: 2; position: relative !important; left: auto !important; top: auto !important; width: 100% !important; height: auto !important; aspect-ratio: 540 / 420; margin: 18px 0 8px; border-radius: 12px; }
main#top > .werk-baan { --werk-hoog: 100vh; height: calc(var(--werk-hoog) + 3 * 420px) !important; margin-top: 44px; padding: 0 !important; }
  @supports (height: 100dvh) { main#top > .werk-baan { --werk-hoog: 100dvh; } }
  html.figma main#top > .werk-baan { height: var(--werk-hoog) !important; }
  .werk-pin { position: sticky !important; top: 0 !important; width: auto !important; height: var(--werk-hoog) !important; margin: 0 !important; overflow: hidden; border-radius: 0; background: var(--nacht); display: block; }
  .werk-pin > .hoek, .werk-pin > .werk-teller { display: none !important; }
  .werk-pin > .werk-fotos img:nth-child(1) { object-position: 85% 50%; }
  .werk-pin > .werk-fotos img:nth-child(2) { object-position: 70% 50%; }
  .werk-pin > .werk-fotos img:nth-child(3) { object-position: 44% 50%; }
  .werk-pin > .werk-fotos img:nth-child(4) { object-position: 62% 50%; }
.werk-pin > .laag { background: linear-gradient(0deg, rgba(2,7,25,.96) 0%, rgba(2,7,25,.82) 30%, rgba(2,7,25,.2) 62%, rgba(2,7,25,.6) 100%); }
.werk-pin > .werk-lijst { left: 20px !important; right: 20px; top: 76px !important; gap: 6px; }
  .werk-lijst button { flex: 1 1 0; min-width: 0; height: 44px; padding: 20px 0 21px; border: 0 !important; border-radius: 2px; background: rgba(255,255,255,.32); background-clip: content-box; font-size: 0 !important; line-height: 0; overflow: hidden; }
  .werk-lijst button span { display: none; }
  .werk-lijst button[aria-current="true"] { background-color: #fff; }
  .werk-pin > .werk-case { left: 20px !important; right: 20px; bottom: 104px !important; width: auto !important; }
  .werk-case h3 { font-size: 40px; white-space: normal; transform: none !important; }
  .werk-case p { font-size: 17px; line-height: 26px; margin-top: 10px; }
.werk-pin > .werk-rond { right: 20px !important; top: 132px; bottom: auto !important; width: 88px; height: 88px; font-size: 12px; line-height: 1.15; }
  .werk-pin > .werk-rond svg { width: 14px; height: auto; }
:is(main#top, .pagina) > #bewijs:has(> .bellenveld) { display: flex; flex-direction: column; }
  :is(main#top, .pagina) > #bewijs:has(> .bellenveld) > * { margin-top: 0; }
  :is(main#top, .pagina) > #bewijs:has(> .bellenveld) > h2 { order: 1; }
  :is(main#top, .pagina) > #bewijs:has(> .bellenveld) > .bellenveld { order: 2; align-self: center; width: 100% !important; max-width: 420px; height: auto !important; aspect-ratio: 350 / 421; margin-top: 28px; }
  .bellenveld > .bel { height: auto !important; aspect-ratio: 1; padding: 0; animation: none !important; }
  .bellenveld > a.bel { padding: 0 14px; font-size: 15px; line-height: 1.2; }
  .bellenveld > .bel:nth-child(1) { left: 0.57% !important; top: 0.48% !important; width: 31.71% !important; }      .bellenveld > .bel:nth-child(1) img { width: 73% !important; }
  .bellenveld > .bel:nth-child(2) { left: 33.75% !important; top: 0.48% !important; width: 23.71% !important; }     .bellenveld > .bel:nth-child(2) img { width: 63% !important; }
  .bellenveld > .bel:nth-child(3) { left: 69.71% !important; top: 0.48% !important; width: 29.71% !important; }     .bellenveld > .bel:nth-child(3) img { width: 70% !important; }
  .bellenveld > .bel:nth-child(4) { left: 25.14% !important; top: 21.59% !important; width: 22.86% !important; }    .bellenveld > .bel:nth-child(4) img { width: 72% !important; }
  .bellenveld > .bel:nth-child(5) { left: 49.4% !important; top: 16.95% !important; width: 24% !important; }        .bellenveld > .bel:nth-child(5) img { width: 77% !important; }
  .bellenveld > .bel:nth-child(6) { left: 71.43% !important; top: 27.12% !important; width: 28% !important; }       .bellenveld > .bel:nth-child(6) img { width: 70% !important; }
  .bellenveld > .bel:nth-child(7) { left: 0.57% !important; top: 35.77% !important; width: 31.71% !important; }     .bellenveld > .bel:nth-child(7) img { width: 75% !important; }
  .bellenveld > .bel:nth-child(8) { left: 39.48% !important; top: 37.75% !important; width: 28% !important; }       .bellenveld > .bel:nth-child(8) img { width: 70% !important; }
  .bellenveld > .bel:nth-child(9) { left: 64.81% !important; top: 51.51% !important; width: 28% !important; }       .bellenveld > .bel:nth-child(9) img { width: 73% !important; }
  .bellenveld > .bel:nth-child(10) { left: 0.57% !important; top: 63.94% !important; width: 26.29% !important; }    .bellenveld > .bel:nth-child(10) img { width: 79% !important; }
  .bellenveld > .bel:nth-child(11) { left: 28.02% !important; top: 59.51% !important; width: 22.29% !important; }
  .bellenveld > .bel:nth-child(12) { left: 75.71% !important; top: 75.56% !important; width: 23.71% !important; }   .bellenveld > .bel:nth-child(12) img { width: 63% !important; }
  .bellenveld > .bel:nth-child(13) { left: 22.63% !important; top: 79.59% !important; width: 23.71% !important; }   .bellenveld > .bel:nth-child(13) img { width: 54% !important; }
  .bellenveld > .bel:nth-child(14) { left: 47.18% !important; top: 71.23% !important; width: 26.29% !important; }   .bellenveld > .bel:nth-child(14) img { width: 74% !important; }
  :is(main#top, .pagina) > #bewijs:has(> .bellenveld) > img.foto { order: 3; width: auto !important; height: 300px !important; margin: 40px -12px 0; max-width: none; border-radius: 16px; object-position: 36% 50%; }
  :is(main#top, .pagina) > #bewijs:has(> .bellenveld) > div.abs { order: 4; align-self: flex-start; margin: -92px 4px 0; padding: 16px 20px !important; z-index: 2; }
  :is(main#top, .pagina) > #bewijs:has(> .bellenveld) > .review { order: 5; height: auto !important; margin: 12px -12px 0; max-width: none; padding: 24px 20px 26px; border-radius: 16px; }
  :is(main#top, .pagina) > #bewijs:has(> .bellenveld) > div.abs + .review { margin-top: 36px; }
main#top > #lezen { margin: 12px 8px; padding: 40px 12px 40px; border-radius: 16px; background: var(--diep) !important; }
  main#top > #lezen > [data-vlak] { display: none; }
  main#top > #lezen > .bc-rond { position: relative !important; justify-self: end; width: 116px !important; height: 116px; margin: -6px 4px 0 0; font-size: 14px; }
.stapel .link, .werk-case .link, #jesse .link, #bewijs .link { position: relative; }
  .stapel .link::after, .werk-case .link::after, #jesse .link::after, #bewijs .link::after { content: ""; position: absolute; left: 0; right: 0; top: -8px; bottom: -8px; }
main#top > #vragen { padding: 64px 20px !important; }
  main#top > .sec { height: auto !important; min-height: 0 !important; padding: 64px 20px; box-sizing: border-box; }
  main#top > .sec > * { position: relative !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; width: auto !important; max-width: 100%; box-sizing: border-box; }
  main#top > .sec > * + * { margin-top: 24px; }
  main#top > .sec > h2 + p, main#top > .sec > h2 + .intro { margin-top: 16px; }
main#top { padding-bottom: calc(8px + env(safe-area-inset-bottom, 0px)); }
  main#top > footer.sec { margin: 0 8px 0; padding: 0 12px 26px !important; border-radius: 16px; background: var(--nacht) !important; overflow: hidden; display: grid; grid-template-columns: 1fr 1fr; column-gap: 16px; }
  main#top > footer.sec > * { grid-column: 1 / -1; margin-top: 0 !important; }
  main#top > footer.sec > .fd-vlak { height: 330px !important; margin: 0 -12px; border-radius: 0; background: var(--nacht); width: calc(100% + 24px) !important; max-width: none !important; }   
  main#top > footer.sec > p.intro { text-align: left !important; margin-top: 14px !important; }
  main#top > footer.sec > div:has(> .knoplink) { flex-direction: column; align-items: flex-start !important; justify-content: flex-start !important; gap: 20px !important; margin-top: 24px !important; }
  main#top > footer.sec > .ft-lijst { grid-column: auto; margin-top: 44px !important; }
  main#top > footer.sec > .ft-contact { margin-top: 40px !important; }
  main#top > footer.sec > .ft-recht { flex-direction: column; align-items: flex-start; gap: 12px; margin-top: 32px !important; padding-top: 18px; }
  main#top > footer.sec > div:has([data-inlinelogo]) { margin-top: 26px !important; }
  main#top > footer.sec [data-inlinelogo] svg { width: 100% !important; height: auto !important; }
}
@media (max-width: 760px) {
.pagina .sec.dp-afv, main#top > #herkenbaar { margin: 12px 8px; padding: 44px 16px 48px; border-radius: 16px; background: var(--mist) !important; display: flex; flex-direction: column; align-items: flex-start; }
  .pagina .sec.dp-afv > *, main#top > #herkenbaar > * { order: 2; margin-top: 22px; }
  .pagina .sec.dp-afv > h2, main#top > #herkenbaar > h2 { order: 0; align-self: stretch; margin-top: 0; }
  .pagina .sec.dp-afv > p, main#top > #herkenbaar > p { align-self: stretch; }
  .pagina .sec.dp-afv > h2 + *, main#top > #herkenbaar > h2 + * { margin-top: 52px; }   
.afv-kop { --m: 44; font-size: min(calc(var(--m) * 1px), calc((100vw - 48px) * var(--m) / 342)) !important; line-height: .94 !important; }
  .afv-kop > span { white-space: normal; }
  .afv-kop .tweede { margin-left: min(54px, calc((100vw - 48px) * 54 / 342)); }
  .afv-kop[style*="font-size:74px"], .afv-kop[style*="font-size:76px"] { --m: 42; }
  .afv-kop[style*="font-size:78px"] { --m: 46; }
  .afv-kop[style*="font-size:88px"] { --m: 49; }
  .afv-kop[style*="font-size:92px"] { --m: 48; }
  .afv-kop[style*="font-size:96px"] { --m: 56; }
  .afv-kop[style*="font-size:108px"] { --m: 62; }
  .afv-kop[style*="font-size:100px"], .afv-kop[style*="font-size:104px"], .afv-kop[style*="font-size:120px"] { --m: 64; }
  .pagina .sec.dp-afv > div:has(> .afv-note), main#top > #herkenbaar > div:has(> .afv-note) { order: 1; align-self: stretch; margin-top: 30px; padding: 0 2px 10px; }
  .afv-note { transform: rotate(1.2deg); }
  .afv-achter { border-radius: 14px; transform: rotate(-3.6deg) translate(-3px, 8px); }
  .afv-vel { padding: 46px 20px 4px; border-radius: 14px; box-shadow: 0 18px 40px rgba(2,7,25,.12), 0 2px 6px rgba(2,7,25,.05); }
  .afv-gaten { left: 22px; right: 22px; top: 14px; }
  .afv-gaten i { width: 10px; height: 16px; }
  .afv-velkop { padding-bottom: 12px; }
  .afv-vink { gap: 16px; padding: 20px 0; }
  .afv-vink b { font-size: 21px; line-height: 1.14; margin-bottom: 6px; }
  .afv-vink .t { font-size: 16px; line-height: 1.5; }
  .dp-afv .afv-vink { padding: 16px 0; }
  .dp-afv .afv-vink .t { font-size: 17px; line-height: 1.42; }
  .afv-muis svg { width: 40px; height: 62px; }
.pagina .sec.zw, main#top > .sec.zw { margin: 12px 8px; padding: 44px 16px 44px; border-radius: 16px; display: flex; flex-direction: column; }
  .pagina .sec.zw > *, main#top > .sec.zw > * { margin-top: 0; }
  .sec.zw > .zw-dingen { display: contents; }
  .sec.zw .zw-ding { position: relative !important; left: auto !important; top: auto; width: 100%; height: 280px; flex: none; margin-top: 44px; }
  .sec.zw .zw-bel { order: 1; margin-top: 28px; }
  .sec.zw .zw-plan { order: 3; }
  .sec.zw .zw-aanuit { order: 5; }
  .pagina .sec.zw > .zw-stap, main#top > .sec.zw > .zw-stap { order: 6; margin-top: 20px; }
  .sec.zw > .zw-dingen + .zw-stap { order: 2 !important; }
  .sec.zw > .zw-dingen + .zw-stap + .zw-stap { order: 4 !important; }
  .pagina .sec.zw > .zw-knop, main#top > .sec.zw > .zw-knop { order: 7; margin-top: 36px; }
  .zw-nr { margin-bottom: 6px; }
.zw-ding > * { position: absolute !important; }
  .zw-bel .portret { left: 24px; top: 24px; width: 96px; height: 96px; }
  .zw-bel .wie { left: 134px; top: 52px; }
  .zw-bel .tijd { left: 24px; bottom: 18px; font-size: 74px; }
  .zw-bel .golf { right: 24px; bottom: 38px; }
  .zw-plan .achter { left: 50%; margin-left: -130px; top: 22px; height: 236px; }
  .zw-plan .vel { left: 50%; margin-left: -130px; top: 16px; }
  .zw-aanuit .baan { left: 50%; margin-left: -100px; top: 62px; }
  .zw-aanuit .stand { top: 186px; }
  .zw-aanuit .zw-muis { left: 50%; transform: translate3d(126px, 216px, 0); }
  .zw-aanuit.wijst .zw-muis { transform: translate3d(-54px, 112px, 0); }
@media (max-width: 350px) { .zw-bel .wie { left: 24px; top: 130px; } }
@media (max-width: 385px) {
    .zw-bel .wie { padding: 9px 14px; font-size: 14px; }
    .zw-bel .tijd { font-size: 64px; }
    .zw-bel .golf { gap: 4px; }
  }
  @media (max-width: 350px) { .zw-bel .tijd { font-size: 54px; } }
  @media (max-width: 330px) { .zw-bel .tijd { font-size: 46px; } }
.bc-kop { position: relative !important; left: auto !important; top: auto !important; width: auto !important; display: block; font-size: 60px; line-height: .92; white-space: normal; }
  .pagina .sec.sw, main#top > #lezen { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 10px; row-gap: 14px; align-items: start; }
  .pagina .sec.sw > *, main#top > #lezen > * { grid-column: 1 / -1; margin-top: 0; }
  .pagina .sec.sw > .bc-plek, main#top > #lezen > .bc-plek { grid-column: auto; }
  .pagina .sec.sw > .bc-plek:last-child:nth-of-type(even) { grid-column: 1 / -1; justify-self: center; width: calc(50% - 5px) !important; }
  .pagina .sec.sw > h1, .pagina .sec.sw > h2, main#top > #lezen > .bc-kop { margin-bottom: 14px; }
  .bc-plek, .bc-kaart { width: auto !important; height: auto !important; }
  .bc-plek > .bc-kaart { position: relative !important; padding: 8px 8px 16px; border-radius: 14px; box-shadow: 0 14px 28px rgba(2,7,25,.26); }
  .bc-plek:nth-of-type(2) > .bc-kaart { --hoek: -3deg !important; }
  .bc-plek:nth-of-type(3) > .bc-kaart { --hoek: 2deg !important; }
  .bc-plek:nth-of-type(4) > .bc-kaart { --hoek: 1.5deg !important; }
  .bc-plek:nth-of-type(5) > .bc-kaart { --hoek: -2.5deg !important; }
  .bc-plek:nth-of-type(6) > .bc-kaart { --hoek: -1.5deg !important; }
.bc-kaart .oms { width: 100% !important; height: auto !important; aspect-ratio: 246 / 190; border-radius: 9px; }
.bc-kaart .oms .code { left: 8px; top: 8px; }
  .bc-kaart .datum { font-size: 12px; margin: 12px 4px 0; }
  .bc-kaart h3 { font-size: 16px; line-height: 1.16; margin: 6px 4px 0; overflow-wrap: break-word; }
  .sw .bc-kaart img { width: 100% !important; height: auto !important; aspect-ratio: 4 / 3; border-radius: 9px; }
  .sw .naam { margin: 11px 4px 0 !important; font-size: 12px; }
  .sw .bc-kaart h3 { font-size: 17px; margin: 4px 4px 0 !important; }
  .sw .prijs { margin: 8px 4px 0 !important; font-size: 16px; line-height: 1.36; }
.pagina > header.sec.sw { background: var(--diep); padding-bottom: 44px !important; }
  .pagina > header.sec.sw > .binnen { display: none; }
  .sw .bc-kop { font-size: 66px; }
  .sw .rest { position: static !important; display: block; width: auto !important; margin-top: 12px; text-align: left; white-space: normal !important; }
.sw.klein .bc-kop { font-size: 48px; }
.pagina .sec:has(> .lp-rij) { display: grid; grid-template-columns: minmax(0, 1fr); }
  .pagina .sec:has(> .lp-rij) > * { grid-column: 1; margin-top: 0; }
  .lp-rij > .lp-stap, .lp-uitleg > .lp-zin { grid-column: 1; }
  .pagina .sec > .lp-rij, .pagina .sec > .lp-uitleg { display: contents; }
  .pagina .sec > .lp-foto { grid-row: 1; height: 300px !important; margin: 0 -12px; max-width: none !important; border-radius: 16px; }
  .pagina .sec > .lp-foto + h2 { grid-row: 1; align-self: end; z-index: 2; margin: 0 8px 22px; }
  .lp-foto img { left: 0 !important; top: 0 !important; width: 100% !important; height: 100% !important; object-position: 62% 40%; }
  .lp-foto .laag { background: linear-gradient(0deg, rgba(2,7,25,.9) 0%, rgba(2,7,25,.64) 40%, rgba(2,7,25,.14) 74%, rgba(2,7,25,0) 100%); }
  .lp-foto svg { display: none !important; }
  .lp-stap { display: grid; grid-template-columns: 34px 30px minmax(0, 1fr); align-items: center; width: 100%; min-height: 52px; padding: 6px 0; }
  .lp-rij > .lp-stap:first-child { margin-top: 26px; }
  .lp-stap .punt { grid-column: 1; grid-row: 1; align-self: stretch; height: auto; margin: -6px 0; }
  .lp-stap .nr { grid-column: 2; grid-row: 1; }
  .lp-stap b { grid-column: 3; grid-row: 1; }
  .lp-stap .punt em { left: 7px; right: auto !important; top: 0; bottom: 0; width: 2px; height: auto; }
  .lp-rij > .lp-stap:first-child .punt em { top: 50%; }
  .lp-rij > .lp-stap:last-child .punt em { bottom: 50%; }
  .lp-stap .punt i { top: 50%; margin-top: -8px; }
  .lp-stap .punt .wijs { left: 2px; top: 50%; margin-top: -8px; }
  .lp-stap .punt .wijs svg { width: auto; height: 28px; }
  .lp-uitleg .lp-zin { position: relative !important; left: auto; top: auto; width: auto; margin: 2px 0 12px 34px; padding: 14px 16px 16px; border-radius: 12px; background: var(--mist); font-size: 17px; line-height: 26px; }
  .lp-uitleg .lp-zin::before { content: ""; position: absolute; left: -27px; top: -2px; bottom: -12px; width: 2px; background: var(--lijn); }
  .lp-uitleg .lp-zin:last-of-type::before { display: none; }
  .lp-rij > .lp-stap:nth-child(1) { grid-row: 3; }  .lp-uitleg > .lp-zin:nth-of-type(1) { grid-row: 4; }
  .lp-rij > .lp-stap:nth-child(2) { grid-row: 5; }  .lp-uitleg > .lp-zin:nth-of-type(2) { grid-row: 6; }
  .lp-rij > .lp-stap:nth-child(3) { grid-row: 7; }  .lp-uitleg > .lp-zin:nth-of-type(3) { grid-row: 8; }
  .lp-rij > .lp-stap:nth-child(4) { grid-row: 9; }  .lp-uitleg > .lp-zin:nth-of-type(4) { grid-row: 10; }
  .lp-rij > .lp-stap:nth-child(5) { grid-row: 11; } .lp-uitleg > .lp-zin:nth-of-type(5) { grid-row: 12; }
  .lp-rij > .lp-stap:nth-child(6) { grid-row: 13; } .lp-uitleg > .lp-zin:nth-of-type(6) { grid-row: 14; }
  .lp-rij > .lp-stap:nth-child(7) { grid-row: 15; } .lp-uitleg > .lp-zin:nth-of-type(7) { grid-row: 16; }
  .lp-rij > .lp-stap:nth-child(8) { grid-row: 17; } .lp-uitleg > .lp-zin:nth-of-type(8) { grid-row: 18; }
.pr-bedrag { flex-wrap: wrap; gap: 2px 12px; }
  .pr-bedrag b { font-size: 104px; }
  .pr-bedrag span { font-size: 21px; padding-bottom: 8px; }
  .pr-klein { font-size: 16px; line-height: 24px; }
  .pagina .sec > .pr-label { display: block; margin-top: 30px; font-size: 20px; }
  .pagina .sec > .pr-keuze { margin-top: 12px; }
  .pagina .sec > div + .pr-keuze { margin-top: 26px; }
  .pr-keuze { flex-wrap: wrap; gap: 8px; }
  .pr-rond { flex: none; width: 58px; height: 58px; font-size: 24px; }
  .pr-pil { height: 48px; padding: 0 18px; font-size: 17px; }
.vb-kaart { height: auto !important; margin-left: -12px; margin-right: -12px; max-width: none !important; padding: 28px 20px 30px; }
  .pagina .sec > .vb-kaart + .vb-kaart { margin-top: 12px; }
  .vb-kaart > .in { position: relative !important; left: auto !important; top: auto !important; width: auto !important; }
.vb-kaart .link { position: relative; }
  .vb-kaart .link::after { content: ""; position: absolute; left: 0; right: 0; top: -8px; bottom: -8px; }
.pagina .sec > .lv-venster { width: 70% !important; aspect-ratio: 300 / 247; margin-top: -56px; box-shadow: 0 16px 34px rgba(2,7,25,.22); }
  .pagina .sec > .lv-venster:nth-of-type(odd) { margin-left: auto; transform: rotate(2.5deg) !important; }
  .pagina .sec > .lv-venster:nth-of-type(even) { transform: rotate(-3deg) !important; }
  .pagina .sec > :not(.lv-venster) + .lv-venster { margin-top: 28px; }
}
@media (max-width: 760px) {
.pagina:has(.cd-lead) > header.sec { gap: 18px; }
.pagina:has(.cd-lead) > header.sec > .binnen.dp-foto > .laag:not([style]) { background: linear-gradient(0deg, rgba(2,7,25,.98) 0%, rgba(2,7,25,.92) 32%, rgba(2,7,25,.5) 64%, rgba(2,7,25,.24) 100%), linear-gradient(0deg, rgba(10,113,217,.4) 0%, rgba(10,113,217,0) 36%); }
.pagina:has(.cd-lead) > header.sec > .binnen.dp-foto > .boven { height: 170px !important; background: linear-gradient(180deg, rgba(2,7,25,.9) 0%, rgba(2,7,25,.6) 48%, rgba(2,7,25,0) 100%); }
.pagina:has(.cd-lead) > header.sec > .bel { order: 0; z-index: 2; flex: none; align-self: flex-end; width: 100px !important; height: 100px !important; padding: 0; margin: 0 6px 4px 0; }
.pagina:has(.cd-lead) > header.sec > .bel img { width: 72% !important; height: auto; }
  .pagina:has(.cd-lead) > header.sec > .bel img[style*="width:104px"] { width: 61% !important; }
  .pagina:has(.cd-lead) > header.sec > .bel img[style*="width:132px"] { width: 78% !important; }
  .pagina:has(.cd-lead) > header.sec > .bel img[style*="width:150px"] { width: 86% !important; }
.pagina:has(.cd-lead) > header.sec:has(> .binnen.dp-tel) { padding-top: 464px !important; }
  .pagina:has(.cd-lead) > header.sec > .binnen.dp-tel > .laag, .pagina:has(.cd-lead) > header.sec > .binnen.dp-tel > .boven { display: none !important; }
.pagina:has(.cd-lead) > header.sec > .binnen.dp-tel > picture { left: max(20px, calc(50% - 195px)) !important; top: 80px !important; width: min(calc(100% - 40px), 390px) !important; height: auto !important; border: 1px solid rgba(255,255,255,.18); border-bottom: 0; border-radius: 14px 14px 0 0; overflow: hidden; }
  .pagina:has(.cd-lead) > header.sec > .binnen.dp-tel > picture > img { width: 100% !important; height: auto !important; }
  .pagina:has(.cd-lead) > header.sec:has(> .binnen.dp-tel) > h1 { max-width: none; margin: -84px -20px -48px; padding: 96px 20px 48px; background: linear-gradient(180deg, rgba(2,7,25,0) 0px, rgba(2,7,25,.84) 56px, #020719 92px); }
.pagina:has(.cd-lead) > header.sec:has(> .binnen.dp-tel) > .bel { z-index: 3; margin-top: -104px; margin-bottom: -14px; box-shadow: 0 8px 24px rgba(2,7,25,.32); }
.pagina > header.sec > .binnen:has(> .cs-collage) { display: block; height: 300px !important; margin: 0 -20px -28px; overflow: hidden; max-width: none; }
  .pagina .binnen > .cs-collage { position: absolute !important; left: -24px !important; top: -112px !important; width: max-content !important; max-width: none !important; transform: rotate(-9deg) scale(.48) !important; transform-origin: 0 0; }
  .pagina .binnen > .cs-boven { position: absolute !important; left: 0 !important; top: 0 !important; width: 100% !important; height: 72px !important; }
  .pagina .binnen > .cs-links { position: absolute !important; left: 0 !important; top: auto !important; bottom: 0 !important; width: 100% !important; height: 120px !important; background: linear-gradient(0deg, #020719 0%, rgba(2,7,25,0) 100%); }
  .pagina > header.sec > .cs-rond { position: absolute !important; left: auto !important; top: auto !important; right: 22px !important; bottom: 54px !important; width: 108px !important; height: 108px; z-index: 3; gap: 6px; font-size: 14px; line-height: 1.2; text-align: center; }
  .cs-rond svg { width: auto; height: 28px; }
#alle > h2 { margin: 0 0 20px !important; }
  .cs-filter { gap: 8px; margin: 0 0 28px; }
  .cs-pil { padding: 0 16px; gap: 8px; }
  .cs-raster { flex-direction: column; align-items: stretch; gap: 16px; }
  .cs-kolom { flex: none; gap: 16px; }
  .cs-kolom.lager { margin-top: 0; }
#alle .cs-kolom.lager { order: 3; }
.cs-kaart { border-radius: 16px; }
  a.cs-kaart:hover { transform: none; box-shadow: none; }                              
  .cs-kaart .cs-beeld { height: auto; aspect-ratio: 16 / 9; }
.cs-kaart.site .cs-beeld { height: auto; aspect-ratio: 1536 / 1080; }
  .cs-kaart .cs-in { padding: 20px 20px 24px; }
  .cs-kaart h3 { margin: 0 0 8px; }
  .cs-getal { margin-top: 18px; font-size: 64px; }
  .cs-wat { margin-top: 6px; }
  .cs-kaart .cs-meer { margin-top: 18px; }
  .cs-kaart.vraag { padding: 8px 0; }                                                  
.rs-getal.groot[style*="font-size:132px"] { font-size: min(84px, 21.5vw) !important; }
  .cd-lead { font-size: 20px; line-height: 30px; }
  .pagina .sec > .cd-lead { margin-top: 28px; }
  .cd-bij { font-size: 17px; line-height: 27px; }
  .cd-feiten > div { gap: 16px; padding: 14px 0; }
  .cd-feiten dt { width: 108px; }
  .cd-feiten dd { flex-wrap: wrap; gap: 4px 16px; min-width: 0; }
  .cd-feiten dd a { flex: 0 1 auto; }
.rs-vlak:has(> .rs-lijn) { display: grid; grid-template-columns: minmax(0, 1fr); padding: 0 !important; overflow: hidden; container-type: inline-size; }
  .rs-vlak:has(> .rs-lijn) > .rs-getal { grid-row: 1; margin: 26px 24px 0; font-size: 80px; }
  .rs-vlak:has(> .rs-lijn) > .rs-wat { grid-row: 2; margin: 10px 24px 0; font-size: 17px; white-space: normal; }
  .rs-vlak:has(> .rs-lijn) > .rs-wat + .rs-bij { grid-row: 3; margin: 4px 24px 0; }
  .rs-vlak > .rs-lijn { grid-row: 4; grid-column: 1; width: 129.87cqw !important; max-width: none; margin: calc(14px - 7.79cqw) 0 -7.36cqw -.866cqw; }
  .rs-lijn path, .rs-lijn circle { vector-effect: non-scaling-stroke; }
  .rs-lijn path[stroke-width="5"] { stroke-width: 3.5px; }
  .rs-lijn circle { r: 11px; stroke-width: 3px; }
  .rs-vlak:has(> .rs-lijn) > [data-pijl] { grid-row: 4; grid-column: 1; justify-self: start; align-self: start; margin: calc(14px + 7.79cqw) 0 0 92.21cqw; z-index: 2; }
  .rs-vlak:has(> .rs-lijn) > [data-pijl] svg { width: auto; height: 10.4cqw; }
  .rs-vlak:has(> .rs-lijn) > .rs-begin { grid-row: 4; grid-column: 1; justify-self: start; align-self: end; margin: 0 0 4.6cqw 24px; font-size: 24px; z-index: 2; }
  .rs-vlak:has(> .rs-lijn) > .rs-begin + .rs-bij { grid-row: 5; margin: 2px 24px 22px; }
  .rs-vlak:has(> .rs-lijn) > .rs-bij { font-size: 14px; }
  .rs-vlak:has(> .rs-lijn) > .link { grid-row: 6; justify-self: start; margin: 2px 24px 26px; }
  .rs-bron { font-size: 16px; line-height: 24px; }
.pagina .sec.tl { display: grid; grid-template-columns: 22px minmax(0, 1fr); column-gap: 14px; align-items: start; --n: 0; }
  .pagina .sec.tl > * { margin-top: 0; }
  .pagina .sec.tl > h2 { grid-column: 1 / -1; grid-row: 1; }
  .pagina .sec.tl > .cd-bij { grid-column: 1 / -1; grid-row: 2; margin-top: 16px; }
.sec.tl > [data-stap="0"], .sec.tl > [data-stap="0"] + .cd-ding { --s: 0; }
  .sec.tl > [data-stap="1"], .sec.tl > [data-stap="1"] + .cd-ding { --s: 1; }
  .sec.tl > [data-stap="2"], .sec.tl > [data-stap="2"] + .cd-ding { --s: 2; }
  .sec.tl > [data-stap="3"], .sec.tl > [data-stap="3"] + .cd-ding { --s: 3; }
  .sec.tl > [data-stap="4"], .sec.tl > [data-stap="4"] + .cd-ding { --s: 4; }
  .sec.tl > [data-stap="5"], .sec.tl > [data-stap="5"] + .cd-ding { --s: 5; }
  .sec.tl > [data-stap="6"], .sec.tl > [data-stap="6"] + .cd-ding { --s: 6; }
  .sec.tl > [data-stap="7"], .sec.tl > [data-stap="7"] + .cd-ding { --s: 7; }
  .pagina .sec.tl:has(> [data-stap="1"]) { --n: 1; }
  .pagina .sec.tl:has(> [data-stap="2"]) { --n: 2; }
  .pagina .sec.tl:has(> [data-stap="3"]) { --n: 3; }
  .pagina .sec.tl:has(> [data-stap="4"]) { --n: 4; }
  .pagina .sec.tl:has(> [data-stap="5"]) { --n: 5; }
  .pagina .sec.tl:has(> [data-stap="6"]) { --n: 6; }
  .pagina .sec.tl:has(> [data-stap="7"]) { --n: 7; }
.pagina .sec.tl > .tl-lijn { grid-column: 1; grid-row: 3 / calc(var(--n) * 4 + 3); justify-self: center; align-self: stretch; width: 4px !important; height: auto !important; margin: 55px 0 -55px; }
  .pagina .sec.tl > .tl-punt { grid-column: 1; grid-row: calc(var(--s) * 4 + 3); width: 22px !important; height: 22px; margin-top: 44px; z-index: 1; border-color: var(--diep); }
  .pagina .sec.tl > .tl-wijs { grid-column: 1; grid-row: calc(var(--n) * 4 + 3); justify-self: start; height: 0; margin: 54px 0 0 10px; z-index: 2; }
  .tl-wijs svg { width: auto; height: 34px; }
  .pagina .sec.tl > .tl-tekst { grid-column: 2; grid-row: calc(var(--s) * 4 + 3) / span 4; display: grid; grid-template-columns: minmax(0, 1fr); grid-template-rows: subgrid; margin-top: 40px; text-align: left; opacity: 1 !important; }
  .sec.tl > .tl-tekst > h3, .sec.tl > .tl-tekst > b { grid-row: 1; font-size: 26px; line-height: 1.12; }
  .sec.tl > .tl-tekst > p { grid-row: 3; margin-top: 14px; font-size: 17px; line-height: 27px; }
  .sec.tl > .tl-tekst > .cd-weetje { grid-row: 4; margin-top: 14px; }
  .pagina .sec.tl > .cd-ding, .pagina .sec.tl > .tl-beeld { grid-column: 2; grid-row: calc(var(--s) * 4 + 4); margin-top: 14px; }
.cd-weetje, .tl-tekst.l .cd-weetje { flex-direction: row; text-align: left; padding: 12px 16px; font-size: 16px; line-height: 24px; }
.tl-beeld { height: auto !important; aspect-ratio: 500 / 320; border-radius: 16px; box-shadow: 0 0 0 1px #E3E8EF; opacity: 1 !important; }
  .tl-beeld[style*="height:340px"] { aspect-ratio: 500 / 340; }
  .tl-beeld[style*="height:395px"] { aspect-ratio: 500 / 395; }
  .tl-beeld[style*="width:420px"] { aspect-ratio: 420 / 340; }
  .tl-beeld > svg { display: none !important; }
.cd-ding { container-type: inline-size; height: auto !important; padding: 22px 22px 24px; display: flex; flex-direction: column; align-items: flex-start; gap: 12px; }
  .cd-ding > * { position: relative !important; left: auto !important; top: auto !important; }
  .cd-bedrag { --f: 132; font-size: calc(var(--f) * .232cqw) !important; line-height: .92; }
  .cd-bedrag[style*="font-size:124px"] { --f: 124; }
  .cd-bedrag[style*="font-size:116px"] { --f: 116; }
  .cd-bedrag[style*="font-size:112px"] { --f: 112; }
  .cd-bedrag[style*="font-size:108px"] { --f: 108; }
  .cd-bedrag[style*="font-size:104px"] { --f: 104; }
  .cd-bedrag[style*="font-size:100px"] { --f: 100; }
  .cd-bedrag[style*="font-size:84px"] { --f: 84; }
  .cd-bedrag[style*="font-size:78px"] { --f: 78; }
  .cd-bedrag[style*="font-size:72px"] { --f: 72; }
  .cd-onder { white-space: normal; }
.cd-som { max-width: 100%; gap: 12px; }
  .cd-som > div { flex: 0 1 auto; min-width: 0; gap: 8px; }
  .cd-som b { font-size: 32cqw; }
  .cd-som i { flex: none; font-size: 16cqw; line-height: 27.5cqw; }
  .cd-som span { width: max-content; max-width: 41.5cqw; white-space: normal; }
.pagina .sec:has(> .cd-kolom) { display: grid; grid-template-columns: minmax(0, 1fr); }
  .pagina .sec:has(> .cd-kolom) > * { margin-top: 0; }
  .pagina .sec > .cd-kolom { grid-column: 1; grid-row: 1 / span 4; display: grid; grid-template-columns: minmax(0, 1fr); grid-template-rows: subgrid; }
  .cd-kolom > h2 { grid-row: 1; }
  .cd-kolom > .cd-bij { grid-row: 3; width: auto !important; margin-top: 20px; }
  .cd-kolom > .link { grid-row: 4; justify-self: start; margin-top: 18px; }
  .pagina .sec > .cd-kolom + .blogwissel { grid-column: 1; grid-row: 2; margin-top: 24px; }
  .pagina .sec > .ws-plek { margin-top: 36px; }
  .pagina .sec > .cd-kolom ~ .ws-plek { margin-top: 40px; }
  .ws-plek .ws-venster { transform: none !important; }
  .ws-plek b.b3 { margin-top: 16px; }
  .ws-wat { margin-top: 4px; }
.pagina .sec.cd-col { display: flex; flex-direction: column; gap: 14px; padding: 36px 16px 40px; }
  .pagina .sec.cd-col > * { margin-top: 0; }
  .cd-col .bc-kop { font-size: 60px !important; line-height: .95; white-space: normal; margin-bottom: 10px; }
  .cd-col .cd-kaart { width: 100% !important; height: auto; min-height: 0; padding: 22px 22px 24px; gap: 10px; border-radius: 16px; box-shadow: 0 16px 34px rgba(0,0,0,.3); transform: rotate(calc(var(--hoek, 0deg) * .3)); }
  .cd-col .cd-kaart b.g { font-size: 76px !important; }
  .cd-col .cd-kaart h3 { font-size: 23px; }
  .cd-col .cd-kaart.foto { padding: 10px; }
  .cd-col .cd-kaart.foto img { width: 100%; height: auto; aspect-ratio: 4 / 3; }
  .cd-col .cd-kaart.review { padding: 24px 22px 24px; }
  .pagina .sec.cd-col > .bc-rond { align-self: flex-end; width: 116px !important; height: 116px; margin: -24px 4px 0 0; flex: none; }
.cd-review-heel { width: auto; max-width: calc(100vw - 32px); padding: 64px 22px 28px; border-radius: 16px; }
.pagina .sec > dialog.cd-review-heel { position: fixed !important; inset: 16px !important; width: auto !important; height: fit-content; max-width: none; max-height: calc(100dvh - 32px); margin: auto; overflow-y: auto; }
  .cd-review-heel p { margin-top: 16px; font-size: 17px; line-height: 27px; }
  .cd-review-heel .wie { margin-top: 20px; }
  .cd-review-heel .sluit { right: 14px; top: 12px; height: 44px; padding: 0 18px; font-size: 15px; line-height: 41px; }
.pagina #review-voorbeeld { padding: 16px; }
#gebouwd .vkop .intro { width: auto !important; padding-bottom: 0 !important; }
  .cd-vakjes { flex-direction: column; flex-wrap: nowrap; gap: 10px; }
  .cd-vakje { width: auto; min-height: 0; padding: 15px 18px 17px; border-radius: 14px; gap: 2px; }
  .cd-vakje b { font-size: 18px; line-height: 25px; }
  .cd-vakje span { font-size: 16px; line-height: 24px; }
  .cd-na { margin-top: 22px; }
}
@media (max-width: 760px) {
#team > .ot-plek + .ot-plek { margin-top: 44px; }
  #team .ot-kaart > svg { display: none !important; }
  #team .ot-plek b.b2 { margin-top: 18px; }
  #team .ot-plek .ot-wat { margin-top: 6px; font-size: 17px; line-height: 27px; }
#verhaal > .tl-wijs { height: 0; }
.ct-tekst { font-size: 28px; line-height: 1.18; }
  .ct-wie { flex-wrap: wrap; gap: 6px 12px; }
.ct-wie + div > .link { position: relative; }
  .ct-wie + div > .link::after { content: ""; position: absolute; left: 0; right: 0; top: -9px; bottom: -9px; }
.pagina > header.sec:has(> .ct-plan) > .binnen { display: none; }
  .ot-kaart.klein:has(+ .ct-plan),
  .pagina .sec .ot-kaart.klein:has(+ .ct-plan) { width: 104px !important; margin: 0 0 0 16px !important; transform: rotate(-4deg) !important; z-index: 2; border-radius: 14px; box-shadow: 0 16px 30px -14px rgba(2,7,25,.55); }
  .ot-kaart.klein + .ct-plan { margin-top: -76px !important; }
  .pagina > header.sec > .ot-kaart.klein + .ct-plan { margin-top: -104px !important; }   
.ct-plan { width: auto !important; height: auto !important; padding: 22px 16px 16px; border-radius: 16px; box-sizing: border-box; }
  .ct-plan > * { position: relative !important; left: auto !important; top: auto !important; }
  .ct-plan > .b3 { margin: 0; }
  .ct-plan > .ct-feit { margin: 4px 0 0; }
  .ot-kaart.klein + .ct-plan > .b3, .ot-kaart.klein + .ct-plan > .ct-feit { margin-left: 122px; }   
  .ct-plan > .ct-maand { width: auto; margin-top: 30px; }
  .ct-maand b { font-size: 21px; }
  .ct-maand .pijlen span { width: 44px; height: 44px; }
  .ct-plan > .ct-dagen { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; margin-top: 10px; }
  .ct-dag { height: 72px; padding: 0; border-radius: 12px; font-size: 14px; }
  .ct-dag b { font-size: 26px; }
  .ct-plan > .ct-tijden { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin-top: 14px; }
  .ct-tijd { height: 48px; padding: 0; }
.ct-plan > div:has(> .knoplink) { margin-top: 18px; }
  .ct-plan .knoplink, .ct-plan .knoplink > .knop { display: block; width: 100% !important; }
  .ct-plan .knoplink > .knop > .vorm { left: auto; right: 0; }
  .ct-plan .knoplink > .knop > .knoptekst { left: 16px !important; font-size: clamp(13px, 3.85vw, 16px) !important; }
  .ct-muis { display: none !important; }                                                   
.bg-groot { flex-direction: column; margin-bottom: 16px; border-radius: 16px; }
  .bg-groot img { width: 100%; height: auto; aspect-ratio: 3 / 2; }
  .bg-groot .bg-in { padding: 22px 20px 26px; }
  .bg-groot h3 { margin: 12px 0 10px; font-size: 26px; line-height: 1.12; }
  .bg-groot p { font-size: 17px; line-height: 27px; }
  .bg-groot .cs-meer { margin-top: 20px; }
#artikelen > h2, #vragen > h2 { margin: 0 0 20px !important; }
  #artikelen .cs-kolom { display: contents; }
  #artikelen .cs-kolom:nth-child(1) > .cs-kaart { --kolom: 1; }
  #artikelen .cs-kolom:nth-child(2) > .cs-kaart { --kolom: 2; }
  #artikelen .cs-kolom:nth-child(3) > .cs-kaart { --kolom: 3; }
  #artikelen .cs-kolom > .cs-kaart:nth-child(1) { --rij: 0; }
  #artikelen .cs-kolom > .cs-kaart:nth-child(2) { --rij: 1; }
  #artikelen .cs-kolom > .cs-kaart:nth-child(3) { --rij: 2; }
  #artikelen .cs-kolom > .cs-kaart:nth-child(4) { --rij: 3; }
  #artikelen .cs-kolom > .cs-kaart:nth-child(5) { --rij: 4; }
  #artikelen .cs-kolom > .cs-kaart:nth-child(6) { --rij: 5; }
  #artikelen .cs-kolom > .cs-kaart { order: calc(var(--rij, 6) * 3 + var(--kolom, 1)); }
a.bg-kaart:hover { transform: none; box-shadow: none; }
  .bg-kaart .cs-beeld { height: auto; aspect-ratio: 16 / 10; }
  .bg-kaart h3 { margin: 10px 0 8px; }
  .bg-onder { margin-top: 28px; }
.pagina > header.sec:has(> .ar-kop) > .binnen { display: none; }
  .ar-kop { font-size: 44px; line-height: 1; overflow-wrap: break-word; }
  .ar-wie { display: grid; grid-template-columns: 44px max-content max-content minmax(0, 1fr); column-gap: 10px; row-gap: 6px; align-items: center; line-height: 1.2; }
  .ar-wie img { grid-column: 1; grid-row: 1 / span 2; }
  .ar-wie b { grid-column: 2 / -1; grid-row: 1; align-self: end; }
  .ar-wie i:nth-of-type(1) { display: none; }
  .ar-wie span:nth-of-type(1) { grid-column: 2; grid-row: 2; align-self: start; }
  .ar-wie i:nth-of-type(2) { grid-column: 3; grid-row: 2; align-self: start; margin-top: 8px; }
  .ar-wie span:nth-of-type(2) { grid-column: 4; grid-row: 2; align-self: start; }
  .ar-omslag { height: auto !important; aspect-ratio: 500 / 334; border-radius: 14px; }
#artikel { padding: 36px 20px 56px !important; }
  .ar-pagina { flex-direction: column; align-items: stretch; gap: 0; }
  .ar-tekst, .ar-zij { display: contents; }
  .ar-tekst > * { order: 3; }
  .ar-tekst > p { margin: 0 0 20px; font-size: 17px; line-height: 27px; }
  .ar-tekst > p.eerst { order: 1; margin-bottom: 28px; font-size: 20px; line-height: 30px; }
  .ar-tekst > h2 { margin: 28px 0 14px; font-size: 26px; line-height: 1.12; }
  .ar-tekst > ul { margin: 0 0 22px; }
  .ar-tekst > ul li { margin-bottom: 12px; padding-left: 28px; font-size: 17px; line-height: 27px; }
  .ar-tekst > ul li > .pijl, .ar-tekst > ul li > span[data-pijl] { left: 2px; top: 6px; }
  .ar-citaat { margin: 28px 0 36px; padding: 4px 0 4px 20px; }
  .ar-citaat p { font-size: 23px; line-height: 1.22; }
.ar-inhoudkop { order: 2; margin: 0; padding: 22px 20px 8px; border-radius: 16px 16px 0 0; background: var(--mist); font-size: 21px; }
  .ar-inhoud { order: 2; max-width: none; margin: 0 0 36px; padding: 0 20px 10px; border-left: 0; border-radius: 0 0 16px 16px; background: var(--mist); }
  .ar-inhoud li + li { border-top: 1px solid #DCE2EA; }
  .ar-inhoud a, .ar-inhoud a.nu { display: flex; align-items: center; min-height: 44px; margin: 0; padding: 8px 0; box-sizing: border-box; border-left: 0; font-size: 16px; line-height: 22px; font-weight: 500; color: var(--nacht); }
.ar-case { flex-direction: column; align-items: stretch; gap: 16px; margin-top: 20px; padding: 14px 14px 22px; border-radius: 16px; }
  .ar-case img { width: 100%; height: auto; aspect-ratio: 3 / 2; }
  .ar-case > span { display: block; padding: 0 6px; }
  .ar-case .b3 { margin: 0 0 8px; }
.ar-oproep { order: 4; margin-top: 16px; padding: 24px 20px 26px; }
  .ar-oproep p { font-size: 16px; line-height: 25px; }
.ar-links { flex-direction: column; align-items: flex-start; gap: 18px; }
  .ar-links .link { position: relative; }
  .ar-links .link::after { content: ""; position: absolute; left: 0; right: 0; top: -9px; bottom: -9px; }
#lees-ook { margin: 12px 8px; padding: 44px 16px 16px !important; border-radius: 16px; }
.od-getal { margin-top: 20px; font-size: 64px; }
  .od-wat { font-size: 16px; line-height: 24px; }
.od-cijfers { gap: 10px; }
  .od-cijfer { padding: 0 18px 0 20px; border-radius: 14px; box-shadow: 0 12px 26px rgba(2,7,25,.2); }
  .od-cijfer .naam b { font-size: 22px; }
  .od-cijfer .getal { font-size: 40px; }
#videos { margin: 12px 8px; padding: 44px 16px 16px; border-radius: 16px; }
  .ig-post { display: grid; grid-template-columns: minmax(0, 150px) minmax(208px, 1fr); grid-template-rows: auto 1fr; width: auto !important; transform: none !important; border-radius: 16px; box-shadow: 0 14px 30px -18px rgba(2,7,25,.3); }
  .pagina .sec > .ig-post + .ig-post { margin-top: 12px; }
  .ig-beeld { grid-column: 1; grid-row: 1 / span 2; width: 100%; height: auto; aspect-ratio: 9 / 16; }
  .ig-kop { grid-column: 2; grid-row: 1; height: auto; padding: 14px 14px 0; gap: 8px; }
  .ig-avatar { width: 30px; height: 30px; }
  .ig-voet { grid-column: 2; grid-row: 2; justify-content: flex-end; padding: 12px 14px 16px; }
  .ig-voet p { font-size: 16px; line-height: 23px; }
  .ig-speel { top: 33%; width: 44px; height: 44px; margin: -22px 0 0 -22px; padding-left: 4px; }   
  .ig-speel svg { width: 16px; height: auto; }
  .ig-duur { right: 8px; bottom: 8px; }
}
@media (max-width: 760px) {
  .ar-tekst > h3 { order: 3; margin: 22px 0 10px; font-size: 21px; line-height: 1.15; }
  .ar-tabel { order: 3; margin: 4px 0 24px; border-radius: 14px; -webkit-overflow-scrolling: touch; }
  .ar-tabel table { font-size: 15px; min-width: 560px; }
  .ar-tabel th, .ar-tabel td { padding: 12px 14px; }
  .ar-tekst p a, .ar-tekst li a { overflow-wrap: anywhere; }
}
@media (max-width: 760px) {
  .ct-plan > :is(.ag-wie, .ag-klaar, .ag-dicht) { width: auto; height: auto; margin-top: 26px; }
  .ct-plan:is(.ag-stap-wie, .ag-stap-klaar) > .b3 { white-space: normal; }
  .ct-feit.ag-rood { width: auto; }
  .ct-maand .pijlen span.uit { opacity: .35; }
  .ag-terug { padding: 15px 0; }                                                          
  .ag-zin { margin-top: 6px; font-size: 22px; line-height: 30px; }
  .ag-in { height: 44px; line-height: 44px; padding: 0 4px; }
  .ag-wie .ag-klein { position: static; margin-top: 18px; }
  .ag-klaar-moment { font-size: 34px; white-space: normal; }                             
  .ag-klaar-moment span { font-size: 56px; }
  .ag-klaar-link { position: static; margin-top: 24px; padding-bottom: 6px; }
  .ag-dicht p { max-width: none; font-size: 18px; }
  .ag-leeg { font-size: 15px; }
}
@media (max-width: 760px) {
.cf-zin { font-size: 28px; line-height: 36px; }
  .cf-zinrij { flex-wrap: wrap; gap: 0 8px; height: auto; white-space: normal; }
  .cf-zinrij + .cf-zinrij, .cf-lang + .cf-zinrij { margin-top: 12px; }
  .cf-zinrij > * { flex: 0 1 auto; max-width: 100%; }
  .cf-zinrij > .cf-gat { flex: 1 0 calc(100% - 24px); min-width: 0 !important; height: 50px; padding: 0 4px; overflow: hidden; white-space: nowrap; }
  .cf-zinrij > .cf-punt { flex: none; margin-left: -6px; }
  .cf-zinrij > .cf-gat ~ span:not(.cf-gat):not(.cf-punt) { margin-top: 10px; }      
  .cf-streep { width: 3px; height: 30px; }
  .cf-gat .cf-streep { margin: 0 0 5px 2px; }
.cf-lang { margin: 4px 0 6px; }
  .cf-lang div { display: block; height: auto; min-height: 42px; padding: 6px 4px; font-size: 20px; line-height: 28px; white-space: normal; }
  .cf-lang .cf-streep { height: 22px; margin: 0 0 0 4px; vertical-align: -4px; }
.cf-onder { flex-direction: column; align-items: stretch; justify-content: flex-start; gap: 18px; }
  .cf-onder > p { margin: 0; }
  .cf-klein { font-size: 16px; line-height: 24px; }
  .cf-klein a { display: inline-block; margin: -12px 0; padding: 12px 0; }             
  .cf-melding { align-items: flex-start; }
  .pagina > header.sec > .cf-onder + div { margin-top: -10px; }
  .pagina .sec > .cf-onder + div { margin-top: 18px; }
.cf-onder > .knop, .tw-volgende > .knop { display: block; width: 100% !important; }
  .cf-onder > .knop > .vorm, .tw-volgende > .knop > .vorm { left: auto; right: 0; }
  .cf-onder > .knop[data-knop="a-donker"], .tw-volgende > .knop[data-knop="a-donker"] { background: linear-gradient(#FFFFFF, #FFFFFF) left top / calc(100% - 110px) 100% no-repeat; }
  .cf-onder > .knop[data-knop="a"] { background: linear-gradient(var(--diep), var(--diep)) left top / calc(100% - 110px) 100% no-repeat; }
.pagina > header.sec.tw { min-height: 660px !important; padding: 88px 12px 32px !important; gap: 0; }
.pagina > header.sec.tw > .binnen { position: absolute !important; left: 0 !important; top: 0 !important; right: 0 !important; bottom: 0 !important; width: auto !important; height: auto !important; display: block; overflow: hidden; pointer-events: none; }
  .pagina > header.sec.tw > .binnen > .tw-gloed { position: absolute !important; left: 0 !important; top: 0 !important; width: 100% !important; height: 100% !important; background: radial-gradient(420px 380px at 84% 4%, rgba(10,113,217,.36), rgba(10,113,217,0) 70%); }
.tw > .tw-scherm { display: none; }
  .tw > .tw-scherm.aan { display: block; }
  .tw-kop { font-size: 44px; line-height: 1; text-wrap: balance; }
  .tw-zin { margin-top: 10px; font-size: 17px; line-height: 27px; }
.tw-opties, .tw-opties.drie { margin-top: 20px; grid-template-columns: minmax(0, 1fr); gap: 8px; }
  .tw-optie { gap: 14px; min-height: 56px; padding: 10px 16px; border-radius: 14px; }
  .tw-optie:hover:not(.gekozen) { border-color: rgba(255,255,255,.16); }
  .tw-optie:hover { transform: none; }
  .tw-optie b { font-size: 19px; line-height: 1.2; }
  .tw-optie small { font-size: 16px; line-height: 22px; }
  .tw-optie .rond { width: 26px; height: 26px; }
.tw-opties.drie .tw-optie, .tw-opties.drie .tw-optie.laptop { gap: 8px; min-height: 148px; padding: 16px 146px 16px 18px; }
  .tw-opties.drie .tw-optie b, .tw-opties.drie .tw-optie.laptop b { font-size: 21px; line-height: 1.14; text-wrap: balance; }
  .tw-opties.drie .tw-optie small, .tw-opties.drie .tw-optie.laptop small { max-width: none; font-size: 16px; line-height: 22px; }
  .tw-opties.drie .tw-optie .rond { right: 14px; top: 14px; width: 24px; height: 24px; }
  .tw-opties.drie .tw-optie.laptop > .gloed { right: -70px; bottom: -90px; width: 300px; height: 250px; }
  .tw-opties.drie .tw-optie.laptop > img { right: -22px; bottom: -14px; width: 160px; height: auto; aspect-ratio: 250 / 181; max-width: none; }
  .tw-opties.drie .tw-optie.laptop:hover > img { transform: none; }
.tw-schuif { width: auto; margin-top: 28px; }
  .tw-waarde { font-size: 104px; }
  .tw-schuif input[type=range] { height: 44px; margin-top: 20px; }
  .tw-schuif input[type=range]::-webkit-slider-thumb { width: 32px; height: 32px; margin-top: -13px; }
  .tw-schuif input[type=range]::-moz-range-thumb { width: 32px; height: 32px; }
  .tw-rand { margin-top: 4px; }
.tw-laad { width: auto; margin-top: 36px; }
.pagina > header.sec.tw > .tw-balk { top: auto !important; height: auto; min-height: 52px; gap: 22px; margin-top: auto; padding-top: 22px; box-sizing: content-box; }
  .tw-terug, .tw-opnieuw { flex: none; min-height: 44px; padding: 0 2px; border-bottom: 0; text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 7px; text-decoration-color: rgba(255,255,255,.7); }
  .tw-volgende { flex: 1 1 0; min-width: 0; margin-left: 0; line-height: 0; }
.pagina > header.sec.tw > .tw-voortgang { top: auto !important; flex-wrap: wrap; gap: 8px 14px; margin-top: 16px; }
  .tw-streep { flex: 1 1 0; min-width: 0; }
  .tw-streep i { flex: 1 1 0; width: auto; }
  .tw-gerust { flex: 0 0 100%; margin-left: 0; font-size: 16px; line-height: 23px; }
.tw-u { margin-top: 22px; grid-template-columns: minmax(0, 1fr); gap: 10px; }
  .tw-u-getal { height: auto; padding: 24px 20px 22px; border-radius: 16px; }
  .tw-u-getal b { font-size: 84px; line-height: .94; }
  .tw-u-getal strong { margin-top: 8px; font-size: 21px; line-height: 1.16; }
  .tw-u-getal p { margin-top: 10px; font-size: 17px; line-height: 27px; }
  .tw-u-getal small { margin-top: 14px; font-size: 16px; line-height: 23px; }
  .tw-u-lijst { height: auto; padding: 22px 20px 10px; border-radius: 16px; }
  .tw-u-lijst h3 { margin-bottom: 12px; font-size: 21px; }
.tw-u-lijst dl { display: block; }
  .tw-u-lijst dt { padding: 12px 0 2px; font-size: 15px; line-height: 21px; }
  .tw-u-lijst dd { padding: 0 0 12px; border-top: 0; font-size: 16px; line-height: 23px; white-space: normal; overflow: visible; }
  .tw-u-onder, .tw-u-onder.twee { grid-column: auto; grid-template-columns: minmax(0, 1fr); gap: 10px; }
  .tw-u-ook { height: auto; padding: 20px 20px 22px; border-radius: 16px; }
  .tw-u-ook small { font-size: 13px; }
  .tw-u-ook b { font-size: 21px; }
  .tw-u-ook .link { margin-top: 10px; }
  .tw-u-plan { height: auto; min-height: 132px; border-radius: 16px; }
.tw-contact { display: flex; flex-direction: column; width: auto; height: auto; margin-top: 56px; }
  .tw-contact > * { position: relative !important; left: auto !important; top: auto !important; width: auto !important; }
  .tw-contact > h3 { order: 1; }
  .tw-contact > p.intro { order: 2; margin: 14px 0 30px; }
  .tw-contact > .ot-kaart { order: 3; }
  .tw-contact > .ct-plan { order: 4; }
  .tw-contact > h4 { order: 5; margin-top: 44px; }
  .tw-contact > .cf-zin { order: 6; margin-top: 16px; }
  .tw-contact > .cf-onder { order: 7; margin-top: 24px; }
.av-paneel { display: flex; flex-direction: column; gap: 10px; width: auto; height: auto; padding: 22px 18px 20px; border-radius: 16px; }
  .av-paneel > * { position: static !important; width: auto !important; max-width: 100%; }
  .av-paneel > .av-vraag { align-self: flex-end; max-width: 88%; margin: 6px 0 4px; }
  .av-paneel > .av-antwoord { margin-bottom: 2px; font-size: 16px; line-height: 24px; }
  .av-paneel > .av-bron { width: 100% !important; gap: 12px; padding: 0 14px; }
  .av-bron .balk { width: 72px; }
  .av-paneel > .av-bron.jij { margin-top: 4px; }
  .av-voet { margin-top: 4px; font-size: 13px; line-height: 19px; }
.pagina .sec > .av-wie { margin-top: 20px; }
  .pagina .sec > .av-wie + .av-pad, .pagina .sec > .av-wie + div:has(> .av-pad) { margin-top: 14px; }
  .av-wie time { font-size: 15px; }
  .av-pad { font-size: 15px; }
  .av-pad a { display: inline-block; padding: 12px 0; margin: -12px 0; }
  .pagina .sec > .av-def { margin-top: 28px; }
.av-twee { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .av-twee .intro { margin-top: 16px !important; }
  .av-lijst li { grid-template-columns: 34px minmax(0, 1fr); padding: 22px 0; }
  .av-lijst li:first-child { padding-top: 0; }
  .av-lijst li > div { display: contents; }
  .av-lijst .nr { padding-top: 6px; }
  .av-lijst p { grid-column: 1 / -1; margin-top: 8px; }
  .av-lijst .link { grid-column: 1 / -1; justify-self: start; margin-top: 0; padding-top: 16px; }   
.lw-bestand { width: auto; height: auto; min-height: 176px; padding: 22px 22px 20px; border-radius: 16px; }
  .lw-naam { margin-top: 18px; font-size: 24px; }
  .lw-pijl { padding-top: 16px; }
.lw-knoppen { flex-direction: column; align-items: flex-start; gap: 14px; }
  .lw-bij a { display: inline-block; margin: -12px 0; padding: 12px 0; }
#plaatsen > .cs-kaart, #gemaakt > .cs-kaart { display: block; height: auto !important; }
  #plaatsen > .cs-kaart + .cs-kaart, #gemaakt > .cs-kaart + .cs-kaart { margin-top: 16px; }
  #plaatsen > .cs-kaart.site .cs-beeld, #gemaakt > .cs-kaart.site .cs-beeld { height: auto; aspect-ratio: 1536 / 1080; }
.rg-ook { display: grid; grid-template-columns: 104px minmax(0, 1fr); align-items: center; gap: 12px 16px; padding: 14px 16px 18px 14px; border-radius: 16px; }
  .rg-ook img { width: 104px; height: 72px; border-radius: 8px; }
  .rg-ook .tekst { display: contents; }
  .rg-ook .tekst b { margin-bottom: 0; }
  .rg-ook .zin { grid-column: 1 / -1; }
  .rg-ook .link { grid-column: 1 / -1; justify-self: start; }
.rg-leeg { padding: 20px; border-radius: 16px; }
  .rg-kaart { padding: 24px 22px; border-radius: 16px; }
  .rg-kaart .wat { font-size: 21px; }
  .rg-foto { border-radius: 16px; }
.jr-twee { display: block; }
  .jr-inhoud { position: static; margin-bottom: 48px; }
  .jr-inhoud h2 { margin-bottom: 12px; }
  .jr-inhoud li a { gap: 12px; min-height: 46px; padding: 11px 0; font-size: 16px; line-height: 23px; }
  .jr-inhoud li:last-child a { border-bottom: 1px solid var(--lijn); }
  .jr-inhoud .nr { padding-top: 5px; }
  .jr-print { margin-top: 6px; }
  .jr-print .link { padding-top: 16px; }                                               
  .jr-tekst { overflow-wrap: break-word; }
  .jr-lead { margin-bottom: 28px; font-size: 20px; line-height: 30px; }
.jr-kaart { gap: 8px; margin: 0 -12px 8px; padding: 24px 20px 26px; border-radius: 16px; }
  .jr-kaart b { font-size: 24px; }
  .jr-h { margin-top: 52px; scroll-margin-top: 84px; }
  .jr-h h2 { gap: 12px; }
  .jr-h h2 .nr { font-size: 13px; }
  .jr-intro { margin-top: 14px; font-size: 18px; line-height: 28px; }
  .jr-p { margin-top: 12px; line-height: 27px; }
  .jr-tussen { margin-top: 28px; font-size: 21px; }
  .jr-item { margin-top: 22px; padding-top: 20px; }
  .jr-item h3 { font-size: 18px; }
  .jr-slot { margin: 52px -12px 0; padding: 22px 20px 24px; border-radius: 16px; line-height: 27px; }
  .jr-slot a { display: inline-block; margin: -12px 0; padding: 12px 0; }
.pagina > header.sec:has(> .binnen > .nf-getal) { padding-top: 204px !important; }
  .pagina > header.sec > .binnen:has(> .nf-getal) { position: absolute !important; left: 0 !important; top: 0 !important; right: 0 !important; bottom: 0 !important; width: auto !important; height: auto !important; order: 0; display: block; overflow: hidden; pointer-events: none; }
  .pagina > header.sec > .binnen > .nf-getal { position: absolute !important; left: auto !important; right: -6px !important; top: 82px !important; font-size: 232px; }
  .pagina > header.sec:has(> .binnen > .nf-getal) > h1 { z-index: 1; }
.pagina > header.sec:has(> .cf-zin, > .lw-bestand, > .av-paneel, > p.intro, > .ot-kaart) > .binnen:not(:has(> :not(svg))) { display: none; }
.pagina > header.sec + footer.sec { margin-top: 8px; }
.go-pagina .menuknop.go-pil { display: flex !important; align-items: center; gap: 10px; padding: 0 22px; background: var(--diep); color: #fff; text-decoration: none; white-space: nowrap; }
  .go-pagina .menuknop.go-pil b { color: #fff; }
.go-pagina > header.sec > .binnen { display: none !important; }
  .go-onder { flex-direction: column; align-items: flex-start !important; gap: 14px; }
.sec.zw.go-zw .zw-plan { order: 1; margin-top: 28px; }
  .sec.zw.go-zw .zw-bel { order: 3; margin-top: 44px; }
  .sec.zw.go-zw .zw-ontwerp { order: 5; }
  .zw-ontwerp .blogwissel.go-venster { left: 50%; margin-left: -140px; top: 36px; width: 280px !important; height: 204px !important; aspect-ratio: auto; }
.go-pagina .kop-knop { display: none !important; }
.cf-zin.go-klein { font-size: 24px; line-height: 32px; }
  .go-klein .cf-zinrij { height: auto; }
  .go-klein .cf-zinrij > .cf-gat { height: 42px; }
@media (max-width: 385px) {
    .cf-zin { font-size: 24px; line-height: 32px; }
    .cf-zinrij > .cf-gat { height: 46px; }
    .cf-zin.go-klein { font-size: 21px; line-height: 28px; }
    .go-klein .cf-zinrij > .cf-gat { height: 38px; }
  }
  @media (max-width: 330px) { .cf-zin { font-size: 22px; line-height: 30px; } }
.pagina .sec.ck-kopje { padding: 44px 20px 22px; }
  .pagina .sec.ck-kopje > h2 + p { margin-top: 10px; }
  .pagina .sec.ck-raam { padding: 0; }
  .pagina .sec.ck-raam > .ck-scherm { height: 844px !important; }
  .ck-doek { padding: 8px; }
.ck-melding { width: 100%; padding: 26px 20px 12px; }
  .ck-melding .b2 { font-size: 26px !important; }
  .ck-melding p { margin-top: 10px; font-size: 16px; line-height: 24px; }
  .ck-knoppen { flex-direction: column; gap: 10px; margin-top: 18px; }
  .ck-rest { min-height: 44px; margin-top: 8px; }
  .ck-klein { display: inline-block; margin: -11px 0; padding: 11px 0; }
.ck-venster { align-self: flex-end; width: 100%; padding: 24px 20px 18px; }
  .ck-venster .b2 { font-size: 26px !important; }
  .ck-doelen { margin-top: 8px; }
.ck-doel { column-gap: 12px; row-gap: 2px; padding: 10px 0 12px; }
  .ck-doel .b3 { font-size: 21px !important; }
  .ck-doel p { grid-column: 1 / -1; font-size: 16px; line-height: 23px; }
  .ck-doel .ck-schakel { grid-row: 1; }
  .ck-schakel { gap: 10px; }
  .ck-schakel .stand { min-width: 44px; font-size: 19px; }
  .ck-schakel.vast .stand { font-size: 15px; }
  .ck-onder { flex-direction: column; align-items: stretch; gap: 10px; margin-top: 18px; }
  .ck-voet { margin-top: 14px; font-size: 15px; line-height: 22px; }
  .ck-voet a { display: inline-block; margin: -11px 0; padding: 11px 0; }
.ck-scherm > .ck-knopje { left: 12px; bottom: 17px; width: 44px; height: 44px; box-shadow: 0 10px 30px rgba(2,7,25,.28), 0 0 0 1px rgba(2,7,25,.06); }
@media (max-width: 340px) {
    .bc-kop, .sw .bc-kop, .cd-col .bc-kop { font-size: 50px !important; }
    .b2 { font-size: 23px !important; }
    body.menu-open .menupaneel > div + div > div:first-of-type { font-size: 15px !important; gap: 10px; }
.bc-kaart h3 { hyphens: auto; overflow-wrap: anywhere; }
  }
}
@media (max-width: 760px) {
  .cf-gat.echt .cf-kern { flex: 1 1 auto; }
  .cf-klaar-kop { font-size: 56px; margin-bottom: 16px; }
  .cf-zin.go-klein.cf-klaar .cf-klaar-kop { font-size: 48px; }
  .cf-zin.cf-klaar .intro { font-size: 18px; line-height: 1.5; }
  .cf-melding.cf-los { margin-top: 14px; }
}
@media (max-width: 760px) {
  header > h2.go-na-staat { white-space: normal; }
  header > h2.go-na-staat .helder { display: inline; }
}
html.bw-voor .pagina > header.sec > h1, html.bw-voor main > header.hero2 > h1 { translate: 0 28px; }
html.bw-voor .pagina > header.sec > .binnen > svg { scale: 0; }
html.bw-voor .pagina > .menuknop, html.bw-voor body > .menuknop { opacity: 0; }
html.bw-voor .pagina > header.sec > :is(.cf-zin, .cf-onder, .go-onder, p, .tw-scherm, .tw-balk, .tw-voortgang) { translate: 0 20px; }
html.bw-voor .pagina > header.sec .cf-gat { clip-path: inset(0 100% 0 0); }
html.bw-voor .pagina > header.sec > :not(.binnen):not(h1):not(.cf-zin):not(.cf-onder):not(.go-onder):not(p):not(.tw-scherm):not(.tw-balk):not(.tw-voortgang),
html.bw-voor .pagina > header.sec > .binnen > .blogwissel,
html.bw-voor .pagina > header.sec > .binnen > .cs-collage,
html.bw-voor .pagina > header.sec > .tw-scherm.aan .tw-optie { opacity: 0; }
@media (max-width: 760px) { html.bw-voor .pagina > header.sec > h1, html.bw-voor main > header.hero2 > h1 { translate: 0 16px; } }
html:not(.figma) { --marge: max(0px, calc((100% - 1440px) / 2)); }
html.bw-z body { zoom: var(--z, 1); }
html.bw .go-pil { transition: opacity .3s ease, translate .45s cubic-bezier(.2,.9,.2,1), visibility 0s linear 0s; }
html.bw .go-pil.bw-pil-weg { opacity: 0; translate: 0 18px; visibility: hidden; pointer-events: none; transition: opacity .25s ease, translate .3s ease, visibility 0s linear .3s; }
@media (prefers-reduced-motion: reduce) { html.bw .go-pil, html.bw .go-pil.bw-pil-weg { transition: none; } }
html.bw .bw-bezig { transition: none !important; }
html.bw .pagina > header.sec > .binnen > svg { transform-origin: 0 100%; }
html.bw .ct-muis svg, html.bw .tl-wijs svg { transform-origin: 3px 3px; }
html.bw .pagina .blogwissel img.aan { z-index: 7; }
html.bw .tl-punt::after { content: ""; position: absolute; inset: -12px; border-radius: 50%; border: 3px solid var(--diep); opacity: 0; pointer-events: none; }
html.bw .tl-punt.bw-klik::after { animation: klikring .5s ease-out 1; }
html.bw .tl > .cd-ding { transition: opacity .45s, translate .6s cubic-bezier(.2,.9,.2,1); }
html.bw .tl > .cd-ding.bw-uit { opacity: .22; translate: 0 18px; }
html.bw.beweeg .cf-streep { animation: bw-knipper 1.1s steps(1, end) infinite; }
@keyframes bw-knipper { 50% { opacity: 0; } }
html.bw.beweeg .lp-stap.aan .punt .wijs { animation: bw-land .38s cubic-bezier(.2,.9,.2,1) backwards; }
@keyframes bw-land { from { opacity: 0; translate: -12px -14px; scale: 1.5; } }
html.bw.beweeg .lp-uitleg .lp-zin.aan { animation: bw-zin .4s cubic-bezier(.2,.9,.2,1) backwards; }
@keyframes bw-zin { from { opacity: 0; translate: 0 10px; } }
html.bw.beweeg .tw-scherm.aan .tw-optie { animation: bw-optie .5s cubic-bezier(.2,.9,.2,1) backwards; }
html.bw.beweeg .tw-scherm.aan .tw-optie:nth-child(2) { animation-delay: .06s; }
html.bw.beweeg .tw-scherm.aan .tw-optie:nth-child(3) { animation-delay: .12s; }
html.bw.beweeg .tw-scherm.aan .tw-optie:nth-child(4) { animation-delay: .18s; }
html.bw.beweeg .tw-scherm.aan .tw-optie:nth-child(5) { animation-delay: .24s; }
html.bw.beweeg .tw-scherm.aan .tw-optie:nth-child(n+6) { animation-delay: .3s; }
@keyframes bw-optie { from { opacity: 0; translate: 0 22px; } }
html.bw.beweeg .tw-scherm.aan .tw-schuif, html.bw.beweeg .tw-scherm.aan .tw-u, html.bw.beweeg .tw-scherm.aan .tw-contact { animation: bw-optie .55s cubic-bezier(.2,.9,.2,1) .08s backwards; }
html.bw.beweeg dialog.cd-review-heel[open] { animation: bw-venster .4s cubic-bezier(.2,.9,.2,1); }
html.bw.beweeg dialog.cd-review-heel[open]::backdrop { animation: bw-doek .3s ease; }
@keyframes bw-venster { from { opacity: 0; translate: 0 28px; } }
@keyframes bw-doek { from { opacity: 0; } }
html.bw .av-bron .balk i { transform-origin: 0 50%; }
html.bw body.mega-open .kop-nav > a[aria-expanded="true"] { background: rgba(255,255,255,.1); color: var(--helder); }
html.bw body.mega-open .kop-nav > a[aria-expanded="true"] .haakje { transform: translateY(1px) rotate(-135deg); }
html.bw.beweeg .vragenlijst .antwoord p { opacity: 0; translate: 0 -8px; transition: opacity .25s ease, translate .4s cubic-bezier(.2,.9,.2,1); }
html.bw.beweeg .vragenlijst .vraagblok.open .antwoord p { opacity: 1; translate: none; transition-delay: .1s; }
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
html.bw .link .pijl { transition: translate .2s cubic-bezier(.2,.9,.2,1); }
  html.bw .link:hover .pijl, html.bw a.cs-kaart:hover .cs-meer .pijl, html.bw a.rg-ook:hover .link .pijl, html.bw a.ar-case:hover .link .pijl { translate: 3px -3px; }
html.bw .ig-post { transition: translate .35s cubic-bezier(.2,.9,.2,1), box-shadow .3s ease; }
  html.bw .ig-post:hover { translate: 0 -10px; box-shadow: 0 36px 60px -20px rgba(2,7,25,.42); }
  html.bw .ig-speel { transition: scale .3s cubic-bezier(.3,1.4,.5,1); }
  html.bw .ig-post:hover .ig-speel { scale: 1.12; }
html.bw .ws-plek .ws-venster { transition: translate .35s cubic-bezier(.2,.9,.2,1), box-shadow .3s ease; }
  html.bw .ws-plek:hover .ws-venster { translate: 0 -8px; box-shadow: 0 30px 56px rgba(2,7,25,.34); }
}
html:not(.figma) .pagina { overflow: clip; }
html:not(.figma) .ar-zij { top: clamp(100px, calc(100vh - 800px), 120px); }
@media (min-width: 1441px) {
  html:not(.figma) body { overflow-x: hidden; }
  html:not(.figma) .pagina { overflow: visible; }
  html:not(.figma) :is(main#top, .pagina) > :is(section, header, footer) {
    margin-left: calc(-1 * var(--marge)); margin-right: calc(-1 * var(--marge));
    border-left: var(--marge) solid transparent; border-right: var(--marge) solid transparent;
    background-origin: border-box;
  }
html:not(.figma) :is(main#top, .pagina) > .sec, html:not(.figma) main#top > .hero2 { overflow: visible; clip-path: inset(0); }
html:not(.figma) header.sec > :is(.binnen, [data-vlak])[style*="width:1408px"],
  html:not(.figma) .fd-vlak { left: calc(16px - var(--marge)) !important; width: calc(1408px + 2 * var(--marge)) !important; }
  html:not(.figma) .fd-vlak img.foto, html:not(.figma) .fd-vlak .fd-laag { width: 100%; }
html:not(.figma) header.sec > .binnen[style*="width:1408px"] > [style*="left:"]:not([style*="left:0"]) { margin-left: var(--marge); }
  html:not(.figma) header.sec > .binnen[style*="width:1408px"] > [style*="right:"]:not([style*="right:0"]) { margin-right: var(--marge); }
  html:not(.figma) header.sec > .binnen[style*="width:1408px"] > .cs-links { margin-left: var(--marge); }
html:not(.figma) .hero2 { box-shadow: none; }
  html:not(.figma) .hero2 > video, html:not(.figma) .hero2 > .laag { left: calc(-1 * var(--marge)); right: auto; width: calc(100% + 2 * var(--marge)); }
html:not(.figma) .werk-pin {
    width: calc(1440px + 2 * var(--marge)); margin: 0 calc(-1 * var(--marge));
    border-left: var(--marge) solid transparent; border-right: var(--marge) solid transparent;
    overflow: visible; clip-path: inset(0);
  }
  html:not(.figma) .werk-fotos img, html:not(.figma) .werk-pin .laag { left: calc(-1 * var(--marge)); width: calc(100% + 2 * var(--marge)); }
}
.ov { position: fixed; inset: 0; z-index: 80; overflow: hidden; pointer-events: auto; background: #fff; }
.ov > .ov-achter { position: absolute; inset: 0; background: #fff; }
.ov > .ov-vlak { position: absolute; inset: 0; }
.ov .ov-vul { position: absolute; overflow: hidden; }
.ov .ov-vul > div { position: absolute; }
.ov > .ov-kop { position: absolute; left: 0; top: 0; pointer-events: none; }
.ov-grond { position: fixed; inset: 0; z-index: -1; pointer-events: none; }
.ov-streep { position: fixed; left: 0; top: 0; width: 5px; height: 40px; z-index: 81; opacity: 0; pointer-events: none; }
html.ov-typ .pagina > header.sec > h1, html.ov-typ main > header.hero2 > h1 { translate: none; clip-path: inset(50%); }
html.ov-typ .pagina > header.sec > .binnen > svg { scale: none; }
html.ov-typ .pagina > header.sec > :is(.cf-zin, .cf-onder, .go-onder, p, .tw-scherm, .tw-balk, .tw-voortgang),
html.ov-typ .pagina > header.sec > .binnen > .nf-getal { opacity: 0; }
html.ov-typ .pagina > .menuknop, html.ov-typ body > .menuknop { opacity: 1; }
html.ov-in.bw-voor .pagina > header.sec > .binnen > :is(.blogwissel, .cs-collage),
html.ov-in.bw-voor .pagina > header.sec > :not(.binnen):not(h1):not(.cf-zin):not(.cf-onder):not(.go-onder):not(p):not(.tw-scherm):not(.tw-balk):not(.tw-voortgang) { opacity: 1; }
html.ov-weg :is(.kop-knop, .menuknop) :is(.tab, .knoppijl) { transform: none !important; }
html.ov-weg :is(.kop-knop, .menuknop) .glans { animation: none !important; opacity: 0 !important; }
html.ov-rond :is(.pagina, main) > :is(section, footer) { opacity: 0; }
html.ov-rond-in :is(.pagina, main) > :is(section, footer) { transition: opacity .3s ease; }
.pl { position: fixed; inset: 0; z-index: 2147483000; overflow: hidden; pointer-events: none; contain: strict; }
.pl[data-variant="1"], .pl[data-variant="2"], .pl[data-variant="3"] { background: #020719; }
.pl[data-variant="4"] { background: #0A71D9; }
.pl.pl-gebouwd { background: none; }
.pl:not(.pl-gebouwd) { animation: pl-weg .3s linear 3s forwards; }
@keyframes pl-weg { to { opacity: 0; visibility: hidden; } }
@media (prefers-reduced-motion: reduce) { .pl:not(.pl-stil) { display: none !important; } }
.pl.pl-in { position: absolute; z-index: 2; }
.pl-doek { position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: #020719; }
.pl-zoom, .pl-helft { position: absolute; left: 0; top: 0; width: 100%; height: 100%; }
.pl-helft { background: #020719; }
.pl-blok, .pl-wm, .pl-l { position: absolute; }
.pl-wm { transform-origin: 0 0; }
.pl-l { left: 0; top: 0; width: 100%; height: 100%; }
.pl-s { position: absolute; left: 0; top: 0; width: 100%; height: 100%; display: block; overflow: visible; }
.pl-ring { position: absolute; border-radius: 50%; border: 3px solid #119CFF; opacity: 0; }
.pl-lijn { position: absolute; background: #119CFF; transform-origin: 0 50%; }
html.pl-host, html.pl-host body { margin: 0; height: 100%; overflow: hidden; background: #020719; }
.pl-pagina { position: fixed; left: 0; top: 0; width: 100%; height: 100%; border: 0; display: block; }
.pl-knoppen { position: fixed; left: 10px; bottom: 10px; z-index: 2147483001; display: flex; gap: 6px; transition: opacity .2s ease; }
.pl-knoppen button { height: 30px; padding: 0 12px; border: 0; border-radius: 999px; background: #fff; color: #020719; font: 600 12px/1 Inter, "Segoe UI", system-ui, sans-serif; box-shadow: 0 6px 20px rgba(2,7,25,.35), 0 0 0 1px rgba(2,7,25,.08); cursor: pointer; }
.pl-knoppen button:hover { background: #E8F3FF; }
.pl-knoppen button:focus-visible { outline: 3px solid #96F8F4; outline-offset: 2px; }
.pl-knoppen .pl-melding { align-self: center; padding: 0 12px; height: 30px; display: none; align-items: center; border-radius: 999px; background: #fff; color: #020719; font: 500 12px/1 Inter, "Segoe UI", system-ui, sans-serif; }
html.pl-rustig .pl-knoppen .pl-melding { display: flex; }
html.pl-rustig .pl-knoppen button { display: none; }
html.pl-bezig .pl-knoppen { opacity: 0; pointer-events: none; }
html.pl-film .pl-knoppen { display: none; }
.ck-live { --ck-z: 2000; }
.ck-live[hidden], .ck-live [hidden] { display: none !important; }
.ck-live .ck-doek.ck-dicht { visibility: hidden; pointer-events: none; }
.ck-live .ck-doek { position: fixed; inset: 0; width: auto; height: auto; z-index: var(--ck-z); box-sizing: border-box; display: flex; align-items: center; justify-content: center; padding: 24px; background: rgba(2,7,25,.6); overscroll-behavior: contain; }
.ck-live .ck-melding, .ck-live .ck-venster { position: relative; flex: none; box-sizing: border-box; max-height: calc(100dvh - 48px); filter: drop-shadow(0 24px 48px rgba(2,7,25,.3)); text-align: left; }
.ck-live .ck-melding:focus, .ck-live .ck-venster:focus { outline: none; }
.ck-live .ck-melding { width: 608px; max-width: 100%; padding: 52px 44px 36px; }
.ck-live .ck-melding .b2 { font-size: 44px; }
.ck-live .ck-melding p { margin-top: 14px; font-size: 18px; line-height: 29px; color: var(--zacht); }
.ck-live .ck-knoppen { display: flex; gap: 12px; margin-top: 32px; }
.ck-live .ck-knop { display: inline-block; margin: 0; padding: 0; border: 0; background: none; line-height: 0; cursor: pointer; font: inherit; color: inherit; }
.ck-live .ck-knop:focus-visible { outline: 3px solid var(--helder); outline-offset: 3px; border-radius: 12px; }
.ck-live .ck-rest { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-top: 22px; }
.ck-live .ck-rest .link { cursor: pointer; }
.ck-live .ck-klein { font-size: 15px; line-height: 22px; color: var(--zacht); text-decoration: underline; text-underline-offset: 3px; }
.ck-live .ck-venster { display: flex; flex-direction: column; width: 800px; max-width: 100%; padding: 44px 48px 34px; }
.ck-live .ck-venster .b2 { flex: none; font-size: 36px; }
.ck-live .ck-doelen { flex: 0 1 auto; min-height: 0; overflow: auto; margin-top: 14px; overscroll-behavior: contain; }
.ck-live .ck-doel { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; column-gap: 32px; row-gap: 4px; padding: 17px 0; border-bottom: 1px solid var(--lijn); }
.ck-live .ck-doel .b3 { grid-column: 1; grid-row: 1; font-size: 24px; }
.ck-live .ck-doel p { grid-column: 1; grid-row: 2; font-size: 16px; line-height: 24px; color: var(--zacht); }
.ck-live .ck-doel .ck-schakel { grid-column: 2; grid-row: 1 / span 2; }
.ck-live .ck-schakel { flex: none; display: inline-flex; align-items: center; gap: 14px; height: 44px; margin: 0; padding: 0; border: 0; background: none; cursor: pointer; }
.ck-live .ck-schakel .stand { min-width: 52px; text-align: right; font-family: Kanit, sans-serif; font-style: italic; font-weight: 800; font-size: 22px; line-height: 1; color: var(--zacht); white-space: nowrap; transition: color .3s ease; }
.ck-live .ck-schakel .baan { position: relative; display: block; flex: none; width: 84px; height: 44px; border-radius: 22px; background: #D5DCE6; transition: background .3s ease; }
.ck-live .ck-schakel .knopje { position: absolute; left: 5px; top: 5px; width: 34px; height: 34px; border-radius: 50%; background: #fff; box-shadow: 0 3px 8px rgba(2,7,25,.25); display: flex; align-items: center; justify-content: center; line-height: 0; transition: left .45s cubic-bezier(.3,1.4,.5,1), background .3s ease; }
.ck-live .ck-schakel .knopje .pijl { opacity: 0; transition: opacity .3s ease; }
.ck-live .ck-schakel.aan .stand { color: var(--nacht); }
.ck-live .ck-schakel.aan .baan { background: var(--diep); }
.ck-live .ck-schakel.aan .knopje { left: 45px; background: var(--nacht); }
.ck-live .ck-schakel.aan .knopje .pijl { opacity: 1; }
.ck-live .ck-schakel.vast { cursor: default; }
.ck-live .ck-schakel.vast .stand { font-size: 16px; color: var(--zacht); }
.ck-live .ck-schakel.vast .baan { background: #B9C3D3; }
.ck-live .ck-onder { flex: none; display: flex; align-items: center; gap: 12px; margin-top: 28px; }
.ck-live .ck-voet { flex: none; margin-top: 20px; font-size: 15px; line-height: 23px; color: var(--zacht); }
.ck-live .ck-voet a { color: var(--diep); text-decoration: underline; text-underline-offset: 3px; }
body.menu-open .ck-live .ck-knopje, body.mega-open .ck-live .ck-knopje { visibility: hidden; }
.ck-live .ck-knopje { position: fixed; left: calc(40px + var(--marge, 0px)); bottom: 37px; z-index: 85; width: 48px; height: 48px; padding: 0; border: 0; border-radius: 50%; background: #fff; box-shadow: 0 16px 40px rgba(2,7,25,.35), 0 0 0 1px rgba(2,7,25,.06); display: flex; align-items: center; justify-content: center; cursor: pointer; }
.ck-live .ck-schakel:focus-visible, .ck-live .ck-knopje:focus-visible { outline: 3px solid var(--helder); outline-offset: 3px; }
html.ck-open .ck-live .ck-knopje { display: none; }
html.ck-open:not(.ck-lezen) .menuknop { visibility: hidden; }
.ck-live.ck-lezen .ck-doek-melding { inset: auto 0 0 0; padding: 0 24px 24px; background: none; pointer-events: none; }
.ck-live.ck-lezen .ck-doek-melding .ck-melding { pointer-events: auto; }
@media (prefers-reduced-motion: reduce) { .ck-live .ck-schakel .stand, .ck-live .ck-schakel .baan, .ck-live .ck-schakel .knopje, .ck-live .ck-schakel .knopje .pijl { transition: none; } }
@media (max-width: 760px) {
  .ck-live .ck-doek { padding: 8px; }
  .ck-live .ck-melding, .ck-live .ck-venster { max-height: calc(100dvh - 16px); }
  .ck-live .ck-melding { width: 100%; padding: 26px 20px 12px; }
  .ck-live .ck-melding .b2 { font-size: 26px !important; }
  .ck-live .ck-melding p { margin-top: 10px; font-size: 16px; line-height: 24px; }
  .ck-live .ck-knoppen { flex-direction: column; gap: 10px; margin-top: 18px; }
  .ck-live .ck-rest { min-height: 44px; margin-top: 8px; }
  .ck-live .ck-klein { display: inline-block; margin: -11px 0; padding: 11px 0; }
  .ck-live .ck-doek-venster { align-items: flex-end; }
  .ck-live .ck-venster { width: 100%; padding: 24px 20px 18px; }
  .ck-live .ck-venster .b2 { font-size: 26px !important; }
  .ck-live .ck-doelen { margin-top: 8px; }
  .ck-live .ck-doel { column-gap: 12px; row-gap: 2px; padding: 10px 0 12px; }
  .ck-live .ck-doel .b3 { font-size: 21px !important; }
  .ck-live .ck-doel p { grid-column: 1 / -1; font-size: 16px; line-height: 23px; }
  .ck-live .ck-doel .ck-schakel { grid-row: 1; }
  .ck-live .ck-schakel { gap: 10px; }
  .ck-live .ck-schakel .stand { min-width: 44px; font-size: 19px; }
  .ck-live .ck-schakel.vast .stand { font-size: 15px; }
  .ck-live .ck-onder { flex-direction: column; align-items: stretch; gap: 10px; margin-top: 18px; }
  .ck-live .ck-voet { margin-top: 14px; font-size: 15px; line-height: 22px; }
  .ck-live .ck-voet a { display: inline-block; margin: -11px 0; padding: 11px 0; }
.ck-live .ck-knopje { left: 12px; bottom: 17px; width: 44px; height: 44px; box-shadow: 0 10px 30px rgba(2,7,25,.28), 0 0 0 1px rgba(2,7,25,.06); }
  .ck-live.ck-lezen .ck-doek-melding { padding: 0 8px 8px; }
}
