/* Definitieve visuele correctie */
:root{
  --fix-blue:#168fbb;
  --fix-dark:#173f46;
  --fix-coral:#f47b5b;
  --fix-sky:#eef9fb;
  --fix-border:#dce9eb;
  --fix-off:#fcfcf8;
}

/* Header */
.topline{display:none!important}
.site-header{
  position:sticky!important;
  top:0!important;
  z-index:1000!important;
  background:rgba(252,252,248,.98)!important;
  border-bottom:1px solid var(--fix-border)!important;
  box-shadow:0 8px 28px rgba(20,76,84,.07)!important;
  backdrop-filter:blur(14px)!important;
}
.site-header .nav-wrap{
  width:min(1180px,calc(100% - 40px))!important;
  max-width:1180px!important;
  height:76px!important;
  margin:0 auto!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:28px!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.site-header .brand{
  width:auto!important;
  max-width:none!important;
  flex:0 0 auto!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:10px!important;
  white-space:nowrap!important;
  font-size:0!important;
  line-height:1!important;
}
.site-header .brand-sun{
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:50%!important;
  background:var(--fix-coral)!important;
  color:#fff!important;
  font-size:18px!important;
  box-shadow:0 8px 18px rgba(244,123,91,.24)!important;
}
.site-header .brand-name{
  display:block!important;
  font-family:'Oswald',Arial,sans-serif!important;
  font-size:27px!important;
  font-weight:700!important;
  line-height:1!important;
  letter-spacing:-.35px!important;
  color:var(--fix-dark)!important;
  white-space:nowrap!important;
}
.site-header .brand-name:after,
.site-header .brand:after,
.site-header .brand-tagline{display:none!important;content:none!important}
.site-header .main-nav{
  display:flex!important;
  align-items:center!important;
  gap:22px!important;
  min-width:0!important;
  font-size:15px!important;
  font-weight:800!important;
}
.site-header .main-nav>a,
.site-header .nav-group-toggle{
  width:auto!important;
  padding:11px 0!important;
  color:var(--fix-dark)!important;
  white-space:nowrap!important;
  border:0!important;
}
.site-header .main-nav .nav-cta{
  min-height:48px!important;
  padding:11px 18px!important;
  border-radius:14px!important;
  background:var(--fix-blue)!important;
  color:#fff!important;
  box-shadow:0 10px 24px rgba(22,143,187,.20)!important;
}

/* Homepage snel boeken */
.booking-quick-wrap{
  padding:0 0 58px!important;
  background:transparent!important;
}
.booking-quick{
  width:min(1180px,calc(100% - 40px))!important;
  max-width:1180px!important;
  margin:0 auto!important;
  padding:30px!important;
  display:grid!important;
  grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr)!important;
  gap:28px!important;
  align-items:start!important;
  border:1px solid var(--fix-border)!important;
  border-radius:26px!important;
  background:linear-gradient(135deg,#fff 0%,#f1fafb 100%)!important;
  box-shadow:0 18px 46px rgba(21,93,103,.09)!important;
}
.booking-quick-copy,
.booking-quick-options,
.booking-quick-logos{min-width:0!important}
.booking-quick-copy h2{margin:6px 0 10px!important;font-size:36px!important;line-height:1.08!important}
.booking-quick-copy p{margin:0 0 22px!important;color:#60777c!important}
.booking-quick-copy .button{width:auto!important}
.booking-quick-options{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:13px!important;
}
.booking-quick-options>a{
  min-width:0!important;
  min-height:126px!important;
  padding:18px!important;
  display:flex!important;
  flex-direction:column!important;
  gap:6px!important;
  border:1px solid var(--fix-border)!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 8px 24px rgba(21,93,103,.04)!important;
}
.booking-quick-options small{
  display:block!important;
  color:var(--fix-coral)!important;
  font-size:11px!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:1px!important;
}
.booking-quick-options strong{
  display:block!important;
  font-family:'Oswald',Arial,sans-serif!important;
  font-size:23px!important;
  line-height:1.1!important;
  color:var(--fix-dark)!important;
}
.booking-quick-options span{
  display:block!important;
  font-size:13px!important;
  line-height:1.4!important;
  color:#60777c!important;
}
.booking-quick-logos{
  grid-column:1/-1!important;
  padding-top:22px!important;
  display:grid!important;
  grid-template-columns:160px minmax(0,1fr)!important;
  align-items:center!important;
  gap:18px!important;
  border-top:1px solid var(--fix-border)!important;
}
.booking-quick-logos>span{
  font-size:13px!important;
  font-weight:900!important;
  color:#60777c!important;
  white-space:nowrap!important;
}
.booking-quick-logos>div{
  min-width:0!important;
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:10px!important;
}
.booking-quick-logos>div>span{
  width:auto!important;
  min-width:0!important;
  height:58px!important;
  padding:10px 12px!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
  border:1px solid var(--fix-border)!important;
  border-radius:13px!important;
  background:#fff!important;
}
.booking-quick-logos img{
  display:block!important;
  width:auto!important;
  height:auto!important;
  max-width:100%!important;
  max-height:32px!important;
  object-fit:contain!important;
}

/* Boekingspagina */
.booking-page #aanbieders{padding-top:72px!important}
.booking-page .provider-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:22px!important;
  align-items:stretch!important;
}
.booking-page .provider-card{
  min-width:0!important;
  padding:24px!important;
  display:flex!important;
  flex-direction:column!important;
  gap:14px!important;
  border:1px solid var(--fix-border)!important;
  border-top:5px solid var(--provider,var(--fix-blue))!important;
  border-radius:22px!important;
  background:#fff!important;
  box-shadow:0 15px 38px rgba(21,93,103,.07)!important;
}
.booking-page .provider-card-top{display:block!important;min-height:31px!important}
.booking-page .provider-pill{
  display:inline-flex!important;
  width:auto!important;
  max-width:100%!important;
  padding:7px 10px!important;
  border-radius:999px!important;
  background:var(--provider-soft,var(--fix-sky))!important;
  color:var(--provider-dark,var(--fix-dark))!important;
  font-size:11px!important;
  line-height:1.2!important;
  font-weight:900!important;
  white-space:normal!important;
}
.booking-page .provider-logo{
  width:100%!important;
  height:88px!important;
  min-height:88px!important;
  padding:14px!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
  border:1px solid var(--fix-border)!important;
  border-radius:16px!important;
  background:#fff!important;
}
.booking-page .provider-logo img{
  display:block!important;
  width:auto!important;
  height:auto!important;
  max-width:170px!important;
  max-height:50px!important;
  object-fit:contain!important;
}
.booking-page .provider-card h3{margin:2px 0 0!important;font-size:27px!important;line-height:1.1!important}
.booking-page .provider-card p{margin:0!important;color:#60777c!important;font-size:15px!important;line-height:1.55!important}
.booking-page .provider-button{
  width:100%!important;
  min-height:50px!important;
  margin-top:auto!important;
  background:var(--provider,var(--fix-blue))!important;
  border-color:var(--provider,var(--fix-blue))!important;
  color:#fff!important;
}
.provider-tui{--provider:#e51d22;--provider-soft:#fff0f0;--provider-dark:#a91b1f}
.provider-tjingo{--provider:#e31567;--provider-soft:#fff0f6;--provider-dark:#a91b57}
.provider-vakantiediscounter{--provider:#1b7abd;--provider-soft:#eef7ff;--provider-dark:#165f93}

.provider-d-reizen{--provider:#ec7d22;--provider-soft:#fff5eb;--provider-dark:#b45b14}
.provider-prijsvrij{--provider:#008bd2;--provider-soft:#edf8ff;--provider-dark:#116d9d}


/* Zonbadge */
.hero-collage{overflow:visible!important}
.sun-badge{
  right:10px!important;
  bottom:18px!important;
  width:112px!important;
  height:112px!important;
  padding:12px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:4px!important;
  overflow:hidden!important;
  transform:none!important;
  border:5px solid rgba(255,255,255,.9)!important;
  border-radius:50%!important;
  text-align:center!important;
  line-height:1!important;
}
.sun-badge strong{display:block!important;font-size:28px!important;line-height:1!important}
.sun-badge small{
  display:block!important;
  max-width:72px!important;
  font-size:9px!important;
  line-height:1.15!important;
  letter-spacing:.65px!important;
  text-align:center!important;
  white-space:normal!important;
}

/* Footer */
.site-footer{background:#11363d!important;color:#fff!important}
.footer-booking{
  padding:30px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:24px!important;
  border-radius:24px!important;
  background:linear-gradient(135deg,#1c7683,#2499b4)!important;
}
.footer-booking h2{margin:4px 0 8px!important;color:#fff!important}
.footer-booking p{margin:0!important;color:rgba(255,255,255,.84)!important}
.footer-main{display:grid!important;grid-template-columns:1.35fr repeat(4,1fr)!important;gap:34px!important}
.footer-provider-logos{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
.footer-provider-logos span{height:42px!important;padding:7px 9px!important;display:grid!important;place-items:center!important;border-radius:10px!important;background:#fff!important}
.footer-provider-logos img{max-width:90px!important;max-height:24px!important;width:auto!important;height:auto!important;object-fit:contain!important}

/* Geen dubbele mobiele CTA */
.mobile-book{display:none!important}
.global-compare-sticky{display:inline-flex!important}

@media(max-width:1120px){
  .site-header .nav-toggle{display:block!important}
  .site-header .main-nav{
    position:fixed!important;
    inset:76px 0 auto 0!important;
    max-height:calc(100vh - 76px)!important;
    overflow:auto!important;
    padding:20px!important;
    display:none!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:0!important;
    background:var(--fix-off)!important;
    box-shadow:0 18px 38px rgba(21,93,103,.14)!important;
  }
  .site-header .main-nav.open{display:flex!important}
  .site-header .main-nav>a,
  .site-header .nav-group-toggle{width:100%!important;text-align:left!important;padding:13px 8px!important;border-bottom:1px solid var(--fix-border)!important}
  .site-header .main-nav .nav-cta{margin-top:14px!important;justify-content:center!important;border:0!important}
  .site-header .nav-dropdown{position:static!important;width:auto!important;display:none!important;opacity:1!important;visibility:visible!important;transform:none!important;border:0!important;box-shadow:none!important;background:var(--fix-sky)!important}
  .site-header .nav-group.open .nav-dropdown{display:block!important}
  .booking-page .provider-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .footer-main{grid-template-columns:1.2fr repeat(2,1fr)!important}
}
@media(max-width:760px){
  .site-header .nav-wrap{width:calc(100% - 28px)!important;height:70px!important}
  .site-header .main-nav{inset:70px 0 auto 0!important}
  .site-header .brand-name{font-size:23px!important}
  .site-header .brand-sun{width:34px!important;height:34px!important;min-width:34px!important;font-size:16px!important}
  .booking-quick{width:calc(100% - 28px)!important;padding:22px!important;grid-template-columns:1fr!important;gap:22px!important}
  .booking-quick-options{grid-template-columns:1fr!important}
  .booking-quick-logos{grid-template-columns:1fr!important}
  .booking-quick-logos>div{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .booking-page .provider-grid{grid-template-columns:1fr!important}
  .sun-badge{right:0!important;bottom:8px!important;width:96px!important;height:96px!important;padding:9px!important}
  .sun-badge strong{font-size:23px!important}
  .sun-badge small{max-width:62px!important;font-size:8px!important}
  .footer-booking{display:grid!important;padding:24px!important}
  .footer-main{grid-template-columns:1fr!important}
}

/* Footercorrectie 20260727
   Beperkt tot de gedeelde footer en de vaste vergelijkknop. */
.site-footer{
  position:relative!important;
  clear:both!important;
  width:100%!important;
  margin-top:90px!important;
  padding:0 0 34px!important;
  overflow:visible!important;
  background:#11363d!important;
  color:#fff!important;
}
.site-footer>.container{
  position:relative!important;
  z-index:1!important;
}
.site-footer .footer-booking{
  width:min(var(--max),calc(100% - 40px))!important;
  margin-right:auto!important;
  margin-left:auto!important;
  padding:30px 34px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:32px!important;
  transform:translateY(-42px)!important;
  border-radius:24px!important;
  background:linear-gradient(135deg,#1c7683,#2499b4)!important;
  color:#fff!important;
  box-shadow:0 20px 48px rgba(4,31,36,.18)!important;
}
.site-footer .footer-booking>div{min-width:0!important}
.site-footer .footer-booking .eyebrow{color:#58c4df!important}
.site-footer .footer-booking h2{
  margin:5px 0 8px!important;
  color:#fff!important;
  font-size:36px!important;
  line-height:1.08!important;
}
.site-footer .footer-booking p{
  max-width:720px!important;
  margin:0!important;
  color:rgba(255,255,255,.84)!important;
}
.site-footer .footer-booking .button{
  width:auto!important;
  flex:0 0 auto!important;
}
.site-footer .footer-main{
  width:min(var(--max),calc(100% - 40px))!important;
  margin-right:auto!important;
  margin-left:auto!important;
  padding:12px 0 38px!important;
  display:grid!important;
  grid-template-columns:1.35fr repeat(4,minmax(0,1fr))!important;
  align-items:start!important;
  gap:34px!important;
}
.site-footer .footer-main>div{min-width:0!important}
.site-footer .footer-brand{
  margin:0 0 14px!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:9px!important;
  color:#fff!important;
  font-size:25px!important;
  line-height:1!important;
}
.site-footer .footer-brand .brand-sun{
  width:35px!important;
  height:35px!important;
  min-width:35px!important;
  font-size:20px!important;
}
.site-footer .footer-brand .brand-name{
  color:#fff!important;
  font-family:'Oswald',Arial,sans-serif!important;
  font-size:25px!important;
  font-weight:700!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.site-footer .footer-about p{
  max-width:380px!important;
  margin:0!important;
  color:#abc3c7!important;
  font-size:15px!important;
  line-height:1.65!important;
}
.site-footer .footer-about ul{
  margin:18px 0 0!important;
  padding:0!important;
  display:grid!important;
  gap:8px!important;
  list-style:none!important;
}
.site-footer .footer-about li{
  position:relative!important;
  padding-left:24px!important;
  color:#c3d6d9!important;
  font-size:14px!important;
  line-height:1.5!important;
}
.site-footer .footer-about li:before{
  content:'✓'!important;
  position:absolute!important;
  left:0!important;
  color:#78d5df!important;
}
.site-footer .footer-main h2{
  margin:0 0 14px!important;
  color:#fff!important;
  font-size:19px!important;
  line-height:1.2!important;
}
.site-footer .footer-main a:not(.brand){
  padding:5px 0!important;
  display:block!important;
  color:#bed1d4!important;
  font-size:15px!important;
  line-height:1.45!important;
}
.site-footer .footer-main a:not(.brand):hover{color:#fff!important}
.site-footer .footer-logos{
  width:min(var(--max),calc(100% - 40px))!important;
  margin-right:auto!important;
  margin-left:auto!important;
  padding:22px 0!important;
  display:flex!important;
  align-items:center!important;
  gap:18px!important;
  border-top:1px solid rgba(255,255,255,.10)!important;
  border-bottom:1px solid rgba(255,255,255,.10)!important;
}
.site-footer .footer-logos>span{
  flex:0 0 auto!important;
  color:#93b3b8!important;
  font-size:11px!important;
  font-weight:900!important;
  line-height:1.3!important;
  letter-spacing:1px!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}
.site-footer .footer-logos>div{
  min-width:0!important;
  flex:1 1 auto!important;
  display:grid!important;
  grid-template-columns:repeat(7,minmax(0,1fr))!important;
  gap:9px!important;
}
.site-footer .footer-logos>div>span{
  height:48px!important;
  min-width:0!important;
  padding:8px!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
  border-radius:10px!important;
  background:rgba(255,255,255,.94)!important;
}
.site-footer .footer-logos img{
  width:auto!important;
  height:auto!important;
  max-width:100%!important;
  max-height:25px!important;
  object-fit:contain!important;
}
.site-footer .footer-bottom{
  width:min(var(--max),calc(100% - 40px))!important;
  margin:0 auto!important;
  padding:20px 0 0!important;
  display:flex!important;
  justify-content:space-between!important;
  gap:20px!important;
  border:0!important;
  color:#91adb1!important;
  font-size:13px!important;
  line-height:1.5!important;
}
.global-compare-sticky{
  position:fixed!important;
  right:18px!important;
  left:auto!important;
  bottom:18px!important;
  z-index:950!important;
  min-height:52px!important;
  padding:0 20px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  border-radius:999px!important;
  background:var(--coral)!important;
  color:#fff!important;
  font-weight:900!important;
  line-height:1.2!important;
  box-shadow:0 14px 34px rgba(244,123,91,.28)!important;
}
@media(max-width:1120px){
  .site-footer .footer-main{
    grid-template-columns:1.2fr repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:760px){
  .site-footer{
    margin-top:64px!important;
    padding-bottom:78px!important;
  }
  .site-footer .footer-booking{
    width:calc(100% - 28px)!important;
    padding:24px!important;
    display:grid!important;
    gap:20px!important;
    transform:translateY(-28px)!important;
  }
  .site-footer .footer-booking h2{font-size:30px!important}
  .site-footer .footer-booking .button{width:100%!important}
  .site-footer .footer-main{
    width:calc(100% - 28px)!important;
    padding-top:0!important;
    grid-template-columns:1fr!important;
    gap:28px!important;
  }
  .site-footer .footer-logos{
    width:calc(100% - 28px)!important;
    display:grid!important;
    gap:14px!important;
  }
  .site-footer .footer-logos>span{white-space:normal!important}
  .site-footer .footer-logos>div{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .site-footer .footer-bottom{
    width:calc(100% - 28px)!important;
    display:grid!important;
    justify-items:center!important;
    text-align:center!important;
  }
  .global-compare-sticky{
    right:10px!important;
    left:10px!important;
    bottom:10px!important;
    border-radius:14px!important;
  }
}

/* Mobiele horizontale overflow opgelost 20260727 */
html,
body{
  width:100%!important;
  max-width:100%!important;
  overflow-x:hidden!important;
  overscroll-behavior-x:none!important;
}

@supports (overflow:clip){
  html,
  body{
    overflow-x:clip!important;
  }
}

.site-header,
main,
.site-footer{
  width:100%!important;
  max-width:100%!important;
  overflow-x:hidden!important;
}

@supports (overflow:clip){
  .site-header,
  main,
  .site-footer{
    overflow-x:clip!important;
  }
}

/* De decoratieve footercirkel mag de documentbreedte niet vergroten. */
.site-footer{
  overflow:hidden!important;
}

.container,
.page-hero-inner,
.content-wrap,
.article-content,
.sidebar,
.cta-band,
.footer-booking,
.footer-main,
.footer-logos,
.footer-bottom{
  min-width:0!important;
  max-width:100%!important;
}

img,
svg,
video,
iframe{
  max-width:100%!important;
}

@media(max-width:760px){
  .breadcrumbs,
  .page-hero .container,
  .section>.container,
  .cta-band{
    max-width:calc(100vw - 28px)!important;
    margin-right:auto!important;
    margin-left:auto!important;
  }

  .page-hero-inner,
  .content-wrap{
    width:100%!important;
    min-width:0!important;
  }

  .page-hero-inner>*,
  .content-wrap>*{
    min-width:0!important;
    max-width:100%!important;
  }

  h1,
  h2,
  h3,
  p,
  li,
  a{
    overflow-wrap:anywhere;
  }
}

/* Footerboekingsbalk volledig zichtbaar 20260727 */
.site-footer{
  overflow:visible!important;
}

/* Horizontale decoratie blijft buiten de documentbreedte zonder
   de omhoog geschoven boekingsbalk af te snijden. */
@supports (overflow:clip){
  .site-footer{
    overflow-x:clip!important;
    overflow-y:visible!important;
  }
}

.home-page .footer-booking{
  position:relative!important;
  z-index:3!important;
  max-width:1440px!important;
  margin-right:auto!important;
  margin-left:auto!important;
}

@media(max-width:760px){
  .home-page .footer-booking{
    max-width:calc(100vw - 28px)!important;
  }
}

/* Mobiel menu zichtbaar en uitklapbaar 20260727 */
.site-header{
  overflow:visible!important;
  isolation:isolate!important;
}

.site-header .nav-wrap{
  overflow:visible!important;
}

.site-header .nav-toggle{
  position:relative!important;
  z-index:1003!important;
  cursor:pointer!important;
  touch-action:manipulation!important;
  -webkit-tap-highlight-color:transparent!important;
}

.site-header .main-nav{
  z-index:1002!important;
}

body.mobile-menu-open{
  overflow:hidden!important;
}

@media(max-width:1120px){
  .site-header .main-nav{
    top:76px!important;
    right:0!important;
    bottom:0!important;
    left:0!important;
    width:100%!important;
    height:calc(100dvh - 76px)!important;
    max-height:none!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
  }

  .site-header .main-nav.open{
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
  }

  .site-header .nav-toggle span{
    transition:transform .2s ease,opacity .2s ease!important;
    transform-origin:center!important;
  }

  .site-header .nav-toggle[aria-expanded="true"] span:nth-child(1){
    transform:translateY(7px) rotate(45deg)!important;
  }

  .site-header .nav-toggle[aria-expanded="true"] span:nth-child(2){
    opacity:0!important;
  }

  .site-header .nav-toggle[aria-expanded="true"] span:nth-child(3){
    transform:translateY(-7px) rotate(-45deg)!important;
  }
}

@media(max-width:760px){
  .site-header .main-nav{
    top:70px!important;
    height:calc(100dvh - 70px)!important;
  }
}

/* Alle witte contentblokken licht getint 20260727 */
:root{
  --panel-tint:#f3f9fa;
  --panel-tint-strong:#edf6f8;
  --panel-border:#d6e6e9;
}

/* Hoofdkaarten en informatieblokken */
.info-card,
.hotel-card,
.article-card,
.provider-card,
.mini-provider-card,
.booking-highlight-card,
.destination-card,
.sunny-fact,
.fact,
.sidebar-box,
.form-card,
.author-card,
.booking-stat,
.faq details,
.providers-strip span,
.home-booking-route,
.booking-quick-options > a,
.booking-page .provider-card,
.compare-table,
.contact-form,
.notice-card{
  background:var(--panel-tint)!important;
  border-color:var(--panel-border)!important;
}

/* Kaarten die oorspronkelijk een witte gradient hadden */
.hotel-card,
.provider-card,
.author-card,
.booking-stat{
  background:linear-gradient(
    180deg,
    var(--panel-tint) 0%,
    var(--panel-tint-strong) 100%
  )!important;
}

/* Navigatieblokken */
.nav-wrap{
  background:rgba(243,249,250,.97)!important;
}

.nav-dropdown{
  background:var(--panel-tint)!important;
  border-color:var(--panel-border)!important;
}

/* Formuliervelden */
.field input,
.field textarea,
.field select{
  background:var(--panel-tint)!important;
  border-color:#b9d2d6!important;
}

/* Logo- en aanbiedersvakken */
.provider-logo,
.booking-page .provider-logo,
.booking-quick-logos > div > span,
.home-provider-mini-logos b,
.footer-logo-row span,
.footer-provider-logos span,
.footer-logos > div span{
  background:var(--panel-tint)!important;
  border-color:var(--panel-border)!important;
}

/* Kleine witte keuze- en filterblokken */
.filter-btn,
.booking-sell-list li:before,
.header-trusts b{
  background:var(--panel-tint)!important;
}

/* Tabelcellen volgen de getinte kaart */
.compare-table td{
  background:var(--panel-tint)!important;
}

/* Mobiel menu in dezelfde lichte tint */
@media(max-width:1120px){
  .main-nav{
    background:var(--panel-tint)!important;
  }
}

/* Winkelcluster en uitgebreidere content 20260728 */
@media(min-width:1121px){
  .site-header .nav-dropdown{
    width:275px!important;
    max-height:min(72vh,640px)!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
  }
}

.expanded-guide-content{
  margin-top:54px;
  padding-top:8px;
  border-top:1px solid var(--panel-border,#d6e6e9);
}

.expanded-guide-content > h2:first-child{
  margin-top:38px;
}

.shopping-link-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
  margin:32px 0 46px;
}

.shopping-link-grid .info-card{
  display:block;
  min-width:0;
}

.shopping-link-grid .info-card h3{
  margin-top:12px;
}

.shopping-cluster-callout{
  margin:48px 0 16px;
  padding:30px;
  border:1px solid var(--panel-border,#d6e6e9);
  border-radius:22px;
  background:var(--panel-tint,#f3f9fa);
}

.shopping-cluster-callout h2{
  margin-top:0!important;
}

@media(max-width:680px){
  .shopping-link-grid{
    grid-template-columns:1fr;
  }

  .shopping-cluster-callout{
    padding:23px;
  }
}
/* Losse verdiepingssecties 20260728 */
.extra-depth-section{padding-top:70px!important;padding-bottom:70px!important}
.extra-depth-section .expanded-guide-content{max-width:920px;margin:0 auto;border-top:0;padding-top:0}
@media(max-width:680px){.extra-depth-section{padding-top:52px!important;padding-bottom:52px!important}}

/* Eenvoudige contactpagina 20260730 */
.contact-simple-card{
  max-width:820px!important;
  margin:0 auto!important;
  padding:42px!important;
}

.contact-simple-card h2{
  margin-top:10px!important;
}

.contact-simple-card .contact-email{
  margin:8px 0 28px!important;
}

.contact-simple-card .contact-email a{
  display:inline-block;
  font-size:clamp(1.25rem,2vw,1.55rem);
  font-weight:800;
  color:var(--navy,#123a43);
  text-decoration:none;
}

.contact-simple-card .contact-email a:hover{
  text-decoration:underline;
}

@media(max-width:680px){
  .contact-simple-card{
    padding:26px!important;
  }
}

/* Alleen Corendon en de VakantieDiscounter klikbaar op de homepage 20260730 */
.booking-quick-logos .booking-affiliate-logo{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  text-decoration:none!important;
}

.booking-quick-logos .booking-affiliate-logo img{
  display:block!important;
  max-width:100%!important;
  max-height:48px!important;
  object-fit:contain!important;
}

/* Definitieve footer met zichtbare kolommen 20260730 */
.site-footer .footer-main{
  display:grid!important;
  grid-template-columns:1.35fr repeat(4,minmax(0,1fr))!important;
  gap:34px!important;
  width:100%!important;
  visibility:visible!important;
  opacity:1!important;
}

.site-footer .footer-main > div{
  display:block!important;
  min-width:0!important;
  visibility:visible!important;
  opacity:1!important;
}

.site-footer .footer-main h2,
.site-footer .footer-main a,
.site-footer .footer-main p,
.site-footer .footer-main li{
  visibility:visible!important;
  opacity:1!important;
}

.site-footer .footer-booking .button,
.site-footer .footer-booking a.button{
  display:none!important;
}

@media(max-width:980px){
  .site-footer .footer-main{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .site-footer .footer-about{
    grid-column:1 / -1!important;
  }
}

@media(max-width:620px){
  .site-footer .footer-main{
    grid-template-columns:1fr!important;
  }

  .site-footer .footer-about{
    grid-column:auto!important;
  }
}

/* Footer links correct uitgelijnd 20260730 */
.site-footer .footer-main{
  width:min(var(--max),calc(100% - 40px))!important;
  margin-right:auto!important;
  margin-left:auto!important;
}

@media(max-width:680px){
  .site-footer .footer-main{
    width:min(var(--max),calc(100% - 28px))!important;
  }
}

/* Homepage aanbiedersblok en boekenpagina aanbieders fix 20260915 */
.booking-quick-logos{
  grid-column:1/-1!important;
  display:grid!important;
  grid-template-columns:220px minmax(0,1fr)!important;
  align-items:center!important;
  gap:18px!important;
  padding-top:22px!important;
  border-top:1px solid #dbe7e8!important;
}
.booking-quick-logos > span{
  font-size:13px!important;
  font-weight:900!important;
  color:#60777c!important;
  white-space:nowrap!important;
}
.booking-quick-logos > div{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:14px!important;
  min-width:0!important;
}
.booking-quick-logos > div > a{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:76px!important;
  padding:14px 16px!important;
  border:1px solid #d6e5ea!important;
  border-radius:20px!important;
  background:#ffffff!important;
  box-shadow:0 10px 24px rgba(19,58,67,.05)!important;
  overflow:hidden!important;
  text-decoration:none!important;
}
.booking-quick-logos > div > a img{
  display:block!important;
  max-width:100%!important;
  max-height:36px!important;
  width:auto!important;
  height:auto!important;
  object-fit:contain!important;
}
.booking-page .booking-intro{
  grid-template-columns:1fr!important;
}
.booking-page .provider-grid{
  align-items:stretch!important;
}
@media(max-width:1100px){
  .booking-quick-logos{
    grid-template-columns:1fr!important;
  }
  .booking-quick-logos > div{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}
@media(max-width:760px){
  .booking-quick-logos > div{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:520px){
  .booking-quick-logos > div{
    grid-template-columns:1fr!important;
  }
}



/* Hotel providerblokken op alle hotelpagina's 20260915 */
.hotel-booking-box .mini-provider-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:22px!important;
  align-items:stretch!important;
}
.hotel-booking-box .mini-provider-card{
  display:flex!important;
  flex-direction:column!important;
  gap:16px!important;
  min-width:0!important;
  min-height:100%!important;
  padding:22px!important;
  border:1px solid var(--panel-border)!important;
  border-top:5px solid var(--provider,#168fbb)!important;
  border-radius:22px!important;
  background:linear-gradient(180deg,var(--panel-tint) 0%,var(--panel-tint-strong) 100%)!important;
  box-shadow:0 16px 38px rgba(21,93,103,.08)!important;
}
.hotel-booking-box .mini-provider-top{
  min-height:31px!important;
}
.hotel-booking-box .mini-provider-pill{
  display:inline-flex!important;
  width:auto!important;
  max-width:100%!important;
  padding:7px 10px!important;
  border-radius:999px!important;
  background:var(--provider-soft,#eef7fb)!important;
  color:var(--provider-dark,#173f46)!important;
  font-size:11px!important;
  line-height:1.2!important;
  font-weight:900!important;
  white-space:normal!important;
}
.hotel-booking-box .mini-provider-logo{
  width:100%!important;
  min-height:92px!important;
  padding:14px!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
  border:1px solid var(--panel-border)!important;
  border-radius:18px!important;
  background:var(--panel-tint)!important;
}
.hotel-booking-box .mini-provider-logo img{
  display:block!important;
  width:auto!important;
  height:auto!important;
  max-width:170px!important;
  max-height:50px!important;
  object-fit:contain!important;
}
.hotel-booking-box .mini-provider-copy{
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
}
.hotel-booking-box .mini-provider-card h3{
  margin:0!important;
  font-size:27px!important;
  line-height:1.06!important;
}
.hotel-booking-box .mini-provider-card p{
  margin:0!important;
  color:#60777c!important;
  font-size:15px!important;
  line-height:1.55!important;
}
.hotel-booking-box .mini-provider-button{
  width:100%!important;
  min-height:52px!important;
  margin-top:auto!important;
  justify-content:center!important;
  background:var(--provider,#168fbb)!important;
  border-color:var(--provider,#168fbb)!important;
  color:#fff!important;
}
.hotel-booking-box .mini-provider-button:hover{
  background:var(--provider-dark,#155d67)!important;
  border-color:var(--provider-dark,#155d67)!important;
}
.hotel-booking-box .mini-provider-card.provider-tui{
  --provider:#e51d22;
  --provider-soft:#fff0f0;
  --provider-dark:#a91b1f;
}
.hotel-booking-box .mini-provider-card.provider-sunweb{
  --provider:#ec0d53;
  --provider-soft:#fff1f6;
  --provider-dark:#b20d42;
}
.hotel-booking-box .mini-provider-card.provider-corendon{
  --provider:#f47b5b;
  --provider-soft:#fff2ed;
  --provider-dark:#bf5b40;
}
.hotel-booking-box .mini-provider-card.provider-vakantiediscounter{
  --provider:#1b7abd;
  --provider-soft:#eef7ff;
  --provider-dark:#165f93;
}
.hotel-booking-box .mini-provider-card.provider-tjingo{
  --provider:#e31567;
  --provider-soft:#fff0f6;
  --provider-dark:#a91b57;
}
@media(max-width:980px){
  .hotel-booking-box .mini-provider-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:680px){
  .hotel-booking-box .mini-provider-grid{
    grid-template-columns:1fr!important;
  }
}

/* Vanafprijzen aanbieders boekenpagina 20260917 */
.booking-page .provider-card,
#aanbieders .provider-card{
  display:flex!important;
  flex-direction:column!important;
}

#aanbieders .provider-price{
  margin-top:4px!important;
  padding:15px 16px!important;
  border:1px solid rgba(21,93,103,.12)!important;
  border-radius:16px!important;
  background:rgba(255,255,255,.72)!important;
}

#aanbieders .provider-price-duration{
  display:block!important;
  margin-bottom:3px!important;
  color:#657b80!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.4px!important;
  text-transform:uppercase!important;
}

#aanbieders .provider-price-row{
  display:flex!important;
  align-items:flex-end!important;
  gap:7px!important;
}

#aanbieders .provider-price-value{
  display:block!important;
  color:var(--provider,var(--fix-dark))!important;
  font-family:'Oswald',Arial,sans-serif!important;
  font-size:36px!important;
  line-height:1!important;
  letter-spacing:-.5px!important;
}

#aanbieders .provider-price-pp{
  padding-bottom:3px!important;
  color:#657b80!important;
  font-size:13px!important;
  font-weight:800!important;
}

#aanbieders .provider-button{
  margin-top:auto!important;
}

/* Weerpagina compacter + widget 20260917 */
.weather-page .page-hero{
  padding-bottom:24px!important;
}
.weather-page .page-hero + .section{
  padding-top:34px!important;
}
.weather-page .weather-widget-wrap{
  margin:28px 0 34px!important;
  overflow:hidden!important;
  border-radius:22px!important;
  box-shadow:0 14px 36px rgba(21,93,103,.10)!important;
}
.weather-page .weather-widget-wrap > div{
  width:100%!important;
}
@media(max-width:680px){
  .weather-page .page-hero{
    padding-bottom:18px!important;
  }
  .weather-page .page-hero + .section{
    padding-top:24px!important;
  }
  .weather-page .weather-widget-wrap{
    margin:22px 0 28px!important;
    border-radius:16px!important;
  }
}

