
  @import url('https://fonts.googleapis.com/css?family=Open+Sans:400,700&display=swap');
  @import url('https://fonts.googleapis.com/css?family=Raleway:400,700&display=swap');

  body {
  font-family: 'Open Sans', sans-serif;
  }

  h1, h2, h3, h4, h5, h6 {
  font-family: 'Raleway', 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: #595959;
  }

  h1, h2, h3, h4, h5, h6 {
  color: #595959 !important;
  }

  a,
  .woocommerce ul.products li.product .price,
  .woocommerce .price {
  color: #7b466f !important;
  }

  a:hover,
  .woocommerce ul.products li.product .price,
  .woocommerce .price,
  .product-usps li i,
  .counter {
  color: #562e4d !important;
  }

  .btn,
  .wpcf7-submit,
  .woocommerce span.onsale,
  .woocommerce a.button,
  .woocommerce .button,
  [type="submit"],
  .nf-form-content input[type=submit]
  {
  background: #7b466f !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: #562e4d !important;
  color: #fff !important;
  }

  div.social-media ul li a {
  background: #6f3b63 !important;
  color: #fff !important;
  }

  div.social-media ul li a i {
  color: #fff !important;
  }

  div.social-media ul li a:hover {
  background: #562e4d !important;
  color: #fff !important;
  }
  footer div.social-media ul li a {
  background: #7b466f !important;
  }

  div.phone a.phone, div.email a.email {
  background: #6f3b63 !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: #562e4d !important;
  color: #fff !important;
  }

  header button.navbar-toggle {
  color: #6f3b63;
  border-color: #6f3b63;
  }

  .woocommerce-info,
  .woocommerce-message {
  border-top-color: #6f3b63 !important;
  }

  .woocommerce-info::before,
  .woocommerce-message::before {
  color: #6f3b63 !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, .5) !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://ofelya.nbsals7.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;
  }




  @media only screen and (min-width : 992px) {
  body.home header > div.wrapper {
  min-height: 350px;
    }
  body.home header > div.wrapper.above {
  min-height: 500px;
    }
  }

  @media only screen and (min-width : 992px) {
  body header > div.wrapper {
  min-height: 225px;
    }
  body header > div.wrapper.above {
  min-height: 375px;
    }
  body header > div.wrapper.above::after,
  body header > div.wrapper.above.shadow::before,
  body header > div.wrapper.above_shadow::before {
    }
  body header > div.wrapper.sticky_menu .header__content {
    }
  }

  @media only screen and (min-width : 992px) {
  header > div.wrapper {
  min-height: 174px;
  }
  header > div.wrapper.above {
  min-height: 324px;
  }

  header div.header div.holder {
  height: 74px;
  }
  }





  nav.navbar-default, div.navbar-collapse {
  background-color: #6f3b63; !important;
  }

  @media only screen and (min-width : 992px) {
  
  div.navbar-collapse {
  background: none !important;
  }

  header nav.navbar-default {
  background-color: rgba(111, 59, 99, .5) !important;
  }

  nav.navbar-default div.navbar-collapse ul.navbar-nav>li a:hover {
  background-color: rgba(111, 59, 99, .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: #6f3b63 !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 #7b466f;
  }

  @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: #7b466f !important;
  }
  }


  header div.header div.contact i {
  color: #7b466f;
  }

  @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: #595959 !important;
  }

  section.featured div.item,
  section.news div.item {
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  }

  section.partners {
  background: #7b466f !important;
  }

  section.partners img {
  border-radius: 0 !important;
  }

  footer,
  .footer-cta.center:after,
  .author {
  background: #6f3b63 !important;
  }

  footer div.column > h4 {
  border-bottom: 1px solid #7b466f;
  }

  footer div.socket,
  .footer-sticky {
  background: #562e4d !important;
  }


  section.treatments div.items div.item img {
  border-radius: 100% !important;
  }

  .img-circle {
  border-radius: 100% !important;
  }

  section.treatments div.button-wrap {
  background: #9c7694;
  margin-top: 30px;
  }

  section.treatments div.item a {
  color: #595959 !important;
  }

  section.prices table tr td a {
  color: #595959 !important;
  }

  aside div.block.treatments ul li a,
  .woocommerce .widget_product_categories ul li a,
  .woocommerce .widget_product_categories ul li span {
  color: #595959 !important;
  }

  aside div.block.treatments ul li:hover,
  .woocommerce .widget_product_categories ul li:hover {
  background: #6f3b63;
  }

  /* =============================================================
   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;
}
.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; }
}


/* =============================================================
   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);
}