/* Final shared layer for the current site; the archived first version is independent. */
body.site-unified {
  --action-radius:8px;
  --panel-radius:18px;
  --action-fill:#ffa04e;
  --action-hover:#ffb570;
  --action-ink:#211005;
  --surface-line:#37413f;
  --font:'Helvetica Neue',Arial,sans-serif;
  font-family:var(--font);
}

/* Geometry is invariant across the older section-specific button rules. */
.site-unified :is(.btn,.wl-button,nav.menu a.cta,.service-preview-cta,.sticky-cta a,.terug),
.site-unified :is(.kh-opties,.opties,.kiezer,.contact-links) :is(button,a) {
  border-radius:var(--action-radius)!important;
  min-height:48px;
  font-family:var(--font);
  font-weight:500;
  line-height:1.4;
  text-decoration:none;
  transition:background-color .18s,border-color .18s,color .18s;
}
body.site-unified :is(.btn,.wl-button,.service-preview-cta,.terug) {
  display:inline-flex;align-items:center;justify-content:center;gap:12px;
  max-width:100%;padding:14px 22px;text-align:center;white-space:normal;
}
body.site-unified :is(.btn-primary,.btn-green,nav.menu a.cta,.sticky-cta a),
body.site-unified #home .btn-primary,
body.site-unified #verhaal :is(.wl-opening,.wl-close) .wl-button {
  background:var(--action-fill);color:var(--action-ink);border:1px solid transparent;
  box-shadow:none!important;
}
body.site-unified :is(.btn-ghost,.terug) {
  background:#ffffff04;border:1px solid var(--surface-line);color:#edf1ec;
}
body.site-unified :is(.btn,.wl-button)::after {display:none}
body.site-unified :is(.btn,.wl-button):is(:hover,:active) {transform:none;filter:none}
body.site-unified :is(.btn,.wl-button):hover {box-shadow:none!important}
body.site-unified :is(#openFormBtn,.sticky-cta a) {animation:none}
body.site-unified nav.menu a.cta {display:flex;align-items:center;justify-content:center;padding:12px 20px!important}
body.site-unified #diensten .service-preview-cta {min-height:48px;padding:13px 17px}

/* Choices retain a distinct selected state, using the same control shape. */
body.site-unified :is(.kh-opties,.opties) button {
  background:#ffffff04;border:1px solid var(--surface-line);color:#c5cec9;
  padding:12px 16px;transform:none;
}
body.site-unified :is(.kh-opties button.active,.opties button[aria-pressed="true"]) {
  color:#c4f5d9;background:#234135;border-color:#77ad90;
}
body.site-unified .kiezer {border-radius:12px;flex-wrap:wrap}
body.site-unified .kiezer button {flex:1;padding:12px 18px}
body.site-unified .kiezer button[aria-selected="true"] {
  background:var(--action-fill);color:var(--action-ink);
}
body.site-unified :is(.pd-terug,.sp-actions>button,.service-preview-details,.wl-link) {
  display:inline-flex;align-items:center;min-height:44px;line-height:1.5;
  font-size:.9375rem;font-weight:500;text-underline-offset:5px;
}
body.site-unified :is(.pd-terug,.sp-actions>button,.service-preview-details,.wl-link):hover {color:#ffc28e}
body.site-unified .hamburger {min-width:44px;min-height:44px;align-items:center;justify-content:center;border-radius:8px}
body.site-unified :is(a,button,summary):focus-visible {
  outline:2px solid #ffc28e;outline-offset:4px;
}
body.site-unified button:disabled {opacity:.5;cursor:not-allowed;transform:none}

/* Consistent surfaces, typography and spacing beyond the opening story. */
body.site-unified :is(.studio-package,.price-card,.pd-card,.paneel,.lab,.proj-builder,.kader,.contact-gate,.form-card,.contact-info .card) {
  border-radius:var(--panel-radius);border-color:var(--surface-line);
  box-shadow:inset 0 1px 0 #ffffff04;
}
body.site-unified :is(.studio-package,.contact-gate,.form-card,.contact-info .card) {
  background:linear-gradient(140deg,#111b17f5,#0b1010f5);
}
body.site-unified :is(.contact-info .card,.price-card):hover {transform:none}
body.site-unified .contact-links :is(a,button) {transform:none;border-color:var(--surface-line);font-weight:500}
body.site-unified .field :is(input,select,textarea) {
  border-radius:var(--action-radius);border:1px solid var(--surface-line);
  background:#0a100e;color:#edf1ec;font-size:1rem;min-height:48px;
}
body.site-unified .field :is(input,select,textarea):focus {
  border-color:#ffc28e;outline:2px solid #ffc28e;outline-offset:2px;box-shadow:none;
}
body.site-unified .field label {font-weight:500}
body.site-unified :is(.sp-actions,.cta-rij,.slot-acties) {gap:14px;align-items:center}
body.site-unified .studio-package .sp-label {min-height:2.8em}
body.site-unified .sp-price small {display:block;margin-bottom:8px}
body.site-unified :is(.sub-pagina,.contact-pagina) .sec-head h1 {
  font-size:clamp(2.4rem,5.5vw,5rem);line-height:1.06;letter-spacing:-.055em;
  font-weight:500;margin-bottom:24px;max-width:1000px;color:#f1f1ed;
}
body.site-unified :is(.sub-pagina,.contact-pagina) .kruimel {margin-bottom:32px}
body.site-unified .lange-tekst {max-width:800px}
body.site-unified .lange-tekst :is(h2,h3) {line-height:1.2}
body.site-unified:not(.edition-two) .container {max-width:1560px;padding-inline:clamp(24px,5.5vw,96px)}
body.site-unified:not(.edition-two) {--txt:#f1f1ed;--txt-soft:#abb5af}
body.site-unified footer .slogan {background:none;color:#dce4de;font-weight:500;-webkit-text-fill-color:currentColor}
body.site-unified footer .legal-links a {display:inline-flex;align-items:center;min-height:44px;font-weight:400}
body.site-unified .merk {font-weight:500}
body.site-unified .merk b {color:#f1f1ed}

@media(hover:hover) and (pointer:fine) {
  body.site-unified :is(.btn-primary,.btn-green,nav.menu a.cta,.sticky-cta a):hover,
  body.site-unified #home .btn-primary:hover,
  body.site-unified #verhaal :is(.wl-opening,.wl-close) .wl-button:hover {
    background:var(--action-hover);color:var(--action-ink);filter:none;
  }
  body.site-unified :is(.btn-ghost,.terug,.contact-links a,.contact-links button):hover {
    background:#ffffff0a;border-color:#7f9186;color:#fff;
  }
}
@media(max-width:600px) {
  body.site-unified :is(.sp-actions,.cta-rij,.slot-acties) {width:100%;flex-wrap:wrap}
  body.site-unified :is(.sp-actions,.cta-rij,.slot-acties)>.btn {width:100%}
  body.site-unified #openFormBtn {min-width:0!important;width:100%}
  body.site-unified .contact-wrap>* {min-width:0}
  body.site-unified .kop {flex-wrap:wrap}
  body.site-unified .terug {min-height:44px;padding:10px 16px;font-size:.875rem}
  body.site-unified footer {padding-bottom:calc(92px + env(safe-area-inset-bottom,0px))}
}
@media(pointer:coarse),(max-width:700px) {
  body.site-unified header::before {backdrop-filter:none;-webkit-backdrop-filter:none;background:#070c0bf5}
  body.site-unified .form-card {animation:none}
}
@media(prefers-reduced-motion:reduce) {
  body.site-unified :is(a,button,input,select,textarea) {transition:none}
}
