
  @import url('https://fonts.googleapis.com/css?family=Archivo:400,700&display=swap');
  @import url('https://fonts.googleapis.com/css?family=Raleway:400,700&display=swap');

  body {
  font-family: 'Archivo', 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: #222222;
  }

  h1, h2, h3, h4, h5, h6 {
  color: #222222 !important;
  }

  a,
  .woocommerce ul.products li.product .price,
  .woocommerce .price {
  color: #8cb89f !important;
  }

  a:hover,
  .woocommerce ul.products li.product .price,
  .woocommerce .price,
  .product-usps li i,
  .counter {
  color: #8cb89f !important;
  }

  .btn,
  .wpcf7-submit,
  .woocommerce span.onsale,
  .woocommerce a.button,
  .woocommerce .button,
  [type="submit"],
  .nf-form-content input[type=submit]
  {
  background: #8cb89f !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: #8cb89f !important;
  color: #fff !important;
  }

  div.social-media ul li a {
  background: #f2ecec !important;
  color: #fff !important;
  }

  div.social-media ul li a i {
  color: #fff !important;
  }

  div.social-media ul li a:hover {
  background: #8cb89f !important;
  color: #fff !important;
  }
  footer div.social-media ul li a {
  background: #8cb89f !important;
  }

  div.phone a.phone, div.email a.email {
  background: #f2ecec !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: #8cb89f !important;
  color: #fff !important;
  }

  header button.navbar-toggle {
  color: #f2ecec;
  border-color: #f2ecec;
  }

  .woocommerce-info,
  .woocommerce-message {
  border-top-color: #f2ecec !important;
  }

  .woocommerce-info::before,
  .woocommerce-message::before {
  color: #f2ecec !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://haarzorg.nbsals3.nl/wp-content/uploads/sites/157/2026/07/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;
      min-height: 456px;
    }
  body.home header > div.wrapper.above {
  min-height: 500px;
      min-height: 606px;
    }
  }

  @media only screen and (min-width : 992px) {
  body header > div.wrapper {
  min-height: 225px;
      min-height: 256px;
    }
  body header > div.wrapper.above {
  min-height: 375px;
      min-height: 406px;
    }
  body header > div.wrapper.above::after,
  body header > div.wrapper.above.shadow::before,
  body header > div.wrapper.above_shadow::before {
      top: 181px;
    }
  body header > div.wrapper.sticky_menu .header__content {
      margin-top: 181px;
    }
  }

  @media only screen and (min-width : 992px) {
  header > div.wrapper {
  min-height: 281px;
  }
  header > div.wrapper.above {
  min-height: 431px;
  }

  header div.header div.holder {
  height: 181px;
  }
  }

  .topbar {
  background: #193046;
  }
  .topbar {
  color: #ffffff;
  }




  nav.navbar-default, div.navbar-collapse {
  background-color: #ffffff; !important;
  }

  @media only screen and (min-width : 992px) {
  
  div.navbar-collapse {
  background: none !important;
  }

  header nav.navbar-default {
  background-color: rgba(255, 255, 255, 1) !important;
  }

  nav.navbar-default div.navbar-collapse ul.navbar-nav>li a:hover {
  background-color: rgba(255, 255, 255, 1) !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: #f2ecec !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 #8cb89f;
  }

  @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: #8cb89f !important;
  }
  }


  header div.header div.contact i {
  color: #8cb89f;
  }

  @media only screen and (min-width : 992px) {
  header div.navbar-collapse {
  text-align: right;
  }
  }

  section.featured div.item p,
  section.news div.item p {
  color: #222222 !important;
  }

  section.featured div.item,
  section.news div.item {
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  }

  section.partners {
  background: #8cb89f !important;
  }

  section.partners img {
  border-radius: 0 !important;
  }

  footer,
  .footer-cta.center:after,
  .author {
  background: #f2ecec !important;
  }

  footer div.column > h4 {
  border-bottom: 1px solid #8cb89f;
  }

  footer div.socket,
  .footer-sticky {
  background: #8cb89f !important;
  }


  section.treatments div.items div.item img {
  border-radius: 100% !important;
  }

  .img-circle {
  border-radius: 100% !important;
  }

  section.treatments div.button-wrap {
  background: #175873;
  margin-top: 30px;
  }

  section.treatments div.item a {
  color: #222222 !important;
  }

  section.prices table tr td a {
  color: #222222 !important;
  }

  aside div.block.treatments ul li a,
  .woocommerce .widget_product_categories ul li a,
  .woocommerce .widget_product_categories ul li span {
  color: #222222 !important;
  }

  aside div.block.treatments ul li:hover,
  .woocommerce .widget_product_categories ul li:hover {
  background: #f2ecec;
  }

  .salon-grid-child {
  padding: 2rem;
  box-shadow: 0px 0px 10px hsla(0, 0%, 0%, 0.1);
  border-radius: 0.7rem;
}

.home .dc-sectie.dc-spec {
  padding-top: 0;
}

.page-header, .breadcrumbs {
  display: none;
}

.featured-image img {
  width: 100%;
}

.haarwerken__column--colouredBackground {
  background-color: #9ec3ae;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 1.3rem;
  color: #fff;
/*  outline: 4px solid #fff;
  outline-offset: -20px;*/
}

.cw {color: #fff !important; }

.cta-blok {
  background: #9ec3ae;
  color: #fff;
  padding: 2rem;
  margin-bottom: 1rem;
/*  outline: 1px solid #fff;
  outline-offset: -10px;*/
}

.cta {
  padding: 30px;
  background: #F2ECEC;
  margin: 1rem 0;
  border-radius: 2rem;
}

.nf-form-content button, .nf-form-content input[type="button"], .nf-form-content input[type="submit"] {
  color: #8cb89f !important;
}

.label.danger {
  border-color: #dc3545;
  color: #dc3545;
  background: #ffd9dc;
}

.label i {
  font-size: 18px;
}
.label {
  padding: 8px;
  line-height: 1;
  font-size: 13px;
  border: 1px solid hsl(133.8, 61.5%, 30.6%);
  border-radius: 6px;
  color: #1e7e34;
  margin: 0 auto 11px 0;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  gap: 5px;
  width: 90%;
  width: fit-content;
  background: hsl(135, 100%, 96.9%);
}

.locatie-foto img {
  width: 100%;
  object-fit: cover;
  max-height: 420px;
  margin-bottom: 2rem;
}
.salon-grid-child {
  position: relative;
  padding-bottom: 2rem;
  overflow: hidden;
}

.row-heading.multiple {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}

.row-heading.multiple img {
  max-height: 85px;
  margin-bottom: 2rem;
}
.salon-button {
  grid-column: 1 / span 2;
}
.salon-grid-child::after {
z-index: -1;
  width: 300%;
  height: 220px;
  background-repeat: repeat-x;
  background-size: 100% 100%;
  content: "";
  position: absolute;
  left: -520px;
  bottom: -60px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1600' height='198' viewBox='0 0 1600 198'%3E%3Cpath fill='%23193046' fill-opacity='1' d='M0,96L80,106.7C160,117,320,139,480,138.7C640,139,800,117,960,112C1120,107,1280,117,1360,122.3L1440,128L1600,133.3V198H1440V198H1360V198H1280V198H1120V198H960V198H800V198H640V198H480V198H320V198H160V198H80V198H0V198Z'%3E%3C/path%3E%3C/svg%3E");
}
.salon-adres {
  color: #a8a8a8;
}
.salon-grid {
  gap: 2rem;
}
.salon-grid > p {
  display: none;
}
.salon-grid-child {
  display: grid;
  grid-template-columns: 1fr auto;
  column-gap: 3rem;
}
.salon-info {
  border-right: 1px solid #eee;
}
.salon-button {
  margin-top: 1rem;
}
.salon-adres {
  margin-top: -1rem;
  margin-bottom: 2rem;
}
.salon-cta {
display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: start;
  gap: 6px;
}
.salon-grid h4 {
  margin-top: 0;
}
section.partners div.item {
  height: 100px;
}

@media only screen and (min-width: 992px) {

body.home header > div.wrapper.above {
    min-height: 526px;
    height: 70vh;
  }

body header > div.wrapper.above {
    min-height: 181px;
    height: 0;
  }


.salon-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
}

.salon-button {
  display: flex;
  gap: 1rem;
    align-items: center;
}


header>div.wrapper div.wrapper img.logo {
    max-width: 120px;
    width: 120px!Important;
}
header>div.wrapper.sticky_menu.sticky_header.sticky_menu_small .header .holder img {
    max-width: 60px;
}
header .topbar {
  text-align: right;
}
section.partners .col-sm-8 {
    width: 14%;
}
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: #ffffff !important;
}
.dropdown-menu {
    background-color: #193046;
    border-radius: 15px!important;
}
nav.navbar-default div.navbar-collapse ul.navbar-nav>li a:hover {
    background-color: rgba(255, 255, 255, 0) !important;
    box-shadow: inset 0 0 0 1000px rgb(255 255 255 / 20%);
}
}


@media only screen and (min-width: 992px) and (max-width: 1200px){
header div.header.full-width nav.navbar-default div.navbar-collapse ul.navbar-nav>li>a {
    font-size: 14px!important;
}

}


div.voorwaarden {
    margin-top: -12px!important;
    font-size: 15px!important;
    font-weight: 300!important;
}

header .topbar a {
  color: #fff !important;
  font-size: 18px;
  margin: 0em 6px;
}
header .topbar {
  padding: 2px 0;
}

.home section.featured a div.item {
  min-height: 350px;
}

section.partners div.item div.holder img {
    max-width: 120px;
}

[aria-expanded="true"] .ing:before {
    content: 'lees minder...'!important;
}


.dropdownsmall .nf-field .nf-field-element select {
    height: 38px!important;
    padding: 0 12px!important;
    font-size: 15px;
}
.dropdownsmall .nf-field .nf-field-element div::after {
    font-size: 15px;
    line-height: 62px;
}

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: #193046!important;
    opacity: 0.7;
}


header .header__content h1 {
    font-family: 'Carattere', cursive;
    font-weight: 500;
    font-size: 5em;
}

header .header__content h1 {
font-family: 'Carattere', cursive;
}

/*header div.header::after {
    border-bottom: 6px solid #193046;
}*/

.nf-form-content button, .nf-form-content input[type=button], .nf-form-content input[type=submit] {
    color: #f7f7f7;
}


input#nf-field-38-0, input#nf-field-38-1 {
    display: none!important;
}

[aria-expanded="false"] .ing:before  {
    content: 'lees meer...';
}

a.ing:before {
    content: 'lees meer...';
    cursor: pointer;
}

.mt-0 {margin-top: 0}
.tac {text-align: center;}

section.intro.text.block1 h2 {
    margin-bottom: -3rem;
}

section.featured a div.item h3 {
    color: #ffffff!important;
}
section.featured a div.item {
    background: #8cb89f;
    box-shadow: 0 0 50px -5px rgb(0 0 0 / 0%);
    margin-bottom: 30px;
    padding: 18px 30px;
    border: 0px solid #fff;
    transition: all .3s ease;
    border-radius: 20px;
    color: #ffffff!important;
}

a.ing {
    cursor: pointer;
}

a.bx-pager-link {
    width: 25px;
    height: 25px;
    line-height: 25px;
    display: block;
}
.bx-pager-item {
    display: inline-block;
    margin: 0 .5em;
    color: #000;
}
.bx-pager-link.active {
    background: rgba(0,0,0,0);
    border-radius: 22px;
    color: #fff;
  font-weight: 600;
}
.bx-controls.bx-has-pager {
    margin-top: 35px;
}

html {
  scroll-behavior: smooth;
}

section.intro {
    padding: 75px 0;
}

h4 {
    color: #193046!important;
}
section.featured a div.item img {
    border-radius: 15px;
}

section.featured a div.item h3 {
    font-size: 19px;
    font-weight: 600;
    margin-bottom: 15px;
    margin-top: 0;
    text-align: center;
}

header > div.wrapper::after {
  background-position: 0 36%;
}
.col-md-32.col-md-offset-8 {
  display: none;
}

.nf-form-content button, .nf-form-content input[type=button], .nf-form-content input[type=submit] {
    border: 0;
    transition: all .5s;
    padding: 0.7rem 1.3em!important;
    margin-top: 1em!important;
    border-radius: 50px!important;
}

.wrap h3 {
    margin-top: 0;
}

.nf-form-content .list-select-wrap .nf-field-element>div, .nf-form-content input:not([type=button]), .nf-form-content textarea {
    border: none!important;
    background-color: #ffffff!important;
}

.wrap {
/*    box-shadow: 0 0 50px -5px rgb(0 0 0 / 10%);*/
    padding: 2em;
    background-color: #F2ECEC;
    border-radius: 25px;
    margin: 2em 0;
}

footer a.btn.btn-primary {
    background-color: #8CB89F!important;
    color: #ffffff!important;
    margin-top: 0.5rem!important;
    margin-bottom: 0.5rem!important;
}
footer .column a {
    color: #F2ECEC!important;
}
.col-md-14.col-md-offset-2 {
    display: none;
}

footer div.socket, .footer-sticky {
    background: #8CB89F !important;
}
footer, .author {
    background: #193046 !important;
}

h4.panel-title {
    font-size: 15px;
    margin-top: 0;
}




a.btn.btn-primary {
    padding: 0.7rem 1.3em;
    margin-top: 1em;
    border-radius: 50px!important;
}

.row.vertical-align:nth-child(odd) {
    background-color: #F2ECEC;
}

.row.vertical-align {
    padding: 2em;
    margin: 5em 0px;
    border-radius: 25px;
}
.behandelingen-image img {
    border-radius: 100%;
}

behandelingen-tekst h4 {
    margin-top: 0;
}

.behandelingen-tekst P:last-child {
    margin-bottom: 0;
}

@media only screen and (min-width: 992px) {


header div.header.full-width nav.navbar-default div.navbar-collapse ul.navbar-nav>li>a {

    color: #193046!important;
    border-radius: 250px;
}
/*header>div.wrapper.above .header__content {
    transform: translateY(50%);
}*/

.nf-form-content {
    width: 100%!important;
    max-width: none!important;
}
.col-md-24.behandelingen-tekst {
    padding: 0 2em;
}
.behandelingen-tekst h4 {
    margin-top: 0;
}

body.home header > div.wrapper.above {
    min-height: 180px;
    height: 180px;
}

.vertical-align {
display:flex;
align-items:center;
}


}

@media only screen and (max-width: 991px) {

body header > div.wrapper.above {
    min-height: 375px;
    min-height: 486px;
    height: 70vh;
  }

header .topbar {
  text-align: center;
}

.partners .col-sm-8 {
  width: 50%;
  float: left;
}

.dc-usps {
  display: grid;
  grid-template-columns: 1fr 1fr;
}

.dc-sectie.dc-intro {
  padding-bottom: 0 !important;
}

header > div.wrapper::after {
  background-position: 20% 56%;
} 

.row-heading.multiple {
  margin-bottom: 2rem;
  row-gap: 2rem;
}

.row-heading.multiple > div {
  width: 50%;
}
.row-heading.multiple img {
  object-fit: contain;
  max-width: 100%;
  margin: auto;
}

.salon-info {
  margin: 0;
}

.salon-grid-child {
  gap: 1rem;
}

.salon-info {
  border-bottom: 1px solid #eee;
  border-right: none;
}

.salon-grid-child::after {
  width: 440% ;
}

.salon-grid {
  gap: 2rem;
  display: flex;
  flex-direction: column;
}

.salon-grid-child {
  display: flex;
  flex-direction: column;
}

.col-md-24.behandelingen-tekst {
    padding: 3em 1em;
}

.col-md-24.behandelingen-tekst h4 {
    margin-top: -1em;
}
div.social-media ul li a i {
    color: #8CB89F !important;
}
header nav.navbar-default div.navbar-header div.wrapper button.navbar-toggle {
    color: #8CB89F !important;
}
nav.navbar-default, div.navbar-collapse {
    background-color: #8CB89F ;
}
.testimonial img {
    margin: 0 auto!important;
    display: block;
}
/*.home .col-sm-12, .home .col-md-12 {
    width: 50%;
    float: left;
}*/
header>div.wrapper {
    min-height: 0;
    height: 150px;
}

}

/* No greater than 900px, no less than 400px */
@media (max-width:900px) and (min-width:400px) {
    .foo {
        display:none;
    }
}​

header > div.wrapper::after {
    background-position: center;
}

section.partners {
    background: #ffffff !important;
}


html {font-size: 100%;} /*16px*/

body {
  background: white;
  font-family: 'Montserrat', sans-serif;
  font-weight: 400;
  line-height: 1.75;
}

p {margin-bottom: 1rem;}

h1, h2, h3, h4, h5 {
    margin: 3rem 0 1.38rem;
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
    line-height: 1.3;
    color: #193046!important;
}


/* ==========================================================================
   DC Haarzorg — homepage secties
   Plak dit in: Weergave > Aanpassen > Extra CSS
   Alle klassen hebben de prefix .dc- zodat ze niet botsen met het thema.
   ========================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600&family=Carattere&display=swap');

.dc-sectie {
	--dc-navy: #193046;
	--dc-navy-deep: #10202F;
	--dc-sage: #8CB89F;
	--dc-sage-light: #9EC3AE;
	--dc-blush: #F2ECEC;
	--dc-blush-deep: #E8DEDE;
	--dc-white: #fff;
	--dc-grey: #A8A8A8;
	--dc-line: #EEE;
	--dc-body: "Montserrat", system-ui, sans-serif;
	--dc-display: "Carattere", cursive;
	--dc-pad: clamp(24px, 7vw, 110px);

	font-family: var(--dc-body);
	font-weight: 400;
	line-height: 1.75;
	color: var(--dc-navy);
	box-sizing: border-box;
}

.dc-sectie *,
.dc-sectie *::before,
.dc-sectie *::after {
	box-sizing: border-box
}

.dc-sectie p {
	margin: 0
}

.dc-sectie h1,
.dc-sectie h2,
.dc-sectie h3 {
	margin: 0;
	color: inherit !important;
	font-family: var(--dc-body)
}

.dc-sectie ul {
	list-style: none;
	margin: 0;
	padding: 0;
  gap: 1rem;
  margin-top: 1rem;
}

.dc-sectie img {
	display: block;
	max-width: 100%
}

.dc-sectie a {
	color: inherit
}

.dc-wrap {
	max-width: 1240px;
	margin: 0 auto
}

/* --- knoppen --- */
.dc-knoppen {
	display: flex;
	flex-wrap: wrap;
	gap: 14px
}

.dc-knop {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: .75rem 1.5em;
	border-radius: 50px;
	font-size: .87rem;
	font-weight: 600;
	text-decoration: none;
	transition: all .3s ease
}

.dc-knop svg {
	width: 17px;
	height: 17px;
	fill: none;
	stroke-width: 1.6
}

.dc-knop--primair {
	background: var(--dc-sage);
	color: var(--dc-white) !important;
	border: 1px solid var(--dc-sage)
}

.dc-knop--primair svg {
	stroke: var(--dc-white)
}

.dc-knop--primair:hover {
	background: var(--dc-navy);
	border-color: var(--dc-navy);
	color: var(--dc-white)
}

.dc-knop--rand {
	background: var(--dc-white);
	color: var(--dc-navy);
	border: 1px solid var(--dc-navy)
}

.dc-knop--rand svg {
	stroke: var(--dc-sage)
}

.dc-knop--rand:hover {
	background: var(--dc-navy);
	color: var(--dc-white)
}

.dc-knop--rand:hover svg {
	stroke: var(--dc-white)
}

.dc-knop--licht {
	background: var(--dc-white);
	color: var(--dc-navy);
	border: 1px solid var(--dc-white)
}

.dc-knop--licht:hover {
	background: transparent;
	color: var(--dc-white)
}

.dc-knop:focus-visible {
	outline: 2px solid var(--dc-sage);
	outline-offset: 3px
}

/* ==========================================================================
   1. HERO
   ========================================================================== */
.dc-hero {
	position: relative;
	background: var(--dc-white);
	overflow: hidden;
	padding-bottom: 96px
}

.dc-hero__inner {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
	align-items: center;
	min-height: 640px;
	gap: 48px
}

.dc-hero__content {
	padding: 88px 56px 88px var(--dc-pad);
	max-width: 700px
}

.dc-hero__titel {
	font-weight: 600;
	font-size: clamp(2.3rem, 4.8vw, 3.7rem);
	line-height: 1.12;
	letter-spacing: -.01em
}

.dc-hero__titel em {
	display: block;
	font-family: var(--dc-display);
	font-style: normal;
	font-weight: 400;
	font-size: 1.3em;
	line-height: .95;
	color: var(--dc-sage);
	margin: .05em 0
}

.dc-hero__sub {
	margin-top: 20px !important;
	font-size: 1rem;
	font-weight: 300;
	opacity: .85;
	max-width: 30em
}

.dc-usps {
	display: flex;
	flex-wrap: wrap;
	margin-top: 36px;
display: grid;
grid-template-columns: 1fr 1fr 1fr 1fr;
}

.dc-usp {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 0 20px;
	border-left: 1px solid var(--dc-line);
  flex-direction: column;
  text-align: center;
}

.dc-usp:first-child {
	padding-left: 0;
	border-left: 0
}

.dc-usp svg {
	flex: none;
	width: 19px;
	height: 19px;
	stroke: var(--dc-sage);
	fill: none;
	stroke-width: 1.5
}

.dc-usp span {
	font-size: .71rem;
	line-height: 1.45;
	font-weight: 500;
	opacity: .65
}

.dc-hero .dc-knoppen {
	margin-top: 36px
}

.dc-hero__foto {
	position: relative;
	align-self: stretch;
	min-height: 520px;
	background: linear-gradient(140deg, var(--dc-sage-light), var(--dc-sage) 55%, var(--dc-navy));
	display: grid;
	place-items: center
}

.dc-hero__foto img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover
}

.dc-hero__foto i {
	font-style: normal;
	font-size: .68rem;
	font-weight: 500;
	color: #fff;
	opacity: .9;
	letter-spacing: .08em;
	text-transform: uppercase;
	text-align: center;
	padding: 20px
}

.dc-badge {
	position: absolute;
	right: 6%;
	bottom: 34px;
	z-index: 3;
	width: 138px;
	height: 138px;
	border-radius: 50%;
	background: var(--dc-sage);
	color: var(--dc-white);
	display: grid;
	place-items: center;
	text-align: center;
	font-family: var(--dc-display);
	font-size: 1.35rem;
	line-height: 1.15;
	padding: 18px;
	transform: rotate(-4deg);
	box-shadow: 0 10px 30px rgba(25, 48, 70, .18)
}

.dc-scheur {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 110px;
	z-index: 2;
	display: block
}

/* ==========================================================================
   2. INTRO
   ========================================================================== */
.dc-intro {
	position: relative;
	background: var(--dc-blush);
	padding: 64px var(--dc-pad) 88px;
	overflow: hidden
}

.dc-intro__titel {
	font-family: var(--dc-display) !important;
	font-weight: 400;
	font-size: clamp(2rem, 4vw, 3rem);
	line-height: 1.2;
	color: var(--dc-sage) !important
}

.dc-intro__tekst {
	margin-top: 12px !important;
	max-width: 46em;
	font-size: 1rem;
	font-weight: 300
}

.dc-intro__art {
	position: absolute;
	right: 6%;
	bottom: 10px;
	width: 200px;
	opacity: .6;
	stroke: var(--dc-sage);
	fill: none;
	stroke-width: 1.4;
	stroke-linecap: round;
	stroke-linejoin: round;
	pointer-events: none
}

/* ==========================================================================
   3. IK WIL...
   ========================================================================== */
.dc-wegwijzer {
	padding: 96px var(--dc-pad);
	background: var(--dc-white)
}

.dc-wegwijzer__kop {
	display: flex;
	align-items: baseline;
	gap: 16px;
	flex-wrap: wrap
}

.dc-wegwijzer__titel {
	font-family: var(--dc-display) !important;
	font-weight: 400;
	font-size: clamp(2.2rem, 4.4vw, 3.2rem)
}

.dc-wegwijzer__hint {
	font-size: .85rem;
	font-weight: 300;
	color: var(--dc-grey)
}

.dc-wegwijzer__lijst {
	border-top: 1px solid var(--dc-line);
	margin-top: 28px
}

.dc-wegwijzer__lijst a {
	display: flex;
	align-items: center;
	gap: 18px;
	padding: 22px 8px;
	border-bottom: 1px solid var(--dc-line);
	text-decoration: none;
	transition: background .3s ease, padding .3s ease
}

.dc-wegwijzer__lijst a:hover,
.dc-wegwijzer__lijst a:focus-visible {
	background: var(--dc-blush);
	padding-left: 20px;
	padding-right: 20px
}

.dc-wegwijzer__lijst a:focus-visible {
	outline: 2px solid var(--dc-sage);
	outline-offset: -2px
}

.dc-vink {
	flex: none;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: var(--dc-sage);
	display: grid;
	place-items: center
}

.dc-vink svg {
	width: 13px;
	height: 13px;
	stroke: #fff;
	fill: none;
	stroke-width: 2.4
}

.dc-wegwijzer__label {
	flex: 1;
	font-size: clamp(1rem, 1.9vw, 1.22rem);
	font-weight: 500
}

.dc-wegwijzer__meta {
	font-size: .76rem;
	color: var(--dc-grey);
	white-space: nowrap
}

.dc-pijl {
	flex: none;
	width: 20px;
	height: 20px;
	stroke: var(--dc-navy);
	fill: none;
	stroke-width: 1.6;
	transition: transform .3s ease
}

.dc-wegwijzer__lijst a:hover .dc-pijl {
	transform: translateX(5px)
}

/* ==========================================================================
   4. + 7. KAARTEN (gedeeld)
   De kaart is nu de <li> zelf. Er zit geen link meer omheen, alleen erin,
   zodat WordPress de structuur niet kan opbreken.
   ========================================================================== */
.dc-kaart {
	position: relative;
	display: flex;
	flex-direction: column;
	background: var(--dc-white);
	border: 1px solid var(--dc-line);
	border-radius: 20px;
	overflow: hidden;
	transition: transform .3s ease, box-shadow .3s ease
}

.dc-kaart:hover {
	transform: translateY(-4px);
	box-shadow: 0 14px 34px rgba(25, 48, 70, .12)
}

.dc-kaart__img {
	position: relative;
	display: block;
	width: 100%;
	aspect-ratio: 4/3;
	background: linear-gradient(150deg, var(--dc-sage-light), var(--dc-sage))
}

.dc-kaart__img img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover
}

.dc-kaart__titel {
	font-size: .95rem;
	font-weight: 600;
	padding: 18px 20px 0;
	hyphens: auto;
	overflow-wrap: break-word
}

.dc-kaart__tekst {
	font-size: .83rem;
	font-weight: 300;
	line-height: 1.6;
	padding: 6px 20px 0;
	flex: 1 1 auto
}

.dc-meer {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: auto;
	padding: 14px 20px 20px;
	font-size: .8rem;
	font-weight: 600;
	color: var(--dc-sage);
	text-decoration: none;
	white-space: nowrap
}

.dc-meer svg {
	width: 15px;
	height: 15px;
	stroke: currentColor;
	fill: none;
	stroke-width: 1.8;
	transition: transform .3s ease
}

.dc-kaart:hover .dc-meer svg {
	transform: translateX(4px)
}

/* hele kaart klikbaar */
.dc-meer::after {
	content: "";
	position: absolute;
	inset: 0
}

.dc-meer:focus-visible {
	outline: none
}

.dc-kaart:focus-within {
	outline: 2px solid var(--dc-sage);
	outline-offset: 3px
}

.dc-spec {
	background: var(--dc-white);
	padding: 88px var(--dc-pad)
}

.dc-spec__titel {
	text-align: center;
	font-size: clamp(1.7rem, 3.2vw, 2.3rem);
	font-weight: 600;
	margin-bottom: 38px !important
}

.dc-spec__titel em {
	font-family: var(--dc-display);
	font-style: normal;
	font-weight: 400;
	font-size: 1.3em;
	color: var(--dc-sage)
}

.dc-spec__grid {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 20px;
	align-items: stretch
}

/* ==========================================================================
   5. MIJN VERHAAL
   ========================================================================== */
.dc-verhaal {
	background: var(--dc-navy);
	color: var(--dc-white)
}

.dc-verhaal__grid {
	display: grid;
	grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
	align-items: center
}

.dc-verhaal__foto {
	position: relative;
	align-self: stretch;
	min-height: 520px;
	background: linear-gradient(160deg, var(--dc-sage), var(--dc-navy-deep));
	display: grid;
	place-items: center
}

.dc-verhaal__foto img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover
}

.dc-verhaal__foto i {
	font-style: normal;
	font-size: .68rem;
	font-weight: 500;
	opacity: .9;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: #fff
}

.dc-verhaal__tekst {
	padding: 88px var(--dc-pad) 88px 56px;
	max-width: 720px
}

.dc-verhaal__eyebrow {
	font-size: .72rem;
	font-weight: 600;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: var(--dc-sage-light)
}

.dc-verhaal__quote {
	font-family: var(--dc-display) !important;
	font-size: clamp(1.8rem, 3.4vw, 2.6rem);
	line-height: 1.25;
	margin-top: 14px !important;
	color: #fff !important
}

.dc-verhaal__body {
	margin-top: 22px;
	font-weight: 300;
	font-size: .97rem;
	opacity: .9
}

.dc-verhaal__body p+p {
	margin-top: 14px !important
}

.dc-verhaal__pull {
	margin-top: 26px !important;
	padding-left: 20px;
	border-left: 2px solid var(--dc-sage);
	font-style: italic
}

.dc-verhaal__link {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	margin-top: 30px;
	font-weight: 600;
	font-size: .9rem;
	color: var(--dc-sage-light);
	text-decoration: none;
	border-bottom: 1px solid transparent;
	transition: all .3s ease
}

.dc-verhaal__link:hover {
	color: var(--dc-white);
	border-color: var(--dc-white)
}

.dc-verhaal__link svg {
	width: 17px;
	height: 17px;
	stroke: currentColor;
	fill: none;
	stroke-width: 1.8;
	transition: transform .3s ease
}

.dc-verhaal__link:hover svg {
	transform: translateX(4px)
}

/* ==========================================================================
   6. REVIEWS
   ========================================================================== */
.dc-reviews {
	background: var(--dc-blush)
}

.dc-reviews__grid {
	display: grid;
	grid-template-columns: minmax(240px, .8fr) minmax(0, 2.2fr) minmax(160px, .55fr);
	align-items: center;
	gap: 36px;
	padding: 60px 0 60px var(--dc-pad)
}

.dc-reviews__titel {
	font-size: clamp(1.6rem, 3vw, 2.1rem);
	font-weight: 600;
	line-height: 1.25;
	margin-bottom: 20px !important
}

.dc-reviews__titel em {
	font-family: var(--dc-display);
	font-style: normal;
	font-weight: 400;
	font-size: 1.3em;
	color: var(--dc-sage)
}

.dc-reviews__lijst {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px
}

.dc-quote {
	background: var(--dc-white);
	border-radius: 16px;
	padding: 26px 22px;
	text-align: center
}

.dc-sterren {
	color: var(--dc-sage);
	letter-spacing: .16em;
	font-size: .9rem
}

.dc-quote p {
	margin-top: 12px !important;
	font-size: .86rem;
	font-weight: 300;
	line-height: 1.65
}

.dc-reviews__foto {
	position: relative;
	align-self: stretch;
	min-height: 230px;
	border-radius: 16px 0 0 16px;
	overflow: hidden;
	background: linear-gradient(150deg, var(--dc-sage-light), var(--dc-navy));
	display: grid;
	place-items: center
}

.dc-reviews__foto img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover
}

.dc-reviews__foto i {
	font-style: normal;
	font-size: .62rem;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: #fff;
	opacity: .85
}

/* ==========================================================================
   7. KENNISCENTRUM
   ========================================================================== */
.dc-kennis {
	background: var(--dc-blush);
	padding: 0 var(--dc-pad) 80px
}

.dc-kennis__grid {
	display: grid;
	grid-template-columns: minmax(240px, .85fr) minmax(0, 2.4fr);
	gap: 40px;
	align-items: start;
	border-top: 1px solid var(--dc-blush-deep);
	padding-top: 56px
}

.dc-kennis__titel {
	font-size: clamp(1.5rem, 2.8vw, 1.95rem);
	font-weight: 600
}

.dc-kennis__intro p {
	margin: 10px 0 20px !important;
	font-size: .9rem;
	font-weight: 300;
	max-width: 26em
}

.dc-kennis__lijst {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 20px;
	align-items: stretch
}

.dc-kennis__lijst .dc-kaart__titel {
	flex: 1 1 auto;
	padding-bottom: 0
}

/* ==========================================================================
   8. AFSPRAAK
   ========================================================================== */
.dc-afspraak {
	background: var(--dc-blush-deep);
	padding: 56px var(--dc-pad)
}

.dc-spec__titel.mb-2 {
  margin-bottom: 1rem !important;
}

.dc-afspraak__inner {
	max-width: 1240px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 28px
}

.dc-afspraak__titel {
	font-size: clamp(1.6rem, 3vw, 2.1rem);
	font-weight: 600
}

.dc-afspraak p {
	margin-top: 8px !important;
	font-size: .9rem;
	font-weight: 300
}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */
@media (max-width:1050px) {
	.dc-spec__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr))
	}

	.dc-reviews__grid {
		grid-template-columns: 1fr;
		padding: 56px var(--dc-pad)
	}

	.dc-reviews__foto {
		display: none
	}

	.dc-kennis__grid {
		grid-template-columns: 1fr
	}
}

@media (max-width:900px) {
	.dc-hero__inner {
		grid-template-columns: 1fr;
		gap: 0;
		min-height: 0
	}

	.dc-hero__content {
		padding: 64px 24px 44px;
		order: 1
	}

	.dc-hero__foto {
		order: 2;
		min-height: 360px
	}

	.dc-badge {
		right: 24px;
		bottom: 70px;
		width: 116px;
		height: 116px;
		font-size: 1.15rem
	}

	.dc-intro__art {
		position: static;
		display: block;
		margin: 28px 0 0 auto;
		width: 140px
	}

	.dc-verhaal__grid {
		grid-template-columns: 1fr
	}

	.dc-verhaal__foto {
		min-height: 340px
	}

	.dc-verhaal__tekst {
		padding: 56px 24px 72px
	}

	.dc-wegwijzer {
		padding: 72px 24px
	}

	.dc-wegwijzer__meta {
		display: none
	}
}

@media (max-width:760px) {
	.dc-spec__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr))
	}

	.dc-reviews__lijst,
	.dc-kennis__lijst {
		grid-template-columns: minmax(0, 1fr)
	}

	.dc-spec {
		padding: 64px 24px
	}

	.dc-afspraak__inner {
		flex-direction: column;
		align-items: flex-start
	}

	.dc-knop {
		flex: 1 1 auto;
		justify-content: center
	}
}

@media (max-width:560px) {
	.dc-usp {
		padding: 0 13px
	}

	.dc-usp:nth-child(3) {
		border-left: 0;
		padding-left: 0
	}
}

@media (prefers-reduced-motion:reduce) {
	.dc-sectie * {
		transition: none !important;
		animation: none !important
	}
}


/* ==========================================================================
   DC Haarzorg — correcties voor WordPress
   Plak dit ONDER de bestaande CSS in Weergave > Aanpassen > Extra CSS.
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. Container van het thema uitschakelen voor deze acht blokken
   Vereist dat de Uniek ID's hernoemd zijn (zie LEESMIJ).
   -------------------------------------------------------------------------- */
section.dc-blok-hero,
section.dc-blok-intro,
section.dc-blok-ikwil,
section.dc-blok-spec,
section.dc-blok-verhaal,
section.dc-blok-reviews,
section.dc-blok-kennis,
section.dc-blok-afspraak {
	padding: 0 !important;
}

section.dc-blok-hero>.container,
section.dc-blok-intro>.container,
section.dc-blok-ikwil>.container,
section.dc-blok-spec>.container,
section.dc-blok-verhaal>.container,
section.dc-blok-reviews>.container,
section.dc-blok-kennis>.container,
section.dc-blok-afspraak>.container {
	max-width: none;
	width: 100%;
	padding-left: 0;
	padding-right: 0;
	margin-left: 0;
	margin-right: 0;
}

/* Kenniscentrum sluit direct aan op reviews: geen naad ertussen */
section.dc-blok-kennis {
	margin-top: -1px;
}

/* --------------------------------------------------------------------------
   2. wpautop opruimen
   WordPress voegt automatisch <br> en <p> toe. Hieronder maken we die
   onschadelijk zonder de <br>'s die we wél zelf gebruiken te slopen.
   -------------------------------------------------------------------------- */

/* lege paragrafen die wpautop achterlaat */
.dc-sectie p:empty {
	display: none;
}

/* losse <br> die WordPress achter blokelementen plakt */
.dc-kaart__img+br,
.dc-knoppen br,
.dc-verhaal__foto+br,
.dc-hero__foto+br {
	display: none;
}

/* paragraaf die om een losse link of svg is gezet: marge weg */
.dc-sectie p:has(> .dc-meer),
.dc-sectie p:has(> .dc-knop),
.dc-sectie p:has(> .dc-verhaal__link),
.dc-sectie p:has(> svg) {
	margin: 0 !important;
	padding: 0 !important;
}

/* "Lees meer" hoort onderaan de kaart, ook als er een <p> omheen zit */
.dc-kaart>p {
	margin: 0 !important;
}

.dc-kaart>p:last-child {
	margin-top: auto;
}

/* knoppen naast elkaar houden */
.dc-knoppen {
	align-items: center;
}

.dc-knoppen>p {
	margin: 0 !important;
	display: contents;
}

/* --------------------------------------------------------------------------
   3. Koppen: thema-marges neutraliseren
   Het thema zet 3rem marge op h1 t/m h5.
   -------------------------------------------------------------------------- */
.dc-sectie h1,
.dc-sectie h2,
.dc-sectie h3 {
	margin: 0 !important;
}

.dc-kaart__titel {
	padding: 18px 20px 0 !important;
}

.dc-spec__titel {
	margin-bottom: 38px !important;
}

.dc-reviews__titel {
	margin-bottom: 20px !important;
}


/* ==========================================================================
   DC Haarzorg — correcties voor WordPress
   Plak dit ONDER de bestaande CSS in Weergave > Aanpassen > Extra CSS.
   Werkt zonder dat je Uniek ID's hoeft te hernoemen.
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. Container van het thema uitschakelen
   Elke <section> die een .dc-sectie bevat, verliest zijn padding en
   breedtebeperking. Andere secties op de site blijven ongemoeid.
   -------------------------------------------------------------------------- */
section:has(.dc-sectie) {
	padding: 0 !important;
	max-width: none !important;
	width: auto !important;
}

section:has(.dc-sectie)>.container,
section:has(.dc-sectie)>.container-fluid,
section:has(.dc-sectie)>div {
	max-width: none !important;
	width: 100% !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

/* De achtergrondkleur hoort op .dc-sectie te zitten en die is nu volledig
   breed. Voor de zekerheid ook een blokweergave forceren. */
.dc-sectie {
	display: block;
	width: 100%;
}

/* --------------------------------------------------------------------------
   1b. NOODGREEP — alleen gebruiken als stap 1 niet genoeg is
   Werkt als een ouder-element hogerop (bijv. <main>) nog een max-breedte
   heeft. Haal het commentaar weg om te activeren.
   Let op: kan een horizontale scrollbalk geven.
   --------------------------------------------------------------------------
.dc-sectie{
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}
body{ overflow-x: hidden; }
   -------------------------------------------------------------------------- */

/* Kenniscentrum sluit direct aan op reviews: geen naad ertussen */
section:has(.dc-kennis) {
	margin-top: -1px;
}

/* --------------------------------------------------------------------------
   2. wpautop opruimen
   -------------------------------------------------------------------------- */
.dc-sectie p:empty {
	display: none;
}

.dc-kaart__img+br,
.dc-knoppen br,
.dc-verhaal__foto+br,
.dc-hero__foto+br {
	display: none;
}

.dc-sectie p:has(> .dc-meer),
.dc-sectie p:has(> .dc-knop),
.dc-sectie p:has(> .dc-verhaal__link),
.dc-sectie p:has(> svg) {
	margin: 0 !important;
	padding: 0 !important;
}

.dc-kaart>p {
	margin: 0 !important;
}

.dc-kaart>p:last-child {
	margin-top: auto;
}

.dc-knoppen {
	align-items: center;
}

.dc-knoppen>p {
	margin: 0 !important;
	display: contents;
}

/* --------------------------------------------------------------------------
   3. Thema-marges op koppen neutraliseren
   -------------------------------------------------------------------------- */
.dc-sectie h1,
.dc-sectie h2,
.dc-sectie h3 {
	margin: 0 !important;
}

.dc-kaart__titel {
	padding: 18px 20px 0 !important;
}

.dc-spec__titel {
	margin-bottom: 38px !important;
}

.dc-reviews__titel {
	margin-bottom: 20px !important;
}

.dc-sectie.dc-hero {
padding-bottom: 40px;
}


/* ==========================================================================
   DC Haarzorg — contentpagina's
   Plak dit ONDER de bestaande dc-CSS in Weergave > Aanpassen > Extra CSS.
   Deze blokken zijn generiek en worden hergebruikt op alle contentpagina's:
   paginakop, tekstblok, tekst-naast-beeld, behandelingen, stappen, punten.
   ========================================================================== */

/* --------------------------------------------------------------------------
   Let op: de bestaande CSS zet .dc-sectie h1/h2/h3 { margin: 0 !important }.
   Marges op koppen verliezen die strijd. Ritme wordt daarom geregeld met
   flex + gap. Waar een marge toch nodig is, staat de selector op
   .dc-sectie .x h2 zodat de specificiteit hoog genoeg is.
   -------------------------------------------------------------------------- */

/* --- 1. Paginakop --------------------------------------------------------- */
.dc-paginakop {
	background: var(--dc-blush);
	padding: 76px var(--dc-pad) 68px;
}

.dc-paginakop .dc-wrap {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 14px;
}

.dc-paginakop__kruimel {
	font-size: .72rem;
	font-weight: 600;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: var(--dc-sage);
}

.dc-paginakop__titel {
	font-weight: 600;
	font-size: clamp(2rem, 4.4vw, 3.2rem);
	line-height: 1.12;
	letter-spacing: -.01em;
}

.dc-paginakop__titel em {
	font-family: var(--dc-display);
	font-style: normal;
	font-weight: 400;
	font-size: 1.3em;
	color: var(--dc-sage);
}

.dc-paginakop__lead {
	max-width: 34em;
	font-size: 1.05rem;
	font-weight: 300;
}

/* --- 2. Tekstblok --------------------------------------------------------- */
.dc-tekst {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	font-weight: 300;
	max-width: 40em;
}

.dc-tekst h2 {
	font-size: clamp(1.5rem, 2.8vw, 1.95rem);
	font-weight: 600;
	line-height: 1.3;
}

.dc-tekst h3 {
	font-size: 1.05rem;
	font-weight: 600;
}

.dc-tekst h2 em,
.dc-behandeling__titel em {
	font-family: var(--dc-display);
	font-style: normal;
	font-weight: 400;
	font-size: 1.3em;
	color: var(--dc-sage);
}

.dc-sectie .dc-tekst h2:not(:first-child),
.dc-sectie .dc-tekst h3:not(:first-child) {
	margin-top: .7rem !important;
}

/* --- 3. Duo: tekst naast beeld -------------------------------------------- */
.dc-duo {
	padding: 88px var(--dc-pad);
	background: var(--dc-white);
}

.dc-duo--blush {
	background: var(--dc-blush);
}

.dc-duo__grid {
	max-width: 1240px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
	gap: clamp(32px, 5vw, 72px);
	align-items: center;
}

/* Beeld links, tekst rechts. In de HTML staat de tekst altijd eerst,
   zodat de leesvolgorde op mobiel klopt. */
.dc-duo--omgekeerd .dc-duo__grid>.dc-tekst {
	order: 2;
}

.dc-duo--omgekeerd .dc-duo__grid>.dc-duo__foto {
	order: 1;
}

.dc-duo__foto {
	position: relative;
	border-radius: 20px;
	overflow: hidden;
	aspect-ratio: 4/5;
	background: linear-gradient(150deg, var(--dc-sage-light), var(--dc-sage));
}

.dc-duo__foto img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* --- 4. Behandelingen ----------------------------------------------------- */
.dc-behandelingen {
	padding: 88px var(--dc-pad);
	background: var(--dc-white);
}

.dc-behandelingen__grid {
	max-width: 1240px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	gap: 56px;
}

.dc-behandeling {
	display: grid;
	grid-template-columns: minmax(220px, .7fr) minmax(0, 1.8fr);
	gap: clamp(24px, 4vw, 56px);
	align-items: start;
	padding-top: 44px;
	border-top: 1px solid var(--dc-line);
}

.dc-behandeling:first-child {
	padding-top: 0;
	border-top: 0;
}

.dc-behandeling__kop {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.dc-behandeling__titel {
	font-size: clamp(1.4rem, 2.4vw, 1.75rem);
	font-weight: 600;
	line-height: 1.25;
}

.dc-behandeling__lead {
	font-family: var(--dc-display);
	font-size: 1.4rem;
	line-height: 1.25;
	color: var(--dc-sage);
}

.dc-behandeling__body {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	font-weight: 300;
	max-width: 42em;
}

/* --- 5. Stappen (alleen bij een echte volgorde) --------------------------- */
.dc-stappen {
	list-style: none;
	margin: .4rem 0 !important;
	padding: 0;
	counter-reset: dc-stap;
	display: flex;
	flex-direction: column;
	gap: 18px;
}

.dc-stap {
	display: grid;
	grid-template-columns: 34px minmax(0, 1fr);
	gap: 16px;
	align-items: start;
}

.dc-stap::before {
	counter-increment: dc-stap;
	content: counter(dc-stap);
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: var(--dc-sage);
	color: #fff;
	font-size: .82rem;
	font-weight: 600;
	display: grid;
	place-items: center;
}

.dc-stap b {
	display: block;
	font-weight: 600;
	font-size: .95rem;
	line-height: 1.5;
}

.dc-stap span {
	font-weight: 300;
	font-size: .92rem;
}

/* --- 6. Puntenlijst ------------------------------------------------------- */
.dc-punten {
	padding: 80px var(--dc-pad);
	background: var(--dc-navy);
	color: var(--dc-white);
}

.dc-punten__grid {
	max-width: 1240px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: minmax(240px, .8fr) minmax(0, 1.6fr);
	gap: clamp(28px, 4vw, 56px);
	align-items: start;
}

.dc-punten__titel {
	font-size: clamp(1.6rem, 3vw, 2.1rem);
	font-weight: 600;
	line-height: 1.25;
	color: #fff !important;
}

.dc-punten__titel em {
	font-family: var(--dc-display);
	font-style: normal;
	font-weight: 400;
	font-size: 1.3em;
	color: var(--dc-sage-light);
}

.dc-punten__lijst {
	list-style: none;
	margin: 0 !important;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px 32px;
}

.dc-punten__lijst li {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	font-size: .95rem;
	font-weight: 300;
	line-height: 1.55;
}

.dc-punten__lijst .dc-vink {
	margin-top: 2px;
}

/* --- 7. Responsive -------------------------------------------------------- */
@media (max-width:1050px) {
	.dc-punten__grid {
		grid-template-columns: 1fr;
	}

	.dc-behandeling {
		grid-template-columns: 1fr;
		gap: 20px;
	}
}

@media (max-width:900px) {
	.dc-duo__grid {
		grid-template-columns: 1fr;
		gap: 32px;
	}

	.dc-duo--omgekeerd .dc-duo__grid>.dc-tekst,
	.dc-duo--omgekeerd .dc-duo__grid>.dc-duo__foto {
		order: 0;
	}

	.dc-duo__foto {
		aspect-ratio: 4/3;
	}

	.dc-paginakop {
		padding: 56px 24px 48px;
	}

	.dc-duo,
	.dc-behandelingen,
	.dc-punten {
		padding: 64px 24px;
	}
}

@media (max-width:620px) {
	.dc-punten__lijst {
		grid-template-columns: 1fr;
	}
}

/* --------------------------------------------------------------------------
   8. Thema-header inklappen
   Het thema geeft niet-homepagina's een header van 70vh met een eigen H1.
   Naast .dc-paginakop levert dat twee koppen en twee hero's op.
   Haal het commentaar weg en vul het juiste pagina-ID in
   (zichtbaar in de URL van de paginabewerker: post=123).
   --------------------------------------------------------------------------
body.page-id-123 header > div.wrapper.above{
  min-height: 0;
  height: 0;
  overflow: hidden;
}
   -------------------------------------------------------------------------- */


/* ==========================================================================
   DC Haarzorg — aanvullingen op de contentpagina-CSS
   Plak dit ONDER knippen-kleuren.css.
   Vijf kleine, herbruikbare toevoegingen.
   ========================================================================== */

/* --- Lead-zin binnen een tekstblok ---------------------------------------
   Voor een openingsvraag of kernzin die zwaarder moet wegen dan de rest,
   zonder een kop te zijn.
   ------------------------------------------------------------------------- */
.dc-tekst__lead {
	font-size: 1.15rem;
	line-height: 1.6;
	font-weight: 300;
}

/* --- Notitie / terzijde ---------------------------------------------------
   Voor prijsinformatie, vergoedingen, voorwaarden. Rustig, niet als
   waarschuwing. Ook bruikbaar op Haarwerken.
   ------------------------------------------------------------------------- */
.dc-notitie {
	padding: 12px 0 12px 18px;
	border-left: 2px solid var(--dc-sage);
	font-size: .9rem;
	font-weight: 300;
}

/* --- Behandelingen op blush ---------------------------------------------- */
.dc-behandelingen--blush {
	background: var(--dc-blush);
}

.dc-behandelingen--blush .dc-behandeling {
	border-top-color: var(--dc-blush-deep);
}

/* --- Puntenlijst in één kolom --------------------------------------------
   Gebruiken bij drie punten of minder; twee kolommen geeft dan een
   ongelijke laatste rij.
   ------------------------------------------------------------------------- */
.dc-punten__lijst--enkel {
	grid-template-columns: minmax(0, 1fr);
}

/* --- Introtekst naast de titel in een puntensectie ------------------------ */
.dc-punten__intro {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.dc-punten__tekst {
	font-size: .95rem;
	font-weight: 300;
	line-height: 1.65;
	opacity: .85;
}



/* ==========================================================================
   DC Haarzorg — aanvulling: verhalend blok
   Plak dit ONDER elegant-grijs.css.
   ========================================================================== */

/* --- Relaas ---------------------------------------------------------------
   Een smalle, gecentreerde kolom voor een verhaal of anekdote. Bewust
   ingetogen: geen kader, geen accentvlak, geen beeld. Het verhaal moet
   niet lezen als een verkoopargument.
   Ook bruikbaar voor een klantverhaal op andere pagina's.
   ------------------------------------------------------------------------- */
.dc-relaas {
	padding: 88px var(--dc-pad);
	background: var(--dc-white);
}

.dc-relaas__inner {
	max-width: 46em;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	gap: 1rem;
	font-weight: 300;
}

.dc-relaas__titel {
	font-size: clamp(1.5rem, 2.8vw, 1.95rem);
	font-weight: 600;
	line-height: 1.3;
}

.dc-relaas__titel em {
	font-family: var(--dc-display);
	font-style: normal;
	font-weight: 400;
	font-size: 1.3em;
	color: var(--dc-sage);
}

.dc-relaas .dc-notitie {
	margin-top: .6rem;
}

@media (max-width:900px) {
	.dc-relaas {
		padding: 64px 24px;
	}
}


/* ==========================================================================
   DC Haarzorg — aanvulling: voor/na
   Plak dit ONDER hoofdhuidproblemen.css.
   ========================================================================== */

/* --- Voor / na ------------------------------------------------------------
   Twee beelden in gelijke kaders, met een label erboven. De bronbestanden
   hebben verschillende verhoudingen; object-fit trekt ze gelijk zodat de
   vergelijking eerlijk oogt.
   Past als kolom in een .dc-duo__grid, of los in een .dc-wrap.
   ------------------------------------------------------------------------- */
.dc-voorna {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px;
}

.dc-voorna__item {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.dc-voorna__label {
	font-size: .7rem;
	font-weight: 600;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: var(--dc-sage);
}

.dc-voorna__beeld {
	position: relative;
	border-radius: 20px;
	overflow: hidden;
	aspect-ratio: 3/4;
	background: linear-gradient(150deg, var(--dc-sage-light), var(--dc-sage));
}

.dc-voorna__beeld img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* Op smalle schermen naast elkaar houden: de vergelijking valt weg
   zodra de beelden onder elkaar staan. */
@media (max-width:520px) {
	.dc-voorna {
		gap: 10px;
	}

	.dc-voorna__beeld {
		border-radius: 14px;
	}
}


/* ==========================================================================
   DC Haarzorg — aanvullingen voor de subpagina's
   Plak dit ONDER haarwerken.css.
   ========================================================================== */

/* Vetgedrukte aanhef binnen een puntenlijst.
   Voor punten met een korte kernterm en een toelichting erachter. */
.dc-punten__lijst strong {
	font-weight: 600;
}

/* Kruimelpad als link. Op subpagina's verwijst de kruimel naar de
   bovenliggende pagina; op hoofdpagina's blijft het gewone tekst. */
.dc-paginakop__kruimel a {
	color: inherit;
	text-decoration: none;
	border-bottom: 1px solid transparent;
	transition: border-color .3s ease;
}

.dc-paginakop__kruimel a:hover {
	border-bottom-color: currentColor;
}

.dc-paginakop__kruimel a:focus-visible {
	outline: 2px solid var(--dc-sage);
	outline-offset: 3px;
}



/* ==========================================================================
   DC Haarzorg — locatiepagina's
   Plak dit ONDER de wpautop-correcties.

   Deze CSS style ALLE locatiepagina's in één keer. Er is geen CSS per
   locatie: je schrijft dit één keer en het raakt elke pagina die de
   dc-locatie-structuur gebruikt.

   Wat je per pagina in de HTML doet: de bestaande inhoud (adres, tijden,
   knoppen, prijs-iframe, kaart) in de dc-locatie-structuur zetten. De
   GEGEVENS blijven per pagina verschillen; de OPMAAK staat hier centraal.
   Zie het HTML-voorbeeld in locatie-voorbeeld.html.
   ========================================================================== */

/* --- Paginakop met kruimelpad --------------------------------------------- */
.dc-locatie-kop {
	background: var(--dc-blush);
	padding: 40px var(--dc-pad) 36px;
}

.dc-locatie-kop .dc-wrap {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.dc-kruimel {
	font-size: .8rem;
	font-weight: 300;
	color: var(--dc-grey);
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.dc-kruimel a {
	color: var(--dc-grey);
	text-decoration: none;
	border-bottom: 1px solid transparent;
	transition: border-color .3s ease;
}

.dc-kruimel a:hover {
	border-bottom-color: currentColor;
}

.dc-kruimel span[aria-current] {
	color: var(--dc-navy);
}

.dc-locatie-kop__titel {
	font-weight: 600;
	font-size: clamp(1.9rem, 4vw, 3rem);
	line-height: 1.12;
}

/* --- De locatie zelf ------------------------------------------------------ */
.dc-locatie {
	padding: 56px var(--dc-pad) 88px;
	background: var(--dc-white);
}

.dc-locatie__wrap {
	max-width: 1240px;
	margin: 0 auto;
}

/* Bannerfoto boven de twee kolommen */
.dc-locatie__banner {
	position: relative;
	width: 100%;
	aspect-ratio: 16/7;
	border-radius: 20px;
	overflow: hidden;
	background: linear-gradient(150deg, var(--dc-sage-light), var(--dc-sage));
	margin-bottom: 40px;
}

.dc-locatie__banner img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* Twee kolommen: links info, rechts kaart. */
.dc-locatie__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: clamp(28px, 4vw, 56px);
	align-items: start;
}

/* --- Info-kolom ----------------------------------------------------------- */
.dc-locatie__info {
	display: flex;
	flex-direction: column;
	gap: 28px;
}

.dc-locatie__kop {
	font-size: .72rem;
	font-weight: 600;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: var(--dc-sage) !important;
	margin: 0 0 12px !important;
}

/* Adres */
.dc-locatie__adres {
	font-style: normal;
	font-weight: 300;
	font-size: 1rem;
	line-height: 1.7;
}

/* Openingstijden als nette twee-koloms lijst.
   Werkt met een <dl> (dag = dt, tijd = dd). */
.dc-tijden {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 8px 24px;
	margin: 0 !important;
	padding: 0;
	font-size: .95rem;
	font-weight: 300;
}

.dc-tijden dt {
	font-weight: 500;
}

.dc-tijden dd {
	margin: 0;
	text-align: right;
}

/* Een gesloten dag grijzer tonen. Geef zo'n <dd> de klasse dc-dicht. */
.dc-tijden .dc-dicht {
	color: var(--dc-grey);
}

/* Knoppen: hergebruikt .dc-knoppen / .dc-knop uit de basis-CSS.
   Alleen de oude .salon-button uit de huidige pagina's opvangen zodat je
   niet elke knop hoeft te herschrijven — zie het voorbeeld. */
.dc-locatie__acties {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

/* Prijzen-iframe uit Salonized */
.dc-locatie__prijzen {
	border-top: 1px solid var(--dc-line);
	padding-top: 24px;
}

.dc-locatie__prijzen iframe {
	width: 100%;
	max-width: 100%;
	border: none;
	border-radius: 14px;
}

/* --- Kaart-kolom ---------------------------------------------------------- */
.dc-locatie__kaart {
	position: relative;
	border-radius: 20px;
	overflow: hidden;
	aspect-ratio: 3/4;
	background: var(--dc-blush);
}

.dc-locatie__kaart iframe {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

/* --------------------------------------------------------------------------
   Overgangshulp: als je de OUDE markup (.salon-button, losse .col-md-24)
   nog niet hebt omgezet, geven deze regels alvast een nette basis, zodat
   niet-omgezette locaties er niet stuk uitzien.
   -------------------------------------------------------------------------- */
.dc-locatie .salon-button {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin: 8px 0;
}

.dc-locatie .salon-button .btn {
	border-radius: 50px !important;
}

/* --- Responsive ----------------------------------------------------------- */
@media (max-width:900px) {
	.dc-locatie {
		padding: 40px 24px 64px;
	}

	.dc-locatie__grid {
		grid-template-columns: 1fr;
		gap: 32px;
	}

	.dc-locatie__kaart {
		aspect-ratio: 4/3;
	}

	.dc-locatie__banner {
		aspect-ratio: 3/2;
		margin-bottom: 28px;
	}
}


/* ==========================================================================
   Aanpassingen n.a.v. klantfeedback (30-07-2026)
   ========================================================================== */

/* --- Reviews: ruimte tussen kop en knop ------------------------------------
   De knop "Alle reviews" stond strak tegen de titel aan. .dc-sectie h2
   heeft margin: 0 !important, vandaar hier ook !important met een hogere
   specificiteit.
   -------------------------------------------------------------------------- */
.dc-sectie .dc-reviews__titel {
	margin-bottom: 24px !important;
}

/* --- Haarwerken: overzichtsgrid met 4 kaarten ------------------------------
   Stond als inline style op de <ul> en bleef daardoor ook op mobiel
   vierkoloms. Nu een modifier die wel meeschaalt.
   -------------------------------------------------------------------------- */
.dc-spec__grid--4 {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

@media (max-width:1050px) {
	.dc-spec__grid--4 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width:767px) {
	.dc-spec__grid--4 {
		grid-template-columns: 1fr;
	}
}

/* --- Kaarten: lange woorden afbreken op smalle schermen ------------------
   Bijv. "Onderhoudsvriendelijk" liep op mobiel buiten de kaart.
   -------------------------------------------------------------------------- */
.dc-kaart__titel,
.dc-kaart__tekst {
	overflow-wrap: break-word;
}

/* --- Partners: kleinere logo's op EEN rij ----------------------------------
   De 15 logo's stonden verdeeld over drie rijen met een losse rij onderaan.
   Vanaf 992px staan ze naast elkaar over de volle breedte. Onder 992px
   blijft de bestaande verdeling (2 per rij) ongewijzigd.
   -------------------------------------------------------------------------- */
@media only screen and (min-width: 992px) {
	section.partners div.row {
		display: flex;
		flex-wrap: nowrap;
		align-items: center;
	}

	section.partners div.row > div[class*="col-"] {
		float: none;
		width: auto;
		flex: 1 1 0;
		min-width: 0;
		padding-left: 6px;
		padding-right: 6px;
	}

	section.partners div.item {
		width: 100%;
		height: 70px;
	}

	section.partners div.item div.holder img {
		max-width: 100%;
		max-height: 44px;
	}
}


/* --- Logo: kleiner op mobiel -----------------------------------------------
   Het logo vulde op mobiel bijna de hele header (180px breed, 150px hoog).
   Nu maximaal 110px breed; de balk eromheen krimpt mee.
   Desktop blijft geregeld door de regel bovenaan dit veld (120px).
   -------------------------------------------------------------------------- */
@media only screen and (max-width: 991px) {
	header div.header div.wrapper img.logo {
		max-width: 110px;
		max-height: 90px;
		padding: 10px;
	}

	header div.header div.holder,
	header nav.navbar-default div.navbar-header div.holder {
		min-height: 100px;
	}
}
