/* schoonmakernodig.nl – huisstijl (tokens uit het design system) */
@font-face{font-family:Manrope;font-weight:600;font-display:swap;src:url(../fonts/manrope-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:Manrope;font-weight:700;font-display:swap;src:url(../fonts/manrope-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:Manrope;font-weight:800;font-display:swap;src:url(../fonts/manrope-latin-800-normal.woff2) format("woff2")}
@font-face{font-family:Inter;font-weight:400;font-display:swap;src:url(../fonts/inter-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:Inter;font-weight:500;font-display:swap;src:url(../fonts/inter-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:Inter;font-weight:600;font-display:swap;src:url(../fonts/inter-latin-600-normal.woff2) format("woff2")}

:root{
  --groen-900:#123B2E;--groen-800:#1B4A3B;--groen-700:#2E5E4D;--groen-600:#2F7A5B;--groen-500:#3B6B57;
  --mint-200:#D5E6DA;--mint-100:#E7F1EA;--limoen:#E9F36B;
  --ink:#12251E;--ink-muted:#4A5F56;--ink-on-dark:#C8DDD2;--lijn:#DCE6DF;--lijn-zacht:#EDF2EE;
  --surface:#FAFBF7;--surface-raised:#FFFFFF;--surface-app:#F3F6F2;
  --info-bg:#E3ECF7;--info-fg:#1D3A5C;--warn-fg:#8A3B12;--warn-bg:#FBE6DA;--grijs-bg:#F1ECE8;--grijs-fg:#5C4636;
  --display:Manrope,system-ui,sans-serif;--sans:Inter,system-ui,sans-serif;
  --r-sm:16px;--r-md:24px;--r-lg:36px;--r-pill:999px;
}
.snn,.snn *{box-sizing:border-box}
body.snn-body{margin:0;background:var(--surface);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
.snn a{color:var(--groen-900)}
.snn a:hover{color:#0B261D}
.snn img{max-width:100%;height:auto}
.snn :focus-visible{outline:3px solid var(--groen-600);outline-offset:2px;border-radius:6px}
.snn-skip{position:absolute;left:-9999px;top:0;background:var(--groen-900);color:#fff;padding:12px 18px;z-index:100;border-radius:0 0 12px 0}
.snn-skip:focus{left:0}
.snn-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.snn-wrap{max-width:1240px;margin:0 auto;padding:0 24px}
.snn h1,.snn h2,.snn h3{font-family:var(--display);font-weight:800;color:inherit;margin:0;letter-spacing:-.035em}
.snn h1{font-size:clamp(40px,5.2vw,64px);line-height:1.03;letter-spacing:-.045em}
.snn h2{font-size:clamp(30px,3.6vw,44px);line-height:1.1}
.snn h3{font-size:21px;line-height:1.3;letter-spacing:-.02em;font-weight:700}
.snn p{margin:0}
.snn-lead{font-size:19px;line-height:1.6;color:var(--ink-muted);max-width:520px}
.snn-muted{color:var(--ink-muted)}
.snn-eyebrow{font-size:15px;font-weight:600;color:var(--groen-500)}
.snn-section{padding:0 0 104px}
.snn-sechead{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:36px}
.snn-link{font-weight:600;text-decoration:none;padding:10px 0;display:inline-block}

/* knoppen */
.snn-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font:inherit;font-weight:600;font-size:16px;border-radius:var(--r-pill);padding:16px 26px;text-decoration:none;border:0;cursor:pointer;line-height:1.2;transition:transform .15s ease,background-color .15s ease}
.snn-btn:hover{transform:translateY(-1px)}
.snn-btn--primary{background:var(--groen-900);color:#fff!important}
.snn-btn--primary:hover{background:#0B261D}
.snn-btn--secondary{background:#fff;color:var(--ink)!important;box-shadow:inset 0 0 0 1px var(--lijn)}
.snn-btn--lime{background:var(--limoen);color:var(--groen-900)!important;font-weight:700}
.snn-btn--sm{padding:10px 16px;font-size:14px}
.snn-btn--block{width:100%}

/* header */
.snn-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 32px;padding:24px 0 0}
.snn-header__logo img{height:34px;width:auto;display:block}
.snn-nav{display:flex;flex-wrap:wrap;gap:4px 32px;font-weight:500;font-size:15px}
.snn-nav a{text-decoration:none;padding:10px 0;color:var(--ink)}
.snn-nav a[aria-current="page"]{font-weight:700}

/* hero */
.snn-hero{display:flex;flex-wrap:wrap;gap:56px;align-items:center;padding:56px 0 104px}
.snn-hero__text{flex:1 1 500px;min-width:0;display:flex;flex-direction:column;gap:28px}
.snn-hero__img{flex:1 1 440px;min-width:0}
.snn-photo{display:block;width:100%;object-fit:cover;border-radius:var(--r-lg);background:var(--mint-200)}
.snn-search{background:#fff;border-radius:var(--r-pill);padding:8px;box-shadow:0 0 0 1px var(--lijn),0 16px 40px rgba(18,59,46,.07);display:flex;flex-wrap:wrap;gap:4px;max-width:600px}
.snn-search__field{flex:1 1 170px;display:flex;flex-direction:column;padding:8px 20px}
.snn-search__field+.snn-search__field{border-left:1px solid var(--lijn)}
.snn-search label{font-size:12px;font-weight:600;color:var(--ink-muted)}
.snn-search select,.snn-search input{border:0;font:inherit;font-size:16px;font-weight:500;color:var(--ink);background:transparent;padding:2px 0;outline:none;width:100%}
@media (max-width:640px){.snn-search{border-radius:28px}.snn-search__field+.snn-search__field{border-left:0;border-top:1px solid var(--lijn)}.snn-search .snn-btn{width:100%}}

/* kaarten */
.snn-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}
.snn-grid--3{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:44px 24px}
.snn-card{text-decoration:none;color:var(--ink)!important;display:flex;flex-direction:column;gap:14px}
.snn-card img{display:block;width:100%;height:300px;object-fit:cover;border-radius:var(--r-md);background:var(--mint-200);transition:transform .25s ease}
.snn-card:hover img{transform:scale(1.015)}
.snn-card__title{font-family:var(--display);font-weight:700;font-size:20px;letter-spacing:-.02em}
.snn-card__meta{font-size:13px;font-weight:600;color:var(--groen-500)}
.snn-grid--3 .snn-card img{height:230px}

/* donker blok */
.snn-dark{background:var(--groen-900);color:#fff;border-radius:var(--r-lg);padding:64px 56px;display:flex;flex-direction:column;gap:44px}
.snn-dark p{color:var(--ink-on-dark)}
.snn-steps{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:40px}
.snn-steps li{display:flex;flex-direction:column;gap:10px;border-top:1px solid var(--groen-700);padding-top:22px}
.snn-steps span{font-family:var(--display);font-weight:800;color:var(--limoen)}
@media (max-width:640px){.snn-dark{padding:40px 24px}}

/* chips */
.snn-chips{display:flex;flex-wrap:wrap;gap:10px}
.snn-chip{background:#fff;border:1px solid var(--lijn);border-radius:var(--r-pill);padding:12px 20px;font-weight:500;font-size:15px;text-decoration:none;color:var(--ink)!important}
.snn-chip[aria-current="page"]{background:var(--groen-900);color:#fff!important;border-color:var(--groen-900);font-weight:600}

/* cta */
.snn-cta{background:var(--mint-100);border-radius:var(--r-lg);padding:56px;display:flex;flex-wrap:wrap;gap:32px;align-items:center;justify-content:space-between}
.snn-cta>div{flex:1 1 460px;min-width:0;display:flex;flex-direction:column;gap:12px}
@media (max-width:640px){.snn-cta{padding:36px 24px}}

/* footer */
.snn-footer{background:var(--groen-900);color:var(--ink-on-dark)}
.snn-footer a{color:var(--ink-on-dark)!important}
.snn-footer__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:32px;padding:64px 0 32px}
.snn-footer__col{display:flex;flex-direction:column;gap:10px;font-size:15px}
.snn-footer__col strong{color:#fff}
.snn-footer__bottom{border-top:1px solid var(--groen-700);padding:20px 0 32px;font-size:14px}

/* landingspagina + formulieren */
.snn-crumbs{font-size:14px;color:var(--ink-muted);display:flex;gap:8px;flex-wrap:wrap;margin-bottom:28px}
.snn-crumbs a{color:var(--ink-muted)}
.snn-split{display:flex;flex-wrap:wrap;gap:48px;align-items:flex-start}
.snn-split__main{flex:1 1 520px;min-width:0;display:flex;flex-direction:column;gap:24px}
.snn-split__side{flex:0 1 460px;min-width:0}
.snn-checks{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:12px;font-weight:500}
.snn-checks li{display:flex;gap:12px;align-items:center}
.snn-checks li::before{content:"";flex:0 0 26px;height:26px;border-radius:50%;background:var(--limoen) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23123B2E' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l4 4 10-10'/%3E%3C/svg%3E") center/14px no-repeat}
.snn-formcard{background:#fff;border-radius:32px;padding:32px;box-shadow:0 0 0 1px var(--lijn),0 24px 60px rgba(18,59,46,.10);display:flex;flex-direction:column;gap:18px}
.snn-progress{height:6px;border-radius:var(--r-pill);background:var(--mint-100)}
.snn-progress div{height:6px;border-radius:var(--r-pill);background:var(--groen-900);width:50%;transition:width .3s ease}
.snn-field{display:flex;flex-direction:column;gap:6px}
.snn-field label,.snn-legend{font-size:14px;font-weight:600}
.snn-input,.snn-field input,.snn-field select,.snn-field textarea{font:inherit;font-size:16px;padding:14px 16px;border-radius:var(--r-sm);border:1px solid var(--lijn);background:var(--surface);color:var(--ink);width:100%}
.snn-field textarea{resize:vertical;min-height:96px}
.snn-row{display:flex;gap:10px;flex-wrap:wrap}
.snn-row>*{flex:1 1 140px}
.snn-pills{display:flex;flex-wrap:wrap;gap:8px;border:0;padding:0;margin:0}
.snn-pill{position:relative;display:flex;align-items:center;gap:8px;padding:11px 16px;border-radius:var(--r-pill);border:1px solid var(--lijn);font-size:15px;cursor:pointer;background:#fff}
.snn-pill input{accent-color:var(--groen-900)}
.snn-pill:has(input:checked){border:2px solid var(--groen-900);background:var(--mint-100);font-weight:600;padding:10px 15px}
.snn-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.snn-note{font-size:13px;line-height:1.5;color:var(--ink-muted)}
.snn-alert{border-radius:var(--r-sm);padding:16px 18px;font-weight:500}
.snn-alert--ok{background:var(--mint-100);color:var(--groen-900)}
.snn-alert--err{background:var(--warn-bg);color:var(--warn-fg)}
.snn-step[hidden]{display:none}
.snn-prose{font-size:17px;line-height:1.75;color:#2D4238;display:flex;flex-direction:column;gap:18px}
.snn-prose h2{font-size:30px;line-height:1.2;color:var(--ink);margin-top:16px}
.snn-prose h3{color:var(--ink);margin-top:8px}
.snn-prose ul{margin:0;padding-left:22px}
.snn-box{background:var(--surface);border-radius:28px;padding:28px;display:flex;flex-direction:column;gap:14px}
.snn-faq{display:flex;flex-direction:column;gap:10px}
.snn-faq details{background:#fff;border-radius:22px;padding:22px 26px;box-shadow:0 0 0 1px var(--lijn)}
.snn-faq summary{font-weight:600;font-size:18px;cursor:pointer}
.snn-faq details p{margin-top:12px;color:var(--ink-muted)}
.snn-white{background:#fff}

/* blog */
.snn-feature{text-decoration:none;color:var(--ink)!important;display:flex;flex-wrap:wrap;gap:40px;align-items:center;margin-bottom:72px}
.snn-feature img{flex:1 1 520px;min-width:0;width:100%;height:420px;object-fit:cover;border-radius:var(--r-lg)}
.snn-feature>div{flex:1 1 380px;min-width:0;display:flex;flex-direction:column;gap:16px}
.snn-article{max-width:760px;margin:0 auto}
.snn-tip{background:var(--mint-100);border-radius:var(--r-md);padding:24px 28px}
.snn-pagination{display:flex;justify-content:center;gap:8px;margin-top:56px}
.snn-pagination .page-numbers{padding:12px 18px;border-radius:var(--r-pill);background:#fff;box-shadow:inset 0 0 0 1px var(--lijn);text-decoration:none}
.snn-pagination .current{background:var(--groen-900);color:#fff}

/* prijskaart */
.snn-price{background:#fff;color:var(--ink);border-radius:var(--r-lg);padding:36px;display:flex;flex-direction:column;gap:20px}
.snn-price__amount{font-family:var(--display);font-weight:800;font-size:64px;letter-spacing:-.04em;line-height:1}

/* dashboard */
.snn-app{background:var(--surface-app);min-height:100vh;display:flex;flex-wrap:wrap;gap:16px;padding:16px}
.snn-side{flex:1 1 240px;max-width:260px;background:#fff;border-radius:28px;padding:22px 16px;display:flex;flex-direction:column;gap:6px}
.snn-side--dark{background:var(--groen-900);color:#fff}
.snn-side__nav{display:flex;flex-direction:column;gap:4px}
.snn-side__nav a{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:16px;text-decoration:none;font-weight:500;font-size:15px;color:var(--ink)}
.snn-side__nav a[aria-current="page"]{background:var(--groen-900);color:#fff;font-weight:600}
.snn-side--dark .snn-side__nav a{color:#fff}
.snn-side--dark .snn-side__nav a[aria-current="page"]{background:var(--groen-800)}
.snn-badge{margin-left:auto;background:var(--limoen);color:var(--groen-900);border-radius:var(--r-pill);padding:2px 9px;font-size:12px;font-weight:700}
.snn-main{flex:999 1 560px;min-width:0;display:flex;flex-direction:column;gap:16px}
.snn-main__head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:8px 8px 4px}
.snn-main__head h1{font-size:32px;letter-spacing:-.03em}
.snn-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px}
.snn-kpi{background:#fff;border-radius:var(--r-md);padding:22px;display:flex;flex-direction:column;gap:6px}
.snn-kpi--dark{background:var(--groen-900);color:#fff}
.snn-kpi__label{font-size:14px;color:var(--ink-muted)}
.snn-kpi--dark .snn-kpi__label{color:var(--ink-on-dark)}
.snn-kpi__value{font-family:var(--display);font-weight:800;font-size:36px;letter-spacing:-.03em;line-height:1.1}
.snn-panel{background:#fff;border-radius:28px;padding:24px}
.snn-panel h2{font-size:22px;letter-spacing:-.02em}
.snn-panels{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-start}
.snn-panels>.snn-panel:first-child{flex:999 1 520px;min-width:0}
.snn-panels>.snn-panel:last-child{flex:1 1 320px;min-width:0}
.snn-tablewrap{overflow-x:auto}
.snn-table{width:100%;border-collapse:collapse;font-size:15px;min-width:600px}
.snn-table th{text-align:left;color:var(--ink-muted);font-size:13px;text-transform:uppercase;letter-spacing:.05em;font-weight:600;padding:10px 12px}
.snn-table td{padding:13px 12px;border-top:1px solid var(--lijn-zacht);vertical-align:middle}
.snn-table tr.is-selected td{background:#F7FAE0}
.snn-table a{text-decoration:none;font-weight:600}
.snn-status{display:inline-block;border-radius:var(--r-pill);padding:5px 12px;font-size:13px;font-weight:600;white-space:nowrap}
.snn-status--nieuw{background:var(--limoen);color:var(--ink)}
.snn-status--gebeld,.snn-status--active,.snn-status--paid{background:var(--mint-100);color:var(--groen-900)}
.snn-status--offerte,.snn-status--credited,.snn-status--pending{background:var(--info-bg);color:var(--info-fg)}
.snn-status--gewonnen{background:var(--groen-900);color:#fff}
.snn-status--verloren,.snn-status--paused,.snn-status--cancelled{background:var(--grijs-bg);color:var(--grijs-fg)}
.snn-status--payment_issue,.snn-status--failed{background:var(--warn-bg);color:var(--warn-fg)}
.snn-status--review,.snn-status--pending_payment,.snn-status--open{background:var(--limoen);color:var(--ink)}
.snn-dl{background:var(--surface-app);border-radius:20px;padding:16px;display:flex;flex-direction:column;gap:10px;font-size:15px}
.snn-dl div{display:flex;justify-content:space-between;gap:12px}
.snn-dl dt{color:var(--ink-muted)}
.snn-dl dd{margin:0;font-weight:600;text-align:right;word-break:break-word}
.snn-linkbtn{font:inherit;background:none;border:0;color:var(--warn-fg);text-decoration:underline;cursor:pointer;padding:10px}
.snn-areas{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}
.snn-area{border:1px solid var(--lijn);border-radius:22px;padding:18px;display:flex;flex-direction:column;gap:10px}
.snn-area--new{border:2px dashed #B9CFC1;background:var(--surface)}
.snn-bar{height:8px;border-radius:var(--r-pill);background:var(--mint-100)}
.snn-bar div{height:8px;border-radius:var(--r-pill);background:var(--groen-900)}
.snn-login{max-width:440px;margin:80px auto;background:#fff;border-radius:32px;padding:36px;box-shadow:0 0 0 1px var(--lijn)}
.snn-login input[type=text],.snn-login input[type=password]{font:inherit;width:100%;padding:14px 16px;border-radius:var(--r-sm);border:1px solid var(--lijn);background:var(--surface)}
.snn-login input[type=submit]{font:inherit;font-weight:600;background:var(--groen-900);color:#fff;border:0;border-radius:var(--r-pill);padding:15px 26px;cursor:pointer;width:100%}
.snn-login label{font-size:14px;font-weight:600;display:block;margin-bottom:6px}
.snn-login p{margin:0 0 16px}

/* factuur */
.snn-invoice{max-width:800px;margin:40px auto;background:#fff;padding:48px;border-radius:12px}
@media print{.snn-noprint{display:none!important}.snn-invoice{margin:0;padding:0}}

@media (prefers-reduced-motion:reduce){.snn *{transition:none!important;animation:none!important}}

/* ---------- Divi 5-secties in de huisstijl ---------- */
.et_pb_section.snn-sec{padding:0 0 104px!important;background-color:transparent!important}
.et_pb_section.snn-sec--hero{padding:56px 0 104px!important}
.et_pb_section.snn-sec--top{padding:64px 0 104px!important}
.et_pb_section.snn-sec--wit{background-color:#fff!important;padding:96px 0!important;margin-bottom:96px}
.snn-sec>.et_pb_row,.snn-sec .et_pb_row{width:100%!important;max-width:1240px!important;padding:0 24px!important;margin:0 auto!important}
.snn-sec .et_pb_row+.et_pb_row{margin-top:36px!important}
.snn-sec .et_pb_module{margin-bottom:0!important}
.snn-sec .et_pb_column{margin-bottom:0}
.snn-sec .et_flex_row{gap:56px!important;align-items:center}
.snn-sec.snn-gap-sm .et_flex_row{gap:20px!important;align-items:stretch}
.snn-sec .et_flex_column{display:flex;flex-direction:column;gap:24px}
.snn-sec .et_pb_text_inner>*+*{margin-top:20px}
.snn-sec .et_pb_text_inner p:empty{display:none}
.snn-sec .et_pb_image img{display:block;width:100%;object-fit:cover;border-radius:var(--r-lg);background:var(--mint-200)}
.snn-sec .et_pb_image_wrap{display:block;width:100%}
.snn-img-560 .et_pb_image img{height:560px}
.snn-img-300 img{height:300px!important;border-radius:var(--r-md)!important}
.snn-img-520 img{height:520px!important}
.snn-img-340 img{height:340px!important}
.snn-card-col .et_pb_text_inner .snn-card__title{margin-top:0}
@media (max-width:980px){
  .snn-sec .et_flex_row{flex-wrap:wrap!important;gap:32px!important}
  .snn-sec .et_flex_column{flex:1 1 100%!important;max-width:100%!important;width:100%!important}
  .snn-sec.snn-cols-2-mob .et_flex_column{flex:1 1 calc(50% - 16px)!important;max-width:calc(50% - 16px)!important}
  .snn-img-560 .et_pb_image img,.snn-img-520 img{height:380px!important}
}
/* Divi-standaardheader/-footer niet tonen zodra de Theme Builder-variant er is */
.snn-tb .et-l--header .et_pb_section,.snn-tb .et-l--footer .et_pb_section{padding:0!important}

/* ---------- Divi-correcties ---------- */
body.snn{font-family:var(--sans);color:var(--ink);background:var(--surface)}
body.snn #page-container,body.snn #main-content,body.snn .et_pb_section{background-color:transparent}
body.snn #main-content{background:var(--surface)}
body.snn .et_pb_text,body.snn .et_pb_text_inner,body.snn p{font-family:var(--sans);color:inherit;font-size:16px;line-height:1.6}
body.snn .et_pb_text_inner{color:var(--ink)}
body.snn h1,body.snn h2,body.snn h3,body.snn h4{font-family:var(--display);color:var(--ink);padding-bottom:0}
body.snn .snn-dark,body.snn .snn-dark h2,body.snn .snn-dark h3{color:#fff}
body.snn .snn-dark p{color:var(--ink-on-dark)}
body.snn .snn-lead{font-size:19px;color:var(--ink-muted)}
body.snn .snn-muted{color:var(--ink-muted)}
body.snn .et_pb_text_inner .snn-card__title{font-family:var(--display);font-weight:700;font-size:20px}
.snn-img-560 img{height:560px!important}
.snn-img-300 img{height:300px!important;border-radius:var(--r-md)!important}
.snn-sec .et_pb_image{width:100%}
body.snn .snn-steps h3{font-size:21px}
body.snn .et_pb_text ol,body.snn .et_pb_text ul.snn-checks{padding-left:0}
body.snn .snn-steps li{list-style:none}
@media (max-width:980px){.snn-img-560 img,.snn-img-520 img{height:380px!important}}

/* ---------- Theme Builder header/footer + kaarten ---------- */
.et_pb_section.snn-sec--header{padding:0!important;background:var(--surface)!important}
.snn-sec--header .snn-header{padding:24px 0}
.snn-sec--header .snn-header__logo img{height:34px;width:auto}
body.snn .snn-nav a{color:var(--ink);font-size:15px}
.et_pb_section.snn-sec--footer{padding:0!important;background:var(--groen-900)!important}
.snn-sec--footer .snn-footer{background:transparent}
.snn-sec--footer .snn-footer__grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}
body.snn .snn-footer,body.snn .snn-footer span,body.snn .snn-footer a{color:var(--ink-on-dark)!important;font-size:15px}
body.snn .snn-footer strong{color:#fff}
.snn-step-card{background:#fff;border-radius:28px;padding:30px;display:flex;flex-direction:column;gap:14px;box-shadow:0 1px 0 var(--lijn);height:100%}
.snn-num{font-family:var(--display);font-weight:800;font-size:30px;color:var(--groen-500)}
.snn-sec .et_pb_column{align-self:stretch}
body.snn .snn-btn{line-height:1.2}
body.snn .snn-chip{font-size:15px}

/* ---------- Fixes ronde 2 ---------- */
.snn-step[hidden]{display:none!important}
.snn-steps br{display:none}
.snn-steps li>*{margin:0!important}
.snn-sec .et_flex_row>.et_flex_column{flex-grow:1}
.snn-grid--3{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}

/* ===== v1.2: header-cta, mobiel menu ===== */
.snn-header__cta{display:flex;align-items:center;gap:20px}
.snn-header__login{font-weight:600;font-size:15px;text-decoration:none;color:var(--ink)!important;padding:10px 0}
.snn-header__login:hover{text-decoration:underline}
.snn-header .snn-btn--sm{padding:13px 22px;font-size:15px}
.snn-mnav{display:none;position:relative}
.snn-mnav summary{list-style:none;cursor:pointer;width:46px;height:46px;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 1px var(--lijn);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}
.snn-mnav summary::-webkit-details-marker{display:none}
.snn-mnav summary span{display:block;width:18px;height:2px;border-radius:2px;background:var(--ink)}
.snn-mnav nav{position:absolute;right:0;top:56px;z-index:60;background:#fff;border-radius:24px;box-shadow:0 0 0 1px var(--lijn),0 24px 60px rgba(18,59,46,.16);padding:16px;display:flex;flex-direction:column;gap:4px;min-width:240px}
.snn-mnav nav a{padding:12px 14px;border-radius:14px;text-decoration:none;color:var(--ink)!important;font-weight:500}
.snn-mnav nav a.snn-btn{color:#fff!important;margin-top:8px;justify-content:center}
@media (max-width:900px){.snn-header .snn-nav,.snn-header__cta{display:none}.snn-mnav{display:block}.snn-header{flex-wrap:nowrap}}

/* ===== formulier: stappen, autocomplete ===== */
.snn-step{display:flex;flex-direction:column;gap:16px}
.snn-row--ac>*{flex:1 1 200px}
.snn-check{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.5}
.snn-check input{margin-top:3px;width:18px;height:18px;accent-color:var(--groen-900)}
.snn-ac{position:relative}
.snn-ac__list{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:80;margin:0;padding:6px;list-style:none;background:#fff;border-radius:18px;box-shadow:0 0 0 1px var(--lijn),0 20px 50px rgba(18,59,46,.16);max-height:300px;overflow:auto}
.snn-ac__list li{padding:10px 12px;border-radius:12px;cursor:pointer;display:flex;justify-content:space-between;gap:12px;font-size:15px;color:var(--ink)}
.snn-ac__list li small{color:var(--ink-muted);font-size:12px;white-space:nowrap}
.snn-ac__list li[aria-selected="true"],.snn-ac__list li:hover{background:var(--mint-100)}
.snn-ac__list li mark{background:none;color:inherit;font-weight:700}
.snn-ac__empty{color:var(--ink-muted);cursor:default!important}
.snn-search .snn-field{gap:2px}
.snn-search .snn-field label{font-size:12px;font-weight:600;color:var(--ink-muted)}
.snn-search .snn-field input{border:0;padding:2px 0;background:transparent;font-weight:500;border-radius:0}
.snn-search .snn-field input:focus{outline:none}
.snn-search .snn-ac__list{left:-20px;right:-20px;top:calc(100% + 16px)}

/* ===== pop-up ===== */
.snn-modal{position:fixed;inset:0;z-index:9999;display:flex;align-items:flex-start;justify-content:center;padding:4vh 16px;overflow:auto}
.snn-modal[hidden]{display:none!important}
.snn-modal__backdrop{position:fixed;inset:0;background:rgba(10,30,23,.55);backdrop-filter:blur(3px)}
.snn-modal__box{position:relative;width:100%;max-width:640px;margin:auto 0;animation:snnIn .22s ease-out}
.snn-modal__box .snn-formcard{box-shadow:0 30px 80px rgba(0,0,0,.25)}
.snn-modal__x{position:absolute;right:16px;top:16px;z-index:2;width:40px;height:40px;border-radius:50%;border:0;background:var(--surface-app);font-size:24px;line-height:1;cursor:pointer;color:var(--ink)}
.snn-modal__x:hover{background:var(--mint-100)}
.snn-modal .snn-formcard>div:first-child{padding-right:48px}
body.snn-modal-open{overflow:hidden}
@keyframes snnIn{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.snn-modal__box{animation:none}}

/* ===== cookiebanner ===== */
.snn-consent{position:fixed;left:16px;right:16px;bottom:16px;z-index:9998;display:flex;justify-content:center;pointer-events:none}
.snn-consent[hidden]{display:none!important}
.snn-consent__box{pointer-events:auto;max-width:720px;width:100%;background:#fff;border-radius:28px;padding:24px;box-shadow:0 0 0 1px var(--lijn),0 24px 70px rgba(18,59,46,.22);display:flex;flex-direction:column;gap:14px;font-family:var(--sans);color:var(--ink)}
.snn-consent h2{font-size:20px!important;letter-spacing:-.02em}
.snn-consent p{font-size:15px;line-height:1.55;color:var(--ink-muted)}
.snn-consent__btns{display:flex;flex-wrap:wrap;gap:8px}
.snn-consent__btns .snn-btn{flex:1 1 150px}
.snn-consent__prefs{display:flex;flex-direction:column;gap:10px}
.snn-consent__opt{display:flex;gap:12px;align-items:flex-start;font-size:14px;line-height:1.45;background:var(--surface-app);border-radius:16px;padding:12px 14px}
.snn-consent__opt input{margin-top:3px;width:18px;height:18px;accent-color:var(--groen-900)}

/* ===== footer zonder losse balk ===== */
.snn-footer__bottom{display:none!important}
.snn-footer__grid{padding:72px 0 64px}
.snn-footer__brand{gap:16px!important}
.snn-footer__brand img{height:30px;width:auto;align-self:flex-start}
.snn-footer__legal{font-size:13px;opacity:.85}
.snn-footer-wrap .snn-footer{padding:0 24px}
.snn-footer-wrap .snn-footer__grid{max-width:1240px;margin:0 auto}

/* ===== FAQ en tekstpagina's ===== */
.snn-faq{margin-top:48px;display:flex;flex-direction:column;gap:10px}
.snn-faq h2{margin-bottom:12px}
.snn-faq details{background:#fff;border-radius:20px;box-shadow:0 0 0 1px var(--lijn);padding:0}
.snn-faq summary{cursor:pointer;list-style:none;padding:18px 52px 18px 22px;font-weight:600;font-size:17px;position:relative}
.snn-faq summary::-webkit-details-marker{display:none}
.snn-faq summary::after{content:"+";position:absolute;right:22px;top:50%;transform:translateY(-50%);font-size:24px;font-weight:400;color:var(--groen-600)}
.snn-faq details[open] summary::after{content:"–"}
.snn-faq details p{padding:0 22px 20px;color:var(--ink-muted)}
.snn-legal{max-width:820px}
.snn-legal h2{font-size:26px!important;margin:36px 0 12px!important}
.snn-legal h3{font-size:19px!important;margin:24px 0 8px!important}
.snn-legal ul,.snn-legal ol{padding-left:22px}
.snn-legal li{margin-bottom:6px}
.snn-legal mark{background:var(--warn-bg);color:var(--warn-fg);padding:0 4px;border-radius:4px}

/* ===== rapportage ===== */
.snn-report{display:flex;flex-direction:column;gap:18px}
.snn-chip.is-active{background:var(--groen-900);color:#fff!important;border-color:var(--groen-900)}
.snn-report .snn-chip{padding:9px 16px;font-size:14px}
.snn-chart{width:100%;height:auto;display:block}
.snn-chart rect{fill:var(--groen-600)}
.snn-chart rect:hover{fill:var(--groen-900)}
.snn-chart text{font:500 12px var(--sans);fill:var(--ink-muted)}
.snn-chart text.v{fill:var(--ink);font-weight:700}
.snn-report__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.snn-rbars{display:flex;flex-direction:column;gap:10px}
.snn-rbar{display:grid;grid-template-columns:minmax(90px,1.2fr) 2fr 36px;gap:10px;align-items:center;font-size:14px}
.snn-rbar__track{height:10px;background:var(--surface-app);border-radius:99px;overflow:hidden}
.snn-rbar__track span{display:block;height:100%;background:var(--groen-600);border-radius:99px}
.snn-rbar strong{text-align:right}
