/*
Theme Name: Speed All In
Theme URI: https://speedallin.nl
Author: Autobedrijf Speed All In
Description: Maatwerk WordPress-thema voor een autobedrijf: APK, onderhoud, reparatie en occasions met een ingebouwd, eenvoudig te beheren advertentiesysteem (Aanbod). Beheer auto's rechtstreeks vanuit het WordPress-dashboard, inclusief foto's, kilometerstand, prijs en status.
Version: 3.0.0
Requires at least: 6.0
Requires PHP: 7.4
Tested up to: 6.6
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: speedallin
*/

:root{
  --maroon:#5c0e1c;
  --red:#c41230;
  --red-dark:#a80f28;
  --ink:#17141a;
  --steel:#d7dbdf;
  --paper:#faf9f7;
  --tint:#f2efe9;
  --text-soft:#55524f;
  --line:#eae7e1;
}

*,*::before,*::after{box-sizing:border-box;}

html{scroll-behavior:smooth;}

body{
  font-family:'Inter',sans-serif;
  background:var(--paper);
  color:var(--ink);
  line-height:1.55;
  margin:0;
}

h1,h2,h3{font-family:'Big Shoulders Display',sans-serif;margin:0;}

img{max-width:100%;display:block;}

a{color:inherit;}

.screen-reader-text{
  position:absolute!important;
  clip:rect(1px,1px,1px,1px);
  width:1px;height:1px;overflow:hidden;
}
.skip-link{
  position:absolute;left:-9999px;top:0;background:#fff;color:var(--ink);
  padding:12px 18px;z-index:100;border-radius:0 0 4px 0;
}
.skip-link:focus{left:0;}

.wrap{max-width:1120px;margin:0 auto;padding:0 20px;}
.wrap-narrow{max-width:760px;}

.eyebrow{font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:var(--red);font-size:13px;margin:0 0 10px;}
.eyebrow-light{color:#f3c9cf;}

.btn{display:inline-flex;align-items:center;justify-content:center;font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.05em;font-size:15px;padding:13px 26px;border-radius:3px;border:2px solid transparent;cursor:pointer;transition:transform .15s ease,background .15s ease;text-decoration:none;}
.btn:active{transform:scale(.98);}
.btn-primary{background:var(--red);color:#fff;}
.btn-primary:hover{background:var(--red-dark);color:#fff;}
.btn-outline{background:transparent;color:var(--ink);border-color:var(--ink);}
.btn-outline:hover{background:var(--ink);color:#fff;}
.btn-outline-light{background:transparent;color:#fff;border-color:rgba(255,255,255,.6);}
.btn-outline-light:hover{background:rgba(255,255,255,.12);color:#fff;}
.btn-sm{padding:9px 18px;font-size:13px;}

.icon{width:1em;height:1em;display:inline-block;vertical-align:-2px;}
.icon-lg{font-size:22px;}

.site-header{position:sticky;top:0;z-index:40;background:#fff;box-shadow:0 1px 0 rgba(0,0,0,.06);}
.topbar{background:var(--ink);color:#d9d6d1;font-size:12.5px;}
.topbar-inner{display:flex;justify-content:space-between;padding:6px 20px;flex-wrap:wrap;gap:6px;}
.topbar-inner a{color:#d9d6d1;text-decoration:none;}
.topbar-inner span,.topbar-inner a{display:inline-flex;align-items:center;gap:6px;}
.header-inner{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;gap:20px;}
.brand-mark{display:flex;flex-direction:column;line-height:1;text-decoration:none;}
.brand-eyebrow{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:11px;letter-spacing:.18em;color:var(--red);text-transform:uppercase;}
.brand-name{font-family:'Big Shoulders Display',sans-serif;font-weight:800;font-style:italic;font-size:26px;color:var(--ink);letter-spacing:.01em;}
.brand-name-footer{color:#fff;}
.custom-logo-link img{max-height:56px;width:auto;}

.nav-desktop{display:none;gap:6px;list-style:none;margin:0;padding:0;}
.nav-desktop li{display:flex;}
.nav-desktop a{background:none;border:none;font-family:'Barlow Condensed',sans-serif;font-weight:600;font-size:15px;text-transform:uppercase;letter-spacing:.04em;color:#423f3c;padding:8px 12px;text-decoration:none;border-radius:3px;}
.nav-desktop a:hover,.nav-desktop .current-menu-item>a{color:var(--red);}
.header-actions{display:flex;align-items:center;gap:8px;}
.menu-toggle{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;background:none;border:1px solid var(--line);border-radius:3px;cursor:pointer;}
@media (min-width:900px){
  .nav-desktop{display:flex;}
  .menu-toggle{display:none;}
}
.mobile-menu{display:none;flex-direction:column;border-top:1px solid #eee;list-style:none;margin:0;padding:0;}
.mobile-menu.is-open{display:flex;}
.mobile-menu li a{display:block;text-align:left;padding:14px 20px;background:#fff;text-decoration:none;border-bottom:1px solid #f0eee9;font-family:'Barlow Condensed',sans-serif;font-weight:600;font-size:16px;text-transform:uppercase;color:#423f3c;}
.mobile-menu .current-menu-item a{color:var(--red);}

.stripe-band{position:relative;display:flex;height:10px;overflow:hidden;}
.stripe-seg{height:100%;}
.seg-maroon{flex:2;background:var(--maroon);}
.seg-red{flex:1;background:var(--red);}
.seg-black{flex:.25;background:var(--ink);}
.seg-steel{flex:1.2;background:var(--steel);}
.seg-white{flex:2;background:#fff;}
.stripe-divider{margin:0;transform:skewY(-1deg);}

.hero{position:relative;overflow:hidden;background:var(--ink);}
.hero-bg{position:absolute;inset:0;}
.hero-photo{position:absolute;inset:0;background-size:cover;background-position:center;}
.hero-diag{position:absolute;top:-20%;height:140%;width:60%;}
.hd-1{left:-10%;width:75%;background:var(--maroon);transform:skewX(-12deg);}
.hd-2{left:45%;width:18%;background:var(--red);transform:skewX(-12deg);}
.hd-3{left:60%;width:4%;background:var(--ink);transform:skewX(-12deg);}
.hd-4{left:66%;width:55%;background:var(--steel);opacity:.14;transform:skewX(-12deg);}
.hero-has-photo .hero-diag{opacity:.6;}
.hero-inner{position:relative;padding:100px 20px 70px;max-width:700px;}
.hero-title{font-size:44px;font-weight:800;font-style:italic;color:#fff;line-height:1.02;margin-bottom:18px;}
.hero-sub{color:#e7e2dc;font-size:16px;max-width:520px;margin:0 0 30px;}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:50px;}
.hero-stats{display:flex;gap:36px;flex-wrap:wrap;}
.hero-stat{display:flex;flex-direction:column;}
.hero-stat-num{font-family:'Big Shoulders Display',sans-serif;font-weight:800;font-size:30px;color:#fff;}
.hero-stat-label{font-family:'Barlow Condensed',sans-serif;font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:#cfc9c2;}
@media (min-width:700px){.hero-title{font-size:60px;}}

.section{padding:64px 0;}
.section-tint{background:var(--tint);}
.section-head{max-width:640px;margin-bottom:28px;}
.section-title{font-size:30px;font-weight:800;font-style:italic;}
@media (min-width:700px){.section-title{font-size:38px;}}
.section-lead{color:var(--text-soft);font-size:16px;max-width:700px;}
.center-cta{display:flex;justify-content:center;margin-top:30px;}

.services-grid{display:grid;grid-template-columns:1fr;gap:16px;margin-top:30px;}
@media (min-width:620px){.services-grid{grid-template-columns:1fr 1fr;}}
@media (min-width:960px){.services-grid{grid-template-columns:repeat(3,1fr);}}
.service-card{background:#fff;border:1px solid var(--line);border-radius:6px;padding:22px;}
.service-icon{width:42px;height:42px;border-radius:4px;background:#fbe9eb;color:var(--red);display:flex;align-items:center;justify-content:center;margin-bottom:14px;font-size:22px;}
.service-title{font-size:19px;margin-bottom:6px;}
.service-text{font-size:14px;color:var(--text-soft);margin:0;}

.car-grid{display:grid;grid-template-columns:1fr;gap:20px;margin-top:10px;}
@media (min-width:640px){.car-grid{grid-template-columns:1fr 1fr;}}
@media (min-width:980px){.car-grid{grid-template-columns:repeat(3,1fr);}}
.car-card{text-decoration:none;text-align:left;background:#fff;border:1px solid var(--line);border-radius:6px;overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .15s ease;}
.car-card:hover{box-shadow:0 8px 20px rgba(0,0,0,.08);}
.car-media{position:relative;height:170px;background:linear-gradient(115deg,var(--maroon) 0%,var(--maroon) 35%,var(--red) 55%,var(--steel) 78%,#fff 100%);display:flex;align-items:center;justify-content:center;overflow:hidden;}
.car-media img{width:100%;height:100%;object-fit:cover;}
.car-silhouette{width:56%;color:rgba(255,255,255,.9);}
.sold-flag{position:absolute;top:18px;left:-46px;width:180px;padding:7px 0;background:var(--red);color:#fff;font-family:'Barlow Condensed',sans-serif;font-weight:800;text-transform:uppercase;letter-spacing:.1em;font-size:13px;text-align:center;transform:rotate(-45deg);box-shadow:0 3px 8px rgba(0,0,0,.35);border-top:1px solid rgba(255,255,255,.3);border-bottom:1px solid rgba(0,0,0,.2);z-index:2;}
.car-body{padding:16px 18px 18px;flex:1;display:flex;flex-direction:column;}
.car-brand{font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:12px;color:var(--red);margin:0 0 2px;}
.car-model{font-size:19px;margin:0 0 10px;font-weight:700;font-family:'Barlow Condensed',sans-serif;}
.car-specs{display:flex;flex-wrap:wrap;gap:12px;font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--text-soft);margin-bottom:14px;list-style:none;padding:0;}
.car-specs span{display:inline-flex;align-items:center;gap:4px;}
.car-price-row{display:flex;align-items:center;justify-content:space-between;margin-top:auto;}
.car-old-price{font-family:'JetBrains Mono',monospace;font-size:12px;color:#a19c94;text-decoration:line-through;margin-right:8px;}
.car-price{font-family:'JetBrains Mono',monospace;font-weight:600;font-size:18px;color:var(--ink);}
.car-link{font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;font-size:12.5px;color:var(--red);display:inline-flex;align-items:center;gap:2px;}

.filter-row{display:flex;gap:10px;margin-bottom:26px;flex-wrap:wrap;}
.chip{font-family:'Barlow Condensed',sans-serif;font-weight:600;text-transform:uppercase;font-size:13px;letter-spacing:.04em;padding:8px 16px;border-radius:20px;border:1px solid #ddd8d0;background:#fff;cursor:pointer;color:#55524f;text-decoration:none;display:inline-block;}
.chip-active{background:var(--ink);color:#fff;border-color:var(--ink);}

.text-input{font-family:'Inter',sans-serif;font-size:14.5px;padding:10px 12px;border-radius:4px;border:1px solid #ddd8d0;background:#fff;}
.text-input:focus{outline:2px solid var(--red);outline-offset:1px;}
.aanbod-toolbar{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px;align-items:center;}
.aanbod-search{flex:1 1 220px;min-width:0;}
.aanbod-sort{flex:0 1 220px;}
.results-count{font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;font-size:13px;letter-spacing:.05em;color:var(--text-soft);margin:0 0 14px;}

.single-occasion .modal-media,.occasion-media{position:relative;height:320px;border-radius:8px;overflow:hidden;background:linear-gradient(115deg,var(--maroon) 0%,var(--maroon) 35%,var(--red) 55%,var(--steel) 78%,#fff 100%);display:flex;align-items:center;justify-content:center;margin-bottom:24px;}
.occasion-media img{width:100%;height:100%;object-fit:cover;}
.occasion-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:8px;margin-bottom:26px;}
.occasion-gallery a{border-radius:4px;overflow:hidden;height:70px;}
.occasion-gallery img{width:100%;height:100%;object-fit:cover;}
.occasion-title{font-size:30px;margin-bottom:16px;}
.occasion-spec-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:18px;}
@media (min-width:600px){.occasion-spec-grid{grid-template-columns:repeat(4,1fr);}}
.occasion-spec-label{display:block;font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;font-size:11px;letter-spacing:.08em;color:#a19c94;}
.occasion-spec-val{display:block;font-family:'JetBrains Mono',monospace;font-size:15px;font-weight:600;}
.occasion-desc{color:var(--text-soft);margin-bottom:18px;}
.occasion-warranty{display:flex;align-items:center;gap:10px;background:var(--tint);padding:12px 14px;border-radius:6px;font-size:13.5px;color:#423f3c;margin-bottom:20px;}
.occasion-price-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;margin-bottom:10px;}
.occasion-price{font-family:'JetBrains Mono',monospace;font-weight:700;font-size:26px;}

.review-grid{display:grid;grid-template-columns:1fr;gap:18px;margin-top:10px;}
@media (min-width:780px){.review-grid{grid-template-columns:repeat(3,1fr);}}
.review-card{background:#fff;border:1px solid var(--line);border-radius:6px;padding:22px;}
.review-byline{display:flex;align-items:center;gap:10px;}
.review-avatar{width:34px;height:34px;border-radius:50%;object-fit:cover;flex:0 0 auto;}
.review-stars{color:#d99a2b;display:flex;gap:2px;margin-bottom:10px;font-size:14px;}
.review-text{font-size:14.5px;color:#423f3c;margin:0 0 14px;}
.review-name{font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;font-size:12.5px;letter-spacing:.06em;color:var(--text-soft);margin:0;}
.review-name a{color:inherit;text-decoration:none;}
.review-name a:hover{color:var(--red);}
.review-time{display:block;font-weight:500;text-transform:none;letter-spacing:0;color:#a19c94;font-size:11.5px;margin-top:2px;}
.review-source{font-family:'Barlow Condensed',sans-serif;font-size:13px;color:var(--text-soft);margin-top:6px;}

.stat-strip{display:flex;gap:40px;flex-wrap:wrap;margin-top:34px;padding-top:30px;border-top:1px solid var(--line);}
.stat-block{display:flex;flex-direction:column;}
.stat-num{font-family:'Big Shoulders Display',sans-serif;font-weight:800;font-size:30px;color:var(--red);}
.stat-label{font-family:'Barlow Condensed',sans-serif;font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-soft);}

.contact-grid{display:grid;grid-template-columns:1fr;gap:30px;}
@media (min-width:800px){.contact-grid{grid-template-columns:1fr 1.3fr;}}
.contact-info{display:flex;flex-direction:column;gap:22px;list-style:none;margin:0;padding:0;}
.contact-row{display:flex;gap:14px;align-items:flex-start;color:var(--red);font-size:18px;}
.contact-row div{color:var(--ink);font-size:15px;}
.contact-row a{text-decoration:none;}
.contact-row a:hover{color:var(--red);}
.contact-label{font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;font-size:12px;letter-spacing:.06em;color:#a19c94;margin:0 0 3px;}
.contact-map{min-height:300px;border-radius:6px;overflow:hidden;border:1px solid var(--line);}
.contact-map iframe{width:100%;height:100%;min-height:300px;border:0;}

.badge{font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;font-size:11px;letter-spacing:.05em;padding:3px 8px;border-radius:3px;margin-left:6px;display:inline-block;}
.badge-green{background:#e3efd8;color:#3f6c1f;}
.badge-gray{background:var(--line);color:#6b675f;}

.site-footer{background:var(--ink);color:#c9c5bf;}
.footer-inner{display:grid;grid-template-columns:1fr;gap:32px;padding:50px 20px 30px;}
@media (min-width:700px){.footer-inner{grid-template-columns:1fr 1fr;}}
@media (min-width:1000px){.footer-inner{grid-template-columns:1.4fr 1fr 1fr 1.1fr;}}
.footer-tagline{color:#9d9990;margin-top:10px;font-size:14px;}
.footer-logo-wrap{display:inline-block;line-height:0;}
.footer-logo-wrap img{height:auto;width:230px;max-width:100%;display:block;}
.footer-heading{font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;letter-spacing:.08em;font-size:13px;color:#fff;margin-bottom:12px;}
.footer-col{display:flex;flex-direction:column;gap:8px;font-size:14px;list-style:none;margin:0;padding:0;}
.footer-col a{color:#c9c5bf;text-decoration:none;}
.footer-col a:hover{color:#fff;}
.footer-social{display:flex;gap:10px;margin-top:14px;}
.footer-social a{width:32px;height:32px;border:1px solid rgba(255,255,255,.2);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;}
.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding:16px 20px;font-size:12.5px;color:#8a867f;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;}
.footer-bottom a{color:#8a867f;text-decoration:none;}

.page-hero{background:var(--ink);padding:60px 0 40px;position:relative;overflow:hidden;}
.page-hero .eyebrow{color:#f3c9cf;}
.page-hero h1{color:#fff;font-size:34px;font-style:italic;}
@media (min-width:700px){.page-hero h1{font-size:44px;}}
.page-hero p{color:#e7e2dc;max-width:640px;margin-top:14px;}

.entry-content p{margin:0 0 18px;color:var(--text-soft);}
.entry-content{font-size:16px;}

.no-results{padding:20px 0;color:var(--text-soft);}

/* ---- Breadcrumbs ---- */
.breadcrumbs{background:var(--tint);border-bottom:1px solid var(--line);font-size:13px;}
.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:10px 0;}
.breadcrumbs li+li:before{content:"/";margin-right:8px;color:var(--text-soft);}
.breadcrumbs a{color:var(--text-soft);text-decoration:none;}
.breadcrumbs a:hover{color:var(--red);}
.breadcrumbs li[aria-current]{color:var(--ink);font-weight:600;}

/* ---- Service pages ---- */
.service-card-link{transition:box-shadow .15s ease,transform .15s ease;}
.service-card-link:hover{box-shadow:0 10px 26px rgba(0,0,0,.09);transform:translateY(-2px);}
.service-title a{color:inherit;text-decoration:none;}
.service-title a:hover{color:var(--red);}
.service-more{display:inline-block;margin-top:12px;font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.05em;font-size:13px;color:var(--red);}
.page-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px;}
.dienst-layout{display:grid;grid-template-columns:1fr;gap:28px;}
.dienst-aside{display:grid;gap:16px;align-content:start;}
.panel{background:#fff;border:1px solid var(--line);border-radius:6px;padding:20px;}
.panel-dark{background:var(--ink);color:#e7e2dc;border-color:transparent;}
.panel-dark a{color:#fff;}
.panel-title{font-size:18px;margin-bottom:10px;}
.check-list{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:15px;}
.check-list li{position:relative;padding-left:24px;}
.check-list li:before{content:"";position:absolute;left:0;top:.45em;width:12px;height:12px;border-radius:50%;background:var(--red);}
.faq-list{display:grid;gap:10px;margin-top:18px;}
.faq-item{background:#fff;border:1px solid var(--line);border-radius:6px;padding:14px 18px;}
.faq-item summary{cursor:pointer;font-weight:600;}
.faq-item p{margin:10px 0 0;color:var(--text-soft);}
.dienst-links{list-style:none;margin:18px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:10px;}
.dienst-links a{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 16px;text-decoration:none;color:var(--ink);font-size:14px;}
.dienst-links a:hover{border-color:var(--red);color:var(--red);}
.cta-band-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;}

/* ---- Occasion gallery ---- */
.occasion-subtitle{font-size:22px;margin:28px 0 12px;}
.occasion-media-wrap{margin:20px 0 8px;}
button.occasion-media{display:block;width:100%;padding:0;border:0;background:var(--ink);border-radius:6px;overflow:hidden;position:relative;cursor:zoom-in;}
button.occasion-media img{display:block;width:100%;height:auto;}
.occasion-media--empty{display:flex;align-items:center;justify-content:center;min-height:240px;background:var(--ink);border-radius:6px;color:rgba(255,255,255,.9);}
.occasion-media--empty .dashicons{font-size:96px;width:96px;height:96px;}
.occasion-media-hint{position:absolute;right:12px;bottom:12px;display:inline-flex;align-items:center;gap:6px;background:rgba(0,0,0,.65);color:#fff;font-size:13px;padding:6px 12px;border-radius:999px;}
.occasion-thumbs{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:8px 0 0;padding:0;}
.occasion-thumbs .occasion-thumb{display:block;width:100%;padding:0;border:1px solid var(--line);border-radius:4px;overflow:hidden;background:none;cursor:zoom-in;}
.occasion-thumbs .occasion-thumb img{display:block;width:100%;height:100%;aspect-ratio:3/2;object-fit:cover;}
.occasion-thumb:hover{border-color:var(--red);}
.occasion-back{margin-top:24px;font-size:14px;}

/* ---- Fullscreen lightbox ---- */
body.sai-lb-open{overflow:hidden;}
.sai-lb{position:fixed;inset:0;z-index:9999;background:rgba(8,8,8,.96);display:flex;flex-direction:column;}
.sai-lb-bar{flex:0 0 auto;display:flex;align-items:center;padding:14px 16px;position:relative;}
.sai-lb-count{position:static;transform:none;margin-right:auto;color:#e7e2dc;font-family:'JetBrains Mono',monospace;font-size:13px;letter-spacing:.05em;}
.sai-lb-stage{position:relative;flex:1 1 auto;min-height:0;display:flex;align-items:center;justify-content:center;padding:0 56px;}
.sai-lb-img{max-width:100%;max-height:100%;object-fit:contain;}
.sai-lb button{background:rgba(255,255,255,.12);color:#fff;border:0;border-radius:50%;width:44px;height:44px;font-size:22px;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;}
.sai-lb button:hover{background:rgba(255,255,255,.25);}
.sai-lb-close{position:static;}
.sai-lb-nav{position:absolute;top:50%;transform:translateY(-50%);}
.sai-lb-prev{left:10px;}
.sai-lb-next{right:10px;}
.sai-lb-thumbs{flex:0 0 auto;display:flex;gap:8px;padding:10px 16px 16px;overflow-x:auto;-webkit-overflow-scrolling:touch;}
.sai-lb-thumbs .sai-lb-thumb{position:static;flex:0 0 auto;width:76px;height:54px;border-radius:4px;padding:0;border:2px solid transparent;background:none;opacity:.55;cursor:pointer;overflow:hidden;}
.sai-lb-thumbs .sai-lb-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.sai-lb-thumbs .sai-lb-thumb:hover{opacity:.85;}
.sai-lb-thumbs .sai-lb-thumb.is-active{opacity:1;border-color:var(--red);}
@media (max-width:640px){
	.sai-lb-stage{padding:0 46px;}
	.sai-lb button{width:38px;height:38px;font-size:18px;}
	.sai-lb-thumbs .sai-lb-thumb{width:56px;height:40px;}
}

@media (min-width:900px){
	.dienst-layout{grid-template-columns:minmax(0,1fr) 320px;gap:40px;}
	.occasion-thumbs{grid-template-columns:repeat(6,1fr);}
}

/* ---- Small-screen polish ---- */
@media (max-width:480px){
	.hero-inner{padding:70px 16px 50px;}
	.hero-title{font-size:34px;}
	.hero-actions{flex-direction:column;align-items:stretch;}
	.hero-actions .btn{width:100%;}
	.hero-stats{gap:22px;}
	.section{padding:44px 0;}
	.aanbod-toolbar{flex-direction:column;align-items:stretch;}
	.aanbod-search,.aanbod-sort{flex-basis:auto;}
	.occasion-price-row{flex-direction:column;align-items:stretch;}
	.occasion-price-row .btn{width:100%;text-align:center;}
	.page-hero-actions{flex-direction:column;align-items:stretch;}
	.page-hero-actions .btn,.page-hero-actions a{width:100%;text-align:center;}
	.cta-band-inner{flex-direction:column;align-items:stretch;text-align:center;}
}

/* Larger, more forgiving touch targets on mobile */
@media (max-width:899px){
	.menu-toggle{width:44px;height:44px;}
	.mobile-menu li a{padding:16px 20px;}
	.chip{padding:10px 18px;}
}

/* ---- Block-editor content, styled to match the rest of the theme ---- */
.entry-content .wp-block-button__link,
.occasion-desc .wp-block-button__link{
	font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.05em;
	background:var(--red);color:#fff;border-radius:3px;padding:13px 26px;text-decoration:none;
}
.entry-content .wp-block-button__link:hover,
.occasion-desc .wp-block-button__link:hover{background:var(--red-dark);}
.entry-content .is-style-outline .wp-block-button__link{background:transparent;color:var(--ink);border:2px solid var(--ink);}
.entry-content blockquote,
.occasion-desc blockquote{border-left:3px solid var(--red);padding-left:18px;margin-left:0;color:var(--text-soft);font-style:italic;}
.entry-content .wp-block-quote__citation{color:var(--text-soft);font-size:13px;text-transform:uppercase;letter-spacing:.05em;}
.entry-content .wp-block-separator{border-top:2px solid var(--line);max-width:120px;}
.entry-content .wp-block-columns{gap:28px;}
.entry-content .wp-block-group{padding:24px;}
.entry-content .wp-block-group.has-background{border-radius:8px;}
.entry-content figure.wp-block-image{margin:0 0 20px;}
.entry-content figure.wp-block-image img{border-radius:6px;}
.entry-content figcaption{color:var(--text-soft);font-size:13px;text-align:center;margin-top:8px;}
.entry-content table{width:100%;border-collapse:collapse;}
.entry-content table th,.entry-content table td{border:1px solid var(--line);padding:10px 12px;text-align:left;}

/* Wide/full alignment breaks blocks out of the narrow content column */
.entry-content .alignwide{width:1120px;max-width:calc(100vw - 40px);margin-left:50%;transform:translateX(-50%);}
.entry-content .alignfull{width:100vw;margin-left:50%;transform:translateX(-50%);}
.entry-content .alignfull img{width:100%;}

/* NAP badge next to kilometerstand */
.nap-badge{height:20px;width:auto;vertical-align:middle;margin-left:4px;border-radius:2px;}
.nap-badge-sm{height:15px;}
.occasion-spec-val{display:inline-flex;align-items:center;flex-wrap:wrap;gap:2px;}


/* =====================================================================
   3.0 additions
   ===================================================================== */

/* ---- Page header: with header image, or on-brand stripes without one ---- */
.page-hero{padding:64px 0 48px;}
.page-hero .wrap{position:relative;z-index:1;}
.page-hero-intro{font-size:17px;}
.page-hero.has-image{padding:96px 0 64px;background-color:var(--ink);}
.page-hero.has-image h1{text-shadow:0 2px 18px rgba(0,0,0,.45);}
.page-hero:not(.has-image)::before,
.page-hero:not(.has-image)::after{content:"";position:absolute;top:-30%;height:160%;transform:skewX(-12deg);pointer-events:none;}
.page-hero:not(.has-image)::before{right:6%;width:22%;background:linear-gradient(90deg,var(--maroon) 0 55%,var(--red) 55% 80%,var(--ink) 80% 86%,transparent 86%);opacity:.9;}
.page-hero:not(.has-image)::after{right:-12%;width:30%;background:var(--steel);opacity:.1;}
@media (max-width:699px){
	.page-hero.has-image{padding:72px 0 44px;}
	.page-hero:not(.has-image)::before{right:-10%;width:30%;opacity:.55;}
}
@media (min-width:900px){
	.page-hero.has-image{padding:130px 0 80px;}
	.page-hero{padding:80px 0 60px;}
}

/* ---- Menu: drop-down for Diensten ---- */
.nav-desktop li{position:relative;}
.nav-desktop .menu-item-has-children>a:after{content:"";display:inline-block;margin-left:7px;width:6px;height:6px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-3px) rotate(45deg);}
.nav-desktop .sub-menu{display:none;position:absolute;top:100%;left:0;min-width:240px;flex-direction:column;background:#fff;border:1px solid var(--line);border-top:3px solid var(--red);box-shadow:0 14px 30px rgba(0,0,0,.12);border-radius:0 0 6px 6px;padding:6px 0;list-style:none;margin:0;z-index:60;}
.nav-desktop li:hover>.sub-menu,
.nav-desktop li:focus-within>.sub-menu{display:flex;}
.nav-desktop .sub-menu li{display:block;}
.nav-desktop .sub-menu a{display:block;padding:10px 18px;white-space:nowrap;border-radius:0;}
.nav-desktop .sub-menu a:hover{background:var(--tint);}
.mobile-menu .sub-menu{list-style:none;margin:0;padding:0;background:var(--tint);}
.mobile-menu .sub-menu a{padding:13px 20px 13px 38px;font-size:15px;text-transform:none;font-family:'Inter',sans-serif;font-weight:500;}

/* ---- Aanbod: filters ---- */
.aanbod-filters{background:#fff;border:1px solid var(--line);border-radius:8px;padding:16px;margin-bottom:18px;}
.aanbod-filters .aanbod-toolbar{margin:0;}
.aanbod-filter-toggle{display:inline-flex;align-items:center;gap:6px;}
.aanbod-filter-toggle .dashicons{font-size:16px;width:16px;height:16px;}
.aanbod-filter-fields{display:none;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line);}
.aanbod-filters.is-open .aanbod-filter-fields{display:grid;}
.filter-field{display:flex;flex-direction:column;gap:4px;min-width:0;}
.filter-field label{font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;font-size:12px;letter-spacing:.08em;color:var(--text-soft);}
.filter-field .text-input{width:100%;}
@media (min-width:760px){
	.aanbod-filter-fields{grid-template-columns:repeat(3,1fr);}
}
@media (min-width:1000px){
	.aanbod-filter-fields{display:grid;grid-template-columns:repeat(6,1fr);}
	.aanbod-filter-toggle{display:none;}
}
.chip-reset{background:#fbe9eb;border-color:#f3c9cf;color:var(--red-dark);}
.chip:hover{border-color:var(--ink);}
.no-results.panel{max-width:640px;}
.pagination{margin-top:34px;}
.pagination ul{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;list-style:none;margin:0;padding:0;}
.pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 14px;border:1px solid #ddd8d0;border-radius:4px;background:#fff;text-decoration:none;font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;font-size:14px;}
.pagination .page-numbers:hover{border-color:var(--ink);}
.pagination .page-numbers.current{background:var(--ink);color:#fff;border-color:var(--ink);}
.pagination .page-numbers.dots{border:0;background:none;}
.aanbod-seo h2{font-size:26px;font-style:italic;margin:30px 0 12px;}
.aanbod-seo h2:first-child{margin-top:0;}
.aanbod-seo ul{margin:0 0 18px;padding-left:0;list-style:none;display:grid;gap:8px;color:var(--text-soft);}
.aanbod-seo ul li{position:relative;padding-left:24px;}
.aanbod-seo ul li:before{content:"";position:absolute;left:0;top:.5em;width:12px;height:12px;border-radius:50%;background:var(--red);}
.aanbod-seo a,.entry-content a{color:var(--red-dark);}

/* ---- Car cards and detail ---- */
.car-media img{transition:transform .35s ease;}
.car-card:hover .car-media img{transform:scale(1.04);}
.check-list-cols{grid-template-columns:1fr;gap:10px 28px;margin-bottom:10px;}
@media (min-width:600px){.check-list-cols{grid-template-columns:1fr 1fr;}}
.occasion-cta{display:inline-flex;flex-wrap:wrap;gap:10px;}
@media (max-width:480px){
	.occasion-cta{display:flex;flex-direction:column;width:100%;}
	.occasion-cta .btn{width:100%;}
}

/* ---- Service pages: richer content ---- */
.dienst-layout .entry-content h2{font-size:28px;font-style:italic;margin:34px 0 10px;}
.dienst-layout .entry-content h2:first-child{margin-top:0;}
.dienst-aside{position:relative;}
@media (min-width:900px){.dienst-aside{position:sticky;top:130px;align-self:start;}}

.equip-group-title{font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;letter-spacing:.08em;font-size:14px;color:var(--red);margin:18px 0 10px;}
