/* dps-live.css: aanvullingen voor de live site (livegang.py). Kleuren uit de huisstijl. */
.hp-hs-title .hs-kw{display:block;font-size:clamp(12px,1.05vw,15px);line-height:1.3;font-weight:700;
  letter-spacing:.12em;text-transform:uppercase;color:#4A42DD;margin:0 0 .9em;font-family:inherit}
@media (max-width:640px){.hp-hs-title .hs-kw{font-size:12px;letter-spacing:.1em;margin-bottom:.7em}}

/* tabellen in juridische teksten */
.dps-tabel-wrap{overflow-x:auto;margin:0 0 1.4em;-webkit-overflow-scrolling:touch}
.dps-tabel{width:100%;border-collapse:collapse;font-size:15px;line-height:1.45;min-width:560px}
.dps-tabel th,.dps-tabel td{text-align:left;padding:10px 12px;border-bottom:1px solid #e4e4ec;vertical-align:top}
.dps-tabel th{font-weight:700;background:#f4f4fb;color:#101014}
.dps-tabel td:first-child{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;white-space:nowrap}
@media (max-width:640px){
  .dps-tabel{min-width:0;font-size:15px}
  .dps-tabel thead{display:none}
  .dps-tabel tr{display:block;border:1px solid #e4e4ec;border-radius:16px;padding:10px 14px;margin:0 0 12px;background:#fff}
  .dps-tabel td{display:flex;gap:12px;justify-content:space-between;border:0;padding:6px 0;text-align:right}
  .dps-tabel td::before{content:attr(data-label);font-weight:700;text-align:left;font-family:inherit;flex:0 0 auto}
  .dps-tabel td:first-child{white-space:normal}
}
.dps-tekstknop{background:none;border:0;padding:0;font:inherit;color:#4A42DD;font-weight:600;text-decoration:underline;cursor:pointer}

/* blog (DPS SEO-engine) in de huisstijl, zie blog/_weergave.php */
.blog-kop .v2-gh-inner h1{font-size:clamp(32px,4.4vw,60px);line-height:1.08;max-width:18ch;margin-inline:auto}
.blog-meta{display:flex;flex-wrap:wrap;gap:6px 14px;justify-content:center;font-size:14px;opacity:.8;margin-top:6px}
.blog-artikel{font-size:17px;line-height:1.75}
.blog-artikel h2{margin:1.8em 0 .5em}
.blog-artikel h3{margin:1.4em 0 .4em}
.blog-artikel a{color:#4A42DD;font-weight:600}
.blog-artikel ul,.blog-artikel ol{padding-left:1.3em}
/* flex in plaats van grid: een onvolledige laatste rij staat gecentreerd, zonder gat ernaast */
.blog-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:24px;margin:0 auto;max-width:1180px}
.blog-grid>.blog-kaart{flex:0 1 calc((100% - 48px)/3)}
@media (max-width:980px){.blog-grid>.blog-kaart{flex-basis:calc((100% - 24px)/2)}}
@media (max-width:640px){.blog-grid>.blog-kaart{flex-basis:100%}}
.blog-kaart{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;background:#fff;
  border:1px solid #e4e4ec;border-radius:22px;padding:28px 24px;text-decoration:none;color:inherit;
  transition:transform .85s cubic-bezier(.22,.61,.36,1),box-shadow .85s cubic-bezier(.22,.61,.36,1)}
.blog-kaart:hover{transform:translateY(-4px);box-shadow:0 18px 40px -18px rgba(74,66,221,.35)}
.blog-kaart .blog-datum{font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:#4A42DD;font-weight:700}
.blog-kaart h2{font-size:20px;line-height:1.3;margin:0}
.blog-kaart p{font-size:15px;line-height:1.6;margin:0;opacity:.8}
.blog-kaart .blog-lees{margin-top:auto;font-weight:700;color:#4A42DD}
.blog-verder{max-width:760px;margin:48px auto 0;padding:32px 24px;border-radius:22px;background:#f4f4fb;text-align:center}
.blog-verder h2{margin:0 0 10px}
.blog-verder p{margin:0 0 18px}
.blog-verder ul{list-style:none;padding:0;margin:0 auto 22px;width:fit-content;text-align:left}
.blog-verder li{margin:6px 0}
.blog-verder li a{color:#4A42DD;font-weight:600}

@media print{.dps-tabel{min-width:0}.blog-kaart{break-inside:avoid}}
.blog-lijst{padding:64px 0 88px}

/* ronde 4: GEO-pagina en werkgebiedpagina's */
.geo-kort{border:1px solid rgba(74,66,221,.25)}
.geo-kort p{font-size:16px;line-height:1.65}
.geo-vink,.dxp-zij .geo-lees ul{list-style:none;padding:0;margin:0 0 1.2em}
.geo-vink li{display:flex;gap:10px;align-items:flex-start;margin:.55em 0;line-height:1.55}
.geo-vink li::before{content:"✓";color:#16a34a;font-weight:800;flex:0 0 auto}
.geo-slot{font-size:17px}
.dxp .geo-zelf-kop{margin-top:56px}
/* 5 stappen op een rij; op tablet 2 kolommen met de laatste over de volle breedte */
.dxp-stappen.geo-stappen{grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}
.dxp-stappen.geo-stappen li{padding:28px 18px}
@media (max-width:1100px){.dxp-stappen.geo-stappen{grid-template-columns:1fr 1fr}.dxp-stappen.geo-stappen li:last-child{grid-column:1 / -1}}
@media (max-width:640px){.dxp-stappen.geo-stappen{grid-template-columns:1fr}}
/* 9 andere expertises: 3 kolommen (3 volle rijen); tablet 2 kolommen met de laatste breed */
.dxp-expgrid.is-negen{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:980px){.dxp-expgrid.is-negen{grid-template-columns:1fr 1fr}.dxp-expgrid.is-negen > :last-child{grid-column:1 / -1}}
@media (max-width:640px){.dxp-expgrid.is-negen{grid-template-columns:1fr}}
.geo-lees{margin-top:22px;text-align:left}
.geo-lees b{display:block;margin:14px 0 6px}
.geo-lees li{margin:6px 0;line-height:1.45}
.geo-lees a{color:#4A42DD;font-weight:600}
.geo-tabel td:first-child{font-family:inherit;font-weight:700;white-space:normal}
.geo-stappen{counter-reset:none}
.stad-tekst .dxp-blok h3{margin-top:0}
.dps-xp .dps-kbo-raster.is-elf > li:first-child{grid-column:span 2;aspect-ratio:auto}
.dps-xp .dps-kbo-raster.is-elf > li:first-child small{max-width:52ch;font-size:14px}
.dps-xp .dps-kbo-raster.is-elf > li:first-child h2{font-size:22px !important}
@media (max-width:1023px){
  .dps-xp .dps-kbo-raster.is-elf > li:first-child{grid-column:auto;aspect-ratio:395/296}
  .dps-xp .dps-kbo-raster.is-elf > li:first-child h2{font-size:16px !important}
  .dps-xp .dps-kbo-raster.is-elf > li:last-child{grid-column:1 / -1}
}
@media (max-width:640px){.dps-xp .dps-kbo-raster.is-elf > li:last-child{grid-column:auto}}
