/* ==========================================================================
   Zakelijk v1 — Advocatenkantoor (alleen bij variant advocatenkantoor; handle bb-zakelijk-v1).
   Samengevoegd uit: team (deel 2), rechtsgebieden, v1-globaal, v1-patterns, v1-paginas.
   ========================================================================== */

/* ---------- Deel 2 — v1: expertise en talen op het profiel ---------- */
.bb-profiel .bb-profiel__chips a { color: inherit; text-decoration: none; }
.bb-profiel .bb-profiel__chips a:hover { text-decoration: underline; }
.bb-profiel .bb-profiel__chips li:has(a:focus-visible) { outline: 3px solid var(--klant-accent-op-licht); outline-offset: 2px; }
.bb-profiel .bb-profiel__chips a:focus-visible { outline: none; }
.bb-profiel .bb-profiel__feiten { margin: 8px 0 0; display: grid; gap: 10px; }
.bb-profiel .bb-profiel__feit { display: grid; grid-template-columns: minmax(0, 220px) minmax(0, 1fr); gap: 4px 20px; }
.bb-profiel .bb-profiel__feit dt { font-weight: 700; color: var(--bb-kop); }
.bb-profiel .bb-profiel__feit dd { margin: 0; }
@media (max-width: 640px) {
	.bb-profiel .bb-profiel__feit { grid-template-columns: 1fr; }
}

/* Teamkaart: talenregel. */
.bb-behandelaar__talen .bb-icoon { color: var(--klant-accent-op-licht); }

/* ---------- Deel 2 — v1: advocatenstrip ---------- */
.bb-advocatenstrip__lijst {
	list-style: none; margin: 0; padding: 0;
	display: grid; grid-template-columns: repeat(auto-fill, minmax(min(210px, 100%), 1fr)); gap: clamp(20px, 2.4vw, 32px);
}
.bb-advocatenstrip__item { display: flex; flex-direction: column; gap: 14px; }
.bb-advocatenstrip__foto .bb-behandelaar__foto {
	width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover;
	border-radius: var(--bb-radius-foto);
}
.bb-advocatenstrip__foto .bb-behandelaar__foto--leeg { display: grid; }
.bb-advocatenstrip__body { display: flex; flex-direction: column; gap: 8px; }
.bb-advocatenstrip__naam { font-size: 1.15rem; }
.bb-advocatenstrip__naam a { color: var(--bb-kop); text-decoration: none; }
.bb-advocatenstrip__naam a:hover { text-decoration: underline; }
.bb-advocatenstrip__functie { color: var(--klant-accent-op-licht); font-weight: 700; font-size: .9375rem; margin-top: -4px !important; }
.bb-advocatenstrip__profiel { margin-top: 4px; }
.bb-sectie--donker .bb-advocatenstrip__naam a, .bb-sectie--donker .bb-advocatenstrip__functie { color: var(--klant-primair-tekst); }
@media (max-width: 480px) {
	.bb-advocatenstrip__lijst { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
	.bb-advocatenstrip__naam { font-size: 1rem; }
}

/* ==========================================================================
 * Zakelijk v1 — rechtsgebieden (inc/zakelijk/v1/rechtsgebieden.php)
 * Kaarten, groepen particulier/ondernemer, situaties, termijnmelding, prijstabellen en de terug-link.
 * Kleuren via tokens (--bb-*, --klant-*); nooit puur zwart of wit.
 * ======================================================================= */

/* ---------- Rechtsgebiedkaarten ([bb_rechtsgebieden], [bb_rechtsgebied_subgebieden]) ---------- */
.bb-rechtsgebiedkaarten {
	list-style: none; margin: 0; padding: 0;
	display: grid; gap: 14px; grid-template-columns: repeat(auto-fill, minmax(min(100%, 280px), 1fr));
}
.bb-rechtsgebiedkaarten > li { margin: 0; min-width: 0; }
.bb-rechtsgebiedkaart {
	display: flex; align-items: flex-start; gap: 14px; height: 100%; box-sizing: border-box; padding: 18px 20px;
	background: var(--bb-kaart); border: 1px solid var(--bb-rand); border-radius: var(--bb-radius);
	box-shadow: var(--bb-schaduw); color: var(--bb-tekst) !important; text-decoration: none !important;
	transition: transform .15s, border-color .15s;
}
.bb-rechtsgebiedkaart:hover { transform: translateY(-2px); border-color: var(--klant-accent); }
.bb-rechtsgebiedkaart:focus-visible { outline: 3px solid var(--klant-accent-op-licht); outline-offset: 2px; }
.bb-rechtsgebiedkaart .bb-icoonrond { width: 48px; height: 48px; flex: none; }
.bb-rechtsgebiedkaart .bb-icoonrond .bb-icoon { width: 24px; height: 24px; }
.bb-rechtsgebiedkaart__tekst { flex: 1; min-width: 0; display: grid; gap: 4px; }
.bb-rechtsgebiedkaart__titel {
	font-family: var(--bb-font-koppen); font-weight: var(--bb-kop-gewicht); letter-spacing: var(--bb-kop-spatie);
	font-size: 1.125rem; line-height: 1.3; color: var(--bb-kop);
}
.bb-rechtsgebiedkaart__zin { color: var(--bb-muted); font-size: .95rem; line-height: 1.5; }
.bb-rechtsgebiedkaart__sub { color: var(--bb-muted); font-size: .875rem; font-weight: 600; line-height: 1.45; }
.bb-rechtsgebiedkaart__pijl { color: var(--klant-accent-op-licht); align-self: center; transition: transform .15s; }
.bb-rechtsgebiedkaart:hover .bb-rechtsgebiedkaart__pijl { transform: translateX(3px); }

/* Eenvoudige lijst (weergave="lijst"); de doelgroepkaarten stylen hun eigen lijst. */
.bb-rechtsgebiedenlijst:not(.bb-doelgroepkeuze__items) { list-style: none; margin: 0; padding: 0; display: grid; gap: 2px; }
.bb-rechtsgebiedenlijst:not(.bb-doelgroepkeuze__items) a {
	display: inline-flex; align-items: center; gap: .4em; min-height: 40px; font-weight: 600; text-decoration: none;
}
.bb-rechtsgebiedenlijst:not(.bb-doelgroepkeuze__items) a:hover { text-decoration: underline; }

/* ---------- Groepen "Voor particulieren" / "Voor ondernemers" (gegroepeerd="1") ---------- */
.bb-rechtsgebiedgroepen { display: grid; gap: clamp(36px, 5vw, 56px); }
.bb-rechtsgebiedgroep { display: grid; gap: 18px; align-content: start; min-width: 0; scroll-margin-top: 120px; }
.bb-rechtsgebiedgroep__kop {
	display: flex; align-items: center; gap: 12px; padding-bottom: 14px; border-bottom: 1px solid var(--bb-rand);
}
.bb-rechtsgebiedgroep__kop .bb-icoonrond { width: 44px; height: 44px; flex: none; }
.bb-rechtsgebiedgroep__kop .bb-icoonrond .bb-icoon { width: 22px; height: 22px; }
.bb-rechtsgebiedgroep__kop :is(h2, h3, h4, p) { margin: 0; font-size: clamp(1.3rem, 1.1rem + .8vw, 1.65rem); }
.bb-rechtsgebiedgroep .bb-rechtsgebiedkaarten { grid-template-columns: 1fr; }
.bb-rechtsgebiedgroep__link { margin: 0; }
@media (min-width: 900px) {
	.bb-rechtsgebiedgroepen { grid-template-columns: 1fr 1fr; gap: 32px; }
}
.bb-sectie--donker .bb-rechtsgebiedgroep__kop { border-bottom-color: currentColor; }

/* ---------- Veelvoorkomende situaties ---------- */
.bb-situaties__lijst {
	list-style: none; margin: 0; padding: 0;
	display: grid; gap: 14px; grid-template-columns: repeat(auto-fill, minmax(min(100%, 240px), 1fr));
}
.bb-situatie {
	display: grid; gap: 6px; align-content: start; margin: 0; padding: 18px 20px;
	background: var(--bb-kaart); color: var(--bb-tekst);
	border: 1px solid var(--bb-rand); border-top: 3px solid var(--klant-accent); border-radius: var(--bb-radius);
	box-shadow: var(--bb-schaduw);
}
.bb-situatie__titel { margin: 0; font-size: 1.08rem; line-height: 1.3; color: var(--bb-kop); }
.bb-situatie__zin { margin: 0; color: var(--bb-muted); font-size: .95rem; line-height: 1.5; }

/* ---------- Termijnwaarschuwing: opvallend, maar rustig van kleur ---------- */
.bb-termijn {
	--bb-termijn-vlak: #FBF4E4;
	--bb-termijn-rand: #B9862E;
	--bb-termijn-tekst: #3D3017;
	--bb-termijn-icoon: #8A6118;
	display: flex; align-items: flex-start; gap: 14px; max-width: 860px; box-sizing: border-box;
	padding: 16px 20px; background: var(--bb-termijn-vlak); color: var(--bb-termijn-tekst);
	border: 1px solid rgba(185, 134, 46, .35); border-left: 4px solid var(--bb-termijn-rand); border-radius: var(--bb-radius);
}
.bb-termijn p { margin: 0; color: var(--bb-termijn-tekst); }
.bb-termijn__icoon {
	flex: none; display: inline-grid; place-items: center; width: 40px; height: 40px; border-radius: 50%;
	background: rgba(185, 134, 46, .16); color: var(--bb-termijn-icoon);
}
.bb-termijn__icoon .bb-icoon { width: 22px; height: 22px; }
.bb-termijn__tekst { flex: 1; min-width: 0; display: grid; gap: 6px; }
.bb-termijn__kop { font-size: .8125rem; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; }
.bb-termijn__melding { font-size: 1.02rem; line-height: 1.55; }
.bb-page .bb-termijn a, .bb-sectie--donker .bb-termijn a {
	display: inline-flex; align-items: center; gap: .4em; min-height: 32px;
	color: var(--bb-termijn-tekst) !important; font-weight: 700; text-underline-offset: .18em;
}
.bb-termijn a .bb-icoon { color: var(--bb-termijn-icoon); }
@media (max-width: 480px) {
	.bb-termijn { padding: 14px 16px; gap: 12px; }
	.bb-termijn__icoon { width: 34px; height: 34px; }
}

/* ---------- Vaste prijzen ([bb_rechtsgebied_prijzen], [bb_rechtsgebieden_prijzen]) ---------- */
.bb-prijzenblok { display: grid; gap: 10px; min-width: 0; }
.bb-prijzen {
	width: 100%; border-collapse: separate; border-spacing: 0; font-size: .975rem; color: var(--bb-tekst);
	background: var(--bb-kaart); border: 1px solid var(--bb-rand); border-radius: var(--bb-radius); overflow: hidden;
}
.bb-prijzen :is(th, td) { padding: 12px 16px; text-align: left; vertical-align: top; border-bottom: 1px solid var(--bb-rand); }
.bb-prijzen thead th { background: var(--klant-primair-zacht); color: var(--klant-primair-op-licht); font-size: .875rem; font-weight: 700; }
.bb-prijzen thead th:last-child, .bb-prijzen__prijs { text-align: right; white-space: nowrap; }
.bb-prijzen__dienst { font-weight: 600; color: var(--bb-tekst); overflow-wrap: anywhere; }
.bb-prijzen__prijs { font-weight: 700; color: var(--klant-primair-op-licht); }
.bb-prijzen__aanvraag { font-weight: 600; color: var(--bb-muted); }
.bb-prijzen > tbody:last-child > tr:last-child > * { border-bottom: 0; }
.bb-prijzen__gebied th { background: var(--bb-vlak); font-family: var(--bb-font-koppen); font-size: 1.02rem; font-weight: var(--bb-kop-gewicht); }
.bb-prijzen__gebied a { color: var(--bb-kop) !important; text-decoration: none; }
.bb-prijzen__gebied a:hover { text-decoration: underline; }
.bb-prijzenblok__noot { margin: 0; font-size: .9rem; color: var(--bb-muted); max-width: 70ch; }
.bb-sectie--donker .bb-prijzenblok__noot { color: inherit; opacity: .9; }
@media (max-width: 480px) {
	.bb-prijzen, .bb-prijzen tbody, .bb-prijzen tr, .bb-prijzen th, .bb-prijzen td { display: block; }
	.bb-prijzen thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); }
	.bb-prijzen tbody tr:not(.bb-prijzen__gebied) { padding: 10px 14px; border-bottom: 1px solid var(--bb-rand); }
	.bb-prijzen > tbody:last-child > tr:last-child { border-bottom: 0; }
	.bb-prijzen tbody tr:not(.bb-prijzen__gebied) > * { padding: 0; border: 0; }
	.bb-prijzen__prijs { text-align: left; white-space: normal; margin-top: 2px; }
	.bb-prijzen__gebied th { padding: 10px 14px; border-bottom: 1px solid var(--bb-rand); }
}

/* ---------- Teamkaarten bij een rechtsgebied ---------- */
.bb-rechtsgebied-team { margin: 0; }

/* ---------- Subgebied: terug naar het hoofdgebied ---------- */
.bb-terug { margin: 0; }
.bb-terug__link { display: inline-flex; align-items: center; gap: .45em; min-height: 44px; font-weight: 700; text-decoration: none; }
.bb-terug__link:hover { text-decoration: underline; text-underline-offset: .18em; }
.bb-terug__pijl { display: inline-block; transition: transform .15s; }
.bb-terug__link:hover .bb-terug__pijl { transform: translateX(-3px); }

@media (prefers-reduced-motion: reduce) {
	.bb-rechtsgebiedkaart, .bb-rechtsgebiedkaart__pijl, .bb-terug__pijl { transition: none; }
	.bb-rechtsgebiedkaart:hover, .bb-rechtsgebiedkaart:hover .bb-rechtsgebiedkaart__pijl, .bb-terug__link:hover .bb-terug__pijl { transform: none; }
}

/*
 * Zakelijk v1 (Advocatenkantoor) — globale onderdelen en het formulier Zaak voorleggen (bouwer F).
 * Deelbestand: wordt samengevoegd in assets/css/zakelijk-v1.css (handle bb-zakelijk-v1, alleen bij de
 * variant Advocatenkantoor, na zakelijk.css). Gebruikt de tokens --bb-* en --klant-*, dus Klassiek,
 * Strak en Toegankelijk werken automatisch mee. Nooit #000 of #FFF.
 */

/* ---------- Spoedregel (infobalk boven de header; basis uit zorg-v3.css) ---------- */
.bb-infobalk { background: var(--klant-accent-zacht); color: var(--klant-primair-op-licht); font-size: .9375rem; line-height: 1.4; }
.bb-infobalk__wrap { max-width: var(--bb-wrap); margin-inline: auto; padding: .55em var(--bb-gutter); display: flex; align-items: center; justify-content: center; gap: .3em .75em; flex-wrap: wrap; text-align: center; }
.bb-infobalk__item { display: inline-flex; align-items: center; gap: .4em; font-weight: 600; }
.bb-infobalk .bb-icoon { width: 1.15em; height: 1.15em; stroke-width: 2.2; flex: none; }
@media (max-width: 640px) { .bb-infobalk { font-size: .8125rem; } .bb-infobalk__punt { display: none; } .bb-infobalk__wrap { flex-direction: column; gap: .2em; } }

/* Rustig van kleur: de tint van de huisstijlkleur, het nummer duidelijk als link. */
.bb-spoedregel { background: var(--klant-primair-zacht); }
.bb-spoedregel a { color: inherit; font-weight: 700; text-decoration: underline; text-underline-offset: .2em; white-space: nowrap; }
.bb-spoedregel a:hover { text-decoration-thickness: 2px; }
.bb-spoedregel a:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; border-radius: 2px; }
.bb-spoedregel__tekst { font-weight: 400; }

/* ---------- Header: telefoon + hoofdknop ----------
 * Blocksy maakt de logo- en de actiekolom even breed om het menu te centreren. De actiekolom van v1
 * (telefoonnummer + "Plan een gratis kennismakingsgesprek") is breed: logo en acties krijgen hun eigen
 * breedte, het menu de rest (zelfde aanpak als Zorg v2). */
.bb-variant-advocatenkantoor #header [data-device="desktop"] [data-row="middle"] > .ct-container { grid-template-columns: auto minmax(0, 1fr) auto; column-gap: 24px; }
.bb-variant-advocatenkantoor #header [data-device="desktop"] [data-row="middle"] [data-column="middle"] { justify-content: center; }
.bb-variant-advocatenkantoor .bb-header-tel .bb-icoon { flex: none; }
@media (max-width: 1366px) {
	.bb-variant-advocatenkantoor #header [data-device="desktop"] [data-row="middle"] > .ct-container { column-gap: 14px; }
	.bb-variant-advocatenkantoor #header [data-device="desktop"] [data-id="menu"] > ul > li > .ct-menu-link { padding-inline: 8px; }
	.bb-variant-advocatenkantoor [data-device="desktop"] .bb-header-tel { font-size: .9375rem; gap: .3em; }
}
@media (max-width: 1240px) {
	/* Smallere desktops: alleen het telefoonicoon (het nummer blijft de naam van de link) en een knop die mag afbreken. */
	.bb-variant-advocatenkantoor [data-device="desktop"] .bb-header-tel { min-width: 44px; min-height: 44px; justify-content: center; }
	.bb-variant-advocatenkantoor [data-device="desktop"] .bb-header-tel span { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); white-space: nowrap; }
	.bb-variant-advocatenkantoor [data-device="desktop"] .bb-header-knop { white-space: normal; max-width: 13.5em; line-height: 1.2; text-align: center; }
}
#offcanvas .bb-header-knop { white-space: normal; text-align: center; }

/* ---------- Badge (bijv. [bb_toevoeging weergave="badge"] in de vertrouwensregel) ---------- */
.bb-badge { display: inline-flex; align-items: center; gap: .4em; padding: .25em .75em; border-radius: calc(var(--bb-radius) * 2); background: var(--klant-accent-zacht); color: var(--klant-primair-op-licht); font-size: .875rem; font-weight: 600; line-height: 1.3; }

/* ---------- Talen ([bb_talen weergave="chips"]) ---------- */
.bb-talen { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 10px; }
.bb-talen__kop { font-weight: 600; }

/* ---------- Formulier Zaak voorleggen ---------- */
/* Velden en regels die het script verbergt (bedrijfsnaam bij Particulier, strafrecht-regel). */
.wpforms-container .wpforms-field[hidden], .bb-veld-strafrecht[hidden] { display: none !important; }

/* De vertrouwelijkheidswaarschuwing onder de omschrijving valt rustig op. */
.bb-page .wpforms-container .bb-veld-omschrijving .wpforms-field-description {
	margin-top: .5em; padding: .55em .8em; border-inline-start: 3px solid var(--klant-accent-op-licht);
	border-radius: 0 var(--bb-radius) var(--bb-radius) 0; background: var(--bb-vlak); color: var(--bb-tekst) !important;
}
.bb-stijl-klassiek .bb-page .wpforms-container .bb-veld-omschrijving .wpforms-field-description { border-radius: 0; }

/* Strafrecht: extra regel onder de omschrijving. */
.bb-veld-strafrecht {
	margin: .5em 0 0; padding: .55em .8em; border-inline-start: 3px solid var(--klant-primair-op-licht);
	border-radius: 0 var(--bb-radius) var(--bb-radius) 0; background: var(--klant-primair-zacht);
	color: var(--klant-primair-op-licht); font-size: .9rem; font-weight: 700; line-height: 1.45;
}

/* Tekenteller (die van WPForms, of de terugval van het script). */
.bb-page .wpforms-container .wpforms-field-limit-text, .bb-tekenteller { margin: .35em 0 0; color: var(--bb-muted) !important; font-size: .85rem !important; text-align: end; }
.bb-tekenteller.is-bijna { color: var(--bb-tekst) !important; font-weight: 700; }

/* Uitleg bij de wederpartij (conflictcheck) en bedrijfsnaam: gewoon leesbaar, niet weggestopt. */
.bb-page .wpforms-container :is(.bb-veld-wederpartij, .bb-veld-bedrijfsnaam) .wpforms-field-description { color: var(--bb-tekst) !important; }

/* ---------- Formulierpagina (/zaak-voorleggen/) ----------
 * Twee kolommen (formulier 60% / zijkolom 40%, bb_rij + bb_kol); op tablet en mobiel staat de zijkolom
 * onder het formulier (engine). Op een hoge desktop blijft de zijkolom (spoed, eerste gesprek, stappen)
 * in beeld tijdens het invullen. Haakjes: de body-klasse bb-pagina-zaak-voorleggen (globaal.php) of de
 * klassen bb-zaak-formulier (sectie) en bb-zaak-zijkolom (kolom). */
@media (min-width: 1025px) and (min-height: 760px) {
	.bb-pagina-zaak-voorleggen .bb-rij--boven > .wp-block-uagb-container:last-child:not(:first-child),
	.bb-zaak-formulier .bb-zaak-zijkolom { position: sticky; top: 120px; }
	.admin-bar.bb-pagina-zaak-voorleggen .bb-rij--boven > .wp-block-uagb-container:last-child:not(:first-child),
	.admin-bar .bb-zaak-formulier .bb-zaak-zijkolom { top: 152px; }
}
.bb-pagina-zaak-voorleggen .bb-formulierkaart, .bb-zaak-formulier .bb-formulierkaart { box-shadow: var(--bb-schaduw, none); }

/*
 * Zakelijk v1 (Advocatenkantoor) — synced patterns (inc/zakelijk/v1/patterns.php).
 * Deelbestand: wordt samengevoegd in zakelijk-v1.css (alleen geladen bij v1).
 * Alleen tokens (--bb-*, --klant-*), zodat Klassiek, Strak en Toegankelijk automatisch meewerken.
 * Nooit puur zwart of puur wit.
 */

/* ---------- Doelgroepkeuze en rechtsgebieden-raster ---------- */
.bb-doelgroepkeuze-sectie .bb-kopblok,
.bb-rechtsgebieden-sectie .bb-kopblok { margin-bottom: 4px; }

/* ---------- Zo werken we ---------- */
.bb-zo-werken-we { align-items: stretch !important; }
.bb-zo-werken-we .bb-stap { gap: 12px !important; }
.bb-zo-werken-we .bb-stap h3 { font-size: clamp(1.05rem, 1rem + .3vw, 1.2rem); }
.bb-zo-werken-we .bb-stap p:not(.bb-stap__nummer) { color: var(--bb-muted); font-size: .975rem; }

/* ---------- Eerste-gesprek-blok ---------- */
.bb-eerste-gesprek__regel { font-weight: 600; color: var(--bb-kop); }
.bb-eerste-gesprek__kaart { gap: 14px !important; }
.bb-eerste-gesprek__label { margin-bottom: -4px !important; }
.bb-eerste-gesprek__kaart .wp-block-buttons { margin-top: 6px; }
.bb-eerste-gesprek__kaart .wp-block-button { flex: 1 1 auto; }
.bb-eerste-gesprek__kaart .wp-block-button__link { width: 100%; }

/* ---------- Kosten in het kort ---------- */
.bb-kosten { align-items: stretch !important; }
.bb-kostenkaart { gap: 10px !important; }
.bb-kostenkaart h3 { font-size: clamp(1.1rem, 1.02rem + .35vw, 1.25rem); }
.bb-kostenkaart p:not(.bb-kaart__icoon) { color: var(--bb-muted); }
.bb-kostenkaart p:has(> .bb-link-pijl:only-child) { color: inherit; margin-top: auto; }
.bb-kosten-sectie > .uagb-container-inner-blocks-wrap > p:last-child { margin-top: -8px; }

/* ---------- Toevoeging-blok ---------- */
.bb-toevoeging-blok { max-width: 860px; gap: 12px !important; border-left: 4px solid var(--klant-accent-op-licht) !important; }
.bb-stijl-klassiek .bb-toevoeging-blok { border-left-width: 2px !important; }

/* ---------- Termijnwaarschuwing (sluit aan op de hero, rustig van kleur) ---------- */
.bb-sectie.bb-termijn-sectie.uagb-is-root-container {
	padding-top: clamp(20px, 3vw, 36px) !important;
	padding-bottom: clamp(20px, 3vw, 36px) !important;
}
.bb-termijn-sectie > .uagb-container-inner-blocks-wrap { max-width: min(var(--bb-wrap), 920px); }

/* ---------- Advocatenstrip ---------- */
.bb-advocatenstrip-sectie .wp-block-buttons { margin-top: 4px; }

/* ---------- Kennisbank-uitgelicht ---------- */
.bb-kennisbank-sectie > .uagb-container-inner-blocks-wrap > p:last-child { margin-top: -8px; }

/* ---------- Reviews ---------- */
.bb-reviews-sectie .bb-reviews-links:empty { display: none; }

/* ---------- Mobiel ---------- */
@media (max-width: 640px) {
	.bb-eerste-gesprek__kaart .wp-block-button { flex-basis: 100%; }
}

/*
 * Zakelijk v1 (Advocatenkantoor) — pagina's en menu (inc/zakelijk/v1/paginas.php).
 * Deelbestand: wordt samengevoegd in zakelijk-v1.css (alleen geladen bij v1).
 * Alleen tokens (--bb-*, --klant-*), zodat Klassiek, Strak en Toegankelijk automatisch meewerken.
 * Nooit puur zwart of puur wit.
 */

/* ---------- Menu: groepskoppen Particulier / Ondernemer onder Rechtsgebieden ---------- */
.bb-menu-groep > a { font-weight: 700; }

/* ---------- Home-hero: vertrouwensregel en toevoeging-badge ---------- */
.bb-vertrouwensregel { flex-wrap: wrap !important; row-gap: 10px !important; margin-top: 4px; }
.bb-vertrouwensregel .bb-vertrouwen { margin: 0 !important; }
.bb-hero__badge p { margin: 0; }
.bb-hero__badge:has(> p:empty) { display: none; }

/* ---------- Rechtsgebieden-overzicht: door naar de landingspagina's ---------- */
.bb-doelgroeplinks { align-items: stretch !important; }
.bb-doelgroeplink { gap: 10px !important; }
.bb-doelgroeplink p:not(.bb-kaart__icoon) { color: var(--bb-muted); }

/* ---------- Team: specialisatie en toezicht ---------- */
.bb-team-toezicht .bb-leestekst h2 { margin-top: 0; }

/* ---------- Over het kantoor ---------- */
.bb-over-verhaal .bb-leestekst h2 { margin-top: 0; }
.bb-waarden { align-items: stretch !important; }
.bb-waarde { gap: 10px !important; }
.bb-waarde p:not(.bb-kaart__icoon) { color: var(--bb-muted); }
.bb-kantoorbeelden { align-items: stretch !important; }
.bb-kantoorbeeld img { aspect-ratio: 4 / 3; object-fit: cover; }
.bb-lidmaatschappen { align-items: stretch !important; }
.bb-lidmaatschappen .bb-kaart { gap: 10px !important; }

/* ---------- Tarieven & kosten ---------- */
.bb-tarieven__toevoeging {
	padding: 14px 18px; border-radius: var(--bb-radius);
	background: var(--klant-accent-zacht); color: var(--bb-tekst);
}
.bb-tarieven__uurtarief, .bb-tarieven__vast { max-width: 860px; }
.bb-page .bb-tabel--uurtarieven td:first-child { width: auto; white-space: normal; }
.bb-page .bb-tabel--uurtarieven table { min-width: 0; }
.bb-tabel--uurtarieven figcaption { margin-top: 8px; font-size: .9rem; color: var(--bb-muted); padding: 0 16px 12px; }
.bb-opdrachtbevestiging { max-width: 860px; gap: 12px !important; }
.bb-opdrachtbevestiging .bb-lead { color: var(--bb-tekst); font-weight: 600; }

/* ---------- Gesubsidieerde rechtsbijstand ---------- */
.bb-toevoeging-uitleg .bb-kaart { gap: 12px !important; }
.bb-toevoeging__vast { max-width: 860px; gap: 10px !important; margin-top: 8px; }
.bb-toevoeging__regel { font-weight: 600; color: var(--bb-tekst); }
.bb-toevoeging__bron { font-size: .95rem; color: var(--bb-muted); }

/* ---------- Zaak voorleggen ---------- */
.bb-zaak__zijkant { gap: 16px !important; }
.bb-zaak__zijkant .bb-kaart { gap: 10px !important; }
/* Kaartkoppen zijn H2 (koppenstructuur), maar zien eruit als H3. */
.bb-zaak__zijkant .bb-kaart h2 { font-size: clamp(1.15rem, 1.05rem + .4vw, 1.3rem); }
.bb-stijl-klassiek .bb-zaak__zijkant .bb-kaart h2 { font-size: clamp(1.25rem, 1.12rem + .45vw, 1.45rem); }
.bb-zaak__spoed {
	background: var(--klant-accent-zacht); --bb-k-rand: transparent; --bb-k-schaduw: none;
	border-left: 4px solid var(--klant-accent-op-licht) !important;
}
.bb-stijl-klassiek .bb-zaak__spoed { border-left-width: 2px !important; }
.bb-zaak__spoedregel a { font-weight: 700; white-space: nowrap; }
.bb-zaak__na .bb-genummerd { font-size: .975rem; }
.bb-zaak__vertrouwelijk { display: flex; align-items: flex-start; gap: .5em; margin-top: 4px !important; }
.bb-zaak__vertrouwelijk .bb-icoon { color: var(--klant-accent-op-licht); margin-top: .2em; }
@media (max-width: 1024px) {
	/* Op mobiel en tablet staat de zijkolom onder het formulier. */
	.bb-zaak .bb-rij { gap: 28px !important; }
}

/* ---------- Bedankt ---------- */
.bb-bedankt .bb-hero__tekst { max-width: 780px; }
.bb-bedankt__let-op {
	padding: 14px 18px; border-radius: var(--bb-radius);
	background: var(--bb-kaart); border-left: 4px solid var(--klant-accent-op-licht);
}
.bb-stijl-klassiek .bb-bedankt__let-op { border-left-width: 2px; }
.bb-bedankt__spoed a { font-weight: 700; white-space: nowrap; }
.bb-bedankt__links { display: flex; flex-wrap: wrap; gap: 8px 16px; }
