/* Alleen binnen deze footer: geen globale Total- of WPBakery-overrides. */
/* Total bouwt de gewone footer (widgets, bottom of Footer Builder) in #footer-wrap.
   Dit is bewust uitsluitend van toepassing als automatische vervanging aan staat.
   Onze eigen #dlep-footer staat buiten die wrapper via wrap_bottom/wp_footer. */
body.dlepft-auto #footer-wrap,
body.dlepft-auto #footer,
body.dlepft-auto #footer-bottom,
body.dlepft-auto #footer-builder,
body.dlepft-auto #footer-widgets {
  display: none !important;
}
.dlepft {
  --dlepft-ink: #244438;
  --dlepft-dim: #485e56;
  --dlepft-cream: #f5f4ed;
  --dlepft-line: #d7d9d0;
  --dlepft-font: Georgia, 'Times New Roman', serif;
  display: block;
  isolation: isolate;
  background: var(--dlepft-cream);
  color: var(--dlepft-ink);
  font-family: var(--dlepft-font);
  font-size: 17px;
  line-height: 1.55;
  border-top: 1px solid rgba(35,68,56,.05);
  box-sizing: border-box;
  clear: both;
}
.dlepft *, .dlepft *::before, .dlepft *::after { box-sizing: border-box; }
.dlepft .dlepft__container {
  width: min(calc(100% - 48px), 1210px);
  max-width: 1210px;
  margin-inline: auto;
  padding: 0;
  float: none;
}
.dlepft__main {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
  align-items: center;
  gap: clamp(38px, 6vw, 92px);
  padding-block: clamp(64px, 7.5vw, 96px);
}
.dlepft__main--no-newsletter { grid-template-columns: 1fr; padding-block: 54px; }
.dlepft__navigation { min-width: 0; }
.dlepft__links {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex;
  flex-wrap: wrap;
  gap: 13px 24px;
  align-items: center;
}
.dlepft__links li { margin: 0 !important; padding: 0 !important; list-style: none !important; }
.dlepft a { color: var(--dlepft-ink); text-decoration: none !important; border: 0 !important; box-shadow: none !important; transition: opacity .18s ease; }
.dlepft a:hover, .dlepft a:focus-visible { color: #17372a; opacity: .72; text-decoration: none !important; }
.dlepft__links a { display: inline-flex; align-items: center; font-size: 18px; white-space: nowrap; line-height: 1.65; }
.dlepft__newsletter {
  min-width: 0;
  border-left: 1px solid var(--dlepft-line);
  padding-left: clamp(28px, 4.3vw, 65px);
}
.dlepft__newsletter h2 {
  color: var(--dlepft-ink) !important;
  font-family: var(--dlepft-font) !important;
  font-size: clamp(27px, 2.2vw, 32px) !important;
  font-weight: 400 !important;
  letter-spacing: -.015em;
  margin: 0 0 20px !important;
  padding: 0 !important;
  line-height: 1.2 !important;
  border: 0 !important;
}
.dlepft__intro { margin: 0 0 22px !important; color: var(--dlepft-ink); font-size: 16.5px; line-height: 1.65; }
.dlepft__form { margin: 0 !important; padding: 0 !important; }
.dlepft__form-row { display: flex; align-items: stretch; width: 100%; min-height: 51px; }
.dlepft__form-row input[type="email"] {
  display: block; flex: 1 1 auto; min-width: 0; width: 100%; height: auto; padding: 12px 16px;
  border: 1px solid #d8dbd6 !important; border-radius: 3px 0 0 3px !important;
  outline-offset: 2px; font-size: 15px !important; font-family: inherit !important;
  line-height: 1.4 !important; color: #243d32 !important; background: #fff !important;
  box-shadow: none !important;
}
.dlepft__form-row input[type="email"]::placeholder { color: #88918a; opacity: 1; }
.dlepft__form-row input[type="email"]:focus { border-color: #315848 !important; }
.dlepft__form-row button[type="submit"] {
  border: 1px solid #264638 !important; border-radius: 0 3px 3px 0 !important;
  padding: 0 17px !important; min-width: 126px; max-width: 46%; white-space: nowrap;
  background: #28493b !important; color: #fff !important;
  font: 16px/1.2 var(--dlepft-font) !important; font-weight: normal !important;
  cursor: pointer; box-shadow: none !important; text-transform: none !important;
  display: inline-flex; align-items: center; justify-content: center; gap: 12px; transition: background .18s ease;
}
.dlepft__form-row button:hover, .dlepft__form-row button:focus-visible { background: #19372c !important; }
.dlepft__form-row button span { font-family: sans-serif; font-size: 21px; font-weight: 300; line-height: 1; }
.dlepft__consent { display: flex; align-items: flex-start; gap: 8px; cursor: pointer; margin-top: 12px; font-size: 12.5px; line-height: 1.35; font-family: inherit; color: var(--dlepft-dim); }
.dlepft__consent input { flex: 0 0 auto; margin: 3px 0 0; accent-color: #28493b; }
.dlepft__note { color: var(--dlepft-dim); font-size: 13.5px; line-height: 1.6; margin: 14px 0 0 !important; }
.dlepft__bottom {
  display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px 26px;
  border-top: 1px solid var(--dlepft-line); padding: 24px 0 30px;
  color: var(--dlepft-dim); font-size: 14px;
}
.dlepft__credit { display: flex; flex-wrap: wrap; gap: 7px; align-items: center; }
.dlepft__utility { display: flex; flex-wrap: wrap; gap: 8px 18px; }
.dlepft__utility a + a::before { content: '·'; display: inline-block; margin-right: 18px; color: #9aa49c; }
.dlepft__screen-reader { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important; }
.dlepft__trap { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; opacity: 0 !important; pointer-events: none !important; }
.dlepft__feedback { margin: 0 0 16px !important; font-size: 14px; color: #234d32; }
.dlepft__feedback--error { color: #9a3636; }
.dlepft__external-form { margin-block: 12px; }
@media(max-width: 960px) {
  .dlepft__main { gap: 32px; }
  .dlepft__newsletter { padding-left: 30px; }
  .dlepft__links { gap: 10px 20px; }
  .dlepft__links a { font-size: 17px; }
}
@media(max-width: 760px) {
  .dlepft .dlepft__container { width: min(calc(100% - 36px), 650px); }
  .dlepft__main { display: block; padding-block: 44px 36px; }
  .dlepft__links { gap: 8px 20px; }
  .dlepft__newsletter { margin-top: 28px; padding: 28px 0 0; border-left: 0; border-top: 1px solid var(--dlepft-line); }
  .dlepft__newsletter h2 { font-size: 27px !important; }
  .dlepft__bottom { padding-block: 22px 27px; align-items: flex-start; }
}
@media(max-width: 390px) {
  .dlepft__form-row button[type="submit"] { padding: 0 10px !important; min-width: 112px; font-size: 14px !important; gap: 5px; }
  .dlepft__form-row input[type="email"] { padding: 10px; font-size: 14px !important; }
  .dlepft__links a { font-size: 16px; }
}
