
  @import url('https://fonts.googleapis.com/css?family=Noto+Sans:400,700&display=swap');
  @import url('https://fonts.googleapis.com/css?family=Cormorant+Garamond:400,700&display=swap');

  body {
  font-family: 'Noto Sans', sans-serif;
  }

  h1, h2, h3, h4, h5, h6 {
  font-family: 'Cormorant Garamond', sans-serif;
  }

  h1 {
  font-size: 34px;
  }

  h2 {
  font-size: 32px;
  }

  h3 {
  font-size: 26px;
  }

  h4 {
  font-size: 21px;
  }

  h5 {
  font-size: 18px;
  }

  h6 {
  font-size: 16px;
  }

  body {
  font-size: 15px;
  }

  body,
  .product-usps li,
  .stock-message {
  color: #4a4441;
  }

  h1, h2, h3, h4, h5, h6 {
  color: #4a4441 !important;
  }

  a,
  .woocommerce ul.products li.product .price,
  .woocommerce .price {
  color: #bfa15c !important;
  }

  a:hover,
  .woocommerce ul.products li.product .price,
  .woocommerce .price,
  .product-usps li i,
  .counter {
  color: #c97b8c !important;
  }

  .btn,
  .wpcf7-submit,
  .woocommerce span.onsale,
  .woocommerce a.button,
  .woocommerce .button,
  [type="submit"],
  .nf-form-content input[type=submit]
  {
  background: #bfa15c !important;
  color: #fff !important;
  }

  .btn:hover,
  .wpcf7-submit:hover,
  .woocommerce span.onsale:hover,
  .woocommerce a.button:hover,
  .woocommerce .button:hover,
  [type="submit"]:hover,
  .nf-form-content input[type=submit]:hover
  {
  background: #c97b8c !important;
  color: #fff !important;
  }

  div.social-media ul li a {
  background: #a85468 !important;
  color: #fff !important;
  }

  div.social-media ul li a i {
  color: #fff !important;
  }

  div.social-media ul li a:hover {
  background: #c97b8c !important;
  color: #fff !important;
  }
  footer div.social-media ul li a {
  background: #bfa15c !important;
  }

  div.phone a.phone, div.email a.email {
  background: #a85468 !important;
  color: #fff !important;
  }

  div.phone a.phone, div.email a.email i {
  color: #fff !important;
  }

  div.phone a.phone:hover, div.email a.email:hover {
  background: #c97b8c !important;
  color: #fff !important;
  }

  header button.navbar-toggle {
  color: #a85468;
  border-color: #a85468;
  }

  .woocommerce-info,
  .woocommerce-message {
  border-top-color: #a85468 !important;
  }

  .woocommerce-info::before,
  .woocommerce-message::before {
  color: #a85468 !important;
  }

  .btn,
  .wpcf7-submit,
  .woocommerce span.onsale,
  .woocommerce a.button,
  .woocommerce .button,
  .modal__container,
  .footer-cta-box,
  .rimg,
  [type="submit"] {
  -moz-border-radius: 5px !important;
  -webkit-border-radius: 5px !important;
  border-radius: 5px !important;
  }

  .img-responsive {
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  }



  header div.header {
  background-color: rgba(255, 255, 255, 1) !important;
  }
  header .sticky_menu_small div.header {
  background-color: rgb(255, 255, 255) !important;
  }

  @media only screen and (max-width : 992px) {
  header nav.navbar-default {
  background: none !important;
  }
  }

  header > div.wrapper {
  display: block;
  position: relative;
  }

  header div.header::after {
  bottom: 0;
  content: "";
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: -1;
  }

  header > div.wrapper::after {
  background: url('https://beautysalonofelya.nl/wp-content/uploads/sites/569/2026/06/header.jpg');
  background-size: cover;
  bottom: 0;
  content: "";
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: -2;
  }


    header .sticky_menu_small div.header {
    background-color: rgba(255, 255, 255, 1) !important;
    }
  

  @media only screen and (min-width : 992px) {
  body.home header > div.wrapper {
  min-height: 350px;
      min-height: 835px;
    }
  body.home header > div.wrapper.above {
  min-height: 500px;
      min-height: 985px;
    }
  }

  @media only screen and (min-width : 992px) {
  body header > div.wrapper {
  min-height: 225px;
      min-height: 635px;
    }
  body header > div.wrapper.above {
  min-height: 375px;
      min-height: 785px;
    }
  body header > div.wrapper.above::after,
  body header > div.wrapper.above.shadow::before,
  body header > div.wrapper.above_shadow::before {
      top: 560px;
    }
  body header > div.wrapper.sticky_menu .header__content {
      margin-top: 560px;
    }
  }

  @media only screen and (min-width : 992px) {
  header > div.wrapper {
  min-height: 660px;
  }
  header > div.wrapper.above {
  min-height: 810px;
  }

  header div.header div.holder {
  height: 560px;
  }
  }





  nav.navbar-default, div.navbar-collapse {
  background-color: #a85468; !important;
  }

  @media only screen and (min-width : 992px) {
  
  div.navbar-collapse {
  background: none !important;
  }

  header nav.navbar-default {
  background-color: rgba(168, 84, 104, .5) !important;
  }

  nav.navbar-default div.navbar-collapse ul.navbar-nav>li a:hover {
  background-color: rgba(168, 84, 104, .5) !important;
  -webkit-box-shadow: inset 0 0 0 1000px rgba(255, 255, 255, 0.1);
  -moz-box-shadow: inset 0 0 0 1000px rgba(255, 255, 255, 0.1);
  box-shadow: inset 0 0 0 1000px rgba(255, 255, 255, 0.1);
  }

  header div.header.full-width nav.navbar-default div.navbar-collapse ul.navbar-nav > li > a:hover,
  header div.header.full-width nav.navbar-default div.navbar-collapse ul.navbar-nav > li > a:focus,
  header div.header.full-width nav.navbar-default div.navbar-collapse ul.navbar-nav > li > a:active {
  color: #a85468 !important;
  }
  }


  @media only screen and (min-width : 992px) {
  section.featured div.wrapper {
  margin-top: -100px;
  }
  header>div.wrapper .header__content {
  transform: translate3d(0, -40px, 0);
  }
  }





  header div.header {
  text-align: center;
  }

  header div.navbar-collapse ul.navbar-nav li a, .nav .open>a, .nav .open>a:focus, .nav .open>a:hover {
  border-bottom: 1px solid #bfa15c;
  }

  @media only screen and (min-width : 992px) {
  header div.navbar-collapse ul.navbar-nav li a, header nav.navbar-default div.navbar-collapse ul.navbar-nav li ul.dropdown-menu li.active > a {
  color: #bfa15c !important;
  }
  }


  header div.header div.contact i {
  color: #bfa15c;
  }

  @media only screen and (min-width : 992px) {
  header div.navbar-collapse {
  text-align: center;
  }
  }

  section.featured div.item p,
  section.news div.item p {
  color: #4a4441 !important;
  }

  section.featured div.item,
  section.news div.item {
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  }

  section.partners {
  background: #bfa15c !important;
  }

  section.partners img {
  border-radius: 0 !important;
  }

  footer,
  .footer-cta.center:after,
  .author {
  background: #a85468 !important;
  }

  footer div.column > h4 {
  border-bottom: 1px solid #bfa15c;
  }

  footer div.socket,
  .footer-sticky {
  background: #c97b8c !important;
  }


  section.treatments div.items div.item img {
  border-radius: 100% !important;
  }

  .img-circle {
  border-radius: 100% !important;
  }

  section.treatments div.button-wrap {
  background: #2e2a28;
  margin-top: 30px;
  }

  section.treatments div.item a {
  color: #4a4441 !important;
  }

  section.prices table tr td a {
  color: #4a4441 !important;
  }

  aside div.block.treatments ul li a,
  .woocommerce .widget_product_categories ul li a,
  .woocommerce .widget_product_categories ul li span {
  color: #4a4441 !important;
  }

  aside div.block.treatments ul li:hover,
  .woocommerce .widget_product_categories ul li:hover {
  background: #a85468;
  }

  /* =============================================================
   BEAUTYSALON OFELYA — Fundering
   Plaatsing: Instellingen > Geavanceerd > Ontwikkelaars > CSS styling
   Bevat: (1) :root design tokens  (2) HTML-semantiek / defaults
   Naamgeving in lijn met het Netbeauty/Salonsite-thema.
   ============================================================= */

html {
font-size: 16px !important;
}

/* -------------------------------------------------------------
   1. DESIGN TOKENS
   ------------------------------------------------------------- */
:root{

  /* --- Kleuren --- */
  --color-bg:            #FAF6F2;  /* porselein, pagina-achtergrond */
  --color-surface:       #FFFFFF;  /* wit, kaarten en vlakken */
  --color-surface-soft:  #F0DCE0;  /* zacht roze, subtiele vlakken */

  --color-brand:         #C97B8C;  /* rosé, zacht accent */
  --color-brand-dark:    #A85468;  /* diep rosé, knoppen */
  --color-brand-darker:  #92465A;  /* hover op knoppen */

  --color-gold:          #BFA15C;  /* champagne-goud, lijnen/details */
  --color-gold-dark:     #9C7E3A;  /* goud op lichte achtergrond (tekst) */

  --color-text-main:     #2E2A28;  /* inkt, koppen en hoofdtekst */
  --color-text-body:     #4A4441;  /* leestekst */
  --color-text-muted:    #8A807A;  /* steen, bijschriften */
  --color-text-invert:   #FFFFFF;  /* tekst op donkere vlakken */

  --color-dark:          #2E2A28;  /* donkere secties (footer, cta-band) */
  --border-color:        #EAE1D9;  /* hairline randen */

  /* --- Typografie --- */
  --font-heading: 'Cormorant Garamond', Georgia, 'Times New Roman', serif;
  --font-body:    'Mulish', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

  --fs-eyebrow: 0.72rem;
  --fs-small:   0.85rem;
  --fs-body:    1.02rem;
  --fs-h3:      1.6rem;
  --fs-h2:      clamp(2.1rem, 4.6vw, 3.1rem);
  --fs-h1:      clamp(3rem, 7vw, 5.2rem);

  --lh-tight:   1.06;
  --lh-body:    1.65;
  --ls-eyebrow: 0.22em;  /* letter-spacing voor eyebrows/labels */

  /* --- Spacing --- */
  --space-xs:  0.25rem;
  --space-sm:  0.5rem;
  --space-md:  1rem;
  --space-lg:  1.5rem;
  --space-xl:  2rem;
  --space-2xl: 4rem;
  --space-3xl: 6rem;   /* verticale sectie-ademruimte */

  /* --- Rondingen --- */
  --radius-sm:     6px;
  --radius-default:14px;
  --radius-pill:   9999px;
  --radius-corner: 54px;   /* signatuur: één grote zachte hoek */

  /* --- Lijnen & schaduw --- */
  --hairline: 1px solid var(--border-color);
  --shadow-soft:  0 14px 40px rgba(46, 42, 40, 0.10);
  --shadow-lift:  0 22px 50px rgba(168, 84, 104, 0.14);

  /* --- Layout --- */
  --container: 1140px;

  /* --- Transitions --- */
  --t-base: 0.25s ease;
}

/* -------------------------------------------------------------
   2. HTML-SEMANTIEK / DEFAULTS
   Goede basis, zodat componenten weinig hoeven te overschrijven.
   ------------------------------------------------------------- */

/* Koppen */
h1, h2, h3, h4{
  font-family: var(--font-heading);
  font-weight: 500;
  line-height: var(--lh-tight);
  color: var(--color-text-main);
  margin: 0 0 var(--space-md);
}
h1{ font-size: var(--fs-h1); }
h2{ font-size: var(--fs-h2); }
h3{ font-size: var(--fs-h3); font-weight: 600; }

/* Cursief accent in koppen (onze editorial-toets) */
h1 em, h2 em, h3 em{ font-style: italic; color: var(--color-brand-dark); }

/* Tekst */
p{ margin: 0 0 var(--space-md); max-width: 64ch; }
img{ display: block; max-width: 100%; height: auto; }

/* Links: kleur met !important zodat we het thema netjes overschrijven */
a{ text-decoration: none; }
a{ color: var(--color-brand-dark) !important; }
a:hover{ color: var(--color-brand-darker) !important; }

/* Eyebrow / kleine bovenlabel met gouden streepje */
.eyebrow{
  display: inline-block;
  font-family: var(--font-body);
  font-size: var(--fs-eyebrow);
  font-weight: 700;
  letter-spacing: var(--ls-eyebrow);
  text-transform: uppercase;
  color: var(--color-gold-dark);
}
.eyebrow--rule::before{
  content: "";
  display: inline-block;
  width: 30px; height: 1px;
  background: var(--color-gold);
  vertical-align: middle;
  margin-right: 12px; margin-bottom: 4px;
}

/* Knoppen: alleen de kleuren met !important om het thema te overschrijven.
   Vorm/spacing zonder !important, zodat je dat makkelijk kunt aanpassen. */
.btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-body);
  font-weight: 600;
  font-size: 0.9rem;
  letter-spacing: 0.02em;
  padding: 13px 28px;
  border-radius: var(--radius-pill) !important;
  border: 1px solid transparent;
  cursor: pointer;
  transition: background var(--t-base), color var(--t-base), border-color var(--t-base);
}
.btn-primary{
  background: var(--color-brand-dark) !important;
  color: var(--color-text-invert) !important;
  border-color: var(--color-brand-dark) !important;
}
.btn-primary:hover{
  background: var(--color-brand-darker) !important;
  border-color: var(--color-brand-darker) !important;
  border: 1px solid;
}
.btn-ghost{
  background: transparent !important;
  color: var(--color-brand-dark) !important;
  border-color: var(--color-brand) !important;
}
.btn-ghost:hover{
  background: var(--color-surface-soft) !important;
}
.btn-light{
  background: var(--color-surface) !important;
  color: var(--color-brand-dark) !important;
}
.btn-light:hover{
  background: var(--color-surface-soft) !important;
}
.btn-outline-light{
  background: transparent !important;
  color: var(--color-text-invert) !important;
  border-color: rgba(255,255,255,0.7) !important;
}
.btn-outline-light:hover{
  background: rgba(255,255,255,0.16) !important;
}

/* FAQ zonder JS: details/summary */
details{
  background: var(--color-surface);
  border: var(--hairline);
  border-radius: var(--radius-default);
  margin-bottom: 13px;
  overflow: hidden;
}
summary{
  list-style: none;
  cursor: pointer;
  padding: var(--space-lg) var(--space-xl);
  font-family: var(--font-heading);
  font-size: 1.3rem;
  font-weight: 600;
  color: var(--color-text-main);
}
summary::-webkit-details-marker{ display: none; }

/* Toegankelijkheid: zichtbare focus + reduced motion */
a:focus-visible,
button:focus-visible,
summary:focus-visible{
  outline: 2px solid var(--color-gold-dark);
  outline-offset: 3px;
}
@media (prefers-reduced-motion: reduce){
  *{ transition: none !important; scroll-behavior: auto !important; }
}





/* =============================================================
   HERO-SECTION
   Plaatsing: onder de fundering in
   Instellingen > Geavanceerd > Ontwikkelaars > CSS styling
   Haak: Uniek ID van het blok = hero-section
   Afbeelding via <img> (sneller dan background-image).
   ============================================================= */

/* Container van dit blok full-bleed maken (thema-override) */
.hero-section .container{
  width: 100%;
  max-width: none;
  padding: 0;
}

/* De section zelf is de positie-context + hoogte */
.hero-section{
  position: relative;
  min-height: 640px;
  display: flex;
  align-items: center;
  overflow: hidden;
  color: var(--color-text-invert);
}

/* Echte afbeelding die de hele sectie vult */
.hero-section .hero-img{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  z-index: 0;
}

/* Donkere overlay van links naar rechts, als losse laag boven de img */
.hero-section .hero-overlay{
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(95deg,
    rgba(40,34,33,0.74) 0%,
    rgba(40,34,33,0.45) 42%,
    rgba(40,34,33,0.12) 78%,
    rgba(40,34,33,0) 100%);
}

/* Inhoud links uitgelijnd, met eigen leesbreedte */
.hero-section .hero-inner{
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: var(--container);
  margin: 0 auto;
  padding: 120px 28px 150px;
}
.hero-section .hero-inner .eyebrow{ color: #f1ddc5; }
.hero-section .hero-inner h1{
  margin: var(--space-sm) 0 var(--space-sm);
  text-shadow: 0 2px 30px rgba(0,0,0,0.28);
  max-width: 12ch;
  color: #fff !important;
}
.hero-section .hero-inner h1 em{ color: #f0c9a8; }
.hero-section .hero-inner p{
  color: #f4ece6;
  font-size: 1.14rem;
  line-height: 1.5;
  max-width: 34ch;
  margin: 0 0 var(--space-xl);
}
.hero-section .hero-cta{
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
}

@media (max-width: 600px){
  .hero-section{ min-height: 560px; }
  .hero-section .hero-inner{ padding: 96px 22px 120px; }
}

@media (min-width: 992px){

#primary_navigation {
  text-align: right;
}

header div.header.full-width div.wrapper img.logo {
  height: 100px !important;
}

header div.header div.holder {
    height: auto;
  }
body header > div.wrapper {
    min-height: 150px;
  }
body.home header > div.wrapper {
    min-height: 150px;
  }

}

/* =============================================================
   UITGELICHTE ONDERDELEN (quicklinks)
   Onder de fundering in Ontwikkelaars > CSS styling.
   Haak: Uniek ID van het blok = quicklinks-section
   ============================================================= */

/* Sectie over de onderrand van de hero schuiven (overlap/diepte) */
.quicklinks-section{
  position: relative;
  z-index: 5;
  margin-top: -86px;
  padding-bottom: var(--space-3xl);
}

/* Houd de inhoud op onze leesbreedte */
.quicklinks-section .container{
  max-width: var(--container);
}

/* Grid van 4 kaarten */
.quicklinks-grid{
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
}

/* Kaart: wit, hairline, signatuur-hoek linksonder, zachte schaduw */
.qcard{
  display: block;
  background: var(--color-surface);
  border: var(--hairline);
  border-radius: var(--radius-default) var(--radius-default) var(--radius-default) 30px;
  padding: 26px 22px;
  box-shadow: var(--shadow-soft);
  transition: transform var(--t-base), box-shadow var(--t-base);
}
.qcard:hover{
  transform: translateY(-5px);
  box-shadow: var(--shadow-lift);
}

/* Gouden cirkel-icoon */
.qcard .qi{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px; height: 44px;
  margin-bottom: 16px;
  border: 1px solid var(--color-gold);
  border-radius: var(--radius-pill);
  color: var(--color-gold-dark);
}

/* Titel en tekst zijn spans (block gemaakt) om wpautop te ontwijken */
.qcard .qcard-title{
  display: block;
  font-family: var(--font-heading);
  font-size: 1.4rem;
  font-weight: 600;
  line-height: var(--lh-tight);
  color: var(--color-text-main);
  margin-bottom: var(--space-xs);
}
.qcard .qcard-text{
  display: block;
  font-size: var(--fs-small);
  color: var(--color-text-muted);
}

@media (max-width: 900px){
  .quicklinks-grid{ grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px){
  .quicklinks-grid{ grid-template-columns: 1fr; }
  .quicklinks-section{ margin-top: -60px; }
}



/* =============================================================
   BEHANDELINGEN
   Onder de fundering in Ontwikkelaars > CSS styling.
   Haak: Uniek ID van het blok = treatments-section
   ============================================================= */

/* Lichte sectie, ruime verticale ademruimte */
.treatments-section{
  background: var(--color-surface);
  padding: var(--space-3xl) 0;
}
.treatments-section .container{
  max-width: var(--container);
}

/* Kop gecentreerd */
.treatments-header{
  text-align: center;
  max-width: 600px;
  margin: 0 auto var(--space-2xl);
}
.treatments-header .treatments-title{
  display: block;
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: var(--fs-h2);
  line-height: var(--lh-tight);
  color: var(--color-text-main);
  margin: var(--space-sm) 0 var(--space-sm);
}
.treatments-header .treatments-title em{ font-style: italic; color: var(--color-brand-dark); }
.treatments-header .treatments-intro{
  display: block;
  color: var(--color-text-muted);
  max-width: 54ch;
  margin: 0 auto;
}

/* Grid van 3 kolommen */
.treatments-grid{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 26px;
}

/* Kaart: porselein, hairline, signatuur-hoek linksonder */
.treatment-card{
  display: flex;
  flex-direction: column;
  background: var(--color-bg);
  border: var(--hairline);
  border-radius: var(--radius-default) var(--radius-default) var(--radius-default) var(--radius-corner);
  overflow: hidden;
  transition: transform var(--t-base), box-shadow var(--t-base);
}
.treatment-card:hover{
  transform: translateY(-6px);
  box-shadow: var(--shadow-soft);
}
.treatment-card .treatment-image{
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}
.treatment-card .t-body{
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 22px 24px 26px;
}
.treatment-card .t-title{
  font-family: var(--font-heading);
  font-size: var(--fs-h3);
  font-weight: 600;
  line-height: var(--lh-tight);
  color: var(--color-text-main);
}
.treatment-card .t-meta{
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--color-gold-dark);
  margin: var(--space-xs) 0 var(--space-sm);
}
.treatment-card .t-text{
  font-size: 0.93rem;
  color: var(--color-text-body);
  line-height: 1.6;
  flex: 1;
}
.treatment-card .t-link{
  align-self: flex-start;
  margin-top: var(--space-lg);
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  color: var(--color-brand-dark);
  border-bottom: 1px solid var(--color-brand);
  padding-bottom: 2px;
}

/* "Alle behandelingen" kaart */
.treatment-card--more{
  background: var(--color-surface-soft);
  border-style: dashed;
  border-color: var(--color-brand);
  justify-content: center;
}
.treatment-card--more .t-title{ color: var(--color-brand-dark); }
.treatment-card--more .t-morebtn{
  align-self: flex-start;
  margin-top: var(--space-lg);
  display: inline-block;
  font-weight: 600;
  font-size: 0.9rem;
  color: var(--color-brand-dark);
  border: 1px solid var(--color-brand);
  border-radius: var(--radius-pill);
  padding: 11px 24px;
}

@media (max-width: 900px){
  .treatments-grid{ grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px){
  .treatments-grid{ grid-template-columns: 1fr; }
}


/* =============================================================
   OVER ONS (teaser) met overlap + gouden hoek
   Onder de fundering in Ontwikkelaars > CSS styling.
   Haak: Uniek ID van het blok = about-section
   ============================================================= */

.about-section{
  padding: var(--space-3xl) 0;
}
.about-section .container{
  max-width: var(--container);
}

/* Twee kolommen: beeld + tekst */
.about-grid{
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  gap: 64px;
  align-items: center;
}

/* Beeld met ruimte voor het roze vlak eronder/achter */
.about-media{
  position: relative;
  padding: 0 0 26px 26px;
}
/* Zacht roze vlak, offset achter de foto (gelaagdheid) */
.about-media::before{
  content: "";
  position: absolute;
  left: 0; bottom: 0;
  width: 62%; height: 78%;
  background: var(--color-surface-soft);
  border-radius: var(--radius-default) var(--radius-default) var(--radius-default) var(--radius-corner);
  z-index: 1;
}
/* Gouden hoek-accent rechtsboven */
.about-media::after{
  content: "";
  position: absolute;
  right: 6px; top: -14px;
  width: 84px; height: 84px;
  border-top: 1px solid var(--color-gold);
  border-right: 1px solid var(--color-gold);
  border-radius: 0 var(--radius-sm) 0 0;
  z-index: 3;
}
.about-media .about-image{
  position: relative;
  z-index: 2;
  width: 100%;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  border-radius: var(--radius-default) var(--radius-default) var(--radius-default) var(--radius-corner);
  box-shadow: var(--shadow-soft);
}

/* Tekstkolom */
.about-copy .about-title{
  display: block;
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: var(--fs-h2);
  line-height: var(--lh-tight);
  color: var(--color-text-main);
  margin: var(--space-sm) 0 var(--space-md);
}
.about-copy .about-title em{ font-style: italic; color: var(--color-brand-dark); }
.about-copy .about-text{
  display: block;
  color: var(--color-text-body);
  max-width: 50ch;
  margin-bottom: var(--space-md);
}
.about-copy .btn{ margin-top: var(--space-sm); }

@media (max-width: 900px){
  .about-grid{ grid-template-columns: 1fr; gap: 40px; }
  .about-media{ max-width: 460px; }
}



/* =============================================================
   FAQ (leunt op details/summary uit de fundering)
   Onder de fundering in Ontwikkelaars > CSS styling.
   Haak: Uniek ID van het blok = faq-section
   ============================================================= */

.faq-section{
  background: var(--color-surface);
  padding: var(--space-3xl) 0;
}
.faq-section .container{
  max-width: var(--container);
}

/* Kop gecentreerd */
.faq-header{
  text-align: center;
  margin-bottom: var(--space-2xl);
}
.faq-header .faq-title{
  display: block;
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: var(--fs-h2);
  line-height: var(--lh-tight);
  color: var(--color-text-main);
  margin-top: var(--space-sm);
}
.faq-header .faq-title em{ font-style: italic; color: var(--color-brand-dark); }

/* Lijst op nette leesbreedte */
.faq-list{
  max-width: 780px;
  margin: 0 auto;
}

/* Summary als rij: vraag links, plus/min rechts */
.faq-section summary{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

/* Plus/min-icoon, opgebouwd uit twee streepjes */
.faq-section summary .pm{
  position: relative;
  flex: none;
  width: 20px; height: 20px;
}
.faq-section summary .pm::before,
.faq-section summary .pm::after{
  content: "";
  position: absolute;
  background: var(--color-gold-dark);
}
.faq-section summary .pm::before{ left: 0; right: 0; top: 9px; height: 2px; }
.faq-section summary .pm::after{ top: 0; bottom: 0; left: 9px; width: 2px; transition: opacity var(--t-base); }
/* Open: het verticale streepje verdwijnt (plus wordt min) */
.faq-section details[open] summary .pm::after{ opacity: 0; }

/* Antwoord */
.faq-section .faq-answer{
  display: block;
  padding: 0 var(--space-xl) var(--space-lg);
  color: var(--color-text-body);
  font-size: 0.98rem;
  max-width: 66ch;
}

/* =============================================================
   AFSPRAAK CTA (donkere band)
   Onder de fundering in Ontwikkelaars > CSS styling.
   Haak: Uniek ID van het blok = cta-section
   ============================================================= */

.cta-section{
  background: var(--color-bg);
/*  padding: var(--space-xl) 0 var(--space-3xl);*/
}
.cta-section .container{
  max-width: var(--container);
}

/* De band zelf: donker, signatuur-hoek linksonder */
.cta-box{
  position: relative;
  overflow: hidden;
  background: var(--color-dark);
  color: var(--color-text-invert);
  border-radius: var(--space-md) var(--space-md) var(--space-md) 70px;
  padding: 72px 30px;
  text-align: center;
}
/* Gouden hoek-accent linksboven */
.cta-box::before{
  content: "";
  position: absolute;
  left: 34px; top: 30px;
  width: 70px; height: 70px;
  border-top: 1px solid var(--color-gold);
  border-left: 1px solid var(--color-gold);
  border-radius: var(--radius-default) 0 0 0;
  opacity: 0.6;
}

.cta-box .eyebrow{ color: #e7c79a; }
.cta-box .cta-title{
  display: block;
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: var(--fs-h2);
  line-height: var(--lh-tight);
  color: #ffffff;
  margin: var(--space-sm) 0 var(--space-sm);
}
.cta-box .cta-title em{ font-style: italic; color: #f0c9a8; }
.cta-box .cta-text{
  display: block;
  color: #d9cfc8;
  max-width: 46ch;
  margin: 0 auto var(--space-xl);
}

.footer-cta.text-center.above {
  background: var(--color-bg);
}


/* =============================================================
   BEHANDELINGPAGINA (blauwdruk) — alle blokken
   Onder de fundering in Ontwikkelaars > CSS styling.
   Werkt voor elke behandeling; teksten/foto wisselen per pagina.
   Haken (Uniek ID per blok): bh-hero, bh-desc, bh-does, bh-faq
   ============================================================= */

/* ---------- 01 · BEHANDELING-HERO (Uniek ID: bh-hero) ---------- */
.bh-hero .container{ max-width: var(--container); }
.bh-hero{ padding: 54px 0 84px; }
.bh-grid{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  align-items: center;
}
.bh-copy{ display: block; }
.bh-crumb{
  display: block;
  font-size: 0.78rem;
  color: var(--color-text-muted);
  margin-bottom: 18px;
}
.bh-title{
  display: block;
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: clamp(2.6rem, 5vw, 4rem);
  line-height: var(--lh-tight);
  color: var(--color-text-main);
  margin: var(--space-sm) 0 var(--space-xs);
}
.bh-lead{
  display: block;
  font-size: 1.12rem;
  color: var(--color-text-body);
  max-width: 42ch;
  margin: var(--space-xs) 0 var(--space-md);
}
.bh-chips{ display: flex; gap: 12px; margin: var(--space-md) 0 var(--space-lg); }
.bh-chips .chip{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: var(--hairline);
  background: var(--color-surface);
  border-radius: var(--radius-pill);
  padding: 9px 18px;
  font-size: 0.82rem;
  font-weight: 600;
  color: var(--color-text-main);
}
.bh-chips .ci{ display: flex; color: var(--color-gold-dark); }
.bh-cta{ display: flex; gap: 12px; flex-wrap: wrap; }

.bh-media{ position: relative; padding: 0 18px 18px 0; }
.bh-media .bh-image{
  position: relative;
  z-index: 2;
  width: 100%;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  border-radius: var(--radius-default) var(--radius-default) var(--radius-default) var(--radius-corner);
  box-shadow: var(--shadow-soft);
}
/* gouden hoek-accent rechtsonder */
.bh-media::after{
  content: "";
  position: absolute;
  right: 0; bottom: 0;
  width: 48%; height: 62%;
  border-bottom: 1px solid var(--color-gold);
  border-right: 1px solid var(--color-gold);
  border-radius: 0 0 var(--radius-corner) 0;
  z-index: 1;
  opacity: 0.7;
}

/* ---------- 02 · OVER DEZE BEHANDELING (Uniek ID: bh-desc) ---------- */
.bh-desc{ background: var(--color-surface); padding: var(--space-3xl) 0; }
.bh-desc .container{ max-width: var(--container); }
.bh-desc-inner{ max-width: 680px; }
.bh-desc-title{
  display: block;
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: clamp(2rem, 4vw, 2.7rem);
  line-height: var(--lh-tight);
  color: var(--color-text-main);
  margin-bottom: var(--space-md);
}
.bh-desc-title em{ font-style: italic; color: var(--color-brand-dark); }
.bh-desc-text{ display: block; color: var(--color-text-body); max-width: 66ch; margin-bottom: var(--space-md); }

/* ---------- 03 · WAT HET DOET (Uniek ID: bh-does) ---------- */
.bh-does{ padding: var(--space-3xl) 0; }
.bh-does .container{ max-width: var(--container); }
.bh-does-head{ text-align: center; margin-bottom: var(--space-2xl); }
.bh-does-title{
  display: block;
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: clamp(2rem, 4vw, 2.7rem);
  line-height: var(--lh-tight);
  color: var(--color-text-main);
  margin-top: var(--space-sm);
}
.bh-does-grid{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.bh-bcard{
  display: block;
  background: var(--color-surface);
  border: var(--hairline);
  border-radius: var(--radius-default) var(--radius-default) var(--radius-default) var(--radius-corner);
  padding: 30px 26px;
}
.bh-bcard .ic{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 52px; height: 52px;
  border: 1px solid var(--color-gold);
  border-radius: var(--radius-pill);
  color: var(--color-gold-dark);
  margin-bottom: 18px;
}
.bh-bcard .bc-title{
  display: block;
  font-family: var(--font-heading);
  font-size: 1.5rem;
  font-weight: 600;
  color: var(--color-text-main);
  margin-bottom: var(--space-xs);
}
.bh-bcard .bc-text{ display: block; font-size: 0.95rem; color: var(--color-text-body); }

/* ---------- 04 · FAQ (Uniek ID: bh-faq) ---------- */
/* Generiek: .faq-list werkt op elke pagina. details/summary/.pm/.faq-answer
   staan deels al in de fundering; hier de layout + plus/min-icoon. */
.bh-faq{ background: var(--color-surface); padding: var(--space-3xl) 0; }
.bh-faq .container{ max-width: var(--container); }
.bh-faq-head{ text-align: center; margin-bottom: var(--space-2xl); }
.bh-faq-title{
  display: block;
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: clamp(2rem, 4vw, 2.7rem);
  line-height: var(--lh-tight);
  color: var(--color-text-main);
  margin-top: var(--space-sm);
}
.bh-faq-title em{ font-style: italic; color: var(--color-brand-dark); }

.faq-list{ max-width: 780px; margin: 0 auto; }
/* details op een lichte achtergrond binnen een witte sectie */
.bh-faq .faq-list details{ background: var(--color-bg); }
.faq-list summary{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.faq-list summary .pm{ position: relative; flex: none; width: 20px; height: 20px; }
.faq-list summary .pm::before,
.faq-list summary .pm::after{ content: ""; position: absolute; background: var(--color-gold-dark); }
.faq-list summary .pm::before{ left: 0; right: 0; top: 9px; height: 2px; }
.faq-list summary .pm::after{ top: 0; bottom: 0; left: 9px; width: 2px; transition: opacity var(--t-base); }
.faq-list details[open] summary .pm::after{ opacity: 0; }
.faq-list .faq-answer{
  display: block;
  padding: 0 var(--space-xl) var(--space-lg);
  color: var(--color-text-body);
  font-size: 0.98rem;
  max-width: 66ch;
}

/* ---------- responsive ---------- */
@media (max-width: 860px){
  .bh-grid{ grid-template-columns: 1fr; gap: 36px; }
  .bh-media{ order: -1; max-width: 460px; }
  .bh-does-grid{ grid-template-columns: 1fr; }
}



/* =============================================================
   CONTACT-PAGINA (themasjabloon "Contact")
   Onder de fundering in Ontwikkelaars > CSS styling.
   Cosmetisch only: alles gescoped op .contact zodat het thema-
   template en de Ninja Forms-techniek intact blijven.
   ============================================================= */

.contact{ padding: var(--space-3xl) 0; }
.contact .container{ max-width: var(--container); }

/* paginakop */
.contact .page-header{ text-align: center; margin-bottom: var(--space-2xl); }
.contact .page-header h1{ font-size: clamp(2.4rem, 5vw, 3.4rem); }

/* sectiekopjes (Afspraak maken / Contact / aside-titels) */
.contact .wrap > h4,
.contact aside .head h4{
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: 1.6rem;
  color: var(--color-text-main);
  margin-bottom: var(--space-md);
}

/* ---------- formulier-velden ---------- */
.contact .nf-field-container{ margin-bottom: var(--space-md); }
.contact .nf-field-element input[type="text"],
.contact .nf-field-element input[type="email"],
.contact .nf-field-element input[type="tel"],
.contact .nf-field-element textarea,
.contact .pikaday__display{
  width: 100%;
  border: 1px solid var(--border-color);
  border-radius: var(--radius-default);
  padding: 12px 16px;
  font-family: var(--font-body);
  font-size: 0.95rem;
  color: var(--color-text-main);
  background: var(--color-surface);
  transition: border-color var(--t-base), box-shadow var(--t-base);
}
.contact .nf-field-element textarea{ min-height: 130px; resize: vertical; }
.contact .nf-field-element input:focus,
.contact .nf-field-element textarea:focus,
.contact .pikaday__display:focus{
  outline: none;
  border-color: var(--color-brand);
  box-shadow: 0 0 0 3px rgba(201, 123, 140, 0.15);
}
.contact .nf-field-element input::placeholder,
.contact .nf-field-element textarea::placeholder{ color: var(--color-text-muted); }

/* verplicht-sterretje en hint in de merkkleur */
.contact .ninja-forms-req-symbol{ color: var(--color-brand-dark); }
.contact .nf-form-fields-required{ font-size: 0.8rem; color: var(--color-text-muted); margin-bottom: var(--space-md); }

/* verzendknop: kleur komt al van .btn-primary; hier alleen wat lucht */
.contact .submit-wrap input[type="submit"]{ margin-top: var(--space-sm); }

/* privacyregel */
.contact .contact-privacy p{ font-size: 0.82rem; color: var(--color-text-muted); }

/* ---------- zijbalk (aside) ---------- */
.contact aside .block{
  background: var(--color-surface);
  border: 1px solid var(--border-color);
  border-radius: var(--radius-default) var(--radius-default) var(--radius-default) var(--radius-corner);
  padding: 26px 24px;
  margin-bottom: 22px;
}
.contact aside .list-unstyled{ list-style: none; padding: 0; margin: 0; }
.contact aside .list-unstyled li{ line-height: 1.9; color: var(--color-text-body); }
.contact aside .list-unstyled li strong{ color: var(--color-text-main); }

/* openingstijden-tabel */
.contact .opening_hours{ width: 100%; border-collapse: collapse; }
.contact .opening_hours td{ padding: 7px 0; border-bottom: 1px solid var(--border-color); font-size: 0.9rem; }
.contact .opening_hours tr:last-child td{ border-bottom: none; }
.contact .opening_hours td:last-child{ text-align: right; color: var(--color-text-muted); }

/* kaart met dezelfde signatuur-hoek */
.contact .googlemap .map,
.contact .map.js-map{
  height: 300px;
  border-radius: var(--radius-default) var(--radius-default) var(--radius-default) var(--radius-corner);
  overflow: hidden;
}

/* op tablet/mobiel netjes onder elkaar (het thema-grid regelt de breedtes) */
@media (max-width: 860px){
  .contact aside{ margin-top: var(--space-xl); }
}


/* =============================================================
   FOOTER (thema: footer.footer-cta-above + .socket)
   Onder de rest in Ontwikkelaars > CSS styling.
   Achtergrond- en tekstkleuren met !important om het thema
   netjes te overschrijven.
   ============================================================= */

/* ---------- footer-body ---------- */
footer.footer-cta-above{
  background: #241F1D !important;   /* donkere inkt */
  color: #d8cfc8 !important;
  padding: 70px 0 40px;
}
footer.footer-cta-above .container{ max-width: var(--container); }

/* kolommen wat lucht op mobiel */
footer.footer-cta-above .column{ margin-bottom: 30px; }

/* kopjes in goud */
footer.footer-cta-above h4{
  font-family: var(--font-body);
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--color-gold) !important;
  margin-bottom: 1.1rem;
}

/* merk-kolom: grote naam in Cormorant */
footer.footer-cta-above .foot-brand h4{
  font-family: var(--font-heading);
  font-size: 1.7rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  text-transform: none;
  color: #ffffff !important;
  margin-bottom: 0.6rem;
}

/* tekst en links */
footer.footer-cta-above p,
footer.footer-cta-above td,
footer.footer-cta-above li{
  font-size: 0.88rem;
  line-height: 1.85;
  color: #cabfb7 !important;
}
footer.footer-cta-above a{ color: #cabfb7 !important; transition: color var(--t-base); }
footer.footer-cta-above a:hover{ color: #ffffff !important; }

/* openingstijden-tabel */
footer.footer-cta-above .opening_hours{ width: 100%; border-collapse: collapse; }
footer.footer-cta-above .opening_hours td{ padding: 5px 0; border: none; }
footer.footer-cta-above .opening_hours td:last-child{ text-align: right; color: #a89f98 !important; }

/* social-iconen */
footer.footer-cta-above .social-media ul.list-inline{
  list-style: none; padding: 0; margin: 0;
  display: flex; gap: 12px; flex-wrap: wrap;
}
footer.footer-cta-above .social-media li{ margin: 0; }
footer.footer-cta-above .social-media a{
  display: flex; align-items: center; justify-content: center;
  width: 40px; height: 40px; border-radius: 50%;
  border: 1px solid rgba(191,161,92,0.5);
  color: var(--color-gold) !important;
}
footer.footer-cta-above .social-media a:hover{
  background: var(--color-gold) !important;
  color: #241F1D !important;
  border-color: var(--color-gold) !important;
}

/* ---------- socket (copyright-balk) ---------- */
.socket{
  background: #1C1816 !important;
  color: #9d938c !important;
  padding: 18px 0;
}
.socket .container{ max-width: var(--container); }
.socket span,
.socket a{ font-size: 0.78rem; color: #9d938c !important; }
.socket a:hover{ color: #ffffff !important; }
.socket .right{ text-align: right; }
.socket .right img{ display: inline-block; height: 16px; vertical-align: middle; margin-left: 6px; opacity: 0.7; }

@media (max-width: 768px){
  .socket .left, .socket .right{ text-align: center; }
  .socket .right{ margin-top: 8px; }
}

footer div.column > h4 {
  border-bottom: 0px solid #bfa15c;
}
footer div.socket, .footer-sticky {
  background: hsla(346.9, 41.9%, 63.5%, 0) !important;
}


/* =============================================================
   NAVIGATIE - DESKTOP (thema: SmartMenus / .navbar)
   Onder de rest in Ontwikkelaars > CSS styling.
   Extra streng: lange selectors vanaf header/.navbar +
   !important op alle visuele eigenschappen om het thema
   en SmartMenus' inline-stijlen te overschrijven.
   ============================================================= */

/* ---------- hoofdmenu-items ---------- */
header .navbar #primary_navigation > li > a,
header .navbar ul.navbar-nav#primary_navigation > li > a{
  font-family: var(--font-body) !important;
  font-size: 0.9rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.01em !important;
  color: var(--color-text-body) !important;
  background: transparent !important;
  padding: 10px 16px !important;
  border: none !important;
  text-transform: none !important;
  transition: color 0.25s ease !important;
}
header .navbar #primary_navigation > li > a:hover,
header .navbar #primary_navigation > li > a:focus,
header .navbar #primary_navigation > li.current-menu-item > a,
header .navbar #primary_navigation > li.active > a{
  color: var(--color-brand-dark) !important;
  background: transparent !important;
}

/* fijn gouden streepje onder actief/hover item */
header .navbar #primary_navigation > li{ position: relative !important; }
header .navbar #primary_navigation > li > a::after{
  content: "" !important;
  position: absolute !important;
  left: 16px !important; right: 16px !important; bottom: 4px !important;
  height: 1px !important;
  background: var(--color-gold) !important;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.25s ease !important;
}
header .navbar #primary_navigation > li:hover > a::after,
header .navbar #primary_navigation > li.current-menu-item > a::after,
header .navbar #primary_navigation > li.active > a::after{ transform: scaleX(1); }

/* uitklap-pijltje */
header .navbar #primary_navigation .sub-arrow{ color: var(--color-gold-dark) !important; }

/* ---------- uitklapmenu (Behandelingen) ---------- */
header .navbar #primary_navigation ul.dropdown-menu{
  background: var(--color-surface) !important;
  border: 1px solid var(--border-color) !important;
  border-radius: var(--radius-default) !important;
  box-shadow: var(--shadow-soft) !important;
  padding: 8px 0 !important;
  min-width: 230px !important;
}
header .navbar #primary_navigation ul.dropdown-menu > li{
  background: transparent !important;
  border: none !important;
}
header .navbar #primary_navigation ul.dropdown-menu > li > a{
  font-family: var(--font-body) !important;
  font-size: 0.88rem !important;
  font-weight: 500 !important;
  color: var(--color-text-body) !important;
  background: transparent !important;
  padding: 9px 20px !important;
  border: none !important;
  text-transform: none !important;
  transition: background 0.25s ease, color 0.25s ease !important;
}
header .navbar #primary_navigation ul.dropdown-menu > li > a:hover,
header .navbar #primary_navigation ul.dropdown-menu > li > a:focus{
  background: var(--color-surface-soft) !important;
  color: var(--color-brand-dark) !important;
}

/* het mobiele social-blok niet op desktop tonen */
header .navbar .social-media.visible-xs{ display: none !important; }

/* logo netjes */
header .logo{ height: auto !important; }


/* =============================================================
   NAVIGATIE - MOBIEL (uitgeklapt hamburgermenu)
   Onder de desktop-menu-CSS in Ontwikkelaars > CSS styling.
   ALLEEN STIJL: geen uitlijning, geen herpositionering van het
   pijltje. Positionering en submenu-gedrag blijven van het thema.
   Breakpoint: pas 991px aan als de hamburger op een andere
   breedte verschijnt.
   ============================================================= */
@media (max-width: 991px){

  /* ---------- hamburgerknop (alleen kleur) ---------- */
  header .navbar .navbar-toggle i,
  header .navbar .navbar-toggle .fa-bars{
    color: var(--color-brand-dark) !important;
  }

  /* ---------- uitgeklapt paneel (alleen achtergrond/rand) ---------- */
  header .navbar .navbar-collapse{
    background: var(--color-surface) !important;
    border-top: 1px solid var(--border-color) !important;
  }

  /* ---------- items: alleen kleur, scheidingslijn, wat lucht ---------- */
  header .navbar #primary_navigation > li{
    border-bottom: 1px solid var(--border-color) !important;
  }
  header .navbar #primary_navigation > li:last-child{ border-bottom: none !important; }
  header .navbar #primary_navigation > li > a{
    color: var(--color-text-body) !important;
    padding: 14px 22px !important;
  }
  /* het gouden streepje van desktop hier uit */
  header .navbar #primary_navigation > li > a::after{ display: none !important; }

  /* ---------- submenu (alleen kleuren/achtergrond, geen layout) ---------- */
  header .navbar #primary_navigation ul.dropdown-menu{
    background: var(--color-bg) !important;
    border: none !important;
    box-shadow: none !important;
  }
  header .navbar #primary_navigation ul.dropdown-menu > li > a{
    color: var(--color-text-body) !important;
  }
  /* pijltje: alleen de kleur, verder met rust laten (thema regelt positie) */
  header .navbar #primary_navigation .sub-arrow{
    color: var(--color-gold-dark) !important;
  }

  /* ---------- social-blok (hoort op mobiel wel zichtbaar) ---------- */
  header .navbar .social-media.visible-xs{
    border-top: 1px solid var(--border-color) !important;
    padding: 16px 22px !important;
  }
  header .navbar .social-media.visible-xs a{
    color: var(--color-gold-dark) !important;
  }
}


/* =============================================================
   RECENSIES-PAGINA (thema: section.archive.reviews)
   Onder de rest in Ontwikkelaars > CSS styling.
   Fotokolom verborgen (verplichte foto wordt niet getoond);
   tekst pakt de volle breedte. Opmaak in onze stijl.
   ============================================================= */

/* ---------- sectie + kop ---------- */
.archive.reviews{
  background: var(--color-bg);
  padding: 64px 0 84px;
}
.archive.reviews .container{ max-width: var(--container); }

.archive.reviews .breadcrumbs{
  font-size: 0.82rem;
  color: var(--color-text-muted);
  margin-bottom: 1.6rem;
}
.archive.reviews .breadcrumbs a{ color: var(--color-text-muted); }
.archive.reviews .breadcrumbs a:hover{ color: var(--color-brand-dark); }

.archive.reviews .page-header{
  text-align: center;
  margin-bottom: 2.6rem;
  border: none;
  padding: 0;
}
.archive.reviews .page-header h1{
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: clamp(2.1rem, 4.5vw, 3rem);
  color: var(--color-text-main);
}
/* klein gouden streepje onder de titel als signatuur */
.archive.reviews .page-header h1::after{
  content: "";
  display: block;
  width: 46px;
  height: 1px;
  background: var(--color-gold);
  margin: 1rem auto 0;
}

/* ---------- recensie-kaart ---------- */
.archive.reviews .review{
  background: var(--color-surface);
  border: 1px solid var(--border-color);
  border-radius: var(--radius-default);
  box-shadow: var(--shadow-soft);
  padding: 40px 44px;
  max-width: 640px;
  margin: 0 auto 22px;
  text-align: center;
  position: relative;
  overflow: hidden;
}
/* signatuur-hoek rechtsboven */
.archive.reviews .review::after{
  content: "";
  position: absolute;
  top: 0; right: 0;
  width: 54px; height: 54px;
  border-top: 2px solid var(--color-gold);
  border-right: 2px solid var(--color-gold);
  border-top-right-radius: var(--radius-corner);
  opacity: 0.5;
}

/* fotokolom verbergen, tekst volle breedte */
.archive.reviews .review .col-sm-12{ display: none !important; }
.archive.reviews .review .col-sm-36{
  width: 100% !important;
  float: none !important;
  padding: 0 !important;
}

/* titel van de recensie */
.archive.reviews .review h4{
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: 1.5rem;
  color: var(--color-text-main);
  margin-bottom: 0.8rem;
}

/* de recensietekst */
.archive.reviews .review p{
  font-family: var(--font-heading);
  font-style: italic;
  font-size: 1.25rem;
  line-height: 1.5;
  color: var(--color-text-body);
  margin-bottom: 1.2rem;
}

/* naam onderaan */
.archive.reviews .review .blockquote{ margin: 0; padding: 0; border: none; }
.archive.reviews .review .blockquote-footer{
  font-family: var(--font-body);
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--color-gold-dark);
}
.archive.reviews .review .blockquote-footer cite{ font-style: normal; }

div.page-header h1 {
  border-bottom: 0px solid #e6e6e6;
}
.breadcrumbs {
  display: none;
}

section.contact div.page-header h1 {
  border-bottom: 0px solid #e6e6e6;
}

.intro.text.block0 {
  z-index: 0;
  position: relative;
}


/* =============================================================
   BEHANDELINGEN-OVERZICHT (thema: section.archive.treatments)
   Onder de rest in Ontwikkelaars > CSS styling.
   Automatisch ingeladen overzichtspagina. Opmaak in onze stijl.
   ============================================================= */

/* ---------- sectie + kop ---------- */
.archive.treatments{
  background: var(--color-bg);
  padding: 64px 0 84px;
}
.archive.treatments .container{ max-width: var(--container); }

.archive.treatments .breadcrumbs{
  font-size: 0.82rem;
  color: var(--color-text-muted);
  margin-bottom: 1.6rem;
}
.archive.treatments .breadcrumbs a{ color: var(--color-text-muted); }
.archive.treatments .breadcrumbs a:hover{ color: var(--color-brand-dark); }

.archive.treatments .page-header{
  text-align: center;
  margin-bottom: 2.8rem;
  border: none;
  padding: 0;
}
.archive.treatments .page-header h1{
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: clamp(2.1rem, 4.5vw, 3rem);
  color: var(--color-text-main);
}
/* klein gouden streepje onder de titel als signatuur */
.archive.treatments .page-header h1::after{
  content: "";
  display: block;
  width: 46px;
  height: 1px;
  background: var(--color-gold);
  margin: 1rem auto 0;
}

/* ---------- item (kaart) ---------- */
.archive.treatments .item{
  height: auto !important;          /* overschrijft inline height:201px */
  background: var(--color-surface);
  border: 1px solid var(--border-color);
  border-radius: var(--radius-default);
  box-shadow: var(--shadow-soft);
  padding: 30px 22px 26px;
  margin-bottom: 26px;
  transition: transform var(--t-base), box-shadow var(--t-base);
}
.archive.treatments .item:hover{
  transform: translateY(-4px);
  box-shadow: var(--shadow-lift);
}

/* ronde foto */
.archive.treatments .item .img-circle{
  width: 140px;
  height: 140px;
  object-fit: cover;
  border-radius: 50% !important;
  margin: 0 auto 18px;
  border: 1px solid var(--border-color);
}

/* titel */
.archive.treatments .item h4{
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: 1.4rem;
  color: var(--color-text-main);
  margin: 0;
  transition: color var(--t-base);
}
.archive.treatments .item a:hover h4{ color: var(--color-brand-dark); }

/* gouden streepje onder de titel, verschijnt bij hover */
.archive.treatments .item h4::after{
  content: "";
  display: block;
  width: 26px;
  height: 1px;
  background: var(--color-gold);
  margin: 0.7rem auto 0;
  opacity: 0;
  transition: opacity var(--t-base);
}
.archive.treatments .item:hover h4::after{ opacity: 1; }

/* FIX: gelijke rijen behandelingen-overzicht */
.post-type-archive-behandelingen .treatments > .row{
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
}
.post-type-archive-behandelingen .treatments > .row > [class*="col-"]{
  float: none;
  display: flex;
}
.post-type-archive-behandelingen .treatments > .row > [class*="col-"] > .item{
  width: 100%;
  display: flex;
  flex-direction: column;
}

.table > thead > tr > th {
  padding-top: 38px !important;
  padding-bottom: 12px;
}

.table > tbody > tr > td, .table > tbody > tr > th, .table > tfoot > tr > td, .table > tfoot > tr > th, .table > thead > tr > td, .table > thead > tr > th {
  padding: 24px;
}
