.elementor-136 .elementor-element.elementor-element-1f9b3a1{--display:flex;--min-height:0px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS for html, class: .elementor-element-875098e */@import url("https://use.typekit.net/neh6hzk.css");

:root{
  --font-main: "elza", sans-serif;

  --p-red: #E70212;
  --p-white: #FFFCFC;
  --p-offwhite: #F1F2F2;
  --p-black: #0A0707;
  --p-muted: rgba(10,7,7,.74);
  --p-muted2: rgba(10,7,7,.56);

  --pad-x: clamp(22px, 3vw, 44px);
  --pad-y-top: clamp(20px, 2.4vw, 26px);
  --pad-y-bottom: clamp(16px, 2vw, 20px);
  --topbar-h: 112px;

  --ease: cubic-bezier(.2,.8,.2,1);

  --logo-w: clamp(188px, 18vw, 250px);
  --burger-box: 72px;
  --burger-line-w: 43px;
  --burger-line-h: 8px;
  --btn-radius: 5px;

  --cta-border: 4px;
  --cta-font-size: 15px;
  --cta-letter-spacing: 0.06em;
  --cta-font-weight: 800;
  --cta-pad-y: 14px;
  --cta-pad-x: 18px;
}

.p-root,
.p-root *{
  box-sizing: border-box !important;
}

html,
body{
  margin: 0 !important;
  padding: 0 !important;
}

body{
  font-family: var(--font-main) !important;
  background: #fff !important;
  -webkit-tap-highlight-color: transparent !important;
  padding-top: var(--topbar-h) !important;
}

main,
.site-main,
.content,
.entry-content,
.elementor-location-single,
.elementor-section-wrap{
  margin-top: 0 !important;
}

.p-root a{
  color: inherit !important;
  text-decoration: none !important;
  -webkit-tap-highlight-color: transparent !important;
}

.p-root button,
.p-root input{
  font-family: var(--font-main) !important;
  -webkit-tap-highlight-color: transparent !important;
}

.p-noScroll{
  overflow: hidden !important;
}

.p-mobileOnly{
  display: none !important;
}

.p-desktopOnly{
  display: block !important;
}

.p-root a,
.p-root button,
.p-root input,
.p-root textarea,
.p-root select,
.p-root [role="button"]{
  outline: none !important;
  box-shadow: none !important;
  border-image: none !important;
  -webkit-appearance: none !important;
  appearance: none !important;
}

.p-root a:hover,
.p-root a:focus,
.p-root a:active,
.p-root a:focus-visible,
.p-root button:hover,
.p-root button:focus,
.p-root button:active,
.p-root button:focus-visible,
.p-root input:hover,
.p-root input:focus,
.p-root input:active,
.p-root input:focus-visible{
  outline: none !important;
  box-shadow: none !important;
}

/* =========================
   TOPBAR
========================= */
.p-topbarWrap{
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  z-index: 1200 !important;
  pointer-events: none !important;
  background: #fff !important;
  box-shadow: none !important;
  transition: box-shadow .22s var(--ease), border-color .22s var(--ease) !important;
}

.p-topbarWrap.is-scrolled{
  box-shadow: 0 1px 0 rgba(10,7,7,.07), 0 8px 22px rgba(10,7,7,.06) !important;
}

body.p-menuOpen .p-topbarWrap{
  background: transparent !important;
  box-shadow: none !important;
}

.p-topbar{
  width: 100% !important;
  max-width: 1400px !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: auto 1fr auto !important;
  align-items: center !important;
  gap: 22px !important;
  padding:
    var(--pad-y-top)
    var(--pad-x)
    var(--pad-y-bottom) !important;
  pointer-events: auto !important;
}

/* =========================
   HAMBURGER
========================= */
.p-iconBtn{
  appearance: none !important;
  background: transparent !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  cursor: pointer !important;
  display: inline-grid !important;
  place-items: center !important;
  width: var(--burger-box) !important;
  height: var(--burger-box) !important;
  line-height: 0 !important;
  color: var(--p-red) !important;
  border-radius: 0 !important;
  transition:
    color .22s var(--ease),
    background .22s var(--ease),
    transform .18s var(--ease) !important;
}

.p-iconBtn:hover,
.p-iconBtn:focus,
.p-iconBtn:active,
.p-iconBtn:focus-visible{
  background: transparent !important;
  border: 0 !important;
  outline: none !important;
  box-shadow: none !important;
}

body.p-menuOpen .p-iconBtn{
  color: var(--p-black) !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  transform: none !important;
}

.p-iconBars{
  position: relative !important;
  width: var(--burger-line-w) !important;
  height: 33px !important;
  display: block !important;
  transform-origin: center !important;
  transition: transform .24s var(--ease) !important;
}

.p-iconBars span{
  position: absolute !important;
  left: 0 !important;
  width: 100% !important;
  height: var(--burger-line-h) !important;
  border-radius: 999px !important;
  background: currentColor !important;
  transform-origin: center !important;
  transition:
    top .28s var(--ease),
    transform .28s var(--ease),
    opacity .16s var(--ease),
    background .22s var(--ease) !important;
}

.p-iconBars span:nth-child(1){ top: 0 !important; }
.p-iconBars span:nth-child(2){ top: 13px !important; }
.p-iconBars span:nth-child(3){ top: 26px !important; }

.p-menuToggle.is-open .p-iconBars{
  transform: none !important;
  width: var(--burger-line-w) !important;
  height: 33px !important;
}

.p-menuToggle.is-open .p-iconBars span:nth-child(1){
  top: 13px !important;
  transform: rotate(45deg) !important;
}

.p-menuToggle.is-open .p-iconBars span:nth-child(2){
  top: 13px !important;
  opacity: 0 !important;
  transform: scaleX(.2) !important;
}

.p-menuToggle.is-open .p-iconBars span:nth-child(3){
  top: 13px !important;
  transform: rotate(-45deg) !important;
}

/* =========================
   LOGO
========================= */
.p-site__logo{
  justify-self: center !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  position: relative !important;
}

.p-site__logo img{
  display: block !important;
  width: var(--logo-w) !important;
  height: auto !important;
  max-width: 100% !important;
  filter: none !important;
  opacity: 0 !important;
  position: relative !important;
  z-index: 1 !important;
}

.p-site__logo::after{
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: var(--p-red) !important;
  pointer-events: none !important;
  z-index: 2 !important;

  -webkit-mask-image: url("https://pulsate.be/wp-content/uploads/2026/03/Logo_wit_finaal.png") !important;
  -webkit-mask-repeat: no-repeat !important;
  -webkit-mask-position: center !important;
  -webkit-mask-size: contain !important;

  mask-image: url("https://pulsate.be/wp-content/uploads/2026/03/Logo_wit_finaal.png") !important;
  mask-repeat: no-repeat !important;
  mask-position: center !important;
  mask-size: contain !important;
}

body.p-menuOpen .p-site__logo::after{
  background: var(--p-black) !important;
}

.p-topbar__actions{
  justify-self: end !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 14px !important;
}

/* =========================
   BUTTON
========================= */
.p-root .p-btn{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  user-select: none !important;
  text-transform: uppercase !important;
  letter-spacing: var(--cta-letter-spacing) !important;
  font-weight: var(--cta-font-weight) !important;
  line-height: 1 !important;
  border-radius: var(--btn-radius) !important;
  padding: var(--cta-pad-y) var(--cta-pad-x) !important;
  font-family: var(--font-main) !important;
  font-size: var(--cta-font-size) !important;
  text-shadow: none !important;
  box-shadow: none !important;
  transition:
    transform .18s var(--ease),
    background .18s var(--ease),
    border-color .18s var(--ease),
    color .18s var(--ease),
    opacity .18s var(--ease) !important;
}

.p-root a.p-btn--primary,
.p-root .p-btn--primary{
  background: transparent !important;
  border: var(--cta-border) solid var(--p-red) !important;
  color: var(--p-red) !important;
  -webkit-text-fill-color: var(--p-red) !important;
  box-shadow: none !important;
  filter: none !important;
}

.p-root a.p-btn--primary:hover,
.p-root a.p-btn--primary:active,
.p-root a.p-btn--primary:focus,
.p-root a.p-btn--primary:focus-visible{
  background: var(--p-red) !important;
  border-color: var(--p-red) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  text-decoration: none !important;
  outline: none !important;
  box-shadow: none !important;
}

body.p-menuOpen .p-root a.p-btn--primary,
body.p-menuOpen .p-root .p-btn--primary{
  background: transparent !important;
  border: var(--cta-border) solid var(--p-black) !important;
  color: var(--p-black) !important;
  -webkit-text-fill-color: var(--p-black) !important;
}

body.p-menuOpen .p-root a.p-btn--primary:hover,
body.p-menuOpen .p-root a.p-btn--primary:active,
body.p-menuOpen .p-root a.p-btn--primary:focus,
body.p-menuOpen .p-root a.p-btn--primary:focus-visible{
  background: var(--p-black) !important;
  border-color: var(--p-black) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

.p-root .p-btn--black{
  background: var(--p-black) !important;
  border: 4px solid var(--p-black) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

.p-root .p-btn--black:hover,
.p-root .p-btn--black:focus,
.p-root .p-btn--black:active{
  background: #000 !important;
  border-color: #000 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

/* =========================
   DRAWER
========================= */
.p-drawer{
  position: fixed !important;
  inset: 0 !important;
  background: var(--p-offwhite) !important;
  color: var(--p-black) !important;
  transform: translateX(-100%) !important;
  transition: transform .34s var(--ease) !important;
  z-index: 1000 !important;
  pointer-events: none !important;
  overflow-y: auto !important;
  -webkit-overflow-scrolling: touch !important;
}

.p-drawer.is-open{
  transform: translateX(0) !important;
  pointer-events: auto !important;
}

.p-drawer__grid{
  padding:
    calc(var(--topbar-h) + 32px)
    var(--pad-x)
    40px !important;
  display: grid !important;
  grid-template-columns: minmax(280px, 1fr) minmax(250px, .7fr) minmax(320px, .9fr) !important;
  gap: clamp(34px, 4vw, 72px) !important;
  align-items: start !important;
  width: 100% !important;
  max-width: 1400px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.p-drawer__nav a{
  display: block !important;
  font-size: clamp(34px, 3.6vw, 58px) !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  line-height: 1.06 !important;
  padding: 8px 0 !important;
  color: var(--p-black) !important;
  background: transparent !important;
}

.p-drawer__nav a:hover,
.p-drawer__nav a:focus,
.p-drawer__nav a:active,
.p-drawer__nav a:focus-visible{
  opacity: .72 !important;
}

.p-drawer__col h3{
  margin: 0 0 12px 0 !important;
  font-size: 19px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  line-height: 1.15 !important;
  color: rgba(10,7,7,.94) !important;
}

.p-drawer__col p{
  margin: 0 0 30px 0 !important;
  font-size: 16.5px !important;
  font-weight: 500 !important;
  line-height: 1.45 !important;
  color: var(--p-muted) !important;
}

.p-drawer__contact a{
  display: inline-block !important;
  margin-bottom: 2px !important;
}

.p-drawer__contact a:hover,
.p-drawer__contact a:focus,
.p-drawer__contact a:active,
.p-drawer__contact a:focus-visible{
  opacity: .72 !important;
}

.p-signup{
  display: grid !important;
  gap: 12px !important;
}

.p-signup__row{
  display: grid !important;
  grid-template-columns: 1fr 64px !important;
  border: 2.4px solid rgba(10,7,7,.92) !important;
  border-radius: 4px !important;
  overflow: hidden !important;
  background: transparent !important;
  min-height: 46px !important;
}

.p-signup input{
  border: 0 !important;
  padding: 12px 16px !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  background: transparent !important;
  color: var(--p-black) !important;
  margin: 0 !important;
}

.p-signup input::placeholder{
  color: rgba(10,7,7,.32) !important;
  opacity: 1 !important;
}

.p-signup button{
  border: 0 !important;
  background: transparent !important;
  cursor: pointer !important;
  display: grid !important;
  place-items: center !important;
  color: var(--p-black) !important;
  padding: 0 !important;
}

.p-signup button:hover,
.p-signup button:focus,
.p-signup button:active,
.p-signup button:focus-visible{
  background: rgba(10,7,7,.07) !important;
}

.p-signup__msg{
  font-size: 13px !important;
  color: var(--p-muted2) !important;
  min-height: 18px !important;
}

.p-mobileMenuCta{
  display: none !important;
}

@media (max-width: 980px){
  :root{
    --burger-box: 68px;
    --logo-w: 170px;
    --cta-font-size: 14px;
    --cta-pad-y: 13px;
    --cta-pad-x: 16px;
    --pad-y-top: 18px;
    --pad-y-bottom: 15px;
  }

  .p-drawer__grid{
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }

  .p-drawer__nav a{
    font-size: clamp(30px, 6vw, 44px) !important;
  }

  .p-topbar{
    gap: 16px !important;
  }

  .p-drawer__col h3{
    font-size: 18px !important;
  }

  .p-drawer__col p{
    font-size: 16px !important;
  }
}

@media (max-width: 640px){
  :root{
    --topbar-h: 82px;
    --pad-x: 16px;
    --pad-y-top: 12px;
    --pad-y-bottom: 10px;
    --burger-box: 58px;
    --burger-line-w: 32px;
    --burger-line-h: 5px;
    --logo-w: 156px;
    --cta-font-size: 14px;
    --cta-pad-y: 12px;
    --cta-pad-x: 18px;
    --cta-border: 3px;
  }

  body{
    padding-top: var(--topbar-h) !important;
  }

  .p-mobileOnly{
    display: block !important;
  }

  .p-desktopOnly{
    display: none !important;
  }

  .p-topbar{
    grid-template-columns: auto 1fr !important;
    gap: 10px !important;
    align-items: center !important;
  }

  .p-topbar__actions{
    display: none !important;
  }

  .p-iconBtn{
    width: var(--burger-box) !important;
    height: var(--burger-box) !important;
  }

  .p-iconBars{
    width: var(--burger-line-w) !important;
    height: 25px !important;
  }

  .p-iconBars span:nth-child(1){ top: 0 !important; }
  .p-iconBars span:nth-child(2){ top: 10px !important; }
  .p-iconBars span:nth-child(3){ top: 20px !important; }

  .p-menuToggle.is-open .p-iconBars{
    width: var(--burger-line-w) !important;
    height: 25px !important;
  }

  .p-menuToggle.is-open .p-iconBars span:nth-child(1){
    top: 10px !important;
  }

  .p-menuToggle.is-open .p-iconBars span:nth-child(2){
    top: 10px !important;
  }

  .p-menuToggle.is-open .p-iconBars span:nth-child(3){
    top: 10px !important;
  }

  .p-site__logo{
    justify-self: end !important;
    margin-left: auto !important;
  }

  .p-drawer__grid{
    min-height: calc(100dvh - var(--topbar-h)) !important;
    height: auto !important;
    max-width: none !important;
    padding:
      calc(var(--topbar-h) + 8px)
      16px
      28px !important;
    grid-template-columns: 1fr !important;
    grid-auto-rows: min-content !important;
    gap: 0 !important;
    align-content: start !important;
  }

  .p-drawer__nav{
    margin-bottom: 18px !important;
  }

  .p-drawer__nav a{
    font-size: 31px !important;
    line-height: 1.03 !important;
    padding: 0 0 11px 0 !important;
    font-weight: 800 !important;
  }

  .p-drawer__col{
    margin: 0 !important;
  }

  .p-drawer__col h3{
    margin: 0 0 8px 0 !important;
    font-size: 14px !important;
    line-height: 1.08 !important;
    font-weight: 800 !important;
  }

  .p-drawer__col p{
    margin: 0 0 18px 0 !important;
    font-size: 13px !important;
    line-height: 1.38 !important;
    font-weight: 500 !important;
  }

  .p-drawer__contact a{
    display: block !important;
    margin-bottom: 1px !important;
  }

  .p-signupWrap{
    display: none !important;
  }

  .p-mobileMenuCta{
    display: block !important;
    margin-top: 2px !important;
    margin-bottom: 18px !important;
  }

  .p-mobileMenuCta .p-btn{
    min-width: 132px !important;
    justify-content: center !important;
    font-size: 14px !important;
    padding: 12px 20px !important;
  }
}

@media (max-width: 380px){
  :root{
    --pad-x: 14px;
    --logo-w: 142px;
    --burger-box: 54px;
    --burger-line-w: 30px;
  }

  .p-drawer__grid{
    padding:
      calc(var(--topbar-h) + 6px)
      14px
      22px !important;
  }

  .p-drawer__nav{
    margin-bottom: 15px !important;
  }

  .p-drawer__nav a{
    font-size: 27px !important;
    padding-bottom: 9px !important;
  }

  .p-drawer__col h3{
    font-size: 13px !important;
    margin-bottom: 6px !important;
  }

  .p-drawer__col p{
    font-size: 12px !important;
    line-height: 1.34 !important;
    margin-bottom: 14px !important;
  }

  .p-mobileMenuCta .p-btn{
    font-size: 13px !important;
    padding: 11px 17px !important;
  }
}
/* =========================
   FIX: SUBMENU PLAKT TEGEN HEADER
   Helemaal onderaan je CSS plaatsen
========================= */

@media (max-width: 760px){
  :root{
    --topbar-h: 82px;
  }

  body{
    padding-top: var(--topbar-h) !important;
  }

  .p-topbarWrap{
    height: var(--topbar-h) !important;
    min-height: var(--topbar-h) !important;
    z-index: 10000 !important;
  }

  .p-topbar{
    height: var(--topbar-h) !important;
    min-height: var(--topbar-h) !important;
  }

  #p-ways-scope{
    --mobile-subnav-h: 50px;
  }

  #p-ways-scope .p-mobileSubnav{
    position: fixed !important;

    /* -1px voorkomt het fijne spleetje tussen header en submenu */
    top: calc(var(--topbar-h, 82px) - 1px + env(safe-area-inset-top, 0px)) !important;

    left: 0 !important;
    right: 0 !important;
    z-index: 9995 !important;

    display: flex !important;
    width: 100vw !important;
    height: var(--mobile-subnav-h) !important;

    background: rgba(241,242,242,.98) !important;
    backdrop-filter: blur(10px) !important;

    /* border-top uit, anders lijkt er soms nog een spleet/lijn tussen te zitten */
    border-top: 0 !important;
    border-bottom: 1px solid rgba(10,7,7,.18) !important;

    box-shadow: 0 8px 18px rgba(10,7,7,.07) !important;

    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;

    transform: translate3d(0,0,0) !important;
    will-change: transform !important;
  }

  #p-ways-scope .p-wrap{
    padding-top: calc(30px + var(--mobile-subnav-h)) !important;
  }

  #p-ways-scope .p-anchorSection{
    scroll-margin-top: calc(var(--topbar-h, 82px) + var(--mobile-subnav-h) + 18px) !important;
  }
}
.p-root a.p-scheduleLink{
    color: var(--p-red) !important;
    -webkit-text-fill-color: var(--p-red) !important;
}/* End custom CSS */