/*
 * Stijl Luxe (beauty) — rustig, elegant, hoogwaardig. Past bij een kapsalon (midden/hoog) of huidstudio.
 * Koppen: Cormorant Garamond 500 · Tekst: Jost 400 · Afronding 0–6px, fijne lijnen.
 * Gebroken wit, zand en greige, veel witruimte; grote, rustige, editorial uitgesneden foto's;
 * knoppen met letterspatiëring (gevuld of dunne outline).
 */
:root {
	--bb-font-koppen: "Cormorant Garamond", Georgia, "Times New Roman", serif;
	--bb-font-body: "Jost", system-ui, -apple-system, "Segoe UI", sans-serif;
	--bb-kop-gewicht: 500;
	--bb-kop-spatie: -0.005em;

	--bb-achtergrond: #FAF8F4;
	--bb-vlak: #F1ECE4;
	--bb-zacht: #EBE5DB;
	--bb-kaart: #FDFCFA;
	--bb-rand: #E2DBD0;
	--bb-tekst: #2B2724;
	--bb-muted: #6B635B;

	--bb-radius: 4px;
	--bb-radius-knop: 2px;
	--bb-radius-foto: 2px;
	--bb-radius-icoon: 50%;
	--bb-schaduw: none;
	--bb-sectie-ruimte: clamp(72px, 10vw, 136px);

	--bb-icoon-lijn: 1.2;
	--bb-icoon-vul: 0;
	--bb-icoon-rond: transparent;
}
body { font-size: 1.0625rem; font-weight: 400; letter-spacing: .005em; }
h1 { font-size: clamp(2.6rem, 1.8rem + 3.2vw, 4.1rem); line-height: 1.05; }
h2 { font-size: clamp(2rem, 1.5rem + 1.8vw, 2.9rem); line-height: 1.1; }
h3 { font-size: clamp(1.35rem, 1.2rem + .5vw, 1.6rem); }
.bb-eyebrow { font-family: var(--bb-font-body); font-weight: 500; letter-spacing: .22em; font-size: .78rem; color: var(--bb-muted); }
.bb-lead { font-weight: 300; }
.wp-block-button__link, .bb-knop { text-transform: uppercase; letter-spacing: .16em; font-weight: 500; font-size: .82rem; min-height: 50px; padding-inline: 2em; }
.wp-block-button.bb-knop--secundair .wp-block-button__link { border-width: 1px; }
.bb-header-knop { letter-spacing: .14em; }
.bb-kaart, .bb-dienstkaart, .bb-teamkaart, .bb-prijscat, .bb-review { box-shadow: none; }
.bb-hero--home { background: var(--bb-zacht); }
.bb-hero--home .bb-hero__foto img { aspect-ratio: 4 / 5; }
.bb-foto img { aspect-ratio: 4 / 5; }
.bb-galerij .bb-foto img { aspect-ratio: 3 / 4; }
.bb-prijscat { background: transparent; border: 0; border-top: 1px solid var(--bb-tekst); border-radius: 0; padding: 26px 0 8px; }
.bb-prijscat__titel { font-size: clamp(1.7rem, 1.4rem + 1vw, 2.2rem); }
.bb-prijsregel__naam { font-weight: 500; }
.bb-prijsregel__prijs { font-weight: 500; }
.bb-prijsregel__lijn { border-bottom: 1px dotted var(--bb-muted); }
.bb-dienstkaart { border-color: var(--bb-rand); }
.bb-dienstkaart__naam { font-size: 1.45rem; }
.bb-dienstkaart__prijs { font-weight: 500; color: var(--bb-tekst); }
.bb-teamkaart { border: 0; background: transparent; }
.bb-teamkaart__body { padding-inline: 0; }
.bb-teamkaart__naam { font-size: 1.5rem; }
.bb-teamkaart__functie { color: var(--bb-muted); text-transform: uppercase; letter-spacing: .14em; font-size: .75rem; font-weight: 500; }
.bb-chips li { background: transparent; border: 1px solid var(--bb-rand); color: var(--bb-muted); font-weight: 400; letter-spacing: .02em; }
.bb-filter__knop { border-radius: 0; border-width: 0 0 1px; background: transparent; padding-inline: .2em; min-height: 36px; letter-spacing: .08em; text-transform: uppercase; font-size: .78rem; font-weight: 500; }
.bb-filter__knop[aria-pressed="true"] { background: transparent; color: var(--bb-tekst); border-color: var(--bb-tekst); }
.bb-filter { gap: 4px 22px; }
.bb-faq-item { border-width: 0 0 1px; border-radius: 0; background: transparent; }
.bb-faq-item summary { padding-inline: 0 48px; font-size: 1.3rem; font-weight: 500; }
.bb-faq-item summary::after { background: transparent; border: 1px solid var(--bb-rand); }
.bb-faq-item > p, .bb-faq-item > :not(summary) { padding-inline: 0; }
.bb-walkin { background: transparent; border: 1px solid var(--bb-rand); font-weight: 500; }
.bb-topbalk { letter-spacing: .08em; font-size: .8rem; text-transform: uppercase; }
.bb-stap__nummer { background: transparent; color: var(--bb-tekst); border: 1px solid var(--bb-tekst); font-weight: 500; }
.bb-vinkjes li::after { background: var(--bb-tekst); }
.bb-icoonrond { border: 1px solid var(--bb-rand); color: var(--bb-tekst); }
.bb-werk__link img, .bb-werkrij__link img, .bb-foto img { filter: saturate(.92); }
.bb-merkenbalk__kop { font-family: var(--bb-font-body) !important; font-size: .78rem !important; letter-spacing: .22em; }
.bb-page .wpforms-container :is(input[type=text], input[type=email], textarea, select) { border-width: 0 0 1px !important; border-radius: 0 !important; background: transparent !important; padding-inline: 0 !important; }
.bb-page .wpforms-container .wpforms-submit { text-transform: uppercase; letter-spacing: .16em; font-size: .82rem !important; }
