/*
Theme Name: CiaoVakantieDeals
Theme URI: https://ciaovakantiedeals.nl
Author: Ciaovakantiedeals
Description: Custom thema voor ciaovakantiedeals.nl
Version: 3.20
*/

:root{
  --pink:#FF5A93;--pink-dark:#E43F7D;--orange:#FF9440;--yellow:#FFC933;
  --blue:#2E8FD8;--blue-light:#E8F3FC;--blue-dark:#1F4E79;
  --roze:#FF9BA0;--roze-licht:#FFECED;--pistache:#8FAF83;--pistache-licht:#EEF3EA;
  --creme:#FAFBFC;--zand:#F5EDE0;--terracotta:#D96C4A;
  --white:#FFFFFF;--gray-50:#F9FAFB;--gray-100:#F3F4F6;
  --gray-200:#E5E7EB;--gray-600:#555A66;--gray-800:#232630;
  --font:'Inter',sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box;}
body{font-family:var(--font);color:var(--gray-800);background:var(--creme);}
a{text-decoration:none;color:inherit;}
img{max-width:100%;height:auto;}

/* ===========================
   LOGO — geforceerd links
   =========================== */
.logo-wrap{display:flex;align-items:center;flex:0 0 auto;}
.logo-wrap a{display:flex!important;align-items:center!important;text-decoration:none;}
.logo-wrap img.custom-logo{height:68px!important;width:auto!important;display:block!important;margin:0!important;}
.logo-wrap .custom-logo-link{display:flex!important;align-items:center!important;justify-content:flex-start!important;margin:0!important;padding:0!important;}
.wp-block-site-logo{margin:0!important;text-align:left!important;line-height:1!important;}
.wp-block-site-logo a{display:block!important;margin:0!important;padding:0!important;}
.wp-block-site-logo img{margin:0!important;display:block!important;}
.custom-logo-link{margin:0!important;padding:0!important;display:flex!important;align-items:center!important;}
.custom-logo{height:68px!important;width:auto!important;display:block!important;margin:0!important;}
.logo-fallback{display:flex;align-items:baseline;gap:4px;}
.logo-ciao{font-size:28px;font-weight:800;color:var(--blue);letter-spacing:-1px;}
.logo-sub{font-size:11px;font-weight:700;color:var(--blue-dark);letter-spacing:2px;text-transform:uppercase;}

/* Footer gebruikt eigen witte logo-afbeelding, geen filter nodig */

/* ===========================
   TOP BAR
   =========================== */
.top-bar{background:var(--pink);color:white;text-align:center;padding:8px 1rem;font-size:13px;font-weight:500;}

/* ===========================
   NAV
   =========================== */
nav{background:var(--white);border-bottom:1px solid var(--gray-200);position:sticky;top:0;z-index:100;}
.nav-top{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;height:84px;padding:0 2rem;}
.nav-right{display:flex;align-items:center;gap:12px;}
.nav-search{display:flex;align-items:center;gap:8px;background:var(--gray-50);border:1.5px solid var(--gray-200);border-radius:20px;padding:7px 14px;font-size:13px;color:var(--gray-600);cursor:pointer;}
.nav-cta{background:var(--pink);color:white!important;padding:8px 18px;border-radius:8px;font-size:14px;font-weight:600;white-space:nowrap;}
.nav-cta:hover{background:var(--pink-dark)!important;}

/* ===========================
   HAMBURGER
   =========================== */
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:4px;}
.hamburger span{width:24px;height:2px;background:var(--gray-800);border-radius:2px;}

/* ===========================
   MOBIEL MENU
   =========================== */
.mobile-menu{display:none;position:fixed;inset:0;background:white;z-index:200;padding:20px;overflow-y:auto;}
.mobile-menu.open{display:block;}
.mobile-menu-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;}
.mobile-close{font-size:24px;cursor:pointer;color:var(--gray-600);}
.mobile-nav-item{padding:14px 0;border-bottom:1px solid var(--gray-100);font-size:16px;font-weight:600;color:var(--gray-800);display:flex;justify-content:space-between;align-items:center;cursor:pointer;width:100%;text-align:left;background:none;border-left:none;border-right:none;border-top:none;font-family:var(--font);}
.mobile-nav-item:hover{color:var(--pink);}
.mobile-nav-social{color:var(--pink)!important;font-weight:700!important;}
.mobile-nav-social:hover{color:var(--pink-dark)!important;}
.mobile-sub{display:none;padding:8px 0 8px 16px;}
.mobile-sub.open{display:block;}
.mobile-sub-title{font-size:11px;font-weight:700;color:#9CA3AF;text-transform:uppercase;letter-spacing:1px;margin:10px 0 6px;}
.mobile-sub a{display:block;font-size:14px;color:var(--gray-600);padding:5px 0;}
.mobile-sub a:hover{color:var(--pink);}

/* ===========================
   CATEGORY NAV
   =========================== */
.cat-nav{background:var(--white);border-bottom:2px solid var(--gray-100);position:relative;}
.cat-nav-inner{max-width:1200px;margin:0 auto;display:flex;padding:0 2rem;overflow:visible;}
.cat-item{position:relative;}
.cat-nav-btn{display:flex;align-items:center;gap:6px;padding:13px 20px;font-size:14px;font-weight:600;color:var(--gray-600);white-space:nowrap;border-bottom:2px solid transparent;margin-bottom:-2px;cursor:pointer;transition:all .2s;border:none;background:none;font-family:var(--font);}
.cat-nav-btn:hover,.cat-nav-btn.active{color:var(--pink);border-bottom-color:var(--pink);}
.cat-nav-btn a{color:inherit;text-decoration:none;}
.cat-nav-btn-social{color:var(--pink)!important;font-weight:700!important;}
.cat-nav-btn-social:hover{color:var(--pink-dark)!important;border-bottom-color:var(--pink-dark)!important;}
.mega-drop{display:none;position:absolute;top:100%;left:0;background:white;border:1px solid var(--gray-200);border-radius:12px;box-shadow:0 12px 40px rgba(0,0,0,0.12);padding:20px;min-width:560px;z-index:200;}
.mega-drop.mega-drop-single{min-width:200px;}
.cat-item:hover .mega-drop{display:flex;gap:24px;}
.drop-col h4{font-size:11px;font-weight:700;color:#9CA3AF;text-transform:uppercase;letter-spacing:1px;margin-bottom:10px;padding-bottom:6px;border-bottom:1px solid var(--gray-100);}
.drop-col ul{list-style:none;}
.drop-col ul li a{display:block;font-size:13px;color:var(--gray-600);padding:5px 0;white-space:nowrap;}
.drop-col ul li a:hover{color:var(--pink);}

/* ===========================
   HERO
   =========================== */
.hero{background:url('hero-bg.jpg') center/cover no-repeat;padding:56px 1.5rem 76px;text-align:center;position:relative;overflow:hidden;}
.hero::after{content:'';position:absolute;top:-80px;right:-80px;width:350px;height:350px;background:rgba(255,255,255,0.06);border-radius:50%;z-index:0;}
.hero-inner{max-width:720px;margin:0 auto;position:relative;z-index:1;}
.hero-tag{display:inline-flex;align-items:center;gap:6px;background:rgba(255,255,255,0.12);backdrop-filter:blur(8px);color:rgba(255,255,255,0.95);font-size:12px;font-weight:600;padding:6px 14px;border-radius:20px;margin-bottom:20px;letter-spacing:1px;text-transform:uppercase;border:1px solid rgba(255,255,255,0.18);}
.hero h1{font-family:var(--font);font-size:44px;font-weight:800;color:white;line-height:1.1;margin-bottom:14px;letter-spacing:-0.5px;}
.hero h1 span{color:var(--yellow);}
.hero-sub{font-family:var(--font);font-size:18px;color:rgba(255,255,255,0.92);margin-bottom:36px;font-weight:500;}

/* ===========================
   ZOEKBALK
   =========================== */
.search-wrap{background:white;border-radius:18px;padding:14px;display:flex;gap:10px;max-width:620px;margin:0 auto;box-shadow:0 12px 32px rgba(0,0,0,0.18);align-items:stretch;}
.s-field{flex:1;display:flex;flex-direction:column;justify-content:center;padding:12px 18px;border-radius:12px;transition:border-color .15s, background .15s;min-width:0;text-align:left;background:var(--gray-50);border:1px solid var(--gray-200);}
.s-field:hover,.s-field:focus-within{background:#fff;border-color:var(--pink);}
.s-field label{display:block;text-align:left;font-size:10.5px;font-weight:700;color:var(--gray-600);text-transform:uppercase;letter-spacing:0.4px;margin-bottom:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.s-field select,.s-field input{text-align:left;border:none;background:transparent;font-size:14px;font-weight:600;font-family:var(--font);color:var(--gray-800);outline:none;width:100%;cursor:pointer;appearance:none;-webkit-appearance:none;padding-right:22px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23FF3D8B' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right center;}
.s-divider{display:none;}
.search-btn{background:linear-gradient(135deg,var(--pink),var(--pink-dark));color:white;border:none;border-radius:12px;padding:0 26px;font-size:15px;font-weight:700;cursor:pointer;white-space:nowrap;font-family:var(--font);flex-shrink:0;margin-left:0;align-self:stretch;transition:transform .12s,box-shadow .12s;box-shadow:0 6px 18px rgba(255,90,147,0.35);}
.search-btn:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(255,90,147,0.45);}

/* ===========================
   STATS
   =========================== */
.stats-bar{background:var(--blue);padding:14px 1rem;}
.stats-inner{max-width:1200px;margin:0 auto;display:flex;justify-content:center;gap:40px;flex-wrap:wrap;}
.stat{text-align:center;color:white;}
.stat-num{font-size:20px;font-weight:800;}
.stat-label{font-size:11px;opacity:.85;margin-top:1px;}

/* ===========================
   MAIN
   =========================== */
.main{max-width:1200px;margin:0 auto;padding:28px 1.5rem;}
.sec-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;}
.sec-title{font-size:22px;font-weight:800;}
.sec-title span{color:var(--pink);}
.sec-link{font-size:13px;font-weight:600;color:var(--blue-dark);}
.sec-link:hover{color:var(--pink);}

/* ===========================
   CATEGORIE KAARTJES
   =========================== */
.cat-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-bottom:36px;}
.cat-card{background:white;border-radius:12px;padding:16px 10px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;border:1px solid var(--gray-200);cursor:pointer;transition:all .2s;color:var(--gray-800);}
.cat-card:hover{border-color:var(--pink);box-shadow:0 4px 16px rgba(255,90,147,0.1);}
.cat-icon{font-size:24px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:10px;}
.cat-card h3{font-size:12px;font-weight:700;}
.cat-card p{font-size:11px;color:var(--gray-600);}

/* ===========================
   DEAL KAARTJES
   =========================== */
.deals-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:36px;}
.deal-card{background:white;border-radius:12px;overflow:hidden;border:1px solid var(--gray-200);transition:transform .2s,box-shadow .2s;cursor:pointer;}
.deal-card:hover{transform:translateY(-3px);box-shadow:0 10px 30px rgba(0,0,0,0.1);}
.deal-img{height:160px;position:relative;overflow:hidden;}
.deal-img-bg{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:36px;}
.deal-fav{position:absolute;top:10px;right:10px;width:28px;height:28px;background:rgba(255,255,255,0.9);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;cursor:pointer;}
.deal-badges{position:absolute;top:10px;left:10px;display:flex;gap:4px;flex-wrap:wrap;}
.badge{display:inline-block;padding:3px 8px;border-radius:5px;font-size:11px;font-weight:700;}
.b-pink{background:var(--pink);color:white;}
.b-yellow{background:var(--yellow);color:#7A5A00;}
.b-blue{background:var(--blue-light);color:var(--blue-dark);}
.b-orange{background:var(--orange);color:white;}
.deal-body{padding:12px 14px;}
.deal-dest{font-size:14px;font-weight:700;margin-bottom:2px;}
.deal-dest-loc{font-weight:500;color:var(--gray-500);}
.deal-info{font-size:12px;color:var(--gray-600);margin-bottom:6px;}
.deal-aanbieder{font-size:11px;color:#9CA3AF;margin-bottom:8px;}
.deal-detail{display:flex;gap:6px;margin-bottom:10px;flex-wrap:wrap;}
.deal-footer{display:flex;justify-content:space-between;align-items:center;padding-top:10px;border-top:1px solid var(--gray-100);}
.deal-price{text-align:left;}
.deal-from{font-size:10px;color:var(--gray-600);}
.deal-amount{font-size:20px;font-weight:800;color:var(--pink);line-height:1;}
.deal-pp{font-size:10px;color:var(--gray-600);}
.deal-btn{background:var(--pink);color:white;border:none;border-radius:7px;padding:7px 14px;font-size:12px;font-weight:700;cursor:pointer;font-family:var(--font);}
.deal-btn:hover{background:var(--pink-dark);}

/* ===========================
   DATAFEEDR / WOOCOMMERCE
   =========================== */
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:16px!important;margin:0!important;padding:0!important;}
.woocommerce ul.products li.product{background:white!important;border-radius:12px!important;overflow:hidden!important;border:1px solid var(--gray-200)!important;transition:transform .2s,box-shadow .2s!important;padding:0!important;margin:0!important;list-style:none!important;}
.woocommerce ul.products li.product:hover{transform:translateY(-3px)!important;box-shadow:0 10px 30px rgba(0,0,0,0.1)!important;}
.woocommerce ul.products li.product a img{height:160px!important;object-fit:cover!important;width:100%!important;border-radius:0!important;margin:0!important;}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:14px!important;font-weight:700!important;padding:12px 14px 4px!important;color:var(--gray-800)!important;font-family:var(--font)!important;}
.woocommerce ul.products li.product .price{font-size:20px!important;font-weight:800!important;color:var(--pink)!important;padding:0 14px 8px!important;display:block!important;}
.woocommerce ul.products li.product .price ins{text-decoration:none!important;}
.woocommerce ul.products li.product .price del{display:none!important;}
.woocommerce ul.products li.product .button{background:var(--pink)!important;color:white!important;border-radius:7px!important;font-weight:700!important;font-size:12px!important;padding:7px 14px!important;margin:0 14px 14px!important;border:none!important;display:inline-block!important;font-family:var(--font)!important;transition:background .2s!important;}
.woocommerce ul.products li.product .button:hover{background:var(--pink-dark)!important;}
.woocommerce div.product{background:white;border-radius:12px;padding:32px;border:1px solid var(--gray-200);margin-bottom:32px;}
.woocommerce div.product .product_title{font-size:28px!important;font-weight:800!important;color:var(--gray-800)!important;margin-bottom:12px!important;}
.woocommerce div.product .price{font-size:32px!important;font-weight:800!important;color:var(--pink)!important;margin-bottom:16px!important;}
.woocommerce div.product .single_add_to_cart_button{background:var(--pink)!important;color:white!important;border-radius:10px!important;font-weight:700!important;font-size:16px!important;padding:14px 32px!important;border:none!important;font-family:var(--font)!important;}
.woocommerce div.product .single_add_to_cart_button:hover{background:var(--pink-dark)!important;}
.woocommerce div.product img{border-radius:12px!important;}

/* ===========================
   BESTEMMINGEN
   =========================== */
.dest-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-bottom:36px;}
.dest-grid-full{grid-template-columns:repeat(3,1fr) !important;gap:16px !important;}
.dest-card{border-radius:12px;overflow:hidden;position:relative;cursor:pointer;height:130px;display:block;}
.dest-grid-full .dest-card{height:180px;}
.dest-card:hover .dest-overlay{background:rgba(0,0,0,0.45);}
.dest-bg{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:36px;}
.dest-grid-full .dest-bg{font-size:52px;}
.dest-overlay{position:absolute;inset:0;background:rgba(0,0,0,0.28);display:flex;flex-direction:column;justify-content:flex-end;padding:12px;transition:background .2s;}
.dest-name{color:white;font-size:13px;font-weight:700;}
.dest-grid-full .dest-name{font-size:16px;}
.dest-count{color:rgba(255,255,255,0.75);font-size:11px;}

/* ===========================
   PAGE HERO
   =========================== */
.page-hero{background:linear-gradient(135deg,rgba(255,148,64,0.85) 0%,rgba(255,90,147,0.85) 45%,rgba(46,143,216,0.85) 100%);padding:50px 1.5rem;text-align:center;}
.page-hero h1{font-size:38px;font-weight:800;color:white;margin-bottom:8px;}
.page-hero p{font-size:16px;color:rgba(255,255,255,0.9);}
.page-content-wrap{max-width:1200px;margin:0 auto;padding:28px 1.5rem;}
.page-intro{background:white;border-radius:12px;padding:24px;margin-bottom:28px;border:1px solid var(--gray-200);font-size:15px;line-height:1.7;color:var(--gray-600);}
.page-intro p:last-child{font-style:italic;text-align:center;margin-top:16px;color:var(--gray-600);}
.page-intro-cta{font-style:italic;text-align:center !important;margin-top:16px !important;color:var(--gray-600);}

/* ===========================
   BLOG
   =========================== */
.blog-content h2{font-size:22px;font-weight:800;margin:28px 0 12px;}
.blog-content h3{font-size:18px;font-weight:700;margin:20px 0 10px;}
.blog-content p{margin-bottom:16px;}
.blog-content ul,.blog-content ol{padding-left:24px;margin-bottom:16px;}
.blog-content li{margin-bottom:6px;}
.blog-content img{border-radius:10px;margin:16px 0;}
.blog-content a{color:var(--pink);text-decoration:underline;}
.blog-content blockquote{border-left:4px solid var(--pink);padding:12px 20px;background:var(--gray-50);border-radius:0 8px 8px 0;margin:20px 0;font-style:italic;}

/* ===========================
   USP
   =========================== */
.usp-strip{background:white;border-radius:12px;padding:24px 32px;display:flex;justify-content:space-around;margin-bottom:36px;border:1px solid var(--gray-200);flex-wrap:wrap;gap:16px;}
.usp{text-align:center;}
.usp-icon{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:22px;margin:0 auto 10px;}
.usp-title{font-size:13px;font-weight:700;}
.usp-text{font-size:12px;color:var(--gray-600);margin-top:2px;}

/* ===========================
   TIPS & BLOGS
   =========================== */

/* Losse blogoverzichtpagina (/blog): gewoon grid, geen swipe, want hier
   wil je alle posts kunnen zien en doorscrollen, niet een beperkte
   selectie kunnen swipen zoals in de homepage-strook hieronder. */
.blog-archive-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
  margin-bottom:36px;
}
@media (max-width:900px){
  .blog-archive-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:600px){
  .blog-archive-grid{grid-template-columns:1fr;}
}
/* Losse, eigen kaart-stijl voor het archief, volledig gescheiden van
   .tip-card (dat gebruikt flex-eigenschappen specifiek voor de
   swipe-strook op de homepage en mag niet vermengd worden). */
.archive-card{background:white;border-radius:12px;overflow:hidden;border:1px solid var(--gray-200);transition:box-shadow .2s;cursor:pointer;width:100%;}
.archive-card:hover{box-shadow:0 6px 20px rgba(0,0,0,0.08);}
.archive-card .tip-img{height:200px;display:flex;align-items:center;justify-content:center;font-size:44px;}
.archive-card .tip-body{padding:16px;}
.archive-card .tip-cat{font-size:11px;font-weight:700;color:var(--pink);text-transform:uppercase;letter-spacing:0.5px;margin-bottom:6px;display:block;}
.archive-card .tip-title{font-size:15px;font-weight:700;margin-bottom:6px;}
.archive-card .tip-text{font-size:13px;color:var(--gray-600);line-height:1.6;}
.archive-card .tip-link{display:inline-block;margin-top:10px;font-size:13px;font-weight:600;color:var(--pink);}

.tips-scroll{
  overflow-x:auto;
  overflow-y:hidden;
  margin-bottom:8px;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
  scroll-snap-type:x proximity;
}
.tips-scroll::-webkit-scrollbar{display:none;}
.tips-scroll-track{
  display:flex;
  gap:16px;
  padding-bottom:4px;
}
.tip-card{background:white;border-radius:12px;overflow:hidden;border:1px solid var(--gray-200);transition:box-shadow .2s;cursor:pointer;width:100%;flex:0 0 calc(33.333% - 11px);scroll-snap-align:start;}
.tip-card:hover{box-shadow:0 6px 20px rgba(0,0,0,0.08);}
.tip-img{height:130px;display:flex;align-items:center;justify-content:center;font-size:44px;}
.tip-body{padding:16px;}
.tip-cat{font-size:11px;font-weight:700;color:var(--pink);text-transform:uppercase;letter-spacing:0.5px;margin-bottom:6px;display:block;}
.tip-title{font-size:15px;font-weight:700;margin-bottom:6px;}
.tip-text{font-size:13px;color:var(--gray-600);line-height:1.6;}
.tip-link{display:inline-block;margin-top:10px;font-size:13px;font-weight:600;color:var(--pink);}

/* ===========================
   AFFILIATE NOTICE
   =========================== */
.affiliate-notice{background:#FFF8E8;border-radius:12px;padding:16px 20px;margin-bottom:36px;display:flex;gap:12px;align-items:flex-start;border:1px solid #FFE4A0;}
.affiliate-notice p{font-size:13px;color:#7A5A00;line-height:1.6;}
.affiliate-notice a{color:var(--blue-dark);text-decoration:underline;}

/* ===========================
   FAQ
   =========================== */
.faq-wrap{background:white;border-radius:12px;border:1px solid var(--gray-200);overflow:hidden;margin-bottom:36px;}
.faq-header{padding:24px 28px 0;}
.faq-header h2{font-size:22px;font-weight:800;margin-bottom:4px;}
.faq-header p{font-size:14px;color:var(--gray-600);margin-bottom:20px;}
.faq-item{border-top:1px solid var(--gray-100);}
.faq-q{width:100%;text-align:left;padding:18px 28px;font-size:15px;font-weight:600;color:var(--gray-800);background:none;border:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-family:var(--font);}
.faq-q:hover{color:var(--pink);}
.faq-q .icon{font-size:18px;color:var(--pink);transition:transform .2s;flex-shrink:0;margin-left:16px;}
.faq-a{display:none;padding:0 28px 18px;font-size:14px;color:var(--gray-600);line-height:1.7;}
.faq-item.open .faq-a{display:block;}
.faq-item.open .icon{transform:rotate(45deg);}

/* ===========================
   NIEUWSBRIEF
   =========================== */
.newsletter{background:linear-gradient(135deg,var(--pink) 0%,var(--orange) 100%);border-radius:16px;padding:40px 24px;text-align:center;margin-bottom:36px;}
.newsletter-wrap{margin-bottom:36px;}

/* Newsletter wrapper stijl */
.nl-mailpoet{
  background:linear-gradient(155deg,#FFF5F8 0%,#FFF9F0 100%);
  border:1.5px solid #FFD6E8;
  border-radius:18px;
  padding:44px 32px;
  text-align:center;
  font-family:'Inter',sans-serif;
  box-shadow:0 14px 40px rgba(255,90,147,0.12);
  position:relative;
  overflow:hidden;
}
.nl-mailpoet::before{
  content:'';
  position:absolute;
  top:0;left:0;right:0;
  height:6px;
  background:linear-gradient(90deg,var(--pink),var(--orange),var(--yellow));
}
.nl-mailpoet::after{
  content:'🔔';
  display:block;
  font-size:34px;
  margin:0 auto 12px;
  animation:nl-bell-swing 2.4s ease-in-out infinite;
  transform-origin:top center;
}
@keyframes nl-bell-swing{
  0%,100%{transform:rotate(0deg);}
  10%{transform:rotate(-12deg);}
  20%{transform:rotate(10deg);}
  30%{transform:rotate(-8deg);}
  40%{transform:rotate(6deg);}
  50%{transform:rotate(0deg);}
}
.nl-mailpoet h2{font-size:28px;font-weight:800;color:var(--gray-800);margin-bottom:8px;}
.nl-mailpoet p{color:var(--gray-600);font-size:15px;margin-bottom:6px;}
.nl-mailpoet .nl-small{color:#9CA3AF;font-size:12px;margin-bottom:24px;}
.nl-mailpoet .nl-disclaimer{font-size:11px;color:#9CA3AF;margin-top:16px;margin-bottom:0;}
.nl-mailpoet .nl-disclaimer a{color:var(--pink);text-decoration:underline;}
/* MailPoet form: geen eigen stijl, alleen input + knop */
.nl-mailpoet .mailpoet_form{background:none!important;padding:0!important;border-radius:0!important;box-shadow:none!important;max-width:440px;margin:0 auto;}
.nl-mailpoet .mailpoet_paragraph{margin-bottom:8px!important;text-align:center!important;}
.nl-mailpoet .mailpoet_text{width:100%!important;border:1.5px solid #FFD6E8!important;background:white!important;border-radius:10px!important;padding:13px 16px!important;font-size:14px!important;font-family:'Inter',sans-serif!important;outline:none!important;box-sizing:border-box!important;transition:border-color .15s,box-shadow .15s!important;}
.nl-mailpoet .mailpoet_text:focus{border-color:var(--pink)!important;box-shadow:0 0 0 3px rgba(255,90,147,0.12)!important;}
.nl-mailpoet .mailpoet_submit{background:linear-gradient(135deg,var(--pink),var(--pink-dark))!important;color:white!important;border:none!important;border-radius:10px!important;padding:13px 22px!important;font-size:15px!important;font-weight:800!important;cursor:pointer!important;font-family:'Inter',sans-serif!important;white-space:nowrap!important;width:100%!important;box-sizing:border-box!important;display:block!important;margin:0 auto!important;box-shadow:0 8px 22px rgba(255,90,147,0.38)!important;transition:transform .12s,box-shadow .12s!important;letter-spacing:0.2px!important;}
.nl-mailpoet .mailpoet_submit:hover{transform:translateY(-1px)!important;box-shadow:0 10px 24px rgba(255,90,147,0.4)!important;}

/* Nieuwsbrief-popup */
.nl-popup-overlay{
  display:none;
  position:fixed;
  inset:0;
  background:rgba(17,17,24,0.55);
  z-index:1000;
  align-items:center;
  justify-content:center;
  padding:20px;
}
.nl-popup-overlay.open{display:flex;}
.nl-popup{
  position:relative;
  background:linear-gradient(155deg,#FFF5F8 0%,#FFF9F0 100%);
  border:1.5px solid #FFD6E8;
  border-radius:20px;
  padding:44px 32px 36px;
  max-width:440px;
  width:100%;
  text-align:center;
  font-family:'Inter',sans-serif;
  box-shadow:0 30px 70px rgba(0,0,0,0.28);
  animation:nl-popup-in .3s ease-out;
}
@keyframes nl-popup-in{
  from{opacity:0;transform:translateY(16px) scale(0.97);}
  to{opacity:1;transform:translateY(0) scale(1);}
}
.nl-popup-close{
  position:absolute;
  top:14px;right:14px;
  width:30px;height:30px;
  border:none;
  background:var(--gray-100);
  color:var(--gray-600);
  border-radius:50%;
  font-size:14px;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:background .15s;
}
.nl-popup-close:hover{background:var(--gray-200);}
.nl-popup-bell{font-size:34px;margin-bottom:10px;}
.nl-popup h2{font-size:24px;font-weight:800;color:var(--gray-800);margin-bottom:8px;}
.nl-popup p{color:var(--gray-600);font-size:14px;margin-bottom:6px;}
.nl-popup .nl-small{color:#9CA3AF;font-size:12px;margin-bottom:20px;}
.nl-popup .nl-disclaimer{font-size:11px;color:#9CA3AF;margin-top:14px;margin-bottom:0;}
.nl-popup .nl-disclaimer a{color:var(--pink);text-decoration:underline;}
.nl-popup .mailpoet_form{background:none!important;padding:0!important;border-radius:0!important;box-shadow:none!important;max-width:360px;margin:0 auto;}
.nl-popup .mailpoet_paragraph{margin-bottom:8px!important;text-align:center!important;}
.nl-popup .mailpoet_text{width:100%!important;border:1.5px solid #FFD6E8!important;background:white!important;border-radius:10px!important;padding:13px 16px!important;font-size:14px!important;font-family:'Inter',sans-serif!important;outline:none!important;box-sizing:border-box!important;}
.nl-popup .mailpoet_text:focus{border-color:var(--pink)!important;box-shadow:0 0 0 3px rgba(255,90,147,0.12)!important;}
.nl-popup .mailpoet_submit{background:linear-gradient(135deg,var(--pink),var(--pink-dark))!important;color:white!important;border:none!important;border-radius:10px!important;padding:13px 22px!important;font-size:15px!important;font-weight:800!important;cursor:pointer!important;font-family:'Inter',sans-serif!important;width:100%!important;box-sizing:border-box!important;display:block!important;margin:0 auto!important;box-shadow:0 8px 22px rgba(255,90,147,0.38)!important;}
.nl-popup .mailpoet_form input[name*="honeypot"],
.nl-popup .mailpoet_form .mailpoet_validate_country,
.nl-popup .mailpoet_form label[for*="leeg"],
.nl-popup .mailpoet_form p:has(label[for*="leeg"]),
.nl-popup .mailpoet_form .mailpoet_paragraph:has(input[style*="display: none"]),
.nl-popup .mailpoet_hp_email_label{display:none!important;visibility:hidden!important;position:absolute!important;left:-9999px!important;}
@media (max-width:480px){
  .nl-popup{padding:36px 22px 28px;}
  .nl-popup h2{font-size:21px;}
}
.nl-mailpoet .mailpoet_form input[name*="honeypot"],
.nl-mailpoet .mailpoet_form .mailpoet_validate_country,
.nl-mailpoet .mailpoet_form label[for*="leeg"],
.nl-mailpoet .mailpoet_form p:has(label[for*="leeg"]),
.nl-mailpoet .mailpoet_form .mailpoet_paragraph:has(input[style*="display: none"]),
.nl-mailpoet .mailpoet_hp_email_label{display:none!important;visibility:hidden!important;position:absolute!important;left:-9999px!important;}

/* MailPoet formulier: input + knop naast elkaar op desktop */
/* MailPoet formulier: volledige stijl vanuit style.css */
@media (min-width:601px){
  .nl-mailpoet .mailpoet_form .mailpoet_paragraph{display:inline-flex !important;vertical-align:middle !important;margin-bottom:0 !important;width:auto !important;}
  .nl-mailpoet .mailpoet_form .mailpoet_paragraph .mailpoet_text{width:240px !important;}
  .nl-mailpoet .mailpoet_form .mailpoet_paragraph .mailpoet_submit{width:auto !important;margin:0 !important;display:inline-block !important;}
  .nl-mailpoet .mailpoet_form .mailpoet_paragraph + .mailpoet_paragraph{margin-left:8px !important;}
}
@media (max-width:600px){
  .nl-mailpoet{padding:32px 20px !important;}
  .nl-mailpoet .mailpoet_form{padding:0 !important;background:none !important;}
  .nl-mailpoet .nl-small{margin-bottom:12px !important;}
  .nl-mailpoet .mailpoet_text{width:100% !important;box-sizing:border-box !important;}
  .nl-mailpoet .mailpoet_submit{width:100% !important;display:block !important;margin:8px auto 0 !important;box-sizing:border-box !important;}
  .nl-mailpoet .mailpoet_paragraph{display:block !important;width:100% !important;margin-left:0 !important;margin-right:0 !important;box-sizing:border-box !important;}
  .nl-mailpoet .mailpoet_form_column{display:block !important;width:100% !important;margin-left:0 !important;float:none !important;}
  .nl-mailpoet h2{font-size:22px !important;}
}
.newsletter h2{font-family:var(--font);font-size:28px;font-weight:800;color:white;margin-bottom:8px;}
.newsletter p{color:rgba(255,255,255,0.9);font-size:15px;margin-bottom:6px;}
.newsletter small{color:rgba(255,255,255,0.7);font-size:12px;display:block;margin-bottom:20px;}
.nl-form{display:flex;gap:8px;max-width:400px;margin:0 auto;}
.nl-form input{flex:1;border:none;border-radius:8px;padding:11px 16px;font-size:14px;font-family:var(--font);outline:none;min-width:0;}
.nl-form button{background:var(--yellow);color:#7A5A00;border:none;border-radius:8px;padding:11px 18px;font-size:14px;font-weight:700;cursor:pointer;font-family:var(--font);white-space:nowrap;}
.nl-disclaimer{font-size:11px;color:rgba(255,255,255,0.6);margin-top:10px;}
.nl-disclaimer a{color:rgba(255,255,255,0.7);text-decoration:underline;}

/* ===========================
   FOOTER
   =========================== */
footer{background:var(--gray-800);color:white;padding:40px 1.5rem 0;}
.site-footer{background:var(--gray-800);}
.footer-inner{max-width:1200px;margin:0 auto;}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;padding-bottom:32px;}
.footer-brand p{font-size:13px;color:#9CA3AF;margin-top:10px;line-height:1.7;}
.footer-col h4{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:#9CA3AF;margin-bottom:14px;}
.footer-col ul{list-style:none;margin:0;}
.footer-col ul li{margin-bottom:8px;}
.footer-col ul li a{font-size:13px;color:#D1D5DB;}
.footer-col ul li a:hover{color:var(--pink);}
.footer-middle{border-top:1px solid #374151;padding:16px 0;display:flex;gap:20px;flex-wrap:wrap;}
.footer-middle a{font-size:12px;color:#6B7280;}
.footer-middle a:hover{color:var(--pink);}
.footer-bottom{border-top:1px solid #2D3748;padding:16px 0;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;}
.footer-bottom p{font-size:12px;color:#4B5563;}
.footer-affiliate{background:#111827;padding:16px 1.5rem;margin:0 -1.5rem;}
.footer-affiliate p{font-size:11px;color:#6B7280;max-width:1200px;margin:0 auto;line-height:1.7;text-align:center;}

/* ===========================
   RESPONSIVE TABLET (iPad)
   =========================== */
@media(max-width:1024px){
  .custom-logo,.logo-wrap img.custom-logo{height:54px!important;}
  .nav-top{height:72px;}
  .deals-grid{grid-template-columns:repeat(2,1fr);}
  .woocommerce ul.products{grid-template-columns:repeat(2,1fr)!important;}
  .dest-grid{grid-template-columns:repeat(3,1fr);}
  .dest-grid-full{grid-template-columns:repeat(2,1fr) !important;}
  .footer-grid{grid-template-columns:1fr 1fr;gap:24px;}
  .cat-grid{grid-template-columns:repeat(3,1fr);}
  .tip-card{flex:0 0 220px;}
  .cat-nav-inner{overflow-x:auto;}
}

/* ===========================
   RESPONSIVE MOBIEL
   =========================== */
@media(max-width:640px){
  .custom-logo,.logo-wrap img.custom-logo{height:44px!important;}
  .nav-top{height:62px;padding:0 1rem;}
  .top-bar{font-size:12px;}
  .cat-nav{display:none;}
  .hamburger{display:flex;}
  .nav-search{display:none;}
  .hero{padding:36px 1rem 56px;}
  .hero h1{font-size:28px;}
  .hero-sub{font-size:15px;}
  .search-wrap{flex-direction:column;padding:14px;gap:8px;}
  .s-divider{display:none;}
  .s-field{padding:12px 16px;background:var(--gray-50);border:1px solid var(--gray-200);}

  .search-btn{width:100%;padding:16px;text-align:center;margin-left:0;}
  .stats-inner{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:8px;
    justify-items:center;
  }
  .stat-num{font-size:14px;}
  .stat-label{font-size:9.5px;line-height:1.3;}
  .main,.page-content-wrap{padding:20px 1rem;}
  .cat-grid{grid-template-columns:repeat(2,1fr);}
  .deals-grid{grid-template-columns:1fr;}
  .woocommerce ul.products{grid-template-columns:1fr!important;}
  .dest-grid{grid-template-columns:repeat(2,1fr);}
  .dest-grid-full{grid-template-columns:repeat(2,1fr) !important;}
  .tip-card{flex:0 0 82%;}
  .usp-strip{padding:16px;gap:12px;}
  .footer-grid{grid-template-columns:1fr;}
  .footer-middle{gap:12px;}
  .footer-bottom{flex-direction:column;text-align:center;}
  .faq-q{padding:16px 18px;font-size:14px;}
  .faq-a{padding:0 18px 16px;}
  .faq-header{padding:18px 18px 0;}
  .newsletter{padding:28px 16px;}
  .newsletter h2{font-size:22px;}
  .nl-form{flex-direction:column;}
  .nl-form button{width:100%;}
  .sec-title{font-size:18px;}
  .page-hero h1{font-size:26px;}
}

/* ===========================
   V23: Voorbeelddeals + nav-zoekformulier
   =========================== */
.badge.b-voorbeeld{background:#1F2937;color:#fff;}
.voorbeeld-notice{max-width:1200px;margin:0 auto 16px;background:var(--blue-light);border:1px solid #CBE3F5;color:#1F4E79;font-size:13.5px;padding:10px 16px;border-radius:10px;}
.voorbeeld-notice a{color:var(--pink);font-weight:700;text-decoration:underline;}
form.nav-search{margin:0;}
.nav-search input[type="search"]{border:none;background:transparent;outline:none;font-size:13px;color:var(--gray-800);font-family:var(--font);width:170px;}
button.hamburger{background:none;border:none;cursor:pointer;}


/* ===========================
   V23: Zoekbalk tablet (2x2 grid)
   =========================== */
@media (max-width: 900px) and (min-width: 641px) {
  .search-wrap{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:14px;max-width:640px;}
  .s-divider{display:none;}
  .s-field{background:var(--gray-50);border:1px solid var(--gray-200);}
  .search-btn{grid-column:1 / -1;padding:15px;margin-left:0;}
}


/* ===========================
   V23: Footer social pill-knopjes
   =========================== */
.footer-socials{display:flex;gap:10px;margin-top:16px;flex-wrap:wrap;}
.footer-socials a{display:inline-flex;align-items:center;gap:7px;color:#E5E7EB;font-size:13px;font-weight:600;background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.15);border-radius:20px;padding:6px 14px;transition:background .15s,border-color .15s;}
.footer-socials a:hover{background:rgba(255,90,147,0.15);border-color:var(--pink);color:#fff;}
.footer-socials svg{flex-shrink:0;}


/* ===========================
   V24: Hero-kicker (kadertje boven titel)
   =========================== */
.hero-kicker{display:inline-block;background:rgba(255,255,255,0.2);color:white;font-size:12px;font-weight:600;padding:4px 12px;border-radius:20px;margin-bottom:16px;letter-spacing:1px;text-transform:uppercase;}


/* ===========================
   V25: Productpagina mobiel-responsive
   (afbeelding + infoblok stapelen i.p.v. geforceerde 2 kolommen)
   =========================== */
@media (max-width: 768px) {
  .product-hero-grid{grid-template-columns:1fr !important;gap:16px !important;}
  .sp-foto{min-height:280px !important;}
  .sp-foto img{min-height:280px !important;}
  .sp-badges{gap:6px !important;flex-wrap:wrap;}
  .sp-badges .badge{font-size:11px !important;padding:4px 9px !important;}
  .sp-sterren-badge{font-size:12px !important;padding:4px 8px !important;}
  .sp-textbox{padding:20px !important;}
  .sp-prijs > div:last-child{font-size:28px !important;}
}


/* ===========================
   V25: Losse sectie voor Datafeedr/WooCommerce deal-grids
   op Deals Pagina's (buiten het intro-kadertje)
   =========================== */
.deals-grid-section{margin:32px 0;}
.deals-grid-section ul.products{display:grid !important;gap:20px;list-style:none;padding:0;margin:0;}


/* ===========================
   V25: Faciliteiten als tags/chips i.p.v. kolommen-lijst
   (voorkomt scheve layout bij ongelijke tekstlengtes, ook op mobiel)
   =========================== */
.deal-facilities{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:20px 0 4px;
}
.facility-tag{
  display:inline-flex;
  align-items:center;
  gap:6px;
  background:var(--blue-light);
  color:var(--blue-dark);
  border:1px solid rgba(30,58,138,0.12);
  border-radius:20px;
  padding:8px 14px;
  font-size:13px;
  font-weight:600;
  line-height:1.3;
}
@media (max-width:640px){
  .facility-tag{font-size:12.5px;padding:7px 12px;}
}


/* ===========================
   V25: Reisgegevens-infobalk (Reisperiode, Vertrek, Verzorging, Kamer)
   bovenaan "Over deze vakantie"
   =========================== */
.trip-info-bar{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(140px,1fr));
  gap:14px;
  background:var(--gray-50);
  border:1px solid var(--gray-200);
  border-radius:12px;
  padding:16px;
  margin-bottom:18px;
}
.trip-info-item{display:flex;align-items:flex-start;gap:10px;}
.trip-info-icon{font-size:18px;line-height:1;margin-top:1px;}
.trip-info-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.4px;color:var(--gray-600);margin-bottom:2px;}
.trip-info-value{font-size:14px;font-weight:600;color:#1F2937;}
@media (max-width:640px){
  .trip-info-bar{grid-template-columns:repeat(2,1fr);padding:14px;}
}


/* ===========================
   V25: Badge + reisinfo op standaard WooCommerce-productkaarten
   (categorie-/overzichtspagina's via [product_category])
   =========================== */
.products li.product{position:relative;}
.loop-deal-badge{
  position:absolute;
  top:10px;
  left:10px;
  background:var(--pink);
  color:#fff;
  font-size:11px;
  font-weight:700;
  padding:4px 10px;
  border-radius:20px;
  z-index:2;
}
.loop-trip-info{
  font-size:12.5px;
  color:var(--gray-600);
  margin:0 0 4px;
  line-height:1.5;
  padding:0 16px;
}
@media (max-width:768px){
  .loop-trip-info{padding:0 12px;font-size:11.5px;}
}


/* ===========================
   V25: Vangnet — mocht een emoji ooit alsnog als <img> worden ingeladen,
   dan blijft deze klein in plaats van het hele kaartje te vullen
   =========================== */
.loop-trip-info img,
.deal-info img,
.trip-info-value img,
.facility-tag img,
.loop-deal-badge img{
  width:1em !important;
  height:1em !important;
  display:inline !important;
  margin:0 2px !important;
  vertical-align:-0.15em;
}


/* ===========================
   V25: Herontwerp WooCommerce-productgrid (categorie-overzichten via
   [product_category]) zodat het proportioneel/consistent oogt en
   meebeweegt op elk schermformaat, zoals de rest van de site
   =========================== */
.products{
  display:grid !important;
  grid-template-columns:repeat(4,1fr) !important;
  gap:20px !important;
  list-style:none;
  padding:0;
  margin:24px 0 !important;
}
.products li.product{
  position:relative;
  background:#fff;
  border-radius:12px;
  border:1px solid var(--gray-200);
  overflow:hidden;
  padding:0 !important;
  transition:transform .2s,box-shadow .2s;
}
.products li.product:hover{transform:translateY(-3px);box-shadow:0 10px 30px rgba(0,0,0,0.1);}
.products li.product a.woocommerce-LoopProduct-link{display:block;text-decoration:none;color:inherit;}
.products li.product img{
  width:100% !important;
  height:200px !important;
  object-fit:cover;
  display:block;
}
.products li.product .woocommerce-loop-product__title{
  font-size:15px;
  font-weight:800;
  color:#1F2937;
  padding:14px 16px 0;
  margin:0 0 2px;
  line-height:1.3;
}
.products li.product .price{
  display:block;
  font-size:20px;
  font-weight:800;
  color:var(--pink);
  padding:4px 16px 0;
  margin-bottom:8px;
  line-height:1.2;
}
.products li.product .price del{color:var(--gray-600);font-weight:500;font-size:14px;}
.products li.product .price ins{text-decoration:none;}
.products li.product .button{
  display:block;
  margin:10px 16px 16px;
  background:var(--pink);
  color:#fff !important;
  text-align:center;
  padding:12px;
  border-radius:10px;
  font-weight:700;
  font-size:14px;
  text-decoration:none;
}
.products li.product .button:hover{background:var(--pink-dark);}

@media (max-width:1024px){
  .products{grid-template-columns:repeat(3,1fr) !important;}
}
@media (max-width:768px){
  .products{grid-template-columns:repeat(2,1fr) !important;gap:14px !important;}
  .products li.product img{height:130px !important;}
  .products li.product .woocommerce-loop-product__title{font-size:13px;padding:10px 12px 0;}
  .products li.product .price{font-size:16px;padding:2px 12px 0;}
  .products li.product .button{margin:10px 12px 12px;padding:10px;font-size:13px;}
}
@media (max-width:480px){
  .products{grid-template-columns:1fr 1fr !important;gap:10px !important;}
  .products li.product img{height:110px !important;}
}


/* ===========================
   V25: Sorteerbalk (prijs laag/hoog) boven deal-grids
   =========================== */
.sort-bar{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  align-items:center;
  gap:8px 10px;
  margin:0 0 16px;
  font-size:13px;
  color:var(--gray-600);
}
.sort-bar select{
  border:1px solid var(--gray-200);
  border-radius:8px;
  padding:8px 12px;
  font-size:13px;
  font-weight:600;
  color:#1F2937;
  background:#fff;
  cursor:pointer;
}

@media (max-width:600px){
  .sort-bar{
    flex-direction:column;
    align-items:stretch;
    justify-content:flex-start;
    gap:10px;
  }
  .sort-bar label{
    font-size:12px;
    margin-bottom:-4px;
  }
  .sort-bar select{
    width:100%;
    padding:10px 12px;
  }
}

/* Melding onder de filterbalk als sommige deals geen bekende reisduur hebben */
.duur-notitie{
  margin:-6px 0 16px;
  text-align:right;
  font-size:13px;
  color:var(--gray-600);
}
@media (max-width:600px){
  .duur-notitie{ text-align:left; }
}

/* v109: vergelijkingsblok onder de deal */
.vg-blok{background:#fff;border:1px solid #F3D3E2;border-radius:14px;overflow:hidden;margin:0 0 32px;font-family:var(--font);}
.vg-kop{padding:16px 20px 12px;background:#FFF5F9;border-bottom:1px solid #F3D3E2;}
.vg-kop h2{margin:0;font-size:19px;font-weight:700;color:#1F2937;}
.vg-kop p{margin:4px 0 0;font-size:13px;line-height:1.5;color:#5C5C70;}
.vg-rij{display:flex;align-items:center;gap:14px;padding:14px 20px;border-bottom:1px solid #EFEFF3;flex-wrap:wrap;}
.vg-rij.vg-top{background:#FFFBF0;}
.vg-logo{width:40px;height:40px;border-radius:50%;background:#FFE3EF;color:#E43F7D;font-weight:700;font-size:15px;display:flex;align-items:center;justify-content:center;flex:none;}
.vg-mid{flex:1;min-width:190px;}
.vg-naam{font-weight:700;font-size:15px;color:#1F2937;display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.vg-meta{font-size:12.5px;line-height:1.5;color:#5C5C70;margin-top:3px;}
.vg-tag-nu{border:1px solid #FF5A93;color:#E43F7D;font-size:11.5px;font-weight:600;padding:1px 7px;border-radius:6px;}
.vg-tag-laagste{background:#FFC933;color:#5A3D00;font-size:11.5px;font-weight:600;padding:2px 8px;border-radius:6px;}
.vg-prijs{text-align:right;min-width:90px;}
.vg-prijs b{display:block;font-size:22px;font-weight:800;color:#E43F7D;line-height:1.1;}
.vg-prijs span{font-size:12px;color:#5C5C70;}
.vg-knop{background:#FF5A93;color:#fff!important;border-radius:10px;padding:10px 16px;font-weight:700;font-size:14px;white-space:nowrap;text-align:center;border:1.5px solid #FF5A93;}
.vg-knop:hover{background:#E43F7D;border-color:#E43F7D;}
.vg-knop-tweede{background:#fff;color:#E43F7D!important;}
.vg-knop-tweede:hover{background:#FFE3EF;border-color:#FF5A93;}
.vg-andere{border-bottom:1px solid #EFEFF3;}
.vg-andere summary{cursor:pointer;padding:13px 20px;font-size:14px;font-weight:600;color:#1F2937;background:#FAFAFC;list-style:none;display:flex;justify-content:space-between;align-items:center;}
.vg-andere summary::-webkit-details-marker{display:none;}
.vg-andere summary::after{content:"\25BE";font-size:16px;color:#5C5C70;}
.vg-andere[open] summary::after{content:"\25B4";}
.vg-andere .vg-rij:last-child{border-bottom:none;}
.vg-voet{margin:0;padding:11px 20px;font-size:12px;line-height:1.55;color:#6B6B80;}
@media (max-width:640px){
  .vg-rij{padding:14px 16px;}
  .vg-prijs{text-align:left;min-width:0;}
  .vg-knop{width:100%;}
  .vg-kop,.vg-andere summary,.vg-voet{padding-left:16px;padding-right:16px;}
}

/* v110: tussenkopje voor vergelijkbaar vertrek */
.vg-sub{padding:10px 20px;background:#FAFAFC;border-bottom:1px solid #EFEFF3;font-size:13px;color:#1F2937;}
.vg-sub span{color:#5C5C70;font-size:12.5px;margin-left:6px;}
@media (max-width:640px){.vg-sub{padding-left:16px;padding-right:16px;}}

/* v112/v114: rustige partnerrij boven de footer (zonder lijntjes) */
.partner-strip{background:#fff;padding:26px 1.5rem 22px;}
.ps-binnen{max-width:1200px;margin:0 auto;text-align:center;}
.ps-titel{margin:0 0 12px;font-size:13px;font-weight:600;letter-spacing:.01em;color:#6B7280;}
.ps-rij{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 34px;}
.ps-rij a,.ps-rij .ps-logo{display:flex;align-items:center;justify-content:center;min-height:44px;padding:4px 6px;filter:grayscale(1);opacity:.6;transition:filter .2s,opacity .2s;}
.ps-rij a:hover,.ps-rij a:focus-visible{filter:none;opacity:1;}
.ps-rij .ps-logo{cursor:default;}
.ps-rij img{display:block;max-width:100%;height:auto;}
.ps-naam{font-weight:800;font-size:15px;color:#6B7280;}
.ps-meer{font-size:13px;font-weight:500;color:#9CA3AF;}
@media (max-width:640px){
  .partner-strip{padding:22px 1rem 16px;}
  .ps-titel{margin-bottom:8px;}
  .ps-rij{display:grid;grid-template-columns:1fr 1fr;gap:0;max-width:380px;margin:0 auto;}
  .ps-rij li{display:flex;align-items:center;justify-content:center;}
  .ps-rij li.ps-enkel{grid-column:1/-1;}
  .ps-rij li.ps-meer{grid-column:1/-1;padding:2px 0 4px;}
  .ps-rij a,.ps-rij .ps-logo{width:100%;min-height:64px;padding:8px 14px;opacity:.7;}
  .ps-rij img{max-width:100%;max-height:44px;width:auto;}
}

/* v115: nieuwsbriefblok op de homepage */
.nb-band{padding:40px 1.5rem 48px;}
.nb-kaart{max-width:920px;margin:0 auto;background:#fff;border-radius:24px;padding:34px 40px;display:flex;align-items:center;gap:34px;box-shadow:0 10px 34px rgba(31,41,55,.07);}
.nb-beeld{flex:0 0 108px;width:108px;height:108px;border-radius:28px;background:linear-gradient(145deg,#E8F3FC,#EAF6EF);display:flex;align-items:center;justify-content:center;}
.nb-beeld svg{display:block;width:78px;height:78px;}
.nb-tekst{flex:1 1 auto;min-width:0;}
.nb-tekst h2{font-family:var(--font);font-size:28px;line-height:1.2;font-weight:800;letter-spacing:-.4px;color:var(--gray-800);margin:0 0 8px;text-wrap:balance;}
.nb-tekst h2 span{color:var(--pink);}
.nb-sub{font-size:15px;color:var(--gray-600);margin:0 0 20px;text-wrap:balance;}
.nb-form{max-width:540px;}
.nb-form .mailpoet_form{background:none!important;padding:0!important;margin:0!important;max-width:none!important;border:0!important;box-shadow:none!important;border-radius:0!important;}
.nb-form form{display:flex!important;flex-wrap:wrap!important;gap:10px!important;align-items:stretch!important;margin:0!important;}
.nb-form .mailpoet_paragraph{flex:1 1 170px!important;margin:0!important;line-height:normal!important;text-align:left!important;}
.nb-form .mailpoet_paragraph:has(.mailpoet_submit){flex:0 0 auto!important;}
.nb-form .mailpoet_text{width:100%!important;height:50px!important;border:1.5px solid #FFD6E8!important;background:#fff!important;border-radius:12px!important;padding:0 16px!important;font-size:15px!important;font-family:var(--font)!important;color:var(--gray-800)!important;box-sizing:border-box!important;outline:none!important;}
.nb-form .mailpoet_text:focus{border-color:var(--pink)!important;box-shadow:0 0 0 3px rgba(255,90,147,.14)!important;}
.nb-form .mailpoet_submit{height:50px!important;width:auto!important;padding:0 28px!important;border:0!important;border-radius:12px!important;background:var(--pink-dark)!important;color:#fff!important;font-size:15px!important;font-weight:800!important;font-family:var(--font)!important;white-space:nowrap!important;cursor:pointer!important;box-shadow:0 8px 20px rgba(228,63,125,.30)!important;transition:transform .12s,box-shadow .12s!important;}
.nb-form .mailpoet_submit:hover{transform:translateY(-1px)!important;box-shadow:0 10px 24px rgba(228,63,125,.38)!important;}
.nb-form .mailpoet_message{flex:0 0 100%!important;margin:0!important;font-size:14px!important;}
.nb-form .mailpoet_validate_success{color:#1B7F4B!important;font-weight:600!important;margin:4px 0 0!important;}
.nb-form .mailpoet_validate_error{color:#B42318!important;margin:4px 0 0!important;}
.nb-punten{list-style:none;margin:18px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px 28px;}
.nb-punten li{display:flex;align-items:center;gap:9px;font-size:14px;color:var(--gray-600);}
.nb-punten svg{flex:0 0 18px;width:18px;height:18px;}
.nb-privacy{margin:14px 0 0;font-size:12px;color:#6B7280;}
.nb-privacy a{color:var(--pink-dark);text-decoration:underline;}
@media (max-width:760px){
  .nb-band{padding:24px 1rem 32px;}
  .nb-kaart{flex-direction:column;gap:16px;padding:28px 20px 26px;border-radius:22px;text-align:center;}
  .nb-beeld{flex:0 0 auto;width:84px;height:84px;border-radius:22px;}
  .nb-beeld svg{width:56px;height:56px;}
  .nb-form{max-width:none;}
  .nb-tekst{width:100%;}
  .nb-tekst h2{font-size:22px;}
  .nb-sub{margin-bottom:16px;}
  .nb-form form{flex-direction:column!important;}
  .nb-form .mailpoet_paragraph,.nb-form .mailpoet_paragraph:has(.mailpoet_submit){flex:0 0 auto!important;width:100%!important;}
  .nb-form .mailpoet_submit{width:100%!important;}
  .nb-punten{flex-direction:column;flex-wrap:nowrap;max-width:280px;margin-left:auto;margin-right:auto;text-align:left;}
}
.nb-band.nb-binnen{padding:0;margin:40px 0 36px;}
.nb-form .mailpoet_form input[name*="honeypot"],
.nb-form .mailpoet_form .mailpoet_validate_country,
.nb-form .mailpoet_form label[for*="leeg"],
.nb-form .mailpoet_form p:has(label[for*="leeg"]),
.nb-form .mailpoet_form .mailpoet_paragraph:has(input[style*="display: none"]),
.nb-form .mailpoet_hp_email_label{display:none!important;visibility:hidden!important;position:absolute!important;left:-9999px!important;}

/* v115: de pop-up in hetzelfde ontwerp (altijd gestapeld) */
.nl-popup.nb-popup{background:#fff;border:0;border-radius:24px;padding:30px 26px 24px;max-width:460px;display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center;}
.nb-popup .nb-beeld{flex:0 0 auto;width:84px;height:84px;border-radius:22px;}
.nb-popup .nb-beeld svg{width:56px;height:56px;}
.nb-popup .nb-tekst{width:100%;}
.nb-popup .nb-tekst h2{font-size:22px;margin:0 0 8px;}
.nb-popup .nb-sub{font-size:14px;margin:0 0 16px;}
.nb-popup .nb-form{max-width:none;}
.nb-popup .nb-form form{flex-direction:column!important;}
.nb-popup .nb-form .mailpoet_paragraph,.nb-popup .nb-form .mailpoet_paragraph:has(.mailpoet_submit){flex:0 0 auto!important;width:100%!important;}
.nb-popup .nb-form .mailpoet_submit{width:100%!important;}
.nb-popup .nb-punten{flex-direction:column;flex-wrap:nowrap;max-width:260px;margin:16px auto 0;text-align:left;}
.nb-popup .nb-privacy{font-size:12px;color:#6B7280;margin:14px 0 0;}
@media (max-width:480px){.nl-popup.nb-popup{padding:26px 20px 22px;}}
/* v115: op de homepage staat het blok direct onder de pagina-inhoud; die levert al ruimte */
.main + .nb-band{padding-top:0;}

/* v115: social-banner onder het nieuwsbriefblok (lijnpictogrammen, rustig, met pauzeknop) */
.soc{padding:0 0 30px;}
.soc-wrap{max-width:1200px;margin:0 auto;display:flex;align-items:center;gap:10px;padding:0 1.5rem;}
.soc-vp{flex:1;min-width:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 9%,#000 91%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 9%,#000 91%,transparent 100%);}
.soc-track{display:inline-flex;align-items:center;white-space:nowrap;animation:soc-loop 100s linear infinite;}
.soc-track.pauze,.soc-track.aanraking,.soc-vp:hover .soc-track{animation-play-state:paused;}
.soc-helft,.soc-set{display:inline-flex;align-items:center;}
@keyframes soc-loop{from{transform:translateX(0);}to{transform:translateX(-50%);}}
.soc-item a{display:inline-flex;align-items:center;gap:10px;padding:8px 26px;font-size:14px;font-weight:600;color:#374151;text-decoration:none;}
.soc-item a:hover,.soc-item a:focus-visible{color:var(--pink-dark);}
.soc-item svg{width:20px;height:20px;flex:0 0 20px;}
.soc-bol{width:4px;height:4px;border-radius:50%;background:#FFB8D3;flex:0 0 4px;}
.soc-knop{flex:0 0 36px;width:36px;height:36px;border:0;border-radius:50%;background:#fff;color:#4B5563;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 1px 4px rgba(31,41,55,.14);}
.soc-knop:hover{background:#F3F4F6;}
.soc-knop svg{width:14px;height:14px;}
@media (prefers-reduced-motion:reduce){
  .soc-track{animation:none;}
  .soc-helft + .soc-helft,.soc-set[aria-hidden="true"]{display:none;}
  .soc-vp{overflow-x:auto;-webkit-mask-image:none;mask-image:none;scrollbar-width:none;}
  .soc-knop{display:none;}
}
@media (max-width:640px){
  .soc{padding-bottom:24px;}
  .soc-wrap{padding:0 .75rem 0 0;}
  .soc-item a{font-size:13.5px;padding:8px 20px;}
  .soc-knop{flex-basis:32px;width:32px;height:32px;}
}

/* v116: sitemap-pagina */
.sitemap-pagina{padding:40px 1.5rem 30px;}
.sitemap-binnen{max-width:1100px;margin:0 auto;}
.sitemap-binnen h1{font-size:34px;font-weight:800;color:var(--gray-800);margin:0 0 8px;}
.sitemap-intro{font-size:15px;color:var(--gray-600);margin:0 0 26px;}
.sitemap-raster{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;align-items:start;}
.sitemap-blok{background:#fff;border-radius:16px;padding:22px 24px;box-shadow:0 6px 24px rgba(31,41,55,.06);}
.sitemap-blok h2{font-size:15px;font-weight:800;color:var(--pink-dark);margin:0 0 10px;}
.sitemap-blok ul{list-style:none;margin:0;padding:0;}
.sitemap-blok li a{display:block;padding:5px 0;font-size:14px;color:var(--gray-600);}
.sitemap-blok li a:hover{color:var(--pink-dark);}
.sitemap-dubbel{grid-column:span 2;}
.sitemap-dubbel ul{columns:2 200px;column-gap:24px;}
.sitemap-dubbel li{break-inside:avoid;}
.sitemap-breed{grid-column:1/-1;}
.sitemap-breed ul{columns:3 240px;column-gap:28px;}
.sitemap-breed li{break-inside:avoid;}
@media (max-width:640px){.sitemap-dubbel{grid-column:auto;}.sitemap-dubbel ul{columns:1;}.sitemap-pagina{padding:28px 1rem 20px;}.sitemap-binnen h1{font-size:28px;}}

/* ===== Social media deals-pagina (v116) ===== */
.smd-pagina{padding:40px 1.5rem 56px;}
.smd-binnen{max-width:1100px;margin:0 auto;}
.smd-kop{background:#fff;border-radius:24px;box-shadow:0 10px 34px rgba(31,41,55,.07);padding:34px 40px;display:flex;align-items:center;gap:34px;}
.smd-tegel{flex:0 0 108px;height:108px;border-radius:28px;background:linear-gradient(145deg,#E8F3FC,#EAF6EF);display:flex;align-items:center;justify-content:center;gap:6px;}
.smd-tegel svg{width:30px;height:30px;}
.smd-kop h1{font-size:34px;line-height:1.15;font-weight:800;letter-spacing:-.5px;margin:0 0 8px;color:var(--gray-800);}
.smd-kop h1 span{color:var(--pink);}
.smd-kop p{margin:0;font-size:15px;color:var(--gray-600);max-width:620px;text-wrap:pretty;}
.smd-bij{display:flex;align-items:center;gap:7px;margin-top:14px;font-size:13px;color:#6B7280;}
.smd-bij svg{width:16px;height:16px;flex:0 0 16px;}
.smd-sectie{font-size:22px;font-weight:800;letter-spacing:-.3px;margin:40px 0 18px;color:var(--gray-800);}
.smd-sectie span{color:var(--pink);}
.smd-leeg{text-align:center;color:#6B7280;padding:40px 0;}
.smd-groot,.smd-kaart{color:inherit;}
.smd-pil{display:inline-block;background:rgba(255,255,255,.95);color:#374151;font-size:11.5px;font-weight:700;padding:5px 11px;border-radius:999px;}
.smd-pil-roze{background:var(--pink-dark);color:#fff;}
.smd-groot{background:#fff;border-radius:24px;box-shadow:0 10px 34px rgba(31,41,55,.07);display:grid;grid-template-columns:1.05fr 1fr;overflow:hidden;margin-bottom:22px;transition:transform .2s,box-shadow .2s;}
.smd-groot:hover{transform:translateY(-3px);box-shadow:0 14px 40px rgba(31,41,55,.11);}
.smd-beeld{position:relative;min-height:260px;display:flex;align-items:center;justify-content:center;}
.smd-beeld>svg{width:96px;height:96px;}
.smd-beeld>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.smd-tag{position:absolute;left:16px;top:16px;}
.smd-tekst{padding:30px 34px;display:flex;flex-direction:column;justify-content:center;}
.smd-regio{margin:0 0 4px;font-size:13px;font-weight:700;color:var(--pink-dark);}
.smd-tekst h3{margin:0 0 8px;font-size:26px;font-weight:800;letter-spacing:-.4px;color:var(--gray-800);}
.smd-tekst .smd-voet{margin-top:22px;}
.smd-raster{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.smd-kaart{background:#fff;border-radius:22px;box-shadow:0 8px 28px rgba(31,41,55,.07);overflow:hidden;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s;}
.smd-kaart:hover{transform:translateY(-3px);box-shadow:0 14px 36px rgba(31,41,55,.12);}
.smd-foto{position:relative;height:170px;display:flex;align-items:center;justify-content:center;flex:0 0 auto;}
.smd-foto>svg{width:70px;height:70px;}
.smd-foto>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.smd-pillen{position:absolute;left:14px;top:14px;right:14px;display:flex;gap:6px;flex-wrap:wrap;}
.smd-body{padding:18px 20px 20px;display:flex;flex-direction:column;flex:1;}
.smd-body h3{margin:0 0 6px;font-size:16.5px;font-weight:800;letter-spacing:-.2px;color:var(--gray-800);}
.smd-sterren{display:flex;gap:2px;margin-bottom:8px;}
.smd-sterren svg{width:15px;height:15px;}
.smd-info{margin:0 0 4px;font-size:13px;color:var(--gray-600);}
.smd-aanb{margin:0;font-size:12px;color:#6B7280;}
.smd-voet{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-top:auto;padding-top:16px;}
.smd-prijs>span{font-size:11.5px;color:#6B7280;}
.smd-prijs b{font-size:24px;font-weight:800;color:var(--pink-dark);margin:0 4px;letter-spacing:-.4px;}
.smd-prijs b .woocommerce-Price-amount{font:inherit;color:inherit;}
.smd-prijs b del{font-size:14px;font-weight:600;color:#6B7280;margin-right:4px;}
.smd-prijs b ins{text-decoration:none;}
.smd-pijl{width:40px;height:40px;flex:0 0 40px;border-radius:50%;background:var(--pink-dark);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 16px rgba(228,63,125,.28);}
.smd-pijl svg{width:18px;height:18px;}
.smd-knop{display:inline-flex;align-items:center;gap:8px;background:var(--pink-dark);color:#fff;font-weight:800;font-size:14.5px;padding:13px 22px;border-radius:12px;box-shadow:0 8px 20px rgba(228,63,125,.28);}
.smd-knop svg{width:16px;height:16px;}
.smd-meer{max-width:920px;margin:44px auto 0;background:#fff;border-radius:24px;box-shadow:0 10px 34px rgba(31,41,55,.07);padding:26px 34px;display:flex;align-items:center;justify-content:space-between;gap:24px;color:inherit;transition:transform .2s,box-shadow .2s;}
.smd-meer:hover{transform:translateY(-2px);box-shadow:0 14px 40px rgba(31,41,55,.11);}
.smd-meer h3{margin:0 0 4px;font-size:19px;font-weight:800;letter-spacing:-.3px;color:var(--gray-800);}
.smd-meer h3 span{color:var(--pink);}
.smd-meer p{margin:0;font-size:14px;color:var(--gray-600);}
.smd-meer .smd-pijl{width:48px;height:48px;flex:0 0 48px;}
.smd-meer .smd-pijl svg{width:20px;height:20px;}
.smd-groot:focus-visible,.smd-kaart:focus-visible,.smd-meer:focus-visible{outline:3px solid var(--pink-dark);outline-offset:3px;}
@media (max-width:900px){.smd-raster{grid-template-columns:repeat(2,1fr);}}
@media (max-width:760px){
  .smd-pagina{padding:24px 1rem 40px;}
  .smd-kop{flex-direction:column;text-align:center;padding:26px 20px;gap:16px;}
  .smd-tegel{flex:0 0 auto;width:84px;height:84px;border-radius:22px;}
  .smd-kop h1{font-size:26px;}
  .smd-bij{justify-content:center;}
  .smd-groot{grid-template-columns:1fr;}
  .smd-beeld{min-height:170px;}
  .smd-tekst{padding:22px 20px;}
  .smd-tekst h3{font-size:21px;}
  .smd-tekst .smd-voet{flex-direction:column;align-items:flex-start;gap:14px;}
  .smd-knop{width:100%;justify-content:center;}
  .smd-raster{grid-template-columns:1fr;}
  .smd-meer{padding:20px;margin-top:32px;}
  .smd-meer h3{font-size:17px;}
}
@media (prefers-reduced-motion:reduce){.smd-groot,.smd-kaart,.smd-meer{transition:none;}.smd-groot:hover,.smd-kaart:hover,.smd-meer:hover{transform:none;}}

/* ===========================================================
   v117: één stijl voor de hele site
   Zelfde taal als de nieuwsbriefkaart en de social media deals-pagina:
   witte kaarten, afgeronde hoeken, zachte schaduw, lijniconen in plaats
   van emoji, roze-donker voor knoppen en prijzen, geen blauw.
   Staat als laatste in het bestand, zodat het oudere regels overschrijft.
   =========================================================== */
.ico{width:1em;height:1em;flex:0 0 auto;}

/* ---- bovenbalk en menu ---- */
/* v118: bovenbalk weer fel roze, drie korte boodschappen */
.top-bar{background:var(--pink);color:#fff;font-weight:600;padding:10px 1rem;display:flex;justify-content:center;align-items:center;font-size:13px;}
.top-bar span{padding:0;text-align:center;}
.nm-em{font-size:17px;line-height:1;}
@media (max-width:760px){.top-bar{font-size:12px;padding:9px 14px;}}
nav{border-bottom:none;box-shadow:0 1px 0 rgba(31,41,55,.07);}
.nav-search{background:#fff;border:1.5px solid var(--gray-200);border-radius:14px;padding:8px 14px;}
.nav-zoekicoon{display:flex;color:#6B7280;}
.nav-zoekicoon svg{width:16px;height:16px;}
.nav-cta{background:var(--pink-dark);border-radius:12px;display:inline-flex;align-items:center;gap:8px;padding:10px 18px;}
.nav-cta .ico{width:16px;height:16px;}
.nav-cta:hover{background:#B01C5E!important;}
.cat-nav{border-bottom:1px solid var(--gray-100);}
.cat-nav-btn:hover,.cat-nav-btn.active{color:var(--pink-dark);border-bottom-color:var(--pink-dark);}
.cat-nav-btn-social{color:var(--pink-dark)!important;}
.mega-drop{border:none;border-radius:20px;box-shadow:0 18px 50px rgba(31,41,55,.14);padding:24px;}
.drop-col ul li a:hover,.mobile-sub a:hover,.mobile-nav-item:hover{color:var(--pink-dark);}
.mobile-nav-social{color:var(--pink-dark)!important;}
.mobile-dealalert{display:flex;align-items:center;justify-content:center;gap:8px;background:var(--pink-dark);color:#fff;padding:14px;border-radius:14px;font-weight:700;font-size:15px;}
.mobile-dealalert .ico{width:18px;height:18px;}

/* ---- homepage: zoekbalk en statistiekbalk ---- */
.search-wrap{border-radius:22px;}
.s-field{border-radius:14px;}
.search-btn{background:var(--pink-dark);box-shadow:0 8px 20px rgba(228,63,125,.28);border-radius:14px;display:inline-flex;align-items:center;justify-content:center;gap:8px;}
.search-btn:hover{box-shadow:0 12px 26px rgba(228,63,125,.36);}
.search-btn .ico{width:17px;height:17px;}
.stats-bar{background:#fff;padding:18px 1rem;border-bottom:1px solid var(--gray-100);}
.stat{color:var(--gray-800);}
.stat-num{color:var(--pink-dark);font-size:19px;}
.stat-label{opacity:1;color:#6B7280;font-size:12px;}

/* ---- koppen en links in secties ---- */
.sec-title{letter-spacing:-.3px;}
.sec-link{color:var(--pink-dark);}
.blog-content a{color:var(--pink-dark);}

/* ---- categoriekaartjes ---- */
.cat-grid{gap:16px;}
.cat-card{border:none;border-radius:22px;padding:22px 12px;gap:12px;box-shadow:0 8px 28px rgba(31,41,55,.06);}
.cat-card:hover{border-color:transparent;transform:translateY(-3px);box-shadow:0 14px 36px rgba(31,41,55,.11);}
.cat-icon{width:56px;height:56px;border-radius:18px;background:linear-gradient(145deg,#E8F3FC,#EAF6EF);color:var(--pink-dark);}
.cat-icon .ico{width:26px;height:26px;}
.cat-card h3{font-size:13.5px;}
.cat-card p{font-size:12px;color:#6B7280;}

/* ---- dealkaarten in rasters: iets meer lucht ---- */
.deals-grid{gap:22px;}
.deals-grid .smd-body h3{font-size:15.5px;}
.deals-grid .smd-prijs b{font-size:22px;}
.deals-grid .smd-foto{height:160px;}

/* ---- WooCommerce-lijsten ---- */
.woocommerce ul.products li.product{border:none!important;border-radius:22px!important;box-shadow:0 8px 28px rgba(31,41,55,.07)!important;}
.woocommerce ul.products li.product .price{color:var(--pink-dark)!important;}
.woocommerce ul.products li.product .button,.woocommerce div.product .single_add_to_cart_button{background:var(--pink-dark)!important;border-radius:12px!important;}
.woocommerce ul.products li.product .button:hover,.woocommerce div.product .single_add_to_cart_button:hover{background:#B01C5E!important;}
.woocommerce div.product{border:none;border-radius:24px;box-shadow:0 10px 34px rgba(31,41,55,.07);}
.woocommerce div.product .price{color:var(--pink-dark)!important;}
.loop-deal-badge{background:var(--pink-dark);}

/* ---- bestemmingstegels ---- */
.dest-grid{gap:18px;}
.dt{display:flex;flex-direction:column;background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 8px 28px rgba(31,41,55,.07);color:inherit;transition:transform .2s,box-shadow .2s;}
.dt:hover{transform:translateY(-3px);box-shadow:0 14px 36px rgba(31,41,55,.12);}
.dt-beeld{position:relative;height:104px;display:flex;align-items:center;justify-content:center;color:var(--pink-dark);}
.dest-grid-full .dt-beeld{height:170px;}
.dt-beeld .ico{width:38px;height:38px;opacity:.5;}
.dest-grid-full .dt-beeld .ico{width:56px;height:56px;}
.dt-beeld img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.dt-tekst{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 14px;flex:1;}
.dt-naam{font-size:13.5px;font-weight:800;color:var(--gray-800);line-height:1.25;}
.dest-grid-full .dt-naam{font-size:16px;}
.dt-pijl{width:28px;height:28px;flex:0 0 28px;border-radius:50%;background:var(--pink-dark);color:#fff;display:flex;align-items:center;justify-content:center;}
.dt-pijl .ico{width:14px;height:14px;}

/* ---- kopblok bovenaan pagina's ---- */
.pk-band{padding:40px 1.5rem 0;}
.pk{max-width:1200px;margin:0 auto;background:#fff;border-radius:24px;box-shadow:0 10px 34px rgba(31,41,55,.07);padding:34px 40px;display:flex;align-items:center;gap:34px;}
.pk-tegel{flex:0 0 108px;height:108px;border-radius:28px;background:linear-gradient(145deg,#E8F3FC,#EAF6EF);display:flex;align-items:center;justify-content:center;color:var(--pink-dark);}
.pk-tegel .ico{width:42px;height:42px;}
.pk-tekst{min-width:0;flex:1;}
.pk-label{margin:0 0 8px;font-size:12px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--pink-dark);}
.pk h1{font-size:34px;line-height:1.15;font-weight:800;letter-spacing:-.5px;margin:0 0 8px;color:var(--gray-800);}
.pk h1 span{color:var(--pink);}
.pk-sub{margin:0;font-size:15px;color:var(--gray-600);max-width:640px;text-wrap:pretty;}
.pk-foto{flex:0 0 280px;height:150px;border-radius:20px;overflow:hidden;margin-left:auto;}
.pk-foto img{width:100%;height:100%;object-fit:cover;display:block;}
.pk-zoekform{display:flex;gap:10px;margin-top:16px;max-width:520px;}
.pk-zoekform input{flex:1;min-width:0;border:1.5px solid var(--gray-200);border-radius:12px;padding:12px 16px;font-size:14px;font-family:var(--font);outline:none;}
.pk-zoekform input:focus{border-color:var(--pink-dark);}
.pk-zoekform button{background:var(--pink-dark);color:#fff;border:none;border-radius:12px;padding:12px 22px;font-weight:800;font-size:14px;cursor:pointer;font-family:var(--font);}
.pk-inhoud .pk-artikel{max-width:860px;margin:0 auto;background:#fff;border-radius:24px;padding:36px 44px;box-shadow:0 10px 34px rgba(31,41,55,.07);font-size:15px;line-height:1.8;color:#4B5563;}

/* ---- tekstblokken en meldingen ---- */
.page-intro{border:none;border-radius:24px;box-shadow:0 10px 34px rgba(31,41,55,.07);padding:28px 32px;}
.voorbeeld-notice{background:#fff;border:none;border-radius:16px;box-shadow:0 6px 22px rgba(31,41,55,.06);color:var(--gray-600);padding:14px 18px;}
.voorbeeld-notice a{color:var(--pink-dark);}
.affiliate-notice{background:#fff;border:none;border-radius:20px;box-shadow:0 6px 22px rgba(31,41,55,.06);padding:18px 22px;align-items:center;}
.affiliate-notice p{color:var(--gray-600);}
.affiliate-notice a{color:var(--pink-dark);}
.affiliate-notice-icoon{display:flex;color:var(--pink-dark);}
.affiliate-notice-icoon .ico{width:22px;height:22px;}
.sort-bar{justify-content:flex-start;background:#fff;border-radius:18px;padding:12px 16px;box-shadow:0 6px 22px rgba(31,41,55,.06);margin-bottom:20px;}
.sort-bar select{border:1.5px solid var(--gray-200);border-radius:12px;}
.sort-bar select:focus{outline:2px solid var(--pink-dark);outline-offset:1px;}
.facility-tag{background:#FFF0F6;color:#9D174D;border:none;}
.trip-info-bar{background:#FFF8FA;border:none;border-radius:18px;}
.trip-info-icon{display:flex;color:var(--pink-dark);}
.trip-info-icon .ico{width:20px;height:20px;}
.vg-blok{border:none;border-radius:24px;box-shadow:0 10px 34px rgba(31,41,55,.07);}

/* ---- FAQ en USP ---- */
.faq-wrap{border:none;border-radius:24px;box-shadow:0 10px 34px rgba(31,41,55,.07);}
.faq-q:hover{color:var(--pink-dark);}
.faq-q .icon{color:var(--pink-dark);}
.usp-strip{border:none;border-radius:24px;box-shadow:0 10px 34px rgba(31,41,55,.07);padding:28px 32px;}
.usp-icon{width:56px;height:56px;border-radius:18px;background:linear-gradient(145deg,#E8F3FC,#EAF6EF);color:var(--pink-dark);}
.usp-icon .ico{width:26px;height:26px;}

/* ---- blog ---- */
.tip-card,.archive-card{border:none;border-radius:22px;box-shadow:0 8px 28px rgba(31,41,55,.07);}
.tip-card:hover,.archive-card:hover{box-shadow:0 14px 36px rgba(31,41,55,.12);}
.tip-cat,.archive-card .tip-cat,.tip-link,.archive-card .tip-link{color:var(--pink-dark);}
.tip-img-leeg{color:var(--pink-dark);}
.tip-img-leeg .ico{width:44px;height:44px;opacity:.5;}
.artikel-wrap{max-width:760px;margin:0 auto;padding:32px 1.5rem 40px;}
.artikel-foto{margin-bottom:28px;border-radius:24px;overflow:hidden;box-shadow:0 10px 34px rgba(31,41,55,.07);}
.artikel-kaart{background:#fff;border-radius:24px;padding:36px 44px;box-shadow:0 10px 34px rgba(31,41,55,.07);font-size:16px;line-height:1.9;color:#374151;}
.tag-pil{background:#FFF0F6;color:#9D174D;padding:6px 14px;border-radius:999px;font-size:13px;font-weight:600;}
.terug-link{display:inline-flex;align-items:center;gap:8px;color:var(--pink-dark);font-weight:700;font-size:14px;}

/* ---- knoppen, lege staten, 404 ---- */
.knop-roze,.knop-wit{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:800;font-size:14.5px;padding:13px 24px;border-radius:12px;}
.knop-roze{background:var(--pink-dark);color:#fff;box-shadow:0 8px 20px rgba(228,63,125,.28);}
.knop-wit{background:#fff;color:var(--pink-dark);box-shadow:inset 0 0 0 1.5px var(--pink-dark);}
.knop-roze .ico,.knop-wit .ico{width:16px;height:16px;}
.leeg-kaart{text-align:center;padding:56px 24px;background:#fff;border-radius:24px;box-shadow:0 10px 34px rgba(31,41,55,.07);}
.leeg-kaart h2{font-size:22px;font-weight:800;margin-bottom:8px;}
.leeg-kaart p{color:var(--gray-600);}
.leeg-kaart .knop-roze{margin-top:22px;}
.leeg-icoon{width:72px;height:72px;margin:0 auto 18px;border-radius:22px;background:linear-gradient(145deg,#E8F3FC,#EAF6EF);color:var(--pink-dark);display:flex;align-items:center;justify-content:center;}
.leeg-icoon .ico{width:32px;height:32px;}
.fout-knoppen{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin:8px 0 32px;}
.fout-lijst{max-width:600px;margin:0 auto 24px;background:#fff;border-radius:24px;padding:28px 32px;box-shadow:0 10px 34px rgba(31,41,55,.07);}
.fout-lijst h2{font-size:18px;font-weight:800;margin-bottom:16px;}
.fout-lijst ul{list-style:none;display:flex;flex-direction:column;gap:12px;}
.fout-lijst a{display:flex;align-items:center;gap:10px;color:var(--pink-dark);font-weight:600;font-size:14px;}
.fout-lijst .ico{width:18px;height:18px;}

/* ---- dealpagina (productpagina) ---- */
.crumbs{background:#fff;padding:12px 1.5rem;box-shadow:0 1px 0 rgba(31,41,55,.06);}
.crumbs-in{max-width:1200px;margin:0 auto;font-size:13px;color:#4B5563;display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.crumbs-in a{color:var(--pink-dark);}
.product-wrap{max-width:1200px;margin:0 auto;padding:32px 1.5rem;}
.product-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-bottom:40px;}
.sp-foto{position:relative;border-radius:24px;overflow:hidden;height:100%;min-height:460px;box-shadow:0 10px 34px rgba(31,41,55,.07);}
.sp-foto-img,.sp-foto img{width:100%;height:100%;min-height:460px;object-fit:cover;display:block;}
.sp-foto-leeg{display:flex;align-items:center;justify-content:center;color:var(--pink-dark);}
.sp-foto-leeg .ico{width:96px;height:96px;opacity:.45;}
.sp-badges{position:absolute;top:14px;left:14px;right:14px;display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.sterren-rij{display:inline-flex;gap:2px;}
.sterren-rij svg{width:15px;height:15px;}
.sp-sterren-badge{padding:5px 11px;}
.sp-textbox{background:#fff;border-radius:24px;padding:32px;box-shadow:0 10px 34px rgba(31,41,55,.07);}
.sp-textbox h1{font-size:28px;font-weight:800;letter-spacing:-.4px;margin-bottom:12px;color:var(--gray-800);}
.sp-plek{display:flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:#6B7280;margin:-4px 0 18px;}
.sp-plek .ico{width:16px;height:16px;color:var(--pink-dark);}
.sp-prijs{margin-bottom:18px;}
.sp-prijs-label{font-size:12px;font-weight:700;color:#6B7280;text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px;}
.sp-prijs-bedrag{font-size:34px;font-weight:800;color:var(--pink-dark);letter-spacing:-.6px;}
.sp-prijs-bedrag .woocommerce-Price-amount{font:inherit;color:inherit;}
.sp-prijs-pp{font-size:14px;font-weight:500;color:#4B5563;letter-spacing:0;}
.sp-reis{display:flex;flex-wrap:wrap;gap:12px 18px;margin-bottom:20px;padding-bottom:18px;border-bottom:1px solid var(--gray-100);}
.sp-reis-item{display:flex;align-items:center;gap:8px;font-size:13.5px;font-weight:700;color:var(--gray-800);}
.sp-reis-item .ico{width:18px;height:18px;color:var(--pink-dark);}
.sp-melding{display:flex;gap:10px;align-items:flex-start;background:#FAFAFB;border-radius:14px;padding:14px 16px;margin-bottom:20px;font-size:12.5px;color:#4B5563;line-height:1.5;}
.sp-melding .ico{width:18px;height:18px;margin-top:1px;color:var(--pink-dark);}
.sp-cta{display:flex;align-items:center;justify-content:center;gap:10px;background:var(--pink-dark);color:#fff;font-weight:800;font-size:16px;padding:16px;border-radius:14px;box-shadow:0 10px 24px rgba(228,63,125,.3);}
.sp-cta .ico{width:18px;height:18px;}
.sp-klein{text-align:center;font-size:11.5px;color:#6B7280;margin-top:12px;line-height:1.5;}
.product-over{background:#fff;border-radius:24px;padding:28px 36px 36px;box-shadow:0 10px 34px rgba(31,41,55,.07);margin-bottom:32px;font-size:15px;line-height:1.8;color:#374151;}
.product-over h2{font-size:21px;font-weight:800;margin:0 0 18px;color:var(--gray-800);}
.product-related{margin-bottom:40px;}

/* ---- mobiel ---- */
@media (max-width:760px){
  .pk-band{padding:24px 1rem 0;}
  .pk{flex-direction:column;text-align:center;padding:26px 20px;gap:16px;}
  .pk-tegel{flex:0 0 auto;width:84px;height:84px;border-radius:22px;}
  .pk-tegel .ico{width:34px;height:34px;}
  .pk h1{font-size:26px;}
  .pk-foto{flex:0 0 auto;width:100%;height:170px;margin-left:0;}
  .pk-zoekform{margin-left:auto;margin-right:auto;}
  .pk-inhoud .pk-artikel,.artikel-kaart{padding:24px 20px;}
  .product-wrap{padding:20px 1rem;}
  .sp-textbox{padding:22px 20px;}
  .sp-textbox h1{font-size:23px;}
  .product-over{padding:22px 20px 26px;}
  .artikel-wrap{padding:20px 1rem 32px;}
  .fout-lijst{padding:22px 20px;}
  .usp-strip{padding:20px;}
}
@media (prefers-reduced-motion:reduce){
  .cat-card,.dt{transition:none;}
  .cat-card:hover,.dt:hover{transform:none;}
}

/* v117: op heel smalle schermen de Dealalert-knop compacter, zodat logo, knop en menu naast elkaar passen */
@media (max-width:400px){
  .nav-right{gap:8px;}
  .nav-cta{padding:9px 12px;font-size:13px;}
  .nav-cta .ico{display:none;}
}
@media (max-width:350px){.nav-cta .nm-bel{display:none;}}
@media (max-width:760px){
  .pk-tekst{width:100%;flex:0 0 auto;}
  .pk-zoekform{width:100%;}
}

/* ===========================================================
   v120: de oorspronkelijke dealkaart (foto, titel, ster/datum/nachten/
   verzorging, aanbieder, prijs + Bekijk-knop) in de nieuwe stijl
   =========================================================== */
.dk{display:flex;flex-direction:column;background:#fff;border-radius:22px;box-shadow:0 8px 28px rgba(31,41,55,.07);overflow:hidden;color:inherit;transition:transform .2s,box-shadow .2s;}
.dk:hover{transform:translateY(-3px);box-shadow:0 14px 36px rgba(31,41,55,.12);}
.dk:focus-visible{outline:3px solid var(--pink-dark);outline-offset:3px;}
.dk-foto{position:relative;height:190px;flex:0 0 auto;display:flex;align-items:center;justify-content:center;}
.dk-foto>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.dk-leeg{font-size:46px;line-height:1;}
.dk-body{padding:18px 20px 20px;display:flex;flex-direction:column;flex:1;}
.dk-titel{margin:0 0 8px;font-size:16px;font-weight:800;letter-spacing:-.2px;line-height:1.3;color:var(--gray-800);}
.dk-titel span{font-weight:500;color:#6B7280;}
.dk-info{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:12.5px;color:var(--gray-600);margin-bottom:8px;align-items:center;}
.dk-info>span{white-space:nowrap;}
.dk-ster{font-size:12px;letter-spacing:1px;}
.dk-aanb{margin:0 0 14px;font-size:12px;color:#9CA3AF;}
.dk-voet{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-top:auto;padding-top:14px;border-top:1px solid var(--gray-100);}
.dk-prijs{display:flex;flex-direction:column;line-height:1.15;}
.dk-prijs>span{font-size:11.5px;color:#6B7280;}
.dk-prijs b{font-size:24px;font-weight:800;color:var(--pink-dark);letter-spacing:-.4px;}
.dk-prijs b .woocommerce-Price-amount{font:inherit;color:inherit;}
.dk-prijs b del{font-size:14px;font-weight:600;color:#6B7280;margin-right:4px;}
.dk-prijs b ins{text-decoration:none;}
.dk-knop{display:inline-flex;align-items:center;gap:6px;background:var(--pink-dark);color:#fff;font-size:13px;font-weight:700;border-radius:999px;padding:10px 18px;box-shadow:0 6px 16px rgba(228,63,125,.28);white-space:nowrap;}
.dk-knop i{font-style:normal;}
@media (prefers-reduced-motion:reduce){.dk{transition:none;}.dk:hover{transform:none;}}

/* ===========================================================
   v121: één icoonstijl: emoji in een zachte kleurtegel
   =========================================================== */
.ie{font-style:normal;line-height:1;display:inline-block;--ie-bg:#FFE0EC;}
.ie-k1{--ie-bg:#FFE0EC;}
.ie-k2{--ie-bg:#FFE6D3;}
.ie-k3{--ie-bg:#D5F2EC;}
.ie-k4{--ie-bg:#EBE3FA;}
.ie-k5{--ie-bg:#FFF0C2;}
.ie-k6{--ie-bg:#DDEBFB;}
.cat-icon:has(.ie-k1),.usp-icon:has(.ie-k1),.pk-tegel:has(.ie-k1),.leeg-icoon:has(.ie-k1){background:#FFE0EC;}
.cat-icon:has(.ie-k2),.usp-icon:has(.ie-k2),.pk-tegel:has(.ie-k2),.leeg-icoon:has(.ie-k2){background:#FFE6D3;}
.cat-icon:has(.ie-k3),.usp-icon:has(.ie-k3),.pk-tegel:has(.ie-k3),.leeg-icoon:has(.ie-k3){background:#D5F2EC;}
.cat-icon:has(.ie-k4),.usp-icon:has(.ie-k4),.pk-tegel:has(.ie-k4),.leeg-icoon:has(.ie-k4){background:#EBE3FA;}
.cat-icon:has(.ie-k5),.usp-icon:has(.ie-k5),.pk-tegel:has(.ie-k5),.leeg-icoon:has(.ie-k5){background:#FFF0C2;}
.cat-icon:has(.ie-k6),.usp-icon:has(.ie-k6),.pk-tegel:has(.ie-k6),.leeg-icoon:has(.ie-k6){background:#DDEBFB;}
.cat-icon .ie{font-size:28px;}
.usp-icon .ie{font-size:28px;}
.pk-tegel .ie{font-size:52px;}
.leeg-icoon .ie{font-size:34px;}
.dt-beeld .ie{font-size:40px;}
.dest-grid-full .dt-beeld .ie{font-size:58px;}
.tip-img-leeg .ie{font-size:46px;}
.sp-foto-leeg .ie{font-size:90px;}
.knop-roze .ie,.knop-wit .ie,.search-btn .ie{font-size:16px;}
/* kleine tegeltjes bij tekst */
.dk-info .ie,.sp-reis-item .ie,.fout-lijst .ie,.sp-plek .ie,.nav-zoekicoon.ie{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:8px;background:var(--ie-bg);font-size:13px;flex:0 0 auto;}
.trip-info-icon .ie{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:11px;background:var(--ie-bg);font-size:17px;}
.dk-info>span{display:inline-flex;align-items:center;gap:6px;}
.nav-zoekicoon.ie{width:26px;height:26px;font-size:14px;}
.sp-reis-item{display:flex;align-items:center;gap:8px;}
.fout-lijst a{gap:12px;}
.cat-nav-btn{gap:9px;}
.nm-em{width:30px;height:30px;border-radius:10px;background:var(--ie-bg);display:inline-flex;align-items:center;justify-content:center;font-size:16px;line-height:1;}
.mobile-nav-item .nm-em{width:32px;height:32px;font-size:17px;}
@media (max-width:760px){.pk-tegel .ie{font-size:40px;}}

/* v122: social media deals gebruiken dezelfde dealkaart als de rest van de site */
.smd-deals{margin-bottom:8px;}

/* ===========================================================
   v123: fotobanner als paginakop, filters zweven over de onderrand,
   introtekst als gewone tekst; homepage-hero met de Menorca-foto
   =========================================================== */
.pk-band{padding:32px 1.5rem 0;}
.pk{position:relative;overflow:hidden;border-radius:28px;box-shadow:none;color:#fff;padding:36px 44px 40px;min-height:240px;gap:28px;
  background:linear-gradient(110deg,#E43F7D 0%,#FF5A93 45%,#FF9440 100%);}
.pk-fotobg{background:linear-gradient(100deg,rgba(150,20,80,.88) 0%,rgba(228,63,125,.62) 45%,rgba(255,120,70,.25) 100%),var(--pk-foto) center/cover no-repeat #444;}
.pk>*{position:relative;}
.pk-band:has(+ .pcw-met-filter) .pk{padding-bottom:76px;}
.pk .pk-tegel,.pk .pk-tegel:has(.ie){background:rgba(255,255,255,.95);box-shadow:0 10px 24px rgba(0,0,0,.2);flex:0 0 92px;height:92px;border-radius:26px;color:var(--pink-dark);}
.pk .pk-tegel .ie{font-size:44px;}
.pk-label{color:#fff;opacity:.92;}
.pk h1{color:#fff;font-size:44px;letter-spacing:-.8px;text-shadow:0 2px 14px rgba(0,0,0,.18);}
.pk h1 span{color:#fff;}
.pk-sub{color:rgba(255,255,255,.95);font-size:16px;max-width:560px;}
.pk-zoekform input{border-color:transparent;}
.pk-zoekform button{background:#1F2937;}

.pcw-kop{padding-top:28px;}
.pcw-met-filter{padding-top:0;}
.pcw-met-filter>.sort-bar{position:relative;z-index:2;margin:-34px 24px 22px;}
.sort-bar{padding:14px 22px;border-radius:18px;box-shadow:0 14px 34px rgba(31,41,55,.12);}
.sort-aantal{margin-left:auto;background:#FFE6F0;color:var(--pink-dark);font-weight:800;font-size:13px;border-radius:999px;padding:8px 14px;white-space:nowrap;}
.pcw-met-filter>.duur-notitie{margin:-8px 24px 16px;}
.pcw-kop .page-intro{background:none;box-shadow:none;border-radius:0;padding:0;max-width:820px;margin:6px 0 26px 8px;font-size:15px;line-height:1.75;color:#4B5563;}
.pcw-kop .page-intro>*:first-child{margin-top:0;}
.page-intro-cta{text-align:left !important;font-style:italic;margin-top:12px !important;}

.hero{background:url('hero-bg.jpg') center 42%/cover no-repeat;}
.hero::before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,30,55,.42) 0%,rgba(15,30,55,.30) 45%,rgba(150,20,80,.38) 100%);z-index:0;}
.hero h1,.hero-sub{text-shadow:0 2px 16px rgba(0,0,0,.28);}

@media (max-width:760px){
  .pk-band{padding:20px 1rem 0;}
  .pk{align-items:flex-start;text-align:left;padding:26px 20px 30px;min-height:0;gap:16px;border-radius:24px;}
  .pk .pk-tegel,.pk .pk-tegel:has(.ie){flex:0 0 auto;width:64px;height:64px;border-radius:20px;}
  .pk .pk-tegel .ie{font-size:32px;}
  .pk h1{font-size:30px;}
  .pk-band:has(+ .pcw-met-filter) .pk{padding-bottom:64px;}
  .pcw-met-filter>.sort-bar{margin:-30px 10px 18px;}
  .sort-aantal{margin-left:0;align-self:flex-start;}
  .pcw-met-filter>.duur-notitie{margin:-6px 10px 14px;}
  .pcw-kop .page-intro{margin-left:0;}
}
.sort-bar .sf{display:inline-flex;align-items:center;gap:8px;}
@media (max-width:600px){
  .sort-bar .sf{display:flex;flex-direction:column;align-items:stretch;gap:4px;}
  .sort-bar .sf label{margin-bottom:0;}
}
.pk{max-width:1152px;}
.sort-bar select{max-width:200px;}
.sort-bar{gap:10px 16px;}
.hero{background-position:center 62%;}
.hero::before{background:linear-gradient(180deg,rgba(15,30,55,.50) 0%,rgba(15,30,55,.38) 50%,rgba(150,20,80,.42) 100%);}
@media (max-width:600px){.sort-bar select{max-width:none;}}
/* filters: label boven de keuzelijst, past zo op één regel */
.sort-bar .sf{display:flex;flex-direction:column;align-items:stretch;gap:4px;}
.sort-bar .sf label{font-size:11px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--gray-600);margin:0;}
.sort-bar{align-items:flex-end;}
.sort-bar select{max-width:190px;}
@media (max-width:600px){
  .sort-bar{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:end;}
  .sort-bar .sf{min-width:0;}
  .sort-bar .sf:has(#ciao-sorteer){grid-column:1 / -1;}
  .sort-bar select{max-width:none;width:100%;padding:10px 10px;}
  .sort-aantal{grid-column:1 / -1;margin-left:0;align-self:start;justify-self:start;}
}

/* socialpagina: zelfde banner als de overige pagina's */
.smd-pagina{padding:32px 1.5rem 56px;}
.smd-binnen{max-width:1152px;}
.smd-kop{background:linear-gradient(110deg,#E43F7D 0%,#FF5A93 45%,#FF9440 100%);box-shadow:none;border-radius:28px;color:#fff;padding:36px 44px 40px;min-height:240px;gap:28px;}
.smd-kop .smd-tegel{background:rgba(255,255,255,.95);box-shadow:0 10px 24px rgba(0,0,0,.2);flex:0 0 92px;height:92px;border-radius:26px;}
.smd-kop h1{color:#fff;font-size:44px;letter-spacing:-.8px;text-shadow:0 2px 14px rgba(0,0,0,.18);}
.smd-kop h1 span{color:#fff;}
.smd-kop p{color:rgba(255,255,255,.95);font-size:16px;max-width:560px;}
.smd-bij{color:#fff;font-weight:600;}
@media (max-width:760px){
  .smd-pagina{padding:20px 1rem 40px;}
  .smd-kop{align-items:flex-start;text-align:left;padding:26px 20px 30px;min-height:0;gap:16px;border-radius:24px;}
  .smd-kop .smd-tegel{flex:0 0 auto;width:64px;height:64px;border-radius:20px;}
  .smd-kop h1{font-size:30px;}
  .smd-bij{justify-content:flex-start;}
}

/* v123b: geen roze verloop meer; elke banner toont een foto met een rustige donkerblauwe laag */
.pk,.pk-fotobg,.smd-kop{
  background:linear-gradient(100deg,rgba(14,27,48,.50) 0%,rgba(14,27,48,.26) 50%,rgba(14,27,48,.06) 100%),var(--pk-foto,url('hero-bg.jpg')) center 60%/cover no-repeat #1F2937;
}
.pk h1,.smd-kop h1{text-shadow:0 2px 18px rgba(0,0,0,.45);}
.pk-sub,.pk-label,.smd-kop p{text-shadow:0 1px 10px rgba(0,0,0,.4);}
.hero::before{background:linear-gradient(180deg,rgba(14,27,48,.40) 0%,rgba(14,27,48,.22) 50%,rgba(14,27,48,.30) 100%);}
.pk-zoekform button{background:var(--pink-dark);}

/* ===========================================================
   v124: homepage-hero: schone foto over de hele breedte, tekst linksonder,
   zoekveld als pil (geen label, geen gele accentkleur)
   =========================================================== */
.hero{min-height:480px;display:flex;align-items:flex-end;padding:0;text-align:left;
  background:linear-gradient(180deg,rgba(14,27,48,0) 30%,rgba(14,27,48,.66) 100%),url('hero-bg.jpg') center 58%/cover no-repeat;}
.hero::before,.hero::after{display:none;}
.hero-inner{width:100%;max-width:1152px;margin:0 auto;padding:0 1.5rem 48px;}
.hero h1{font-size:52px;line-height:1.05;letter-spacing:-1.2px;max-width:780px;margin-bottom:12px;text-shadow:0 2px 20px rgba(0,0,0,.4);}
.hero h1 span{color:#fff;}
.hero-sub{font-size:17px;margin-bottom:24px;text-shadow:0 1px 10px rgba(0,0,0,.45);}
.hero .search-wrap{max-width:660px;margin:0;border-radius:999px;padding:8px;}
.hero .s-field{border-radius:999px;padding-left:24px;}
.hero .search-btn{border-radius:999px;padding:0 30px;}
@media (max-width:900px) and (min-width:641px){
  .hero .search-wrap{display:flex;max-width:660px;padding:8px;gap:10px;}
  .hero .search-btn{grid-column:auto;padding:0 28px;width:auto;}
}
@media (max-width:640px){
  .hero{min-height:460px;padding:0;background:linear-gradient(180deg,rgba(14,27,48,.18) 0%,rgba(14,27,48,.45) 45%,rgba(14,27,48,.78) 100%),url('hero-bg.jpg') 38% 58%/cover no-repeat;}
  .hero-inner{padding:0 1rem 28px;}
  .hero h1{font-size:32px;letter-spacing:-.6px;}
  .hero-sub{font-size:15px;margin-bottom:18px;}
  .hero .search-wrap{border-radius:22px;padding:12px;}
  .hero .s-field{border-radius:14px;padding-left:16px;}
  .hero .search-btn{border-radius:14px;padding:16px;width:100%;}
}

/* ===========================================================
   v125: hero met drie filters, tabs met deals, "Zo werkt Hola"
   =========================================================== */
/* hero-zoekbalk: drie velden in één pil, met dunne scheidingslijnen */
.hero .search-wrap{max-width:880px;align-items:center;}
.hero .s-field{background:transparent;border:none;border-radius:999px;padding:8px 22px;}
.hero .s-field:hover,.hero .s-field:focus-within{background:var(--gray-50);border:none;}
.hero .s-divider{display:block;flex:0 0 1px;align-self:stretch;margin:10px 0;background:var(--gray-200);}
.hero .s-field select{font-size:15px;}
@media (max-width:900px) and (min-width:641px){
  .hero .search-wrap{display:grid;grid-template-columns:1fr 1fr 1fr;border-radius:28px;gap:6px;max-width:720px;}
  .hero .s-divider{display:none;}
  .hero .s-field{background:var(--gray-50);border:1px solid var(--gray-200);border-radius:16px;padding:10px 16px;}
  .hero .search-btn{grid-column:1 / -1;border-radius:16px;padding:15px;width:100%;}
}
@media (max-width:640px){
  .hero .search-wrap{display:flex;flex-direction:column;gap:8px;border-radius:22px;}
  .hero .s-divider{display:none;}
  .hero .s-field{background:var(--gray-50);border:1px solid var(--gray-200);border-radius:14px;padding:10px 16px;}
}

/* tabs boven de deals */
.deal-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px;}
.deal-tab{font-family:var(--font);font-size:14px;font-weight:700;color:var(--gray-800);background:#fff;border:1.5px solid var(--gray-200);border-radius:999px;padding:9px 18px;cursor:pointer;transition:background .15s,border-color .15s,color .15s;}
.deal-tab:hover{border-color:var(--pink-dark);color:var(--pink-dark);}
.deal-tab.actief{background:var(--pink-dark);border-color:var(--pink-dark);color:#fff;}
.deal-tab:focus-visible{outline:2px solid var(--pink-dark);outline-offset:2px;}
.deal-paneel[hidden]{display:none;}
.deal-meer{display:flex;justify-content:center;margin:22px 0 4px;}
.deal-meer-knop{display:inline-flex;align-items:center;gap:6px;font-weight:800;font-size:14px;color:var(--pink-dark);background:#fff;border:1.5px solid var(--pink-dark);border-radius:999px;padding:12px 26px;text-decoration:none;transition:background .15s,color .15s;}
.deal-meer-knop:hover{background:var(--pink-dark);color:#fff;}
@media (max-width:640px){
  .deal-tabs{flex-wrap:nowrap;overflow-x:auto;margin-left:-1rem;margin-right:-1rem;padding:0 1rem 4px;scrollbar-width:none;}
  .deal-tabs::-webkit-scrollbar{display:none;}
  .deal-tab{flex:0 0 auto;}
}

/* v125: menu met zes items past ook op ~1024px; maandmenu smaller */
.mega-drop.mega-drop-maand{min-width:0;}
@media (max-width:1260px) and (min-width:901px){
  .cat-nav-inner{padding:0 1rem;justify-content:center;}
  .cat-nav-btn{padding:13px 11px;font-size:13px;gap:7px;}
  .cat-nav-btn .arr{font-size:10px;}
}
@media (max-width:1060px) and (min-width:901px){
  .cat-nav-btn{padding:13px 8px;font-size:12.5px;gap:6px;}
  .cat-nav-btn .nm-em{width:26px;height:26px;font-size:14px;}
}
/* hero op de telefoon: titel krijgt lucht, filters compacter */
@media (max-width:640px){
  .hero{min-height:0;padding-top:36px;}
  .hero .search-wrap{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
  .hero .s-field{width:auto;min-width:0;}
  .hero .s-field select{font-size:14px;}
  .hero .s-field:first-of-type{grid-column:1 / -1;}
  .hero .search-btn{grid-column:1 / -1;}
}
@media (max-width:990px) and (min-width:901px){
  .cat-nav-inner{padding:0 .5rem;}
  .cat-nav-btn{padding:13px 5px;font-size:12px;gap:5px;}
  .cat-nav-btn .nm-em{width:24px;height:24px;font-size:13px;border-radius:8px;}
  .cat-nav-btn .arr{display:none;}
}


/* ===========================================================
   v126: hero met matglas-zoekblok en cijferstrook over de foto;
   "Zo werkt Hola" als drie kaarten met zichtbare stapnummers
   =========================================================== */
.hero{padding-bottom:84px;margin-bottom:0;}
.hero .search-wrap{background:rgba(255,255,255,.9);backdrop-filter:blur(18px) saturate(1.3);-webkit-backdrop-filter:blur(18px) saturate(1.3);border:1px solid rgba(255,255,255,.7);box-shadow:0 20px 60px rgba(8,18,36,.30);}
.hero .s-field label{display:flex;align-items:center;gap:7px;color:var(--gray-600);}
.hero .s-field label .fi{color:var(--pink-dark);flex:0 0 auto;}
.hero .s-divider{background:rgba(31,41,55,.12);}
.search-btn{gap:10px;}
.search-btn .cta-pijl{transition:transform .2s;}
.search-btn:hover .cta-pijl{transform:translateX(3px);}
.hero-strip{position:relative;margin-top:-76px;z-index:3;padding:0 1.5rem;}
.hero-strip-in{max-width:1152px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);background:rgba(14,27,48,.42);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.22);border-radius:18px;}
.hero-strip .stat{padding:16px 10px;text-align:center;border-right:1px solid rgba(255,255,255,.2);color:#fff;}
.hero-strip .stat:last-child{border-right:none;}
.hero-strip .stat-num{color:#fff;font-size:18px;font-weight:700;letter-spacing:-.2px;}
.hero-strip .stat-label{color:rgba(255,255,255,.82);font-size:12px;}
.hero-strip + .main{padding-top:48px;}
@media (max-width:640px){
  .hero-strip{margin-top:-64px;padding:0 1rem;}
  .hero-strip .stat{padding:12px 6px;}
  .hero-strip .stat-num{font-size:15px;}
  .hero-strip .stat-label{font-size:11px;}
}

.z1{margin:52px 0 8px;}
.z1 .sec-title{margin:0 0 26px;}
.z1-rij{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.z1-kaart{position:relative;background:#fff;border-radius:24px;box-shadow:0 10px 34px rgba(31,41,55,.07);padding:34px 28px 28px;}
.z1-nr{position:absolute;top:-13px;left:24px;width:32px;height:32px;border-radius:50%;background:var(--pink-dark);color:#fff;font-weight:800;font-size:15px;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 14px rgba(228,63,125,.32);}
.z1-tegel{width:56px;height:56px;border-radius:18px;background:var(--ie-bg);display:flex;align-items:center;justify-content:center;font-size:28px;margin-bottom:18px;}
.z1-kaart h3{margin:0 0 6px;font-size:17px;color:var(--gray-800);}
.z1-kaart p{margin:0;font-size:14px;line-height:1.65;color:var(--gray-600);}
@media (max-width:860px){.z1-rij{grid-template-columns:1fr;gap:26px;}.z1-kaart{padding:30px 22px 24px;border-radius:22px;}}

/* ===========================================================
   v127: lichtere hero (vrolijker), minder ruimte tussen blog en
   "Zo werkt Hola", iets meer ruimte tussen "Zo werkt Hola" en de FAQ
   =========================================================== */
.hero{background:linear-gradient(180deg,rgba(14,27,48,0) 40%,rgba(14,27,48,.30) 100%),url('hero-bg.jpg') center 58%/cover no-repeat;}
.hero h1,.hero-sub{text-shadow:0 2px 16px rgba(0,0,0,.38);}
.hero-strip-in{background:rgba(14,27,48,.26);border-color:rgba(255,255,255,.34);}
.hero-strip .stat-num,.hero-strip .stat-label{text-shadow:0 1px 8px rgba(0,0,0,.35);}
@media (max-width:640px){
  .hero{background:linear-gradient(180deg,rgba(14,27,48,.08) 0%,rgba(14,27,48,.20) 45%,rgba(14,27,48,.42) 100%),url('hero-bg.jpg') 38% 58%/cover no-repeat;}
}
.main:has(> .z1){padding-top:0;}
.z1{margin:20px 0 40px;}

/* v128: meer ruimte tussen "Meer ... deals bekijken" en "Wat past bij jouw portemonnee?" */
.deal-paneel .deal-meer,.deal-meer{margin:24px 0 56px;}
@media (max-width:640px){.deal-paneel .deal-meer,.deal-meer{margin:22px 0 44px;}}

/* v132: "Zo werkt" + logo; letters van "hola" iets groter dan de tekst, op dezelfde basislijn */
.sec-title-logo{--logo-h:36px;display:block;line-height:1.2;}
.sec-title-logo .ciao-logo-inline{display:inline-block;height:var(--logo-h);width:auto;margin-left:8px;vertical-align:calc(var(--logo-h) * -.283);}
@media (max-width:640px){.sec-title-logo{--logo-h:32px;}}

/* v130: social-banner staat nu midden op de homepage (binnen .main) */
.main .soc{padding:0;margin:36px 0 12px;}
.main .soc .soc-wrap{padding:0;max-width:none;}
.main .soc + .sec-header{margin-top:28px;}

/* v135: USP-strook als rustige, witte strook direct onder de foto */
.hero{padding-bottom:40px;}
.hero-strip{margin-top:0;padding:0;z-index:3;position:relative;}
.hero-usp{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border-bottom:1px solid var(--gray-200);}
.hero-usp .hu{display:flex;align-items:center;justify-content:center;gap:8px;padding:15px 10px;font-size:13.5px;font-weight:700;color:#4B5563;border-right:1px solid rgba(31,41,55,.08);text-align:center;}
.hero-usp .hu:last-child{border-right:none;}
.hero-usp .hu-vink{flex:0 0 16px;color:var(--pink-dark);}
.hero-strip + .main{padding-top:40px;}
/* v136: laptop = vinkjes; telefoon = kaartjes met gekleurde icoontjes (2 x 2) */
.hero-usp .hu-tegel{display:none;}
@media (max-width:640px){
  .hero{padding-bottom:28px;}
  .hero-usp{grid-template-columns:repeat(2,1fr);gap:10px;padding:14px 16px;border-bottom:1px solid var(--gray-200);}
  .hero-usp .hu{justify-content:flex-start;gap:10px;border:0;background:#F6F7F9;border-radius:14px;padding:11px 12px;font-size:12.5px;line-height:1.25;text-align:left;}
  .hero-usp .hu-vink{display:none;}
  .hero-usp .hu-tegel{display:flex;flex:0 0 30px;width:30px;height:30px;border-radius:10px;background:var(--ie-bg);align-items:center;justify-content:center;font-size:15px;}
}

/* v134: homepage-tabs tonen 5 deals op een telefoon (1 kolom); vanaf 2 kolommen 4, zodat er geen los kaartje overblijft */
@media (min-width:540px){.deal-paneel .deals-grid > :nth-child(n+5){display:none;}}

/* v136: heel smalle telefoons (≤360px): filters onder elkaar zodat niets wordt afgekapt */
@media (max-width:360px){
  .hero .search-wrap{grid-template-columns:1fr;}
  .hero .s-field:first-of-type{grid-column:auto;}
}

/* ===========================================================
   CIAO-BRANDING (v3.19)
   Opmaak komt van Hola; kleuren, verloop en stijl van Ciao.
   Alles hieronder overschrijft bewust de Hola-roze/oranje vlakken.
   Brandverloop: oranje (#FF9440) → zachtroze (#FF9BA0) → blauw (#2E8FD8)
   =========================================================== */
.page-hero{background:linear-gradient(135deg,rgba(255,148,64,.92) 0%,rgba(255,155,160,.88) 45%,rgba(46,143,216,.92) 100%);}
.page-hero p{color:rgba(255,255,255,.95);text-shadow:0 1px 8px rgba(20,35,60,.5);}
.newsletter{background:linear-gradient(135deg,#FF9440 0%,#FF9BA0 45%,#2E8FD8 100%);}
.pk{background:linear-gradient(135deg,#FF9440 0%,#FF9BA0 45%,#2E8FD8 100%);}
.pk-fotobg{background:linear-gradient(100deg,rgba(255,148,64,.82) 0%,rgba(255,155,160,.58) 45%,rgba(46,143,216,.34) 100%),var(--pk-foto) center/cover no-repeat #444;}
.smd-kop{background:linear-gradient(135deg,#FF9440 0%,#FF9BA0 45%,#2E8FD8 100%);}
.b-pink{background:var(--roze-licht);color:#B2454B;}

/* Statistiekenbalk: Ciao-groen */
.stats-bar{background:#3FA06A;border-bottom:0;}
.stats-bar .stat-num{color:#fff;}
.stats-bar .stat-label{color:rgba(255,255,255,.88);}

/* Nieuwsbriefblok en pop-up: neutraal wit zoals Hola, met Ciao-accenten */
.nb-kaart,.nl-popup.nb-popup{background:#fff;border:1px solid #E7EAEE;box-shadow:0 10px 34px rgba(31,41,55,.07);}
.nb-kaart .nb-beeld,.nb-popup .nb-beeld{background:linear-gradient(145deg,#E8F3FC,#EAF6EF);}
.nb-tekst h2{color:var(--gray-800);}
.nb-tekst h2 span{color:var(--blue);}
.nb-sub{color:var(--gray-600);}
.nb-punten li{color:var(--gray-600);}
.nb-privacy,.nb-popup .nb-privacy{color:#6B7280;}
.nb-privacy a{color:var(--blue-dark);}
.nb-form .mailpoet_text{border:1.5px solid #D9DEE5!important;}
.nb-form .mailpoet_text:focus{border-color:var(--blue)!important;box-shadow:0 0 0 3px rgba(46,143,216,.15)!important;}
.nb-form .mailpoet_submit{background:#3FA06A!important;color:#fff!important;box-shadow:0 8px 20px rgba(63,160,106,.30)!important;}
.nb-form .mailpoet_submit:hover{background:#2F8556!important;box-shadow:0 10px 24px rgba(47,133,86,.38)!important;}
.nb-form .mailpoet_validate_success{color:#1B7F4B!important;}
.nl-popup-close{background:var(--gray-100);color:var(--gray-600);}
.nl-popup-close:hover{background:var(--gray-200);}
.nl-popup .mailpoet_submit,.nl-mailpoet .mailpoet_submit{background:#3FA06A!important;box-shadow:0 8px 22px rgba(63,160,106,.32)!important;}
.nl-popup .mailpoet_text{border-color:#D9DEE5!important;}
.nl-popup .mailpoet_text:focus{border-color:var(--blue)!important;box-shadow:0 0 0 3px rgba(46,143,216,.15)!important;}
.nl-popup .nl-disclaimer a{color:var(--blue-dark);}

/* Groen als tweede hoofdkleur: knoppen, tabs en stappen. Roze blijft voor topbalk, Dealalert en labels */
:root{--groen:#3FA06A;--groen-dark:#2F8556;--groen-licht:#EAF6EF;}
.search-btn,.pk-zoekform button,.deal-btn,.knop-roze,.sp-cta,.dk-knop,.smd-knop,.smd-pijl,.dt-pijl,.z1-nr,
.woocommerce ul.products li.product .button,.woocommerce div.product .single_add_to_cart_button,.products li.product .button{background:var(--groen)!important;box-shadow:0 8px 20px rgba(63,160,106,.26);}
.search-btn:hover,.pk-zoekform button:hover,.deal-btn:hover,.knop-roze:hover,.sp-cta:hover,.dk-knop:hover,.smd-knop:hover,
.woocommerce ul.products li.product .button:hover,.woocommerce div.product .single_add_to_cart_button:hover,.products li.product .button:hover{background:var(--groen-dark)!important;}
.deal-tab.actief{background:var(--groen);border-color:var(--groen);}
.deal-meer-knop:hover{background:var(--groen);color:#fff;}
.deal-meer-knop{border-color:var(--groen);color:var(--groen-dark);}
.sec-title span{color:var(--blue);}
.sec-link,.sec-link:hover{color:var(--blue-dark);}
.sec-link:hover{text-decoration:underline;}
