/*
Theme Name: Verzeker Je Garage 1.6.10
Theme URI: https://verzeker-je-garage.nl
Author: Candor Verzekeringen
Description: WordPress-thema op basis van de goedgekeurde Verzeker Je Garage Sites-bron.
Version: 1.6.10
Requires at least: 6.5
Requires PHP: 7.2
Text Domain: verzeker-je-garage
*/

:root {
  --font-geist-sans: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  --ink: #353d51;
  --muted: #58616f;
  --petrol: #238f91;
  --petrol-dark: #353d51;
  --turquoise: #279c9d;
  --copper: #238f91;
  --copper-dark: #18777a;
  --soft: #f6f8f9;
  --tint: #eaf5f5;
  --line: #dce3e6;
  --white: #ffffff;
  --success: #217a55;
  --warning: #a35f00;
  --danger: #b42318;
  --content-width: 1240px;
  --reading-width: 760px;
  --radius-button: 8px;
  --radius-card: 14px;
  --shadow-card: 0 12px 30px rgba(53, 61, 81, .07);
  --section-space: clamp(72px, 7vw, 104px);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--white);
  color: var(--ink);
  font-family: var(--font-geist-sans), Arial, sans-serif;
  font-size: 16px;
  line-height: 1.6;
}
a { color: inherit; text-decoration: none; }
button, input, textarea, select { font: inherit; }
:focus-visible { outline: 3px solid #39b9b1; outline-offset: 3px; }

.site-header {
  position: sticky;
  inset-block-start: 0;
  z-index: 50;
  min-height: 84px;
  background: rgba(255,255,255,.96);
  border-bottom: 1px solid rgba(53,61,81,.12);
  backdrop-filter: blur(14px);
}
.nav-shell {
  position: relative;
  width: min(var(--content-width), calc(100% - 48px));
  min-height: 84px;
  margin: auto;
  display: flex;
  align-items: center;
  gap: 28px;
}
.brand { display: inline-flex; flex: 0 0 auto; align-items: center; white-space: nowrap; }
.brand img { display: block; width: 260px; max-height: 58px; height: auto; object-fit: contain; }
.desktop-nav { display: flex; align-items: center; gap: 19px; margin-left: auto; font-size: 13px; font-weight: 700; white-space: nowrap; }
.desktop-nav a { flex: 0 0 auto; }
.desktop-nav a, .phone-link, .whatsapp-link { transition: color .18s ease; }
.desktop-nav a:hover, .phone-link:hover, .whatsapp-link:hover { color: var(--petrol); }
.nav-actions { display: flex; flex: 0 0 auto; align-items: center; gap: 15px; padding-left: 18px; border-left: 1px solid var(--line); font-size: 13px; font-weight: 750; white-space: nowrap; }
.phone-link { display: inline-flex; align-items: center; gap: 7px; }
.phone-link span { color: var(--petrol); font-size: 15px; }
.whatsapp-link { color: var(--petrol); }
.mobile-menu { display: none; }

.button {
  min-height: 54px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 13px 24px;
  border: 1px solid transparent;
  border-radius: var(--radius-button);
  font-weight: 750;
  line-height: 1.2;
  transition: transform .18s ease, background .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.button:hover { transform: translateY(-2px); box-shadow: 0 8px 20px rgba(53,61,81,.12); }
.button-small { min-height: 44px; padding: 10px 18px; }
.button-primary { color: white; background: var(--copper); }
.button-primary:hover { background: var(--copper-dark); }
.button-secondary { color: var(--petrol-dark); background: white; border-color: var(--petrol); }
.button-secondary:hover { background: var(--tint); }
.button-light { color: var(--petrol-dark); background: white; }
.button-outline-light { color: white; border-color: rgba(255,255,255,.6); }

.direct-bar {
  min-height: 54px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 34px;
  padding: 10px 28px;
  color: white;
  background: var(--petrol-dark);
  font-size: 14px;
}
.direct-bar > div { display: flex; align-items: center; gap: 12px; }
.direct-bar span { color: #98ded8; font-weight: 800; }
.direct-bar strong { font-weight: 650; }
.direct-bar > a { color: white; font-weight: 800; text-decoration: underline; text-underline-offset: 4px; }

.hero { min-height: 650px; display: grid; grid-template-columns: minmax(0, 49%) minmax(0, 51%); overflow: hidden; background: var(--soft); }
.hero-copy { position: relative; z-index: 2; padding: clamp(62px, 7vw, 105px) clamp(42px, 6vw, 98px) 64px max(32px, calc((100vw - 1370px) / 2)); background: linear-gradient(90deg, #fff 0%, #fff 88%, rgba(255,255,255,.94) 100%); }
.eyebrow { margin: 0 0 14px; color: var(--petrol); font-size: 13px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.eyebrow-light { color: #8ed8d2; }
h1, h2, h3, p { margin-top: 0; }
h1 { max-width: 690px; margin-bottom: 24px; font-size: clamp(43px, 4.6vw, 66px); line-height: 1.06; letter-spacing: -.045em; font-weight: 780; }
h2 { margin-bottom: 20px; font-size: clamp(32px, 3.4vw, 48px); line-height: 1.12; letter-spacing: -.035em; }
h3 { line-height: 1.25; letter-spacing: -.02em; }
.hero-intro { max-width: 650px; margin-bottom: 29px; color: #3e494c; font-size: clamp(17px, 1.5vw, 20px); line-height: 1.65; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 14px; }
.trust-row { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; margin-top: 42px; color: #273234; font-size: 13px; line-height: 1.35; }
.trust-row span { display: flex; align-items: center; gap: 10px; padding-right: 15px; }
.trust-row span + span { padding-left: 15px; border-left: 1px solid var(--line); }
.trust-row b { width: 34px; height: 34px; flex: 0 0 34px; display: grid; place-items: center; border-radius: 50%; color: white; background: var(--petrol); font-size: 11px; }
.hero-image { position: relative; min-height: 650px; background: linear-gradient(125deg, rgba(13,93,97,.08), transparent 40%), url("assets/hero-garage-production.webp") center / cover no-repeat, #d7dfde; }
.hero-image::before { content: ""; position: absolute; inset: 0 auto 0 -86px; width: 180px; background: white; border-radius: 0 54% 54% 0; }
.hero-shield { position: absolute; left: -16px; bottom: -90px; width: 210px; height: 330px; border-radius: 52% 52% 42% 42%; background: linear-gradient(140deg, rgba(13,93,97,.92), rgba(44,154,154,.52)); transform: rotate(-27deg); }

.section { padding: var(--section-space) max(28px, calc((100vw - var(--content-width)) / 2)); }
.section-tint { background: linear-gradient(180deg, #f4faf9, #edf6f5); }
.section-soft { background: var(--soft); }
.section-dark { color: white; background: #12393c; }
.section-heading { max-width: 730px; margin-bottom: 48px; }
.section-heading.centered { margin-inline: auto; text-align: center; }
.section-heading p, .split-heading > p, .faq-layout > div > p, .why-grid > div > p { color: var(--muted); }
.split-heading { display: grid; grid-template-columns: 1fr .9fr; gap: 80px; align-items: end; margin-bottom: 48px; }
.split-heading h2 { margin-bottom: 0; }
.split-heading-light > p { color: #c8dddd; }
.choice-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.choice-card { min-height: 245px; padding: 25px; background: white; border: 1px solid var(--line); border-radius: var(--radius-card); box-shadow: var(--shadow-card); transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease; }
.choice-card:hover { transform: translateY(-4px); border-color: var(--turquoise); box-shadow: 0 18px 40px rgba(13,93,97,.11); }
.card-number { color: var(--turquoise); font-size: 12px; font-weight: 800; letter-spacing: .12em; }
.choice-card h3 { margin: 35px 0 10px; font-size: 20px; }
.choice-card p { color: var(--muted); font-size: 14px; }
.card-link, .text-link { color: var(--petrol); font-size: 14px; font-weight: 750; }
.choice-card:first-child { color: white; background: var(--petrol-dark); border-color: var(--petrol-dark); }
.choice-card:first-child .card-number, .choice-card:first-child .card-link { color: #9be1db; }
.choice-card:first-child p { color: #d3e6e4; }
.choice-card:first-child:hover { border-color: var(--turquoise); box-shadow: 0 18px 40px rgba(7,72,75,.22); }

.risk-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--line); border: 1px solid var(--line); }
.risk-grid article { min-height: 250px; padding: 30px; background: white; }
.risk-grid article > span { color: var(--copper); font-size: 12px; font-weight: 800; }
.risk-grid h3 { margin: 58px 0 10px; font-size: 20px; }
.risk-grid p { margin-bottom: 0; color: var(--muted); font-size: 14px; }
.center-action { margin-top: 42px; text-align: center; }
.coverage-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.coverage-card { min-height: 170px; padding: 26px; border: 1px solid rgba(255,255,255,.16); border-radius: 12px; background: rgba(255,255,255,.04); }
.coverage-card > span { float: right; color: #8ed8d2; font-size: 12px; font-weight: 800; }
.coverage-card h3 { margin: 29px 0 8px; font-size: 20px; }
.coverage-card p { margin: 0; color: #c8dddd; font-size: 14px; }
.company-grid { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.company-grid a { display: flex; justify-content: space-between; align-items: center; min-height: 92px; padding: 22px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); font-weight: 700; transition: color .18s ease, background .18s ease; }
.company-grid a:hover { color: var(--petrol); background: var(--tint); }
.knowledge-home { background: #fff; }
.knowledge-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.knowledge-grid > a {
  min-height: 310px;
  display: flex;
  flex-direction: column;
  padding: 30px;
  background: var(--soft);
  border: 1px solid #ece8e2;
  border-radius: var(--radius-card);
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.knowledge-grid > a:hover { transform: translateY(-4px); border-color: var(--turquoise); box-shadow: 0 18px 45px rgba(13,93,97,.09); }
.knowledge-grid span { color: var(--turquoise); font-size: 11px; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }
.knowledge-grid h3 { margin: 48px 0 13px; font-size: 24px; }
.knowledge-grid p { color: var(--muted); font-size: 14px; }
.knowledge-grid b { margin-top: auto; color: var(--petrol); font-size: 14px; }
.why-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 100px; }
.why-grid > div:first-child { position: sticky; top: 120px; align-self: start; }
.why-points { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.why-points article { padding: 27px; background: white; border: 1px solid var(--line); border-radius: var(--radius-card); box-shadow: var(--shadow-card); }
.why-points b { color: var(--turquoise); font-size: 12px; }
.why-points h3 { margin: 27px 0 8px; }
.why-points p { margin: 0; color: var(--muted); font-size: 14px; }
.steps { list-style: none; display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; margin: 0; padding: 0; counter-reset: steps; }
.steps li { position: relative; padding-top: 38px; border-top: 2px solid var(--line); }
.steps li::after { content: ""; position: absolute; top: -2px; left: 0; width: 45%; height: 2px; background: var(--petrol); }
.steps li > span { color: var(--petrol); font-size: 13px; font-weight: 800; }
.steps h3 { margin: 24px 0 8px; }
.steps p { color: var(--muted); font-size: 14px; }
.process-note { max-width: 850px; margin: 44px auto 0; padding: 20px 24px; color: #3f5558; background: var(--tint); border-left: 3px solid var(--petrol); font-size: 14px; }
.trust-panel { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center; padding: 50px; background: white; border: 1px solid var(--line); border-radius: var(--radius-card); box-shadow: var(--shadow-card); }
.trust-panel ul { display: grid; gap: 13px; margin: 0; padding: 0; list-style: none; }
.trust-panel li { position: relative; padding-left: 31px; font-weight: 650; }
.trust-panel li::before { content: "✓"; position: absolute; left: 0; color: var(--petrol); font-weight: 900; }
.faq-layout { display: grid; grid-template-columns: .75fr 1.25fr; gap: 95px; }
.faq-layout > div:first-child { position: sticky; top: 120px; align-self: start; }
.faq-list details { border-top: 1px solid var(--line); }
.faq-list details:last-child { border-bottom: 1px solid var(--line); }
.faq-list summary { display: flex; justify-content: space-between; gap: 20px; padding: 22px 0; cursor: pointer; font-size: 18px; font-weight: 720; list-style: none; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary span { color: var(--petrol); font-size: 24px; }
.faq-list details[open] summary span { transform: rotate(45deg); }
.faq-list details p { max-width: 680px; padding: 0 35px 22px 0; color: var(--muted); }
.final-cta { display: grid; grid-template-columns: 1.15fr .85fr; gap: 80px; align-items: center; padding: 88px max(28px, calc((100vw - 1240px) / 2)); color: white; background: var(--petrol-dark); }
.final-cta h2 { max-width: 750px; }
.final-cta p { max-width: 760px; color: #c6dddd; }
.final-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 15px; }
.text-link-light { color: white; font-weight: 750; }

.site-footer { padding: 72px max(28px, calc((100vw - var(--content-width)) / 2)) 28px; color: #e3e7ec; background: #303748; }
.footer-grid { display: grid; grid-template-columns: 1.25fr 1fr 1fr 1fr; gap: 64px; }
.brand-footer { display: inline-flex; margin-bottom: 24px; padding: 13px 15px; background: white; border-radius: var(--radius-button); }
.brand-footer img { width: min(290px, 100%); max-height: none; }
.footer-grid h3 { color: white; font-size: 15px; }
.footer-grid p, .footer-grid a { display: block; margin: 0 0 9px; color: #c2c8d1; font-size: 14px; }
.footer-grid a:hover { color: white; }
.footer-bottom { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 40px; align-items: end; margin-top: 54px; padding-top: 24px; border-top: 1px solid #4c5466; color: #aeb5c0; font-size: 12px; }
.footer-bottom p { max-width: 820px; margin: 0; }
.footer-bottom div { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 18px; }
.mobile-actions { display: none; }

.page-hero { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(310px, .7fr); gap: 80px; align-items: end; padding: 86px max(28px, calc((100vw - 1240px) / 2)) 92px; background: linear-gradient(135deg, #fff 0%, #f6faf9 75%, #e9f3f2 100%); border-bottom: 1px solid var(--line); }
.page-hero > div:first-child { max-width: 790px; }
.page-hero h1 { font-size: clamp(47px, 6vw, 75px); }
.page-hero > div:first-child > p:not(.eyebrow) { max-width: 720px; color: var(--muted); font-size: 19px; }
.breadcrumbs { display: flex; gap: 9px; margin-bottom: 42px; color: #718083; font-size: 12px; }
.breadcrumbs a { color: var(--petrol); font-weight: 700; }
.page-hero-card { padding: 34px; color: white; background: var(--petrol-dark); border-radius: 18px 18px 60px 18px; }
.page-hero-card span { display: block; margin-bottom: 45px; color: #89d1ca; font-size: 12px; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.page-hero-card strong { display: block; font-size: 24px; line-height: 1.3; letter-spacing: -.025em; }
.page-hero-card p { margin: 20px 0 0; color: #c3d9d7; font-size: 14px; }
.content-block { display: grid; grid-template-columns: minmax(0, 850px) minmax(260px, 340px); gap: 75px; padding: 94px max(28px, calc((100vw - 1240px) / 2)); }
.content-block.content-muted { display: block; background: var(--soft); }
.content-block.content-muted .content-main { max-width: 900px; }
.section-label { margin-bottom: 14px; color: var(--petrol); font-size: 12px; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }
.content-main > p { color: var(--muted); }
.hybrid-list { display: grid; gap: 12px; margin-top: 37px; }
.hybrid-list article { display: grid; grid-template-columns: 170px 1fr; gap: 24px; padding: 23px 0; border-top: 1px solid var(--line); }
.hybrid-list article:last-child { border-bottom: 1px solid var(--line); }
.hybrid-list b { color: var(--ink); }
.hybrid-list p { margin: 0; color: var(--muted); }
.content-aside { align-self: start; padding: 28px; background: var(--tint); border-radius: 14px; }
.content-aside > span { color: var(--petrol); font-size: 11px; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.content-aside h3 { margin: 25px 0 10px; }
.content-aside p { color: #4c6567; font-size: 14px; }
.content-aside a { color: var(--petrol); font-size: 14px; font-weight: 800; }
.exclusion-list { display: grid; gap: 9px; margin: 30px 0; padding: 0; list-style: none; }
.exclusion-list li { position: relative; padding: 16px 18px 16px 48px; background: white; border: 1px solid #ebe6df; border-radius: 9px; }
.exclusion-list li::before { content: "–"; position: absolute; left: 20px; color: var(--copper); font-weight: 900; }
.tag-list { display: flex; flex-wrap: wrap; gap: 9px; margin: 30px 0 60px; }
.tag-list span { padding: 8px 13px; color: var(--petrol-dark); background: var(--tint); border-radius: 999px; font-size: 13px; font-weight: 700; }
.subsection-title { margin-top: 60px; font-size: 34px; }
.benefit-list { display: grid; grid-template-columns: 1fr 1fr; gap: 16px 34px; }
.benefit-list p { padding-top: 18px; border-top: 1px solid var(--line); color: var(--muted); }
.benefit-list b { display: block; color: var(--ink); }
.content-faq { background: #f7fbfa; }
.content-faq .content-main { grid-column: 1 / -1; max-width: 900px; margin-inline: auto; }
.inline-cta { display: grid; grid-template-columns: 1fr auto; gap: 70px; align-items: center; margin: 0 max(28px, calc((100vw - 1240px) / 2)) 95px; padding: 48px; color: white; background: var(--petrol-dark); border-radius: 18px; }
.inline-cta h2 { margin-bottom: 10px; font-size: 34px; }
.inline-cta p { margin: 0; color: #c3d9d7; }
.inline-cta > div:last-child { display: flex; gap: 12px; flex-wrap: wrap; }
.inline-cta .button-secondary { color: white; background: transparent; border-color: rgba(255,255,255,.5); }
.inline-cta.compact { margin: 45px 0 0; }
.directory-section { padding: 90px max(28px, calc((100vw - 1240px) / 2)); }
.directory-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.directory-grid > a { min-height: 260px; padding: 28px; background: white; border: 1px solid var(--line); border-radius: 14px; transition: transform .18s ease, border-color .18s ease; }
.directory-grid > a:hover { transform: translateY(-3px); border-color: var(--turquoise); }
.directory-grid span { color: var(--turquoise); font-size: 11px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.directory-grid h2 { margin-top: 38px; font-size: 24px; }
.directory-grid p { color: var(--muted); font-size: 14px; }
.directory-grid b { color: var(--petrol); font-size: 13px; }
.author-box { display: grid; grid-template-columns: 86px 1fr; gap: 25px; max-width: 880px; margin: 0 auto 90px; padding: 34px; background: var(--soft); border-radius: 16px; }
.author-initials { width: 74px; height: 74px; display: grid; place-items: center; color: white; background: var(--petrol); border-radius: 50%; font-weight: 850; }
.author-box span { color: var(--petrol); font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .12em; }
.author-box h2 { margin: 4px 0; font-size: 24px; }
.author-box p { margin: 0; color: var(--muted); font-size: 14px; }
.contact-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.contact-grid article { min-height: 270px; padding: 30px; background: var(--soft); border-radius: 14px; }
.contact-grid span { color: var(--petrol); font-size: 12px; font-weight: 800; text-transform: uppercase; }
.contact-grid h2 { margin-top: 48px; font-size: 28px; }
.contact-grid p { color: var(--muted); }
.short-form { max-width: 900px; margin: 70px auto 0; padding: 38px; background: white; border: 1px solid var(--line); border-radius: 16px; box-shadow: 0 18px 55px rgba(31,63,64,.07); }
.short-form > p { color: var(--muted); }
.short-form .button { margin-top: 26px; }
.small-success { margin-top: 60px; padding: 38px; }
.article-copy { max-width: 850px; }
.legal-content { max-width: 850px; margin: 85px auto; padding: 0 28px; }
.legal-content p { color: var(--muted); }
.form-page-hero { display: grid; grid-template-columns: 1.15fr .85fr; gap: 90px; align-items: end; padding: 82px max(28px, calc((100vw - 1160px) / 2)) 76px; background: linear-gradient(135deg, #fff, #edf6f5); border-bottom: 1px solid var(--line); }
.form-page-hero h1 { max-width: 760px; font-size: clamp(48px, 6vw, 72px); }
.form-page-hero p { max-width: 740px; color: var(--muted); font-size: 18px; }
.form-page-hero > ul { display: grid; gap: 13px; margin: 0; padding: 30px; list-style: none; background: white; border: 1px solid var(--line); border-radius: 15px; }
.form-page-hero > ul li { position: relative; padding-left: 28px; font-weight: 650; }
.form-page-hero > ul li::before { content: "✓"; position: absolute; left: 0; color: var(--petrol); font-weight: 900; }
.form-shell { padding: 80px max(24px, calc((100vw - 1040px) / 2)) 105px; background: #f8faf9; }
.quote-form, .damage-form { padding: 44px; background: white; border: 1px solid var(--line); border-radius: 18px; box-shadow: 0 24px 70px rgba(31,63,64,.08); }
.form-progress { margin-bottom: 45px; }
.form-progress > div:first-child { display: flex; justify-content: space-between; gap: 20px; margin-bottom: 14px; }
.form-progress span { color: var(--muted); font-size: 13px; }
.progress-track { height: 6px; overflow: hidden; background: #e8eeed; border-radius: 999px; }
.progress-track span { display: block; height: 100%; background: linear-gradient(90deg, var(--petrol), var(--turquoise)); border-radius: inherit; transition: width .25s ease; }
.form-step, .damage-form fieldset { margin: 0; padding: 0; border: 0; }
.form-step[hidden] { display: none; }
.form-step legend, .damage-form legend { margin-bottom: 8px; font-size: 32px; line-height: 1.2; font-weight: 780; letter-spacing: -.035em; }
.form-step > p, .damage-form fieldset > p { margin-bottom: 30px; color: var(--muted); }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.form-field { display: grid; align-content: start; gap: 7px; }
.form-field.wide { grid-column: 1 / -1; }
.form-field > span { color: #384648; font-size: 13px; font-weight: 720; }
.form-field input, .form-field select, .form-field textarea { width: 100%; min-height: 50px; padding: 12px 14px; color: var(--ink); background: white; border: 1px solid #bdc9c7; border-radius: 8px; }
.form-field select:disabled { color: #435456; background: #eef5f4; cursor: not-allowed; }
.form-field textarea { resize: vertical; }
.form-field input:focus, .form-field select:focus, .form-field textarea:focus { border-color: var(--petrol); outline: 3px solid rgba(44,154,154,.16); }
.check-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-bottom: 24px; }
.check-grid label, .damage-type-grid label { position: relative; cursor: pointer; }
.check-grid input, .damage-type-grid input { position: absolute; opacity: 0; }
.check-grid label span, .damage-type-grid label span { min-height: 63px; display: flex; align-items: center; padding: 12px 15px; color: #394749; background: #f8faf9; border: 1px solid var(--line); border-radius: 8px; font-size: 13px; font-weight: 650; transition: border-color .18s ease, background .18s ease; }
.check-grid input:checked + span, .damage-type-grid input:checked + span { color: var(--petrol-dark); background: var(--tint); border-color: var(--petrol); box-shadow: inset 0 0 0 1px var(--petrol); }
.compact-checks { grid-template-columns: repeat(2, 1fr); margin-top: 28px; }
.upload-field { display: grid; place-items: center; min-height: 170px; margin: 25px 0; padding: 24px; text-align: center; background: #f8fbfa; border: 2px dashed #aac3c0; border-radius: 12px; cursor: pointer; }
.upload-field input { max-width: 100%; margin-bottom: 15px; }
.upload-field span { display: grid; color: var(--muted); font-size: 13px; }
.upload-field b { color: var(--petrol); font-size: 15px; }
.truth-check { display: flex; gap: 12px; align-items: flex-start; margin-top: 26px; font-weight: 650; }
.truth-check input { margin-top: 5px; }
.privacy-note { margin-top: 18px; padding: 16px; background: var(--soft); border-radius: 8px; color: var(--muted); font-size: 13px; }
.privacy-note a { color: var(--petrol); font-weight: 750; text-decoration: underline; text-underline-offset: 3px; }
.form-change-package { justify-self: start; color: var(--petrol); font-size: 13px; font-weight: 800; }
.form-navigation { display: flex; justify-content: space-between; gap: 14px; margin-top: 42px; padding-top: 26px; border-top: 1px solid var(--line); }
.form-navigation button:disabled { cursor: not-allowed; opacity: .4; transform: none; }
.honeypot { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.form-error { margin-top: 22px; padding: 14px 17px; color: #7d2416; background: #fff0ec; border-left: 3px solid #c44c31; }
.form-success { max-width: 760px; margin: auto; padding: 65px; text-align: center; background: white; border: 1px solid var(--line); border-radius: 18px; }
.form-success > span { width: 58px; height: 58px; display: grid; place-items: center; margin: 0 auto 24px; color: white; background: var(--petrol); border-radius: 50%; font-size: 27px; }
.form-success p { color: var(--muted); }
.green-plate-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(330px, .75fr);
  gap: 90px;
  align-items: center;
  padding: 84px max(28px, calc((100vw - 1240px) / 2)) 90px;
  background: linear-gradient(135deg, #fff 0%, #f4faf9 64%, #dcefed 100%);
  border-bottom: 1px solid var(--line);
}
.green-plate-hero h1 { max-width: 800px; }
.green-plate-intro { max-width: 760px; color: var(--muted); font-size: 19px; }
.green-proof-row { display: flex; flex-wrap: wrap; gap: 12px 24px; margin-top: 32px; }
.green-proof-row span { display: flex; align-items: center; gap: 9px; color: #304244; font-size: 14px; font-weight: 700; }
.green-proof-row b { width: 25px; height: 25px; display: grid; place-items: center; color: white; background: var(--petrol); border-radius: 50%; font-size: 12px; }
.green-info-card { padding: 38px; color: white; background: var(--petrol-dark); border-radius: 20px 20px 72px 20px; box-shadow: 0 28px 70px rgba(7,72,75,.18); }
.green-info-card > span { color: #94dcd5; font-size: 11px; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }
.green-info-card h2 { margin: 35px 0 22px; font-size: 34px; }
.green-info-card ul { display: grid; gap: 10px; margin: 0 0 30px; padding: 0; list-style: none; }
.green-info-card li { position: relative; padding-left: 27px; color: #d5e7e5; }
.green-info-card li::before { content: "✓"; position: absolute; left: 0; color: #94dcd5; font-weight: 900; }
.green-info-card p { margin: 0; padding-top: 22px; color: #c8dddb; border-top: 1px solid rgba(255,255,255,.15); font-size: 14px; }
.green-info-card a { color: white; font-weight: 800; }
.green-form-shell { padding-top: 72px; }
.green-plate-form { max-width: 930px; margin-inline: auto; }
.fast-form-heading { margin-bottom: 42px; }
.fast-form-heading h2 { margin-bottom: 12px; font-size: 40px; }
.fast-form-heading > p:last-child { color: var(--muted); }
.fast-form-section { margin: 0; padding: 34px 0; border: 0; border-top: 1px solid var(--line); }
.fast-form-section legend { margin-bottom: 24px; color: var(--petrol-dark); font-size: 21px; font-weight: 800; }
.form-inline-note { margin: 20px 0 0; color: var(--muted); font-size: 13px; }
.selected-package {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 22px;
  align-items: center;
  margin-top: 26px;
  padding: 22px;
  color: white;
  background: var(--petrol-dark);
  border-radius: 12px;
}
.selected-package > div:first-child { display: grid; }
.selected-package > div:first-child span { color: #9cddd7; font-size: 11px; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.selected-package > div:first-child strong { font-size: 19px; }
.selected-package-details { display: flex; flex-wrap: wrap; gap: 7px; }
.selected-package-details small { padding: 6px 9px; color: #d6e6e4; background: rgba(255,255,255,.08); border-radius: 999px; }
.selected-package > b { white-space: nowrap; font-size: 18px; }
.route-notice { margin-top: 22px; padding: 19px 21px; color: #264648; background: var(--tint); border-left: 4px solid var(--petrol); border-radius: 8px; }
.route-notice p { margin: 5px 0 0; }
.handelaarskenteken-block {
  grid-column: 1 / -1;
  margin-top: 8px;
  padding: 26px;
  background: #f8faf9;
  border: 1px solid var(--line);
  border-radius: 12px;
}
.handelaarskenteken-heading {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(210px, .38fr);
  gap: 28px;
  align-items: end;
  margin-bottom: 22px;
}
.handelaarskenteken-heading h3 { margin: 0 0 7px; font-size: 21px; }
.handelaarskenteken-heading p { max-width: 600px; margin: 0; color: var(--muted); font-size: 13px; }
.kenteken-count-field { align-self: end; }
.handelaarskenteken-list { display: grid; gap: 14px; }
.handelaarskenteken-card {
  padding: 20px;
  background: white;
  border: 1px solid #d8e4e2;
  border-radius: 10px;
}
.handelaarskenteken-card h4 { margin: 0 0 16px; color: var(--petrol-dark); font-size: 16px; }
.address-block { margin-top: 34px; padding-top: 30px; border-top: 1px solid var(--line); }
.address-block h3 { margin-bottom: 20px; font-size: 20px; }
.address-heading { display: flex; justify-content: space-between; gap: 20px; align-items: center; }
.inline-check { display: flex; gap: 9px; align-items: center; color: var(--muted); font-size: 13px; font-weight: 650; cursor: pointer; }
.inline-check input { width: 18px; height: 18px; accent-color: var(--petrol); }
.owner-count-field { max-width: 420px; margin-bottom: 28px; }
.owners-list { display: grid; gap: 22px; }
.owner-card { padding: 28px; background: #f8faf9; border: 1px solid var(--line); border-radius: 12px; }
.owner-card h3 { margin-bottom: 20px; font-size: 20px; }
.slot-intro { margin-bottom: 24px; padding: 20px 22px; color: #405255; background: var(--tint); border-radius: 9px; }
.slot-intro p:last-child { margin-bottom: 0; }
.slot-question { padding: 27px 0; border-top: 1px solid var(--line); }
.slot-question:last-child { border-bottom: 1px solid var(--line); }
.slot-question-text p { margin-bottom: 10px; color: #283638; font-weight: 700; }
.slot-question-text ul { margin: 8px 0 17px; padding-left: 24px; color: #3f4d50; }
.slot-note { margin: 14px 0; padding: 15px 17px; color: #5a481d; background: #fff8e9; border-left: 3px solid #dba54c; border-radius: 7px; font-size: 13px; }
.slot-note p { margin: 0; }
.yes-no-choice { display: flex; gap: 10px; margin-top: 17px; }
.yes-no-choice label { cursor: pointer; }
.yes-no-choice input { position: absolute; opacity: 0; }
.yes-no-choice span { min-width: 76px; min-height: 44px; display: grid; place-items: center; color: #394749; background: white; border: 1px solid #b9c6c4; border-radius: 8px; font-weight: 750; }
.yes-no-choice input:checked + span { color: var(--petrol-dark); background: var(--tint); border-color: var(--petrol); box-shadow: inset 0 0 0 1px var(--petrol); }
.yes-no-choice input:focus-visible + span { outline: 3px solid #39b9b1; outline-offset: 2px; }
.slot-follow-up { margin-top: 18px; padding: 20px; background: #f8faf9; border-radius: 9px; }
.declaration-box { padding: 22px; background: #f8faf9; border: 1px solid var(--line); border-radius: 10px; }
.declaration-box p { margin-bottom: 10px; font-weight: 750; }
.declaration-box ul { margin: 0; padding-left: 22px; color: var(--muted); }
.coverage-warning { margin-top: 24px; padding: 17px 19px; color: #66400e; background: #fff7e8; border-left: 4px solid #e79529; border-radius: 7px; font-size: 13px; }
.green-submit { width: 100%; margin-top: 20px; }
.green-form-assurance { max-width: 930px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; margin: 34px auto 0; background: var(--line); border: 1px solid var(--line); }
.green-form-assurance article { padding: 27px; background: white; }
.green-form-assurance b { color: var(--turquoise); font-size: 12px; }
.green-form-assurance h3 { margin: 22px 0 7px; font-size: 17px; }
.green-form-assurance p { margin: 0; color: var(--muted); font-size: 13px; }
.urgent-card { padding: 28px; color: white; background: var(--petrol-dark); border-radius: 15px; }
.urgent-card span { color: #93d8d1; font-size: 12px; font-weight: 800; text-transform: uppercase; letter-spacing: .13em; }
.urgent-card strong { display: block; margin: 28px 0 15px; font-size: 27px; line-height: 1.25; }
.urgent-card a { color: white; font-weight: 750; }
.damage-form { display: grid; gap: 42px; }
.damage-form fieldset { padding-bottom: 36px; border-bottom: 1px solid var(--line); }
.damage-type-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.warning-box { padding: 21px; color: #5b3b18; background: #fff7e8; border-left: 4px solid #e79529; border-radius: 7px; }
.warning-box p { margin: 5px 0 0; }
.consent-banner { position: fixed; inset: auto 22px 22px; z-index: 100; display: grid; grid-template-columns: 1fr auto; gap: 35px; align-items: end; max-width: 1050px; margin: auto; padding: 28px; background: white; border: 1px solid var(--line); border-radius: 15px; box-shadow: 0 24px 80px rgba(16,47,50,.24); }
.consent-banner h2 { margin-bottom: 8px; font-size: 25px; }
.consent-banner p:not(.eyebrow) { max-width: 680px; margin: 0; color: var(--muted); font-size: 14px; }
.consent-actions { display: flex; align-items: center; gap: 9px; flex-wrap: wrap; }
.consent-actions .button { min-height: 44px; padding: 10px 16px; font-size: 13px; }
.consent-link { padding: 8px; color: var(--petrol); background: transparent; border: 0; cursor: pointer; font-size: 12px; font-weight: 750; }
.consent-preferences { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }
.consent-preferences span { display: grid; padding: 9px 12px; background: var(--soft); border-radius: 7px; color: var(--muted); font-size: 11px; }
.consent-preferences b { color: var(--ink); }
.whatsapp-chat {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 90;
  display: grid;
  justify-items: end;
  gap: 12px;
}
.whatsapp-launcher {
  position: relative;
  min-height: 58px;
  display: inline-flex;
  align-items: center;
  gap: 11px;
  padding: 11px 19px 11px 12px;
  color: white;
  background: #1fae5b;
  border: 0;
  border-radius: 999px;
  box-shadow: 0 14px 34px rgba(10,91,45,.28);
  cursor: pointer;
  font-weight: 800;
  transition: transform .18s ease, background .18s ease, box-shadow .18s ease;
}
.whatsapp-launcher:hover { transform: translateY(-2px); background: #168d49; box-shadow: 0 18px 42px rgba(10,91,45,.34); }
.whatsapp-launcher-icon, .whatsapp-mark {
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  color: #1fae5b;
  background: white;
  border-radius: 50%;
  font-size: 20px;
  font-style: normal;
  font-weight: 900;
}
.whatsapp-launcher > i {
  position: absolute;
  top: 2px;
  right: 3px;
  width: 11px;
  height: 11px;
  background: #ff6a3d;
  border: 2px solid white;
  border-radius: 50%;
}
.whatsapp-panel {
  width: min(370px, calc(100vw - 32px));
  overflow: hidden;
  background: #f4f8f6;
  border: 1px solid rgba(7,72,75,.12);
  border-radius: 18px;
  box-shadow: 0 24px 70px rgba(15,51,45,.24);
  transform-origin: bottom right;
  animation: whatsapp-in .18s ease-out;
}
.whatsapp-panel-head {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 12px;
  align-items: center;
  padding: 18px;
  color: white;
  background: var(--petrol-dark);
}
.whatsapp-avatar {
  width: 45px;
  height: 45px;
  display: grid;
  place-items: center;
  color: var(--petrol-dark);
  background: white;
  border-radius: 50%;
  font-size: 11px;
  font-weight: 900;
}
.whatsapp-panel-head strong { display: block; line-height: 1.2; }
.whatsapp-panel-head span { display: flex; align-items: center; gap: 6px; margin-top: 4px; color: #cce4e1; font-size: 11px; }
.whatsapp-panel-head span i { width: 7px; height: 7px; background: #45d47c; border-radius: 50%; }
.whatsapp-panel-head button { align-self: start; padding: 0 3px; color: #cae0de; background: transparent; border: 0; cursor: pointer; font-size: 25px; line-height: 1; }
.whatsapp-panel-body { padding: 22px 22px 18px; background: linear-gradient(135deg, #eef6f3, #f8fbfa); }
.whatsapp-panel-body p {
  width: fit-content;
  max-width: 300px;
  margin-bottom: 8px;
  padding: 10px 13px;
  color: #31403f;
  background: white;
  border-radius: 5px 13px 13px 13px;
  box-shadow: 0 5px 16px rgba(25,72,62,.07);
  font-size: 14px;
  line-height: 1.5;
}
.whatsapp-panel-body small { display: block; margin-top: 15px; color: #70817f; font-size: 10px; }
.whatsapp-start {
  min-height: 58px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin: 0 18px 18px;
  padding: 10px 16px;
  color: white;
  background: #1fae5b;
  border-radius: 10px;
  font-weight: 800;
  transition: background .18s ease;
}
.whatsapp-start:hover { background: #168d49; }
.whatsapp-start .whatsapp-mark { width: 30px; height: 30px; font-size: 17px; }
@keyframes whatsapp-in {
  from { opacity: 0; transform: translateY(8px) scale(.98); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}
.not-found { min-height: 68vh; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; max-width: 850px; margin: auto; padding: 80px 28px; }
.not-found p:not(.eyebrow) { max-width: 650px; color: var(--muted); font-size: 19px; }

.pillar-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(320px, .65fr);
  gap: 80px;
  align-items: center;
  padding: 82px max(28px, calc((100vw - 1240px) / 2)) 88px;
  background:
    radial-gradient(circle at 92% 15%, rgba(44,154,154,.18), transparent 28%),
    linear-gradient(135deg, #fff 0%, #f5faf9 72%, #e2f0ee 100%);
  border-bottom: 1px solid var(--line);
}
.pillar-hero h1 { max-width: 850px; font-size: clamp(47px, 5.5vw, 75px); }
.product-pillar-hero h1 {
  font-size: clamp(41px, 4.4vw, 62px);
  overflow-wrap: anywhere;
}
.pillar-intro { max-width: 800px; margin-bottom: 30px; color: var(--muted); font-size: 19px; line-height: 1.7; }
.definition-card {
  padding: 40px;
  color: white;
  background: var(--petrol-dark);
  border-radius: 20px 20px 76px 20px;
  box-shadow: 0 28px 70px rgba(7,72,75,.17);
}
.definition-card > span { display: block; margin-bottom: 42px; color: #9cddd7; font-size: 11px; font-weight: 850; letter-spacing: .14em; text-transform: uppercase; }
.definition-card strong { display: block; font-size: 25px; line-height: 1.35; letter-spacing: -.025em; }
.definition-card p { margin: 24px 0 0; padding-top: 22px; color: #c8dddd; border-top: 1px solid rgba(255,255,255,.16); font-size: 14px; }
.mechanisation-hero {
  background:
    radial-gradient(circle at 88% 18%, rgba(200,95,45,.13), transparent 25%),
    linear-gradient(135deg, #fff 0%, #f6faf9 68%, #e8f1ec 100%);
}
.fact-band {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  padding: 0 max(28px, calc((100vw - 1240px) / 2));
  color: white;
  background: var(--petrol-dark);
}
.fact-band > div { min-height: 130px; display: grid; align-content: center; gap: 5px; padding: 25px 30px; border-right: 1px solid rgba(255,255,255,.14); }
.fact-band > div:last-child { border-right: 0; }
.fact-band b { color: #9cddd7; }
.fact-band span { color: #d3e5e3; font-size: 13px; }
.scope-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.scope-grid article { padding: 36px; background: var(--soft); border: 1px solid #e8e3dc; border-radius: 16px; }
.scope-grid article.scope-positive { background: #ecf6f4; border-color: #cce5e1; }
.scope-grid article > span { color: var(--petrol); font-size: 11px; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }
.scope-grid h3 { margin: 31px 0 20px; font-size: 27px; }
.scope-grid ul { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
.scope-grid li { position: relative; padding-left: 27px; color: var(--muted); }
.scope-grid li::before { content: "✓"; position: absolute; left: 0; color: var(--petrol); font-weight: 900; }
.scope-grid article:not(.scope-positive) li::before { content: "–"; color: var(--copper); }
.route-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.route-cards article { min-height: 300px; display: flex; flex-direction: column; padding: 30px; background: white; border: 1px solid #d8e7e4; border-radius: 15px; }
.route-cards b { color: var(--turquoise); font-size: 12px; }
.route-cards h3 { margin: 42px 0 12px; font-size: 23px; }
.route-cards p { color: var(--muted); font-size: 14px; }
.route-cards a { margin-top: auto; color: var(--petrol); font-size: 14px; font-weight: 800; }
.coverage-map { display: grid; grid-template-columns: repeat(2, 1fr); gap: 15px; }
.coverage-map article { min-height: 285px; display: flex; flex-direction: column; padding: 32px; background: white; border: 1px solid var(--line); border-radius: 15px; }
.coverage-map span { color: var(--turquoise); font-size: 11px; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.coverage-map h3 { margin: 42px 0 11px; font-size: 24px; }
.coverage-map p { color: var(--muted); font-size: 14px; }
.coverage-map a { margin-top: auto; color: var(--petrol); font-size: 14px; font-weight: 800; }
.content-two-column { display: grid; grid-template-columns: .78fr 1.22fr; gap: 90px; align-items: start; }
.content-two-column > div > p:not(.eyebrow) { color: var(--muted); }
.numbered-checks { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--line); }
.numbered-checks li { display: grid; grid-template-columns: 150px 1fr; gap: 28px; padding: 22px 0; border-bottom: 1px solid var(--line); }
.numbered-checks b { color: var(--ink); }
.numbered-checks span { color: var(--muted); }
.conversion-panel {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 55px;
  align-items: center;
  margin-top: 70px;
  padding: 45px 48px;
  color: white;
  background: var(--petrol-dark);
  border-radius: 18px;
}
.conversion-panel h2 { margin-bottom: 10px; font-size: 36px; }
.conversion-panel p:not(.eyebrow) { max-width: 780px; margin: 0; color: #c6dddd; }
.sector-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 15px; }
.sector-grid article { min-height: 240px; padding: 28px; background: var(--soft); border: 1px solid #ece8e2; border-radius: 14px; }
.sector-grid b { color: var(--turquoise); font-size: 12px; }
.sector-grid h3 { margin: 38px 0 11px; font-size: 22px; }
.sector-grid p { color: var(--muted); font-size: 14px; }
.risk-detail-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.risk-detail-grid article { min-height: 280px; padding: 28px; border: 1px solid var(--line); border-radius: 14px; }
.risk-detail-grid span { color: var(--copper); font-size: 11px; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.risk-detail-grid h3 { margin: 48px 0 12px; font-size: 21px; }
.risk-detail-grid p { color: var(--muted); font-size: 14px; }
.rdb-hero {
  background:
    radial-gradient(circle at 88% 15%, rgba(44,154,154,.2), transparent 27%),
    linear-gradient(135deg, #fff 0%, #f5faf9 70%, #e1f0ee 100%);
}
.rdb-compare {
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 15px;
}
.rdb-compare > div {
  display: grid;
  grid-template-columns: .65fr 1.35fr 1fr;
  gap: 26px;
  padding: 22px 26px;
  border-top: 1px solid var(--line);
}
.rdb-compare > div:first-child { border-top: 0; }
.rdb-compare-head {
  color: white;
  background: var(--petrol-dark);
  font-size: 12px;
  font-weight: 850;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.rdb-compare > div:not(.rdb-compare-head):nth-child(odd) { background: #f7faf9; }
.rdb-compare strong { color: var(--petrol-dark); }
.rdb-compare > div:not(.rdb-compare-head) span { color: var(--muted); }
.rdb-road-note {
  margin: 34px 0 0;
  padding: 22px 25px;
  color: #42595b;
  background: var(--tint);
  border-left: 4px solid var(--petrol);
  border-radius: 8px;
}
.policy-example {
  max-width: 960px;
  margin-inline: auto;
}
.policy-example blockquote {
  margin: 36px 0 25px;
  padding: 32px 38px;
  color: var(--petrol-dark);
  background: white;
  border-left: 5px solid var(--turquoise);
  border-radius: 10px;
  box-shadow: 0 16px 45px rgba(13,93,97,.07);
  font-size: clamp(20px, 2.4vw, 27px);
  font-weight: 680;
  line-height: 1.5;
}
.policy-example > p:last-child { color: var(--muted); font-size: 14px; }
.rdb-sources {
  display: grid;
  grid-template-columns: 1.2fr .8fr;
  gap: 80px;
  align-items: end;
}
.rdb-sources > div:first-child { max-width: 760px; }
.rdb-sources > div:first-child > p:last-child { color: var(--muted); }
.source-links { display: grid; gap: 12px; }
.source-links a {
  padding: 17px 20px;
  color: var(--petrol-dark);
  background: var(--tint);
  border: 1px solid #cee4e1;
  border-radius: 9px;
  font-weight: 750;
}
.source-links a:hover { border-color: var(--turquoise); }
.package-section { scroll-margin-top: 115px; }
.poets-route-callout {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  margin: -10px 0 28px;
  padding: 18px 21px;
  color: #264648;
  background: var(--tint);
  border-left: 4px solid var(--petrol);
  border-radius: 9px;
}
.poets-route-callout > div { display: grid; gap: 2px; }
.poets-route-callout span { color: var(--muted); font-size: 13px; }
.poets-route-callout a { flex: 0 0 auto; color: var(--petrol); font-size: 13px; font-weight: 800; }
.package-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 15px;
}
.package-card {
  position: relative;
  min-height: 590px;
  display: flex;
  flex-direction: column;
  padding: 30px;
  background: white;
  border: 1px solid var(--line);
  border-radius: 16px;
  box-shadow: 0 14px 40px rgba(13,93,97,.06);
  scroll-margin-top: 120px;
}
.package-card-featured {
  color: white;
  background: var(--petrol-dark);
  border-color: var(--petrol-dark);
  box-shadow: 0 22px 50px rgba(7,72,75,.18);
}
.package-badge {
  position: absolute;
  top: 18px;
  right: 18px;
  padding: 6px 9px;
  color: var(--petrol-dark);
  background: #a1e0da;
  border-radius: 999px;
  font-size: 9px;
  font-weight: 850;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.package-insurer {
  margin: 0 0 36px;
  color: var(--turquoise);
  font-size: 12px;
  font-weight: 850;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.package-card-featured .package-insurer { color: #9cddd7; }
.package-card h3 { margin-bottom: 10px; font-size: 25px; }
.package-audience { min-height: 72px; color: var(--muted); font-size: 14px; }
.package-card-featured .package-audience { color: #c7ddda; }
.package-detail-link {
  align-self: flex-start;
  margin: -3px 0 5px;
  color: var(--petrol);
  font-size: 11px;
  font-weight: 800;
}
.package-card-featured .package-detail-link { color: #9cddd7; }
.package-price {
  display: flex;
  align-items: baseline;
  gap: 4px;
  margin: 18px 0 24px;
  color: var(--petrol-dark);
  font-size: 40px;
  font-weight: 820;
  line-height: 1;
  letter-spacing: -.04em;
}
.package-price > span { font-size: 18px; }
.package-price small { margin-left: 4px; color: var(--muted); font-size: 11px; font-weight: 650; letter-spacing: 0; }
.package-card-featured .package-price { color: white; }
.package-card-featured .package-price small { color: #bcd4d1; }
.package-card ul {
  display: grid;
  gap: 10px;
  margin: 0 0 28px;
  padding: 0;
  list-style: none;
  font-size: 13px;
}
.package-card li { position: relative; padding-left: 23px; color: var(--muted); }
.package-card li::before { content: "✓"; position: absolute; left: 0; color: var(--petrol); font-weight: 900; }
.package-card-featured li { color: #d3e3e1; }
.package-card-featured li::before { color: #9cddd7; }
.package-card .button { width: 100%; margin-top: auto; padding-inline: 14px; font-size: 13px; }
.package-card-featured .button { color: var(--petrol-dark); background: white; }
.package-calculator-grid { align-items: stretch; }
.package-calculator-card {
  min-height: 890px;
  padding: 27px 24px 24px;
}
.package-calculator-card .package-insurer { margin-bottom: 30px; }
.calculator-price {
  display: grid;
  margin: 16px 0 22px;
  padding: 17px 18px;
  color: var(--petrol-dark);
  background: var(--tint);
  border-radius: 11px;
}
.calculator-price > span {
  margin-bottom: 3px;
  color: var(--muted);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .07em;
  text-transform: uppercase;
}
.calculator-price strong {
  display: flex;
  align-items: baseline;
  gap: 5px;
  font-size: 34px;
  letter-spacing: -.035em;
}
.calculator-price strong small { font-size: 15px; }
.calculator-price em { color: var(--muted); font-size: 10px; font-style: normal; }
.package-card-featured .calculator-price { color: white; background: rgba(255,255,255,.1); }
.package-card-featured .calculator-price > span,
.package-card-featured .calculator-price em { color: #c7ddda; }
.package-core-list { min-height: 110px; }
.package-options {
  display: grid;
  gap: 10px;
  margin: 0 0 14px;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 11px;
}
.package-card-featured .package-options { border-color: rgba(255,255,255,.2); }
.package-options legend {
  padding-inline: 6px;
  color: var(--petrol);
  font-size: 11px;
  font-weight: 850;
  letter-spacing: .05em;
  text-transform: uppercase;
}
.package-card-featured .package-options legend { color: #9cddd7; }
.registration-choice {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
}
.registration-choice > div:first-child { display: grid; gap: 2px; }
.registration-choice span { color: var(--ink); font-size: 12px; font-weight: 800; }
.registration-choice small,
.calculator-check small { color: var(--muted); font-size: 10px; line-height: 1.4; }
.package-card-featured .registration-choice span,
.package-card-featured .calculator-check b { color: white; }
.package-card-featured .registration-choice small,
.package-card-featured .calculator-check small { color: #c7ddda; }
.stepper {
  display: grid;
  grid-template-columns: 30px 34px 30px;
  overflow: hidden;
  border: 1px solid #bdd8d5;
  border-radius: 9px;
}
.stepper button,
.stepper output {
  min-height: 32px;
  display: grid;
  place-items: center;
  color: var(--petrol-dark);
  background: white;
  border: 0;
  font: inherit;
  font-size: 15px;
  font-weight: 850;
}
.stepper button { cursor: pointer; }
.stepper button:hover:not(:disabled) { background: #dff2ef; }
.stepper button:focus-visible { position: relative; z-index: 1; outline: 3px solid #efb179; outline-offset: -2px; }
.stepper button:disabled { color: #a6b3b3; cursor: not-allowed; }
.stepper output { border-inline: 1px solid #d7e5e3; }
.included-count {
  min-width: 38px;
  padding: 7px 10px;
  color: var(--petrol-dark);
  background: var(--tint);
  border-radius: 8px;
  text-align: center;
}
.package-card-featured .included-count { color: white; background: rgba(255,255,255,.12); }
.option-rate {
  margin: -2px 0 2px;
  color: var(--muted);
  font-size: 10px;
}
.package-card-featured .option-rate { color: #c7ddda; }
.calculator-check {
  display: grid;
  grid-template-columns: 17px 1fr;
  gap: 9px;
  align-items: start;
  padding-top: 9px;
  border-top: 1px solid var(--line);
  cursor: pointer;
}
.package-card-featured .calculator-check { border-color: rgba(255,255,255,.15); }
.calculator-check input {
  width: 17px;
  height: 17px;
  margin: 2px 0 0;
  accent-color: var(--petrol);
}
.calculator-check > span { display: grid; gap: 2px; }
.calculator-check b { color: var(--ink); font-size: 11px; line-height: 1.35; }
.premium-breakdown {
  display: grid;
  gap: 4px;
  margin-bottom: 14px;
  padding: 12px 14px;
  color: var(--muted);
  background: #f7faf9;
  border-radius: 9px;
  font-size: 10px;
}
.premium-breakdown > span,
.premium-breakdown > strong { display: flex; justify-content: space-between; gap: 12px; }
.premium-breakdown > strong {
  margin-top: 4px;
  padding-top: 7px;
  color: var(--petrol-dark);
  border-top: 1px solid var(--line);
  font-size: 11px;
}
.package-card-featured .premium-breakdown { color: #c7ddda; background: rgba(255,255,255,.08); }
.package-card-featured .premium-breakdown > strong { color: white; border-color: rgba(255,255,255,.15); }
.nn-registration-note {
  margin: -3px 0 14px;
  color: var(--muted);
  font-size: 10px;
  line-height: 1.45;
}
.package-card-featured .nn-registration-note { color: #c7ddda; }
.product-calculator-section { scroll-margin-top: 118px; }
.product-calculator-single { max-width: 610px; margin-inline: auto; }
.product-calculator-single .package-grid { grid-template-columns: 1fr; }
.package-note {
  display: grid;
  grid-template-columns: 180px 1fr;
  gap: 28px;
  margin-top: 28px;
  padding: 22px 25px;
  color: #42595b;
  background: var(--tint);
  border-left: 4px solid var(--petrol);
  border-radius: 8px;
  font-size: 14px;
}
.package-note p { margin: 0; }
.route-switch {
  min-height: 82px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 55px;
  padding: 16px 28px;
  color: white;
  background: #12393c;
}
.route-switch > div { display: flex; flex-wrap: wrap; gap: 10px 22px; }
.route-switch span { color: #9cddd7; font-weight: 800; }
.route-switch a { font-weight: 800; text-decoration: underline; text-underline-offset: 4px; }
.coverage-footnote {
  margin: 40px 0 0;
  padding: 20px 24px;
  color: #d3e5e3;
  background: rgba(255,255,255,.06);
  border-left: 3px solid #9cddd7;
}
.coverage-footnote a { color: white; font-weight: 800; }
.coverage-footnote-dark { color: var(--muted); background: white; border-color: var(--petrol); }
.coverage-footnote-dark a { color: var(--petrol); }
.selected-package {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 16px;
  align-items: center;
  margin-bottom: 20px;
  padding: 18px 20px;
  color: white;
  background: var(--petrol-dark);
  border-radius: 10px;
}
.selected-package > div:first-child { display: grid; gap: 3px; }
.selected-package span { color: #9cddd7; font-size: 11px; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.selected-package b { font-size: 18px; }
.selected-package-details {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.selected-package-details small {
  padding: 5px 8px;
  color: #d6e8e6;
  background: rgba(255,255,255,.09);
  border-radius: 999px;
  font-size: 10px;
}
.form-inline-note { margin: 12px 0 0; color: var(--muted); font-size: 12px; }
.document-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}
.document-grid > a {
  min-height: 265px;
  display: flex;
  flex-direction: column;
  padding: 28px;
  background: white;
  border: 1px solid var(--line);
  border-radius: 14px;
  transition: transform .18s ease, border-color .18s ease;
}
.document-grid > a:hover { transform: translateY(-3px); border-color: var(--turquoise); }
.document-grid span, .news-card > span { color: var(--turquoise); font-size: 11px; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.document-grid h3 { margin: 36px 0 11px; font-size: 22px; }
.document-grid p { color: var(--muted); font-size: 14px; }
.document-grid b { margin-top: auto; color: var(--petrol); font-size: 13px; }
.news-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}
.news-card {
  min-height: 310px;
  display: flex;
  flex-direction: column;
  padding: 31px;
  background: var(--soft);
  border: 1px solid #ebe6df;
  border-radius: 15px;
}
.news-card-featured { color: white; background: var(--petrol-dark); border-color: var(--petrol-dark); }
.news-card h2 { margin: 45px 0 13px; font-size: 26px; }
.news-card p { color: var(--muted); font-size: 14px; }
.news-card a { margin-top: auto; color: var(--petrol); font-weight: 800; }
.news-card-featured > span, .news-card-featured a { color: #9cddd7; }
.news-card-featured p { color: #c7ddda; }
.candor-route {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 65px;
  align-items: center;
  margin: 0 max(28px, calc((100vw - 1240px) / 2)) 95px;
  padding: 42px 46px;
  background: linear-gradient(135deg, #edf7f5, #f7f4ee);
  border: 1px solid #d8e7e4;
  border-radius: 17px;
}
.candor-route h2 { margin-bottom: 10px; font-size: 34px; }
.candor-route p:not(.eyebrow) { max-width: 850px; margin-bottom: 0; color: var(--muted); }

.package-comparison {
  display: grid;
  grid-template-columns: minmax(250px, .35fr) minmax(0, 1fr);
  gap: 45px;
  margin-top: 72px;
  padding-top: 58px;
  border-top: 1px solid var(--line);
}
.package-comparison > div:first-child p:not(.eyebrow) { color: var(--muted); }
.comparison-scroll {
  overflow-x: auto;
  border: 1px solid var(--line);
  border-radius: 14px;
  box-shadow: 0 12px 35px rgba(13,93,97,.05);
}
.comparison-scroll:focus { outline: 3px solid rgba(44,154,154,.2); outline-offset: 3px; }
.comparison-scroll table {
  width: 100%;
  min-width: 850px;
  border-collapse: collapse;
  background: white;
  font-size: 12px;
}
.comparison-scroll th, .comparison-scroll td {
  padding: 15px 13px;
  text-align: center;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  vertical-align: middle;
}
.comparison-scroll th:first-child {
  width: 190px;
  text-align: left;
  color: var(--ink);
  background: #f7faf9;
}
.comparison-scroll thead th {
  color: var(--petrol-dark);
  background: var(--tint);
  font-size: 12px;
}
.comparison-scroll thead th.comparison-featured {
  color: white;
  background: var(--petrol-dark);
}
.comparison-scroll thead th.comparison-featured small { color: #d5e7e5; }
.comparison-scroll thead th.comparison-featured em {
  display: block;
  margin-top: 8px;
  color: #9cddd7;
  font-size: 9px;
  font-style: normal;
  font-weight: 850;
  letter-spacing: .07em;
  text-transform: uppercase;
}
.comparison-scroll tbody td.comparison-featured {
  background: #f0f8f7;
  box-shadow: inset 1px 0 #bcdcd8, inset -1px 0 #bcdcd8;
}
.comparison-scroll thead th:first-child { background: var(--petrol-dark); color: white; }
.comparison-scroll th small { display: block; margin-top: 4px; color: var(--muted); font-weight: 600; }
.comparison-scroll thead th:first-child small { color: white; }
.comparison-scroll tr:last-child th, .comparison-scroll tr:last-child td { border-bottom: 0; }
.comparison-scroll th:last-child, .comparison-scroll td:last-child { border-right: 0; }
.compare-yes { color: var(--petrol); font-size: 18px; font-weight: 900; }
.compare-no { color: #7a6861; font-size: 11px; }
.comparison-action a { color: var(--petrol); font-weight: 800; }
.addon-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
.addon-grid article {
  min-height: 245px;
  padding: 28px;
  background: white;
  border: 1px solid var(--line);
  border-radius: 15px;
}
.addon-grid span, .insurer-grid > article > span {
  color: var(--turquoise);
  font-size: 11px;
  font-weight: 850;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.addon-grid h3 { margin: 45px 0 10px; font-size: 21px; }
.addon-grid p { margin: 0; color: var(--muted); font-size: 14px; }
.application-process { padding-top: 30px; }

.insurer-section { padding-bottom: 35px; }
.insurer-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 15px;
}
.insurer-grid article {
  min-height: 285px;
  display: flex;
  flex-direction: column;
  padding: 28px;
  background: var(--soft);
  border: 1px solid #ebe6df;
  border-radius: 15px;
}
.insurer-grid article:nth-child(2) { background: var(--tint); border-color: #d4e6e3; }
.insurer-grid h3 { margin: 42px 0 11px; font-size: 22px; }
.insurer-grid p { color: var(--muted); font-size: 14px; }
.insurer-grid a { margin-top: auto; color: var(--petrol); font-size: 13px; font-weight: 800; }
.insurer-note {
  margin: 24px 0 0;
  padding-left: 18px;
  color: var(--muted);
  border-left: 3px solid var(--petrol);
  font-size: 13px;
}
.insurer-band {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 45px;
  padding: 22px max(28px, calc((100vw - 1240px) / 2));
  color: #d7e7e5;
  background: #12393c;
  font-size: 13px;
}
.insurer-band > div { display: flex; flex-wrap: wrap; gap: 13px 25px; align-items: center; }
.insurer-band span { color: #94d9d3; font-weight: 800; }
.insurer-band strong { color: white; }
.insurer-band a { color: white; font-weight: 800; text-decoration: underline; text-underline-offset: 4px; }

.helpful-strip {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
}
.helpful-strip a {
  position: relative;
  min-height: 175px;
  display: flex;
  flex-direction: column;
  padding: 23px;
  background: white;
  border: 1px solid #d8e7e4;
  border-radius: 13px;
  transition: transform .18s ease, border-color .18s ease;
}
.helpful-strip a:hover { transform: translateY(-3px); border-color: var(--turquoise); }
.helpful-strip h3 { margin: 0 30px 8px 0; font-size: 18px; }
.helpful-strip p { margin: 0; color: var(--muted); font-size: 13px; }
.helpful-strip span { position: absolute; right: 20px; bottom: 18px; color: var(--petrol); font-size: 20px; }
.helpful-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}
.helpful-grid > a {
  min-height: 270px;
  display: flex;
  flex-direction: column;
  padding: 29px;
  background: var(--soft);
  border: 1px solid #ebe6df;
  border-radius: 15px;
  transition: transform .18s ease, border-color .18s ease;
}
.helpful-grid > a:first-child {
  color: white;
  background: var(--petrol-dark);
  border-color: var(--petrol-dark);
}
.helpful-grid > a:hover { transform: translateY(-3px); border-color: var(--turquoise); }
.helpful-grid span { color: var(--turquoise); font-size: 11px; font-weight: 850; letter-spacing: .12em; }
.helpful-grid h2 { margin: 48px 0 10px; font-size: 25px; }
.helpful-grid p { color: var(--muted); font-size: 14px; }
.helpful-grid b { margin-top: auto; color: var(--petrol); font-size: 13px; }
.helpful-grid > a:first-child p { color: #c7ddda; }
.helpful-grid > a:first-child b { color: #9cddd7; }

.knowledge-topic-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 15px;
}
.knowledge-topic-grid a {
  min-height: 260px;
  display: flex;
  flex-direction: column;
  padding: 27px;
  color: white;
  background: var(--petrol-dark);
  border-radius: 15px;
}
.knowledge-topic-grid span { color: #9cddd7; font-size: 11px; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.knowledge-topic-grid h3 { margin: 43px 0 10px; font-size: 21px; }
.knowledge-topic-grid p { color: #c7ddda; font-size: 14px; }
.knowledge-topic-grid b { margin-top: auto; color: #9cddd7; font-size: 13px; }
.knowledge-service-link { margin-bottom: 95px; }

.practical-content { align-items: start; }
.practical-content .article-lead { max-width: 780px; color: var(--ink); font-size: 19px; }
.practical-blocks { display: grid; gap: 16px; margin-top: 38px; }
.practical-blocks article { padding: 27px; background: var(--soft); border: 1px solid #ebe6df; border-radius: 13px; }
.practical-blocks h3 { margin: 0 0 9px; font-size: 22px; }
.practical-blocks p { color: var(--muted); }
.practical-blocks ul, .article-sections ul {
  display: grid;
  gap: 9px;
  margin: 19px 0 0;
  padding: 0;
  list-style: none;
}
.practical-blocks li, .article-sections li { position: relative; padding-left: 24px; color: var(--muted); }
.practical-blocks li::before, .article-sections li::before { content: "✓"; position: absolute; left: 0; color: var(--petrol); font-weight: 900; }
.practical-links { display: grid; gap: 10px; }
.practical-links h3 { margin-bottom: 9px; }
.practical-links a { padding: 13px 0; border-top: 1px solid #cbdedb; }

.editorial-article {
  padding: 85px max(28px, calc((100vw - 1080px) / 2)) 70px;
}
.article-opening {
  display: grid;
  grid-template-columns: 1.25fr .75fr;
  gap: 65px;
  align-items: start;
  margin-bottom: 70px;
}
.article-lead { margin: 0; color: #344346; font-size: 22px; line-height: 1.55; }
.article-opening aside { padding: 28px; color: white; background: var(--petrol-dark); border-radius: 14px; }
.article-opening aside > span { color: #9cddd7; font-size: 11px; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.article-opening aside ul { display: grid; gap: 13px; margin: 23px 0 0; padding: 0; list-style: none; }
.article-opening aside li { position: relative; padding-left: 25px; color: #d3e5e3; font-size: 14px; }
.article-opening aside li::before { content: "✓"; position: absolute; left: 0; color: #9cddd7; font-weight: 900; }
.article-sections { max-width: 820px; }
.article-sections section { margin-bottom: 55px; }
.article-sections h2 { margin-bottom: 18px; font-size: 36px; }
.article-sections p { color: var(--muted); font-size: 17px; line-height: 1.75; }
.article-conclusion {
  margin-top: 70px;
  padding: 34px;
  background: var(--tint);
  border-left: 4px solid var(--petrol);
  border-radius: 10px;
}
.article-conclusion > p:not(.section-label) { color: #40595b; font-size: 18px; }
.article-conclusion > div { display: flex; flex-wrap: wrap; gap: 14px 25px; margin-top: 24px; }
.article-conclusion a { color: var(--petrol); font-weight: 800; }

@media (max-width: 1320px) {
  .desktop-nav { display: none; }
  .nav-actions { margin-left: auto; }
  .mobile-menu { position: relative; display: block; flex: 0 0 auto; }
  .mobile-menu > summary {
    min-width: 88px;
    min-height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 9px 14px;
    color: var(--petrol-dark);
    background: white;
    border: 1px solid var(--line);
    border-radius: 7px;
    cursor: pointer;
    font-size: 13px;
    font-weight: 800;
    list-style: none;
  }
  .mobile-menu > summary::-webkit-details-marker { display: none; }
  .mobile-menu > summary i,
  .mobile-menu > summary i::before,
  .mobile-menu > summary i::after {
    width: 16px;
    height: 2px;
    display: block;
    background: currentColor;
    border-radius: 2px;
  }
  .mobile-menu > summary i { position: relative; }
  .mobile-menu > summary i::before,
  .mobile-menu > summary i::after { position: absolute; left: 0; content: ""; }
  .mobile-menu > summary i::before { top: -5px; }
  .mobile-menu > summary i::after { top: 5px; }
  .mobile-menu[open] > summary i { background: transparent; }
  .mobile-menu[open] > summary i::before { top: 0; transform: rotate(45deg); }
  .mobile-menu[open] > summary i::after { top: 0; transform: rotate(-45deg); }
  .mobile-menu nav {
    position: absolute;
    inset: calc(100% + 14px) 0 auto auto;
    width: min(430px, calc(100vw - 32px));
    display: grid;
    padding: 12px;
    background: white;
    border: 1px solid var(--line);
    border-radius: 14px;
    box-shadow: 0 24px 60px rgba(7,72,75,.2);
  }
  .mobile-menu nav a {
    display: grid;
    gap: 2px;
    padding: 13px 14px;
    border-radius: 8px;
  }
  .mobile-menu nav a:hover { color: var(--petrol-dark); background: var(--tint); }
  .mobile-menu nav b { font-size: 14px; }
  .mobile-menu nav small { color: var(--muted); font-size: 11px; }
  .mobile-menu nav .mobile-menu-cta {
    display: flex;
    justify-content: space-between;
    margin-top: 7px;
    color: white;
    background: var(--copper);
    font-size: 14px;
    font-weight: 800;
  }
  .mobile-menu nav .mobile-menu-cta:hover { color: white; background: var(--copper-dark); }
  .choice-grid, .risk-grid { grid-template-columns: repeat(2, 1fr); }
  .directory-grid { grid-template-columns: repeat(2, 1fr); }
  .knowledge-grid { grid-template-columns: repeat(2, 1fr); }
  .check-grid, .damage-type-grid { grid-template-columns: repeat(2, 1fr); }
  .package-grid { grid-template-columns: repeat(2, 1fr); }
  .addon-grid, .insurer-grid, .knowledge-topic-grid, .helpful-strip { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 1510px) and (min-width: 1321px) {
  .desktop-nav { gap: 15px; font-size: 12px; }
  .nav-actions { gap: 11px; padding-left: 14px; }
  .brand img { width: 240px; }
  .nav-shell { gap: 20px; }
  .button-small { padding-inline: 14px; font-size: 13px; }
}
@media (max-width: 860px) {
  body { padding-bottom: 62px; }
  .site-header { min-height: 74px; }
  .nav-shell { width: calc(100% - 32px); min-height: 74px; }
  .nav-actions { display: none; }
  .mobile-menu { margin-left: auto; }
  .hero { display: flex; flex-direction: column; min-height: auto; }
  .direct-bar { justify-content: space-between; }
  .direct-bar strong { display: none; }
  .hero-copy { padding: 54px 24px 46px; }
  h1 { font-size: clamp(43px, 12vw, 62px); }
  .hero-intro { font-size: 17px; }
  .trust-row { grid-template-columns: 1fr; gap: 13px; }
  .trust-row span + span { padding-left: 0; border-left: 0; }
  .hero-image { min-height: 420px; order: -1; background-position: 57% center; }
  .hero-image::before { display: none; }
  .hero-shield { left: -70px; bottom: -210px; }
  .section { padding: 76px 24px; }
  .split-heading, .why-grid, .trust-panel, .faq-layout, .final-cta { grid-template-columns: 1fr; gap: 35px; }
  .page-hero, .content-block, .inline-cta, .candor-route { grid-template-columns: 1fr; gap: 36px; }
  .form-page-hero, .green-plate-hero, .pillar-hero { grid-template-columns: 1fr; gap: 35px; }
  .consent-banner { grid-template-columns: 1fr; gap: 18px; }
  .page-hero { padding-block: 65px; }
  .page-hero-card { max-width: 560px; }
  .content-aside { max-width: 480px; }
  .inline-cta { margin-inline: 24px; }
  .contact-grid { grid-template-columns: 1fr; }
  .split-heading { align-items: start; }
  .coverage-grid { grid-template-columns: repeat(2, 1fr); }
  .company-grid { grid-template-columns: repeat(2, 1fr); }
  .why-grid > div:first-child, .faq-layout > div:first-child { position: static; }
  .steps { grid-template-columns: repeat(2, 1fr); }
  .trust-panel { padding: 30px; }
  .footer-grid { grid-template-columns: repeat(2, 1fr); }
  .fact-band, .scope-grid, .content-two-column, .conversion-panel, .rdb-sources { grid-template-columns: 1fr; }
  .route-cards, .sector-grid, .coverage-map { grid-template-columns: repeat(2, 1fr); }
  .risk-detail-grid { grid-template-columns: repeat(2, 1fr); }
  .pillar-hero { padding-block: 64px; }
  .conversion-panel { gap: 28px; padding: 34px; }
  .rdb-sources { gap: 35px; }
  .mobile-actions { position: fixed; inset: auto 0 0; z-index: 60; display: grid; grid-template-columns: repeat(3, 1fr); min-height: 62px; color: white; background: #102f32; box-shadow: 0 -10px 30px rgba(0,0,0,.12); }
  .mobile-actions a { display: grid; place-items: center; border-right: 1px solid rgba(255,255,255,.14); font-size: 13px; font-weight: 750; }
  .mobile-actions a:last-child { background: var(--copper); }
  .whatsapp-chat { right: 14px; bottom: 76px; }
  .document-grid, .news-grid { grid-template-columns: repeat(2, 1fr); }
  .route-switch { justify-content: space-between; }
  .package-comparison, .article-opening { grid-template-columns: 1fr; gap: 30px; }
  .poets-route-callout { align-items: flex-start; flex-direction: column; gap: 11px; }
  .helpful-grid { grid-template-columns: repeat(2, 1fr); }
  .insurer-band { align-items: flex-start; flex-direction: column; gap: 12px; }
}
@media (max-width: 560px) {
  .brand img { width: 205px; }
  .mobile-menu > summary { min-width: 48px; padding-inline: 11px; }
  .mobile-menu > summary span { display: none; }
  .hero-image { min-height: 280px; }
  h1 { font-size: 44px; }
  h2 { font-size: 35px; }
  .hero-actions .button { width: 100%; }
  .direct-bar { align-items: flex-start; gap: 8px; padding-inline: 18px; font-size: 12px; }
  .direct-bar > div { display: block; }
  .direct-bar > a { text-align: right; }
  .choice-grid, .risk-grid, .coverage-grid, .why-points, .steps, .footer-grid, .directory-grid, .benefit-list, .knowledge-grid, .green-form-assurance, .package-grid, .document-grid, .news-grid { grid-template-columns: 1fr; }
  .addon-grid, .insurer-grid, .knowledge-topic-grid, .helpful-strip, .helpful-grid { grid-template-columns: 1fr; }
  .fact-band, .scope-grid, .route-cards, .sector-grid, .risk-detail-grid, .coverage-map { grid-template-columns: 1fr; }
  .rdb-compare { border-radius: 0; border-inline: 0; }
  .rdb-compare-head { display: none !important; }
  .rdb-compare > div { grid-template-columns: 1fr; gap: 5px; padding: 24px; }
  .fact-band { padding-inline: 0; }
  .fact-band > div { min-height: 110px; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.14); }
  .pillar-hero { padding: 58px 24px 62px; }
  .pillar-hero h1 { font-size: 43px; }
  .product-pillar-hero h1 { font-size: 39px; }
  .definition-card { padding: 29px; border-radius: 16px 16px 52px 16px; }
  .numbered-checks li { grid-template-columns: 1fr; gap: 5px; }
  .conversion-panel { margin-top: 48px; padding: 29px; }
  .conversion-panel h2 { font-size: 31px; }
  .hybrid-list article { grid-template-columns: 1fr; gap: 7px; }
  .page-hero h1 { font-size: 43px; }
  .page-hero-card { display: none; }
  .author-box { grid-template-columns: 1fr; margin-inline: 24px; }
  .quote-form, .damage-form { padding: 24px; }
  .form-grid, .check-grid, .damage-type-grid { grid-template-columns: 1fr; }
  .compact-checks { grid-template-columns: 1fr; }
  .form-page-hero h1 { font-size: 43px; }
  .green-plate-hero { padding: 60px 24px; }
  .green-plate-hero h1 { font-size: 43px; }
  .green-proof-row { display: grid; }
  .green-info-card { padding: 28px; border-radius: 16px 16px 50px 16px; }
  .fast-form-heading h2 { font-size: 34px; }
  .form-navigation { align-items: stretch; }
  .form-navigation .button { flex: 1; padding-inline: 12px; }
  .consent-banner { inset: auto 10px 72px; padding: 20px; }
  .whatsapp-launcher { min-height: 54px; padding: 9px 16px 9px 10px; }
  .whatsapp-launcher-icon { width: 34px; height: 34px; }
  .whatsapp-panel { width: calc(100vw - 28px); }
  .company-grid { grid-template-columns: 1fr; }
  .choice-card { min-height: 220px; }
  .risk-grid article { min-height: 210px; }
  .risk-grid h3 { margin-top: 38px; }
  .footer-bottom { flex-direction: column; }
  .package-card { min-height: auto; }
  .package-calculator-card { min-height: 0; }
  .package-core-list { min-height: 0; }
  .package-audience { min-height: 0; }
  .package-note { grid-template-columns: 1fr; gap: 6px; }
  .selected-package { grid-template-columns: 1fr; gap: 3px; }
  .handelaarskenteken-block { padding: 20px; }
  .handelaarskenteken-heading { grid-template-columns: 1fr; gap: 18px; }
  .address-heading { align-items: flex-start; flex-direction: column; }
  .owner-card { padding: 20px; }
  .slot-follow-up { padding: 16px; }
  .route-switch { align-items: flex-start; flex-direction: column; gap: 12px; }
  .candor-route { margin-inline: 24px; padding: 29px; }
  .candor-route h2 { font-size: 30px; }
  .package-comparison { margin-top: 50px; padding-top: 42px; }
  .comparison-scroll { margin-inline: -8px; border-radius: 9px; }
  .editorial-article { padding: 64px 24px 50px; }
  .article-lead { font-size: 19px; }
  .article-sections h2 { font-size: 31px; }
  .article-sections p { font-size: 16px; }
  .article-conclusion { padding: 27px; }
}

@media (prefers-reduced-motion: reduce) {
  * { scroll-behavior: auto !important; transition: none !important; }
}

/* Verzeker Je Garage design system */
.page-hero,
.pillar-hero,
.form-page-hero,
.green-plate-hero {
  border-bottom-color: var(--line);
}

.choice-card,
.knowledge-grid > a,
.why-points article,
.trust-panel,
.directory-grid > a,
.content-aside,
.coverage-map article,
.sector-grid article,
.risk-detail-grid article,
.route-cards article,
.scope-grid article,
.document-grid > a,
.news-card,
.addon-grid article,
.insurer-grid article,
.helpful-grid > a,
.package-card,
.quote-form,
.damage-form,
.short-form,
.form-success,
.definition-card,
.urgent-card,
.inline-cta,
.conversion-panel,
.page-hero-card,
.green-info-card {
  border-radius: var(--radius-card);
}

.choice-card,
.knowledge-grid > a,
.why-points article,
.trust-panel,
.directory-grid > a,
.coverage-map article,
.sector-grid article,
.risk-detail-grid article,
.route-cards article,
.document-grid > a,
.news-card,
.addon-grid article,
.insurer-grid article,
.helpful-grid > a,
.package-card,
.quote-form,
.damage-form,
.short-form {
  box-shadow: var(--shadow-card);
}

.form-field > span {
  color: var(--ink);
  font-weight: 720;
}

.form-field input,
.form-field select,
.form-field textarea {
  border-color: #b9c3c9;
  border-radius: var(--radius-button);
}

.form-error {
  color: #7f1d1d;
  background: #fff1f1;
  border-left-color: var(--danger);
  border-radius: var(--radius-button);
}

.coverage-warning,
.warning-box {
  color: #69400a;
  background: #fff8e8;
  border-left-color: var(--warning);
  border-radius: var(--radius-button);
}

.form-success > span {
  background: var(--success);
}

.text-link,
.card-link,
.footer-grid a,
.source-links a {
  text-underline-offset: 3px;
}

.text-link:hover,
.card-link:hover {
  text-decoration: underline;
}

.download-jump {
  width: min(1180px, calc(100% - 48px));
  margin: 34px auto 0;
  padding: 18px 22px;
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  border: 1px solid var(--line);
  border-radius: var(--radius-card);
  background: #fff;
  box-shadow: var(--shadow-card);
}

.download-jump span {
  color: var(--muted);
  font-size: 14px;
  font-weight: 750;
}

.download-jump a {
  padding: 8px 12px;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 999px;
  background: var(--soft);
  font-size: 14px;
  font-weight: 800;
  text-decoration: none;
}

.download-jump a:hover {
  color: var(--teal-dark);
  border-color: var(--teal);
}

.download-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.download-card {
  min-height: 245px;
  padding: 25px;
  display: flex;
  flex-direction: column;
  border: 1px solid var(--line);
  border-radius: var(--radius-card);
  background: #fff;
  box-shadow: var(--shadow-card);
  color: var(--ink);
  text-decoration: none;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.download-card:hover {
  transform: translateY(-3px);
  border-color: var(--teal);
  box-shadow: 0 16px 38px rgba(22, 42, 50, .11);
}

.download-card > span {
  color: var(--teal-dark);
  font-size: 12px;
  font-weight: 850;
  letter-spacing: .055em;
  text-transform: uppercase;
}

.download-card h3 {
  margin: 12px 0 9px;
  font-size: 21px;
  line-height: 1.2;
}

.download-card p {
  margin: 0 0 18px;
  color: var(--muted);
  line-height: 1.6;
}

.download-card b {
  margin-top: auto;
  color: var(--teal-dark);
  font-size: 14px;
}

.download-disclaimer {
  width: min(1180px, calc(100% - 48px));
  margin: 28px auto 78px;
  padding: 38px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  border-radius: var(--radius-card);
  background: var(--navy);
  color: #fff;
}

.download-disclaimer > div {
  max-width: 770px;
}

.download-disclaimer h2 {
  margin: 4px 0 10px;
  color: #fff;
  font-size: clamp(28px, 3vw, 40px);
}

.download-disclaimer p:last-child {
  margin-bottom: 0;
  color: #d7e0e3;
  line-height: 1.65;
}

@media (max-width: 860px) {
  .whatsapp-chat {
    display: none;
  }

  .footer-bottom {
    grid-template-columns: 1fr;
    align-items: start;
  }

  .footer-bottom div {
    justify-content: flex-start;
  }

  .download-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .download-disclaimer {
    align-items: flex-start;
    flex-direction: column;
  }
}

@media (max-width: 560px) {
  .brand img {
    width: min(205px, calc(100vw - 104px));
    max-height: 46px;
  }

  .nav-shell {
    gap: 12px;
  }

  .mobile-menu nav {
    right: -1px;
    width: calc(100vw - 32px);
    max-height: calc(100vh - 96px);
    overflow-y: auto;
  }

  .button {
    min-height: 50px;
  }

  .footer-bottom {
    display: grid;
  }

  .download-jump,
  .download-disclaimer {
    width: calc(100% - 32px);
  }

  .download-jump {
    margin-top: 24px;
  }

  .download-grid {
    grid-template-columns: 1fr;
  }

  .download-card {
    min-height: 0;
  }

  .download-disclaimer {
    margin-bottom: 92px;
    padding: 26px;
  }
}

/* ===== WordPress compatibility ===== */
html body.vjg-sitekit { margin:0 !important; padding:0 !important; background:#fff !important; color:var(--ink) !important; font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif !important; font-size:16px !important; line-height:1.6 !important; }
body.vjg-sitekit .site-header, body.vjg-sitekit .site-header *, body.vjg-sitekit .vjg-page-content, body.vjg-sitekit .vjg-page-content *, body.vjg-sitekit .site-footer, body.vjg-sitekit .site-footer *, body.vjg-sitekit .mobile-actions, body.vjg-sitekit .mobile-actions *, body.vjg-sitekit .whatsapp-chat, body.vjg-sitekit .whatsapp-chat *, body.vjg-sitekit .consent-banner, body.vjg-sitekit .consent-banner * { font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif !important; box-sizing:border-box; }
body.vjg-sitekit #page, body.vjg-sitekit .site, body.vjg-sitekit .site-content, body.vjg-sitekit .content-area, body.vjg-sitekit .site-main, body.vjg-sitekit .ast-container, body.vjg-sitekit .entry-content { width:100% !important; max-width:none !important; margin:0 !important; padding:0 !important; }
body.vjg-sitekit .vjg-page-content { display:block !important; width:100% !important; min-height:240px; overflow:visible !important; }
body.vjg-sitekit .vjg-page-content > * { max-width:none !important; }
body.vjg-sitekit .site-header ul, body.vjg-sitekit .site-footer ul, body.vjg-sitekit .site-header li, body.vjg-sitekit .site-footer li { list-style:none !important; margin:0 !important; padding:0 !important; }
body.vjg-sitekit .site-header li::marker, body.vjg-sitekit .site-footer li::marker { content:""; }
body.vjg-sitekit .vjg-desktop-menu { display:flex !important; align-items:center !important; gap:19px !important; }
body.vjg-sitekit .vjg-footer-menu { display:grid !important; gap:8px !important; }
body.vjg-sitekit a { text-decoration:none; }
body.vjg-sitekit .vjg-page-content img { max-width:100%; height:auto; }
body.vjg-sitekit .whatsapp-panel[hidden], body.vjg-sitekit .consent-banner[hidden] { display:none !important; }
body.admin-bar.vjg-sitekit .site-header { top:32px; }
@media(max-width:782px){body.admin-bar.vjg-sitekit .site-header{top:46px}}

/* WordPress theme integration */
body.vjg-sitekit .site-header ul,body.vjg-sitekit .site-header li{list-style:none;margin:0;padding:0}
body.vjg-sitekit .desktop-nav .menu{display:flex;align-items:center;gap:19px;margin:0;padding:0}
body.vjg-sitekit .desktop-nav .menu a{display:block}
body.vjg-sitekit .wp-post-image{max-width:100%;height:auto;border-radius:14px}
body.vjg-sitekit .post-hero-image{margin:0 0 34px}
body.vjg-sitekit .article-copy{max-width:900px;margin-inline:auto}
body.vjg-sitekit .article-copy>:last-child{margin-bottom:0}
body.vjg-sitekit .vjg-admin-edit-note{display:none}
@media (max-width:980px){body.vjg-sitekit .desktop-nav .menu{display:none}}

/* VJG 1.5.3 regressiefixes */
.honeypot,.vjg-hp{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
/* De vaste grid-rijen uit 1.5.3 zijn verwijderd: die veroorzaakten overlap in de premiekaarten. */
.handelaarskenteken-block,.address-block,.owner-card{margin:22px 0;padding:20px;border:1px solid var(--line);border-radius:12px;background:#fbfdfc}
.handelaarskenteken-heading,.address-heading{display:flex;justify-content:space-between;gap:20px;align-items:start}
.handelaarskenteken-list,.owners-list{display:grid;gap:14px;margin-top:16px}.handelaarskenteken-card{padding:16px;border:1px solid var(--line);border-radius:10px;background:white}.handelaarskenteken-card h4,.owner-card h3{margin:0 0 14px}.owner-card{background:white}.slot-question{margin:0 0 16px;padding:18px;border:1px solid var(--line);border-radius:12px}.yes-no-choice{display:flex;gap:10px}.yes-no-choice label{display:flex;align-items:center;gap:7px;padding:9px 14px;border:1px solid var(--line);border-radius:9px;cursor:pointer}.slot-follow-up{margin-top:14px}.truth-check,.inline-check{display:flex;gap:10px;align-items:flex-start}.truth-check input,.inline-check input{margin-top:4px}.coverage-warning{margin-top:18px;padding:14px 16px;border-left:4px solid var(--petrol);background:var(--tint)}
.vjg-page-content>.wp-page-shell{max-width:1180px;margin:0 auto;padding:64px 24px}.wp-page-shell>h1{margin-bottom:24px}
@media(max-width:700px){.handelaarskenteken-heading,.address-heading{display:grid}.yes-no-choice{flex-wrap:wrap}}
.package-quick-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0 0 18px}.package-quick-nav a{display:grid;gap:4px;padding:15px 17px;color:var(--ink);background:white;border:1px solid var(--line);border-radius:11px}.package-quick-nav a:hover{border-color:var(--turquoise);background:var(--tint)}.package-quick-nav b{color:var(--petrol-dark)}.package-quick-nav span{color:var(--muted);font-size:12px}@media(max-width:700px){.package-quick-nav{grid-template-columns:1fr}}


/* VJG 1.5.7 - WordPress-editor en beheer */
[hidden]{display:none!important}

/* Lange titels mogen nooit meer onder het zijpaneel verdwijnen. */
.green-plate-hero>div,.green-plate-hero>aside,.pillar-hero>div,.pillar-hero>aside,.form-page-hero>div{min-width:0}
.green-plate-hero h1,.pillar-hero h1,.form-page-hero h1{max-width:none;overflow-wrap:anywhere;hyphens:auto}
@media (min-width:1021px){
  .green-plate-hero{grid-template-columns:minmax(0,1.5fr) minmax(300px,.58fr);gap:64px}
  .green-plate-hero h1{font-size:clamp(48px,4.35vw,66px);line-height:.98}
  .pillar-hero{grid-template-columns:minmax(0,1.48fr) minmax(300px,.62fr);gap:64px}
  .pillar-hero h1{font-size:clamp(46px,4.15vw,66px);line-height:1}
  .product-pillar-hero h1{font-size:clamp(45px,4vw,64px)}
}

/* Premiekaarten: flexibele rijen, wel rustig uitgelijnd, nooit tekst over elkaar. */
@media (min-width:901px){
  .package-calculator-grid .package-calculator-card{display:flex!important;flex-direction:column!important;grid-template-rows:none!important;min-height:920px!important;align-content:normal!important}
  .package-calculator-card .package-insurer{min-height:20px;margin:0 0 22px!important}
  .package-calculator-card h3{min-height:62px;margin:0 0 10px!important}
  .package-calculator-card .package-audience{min-height:76px;margin:0 0 8px!important}
  .package-calculator-card .package-detail-link{min-height:27px;margin:0 0 10px!important}
  .package-calculator-card .calculator-price{min-height:118px;margin:0 0 18px!important}
  .package-calculator-card .package-core-list{min-height:126px;margin:0 0 16px!important}
  .package-calculator-card .package-options{min-height:220px;margin:0 0 14px!important}
  .package-calculator-card .premium-breakdown{min-height:76px;margin:0 0 12px!important}
  .package-calculator-card .nn-registration-note{min-height:46px;margin:0 0 14px!important}
  .package-calculator-card>.button{margin-top:auto!important;align-self:stretch!important}
}
@media (max-width:900px){
  .package-calculator-card,.package-calculator-card h3,.package-calculator-card .package-audience,.package-calculator-card .calculator-price,.package-calculator-card .package-core-list,.package-calculator-card .package-options,.package-calculator-card .premium-breakdown,.package-calculator-card .nn-registration-note{min-height:0!important}
}
.package-calculator-card{overflow:visible}
.package-options legend{background:inherit}

/* Praktische pagina's terug naar de originele brede Sites-layout. */
.practical-content{width:100%;grid-template-columns:minmax(0,850px) minmax(280px,340px);gap:75px;padding:88px max(28px,calc((100vw - 1240px)/2));align-items:start}
.practical-content>*{min-width:0}
.practical-content .content-main h2{max-width:800px}
.practical-links{position:sticky;top:105px}
@media(max-width:1020px){.practical-content{grid-template-columns:1fr;gap:34px}.practical-links{position:static;max-width:560px}}

/* Contact: formulier als nette kaart in plaats van een formulier over de volle pagina. */
.contact-section{padding:80px max(28px,calc((100vw - 1180px)/2)) 105px;background:#f8faf9}
.contact-section .contact-grid{margin-bottom:34px}
.contact-section .contact-grid article{display:flex;flex-direction:column;min-height:245px;border:1px solid var(--line);background:#fff}
.contact-section .contact-grid h2{margin:34px 0 10px;font-size:25px}
.contact-section .contact-grid .text-link{margin-top:auto;color:var(--petrol);font-weight:800}
.contact-form-card{max-width:900px;margin:0 auto;padding:38px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 20px 60px rgba(31,63,64,.07)}
.contact-form-card>h2{margin:4px 0 8px;font-size:34px}.contact-form-card>p{color:var(--muted)}
.contact-form-card .short-form{max-width:none;margin:28px 0 0;padding:0;border:0;box-shadow:none}
.contact-form-card .form-navigation{margin-top:28px}
@media(max-width:760px){.contact-section .contact-grid{grid-template-columns:1fr}.contact-form-card{padding:25px}.contact-form-card .form-grid{grid-template-columns:1fr}}

/* Formulieren: één duidelijke volgende actie; verzenden pas in de laatste stap. */
.vjg-multistep .form-navigation{align-items:center}
.vjg-multistep [data-vjg-form-next]{margin-left:auto}
.vjg-multistep [data-vjg-form-submit]{margin-left:auto}
.green-plate-form .form-step,.quote-full .form-step{min-width:0}
.green-plate-form .selected-package{margin-top:24px}
.green-plate-form .form-progress,.quote-full .form-progress{position:sticky;top:84px;z-index:4;padding:12px 0 16px;background:#fff}
@media(max-width:700px){.form-shell{padding-inline:16px}.quote-form,.damage-form{padding:25px 18px}.form-grid{grid-template-columns:1fr}.form-field.wide{grid-column:auto}.green-plate-form .form-progress,.quote-full .form-progress{position:static}}

/* Nieuwe WordPress-pagina's en berichten blijven visueel onderdeel van VJG. */
.wp-page-shell{max-width:980px!important;margin:0 auto!important;padding:70px 28px 95px!important}
.wp-editor-content{font-size:17px;line-height:1.75}.wp-editor-content h2{margin-top:46px}.wp-editor-content img{max-width:100%;height:auto;border-radius:14px}.wp-editor-content a{color:var(--petrol);text-decoration:underline;text-underline-offset:3px}
.wp-editor-hero h1{overflow-wrap:anywhere}

/* Op smallere desktops blijven kaarten en hoofdcontent bruikbaar in plaats van ultradunne kolommen. */
@media(max-width:1180px) and (min-width:901px){
  .package-grid.package-calculator-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .package-calculator-grid .package-calculator-card{min-height:860px!important}
}

.selected-package{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:22px;align-items:center;padding:20px 22px;background:var(--petrol-dark);color:#fff;border-radius:13px}
.selected-package>div:first-child{display:grid;gap:3px}.selected-package>div:first-child span{color:#9cddd7;font-size:11px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.selected-package>div:first-child strong{font-size:20px}.selected-package-details{display:grid;gap:4px;color:#d3e5e3;font-size:12px}.selected-package>b{white-space:nowrap;color:#fff;font-size:17px}.form-inline-note{margin:14px 0 0;color:var(--muted);font-size:12px}.slot-intro,.declaration-box{margin:0 0 24px;padding:20px 22px;background:var(--tint);border-radius:12px}.slot-intro p:last-child{margin-bottom:0}.declaration-box ul{margin:12px 0 0;padding-left:20px}.declaration-box li{margin:7px 0}.route-notice{margin:18px 0;padding:16px 18px;background:#eef7f6;border-left:4px solid var(--petrol);border-radius:8px}.route-notice p{margin:6px 0 0;color:var(--muted)}
@media(max-width:700px){.selected-package{grid-template-columns:1fr}.selected-package>b{white-space:normal}}

/* 1.5.8: juridische informatie, FAQ en premie-overzicht */
.legal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:26px 0}.legal-grid article{border:1px solid #dfe6e8;border-radius:14px;padding:20px;background:#fff}.legal-grid h3{margin:0 0 8px;color:var(--ink)}.legal-grid p{margin:0}.legal-callout{margin:28px 0;padding:20px 22px;border-left:4px solid var(--petrol);background:#edf7f7;border-radius:0 12px 12px 0}.legal-callout p{margin:6px 0 0}.legal-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.legal-links a{font-weight:700}.faq-list details{border:1px solid #dfe6e8;border-radius:12px;background:#fff;margin:0 0 12px;padding:0 18px}.faq-list summary{cursor:pointer;font-weight:750;color:var(--ink);padding:18px 28px 18px 0;position:relative}.faq-list summary::after{content:'+';position:absolute;right:0;top:16px;color:var(--petrol);font-size:22px}.faq-list details[open] summary::after{content:'–'}.faq-list details p{margin:0 0 18px}.vjg-premium-breakdown{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 18px;margin-top:14px;padding-top:14px;border-top:1px solid rgba(53,61,81,.14);width:100%}.vjg-premium-breakdown span,.vjg-premium-breakdown strong{display:flex;justify-content:space-between;gap:12px;font-size:13px}.vjg-premium-breakdown strong{grid-column:1/-1;font-size:15px;padding-top:8px;border-top:1px solid rgba(53,61,81,.14)}.vjg-premium-breakdown small{grid-column:1/-1;color:var(--muted)}
@media(max-width:760px){.legal-grid{grid-template-columns:1fr}.vjg-premium-breakdown{grid-template-columns:1fr}.vjg-premium-breakdown strong,.vjg-premium-breakdown small{grid-column:auto}}


/* VJG Core 1.2.0 - optionele kansen */
.vjgc-opportunities{margin:24px 0 4px;padding:20px;border:1px solid #d9e4e4;border-radius:14px;background:#f7fbfb}
.vjgc-opportunities-head h3{margin:0 0 5px;font-size:1.05rem;color:#353d51}
.vjgc-opportunities-head p{margin:0 0 14px;color:#66707a;font-size:.94rem}
.vjgc-opportunity-options{display:grid;gap:9px}
.vjgc-opportunity{display:flex;gap:10px;align-items:flex-start;padding:11px 12px;border:1px solid #dce6e7;border-radius:10px;background:#fff;cursor:pointer}
.vjgc-opportunity input{margin-top:3px}
.vjgc-opportunity span{line-height:1.35}
.vjgc-opportunity-note{margin:12px 0 0;font-size:.82rem;color:#69717f}


/* VJG 1.6.9 - mobiele breedtefix handelaarskentekenvergelijker
   De brede vergelijkingstabel mag op mobiel alleen binnen zijn eigen container scrollen.
   Hij mag nooit de volledige pagina breder maken dan het scherm. */
.package-section,
.package-comparison,
.package-comparison > *,
.comparison-scroll {
  min-width: 0;
  max-width: 100%;
}
.comparison-scroll {
  width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-inline: contain;
}
.comparison-scroll table {
  max-width: none;
}
@media (max-width: 900px) {
  .package-grid,
  .package-card,
  .package-options,
  .registration-choice,
  .calculator-price,
  .premium-breakdown {
    min-width: 0;
    max-width: 100%;
  }
}
@media (max-width: 560px) {
  .comparison-scroll {
    margin-inline: 0;
    border-radius: 9px;
  }
  .package-section {
    overflow-x: clip;
  }
}


/* VJG 1.6.10 - harde mobiele viewportfix
   Op de handelaarskentekenpagina mag nooit het document zelf horizontaal scrollen.
   Alleen de vergelijkingstabel heeft bewust een eigen horizontale scroller. */
html,
body.vjg-sitekit {
  max-width: 100%;
  overflow-x: hidden;
  overscroll-behavior-x: none;
}
@supports (overflow: clip) {
  html,
  body.vjg-sitekit {
    overflow-x: clip;
  }
}
body.vjg-sitekit #page,
body.vjg-sitekit .site,
body.vjg-sitekit .site-content,
body.vjg-sitekit .content-area,
body.vjg-sitekit .site-main,
body.vjg-sitekit .vjg-page-content {
  max-width: 100% !important;
  overflow-x: clip !important;
}
body.vjg-sitekit .comparison-scroll {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow-x: auto !important;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-inline: contain;
}
body.vjg-sitekit .comparison-scroll table {
  width: 850px;
  min-width: 850px;
  max-width: none !important;
}
@media (max-width: 700px) {
  body.vjg-sitekit .pillar-hero,
  body.vjg-sitekit .fact-band,
  body.vjg-sitekit .section,
  body.vjg-sitekit .package-section,
  body.vjg-sitekit .package-grid,
  body.vjg-sitekit .package-card,
  body.vjg-sitekit .package-comparison,
  body.vjg-sitekit .package-comparison > *,
  body.vjg-sitekit .package-options,
  body.vjg-sitekit .registration-choice,
  body.vjg-sitekit .calculator-price,
  body.vjg-sitekit .premium-breakdown {
    min-width: 0 !important;
    max-width: 100% !important;
  }
  body.vjg-sitekit .package-card,
  body.vjg-sitekit .package-options {
    width: 100%;
  }
  body.vjg-sitekit fieldset.package-options {
    min-inline-size: 0;
  }
  body.vjg-sitekit .poets-route-callout {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
  }
  body.vjg-sitekit .poets-route-callout > *,
  body.vjg-sitekit .poets-route-callout a {
    min-width: 0;
    max-width: 100%;
  }
  body.vjg-sitekit .poets-route-callout a {
    white-space: normal;
    overflow-wrap: anywhere;
  }
  body.vjg-sitekit .breadcrumbs {
    flex-wrap: wrap;
    min-width: 0;
  }
  body.vjg-sitekit .premium-breakdown > span,
  body.vjg-sitekit .premium-breakdown > strong {
    min-width: 0;
    flex-wrap: wrap;
  }
}
