/* =========================
   Normale Gutenberg content
========================= */
/* normale content breedte */
.main-content > section > *:not(.wp-block-group) ,
.wp-block-post-content > *:not(.wp-block-group) {
  max-width: 1020px;
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
  padding-left: 25px;
  padding-right: 25px;
}

/* desktop */
@media (min-width: 782px) {
  .main-content > section > *:not(.wp-block-group),
  .wp-block-post-content > *:not(.wp-block-group) {
    padding-left: 50px;
    padding-right: 50px;
  }
}

.wp-block-post-content > :first-child:not(.wp-block-group),
.main-content > section > :first-child:not(.wp-block-group) {
  margin-top: 50px;
}

.oxygen_block-template-default {
	background: none;
}

.oxygen_block-template-default .pagetitle--main--container {
	display: none!important;
}

.wp-block-columns {
  gap: 0.5rem;
}

@media (min-width: 768px) {
  .wp-block-columns {
    gap: 5rem;
  }
}

/* lijsten binnen content */
.main-content ul,
.main-content ol,
.editor-styles-wrapper ul,
.editor-styles-wrapper ol {
  margin: 0 0 20px;
  padding-left: 30px;
  box-sizing: border-box;
}

.main-content > section > ul.wp-block-list, .main-content > section > ol.wp-block-list {
	padding-left: 55px;
}

@media (min-width: 782px) {
  .main-content > section > ul.wp-block-list, .main-content > section > ol.wp-block-list {
	padding-left: 80px;
	}
}

/* li spacing */
.main-content li,
.editor-styles-wrapper li {
  margin-bottom: 10px;
}

/* laatste li */
.main-content li:last-child,
.editor-styles-wrapper li:last-child {
  margin-bottom: 0;
}


/* === TYPOGRAPHIE === */

/* Algemene heading stijlen */
h1,
h2,
h3,
h4,
h5,
h6,
.editor-styles-wrapper h1,
.editor-styles-wrapper h2,
.editor-styles-wrapper h3,
.editor-styles-wrapper h4,
.editor-styles-wrapper h5,
.editor-styles-wrapper h6 {
  font-family: "nexa", sans-serif !important;
  color: inherit;
  margin: 0 0 20px;
  line-height: 1.2;
  color: var(--brown);
}

/* Heading specifieke stijlen */
h1,
.editor-styles-wrapper h1 {
  font-size: 50px;
  font-weight: 500;
}

h2,
.editor-styles-wrapper h2 {
  font-size: 45px;
  font-weight: 300;
}

h3,
.editor-styles-wrapper h3 {
  font-size: 25px;
  font-weight: 300;
}

h4,
.editor-styles-wrapper h4,
h5,
.editor-styles-wrapper h5,
h6,
.editor-styles-wrapper h6 {
  font-size: 22px;
  font-weight: 500;
}

/* === Mobiel === */
@media (max-width: 767px) {

  h1,
  .editor-styles-wrapper h1 {
    font-size: 30px;
  }

  h2,
  .editor-styles-wrapper h2 {
    font-size: 25px;
  }

  h3,
  .editor-styles-wrapper h3,
  h4,
  .editor-styles-wrapper h4,
  h5,
  .editor-styles-wrapper h5,
  h6,
  .editor-styles-wrapper h6,
  .has-large-font-size {
    font-size: 18px !important;
  }

}

/* Algemene paragraaf stijl */
summary,p,
.editor-styles-wrapper p {
  font-size: 18px;
  line-height: 1.6;
}

p,
.editor-styles-wrapper p {
	margin: 0 0 20px;
}

/* Algemene tekst stijl */
.editor-styles-wrapper {
  font-family: "nexa", sans-serif !important;
  font-weight: 300;
  font-size: 18px;
}

/* === BLOK STRUCTUUR === */

/* Groep blokken */
.wp-block-group {
  padding: 50px 25px;
  box-sizing: border-box;
  display: flow-root;
}

/* Groep blokken - Media queries */
@media (min-width: 782px) {
  .wp-block-group {
    padding: 80px 50px;
  }

  .wp-block-group.is-style-section-full-width-no-padding,
  .wp-block-group.is-style-section-no-padding {
    padding: 0 50px;
  }
}

/* Mobiele aanpassingen */
@media (max-width: 782px) {
  :root .has-text-align-right {
    text-align: left !important;
  }
}

/* Inner container */
.wp-block-group > .wp-block-group__inner-container {
  max-width: 1300px;
  margin: 0 auto;
}

/* Brede sections */
.wp-block-group.is-style-section-full-width > .wp-block-group__inner-container,
.wp-block-group.is-style-section-full-width-no-padding > .wp-block-group__inner-container {
  max-width: 1500px;
}

/* First and last child margin fixes */
.wp-block-group > .wp-block-group__inner-container > :first-child {
  margin-top: 0;
}

.wp-block-group > .wp-block-group__inner-container > :last-child {
  margin-bottom: 0;
}

/* === BUTTONS === */

.wp-block-button__link.wp-element-button {
  border-radius: 0 !important;
  display: inline-block;
  font-family: nexa;
  text-transform: uppercase;
  font-size: 16px;
  font-weight: 400;
  padding: 10px 20px;
  transition: background 200ms ease, color 200ms ease;
}

/* Outline button style */
.is-style-outline .wp-block-button__link {
  background: none;
  color: #000;
  border: 1px solid #000;
}

/* Button hover states */
.wp-block-button__link.wp-element-button:hover {
  background-color: #38373A !important;
  color: #FFF !important;
}

/* Algemene voorwaarden nummering 1. / 1.1 / 1.1.1 */
.lg-terms-list,
.lg-terms-list ol {
    list-style: none;
    margin: 0;
    padding: 0;
    counter-reset: item;
}

.lg-terms-list li {
    counter-increment: item;
    position: relative;
    margin-bottom: 12px;
}

.lg-terms-list li::before {
    content: counters(item, ".") ".";
    position: absolute;
    left: -50px;
    width: 40px;
    text-align: right;
    font-weight: 600;
}

/* 2e niveau */
.lg-terms-list ol {
    margin-top: 12px;
    margin-left: 40px;
}

/* 3e niveau */
.lg-terms-list ol ol {
    margin-left: 40px;
}

/* === ALGEMEEN RESET === */

figure {
  margin: 0;
}

.wp-block-image {
  margin-bottom: 30px;
}

@media (min-width: 782px) {
  /* Kolom met tekst/content krijgt padding */
  .wp-block-column:has(h1, h2, h3, h4, h5, h6, p, ul, ol, .wp-block-buttons) {
    padding: 50px 0;
  }

  /* Afbeelding als enige element in kolom: geen margin */
  .wp-block-column > figure.wp-block-image:only-child {
    margin-bottom: 0;
  }

  /* Alleen stretch kolommen vullen volledig uit */
  .wp-block-column.is-vertically-aligned-stretch > figure.wp-block-image:only-child {
    width: 100%;
    height: 100%;
    margin: 0;
  }

  .wp-block-column.is-vertically-aligned-stretch > figure.wp-block-image:only-child img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
  }

  /* Normale kolom-afbeeldingen */
  .wp-block-column > figure.wp-block-image img {
    display: block;
    width: 100%;
  }
}

.wp-block-list.is-style-alphabet {
    list-style: lower-alpha;
}

.wp-block-list.is-style-alphabet li::marker {
    content: "(" counter(list-item, lower-alpha) ") ";
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: 16px;
}

/* Outline lijst */

.wp-block-list.is-style-outline li::marker {
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: 16px;
}

ol.wp-block-list.is-style-outline,
ol.wp-block-list.is-style-outline ol {
    list-style: none;
    padding-left: 2em;
}

ol.wp-block-list.is-style-outline > li > strong {
    font-size: 24px;
}

ol.wp-block-list.is-style-outline {
    counter-reset: level1;
}

ol.wp-block-list.is-style-outline > li {
    counter-increment: level1;
    counter-reset: level2;
}

ol.wp-block-list.is-style-outline > li::marker {
    content: counter(level1) ". ";
}

/* Niveau 2 */
ol.wp-block-list.is-style-outline > li ol, ol.wp-block-list.is-style-outline > li ul {
    margin-top: 20px;
}

ol.wp-block-list.is-style-outline > li > ol {
    counter-reset: level2;
}

ol.wp-block-list.is-style-outline > li > ol > li {
    counter-increment: level2;
    counter-reset: level3;
}

ol.wp-block-list.is-style-outline > li > ol > li::marker {
    content: counter(level1) "." counter(level2) " ";
}

/* Niveau 3 */

ol.wp-block-list.is-style-outline > li > ol > li > ol {
    counter-reset: level3;
}

ol.wp-block-list.is-style-outline > li > ol > li > ol > li {
    counter-increment: level3;
}

ol.wp-block-list.is-style-outline > li > ol > li > ol > li::marker {
    content: counter(level1) "." counter(level2) "." counter(level3) " ";
}