/* Axcor — site.css — mobiel eerst. Militair palet, licht en rustig: olijf, zand, coyote, staalgrijs. */
:root{
  --olive-900:#263121; --olive-700:#3E4C36; --olive-500:#5F7050; --olive-300:#A9B596; --olive-100:#E4E9DA; --olive-50:#F1F4EB;
  --sand-100:#F5F1E8; --sand-200:#E8E1CF; --khaki:#CFC7A6; --sand-line:#DDD6C3;
  --coyote:#B07636; --coyote-dark:#8A5B27; --coyote-light:#F3E6D3;
  --steel-700:#3E4954; --steel-500:#64717D; --steel-100:#E6EAEE;
  --ink:#1F2620; --ink-soft:#454D41; --ink-muted:#6E766A; --on-dark:#EEF0E6; --on-dark-muted:#C3CAB4;
  --white:#FFFFFF; --radius:12px; --max:1200px;
  --font:'Archivo',system-ui,-apple-system,'Segoe UI',sans-serif;
  --shadow:0 1px 2px rgba(31,38,32,.06),0 8px 24px -12px rgba(31,38,32,.18);
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;font-family:var(--font);color:var(--ink);background:var(--white);line-height:1.55;font-size:16px}
img{max-width:100%;height:auto;display:block}
a{color:var(--ink);text-decoration:none}
a:hover{color:var(--coyote-dark)}
h1,h2,h3,h4{margin:0;line-height:1.15;font-weight:800;letter-spacing:-0.01em}
h1{font-size:clamp(27px,4.2vw,38px)}
h2{font-size:clamp(21px,2.7vw,27px)}
h3{font-size:clamp(17px,2vw,19px)}
p{margin:0}
ul,ol{margin:0;padding:0;list-style:none}
.wrap{width:100%;max-width:var(--max);margin:0 auto;padding:0 16px}
@media(min-width:720px){.wrap{padding:0 32px}}
.eyebrow{font-size:12.5px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--coyote-dark)}
.lead{font-size:clamp(16px,1.8vw,18px);color:var(--ink-soft)}
.stack{display:flex;flex-direction:column;gap:16px}
.section{padding:52px 0}
@media(min-width:720px){.section{padding:64px 0}}
.section--cream{background:var(--sand-100)}
.section--olive{background:var(--olive-50)}
.section--steel{background:var(--steel-100)}
.section--dark{background:var(--olive-700);color:var(--on-dark)}
.section--dark .eyebrow{color:var(--khaki)}
.section--dark a{color:var(--on-dark)}
.section-head{max-width:760px;margin-bottom:28px}
@media(min-width:720px){.section-head{margin-bottom:36px}}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 22px;border-radius:9px;font-weight:700;font-size:15.5px;border:2px solid transparent;cursor:pointer;font-family:inherit;transition:background .15s,color .15s,border-color .15s}
.btn--primary{background:var(--olive-700);color:var(--white)}
.btn--primary:hover{background:var(--olive-900);color:var(--white)}
.btn--accent{background:var(--coyote);color:var(--white)}
.btn--accent:hover{background:var(--coyote-dark);color:var(--white)}
.btn--ghost{border-color:var(--olive-700);color:var(--olive-700);background:transparent}
.btn--ghost:hover{background:var(--olive-700);color:var(--white)}
.btn--outline{border-color:var(--sand-line);color:var(--ink);background:var(--white)}
.btn--outline:hover{border-color:var(--coyote);color:var(--coyote-dark)}
.btn-row{display:flex;flex-wrap:wrap;gap:12px}
.arrow::after{content:"→";margin-left:6px}
.more{font-weight:700;color:var(--coyote-dark)}
.more::after{content:" →"}

/* Topbar + header */
.topbar{background:var(--olive-900);color:var(--on-dark-muted);font-size:13px;font-weight:500}
.topbar .wrap{min-height:34px;display:flex;align-items:center;justify-content:flex-end;gap:16px;flex-wrap:wrap;padding-top:5px;padding-bottom:5px}
.topbar .locs{display:none;margin-right:auto}
@media(min-width:720px){.topbar .locs{display:inline}}
.topbar a{color:var(--on-dark)}
.lang{display:flex;gap:10px;font-weight:700;letter-spacing:.08em}
.lang a{color:var(--on-dark-muted)}
.lang a[aria-current]{color:var(--white)}
.header{background:var(--white);border-bottom:1px solid var(--sand-line);position:sticky;top:0;z-index:50}
.header .wrap{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.brand{display:flex;align-items:center;gap:10px}
.brand svg{width:36px;height:36px;flex:0 0 auto}
.brand .word{font-size:25px;font-weight:900;letter-spacing:.05em;line-height:1;color:var(--ink)}
.brand .by{display:none;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-muted);border-left:1px solid var(--sand-line);padding-left:10px;margin-left:2px;line-height:1.3}
@media(min-width:720px){.brand svg{width:40px;height:40px}.brand .word{font-size:28px}.brand .by{display:block}}
.nav-toggle{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border:1px solid var(--sand-line);border-radius:8px;background:var(--white);cursor:pointer}
.nav-toggle span{display:block;width:22px;height:2px;background:var(--ink);position:relative}
.nav-toggle span::before,.nav-toggle span::after{content:"";position:absolute;left:0;width:22px;height:2px;background:var(--ink)}
.nav-toggle span::before{top:-7px}.nav-toggle span::after{top:7px}
.nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--white);border-bottom:1px solid var(--sand-line);padding:8px 16px 20px;flex-direction:column;gap:2px;max-height:calc(100vh - 68px);overflow:auto}
.nav.is-open{display:flex}
.nav a{display:block;padding:11px 8px;font-weight:700;font-size:17px;border-radius:6px}
.nav a:hover{background:var(--sand-100)}
.nav a[aria-current]{color:var(--coyote-dark)}
.nav .btn{margin-top:10px;color:var(--white)}
.nav-item{position:relative}
.nav-item>a{display:flex;align-items:center;gap:6px}
.nav-item.has-sub>a::after{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin-top:-4px;opacity:.6}
.sub{display:flex;flex-direction:column;gap:0;padding:0 0 6px 14px;border-left:2px solid var(--olive-100);margin:0 0 6px 10px}
.sub a{font-size:15px;font-weight:600;padding:8px 8px;color:var(--ink-soft)}
.sub b{display:block;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-muted);padding:8px 8px 2px}
@media(min-width:1040px){
  .nav-toggle{display:none}
  .nav{display:flex;position:static;flex-direction:row;align-items:center;gap:2px;padding:0;border:0;background:transparent;max-height:none;overflow:visible}
  .nav>a,.nav-item>a{padding:10px 9px;font-size:14.5px;white-space:nowrap}
  .nav .btn{margin:0 0 0 8px;padding:10px 16px;min-height:42px;font-size:14px;white-space:nowrap}
  .sub{display:none;position:absolute;left:0;top:100%;min-width:260px;background:var(--white);border:1px solid var(--sand-line);border-radius:12px;box-shadow:var(--shadow);padding:10px;margin:0;z-index:60}
  .nav-item:hover>.sub,.nav-item:focus-within>.sub,.nav-item.is-open>.sub{display:flex}
  .sub a{font-size:14.5px;padding:9px 10px;border-radius:8px;white-space:nowrap}
  .sub a:hover{background:var(--sand-100);color:var(--ink)}
  .sub b{padding:8px 10px 4px}
}
@media(min-width:1040px) and (max-width:1179px){.brand .by{display:none}.nav>a[href="/nl/kennis/"]{display:none}.nav>a,.nav-item>a{padding:10px 6px;font-size:13.5px}.nav .btn{margin-left:2px;padding:10px 12px;font-size:13.5px}.brand .word{font-size:26px}}
@media(min-width:1180px) and (max-width:1339px){.nav>a,.nav-item>a{padding:10px 8px;font-size:14.5px}.nav .btn{margin-left:4px;padding:10px 14px}}
@media(min-width:1340px){.nav>a,.nav-item>a{padding:10px 10px;font-size:14.5px}.topbar .wrap,.header .wrap{max-width:1320px}}
/* FR/EN: langere menuteksten -> hamburger tot 1240px, compacter daarboven */
@media(min-width:1040px) and (max-width:1239px){html:not([lang=nl]) .nav-toggle{display:flex}html:not([lang=nl]) .nav{display:none;position:absolute;flex-direction:column;padding:8px 16px 20px;border-bottom:1px solid var(--sand-line);background:var(--white)}html:not([lang=nl]) .nav.is-open{display:flex}html:not([lang=nl]) .nav>a,html:not([lang=nl]) .nav-item>a{font-size:17px;padding:11px 8px;white-space:normal}html:not([lang=nl]) .sub{display:flex;position:static;border:0;box-shadow:none;padding:0 0 6px 14px;min-width:0}html:not([lang=nl]) .nav .btn{margin:10px 0 0}}
@media(min-width:1240px){html:not([lang=nl]) .brand .by{display:none}html:not([lang=nl]) .nav>a,html:not([lang=nl]) .nav-item>a{padding:10px 5px;font-size:13px}html:not([lang=nl]) .nav .btn{margin-left:2px;padding:10px 12px;font-size:13px}}
@media(min-width:1340px){html:not([lang=nl]) .nav>a,html:not([lang=nl]) .nav-item>a{padding:10px 7px;font-size:13.5px}}
@media(min-width:1440px){html:not([lang=nl]) .brand .by{display:block}html:not([lang=nl]) .nav>a,html:not([lang=nl]) .nav-item>a{padding:10px 8px;font-size:14px}}

/* Hero */
.hero{background:linear-gradient(180deg,var(--olive-100) 0%,var(--sand-100) 100%);color:var(--ink);padding:44px 0;border-bottom:1px solid var(--sand-line)}
@media(min-width:720px){.hero{padding:64px 0}}
.hero .grid{display:grid;gap:28px;align-items:center}
@media(min-width:880px){.hero .grid{grid-template-columns:1.05fr .95fr;gap:48px}}
.hero img{border-radius:14px;width:100%;box-shadow:var(--shadow)}
.hero--page{padding:36px 0}
@media(min-width:720px){.hero--page{padding:56px 0}}
.hero--page img{aspect-ratio:4/3;object-fit:cover;background:var(--white)}
.hero--page img.contain{object-fit:contain;padding:18px}
.hero .lead{max-width:60ch}
.quiet{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:14.5px;font-weight:700}
.quiet a{color:var(--olive-700);border-bottom:2px solid var(--olive-300);padding-bottom:2px}
.quiet a:hover{color:var(--coyote-dark);border-color:var(--coyote)}
.rounded{border-radius:14px}
.crumbs{font-size:13px;color:var(--ink-muted);display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}
.crumbs a{color:var(--ink-muted)}
.crumbs a:hover{color:var(--olive-700)}

/* Systeemkaarten (home) */
.sys{display:grid;gap:20px}
@media(min-width:720px){.sys{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}}
@media(min-width:960px){.sys{grid-template-columns:repeat(3,minmax(0,1fr))}}
.sys a.tone-olive{border-top-color:var(--olive-500)}
.sys .brand{font-size:13px;color:var(--ink-soft);margin-top:-4px}
.sys a{display:flex;flex-direction:column;background:var(--white);border:1px solid var(--sand-line);border-radius:16px;overflow:hidden;min-width:0;box-shadow:var(--shadow);border-top:5px solid var(--olive-700)}
.sys a.tone-steel{border-top-color:var(--steel-700)}
.sys a.tone-coyote{border-top-color:var(--coyote)}
.sys img{width:100%;aspect-ratio:4/3;object-fit:cover}
.sys img.contain{object-fit:contain;background:#fff;padding:18px}
.sys .body{padding:22px 22px 24px;display:flex;flex-direction:column;gap:10px;flex:1}
.sys .body .eyebrow{font-size:11.5px}
.sys h2{font-size:21px}
.sys p{font-size:15px;color:var(--ink-soft)}
.sys .more{margin-top:auto;padding-top:6px}
.sys a:hover{border-color:var(--olive-300)}
.sys a:hover h2{color:var(--coyote-dark)}

/* Cards */
.cards{display:grid;gap:24px}
.cards--2{grid-template-columns:1fr}
.cards--3{grid-template-columns:1fr}
.cards--4{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
@media(min-width:620px){.cards--2,.cards--3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:920px){.cards--3{grid-template-columns:repeat(3,minmax(0,1fr))}.cards--4{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}}
.card{display:flex;flex-direction:column;gap:10px;min-width:0}
.card img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius);background:var(--white)}
.card p{font-size:15px;color:var(--ink-soft)}
a.card h3{color:var(--ink)}
a.card:hover h3{color:var(--coyote-dark)}
.card--box{background:var(--white);border-radius:14px;overflow:hidden;border:1px solid var(--sand-line)}
.card--box img{border-radius:0;aspect-ratio:3/2}
.card--box .body{padding:20px 20px 24px;display:flex;flex-direction:column;gap:8px}
.card--tile .thumb{background:var(--olive-100);border-radius:var(--radius);aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;overflow:hidden}
.card--tile .thumb--light{background:var(--white);border:1px solid var(--sand-line)}
.card--tile .thumb img{max-width:82%;max-height:82%;width:auto;aspect-ratio:auto;object-fit:contain;border-radius:0}
.card--tile h3{font-size:17px}
.card--tile p{font-size:14px}
@media(min-width:920px){.card--tile h3{font-size:18px}}
.card--plain{padding:18px 20px;border:1px solid var(--sand-line);border-radius:12px;background:var(--white)}
.card--plain h3{font-size:16px;margin-bottom:6px}
.card--plain p{font-size:14px}
.card--icon{padding:20px;border:1px solid var(--sand-line);border-radius:14px;background:var(--white);gap:12px}
.card--icon .ico{width:44px;height:44px;border-radius:10px;background:var(--olive-100);color:var(--olive-700);display:flex;align-items:center;justify-content:center}
.card--icon .ico svg{width:24px;height:24px}
.card--icon h3{font-size:16.5px}
.card--icon p{font-size:14px}
a.card--icon:hover{border-color:var(--olive-300)}
.step{font-size:13px;font-weight:700;letter-spacing:.14em;color:var(--coyote-dark)}

/* Twee kolommen */
.split{display:grid;gap:28px;align-items:start}
@media(min-width:880px){.split{grid-template-columns:1fr 1fr;gap:48px}}
.split--text-wide{align-items:center}
@media(min-width:880px){.split--text-wide{grid-template-columns:1.15fr .85fr}}
.split img{border-radius:14px;width:100%}
.checks{display:grid;gap:12px;font-size:15px}
@media(min-width:620px){.checks{grid-template-columns:repeat(2,minmax(0,1fr))}}
.checks li,.bullets li{display:flex;gap:10px;align-items:flex-start}
.checks li::before{content:"✓";color:var(--olive-500);font-weight:900}
.bullets{display:grid;gap:10px;font-size:15px}
.bullets li::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--coyote);margin-top:8px;flex:0 0 auto}
.prose{max-width:760px;display:flex;flex-direction:column;gap:18px}
.prose p,.prose li{font-size:16px;color:var(--ink-soft)}
.prose h2{margin-top:16px}
.prose h3{margin-top:8px}
.prose ul{display:grid;gap:8px;padding-left:0}
.prose ul li{display:flex;gap:10px}
.prose ul li::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--coyote);margin-top:9px;flex:0 0 auto}
.prose table{border-collapse:collapse;width:100%;font-size:15px}
.prose th,.prose td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--sand-line);vertical-align:top}
.prose th{font-weight:700;background:var(--sand-100)}
.prose a{color:var(--coyote-dark);font-weight:600}
.table-scroll{overflow-x:auto}
.brands{display:flex;flex-direction:column;gap:14px}
.brands a{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 16px;border-bottom:1px solid var(--sand-line);padding-bottom:12px}
.brands a:last-child{border:0;padding-bottom:0}
.brands b{font-size:19px;font-weight:900}
.brands span{font-size:14px;color:var(--ink-soft)}
.box{background:var(--sand-100);border-radius:14px;padding:24px}
@media(min-width:720px){.box{padding:32px}}
.note-box{display:flex;gap:16px;align-items:flex-start;background:var(--coyote-light);border:1px solid #E6D2B4;border-radius:14px;padding:20px 22px;margin-top:24px}
.note-box .ico{flex:0 0 auto;width:40px;height:40px;border-radius:10px;background:var(--coyote);color:var(--white);display:flex;align-items:center;justify-content:center}
.note-box .ico svg{width:22px;height:22px}
.note-box h3{font-size:17px;margin-bottom:4px}
.note-box p{font-size:14.5px;color:var(--ink-soft)}
.facts{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}
@media(min-width:720px){.facts{grid-template-columns:repeat(4,minmax(0,1fr))}}
.fact{background:var(--white);border:1px solid var(--sand-line);border-radius:12px;padding:16px 18px}
.fact b{display:block;font-size:clamp(22px,3vw,28px);line-height:1.1;color:var(--olive-700)}
.fact span{display:block;font-size:13.5px;color:var(--ink-soft);margin-top:6px}

/* FAQ */
.faq{display:grid;gap:12px;max-width:820px}
.faq details{background:var(--white);border:1px solid var(--sand-line);border-radius:10px;padding:0 20px}
.faq summary{cursor:pointer;font-weight:700;padding:16px 0;list-style:none;display:flex;justify-content:space-between;gap:16px;min-height:48px;align-items:center}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-size:22px;color:var(--coyote-dark);flex:0 0 auto}
.faq details[open] summary::after{content:"–"}
.faq details p{padding:0 0 18px;color:var(--ink-soft);font-size:15px}

/* CTA + formulier */
.cta{background:var(--olive-700);color:var(--white)}
.cta .grid{display:grid;gap:32px;align-items:center}
@media(min-width:880px){.cta .grid{grid-template-columns:1fr 1fr;gap:48px}}
.cta p{color:var(--on-dark)}
.cta--slim{padding:40px 0;background:var(--olive-100);color:var(--ink);border-top:1px solid var(--sand-line)}
.cta--slim .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 32px}
.cta--slim h2{font-size:clamp(19px,2.3vw,23px)}
.cta--slim p{color:var(--ink-soft);font-size:15px;max-width:60ch}
.form{background:var(--white);border-radius:14px;padding:24px;display:flex;flex-direction:column;gap:14px;color:var(--ink)}
@media(min-width:720px){.form{padding:28px}}
.form label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:700}
.form input,.form textarea,.form select{font:inherit;font-weight:400;font-size:16px;padding:12px 14px;border:1px solid var(--sand-line);border-radius:8px;min-height:48px;width:100%;background:var(--white);color:var(--ink)}
.form textarea{resize:vertical;min-height:96px}
.form .row{display:grid;gap:14px}
@media(min-width:620px){.form .row{grid-template-columns:1fr 1fr}}
.form .btn{width:100%}
.form small{color:var(--ink-muted);font-size:12px}
.hp{display:none}

/* Footer */
.footer{background:var(--olive-900);color:var(--on-dark-muted);padding:48px 0 24px}
.footer a{color:var(--on-dark-muted)}
.footer a:hover{color:var(--khaki)}
.footer .cols{display:grid;gap:28px;grid-template-columns:1fr 1fr}
@media(min-width:880px){.footer .cols{grid-template-columns:1.4fr 1fr 1fr .8fr 1fr;gap:28px}}
.footer .col{display:flex;flex-direction:column;gap:9px;font-size:14px;min-width:0}
.footer .col b{color:var(--on-dark);font-weight:700}
.footer .col--brand{grid-column:1/-1}
.topbar .wrap{justify-content:flex-end}
@media(min-width:880px){.footer .col--brand{grid-column:auto}}
.footer .tag{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--khaki)}
.footer .bottom{border-top:1px solid #3B4A36;margin-top:36px;padding-top:18px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:13px}
.skip{position:absolute;left:-999px;top:8px;background:var(--white);padding:8px 12px;border-radius:6px}
.skip:focus{left:8px;z-index:100}
.note{font-size:13px;color:var(--ink-muted)}
.article-meta{font-size:13px;color:var(--ink-muted)}

/* Binnen deze oplossing */
.linestrip__head{display:flex;gap:16px;align-items:center;margin-bottom:24px}
.linestrip__head h2{font-size:clamp(20px,2.6vw,25px)}
.linestrip__cols{display:grid;gap:24px}
@media(min-width:720px){.linestrip__cols{grid-template-columns:repeat(3,minmax(0,1fr))}}
.linestrip__cols>div{display:flex;flex-direction:column;gap:7px;font-size:15px}
.linestrip__cols b{color:var(--ink);margin-bottom:4px}
.linestrip__cols a{color:var(--ink-soft)}
.linestrip__cols a[aria-current]{color:var(--coyote-dark);font-weight:700}
.linestrip__cols a:hover{color:var(--coyote-dark)}
.docs{display:grid;gap:10px}
@media(min-width:620px){.docs{grid-template-columns:repeat(2,minmax(0,1fr))}}
.docs a{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--white);border:1px solid var(--sand-line);border-radius:10px;font-weight:700;font-size:15px;min-height:52px}
.docs a::before{content:"PDF";font-size:11px;letter-spacing:.1em;background:var(--olive-700);color:var(--khaki);padding:4px 7px;border-radius:5px;flex:0 0 auto}
.docs a:hover{border-color:var(--coyote)}

/* Stappen */
.steps-wrap{display:flex;flex-direction:column;gap:16px}
.steps{display:grid;gap:14px}
@media(min-width:720px){.steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}}
.steps--4{grid-template-columns:1fr}
@media(min-width:720px){.steps--4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1040px){.steps--4{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(min-width:880px){.steps--3{grid-template-columns:repeat(3,minmax(0,1fr))}}
.steps li{display:flex;gap:14px;align-items:flex-start;background:var(--white);border:1px solid var(--sand-line);border-radius:12px;padding:16px 18px}
.steps .num{flex:0 0 auto;width:34px;height:34px;border-radius:50%;background:var(--olive-700);color:var(--white);font-weight:800;display:flex;align-items:center;justify-content:center;font-size:15px}
.steps b{display:block;margin-bottom:4px;font-size:16px}
.steps p{font-size:14.5px;color:var(--ink-soft)}

/* Foto's met onderschrift */
.figs{display:grid;gap:20px;margin-top:16px}
@media(min-width:620px){.figs--2,.figs--3,.figs--4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:920px){.figs--3{grid-template-columns:repeat(3,minmax(0,1fr))}.figs--4{grid-template-columns:repeat(4,minmax(0,1fr))}}
.fig{margin:0;background:var(--white);border:1px solid var(--sand-line);border-radius:12px;overflow:hidden}
.fig img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;background:var(--white)}
.figs--contain .fig img{object-fit:contain;padding:14px}
.figs--small .fig img{object-fit:contain;padding:14px;max-height:200px;image-rendering:auto}
.figs--small .fig{display:flex;flex-direction:column}
.figs--tall .fig img{aspect-ratio:3/4;object-fit:contain;background:var(--sand-100);padding:10px}
.fig figcaption{padding:14px 16px 18px}
.fig b{display:block;font-size:15px;margin-bottom:4px}
.fig p{font-size:14px;color:var(--ink-soft);line-height:1.5}

/* Sluitplanvoorbeeld */
.plan{border-collapse:collapse;width:100%;font-size:14.5px;background:var(--white);border:1px solid var(--sand-line);border-radius:12px;overflow:hidden}
.plan th,.plan td{padding:11px 12px;border-bottom:1px solid var(--sand-line);text-align:center}
.plan th:first-child,.plan td:first-child{text-align:left;font-weight:700}
.plan thead th{background:var(--olive-700);color:var(--white);font-weight:700;font-size:13.5px}
.plan tbody tr:last-child td{border-bottom:0}
.plan .y{color:var(--olive-700);font-weight:900}
.plan .n{color:var(--ink-muted)}
.plan .plsub{display:block;font-size:12px;font-weight:400;color:var(--ink-muted)}

/* Schema (voorbeeldopstelling) */
.schema{background:var(--white);border:1px solid var(--sand-line);border-radius:14px;padding:18px;display:flex;flex-direction:column;gap:12px}
.schema svg{width:100%;height:auto}
.schema b{font-size:15px}
.schema p{font-size:14px;color:var(--ink-soft)}

/* Lichtbak: foto's vergroten en bladeren */
.zoomable{cursor:zoom-in}
.lb{position:fixed;inset:0;background:rgba(31,38,32,.92);z-index:200;display:flex;align-items:center;justify-content:center;padding:16px}
.lb[hidden]{display:none}
.lb figure{margin:0;max-width:min(1100px,100%);max-height:100%;display:flex;flex-direction:column;align-items:center;gap:12px}
.lb img{max-width:100%;max-height:78vh;object-fit:contain;border-radius:8px;background:#fff}
.lb svg{width:min(1100px,calc(100vw - 32px));height:auto;max-height:78vh;background:#fff;border-radius:8px;padding:12px;box-sizing:border-box}
.lb img[hidden]{display:none}
.lb figcaption{color:var(--on-dark);font-size:15px;text-align:center;max-width:70ch}
.lb figcaption b{display:block;font-size:16px;margin-bottom:2px}
.lb button{position:absolute;background:rgba(255,255,255,.12);color:#fff;border:0;width:48px;height:48px;border-radius:50%;font-size:30px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}
.lb button:hover{background:rgba(255,255,255,.25)}
.lb__close{top:16px;right:16px}
.lb__prev{left:12px;top:50%;transform:translateY(-50%)}
.lb__next{right:12px;top:50%;transform:translateY(-50%)}
.lb__prev[disabled],.lb__next[disabled]{opacity:.25;cursor:default}
@media(max-width:720px){.lb__prev,.lb__next{display:none}}
.linestrip__cols--2{grid-template-columns:1fr}
@media(min-width:720px){.linestrip__cols--2{grid-template-columns:1fr 1.3fr}}

/* Fotogroep: meerdere foto's in één blok met één onderschrift */
.fig--group .fig-grid{display:grid;gap:8px;background:#fff;padding:12px}
.fig--group .fig-grid img{width:100%;aspect-ratio:1;object-fit:contain;background:#fff;border-radius:6px}
.fig-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.fig-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.fig-grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}
.fig-grid--6{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(min-width:720px){.fig-grid--4{grid-template-columns:repeat(3,minmax(0,1fr))}.fig-grid--4.fig-grid--even{grid-template-columns:repeat(4,minmax(0,1fr))}.fig-grid--6{grid-template-columns:repeat(6,minmax(0,1fr))}}
.fig--group .fig-grid img:first-child{grid-column:1 / -1;aspect-ratio:2/1}
.fig--group{margin-top:28px}
.fig--group .fig-grid--even img:first-child{grid-column:auto;aspect-ratio:1}
.fig-cell{display:flex;flex-direction:column;gap:4px;min-width:0}
.fig-cell span{font-size:12.5px;color:var(--ink-soft);text-align:center;line-height:1.3}
.fig--group .fig-grid .fig-cell img{aspect-ratio:1}

/* Klikbare kaarten: duidelijk herkenbaar, overal dezelfde stijl */
a.card--link{background:var(--white);border:1px solid var(--sand-line);border-radius:14px;transition:border-color .15s,box-shadow .15s,transform .15s}
a.card--link:not(.card--icon):not(.card--plain):not(.card--tile){padding:14px 16px 18px}
a.card--link:not(.card--icon):not(.card--plain):not(.card--tile) img{border-radius:8px}
a.card--link:hover{border-color:var(--olive-300);box-shadow:var(--shadow);transform:translateY(-1px)}
.card .more{margin-top:auto;padding-top:4px;font-size:14px}
.card--icon .more,.card--plain .more{font-size:13.5px}
.cards--1{grid-template-columns:1fr}
.schema .legend{list-style:none;padding:0;margin:12px 0 4px;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:4px 16px;font-size:13.5px;color:var(--ink-soft)}
.schema .legend b{display:inline-flex;width:20px;height:20px;border-radius:50%;background:var(--coyote);color:#fff;font-size:11px;align-items:center;justify-content:center;margin-right:8px}
.examples .ex{display:grid;gap:24px;align-items:start;margin-top:28px}
@media(min-width:880px){.examples .ex{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}}

/* carrousel */
.fig--carousel{margin-top:28px}
.car{position:relative;background:#fff;padding:12px 12px 8px}
.car__track{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.car__track::-webkit-scrollbar{display:none}
.car__slide{flex:0 0 100%;scroll-snap-align:start;margin:0;text-align:center}
.car__slide img{width:100%;height:auto;aspect-ratio:16/9;max-height:420px;object-fit:contain;background:#fff;border-radius:6px}
.car__slide figcaption{padding:10px 8px 6px;font-size:.92rem;font-weight:600;color:var(--ink)}
.car__btn{position:absolute;top:calc(50% - 40px);width:40px;height:40px;border-radius:50%;border:1px solid var(--sand-line);background:rgba(255,255,255,.92);color:var(--ink);font-size:26px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(0,0,0,.08)}
.car__btn:hover{background:#fff;border-color:var(--ink)}
.car__prev{left:16px}.car__next{right:16px}
.car__dots{display:flex;justify-content:center;gap:8px;padding:6px 0 4px}
.car__dots button{width:9px;height:9px;border-radius:50%;border:0;padding:0;background:var(--sand-line);cursor:pointer}
.car__dots button.is-on{background:var(--ink)}
@media(min-width:720px){.car{padding:16px 16px 10px}}

/* galerij: één grote foto, de andere klein ernaast; klikken vergroot */
.fig--gallery{margin-top:28px}
.gal{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));background:#fff;padding:12px}
.gal figure{margin:0;text-align:center}
.gal img{width:100%;aspect-ratio:1;object-fit:contain;background:#fff;border-radius:6px;display:block}
.gal figcaption{font-size:.78rem;color:var(--ink-muted);padding:6px 4px 0;line-height:1.3}
.gal .gal__main{grid-column:1 / -1}
.gal .gal__main img{aspect-ratio:16/10;object-fit:cover}
.gal .gal__main figcaption{font-size:.9rem;color:var(--ink);font-weight:600;text-align:left}
@media(min-width:720px){.gal{grid-template-columns:2.2fr 1fr 1fr;padding:16px}.gal .gal__main{grid-column:1;grid-row:1 / span var(--rows,2);display:flex;flex-direction:column}.gal .gal__main img{aspect-ratio:auto;flex:1;min-height:0;height:100%}}

/* uitklapbare technische gegevens */
details.specs{border:1px solid var(--sand-line);border-radius:12px;background:var(--white);padding:0}
details.specs summary{cursor:pointer;padding:14px 18px;font-weight:600;list-style:none;display:flex;justify-content:space-between;align-items:center}
details.specs summary::-webkit-details-marker{display:none}
details.specs summary::after{content:"+";font-size:1.3rem;color:var(--ink-muted)}
details.specs[open] summary::after{content:"–"}
details.specs .table-scroll{padding:0 18px 18px}

@media(max-width:700px){.lb figure{max-width:100%;overflow-x:auto;align-items:flex-start}.lb svg{width:720px;max-width:none;max-height:none}.lb figcaption{position:sticky;left:0}}

.cmp{min-width:900px;font-size:14px}.cmp thead th{vertical-align:bottom;background:var(--white)}.cmp thead th small{display:block;font-weight:400;color:var(--ink-soft);margin-top:4px}.cmp tbody th{width:150px;white-space:nowrap}.cmp td:nth-child(3){background:#F1F4EA}
.prose--wide{max-width:none}.cmp{min-width:1100px;font-size:13.5px}.cmp tbody th{width:118px;white-space:normal}

.steps--col{grid-template-columns:1fr !important}
.prose .prose--wide{width:min(1140px,calc(100vw - 32px));max-width:none}

.cmp--2{min-width:0;font-size:15px}.cmp--2 td:nth-child(3){background:transparent}.cmp--2 tbody th{width:200px}
.schema__v{display:none}@media(max-width:719px){.schema__h{display:none}.schema__v{display:block;max-width:320px;margin:0 auto}.schema__v svg{width:100%;height:auto}}
