/*
Plugin Name: DIGIFRESH Autovoorraad Manager
Plugin URI: https://www.digifresh.nl
Description: De DIGIFRESH voorraad plugin stelt autobedrijven in staat om hun actuele aanbod automatisch te tonen op hun WordPress site. Koppel eenvoudig jouw autovoorraad met diverse dealer management systemen. Neem contact op met DIGIFRESH voor jouw API-sleutel.
Version: 2.1.46
Author: DIGIFRESH
Author URI: https://www.digifresh.nl
License: Proprietary
*/

@import url("https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css");
/* body {
  font-family: "Plus Jakarta Sans", sans-serif;
} */

.h1 {
    color: #1e1e1e !important;
    text-decoration: none !important;
}

.h2 {
    color: #1e1e1e !important;
    text-decoration: none !important;
}

.h3 {
    text-decoration: none !important;
}

.h4 {
    color: #1e1e1e !important;
    text-decoration: none !important;
}


.dvo-small {
    font-size: 0.8em;
}

.dvo-merkmodel {
    font-size: 1.25rem;
    font-weight: 600;
    min-height: 50px;
}

.bg-lgrey {
    background-color:#E7E7E7;
}

.bg-blue {
     background-color:#2B4C8B;
}

.bg-green {
     background-color:#009958;
}

.bg-darkgreen {
    background-color:#004025;
}

.bg-darkgrey {
    background-color:#666666;
}
.text-white {
    color: #ffffff;
}
.text-green {
    color: #009958;
}
.text-red {
color:#ea242b;
}
.text-yellow {
color:#fad321;
}

.text-blue {
color:#033a51;
}

.dvo-h2 {
    font-size: 1.4em !important;
}

.dvo-h3 {
    font-size: 1.2rem;
}

a.dvo-gotodetail {
    text-decoration: none !important;
}

a.dvo-gotodetail2 {
    text-decoration: none !important;
}

.dvo-price {
    font-size: 1.2rem;
    font-weight: 600;
}

.dvo-leaseprice {
    font-size: 1.4rem;
}

.oneline {
    width: 100%;
    height: 20px;
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
    overflow: hidden;
    /* font-family: 'Noto Sans', sans-serif; */
    /* color: #ffffff !important; */
    font-weight: 300;
    font-size: 1rem;
}

.twoline {
    width: 100%;
    height: 60px;
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
    overflow: hidden;
    /* font-family: 'Noto Sans', sans-serif; */
    /* color: #ffffff !important; */
    font-weight: 300;
    font-size: 1rem;
}

.threeline {
    width: 100%;
    height: 60px;
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
    overflow: hidden;
    /* font-family: 'Noto Sans', sans-serif; */
    /* color: #ffffff !important; */
    font-weight: 300;
    font-size: 1rem;
}

.grecaptcha-badge {
    display: none !important;
}

/*** buttons ***/

.btn-dvo-primary {
    color: #ffffff;
    background-color: #2b4c8b;
    text-decoration: none;
    border-radius: 0;
    font-size: 1.1rem;
    padding: 10px 20px;
    cursor: pointer;
    opacity: 1;
    border-width: 2px;
    font-weight: 600 !important;
}

.btn-dvo-primary:hover {
    color: #970a0a;
    background-color: #ffffff;
    text-decoration: none;
    opacity: 1;
    font-weight: 600;
}

body .btn-dvo-secundairy {
    background-color: #970a0a ;
    border: 1px solid #970a0a ;
    border-radius: 5px;
    color: #ffffff;
    display: inline-block;
    font-size: 1rem;
    font-weight: 600 !important;
    padding: 10px 40px;
    text-align: center;
    transition: all .3s;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    white-space: nowrap;
}

body .btn-dvo-secundairy:hover {
    color: #970a0a;
    background-color: #ffffff;
    text-decoration: none;
    opacity: 1;
    font-weight: 600;
    border: 1px solid #970a0a;
}

.btn-dvo-secundairy {
    background-color: #970a0a ;
    border: 1px solid #970a0a ;
    border-radius: 5px;
    color: #ffffff;
    display: inline-block;
    font-size: 1rem;
    font-weight: 600;
    padding: .5rem 1rem;
    text-align: center;
    transition: all .3s;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    white-space: nowrap;
}

.btn-dvo-secundairy:hover {
    color: #ffffff;
    background-color:#546fa1;
    text-decoration: none;
    border:none;
}

.btn-dvo-facebookdelen {
    color: #4C67A1 !important;
    background-color: transparent;
    text-decoration: none !important;
    border-radius: 0px 10px 0px 10px;
    padding: 10px 20px;
    cursor: pointer;
    border: 1px solid #4C67A1;
}

.btn-dvo-facebookdelen:hover {
    color: #ffffff !important;
    background-color:#4C67A1;
    text-decoration: none;
}

input.reset, a.reset {
    text-decoration: none !important;
    color: #000000;
    opacity: 1;
    padding: 10px 40px;
}

input.reset:hover, a.reset:hover {
    text-decoration: none;
    color: #ffffff;
    opacity: 1;
    background-color: #000000;
}

button#dvo-contact-submit {
    /* color: #ffffff; */
    /* background-color: #009958; */
    text-decoration: none;
    font-size: 18px;
    padding: 10px 20px;
    /* border: none; */
    /* border-radius: 0px 10px 0px 10px; */
    opacity: 1;
    border-width: 2px;
}

button#dvo-contact-submit:hover {
    color: #ffffff;
    background-color: #004025;
    text-decoration: none;
    /* border-radius: 0px 10px 0px 10px; */
    font-size: 18px;
    padding: 10px 20px;
    opacity: 0.8;
}

.dvo-subtitle {
    /* color: #033a51 !important; */
    /* border-bottom: 1px solid #666666; */
    padding-bottom: 0;
    /* text-transform: uppercase; */
    font-size: 1.5rem;
}

.border-light {
    border-color: #666666!important;
}

/*** images ***/

.dvo-thumb-container {
    position: relative;
    overflow: hidden;
    /* max-height: 385px; */
}

img.list-thumb {
    width: 100%;
    object-fit: cover;
    /* max-height: 285px; */
    transition: 0.3s;
    /* min-height: 285px; */
    margin-bottom: 0 !important;
    border-top-left-radius: 10px !important;
    border-top-right-radius: 10px !important;
}

img.list-thumb2 {
    width: 100%;
    object-fit: cover;
    transition: 0.3s;
    /* min-height: 130px; */
}

img.list-thumb:hover {
transform: scale(1.05);
}

.img-dvo-thumbnail {
    padding: 0.5rem;
    background-color: #fff;
    border: 1px solid var(--bs-border-color);
    border-radius: 0.375rem;
    max-width: 100%;
    height: auto;
    max-width: 60px !important;
}

img#img-detail {
    width: 100%;
    height: auto;
    object-fit: cover;
}

.dvo-detail-thumb {
    margin: 1px;
    max-width: 120px;
    object-fit: contain;
}

/*** filter ***/

#filter .form-select {
    padding: 10px 10px;
    cursor: pointer;
}

/*** contactform ***/
span.label-text {
    padding-left: 5px;
}

.fs-20 {
    font-size: 1.2rem;
}
.no-under a {
    text-decoration: none !important;
}

a.no-under{
    text-decoration: none !important;
}


.icon-border {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 35px;
    height: 35px;
    border-radius: 3px;
    /* border: 2px solid #ffffff; */
    float: left;
    margin-top: -4px;
    margin-right: 5px;
    background-color: #ffffff;
}

#video-container #video-list .video .contain {
    height: 100% !important;
    width: 100% !important;
}

div#dvo-mail-messages {
    color: #009958;
    padding: 10px;
    margin-top: 5px;
    opacity: 1;
    font-weight: 600;
}
.dvo-help-block.with-errors {
    color: red;
    padding-left: 18px;
}

div#dvo-mail-messages2 {
    color: #009958;
    padding: 10px;
    margin-top: 5px;
    opacity: 1;
    font-weight: 600;
}

.dvo-help-block2.with-errors2 {
    color: red;
    padding-left: 18px;
}

div#dvo-mail-messages3 {
    color: #009958;
    padding: 10px;
    margin-top: 5px;
    opacity: 1;
    font-weight: 600;
}

.dvo-help-block3.with-errors3 {
    color: red;
    padding-left: 18px;
}

@media only screen and (max-width: 1600px) {

#dvo-occasions img.list-thumb {
    width: 100%;
    object-fit: cover;
    /* max-height: 250px !important; */
    transition: 0.3s;
    /* min-height: 250px !important; */
}
    
    img.list-thumb {
        width: 100%;
        object-fit: cover;
        /* max-height: 185px !important; */
        transition: 0.3s;
        /* min-height: 185px !important; */
        margin-bottom: 0 !important;
    }
    
    
}


@media only screen and (max-width: 1199px) {

img#img-detail {
    width: 100%;
    height: auto;
    object-fit: cover;
}
    
#dvo-occasions img.list-thumb {
    width: 100%;
    object-fit: cover;
    /* max-height: 185px !important; */
    transition: 0.3s;
    /* min-height: 185px !important; */
}
    
img.list-thumb {
    width: 100%;
    object-fit: cover;
    /* max-height: 185px; */
    transition: 0.3s;
    /* min-height: 185px; */
    margin-bottom: 0 !important;
}
    
}

@media only screen and (max-width: 768px) {
.dvo-detail-thumb {
    max-width: 119px;
}
    
img.list-thumb {
    width: 100%;
    object-fit: cover;
    /* max-height: 210px !important; */
    transition: 0.3s;
    /* min-height: 210px !important; */
    margin-bottom: 0 !important;
}
    
}


@media only screen and (max-width: 402px) {
.dvo-detail-thumb {
    max-width: 104px;
}
    
div#dvo-lijst-specs {
    font-size: 0.8rem !important;
    white-space: nowrap;
    overflow: hidden;
    display: inline-block;
    text-overflow: ellipsis;
}
    
    
}

iframe.embed-responsive-item {
    height: 100vh;
}

div#if-opmerkingen {
    overflow: hidden;
}

div#dvo-lijst-specs {
    font-size: 0.9rem;
    /* min-height: 50px; */
    float: left;
}

p.dvo-bel-text.text-white {
    font-size: 0.95rem;
}

a.dvo-gotodetailindex {
    text-decoration: none !important;
}

.hide {
  display: none;
}

.dvo-subtitle2 {
    font-size: 1.2rem;
}

.form-select {
    cursor: pointer;
    border-radius: 0;
}


#dvo-occasions img.list-thumb {
    width: 100%;
    object-fit: cover;
    /* max-height: 310px; */
    transition: 0.3s;
    /* min-height: 350px; */
}
.swiper-pagination.swiper-pagination-clickable.swiper-pagination-bullets.swiper-pagination-horizontal {
    display: none;
}
.dvo-aanvraagblok {
    background-color: #2B4C8B;
}

div#buttonone {
    cursor: pointer;
}

div#buttontwo {
    cursor: pointer;
}

div#buttonshowopties {
    cursor: pointer;
}

div#buttonhideopties {
    cursor: pointer;
}


div#buttonshowspecificaties {
    cursor: pointer;
}

div#buttonhidespecificaties {
    cursor: pointer;
}

div#buttonshowform {
    cursor: pointer;
}

div#buttonhideform {
    cursor: pointer;
}
.textshort {
    max-height: 125px;
    overflow: hidden;
}


.textlong {
    max-height: unset;
    overflow: unset;
}
a.dlink {
    display: inline-block;
    text-decoration: none !important;
}
a.dlink:hover {
    color: #bc242c;
}

a.dlinkbtn {
    display: inline-block;
    text-decoration: none !important;
    background-color: #bc242c;
    border-radius: 3px;
}
a.dlinkbtn:hover {
    background-color: #bc242c;

    opacity: 0.8;
}

.swiper-container.swiper-initialized.swiper-horizontal {
    overflow: hidden;
}

span.inlease__load {
    display: inline-block !important;
}

spam.fs-18 {
    font-size: 0.7em;
}

a.prijsid {
    text-decoration: none !important;
    color: #2B4C8B !important;
}

#buttonhideinformatie.form-wizard-btn {
    background-color: #ffffff !important;
    color: #000000 !important;
    text-align: center;
    border-radius: 99px;
    text-decoration: none;
    border: 1px solid #000000 !important;
    font-size: 1rem;
    padding: 15px 5px;
    font-weight: 400 !important;
    cursor: pointer;
}

#buttonshowinformatie.form-wizard-btn {
    background-color: #0cbc40;
    color: #ffffff;
    text-align: center;
    text-decoration: none;
    border: none;
    font-size: 1rem;
    padding: 15px 5px;
    font-weight: 400 !important;
    cursor: pointer;
}

#buttonhideinformatie.form-wizard-btn:hover {
    background-color: #EB7B00;
    text-decoration: none;
}

#buttonhideinruil.form-wizard-btn {
  background-color: #ffffff;
  color: #000000;
  text-align: center;
  border-radius: 99px;
  text-decoration: none;
  border: 1px solid #000000;
    border-top-color: rgb(0, 0, 0);
    border-right-color: rgb(0, 0, 0);
    border-bottom-color: rgb(0, 0, 0);
    border-left-color: rgb(0, 0, 0);
  font-size: 1rem;
  padding: 15px 5px;
  font-weight: 400 !important;
  cursor: pointer;
}

#buttonshowinruil.form-wizard-btn {
    background-color: #0cbc40;
    color: #ffffff;
    text-align: center;
    text-decoration: none;
    border: none;
    font-size: 1rem;
    padding: 15px 5px;
    font-weight: 400 !important;
    cursor: pointer;
}

#buttonhideinruil.form-wizard-btn:hover {
    background-color: #EB7B00;
    text-decoration: none;
}


#buttonhideoperationallease.form-wizard-btn {
    background-color: #666666;
    color: #ffffff;
    text-align: center;
    text-decoration: none;
    border: none;
    font-size: 1rem;
    padding: 15px 5px;
    font-weight: 400 !important;
    cursor: pointer;
}

#buttonshowoperationallease.form-wizard-btn {
    background-color: #0cbc40;
    color: #ffffff;
    text-align: center;
    text-decoration: none;
    border: none;
    font-size: 1rem;
    padding: 15px 5px;
    font-weight: 400 !important;
    cursor: pointer;
}

#buttonhideoperationallease.form-wizard-btn:hover {
    background-color: #EB7B00;
    text-decoration: none;
}


#buttonhideautoverzekering.form-wizard-btn {
    background-color: #666666;
    color: #ffffff;
    text-align: center;
    text-decoration: none;
    border: none;
    font-size: 1rem;
    padding: 15px 5px;
    font-weight: 400 !important;
    cursor: pointer;
}

#buttonshowautoverzekering.form-wizard-btn {
    background-color: #EB7B00;
    color: #ffffff;
    text-align: center;
    text-decoration: none;
    border: none;
    font-size: 1rem;
    padding: 15px 5px;
    font-weight: 400 !important;
    cursor: pointer;
}

#buttonhideautoverzekering.form-wizard-btn:hover {
    background-color: #EB7B00;
    text-decoration: none;
}

#buttonhidefinanciering.form-wizard-btn {
    background-color: #666666;
    color: #ffffff;
    text-align: center;
    text-decoration: none;
    border: none;
    font-size: 1rem;
    padding: 15px 5px;
    font-weight: 400 !important;
    cursor: pointer;
}

#buttonshowfinanciering.form-wizard-btn {
    background-color: #0cbc40;
    color: #ffffff;
    text-align: center;
    text-decoration: none;
    border: none;
    font-size: 1rem;
    padding: 15px 5px;
    font-weight: 400 !important;
    cursor: pointer;
}

#buttonhidefinanciering.form-wizard-btn:hover {
    background-color: #EB7B00;
    text-decoration: none;
}

#buttonhidefinanciallease.form-wizard-btn {
    background-color: #666666;
    color: #ffffff;
    text-align: center;
    text-decoration: none;
    border: none;
    font-size: 1rem;
    padding: 15px 5px;
    font-weight: 400 !important;
    cursor: pointer;
}

#buttonshowfinanciallease.form-wizard-btn {
    background-color: #0cbc40;
    color: #ffffff;
    text-align: center;
    text-decoration: none;
    border: none;
    font-size: 1rem;
    padding: 15px 5px;
    font-weight: 400 !important;
    cursor: pointer;
}

#buttonhidefinanciallease.form-wizard-btn:hover {
    background-color: #EB7B00;
    text-decoration: none;
}

div#infblok {
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    margin-top: 15px;
    text-align: center;
    color: #ffffff;
    padding: 10px;
    margin-bottom: 15px;
    font-weight: 600;
}

.bg-orange {
    background-color: #EB7B00;
}

div#zl-full {
    background-color: #f3f4f4;
    padding: 20px;
    border-radius: 10px;
    border: 1px solid #cccccc;
}


.bg-lightgrey {
    background-color: #999999;
}

.hide-part{
    display: none;
}
.show-part{
    display: block;
}

.pre-wrap {
    white-space: pre-wrap;
}

b, strong {
    font-weight: bolder;
}

img.dvo-thumb-op.img-fluid {
    width: 20px;
    height: 20px;
    object-fit: cover;
    border-radius: 55px;
    margin-left: 5px;
}

.carousel-gallery .swiper-slide {
    /* max-height: 100px !important; */
    /* width: auto !important; */
    /* overflow: hidden; */
}
div#tabelspecificaties {
    display: flex;
    min-height: 60px;
}


.dvo-pagination {
  margin: 24px 0;
}

.dvo-pagination ul {
  display: flex;
  gap: 10px;
  justify-content: center;
  align-items: center;
  list-style: none;
  margin: 0;
  padding: 0;
}

.dvo-pagination li a {
  display: inline-flex;
    color:#000000;
  min-width: 38px;
  height: 38px;
  padding: 0 12px;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  border: 1px solid rgba(0,0,0,.15);
  text-decoration: none;
}

.dvo-pagination li a:hover {
  color:#ffffff;
  background-color: #10425d;
  border: 1px solid #10425d;
}

.dvo-pagination li.is-active a {
    font-weight: 700;
    background-color: #10425d;
    color: #ffffff;
    border: 1px solid #10425d;
}

.dvo-pagination li.is-disabled a {
  pointer-events: none;
  opacity: .4;
}

.dvo-pagination li.is-ellipsis {
  padding: 0 6px;
  opacity: .6;
}


@media only screen and (min-width: 769px) {
.blk-mobile-1 {
    display: none;
}
.blk-mobile-2 {
    display: block;
}
}


.nav-tabs .nav-link:hover {
    background-color: #852023;
}


.nav-link h3 {
    margin: 0;
    font-size: 1.5rem;
}

.nav-link h3:hover {
    color:#ffffff !important;
}

.df-alternatives {
    margin-top: 60px;
}

.df-alternatives h2 {
    margin-bottom: 20px;
}

.df-alternatives-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    gap: 20px;
}

h2.txtoev {
    font-size: 1.2rem !important;
}
span.smallfont {
    font-size: 0.9rem;
}

@media only screen and (max-width: 768px) {
}


@media only screen and (max-width: 480px){
}

.df-seo-voorraad h2 {
    font-size: 1.1rem !important;
}

.df-seo-voorraad p
 {
    font-size: 1rem !important;
}

/* ---- DFV: 'Toon resultaten' apply-button (filters) ---- */
.dfv-apply-wrap{
  margin-top: 12px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.dfv-apply-btn{
  width: 100%;
  padding: 12px 14px;
  border-radius: 10px;
  border: 1px solid rgba(0,0,0,.12);
  font-weight: 600;
  cursor: pointer;
  transition: opacity .2s ease, transform .05s ease;
}

.dfv-apply-btn:active{
  transform: scale(0.99);
}

.dfv-apply-btn[disabled]{
  opacity: .55;
  cursor: not-allowed;
}

.dfv-apply-btn.is-loading{
  opacity: .8;
}

.dfv-apply-meta{
  font-size: 12px;
  opacity: .8;
}

/* Sticky CTA op mobiel */
@media (max-width: 768px){
  .dfv-apply-wrap{
    position: sticky;
    bottom: 10px;
    z-index: 25;
  }
}


/* DFV: Actieknoppen naast elkaar (Toon resultaten + Wis) */
.dfv-actions .dfv-apply-wrap.dfv-apply-inline{
  display:flex;
  gap:10px;
  align-items:stretch;
}
.dfv-actions .dfv-apply-btn,
.dfv-actions a.reset.dfv-wis-btn{
  flex:1 1 0;
  width:100% !important;
}

/* Zorg dat de meta-tekst netjes onder de knoppen komt */
.dfv-actions .dfv-apply-meta{
  margin-top:8px;
  font-size:13px;
  opacity:.85;
}

/* Sticky uit (knop blijft gewoon zichtbaar bij Wis) */
.dfv-apply-wrap.is-sticky{
  position:static !important;
  bottom:auto !important;
  left:auto !important;
  right:auto !important;
  box-shadow:none !important;
}

button.dvo-fav-toggle {
    border: none;
    background-color: #333333b8 !important;
    border-radius: 99px;
    width: 40px;
    height: 40px;
    display: inline-flex;
    align-items: center;


    justify-content: center;
    position: absolute;
    top: 10px;
    right: 10px;
    left: auto;
    margin: 0;
    z-index: 5;
    cursor: pointer;
}

i.fa-regular.fa-heart {
    color: #ffffff;
}

button.dvo-fav-toggle.is-active {
    background-color: #ff0000b8 !important;
}

i.fa-heart.fa-solid {
    color: #ffffff;
}

.dvo-fav-underfilter i.fa-regular.fa-heart {
    color: #eb2424;
}

.dvo-fav-underfilter a.dvo-fav-button {
    background-color: #ffffff;
    border: 1px solid #000000;
    border-radius: 5px;
    color: #000000;
    display: inline-block;
    font-size: 1rem;
    font-weight: 600;
    padding: 5px 20px;
    text-align: center;
    transition: all .3s;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    white-space: nowrap;
    margin-bottom: 10px;
}

.dvo-fav-underfilter a.dvo-fav-button:hover {
    background-color: #ffffff;
    border: 1px solid #eb2424;
}

.dfv-cta-tabs {
    margin-top: 30px;
}

.dfv-cta-tab-buttons {
    display: flex;
    gap: 10px;
    margin-bottom: 20px;
}

.dfv-cta-tab-buttons button.active {
    background-color: #2B4C8B;
    color: #ffffff;
}

.dfv-cta-tab {
    display: none;
}

.dfv-cta-tab.active {
    display: block;
}

.dfv-form-message {
    margin-top: 10px;
    color: #009958;
    font-weight: 600;
}


/* === Contact infoblok onder formulier (detailpagina) === */
.dvo-contact-infobox
 {
    margin-top: 20px;
    background-color: var(--dvo-contactblok-bg, #000000);
    color: #ffffff;
    border-radius: 10px;
    padding: 15px;
}

.dvo-contact-infobox-inner {
    display: flex;
    align-items: center;
    gap: 15px;
}

.dvo-contact-image img {
    width: 145px;
    height: 50px;
    object-fit: contain;
}

.dvo-contact-text {
    font-size: 1.1rem;
    line-height: 1.4;
}

.dvo-contact-text a {
    color: #000000;
    font-weight: 600;
    text-decoration: underline;
}

@media (max-width: 768px) {
    .dvo-contact-infobox-inner {
        flex-direction: column;
        text-align: center;
    }
}

/* status dot basis */
.dvo-status-dot{
  display: inline-block;          /* belangrijk voor zichtbaar pulsen */
  vertical-align: middle;
  margin-right: 6px;
  font-size: 0.7em;
  transform-origin: center;
}

/* offline: grijs, GEEN animatie */
.dvo-status-dot.is-offline{
  color: #888888 !important;
  animation: none !important;
}

/* online: groen, WEL animatie */
.dvo-status-dot.is-online{
  color: #00c853 !important;
  animation: dvo-pulse 1.4s infinite ease-in-out !important;
}


@keyframes dvo-pulse {
    0%   { transform: scale(1);   opacity: 1; }
    50%  { transform: scale(1.5); opacity: 0.6; }
    100% { transform: scale(1);   opacity: 1; }
}

/* FIX: thumbs niet laten "flitsen" groot worden vóór Swiper init */
.carousel-gallery .swiper-container{
  overflow: hidden; /* niet pas na .swiper-initialized */
}

.carousel-gallery .swiper-wrapper{
  display: flex;     /* vóór Swiper init al netjes op rij */
  gap: 1px;
}

.carousel-gallery .swiper-slide{
  flex: 0 0 auto;
  max-width: 120px;  /* houd dezelfde thumb-breedte aan */
  overflow: hidden;
}

.carousel-gallery img.dvo-thumbx{
  display: block;
  width: 100%;
  max-width: 120px;
  height: auto;
  object-fit: cover;
}


/* === DF Index slider: full-width continuous carousel + grotere kaarten === */
.df-index-slider-wrap,
.dfv-index-slider-outer,
.dfv-index-slider-wrap {
  position: relative !important;
  width: 100vw !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: calc(50% - 50vw) !important;
  overflow: hidden !important;
}

.df-index-slider,
.dfv-index-slider {
  overflow: hidden !important;
  padding: 0 0 38px 0 !important;
  width: 100% !important;
}

.df-index-slider .swiper-wrapper,
.dfv-index-slider .swiper-wrapper {
  display: flex !important;
  align-items: stretch !important;
}

.df-index-slider .swiper-slide,
.df-index-slide,
.dfv-index-slider .swiper-slide,
.dfv-index-slider-slide {
  width: 410px !important;
  max-width: 410px !important;
  flex: 0 0 410px !important;
  height: auto !important;
  display: flex !important;
}

.df-index-slide > .col-md-12,
.dfv-index-slider-slide > .col-md-12,
.df-index-slide #cardbox,
.dfv-index-slider-slide #cardbox,
.df-index-slider .swiper-slide #cardbox,
.dfv-index-slider .swiper-slide #cardbox {
  width: 100% !important;
  max-width: 410px !important;
  height: 100% !important;
  margin: 0 auto !important;
}

.df-index-slide #cardbox,
.dfv-index-slider-slide #cardbox,
.df-index-slider .swiper-slide #cardbox,
.dfv-index-slider .swiper-slide #cardbox {
  border-radius: 14px !important;
  overflow: hidden !important;
  box-shadow: 0 12px 34px rgba(0,0,0,.12) !important;
  background: #fff !important;
}

.df-index-slide img.list-thumb, .dfv-index-slider-slide img.list-thumb, .df-index-slider .swiper-slide img.list-thumb, .dfv-index-slider .swiper-slide img.list-thumb {
    /* width: 100% !important; */
    /* height: 270px !important; */
    /* min-height: 270px !important; */
    /* max-height: 270px !important; */
    /* object-fit: cover !important; */
    /* aspect-ratio: auto !important; */
}

.df-index-slide .p-4,
.dfv-index-slider-slide .p-4,
.df-index-slider .swiper-slide .p-4,
.dfv-index-slider .swiper-slide .p-4 {
  padding: 22px !important;
}

.df-index-slide .dvo-merkmodel,
.dfv-index-slider-slide .dvo-merkmodel,
.df-index-slider .swiper-slide .dvo-merkmodel,
.dfv-index-slider .swiper-slide .dvo-merkmodel {
  font-size: 1.25rem !important;
  line-height: 1.25 !important;
  min-height: 62px !important;
}

.df-index-slider-prev,
.df-index-slider-next,
.dfv-index-slider-prev,
.dfv-index-slider-next,
.df-index-slider-pagination,
.dfv-index-slider-pagination {
  display: none !important;
}

@media (max-width: 768px) {
  .df-index-slider .swiper-slide,
  .df-index-slide,
  .dfv-index-slider .swiper-slide,
  .dfv-index-slider-slide {
    width: 315px !important;
    max-width: 315px !important;
    flex-basis: 315px !important;
  }

  .df-index-slide > .col-md-12,
  .dfv-index-slider-slide > .col-md-12,
  .df-index-slide #cardbox,
  .dfv-index-slider-slide #cardbox,
  .df-index-slider .swiper-slide #cardbox,
  .dfv-index-slider .swiper-slide #cardbox {
    max-width: 315px !important;
  }

  .df-index-slide img.list-thumb,
  .dfv-index-slider-slide img.list-thumb,
  .df-index-slider .swiper-slide img.list-thumb,
  .dfv-index-slider .swiper-slide img.list-thumb {
    height: 205px !important;
    min-height: 205px !important;
    max-height: 205px !important;
  }
}


/* === Veritas-style dynamische voorraad ticker === */
.df-ticker-slider {
  font-size: var(--df-ticker-font-size, 16px) !important;
  font-weight: var(--df-ticker-font-weight, 400) !important;
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  overflow: hidden;
  background: var(--df-ticker-bg, #111111);
  color: var(--df-ticker-color, #e30613);
  white-space: nowrap;
  position: relative;
  z-index: 1;
  padding: 14px 0;
}

.df-ticker-track {
  display: inline-flex;
  align-items: center;
  gap: 48px;
  min-width: max-content;
  animation: dfTickerMarquee var(--df-ticker-speed, 28s) linear infinite;
  will-change: transform;
}

.df-ticker-slider:hover .df-ticker-track {
  animation-play-state: paused;
}

.df-ticker-item {
    font-size: var(--df-ticker-font-size, 16px) !important;
    font-weight: var(--df-ticker-font-weight, 400) !important;
    display: inline-flex;
    align-items: center;
    line-height: 1;
    /* letter-spacing: .01em; */
    color: var(--df-ticker-color, #e30613);
}

.df-ticker-logo,
.df-ticker-dot {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
}

.df-ticker-logo img {
  width: 34px;
  height: 34px;
  object-fit: contain;
  display: block;
}

.df-ticker-dot {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: 2px solid var(--df-ticker-color, #e30613);
  opacity: .9;
}

@keyframes dfTickerMarquee {
  from { transform: translateX(0); }
  to { transform: translateX(-33.333%); }
}

@media only screen and (max-width: 768px) {
  .df-ticker-slider { padding: 11px 0; }
  .df-ticker-track { gap: 28px; }
  .df-ticker-logo img { width: 28px; height: 28px; }
  .df-ticker-dot { width: 26px; height: 26px; }
}


/* === DF HERSTEL 2026-05: ticker + nieuw-binnen slider + promo kaart === */
html,
body {
  max-width: 100% !important;
  overflow-x: hidden !important;
}

/* Nieuw binnen slider: links in container, rechts tot schermrand, zonder pagina-overflow */
.df-index-slider-wrap,
.dfv-index-slider-outer,
.dfv-index-slider-wrap {
  position: relative !important;
  width: calc(100vw - var(--slider-offset, 0px)) !important;
  max-width: calc(100vw - var(--slider-offset, 0px)) !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  overflow: hidden !important;
}

.df-index-slider,
.dfv-index-slider {
  overflow: visible !important;
  padding: 0 0 38px 0 !important;
  width: 100% !important;
}

.df-index-slider .swiper-wrapper,
.dfv-index-slider .swiper-wrapper {
  display: flex !important;
  align-items: stretch !important;
}

.df-index-slider .swiper-slide,
.df-index-slide,
.dfv-index-slider .swiper-slide,
.dfv-index-slider-slide {
  width: 410px !important;
  max-width: 410px !important;
  flex: 0 0 410px !important;
  height: auto !important;
  display: flex !important;
  box-sizing: border-box !important;
}

.df-index-slide > .col-md-12,
.dfv-index-slider-slide > .col-md-12,
.df-index-slide #cardbox,
.dfv-index-slider-slide #cardbox,
.df-index-slider .swiper-slide #cardbox,
.dfv-index-slider .swiper-slide #cardbox {
  width: 100% !important;
  max-width: 410px !important;
  height: 100% !important;
  margin: 0 auto !important;
}

.df-index-slider .swiper-slide:not(.df-index-promo-slide) #cardbox,
.dfv-index-slider .swiper-slide:not(.df-index-promo-slide) #cardbox {
  min-height: 100% !important;
}

.df-index-slide #cardbox,
.dfv-index-slider-slide #cardbox,
.df-index-slider .swiper-slide #cardbox,
.dfv-index-slider .swiper-slide #cardbox {
  border-radius: 14px !important;
  overflow: hidden !important;
  box-shadow: 0 12px 34px rgba(0,0,0,.12) !important;
  background: #fff !important;
}

.df-index-slide img.list-thumb, .dfv-index-slider-slide img.list-thumb, .df-index-slider .swiper-slide img.list-thumb, .dfv-index-slider .swiper-slide img.list-thumb {
    /* width: 100% !important; */
    /* height: 270px !important; */
    /* min-height: 270px !important; */
    /* max-height: 270px !important; */
    /* object-fit: cover !important; */
    /* aspect-ratio: auto !important; */
}

/* Rechter fade/verloop over laatste zichtbare voertuigkaart */
.df-index-promo-card::after, .df-extra-card::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background: linear-gradient(to top, rgb(0 0 0 / 22%) 0%, rgb(0 0 0 / 15%) 45%, rgba(0, 0, 0, .10) 100%);
}

/* Extra afbeeldingkaart tussen voertuigen */
.df-index-promo-slide {
  height: auto !important;
  display: flex !important;
  align-items: stretch !important;
}

.df-index-promo-card,
.df-extra-card {
  position: relative !important;
  width: 100% !important;
  max-width: 410px !important;
  min-height: 100% !important;
  overflow: hidden !important;
  border-radius: 14px !important;
  background: #111 !important;
  box-shadow: 0 12px 34px rgba(0,0,0,.12) !important;
}

.df-index-promo-image,
.df-extra-card img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  object-fit: cover !important;
  transition: transform .45s ease;
}

.df-index-promo-card:hover .df-index-promo-image,
.df-extra-card:hover img {
  transform: scale(1.05);
}

.df-index-promo-card::after,
.df-extra-card::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
}

.df-index-promo-overlay,
.df-extra-content {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  z-index: 2 !important;
  padding: 26px !important;
  color: #fff !important;
}

.df-index-promo-title,
.df-extra-title {
  color: #fff !important;
  font-size: 28px !important;
  font-weight: 700 !important;
  line-height: 1.12 !important;
  margin: 0 0 8px 0 !important;
}

.df-index-promo-text,
.df-extra-text {
  color: rgba(255,255,255,.92) !important;
  font-size: 16px !important;
  line-height: 1.45 !important;
  margin: 0 !important;
}

/* Veritas ticker: blijft full width, maar veroorzaakt geen layout overflow */
.df-ticker-slider {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  overflow: hidden !important;
  background: var(--df-ticker-bg, #111111) !important;
  color: var(--df-ticker-color, #e30613) !important;
  white-space: nowrap !important;
  position: relative !important;
  z-index: 1 !important;
  padding: 14px 0 !important;
}

.df-ticker-track {
  display: inline-flex !important;
  align-items: center !important;
  gap: 48px !important;
  min-width: max-content !important;
  animation: dfTickerMarquee var(--df-ticker-speed, 28s) linear infinite !important;
  will-change: transform !important;
}

@media (max-width: 768px) {
  .df-index-slider .swiper-slide,
  .df-index-slide,
  .dfv-index-slider .swiper-slide,
  .dfv-index-slider-slide {
    width: 315px !important;
    max-width: 315px !important;
    flex-basis: 315px !important;
  }
  .df-index-slide > .col-md-12,
  .dfv-index-slider-slide > .col-md-12,
  .df-index-slide #cardbox,
  .dfv-index-slider-slide #cardbox,
  .df-index-slider .swiper-slide #cardbox,
  .dfv-index-slider .swiper-slide #cardbox,
  .df-index-promo-card,
  .df-extra-card {
    max-width: 315px !important;
  }
  .df-index-slide img.list-thumb,
  .dfv-index-slider-slide img.list-thumb,
  .df-index-slider .swiper-slide img.list-thumb,
  .dfv-index-slider .swiper-slide img.list-thumb {
    height: 205px !important;
    min-height: 205px !important;
    max-height: 205px !important;
  }
  .df-index-slider-wrap::after,
  .dfv-index-slider-outer::after,
  .dfv-index-slider-wrap::after {
    width: 120px;
  }
  .df-index-promo-title,
  .df-extra-title {
    font-size: 22px !important;
  }
  .df-index-promo-text,
  .df-extra-text {
    font-size: 14px !important;
  }
}


/* =========================================================
   DF EINDHERSTEL 2026-05-02
   Alleen: nieuw-binnen slider overflow, promo overlay, rechter fade,
   en Veritas/Dynamische voorraad ticker opmaak.
   ========================================================= */
html,
body {
  max-width: 100% !important;
  overflow-x: hidden !important;
}

/* Nieuw-binnen slider: links blijft in container, rechts loopt tot schermrand zonder pagina-overflow */
.df-index-slider-wrap,
.dfv-index-slider-outer,
.dfv-index-slider-wrap {
  position: relative !important;
  width: calc(100vw - var(--slider-offset, 0px)) !important;
  max-width: calc(100vw - var(--slider-offset, 0px)) !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

.df-index-slider,
.dfv-index-slider {
  width: 100% !important;
  max-width: 100% !important;
  overflow: hidden !important;
  padding: 0 0 38px 0 !important;
  box-sizing: border-box !important;
}

.df-index-slider .swiper-wrapper,
.dfv-index-slider .swiper-wrapper {
  display: flex !important;
  align-items: flex-start !important;
}

.df-index-slider .swiper-slide,
.dfv-index-slider .swiper-slide,
.df-index-slide,
.dfv-index-slider-slide {
  width: 410px !important;
  max-width: 410px !important;
  flex: 0 0 410px !important;
  height: auto !important;
  align-self: flex-start !important;
  display: flex !important;
  box-sizing: border-box !important;
  background: transparent !important;
}

.df-index-slider .swiper-slide:not(.df-index-promo-slide) #cardbox,
.dfv-index-slider .swiper-slide:not(.df-index-promo-slide) #cardbox,
.df-index-slide:not(.df-index-promo-slide) #cardbox,
.dfv-index-slider-slide:not(.df-index-promo-slide) #cardbox {
  width: 100% !important;
  max-width: 410px !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 auto !important;
  overflow: hidden !important;
  border-radius: 14px !important;
  background: #111111 !important;
  box-shadow: 0 12px 34px rgba(0,0,0,.12) !important;
}

df-index-slider .swiper-slide img.list-thumb, .dfv-index-slider .swiper-slide img.list-thumb, .df-index-slide img.list-thumb, .dfv-index-slider-slide img.list-thumb {
    /* width: 100% !important; */
    /* height: 270px !important; */
    /* min-height: 270px !important; */
    /* max-height: 270px !important; */
    /* object-fit: cover !important; */
    /* display: block !important; */
}

/* Promo/extra afbeeldingkaart: tekst IN de afbeelding, geen witte strook */
.df-index-promo-slide {
  width: 410px !important;
  max-width: 410px !important;
  flex: 0 0 410px !important;
  height: auto !important;
  align-self: flex-start !important;
  display: flex !important;
  background: transparent !important;
}

.df-index-promo-card,
.df-index-promo-slide #cardbox {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  max-width: 410px !important;
  height: var(--df-promo-card-height, 560px) !important;
  min-height: var(--df-promo-card-height, 560px) !important;
  max-height: var(--df-promo-card-height, 560px) !important;
  margin: 0 auto !important;
  padding: 0 !important;
  overflow: hidden !important;
  border-radius: 14px !important;
  background: #111111 !important;
  box-shadow: 0 12px 34px rgba(0,0,0,.12) !important;
}

.df-index-promo-image,
.df-index-promo-card > img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  max-height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  z-index: 1 !important;
}

.df-index-promo-overlay {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    z-index: 3 !important;
    display: block !important;
    padding: 78px 24px 316px 24px !important;
    color: #ffffff !important;
    pointer-events: none !important;
}

.df-index-promo-title,
.df-index-promo-text {
  position: relative !important;
  z-index: 4 !important;
  color: #ffffff !important;
  text-shadow: 0 2px 14px rgba(0,0,0,.65) !important;
}

.df-index-promo-title {
  font-size: 26px !important;
  line-height: 1.15 !important;
  font-weight: 700 !important;
  margin: 0 0 8px 0 !important;
}

.df-index-promo-text {
  font-size: 24px !important;
  line-height: 1.45 !important;
  font-weight: 500 !important;
  margin: 0 !important;
}

/* Rechter verloop/fade over de laatste zichtbare voertuigkaart */
.df-index-slider-wrap::after,
.dfv-index-slider-outer::after,
.dfv-index-slider-wrap::after {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  width: 260px !important;
  height: 100% !important;
  pointer-events: none !important;
  z-index: 30 !important;
  background: linear-gradient(to right, rgba(0,0,0,0) 0%, rgba(0,0,0,.55) 62%, rgba(0,0,0,1) 100%) !important;
}

/* Dynamische voorraad ticker: compacte Veritas-style marquee, geen enorme logo's */
.df-ticker-slider {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  overflow: hidden !important;
  background: var(--df-ticker-bg, #111111) !important;
  color: var(--df-ticker-color, #e30613) !important;
  padding: 13px 0 !important;
  min-height: 54px !important;
  line-height: 1 !important;
  position: relative !important;
  z-index: 20 !important;
  white-space: nowrap !important;
  box-sizing: border-box !important;
}

.df-ticker-track {
  display: inline-flex !important;
  align-items: center !important;
  gap: 44px !important;
  width: max-content !important;
  min-width: max-content !important;
  white-space: nowrap !important;
  animation: dfTickerMarquee var(--df-ticker-speed, 28s) linear infinite !important;
  will-change: transform !important;
}

.df-ticker-item {
  display: inline-flex !important;
  align-items: center !important;
  flex: 0 0 auto !important;
  line-height: 1 !important;
  color: var(--df-ticker-color, #e30613) !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: var(--df-ticker-font-size, 1.2rem) !important;
font-weight: var(--df-ticker-font-weight, 500) !important;
}

.df-ticker-logo {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 34px !important;
    width: 150px !important;
    height: 150px !important;
    max-width: 150px !important;
    max-height: 150px !important;
    /* overflow: hidden !important; */
    border-radius: 50% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.df-ticker-logo img, .df-ticker-slider .df-ticker-logo img
 {
    width: 60px !important;
    height: 60px !important;
    max-width: 60px !important;
    max-height: 60px !important;
    min-width: 0 !important;
    min-height: 0 !important;
    object-fit: contain !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
}

.df-ticker-dot {
  display: inline-block !important;
  flex: 0 0 32px !important;
  width: 32px !important;
  height: 32px !important;
  max-width: 32px !important;
  max-height: 32px !important;
  border-radius: 50% !important;
  border: 2px solid var(--df-ticker-color, #e30613) !important;
  opacity: .9 !important;
}

@keyframes dfTickerMarquee {
  from { transform: translateX(0); }
  to { transform: translateX(-33.333%); }
}

@media (max-width: 768px) {
  .df-index-slider .swiper-slide,
  .dfv-index-slider .swiper-slide,
  .df-index-slide,
  .dfv-index-slider-slide,
  .df-index-promo-slide {
    width: 315px !important;
    max-width: 315px !important;
    flex-basis: 315px !important;
  }

  .df-index-slider .swiper-slide:not(.df-index-promo-slide) #cardbox,
  .dfv-index-slider .swiper-slide:not(.df-index-promo-slide) #cardbox,
  .df-index-promo-card,
  .df-index-promo-slide #cardbox {
    max-width: 315px !important;
  }

  .df-index-slider .swiper-slide img.list-thumb,
  .dfv-index-slider .swiper-slide img.list-thumb,
  .df-index-slide img.list-thumb,
  .dfv-index-slider-slide img.list-thumb {
    height: 205px !important;
    min-height: 205px !important;
    max-height: 205px !important;
  }

  .df-index-promo-card,
  .df-index-promo-slide #cardbox {
    height: var(--df-promo-card-height, 500px) !important;
    min-height: var(--df-promo-card-height, 500px) !important;
    max-height: var(--df-promo-card-height, 500px) !important;
  }

  .df-index-slider-wrap::after,
  .dfv-index-slider-outer::after,
  .dfv-index-slider-wrap::after {
    width: 130px !important;
  }

  .df-index-promo-title { font-size: 22px !important; }
  .df-ticker-slider { min-height: 48px !important; padding: 11px 0 !important; }
  .df-ticker-track { gap: 28px !important; }
  .df-ticker-logo,
  .df-ticker-logo img { width: 28px !important; height: 28px !important; max-width: 28px !important; max-height: 28px !important; }
  .df-ticker-dot { width: 26px !important; height: 26px !important; max-width: 26px !important; max-height: 26px !important; }
}

/* === DFV detailpagina: moderne afbeelding-slider + formulier popups === */
.dfv-detail-gallery {
    position: relative;
    width: 100%;
}

.dfv-detail-main-swiper {
    position: relative;
    overflow: hidden;
    border-radius: 18px;
    background: #111111;
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.14);
}

.dfv-detail-main-swiper .swiper-slide {
    height: auto;
}

.dfv-detail-main-img {
    display: block;
    width: 100%;
    height: clamp(320px, 48vw, 620px);
    object-fit: cover;
    transition: transform .45s ease;
}

.dfv-detail-main-swiper a:hover .dfv-detail-main-img {
    transform: scale(1.025);
}

.dfv-detail-slider-btn {
    position: absolute;
    top: 50%;
    z-index: 10;
    width: 46px;
    height: 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transform: translateY(-50%);
    border: 0;
    border-radius: 99px;
    background: rgba(255, 255, 255, 0.92);
    color: #111111;
    cursor: pointer;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.18);
    transition: transform .2s ease, background-color .2s ease;
}

.dfv-detail-slider-btn:hover {
    background: #ffffff;
    transform: translateY(-50%) scale(1.06);
}

.dfv-detail-slider-prev {
    left: 16px;
}

.dfv-detail-slider-next {
    right: 16px;
}

.dfv-detail-main-pagination {
    bottom: 14px !important;
}

.dfv-detail-main-pagination .swiper-pagination-bullet {
    width: 9px;
    height: 9px;
    background: #ffffff;
    opacity: .65;
}

.dfv-detail-main-pagination .swiper-pagination-bullet-active {
    opacity: 1;
}

.dfv-detail-thumbs-swiper {
    margin-top: 14px;
    overflow: hidden;
}

.dfv-detail-thumbs-swiper .swiper-slide {
    width: 112px;
    height: 76px;
    opacity: .55;
    cursor: pointer;
    border-radius: 12px;
    overflow: hidden;
    border: 2px solid transparent;
    transition: opacity .2s ease, border-color .2s ease, transform .2s ease;
}

.dfv-detail-thumbs-swiper .swiper-slide-thumb-active,
.dfv-detail-thumbs-swiper .swiper-slide:hover {
    opacity: 1;
    border-color: #111111;
    transform: translateY(-1px);
}

.dfv-detail-thumb-img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.dfv-modal-backdrop {
    position: fixed;
    inset: 0;
    z-index: 9998;
    display: none;
    background: rgba(0, 0, 0, 0.62);
    backdrop-filter: blur(4px);
}

body.dfv-modal-open {
    overflow: hidden;
}

body.dfv-modal-open .dfv-modal-backdrop {
    display: block;
}

#informatieblok.dfv-form-modal,
#inruilblok.dfv-form-modal,
#financieringblok.dfv-form-modal,
#financialleaseblok.dfv-form-modal {
    position: fixed !important;
    top: 50% !important;
    left: 50% !important;
    z-index: 9999 !important;
    display: none !important;
    width: min(920px, calc(100vw - 28px)) !important;
    max-height: calc(100vh - 36px) !important;
    margin: 0 !important;
    padding: 28px !important;
    overflow: auto !important;
    transform: translate(-50%, -50%) !important;
    border-radius: 18px !important;
    background: #ffffff !important;
    box-shadow: 0 24px 80px rgba(0, 0, 0, 0.32) !important;
}

#informatieblok.dfv-form-modal.dfv-modal-active,
#inruilblok.dfv-form-modal.dfv-modal-active,
#financieringblok.dfv-form-modal.dfv-modal-active,
#financialleaseblok.dfv-form-modal.dfv-modal-active {
    display: block !important;
}

.dfv-modal-close {
    position: sticky;
    top: 0;
    z-index: 2;
    float: right;
    width: 42px;
    height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: -10px -10px 8px 12px;
    border: 0;
    border-radius: 99px;
    background: #111111;
    color: #ffffff;
    cursor: pointer;
    font-size: 22px;
    line-height: 1;
}

.dfv-modal-close:hover {
    opacity: .85;
}

@media (max-width: 768px) {
    .dfv-detail-main-img {
        height: 310px;
    }

    .dfv-detail-slider-btn {
        width: 40px;
        height: 40px;
    }

    .dfv-detail-slider-prev {
        left: 10px;
    }

    .dfv-detail-slider-next {
        right: 10px;
    }

    .dfv-detail-thumbs-swiper .swiper-slide {
        width: 82px;
        height: 58px;
    }

    #informatieblok.dfv-form-modal,
    #inruilblok.dfv-form-modal,
    #financieringblok.dfv-form-modal,
    #financialleaseblok.dfv-form-modal {
        width: calc(100vw - 18px) !important;
        max-height: calc(100vh - 18px) !important;
        padding: 20px !important;
        border-radius: 14px !important;
    }
}


/* === DFV detailpagina: hoofdafbeelding links + thumbnails rechts (2x2) === */
@media (min-width: 992px) {
    .dfv-detail-gallery {
        display: grid;
        grid-template-columns: minmax(0, 1fr) 190px;
        gap: 14px;
        align-items: stretch;
    }

    .dfv-detail-main-swiper {
        min-width: 0;
        height: 100%;
    }

    .dfv-detail-main-img {
        height: clamp(340px, 34vw, 520px) !important;
    }

    .dfv-detail-thumbs-swiper {
        width: 100%;
        height: 100%;
        margin-top: 0 !important;
        overflow: visible !important;
    }

    .dfv-detail-thumbs-swiper .swiper-wrapper {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-template-rows: repeat(2, minmax(0, 1fr));
        gap: 10px;
        width: 100% !important;
        height: 100% !important;
        transform: none !important;
    }

    .dfv-detail-thumbs-swiper .swiper-slide {
        width: 100% !important;
        height: 100% !important;
        min-height: 0;
        margin: 0 !important;
    }

    .dfv-detail-thumbs-swiper .swiper-slide:nth-child(n+5) {
        display: none !important;
    }

    .dfv-detail-thumb-img {
        height: 100% !important;
        min-height: 0;
    }
}

.dfv-detail-whatsapp-block {
    margin-top: 14px;
}

.dfv-detail-whatsapp-link {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    padding: 15px 18px;
    border-radius: 14px;
    background: #25d366;
    color: #ffffff !important;
    text-decoration: none !important;
    box-shadow: 0 12px 28px rgba(37, 211, 102, 0.24);
    transition: transform .2s ease, box-shadow .2s ease, opacity .2s ease;
}

.dfv-detail-whatsapp-link:hover {
    color: #ffffff !important;
    transform: translateY(-1px);
    box-shadow: 0 16px 34px rgba(37, 211, 102, 0.32);
    opacity: .96;
}

.dfv-detail-whatsapp-icon {
    width: 42px;
    height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 42px;
    border-radius: 99px;
    background: rgba(255, 255, 255, 0.18);
    font-size: 24px;
}

.dfv-detail-whatsapp-text {
    flex: 1 1 auto;
    font-weight: 700;
    line-height: 1.2;
}

.dfv-detail-whatsapp-number {
    flex: 0 0 auto;
    font-weight: 600;
    opacity: .92;
}

@media (max-width: 991px) {
    .dfv-detail-thumbs-swiper .swiper-slide:nth-child(n+5) {
        display: block !important;
    }
}

@media (max-width: 576px) {
    .dfv-detail-whatsapp-link {
        align-items: flex-start;
        flex-direction: column;
        gap: 8px;
    }

    .dfv-detail-whatsapp-number {
        font-size: .95rem;
    }
}

/* === DFV detail gallery: James-style hoofdslider + 2x2 thumbnails rechts === */
#dvo-occasions .dfv-detail-gallery,
.dfv-detail-gallery {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(220px, 50%) !important;
    gap: 14px !important;
    align-items: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    text-align: left !important;
}

.dfv-detail-main-swiper {
    width: 100% !important;
    min-width: 0 !important;
    height: clamp(430px, 42vw, 660px) !important;
    margin: 0 !important;
    overflow: hidden !important;
    border-radius: 16px !important;
    background: #111111 !important;
}

.dfv-detail-main-swiper .swiper-wrapper,
.dfv-detail-main-swiper .swiper-slide {
    height: 100% !important;
}

.dfv-detail-main-swiper a {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
}

.dfv-detail-main-img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
}

.dfv-detail-thumbs-swiper {
    display: none !important;
}

.dfv-detail-thumbs-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-template-rows: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px !important;
    width: 100% !important;
    height: clamp(430px, 42vw, 330px) !important;
    min-width: 0 !important;
}

.dfv-detail-thumb-btn {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
    cursor: pointer !important;
    border: 2px solid transparent !important;
    border-radius: 16px !important;
    background: #111111 !important;
    box-shadow: none !important;
    opacity: .72 !important;
    transition: opacity .2s ease, border-color .2s ease, transform .2s ease !important;
}

.dfv-detail-thumb-btn:nth-child(n+5) {
    display: none !important;
}

.dfv-detail-thumb-btn:hover,
.dfv-detail-thumb-btn.is-active {
    opacity: 1 !important;
    border-color: #ffffff !important;
    transform: translateY(-1px) !important;
}

.dfv-detail-thumb-btn .dfv-detail-thumb-img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
    object-position: center center !important;
    background-color: #000000;
}

.dfv-detail-whatsapp-block {
    width: 100% !important;
    margin: 16px 0 0 0 !important;
}

@media (max-width: 991px) {
    #dvo-occasions .dfv-detail-gallery,
    .dfv-detail-gallery {
        grid-template-columns: 1fr !important;
    }

    .dfv-detail-main-swiper {
        height: 420px !important;
    }

    .dfv-detail-thumbs-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        grid-template-rows: 90px !important;
        height: 90px !important;
    }
}

@media (max-width: 576px) {
    .dfv-detail-main-swiper {
        height: 300px !important;
        border-radius: 12px !important;
    }

    .dfv-detail-thumbs-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        grid-template-rows: repeat(2, 92px) !important;
        height: 198px !important;
        gap: 10px !important;
    }

    .dfv-detail-thumb-btn {
        border-radius: 12px !important;
    }
}

.dvo-thumbs-wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    max-height: 420px;
    overflow-y: auto;
    padding-right: 5px;
}

.dvo-detail-thumb {
    width: 100%;
    height: 100px;
    object-fit: contain;
    background: #000;
    border-radius: 10px;
}

/* WhatsApp blok netjes eronder */
.dvo-whatsapp-blok {
    margin-top: 15px;
    border-radius: 10px;
    overflow: hidden;
}

/* === DFV detail: prijs boven thumbs === */
.dfv-detail-side {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    width: 100% !important;
    min-width: 0 !important;
}

.dfv-side-price-overview {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 0;
    background: #ffffff;
    border: 1px solid rgba(0, 0, 0, .12);
    border-radius: 10px;
    padding: 14px;
}

.dfv-side-price {
    display: flex;
    flex-direction: column;
    line-height: 1.15;
}

.dfv-side-price-label {
    font-size: 0.8rem;
    opacity: .7;
}

.dfv-side-price-value {
    font-size: 1.7rem;
    font-weight: 700;
    color: #000000;
}

.dfv-side-overview-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 42px;
    padding: 9px 14px;
    border-radius: 7px;
    background: #970a0a;
    color: #ffffff !important;
    text-decoration: none !important;
    font-weight: 700;
    white-space: nowrap;
}

.dfv-detail-thumbs-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.dfv-detail-thumb-btn {
    position: relative;
    border: 0;
    padding: 0;
    border-radius: 8px;
    overflow: hidden;
    background: #f3f4f4;
    cursor: pointer;
}

.dfv-detail-thumb-img {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
}

.dfv-detail-thumb-more {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, .58);
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 1.1rem;
}

/* === DFV detail: deel + CTA rij === */
.dfv-detail-action-row {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin: 18px 0 8px;
    padding: 16px;
    background: #000000;
    border: 1px solid rgba(0, 0, 0, .12);
    border-radius: 10px;
}

.dfv-detail-share-block,
.dfv-detail-cta-buttons {
    display: flex;
    align-items: center;
    gap: 10px;
}

.dfv-detail-share-title {
    font-weight: 700;
    color: #ffffff;
    margin-right: 4px;
}

.dfv-detail-share-button {
    width: 42px;
    height: 42px;
    border: 1px solid rgba(0, 0, 0, .16);
    border-radius: 999px;
    background: #ffffff;
    color: #000000;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none !important;
    transition: all .2s ease;
}

.dfv-detail-share-button:hover {
    color: #ffffff;
    background: #10425d;
    border-color: #10425d;
}

.dfv-detail-cta-button {
    min-height: 46px;
    border-radius: 7px;
    border: 1px solid transparent;
    padding: 11px 22px;
    font-weight: 700;
    cursor: pointer;
    text-align: center;
    transition: all .2s ease;
}

.dfv-detail-cta-primary {
    background: #10425d;
    border-color: #10425d;
    color: #ffffff;
}

.dfv-detail-cta-primary:hover {
    background: #ffffff;
    color: #10425d;
}

.dfv-detail-cta-secondary {
    background: #970a0a;
    border-color: #970a0a;
    color: #ffffff;
}

.dfv-detail-cta-secondary:hover {
    background: #ffffff;
    color: #970a0a;
}

/* === DFV detail: losse specificatiekaarten === */
.dfv-detail-spec-cards-section {
    clear: both;
}

.dfv-detail-spec-cards {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 14px;
}

.dfv-detail-spec-card {
    min-height: 145px;
    background: #ffffff;
    color: #000000;
    border: 1px solid rgba(0, 0, 0, .16);
    border-radius: 12px;
    padding: 18px 12px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 9px;
    text-align: center;
}

.dfv-detail-spec-icon {
    width: 44px;
    height: 44px;
    border-radius: 999px;
    background: #f3f4f4;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 23px;
    color: #000000;
}

.dfv-detail-spec-value {
    font-weight: 700;
    font-size: 1rem;
    line-height: 1.25;
}

.dfv-detail-spec-value .napweblabel {
    max-width: 70px;
    padding-left: 5px;
    vertical-align: middle;
}

.dfv-detail-spec-label {
    font-size: .92rem;
    opacity: .76;
}

/* === DFV detail: popup formulieren === */
.dfv-popup-modal {
    position: fixed !important;
    inset: 0;
    z-index: 99999;
    display: none;
    padding: 24px;
    overflow-y: auto;
}

.dfv-popup-modal.is-open {
    display: flex !important;
    align-items: center;
    justify-content: center;
}

.dfv-popup-backdrop {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, .62);
}

.dfv-popup-dialog {
    position: relative;
    z-index: 2;
    width: min(920px, 100%);
    max-height: calc(100vh - 48px);
    overflow-y: auto;
    background: #ffffff;
    border-radius: 18px;
    padding: 26px;
    box-shadow: 0 24px 70px rgba(0, 0, 0, .35);
}

.dfv-popup-close {
    position: sticky;
    top: 0;
    float: right;
    z-index: 3;
    width: 42px;
    height: 42px;
    border: 0;
    border-radius: 999px;
    background: #f3f4f4;
    color: #000000;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.dfv-popup-header {
    margin-bottom: 18px;
    padding-right: 48px;
}

.dfv-popup-header span {
    display: block;
    color: #000000;
    font-size: clamp(1.55rem, 2.2vw, 2.2rem);
    font-weight: 600;
    line-height: 1.1;
}

.dfv-popup-header small {
    display: block;
    margin-top: 8px;
    color: #333333;
    font-size: 1rem;
}

.dfv-popup-vehicle-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 14px;
    margin-bottom: 20px;
    border: 1px solid rgba(0, 0, 0, .12);
    border-radius: 12px;
    background: #f8f8f8;
    color: #000000;
}

.dfv-popup-vehicle-card img {
    width: 130px;
    height: 86px;
    object-fit: cover;
    border-radius: 10px;
}

.dfv-popup-dialog .dvo-form-control {
    width: 100%;
    min-height: 48px;
    border-radius: 8px;
    border: 1px solid rgba(0, 0, 0, .18);
    padding: 12px 14px;
}

.dfv-popup-dialog textarea.dvo-form-control {
    min-height: 110px;
}

body.dfv-modal-open {
    overflow: hidden;
}

#zl-keuzeblok {
    display: none !important;
}

@media (max-width: 1199px) {
    .dfv-detail-spec-cards {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 768px) {
    .dfv-side-price-overview,
    .dfv-detail-action-row {
        flex-direction: column;
        align-items: stretch;
    }

    .dfv-side-overview-btn,
    .dfv-detail-cta-button {
        width: 100%;
    }

    .dfv-detail-share-block {
        justify-content: center;
    }

    .dfv-detail-cta-buttons {
        flex-direction: column;
        width: 100%;
    }

    .dfv-detail-spec-cards {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .dfv-popup-modal {
        padding: 12px;
        align-items: flex-start !important;
    }

    .dfv-popup-dialog {
        max-height: calc(100vh - 24px);
        padding: 18px;
        border-radius: 14px;
    }

    .dfv-popup-vehicle-card {
        flex-direction: column;
        align-items: flex-start;
    }

    .dfv-popup-vehicle-card img {
        width: 100%;
        height: auto;
        max-height: 190px;
    }
}

@media (max-width: 420px) {
    .dfv-detail-spec-cards {
        grid-template-columns: 1fr;
    }
}

/* Forceer popup zichtbaar bij openen, ook als Bootstrap .d-none elders !important gebruikt */
.dfv-popup-modal.is-open.d-none,
.dfv-popup-modal.is-open {
    display: flex !important;
}

/* === DFV popup herstel definitief === */

/* Modal staat boven alles */
.dfv-modal,
.dfv-modern-modal,
.dfv-popup-modal,
#dfv-interest-modal,
#dfv-trade-modal,
#informatieblok,
#inruilblok {
    position: fixed !important;
    inset: 0 !important;
    z-index: 2147483000 !important;
    display: none !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 24px !important;
    background: transparent !important;
    overflow-y: auto !important;
}

.dfv-modal.is-open,
.dfv-modern-modal.is-open,
.dfv-popup-modal.is-open,
#dfv-interest-modal.is-open,
#dfv-trade-modal.is-open,
#informatieblok.is-open,
#inruilblok.is-open {
    display: flex !important;
}

/* Donkere achtergrond terug */
.dfv-modal-backdrop,
.dfv-modern-modal-backdrop,
.dfv-popup-backdrop {
    position: fixed !important;
    inset: 0 !important;
    z-index: 1 !important;
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    background: rgba(0, 0, 0, .68) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

/* Formulier zelf wit/scherp */
.dfv-modal-dialog,
.dfv-modern-modal-dialog,
.dfv-popup-dialog {
    position: relative !important;
    z-index: 2 !important;
    width: min(760px, calc(100vw - 32px)) !important;
    max-width: 760px !important;
    max-height: calc(100vh - 48px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    background: #ffffff !important;
    color: #111111 !important;
    border-radius: 16px !important;
    padding: 26px !important;
    box-shadow: 0 28px 90px rgba(0, 0, 0, .45) !important;
    filter: none !important;
    opacity: 1 !important;
}

/* Header compacter en wit */
.dfv-modal-head,
.dfv-popup-header,
.dfv-modern-modal-header {
    background: #ffffff !important;
    color: #111111 !important;
    border-radius: 14px !important;
    padding: 0 52px 18px 0 !important;
    margin: 0 0 18px 0 !important;
}

.dfv-modal-head h2,
.dfv-popup-header span,
.dfv-modern-modal-header span {
    color: #111111 !important;
    font-size: clamp(1.55rem, 2.1vw, 2.15rem) !important;
    line-height: 1.1 !important;
    margin: 0 0 8px 0 !important;
}

.dfv-modal-head p,
.dfv-popup-header small,
.dfv-modern-modal-header small {
    color: #444444 !important;
    margin: 0 !important;
}

/* Sluitknop */
.dfv-modal-close,
.dfv-popup-close,
.dfv-modern-modal-close {
    position: absolute !important;
    top: 20px !important;
    right: 20px !important;
    z-index: 5 !important;
    width: 42px !important;
    height: 42px !important;
    border-radius: 8px !important;
    border: 0 !important;
    background: #cf2e6f !important;
    color: #ffffff !important;
    cursor: pointer !important;
}

/* Beide formulieren exact dezelfde grid */
.dfv-modal-form,
#dvo-contact-form,
#dvo-inruil-form {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
    align-items: start !important;
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    clear: both !important;
}

.dfv-modal-form .dfv-field,
#dvo-contact-form .dfv-field,
#dvo-inruil-form .dfv-field {
    margin: 0 !important;
    padding: 0 !important;
    min-width: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    clear: none !important;
    position: static !important;
}

.dfv-modal-form .dfv-field-full,
#dvo-contact-form .dfv-field-full,
#dvo-inruil-form .dfv-field-full,
#dvo-inruil-form .dfv-upload-field {
    grid-column: 1 / -1 !important;
}

.dfv-modal-form label,
#dvo-contact-form label,
#dvo-inruil-form label {
    display: block !important;
    font-weight: 700 !important;
    margin-bottom: 6px !important;
    color: #111111 !important;
}

.dfv-modal-form input,
.dfv-modal-form textarea,
#dvo-contact-form input,
#dvo-contact-form textarea,
#dvo-inruil-form input,
#dvo-inruil-form textarea {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 44px !important;
    border: 1px solid #c7c7c7 !important;
    border-radius: 8px !important;
    background: #ffffff !important;
    color: #111111 !important;
    padding: 10px 12px !important;
}

/* Interesse-checkboxes: tekst rechts van de checkbox */
.dfv-check-row {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
    align-items: center !important;
}

.dfv-check-row label {
    display: inline-flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    white-space: nowrap !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 10px 12px !important;
    border: 1px solid #ddd !important;
    border-radius: 10px !important;
    background: #fff !important;
}

.dfv-check-row input[type="checkbox"] {
    flex: 0 0 auto !important;
    width: 18px !important;
    height: 18px !important;
    min-height: 18px !important;
    margin: 0 !important;
}

/* Voertuigblok */
.dfv-modal-vehicle,
.dfv-popup-vehicle-card {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    background: #f7f7f7 !important;
    border: 1px solid rgba(0,0,0,.1) !important;
    border-radius: 12px !important;
    padding: 14px !important;
    margin-bottom: 18px !important;
}

.dfv-modal-vehicle img,
.dfv-popup-vehicle-card img {
    width: 110px !important;
    height: 72px !important;
    object-fit: cover !important;
    border-radius: 8px !important;
}

.dfv-modal-vehicle strong,
.dfv-popup-vehicle-card strong {
    display: block !important;
    color: #111 !important;
}

.dfv-modal-vehicle span,
.dfv-popup-vehicle-card span {
    display: block !important;
    color: #111 !important;
}

.dfv-modal-vehicle-price {
    display: inline-flex !important;
    margin-top: 8px !important;
    font-style: normal !important;
    font-weight: 700 !important;
    color: #970a0a !important;
    font-size: 1.05rem !important;
}

/* Upload */
#dvo_form_fotos3 {
    position: static !important;
    display: block !important;
    height: auto !important;
    min-height: 48px !important;
    margin: 0 !important;
}

.dfv-upload-help {
    display: block !important;
    margin-top: 7px !important;
    font-size: 13px !important;
    opacity: .75 !important;
}

body.dfv-modal-open {
    overflow: hidden !important;
}

@media (max-width: 768px) {
    .dfv-modal,
    .dfv-modern-modal,
    .dfv-popup-modal {
        align-items: flex-start !important;
        padding: 12px !important;
    }

    .dfv-modal-dialog,
    .dfv-modern-modal-dialog,
    .dfv-popup-dialog {
        width: 100% !important;
        max-height: calc(100vh - 24px) !important;
        padding: 20px !important;
    }

    .dfv-modal-form,
    #dvo-contact-form,
    #dvo-inruil-form {
        grid-template-columns: 1fr !important;
    }

    .dfv-check-row label {
        white-space: normal !important;
    }
}

/* === DFV fix: overlay alleen tonen bij geopende popup === */
.dfv-modal:not(.is-open),
.dfv-modern-modal:not(.is-open),
.dfv-popup-modal:not(.is-open),
#dfv-interest-modal:not(.is-open),
#dfv-trade-modal:not(.is-open),
#informatieblok:not(.is-open),
#inruilblok:not(.is-open) {
    display: none !important;
    pointer-events: none !important;
    visibility: hidden !important;
}

.dfv-modal:not(.is-open) .dfv-modal-backdrop,
.dfv-modern-modal:not(.is-open) .dfv-modern-modal-backdrop,
.dfv-popup-modal:not(.is-open) .dfv-popup-backdrop,
#dfv-interest-modal:not(.is-open) .dfv-modal-backdrop,
#dfv-trade-modal:not(.is-open) .dfv-modal-backdrop,
#informatieblok:not(.is-open) .dfv-modal-backdrop,
#inruilblok:not(.is-open) .dfv-modal-backdrop,
#informatieblok:not(.is-open) .dfv-popup-backdrop,
#inruilblok:not(.is-open) .dfv-popup-backdrop {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

body:not(.dfv-modal-open) .dfv-modal-backdrop,
body:not(.dfv-modal-open) .dfv-modern-modal-backdrop,
body:not(.dfv-modal-open) .dfv-popup-backdrop {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

body:not(.dfv-modal-open) {
    overflow: auto !important;
}

.dfv-modal.is-open,
.dfv-modern-modal.is-open,
.dfv-popup-modal.is-open,
#dfv-interest-modal.is-open,
#dfv-trade-modal.is-open,
#informatieblok.is-open,
#inruilblok.is-open {
    display: flex !important;
    visibility: visible !important;
    pointer-events: auto !important;
}

body.dfv-modal-open .dfv-modal.is-open .dfv-modal-backdrop,
body.dfv-modal-open .dfv-modern-modal.is-open .dfv-modern-modal-backdrop,
body.dfv-modal-open .dfv-popup-modal.is-open .dfv-popup-backdrop,
body.dfv-modal-open #informatieblok.is-open .dfv-modal-backdrop,
body.dfv-modal-open #inruilblok.is-open .dfv-modal-backdrop,
body.dfv-modal-open #informatieblok.is-open .dfv-popup-backdrop,
body.dfv-modal-open #inruilblok.is-open .dfv-popup-backdrop {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
}

/* === DFV popup klik fix === */
.dfv-modal.is-open,
.dfv-modern-modal.is-open,
.dfv-popup-modal.is-open,
#dfv-interest-modal.is-open,
#dfv-trade-modal.is-open,
#informatieblok.is-open,
#inruilblok.is-open {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
}

.dfv-modal.is-open .dfv-modal-backdrop,
.dfv-modern-modal.is-open .dfv-modern-modal-backdrop,
.dfv-popup-modal.is-open .dfv-popup-backdrop,
#dfv-interest-modal.is-open .dfv-modal-backdrop,
#dfv-trade-modal.is-open .dfv-modal-backdrop,
#informatieblok.is-open .dfv-modal-backdrop,
#inruilblok.is-open .dfv-modal-backdrop,
#informatieblok.is-open .dfv-popup-backdrop,
#inruilblok.is-open .dfv-popup-backdrop {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
}

/* === DFV moderne popup formulieren 2026 === */
body.dfv-modal-open { overflow: hidden !important; }

.dfv-modern-lead-modal {
  position: fixed !important;
  inset: 0 !important;
  z-index: 999999 !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 22px !important;
  font-family: inherit;
}

.dfv-modern-lead-modal.is-open { display: flex !important; }
.dfv-modern-lead-modal .dfv-popup-backdrop {
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at top left, rgba(151,10,10,.34), transparent 32%), rgba(8, 12, 20, .74);
  backdrop-filter: blur(8px);
}

.dfv-modern-lead-modal .dfv-popup-dialog {
  position: relative;
  width: min(760px, 100%);
  max-height: calc(100vh - 44px);
  overflow: auto;
  background: #ffffff;
  border-radius: 24px;
  padding: 0;
  box-shadow: 0 24px 80px rgba(0,0,0,.28);
  border: 1px solid rgba(255,255,255,.45);
  animation: dfvModernPopup .28s ease both;
}

@keyframes dfvModernPopup {
  from { transform: translateY(24px) scale(.98); opacity: 0; }
  to { transform: translateY(0) scale(1); opacity: 1; }
}

.dfv-modern-lead-modal .dfv-popup-close {
  position: absolute;
  top: 16px;
  right: 16px;
  width: 42px;
  height: 42px;
  border-radius: 999px;
  border: 1px solid rgba(0,0,0,.08);
  background: rgba(255,255,255,.9);
  color: #111827;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 5;
  box-shadow: 0 8px 24px rgba(0,0,0,.12);
}

.dfv-popup-hero {
  padding: 34px 34px 26px;
  background: linear-gradient(135deg, #111827 0%, #0443ab 100%);
  color: #ffffff;
  border-radius: 24px 24px 0 0;
}
.dfv-popup-hero-trade { background: linear-gradient(135deg, #111827 0%, #2B4C8B 100%); }
.dfv-popup-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 7px 12px;
  margin-bottom: 14px;
  border-radius: 999px;
  background: rgba(255,255,255,.14);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .02em;
}
.dfv-popup-hero h3 {
  margin: 0 52px 8px 0;
  color: #ffffff !important;
  font-size: clamp(1.7rem, 3vw, 2.25rem);
  line-height: 1.05;
  font-weight: 700;
}
.dfv-popup-hero p { margin: 0; max-width: 560px; opacity: .92; font-size: 1rem; }

.dfv-popup-vehicle-card {
  margin: 20px 34px 4px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px;
  border-radius: 18px;
  background: #f7f7f8;
  border: 1px solid rgba(0,0,0,.06);
}
.dfv-popup-vehicle-card span { display: block; font-size: 12px; text-transform: uppercase; letter-spacing: .05em; opacity: .7; font-weight: 700; }
.dfv-popup-vehicle-card strong { display: block; font-size: 1.05rem; color: #111827; }
.dfv-popup-vehicle-card small { display: block; margin-top: 3px; font-weight: 700; color: #970a0a; }
.dfv-popup-vehicle-card img { width: 112px; height: 76px; object-fit: cover; border-radius: 14px; }

.dfv-modern-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  padding: 24px 34px 34px;
}
.dfv-modern-form .dfv-field-full,
.dfv-modern-form .dfv-choice-row,
.dfv-modern-form .dfv-form-section-title,
.dfv-modern-form .dfv-form-actions,
.dfv-modern-form .dfv-form-message,
.dfv-modern-form .dvo-help-block { grid-column: 1 / -1; }
.dfv-form-section-title {
  margin-top: 6px;
  padding-top: 4px;
  font-size: .92rem;
  font-weight: 700;
  color: #111827;
}
.dfv-choice-row { display: flex; gap: 10px; flex-wrap: wrap; }
.dfv-choice-row label { cursor: pointer; margin: 0; }
.dfv-choice-row input { position: absolute; opacity: 0; pointer-events: none; }
.dfv-choice-row span {
  display: inline-flex;
  padding: 10px 16px;
  border-radius: 999px;
  background: #f3f4f6;
  border: 1px solid rgba(0,0,0,.08);
  font-weight: 700;
}
.dfv-choice-row input:checked + span { background: #111827; color: #ffffff; }

.dfv-modern-form .dfv-field label {
  display: block;
  margin-bottom: 7px;
  font-size: 13px;
  font-weight: 700;
  color: #374151;
}
.dfv-modern-form input[type="text"],
.dfv-modern-form input[type="email"],
.dfv-modern-form input[type="tel"],
.dfv-modern-form textarea {
  width: 100%;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  background: #ffffff;
  padding: 13px 14px;
  font-size: 15px;
  outline: none;
  transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
.dfv-modern-form textarea { resize: vertical; min-height: 112px; }
.dfv-modern-form input:focus,
.dfv-modern-form textarea:focus {
  border-color: #970a0a;
  box-shadow: 0 0 0 4px rgba(151,10,10,.10);
}
.dfv-upload-field input[type="file"] {
  width: 100%;
  padding: 16px;
  border: 1px dashed #cbd5e1;
  border-radius: 16px;
  background: #f8fafc;
}
.dfv-upload-help { display: block; margin-top: 8px; font-size: 13px; color: #64748b; }
.dfv-submit-btn {
  width: 100%;
  min-height: 52px;
  border: 0;
  border-radius: 16px;
  background: #970a0a;
  color: #ffffff;
  font-size: 1rem;
  font-weight: 700;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  box-shadow: 0 12px 28px rgba(151,10,10,.25);
  transition: transform .15s ease, box-shadow .15s ease, opacity .15s ease;
}
.dfv-submit-btn:hover { transform: translateY(-1px); box-shadow: 0 16px 34px rgba(151,10,10,.3); }
.dfv-submit-btn:disabled { opacity: .65; cursor: wait; transform: none; }
.dvo-mail-status,
.dvo-mail-success,
.dvo-mail-error {
  padding: 12px 14px;
  border-radius: 14px;
  font-weight: 700;
}
.dvo-mail-status { background: #eff6ff; color: #1d4ed8; }
.dvo-mail-success { background: #ecfdf5; color: #047857; }
.dvo-mail-error { background: #fef2f2; color: #b91c1c; }

@media (max-width: 768px) {
  .dfv-modern-lead-modal { padding: 10px !important; align-items: flex-start !important; }
  .dfv-modern-lead-modal .dfv-popup-dialog { max-height: calc(100vh - 20px); border-radius: 18px; }
  .dfv-popup-hero { padding: 28px 20px 22px; border-radius: 18px 18px 0 0; }
  .dfv-popup-vehicle-card { margin: 16px 20px 0; }
  .dfv-popup-vehicle-card img { width: 88px; height: 62px; }
  .dfv-modern-form { grid-template-columns: 1fr; padding: 20px; }
}


/* === DFV admin-styling voor detail CTA's en popup knoppen === */
.dfv-detail-cta-button{
  background-color: var(--dfv-cta-bg, #970a0a) !important;
  color: var(--dfv-cta-color, #ffffff) !important;
  font-size: var(--dfv-cta-font-size, 1rem) !important;
  border: 1px solid var(--dfv-cta-border, #970a0a) !important;
  border-radius: var(--dfv-cta-radius, 14px) !important;
  font-weight: var(--dfv-cta-font-weight, 900) !important;
}
.dfv-detail-cta-button:hover{
  background-color: var(--dfv-cta-hover-bg, #ffffff) !important;
  color: var(--dfv-cta-hover-color, #970a0a) !important;
  border-color: var(--dfv-cta-hover-border, #970a0a) !important;
}
.dfv-submit-btn{
  background-color: var(--dfv-submit-bg, #970a0a) !important;
  color: var(--dfv-submit-color, #ffffff) !important;
  font-size: var(--dfv-submit-font-size, 1rem) !important;
  border: 1px solid var(--dfv-submit-border, #970a0a) !important;
  border-radius: var(--dfv-submit-radius, 14px) !important;
  font-weight: var(--dfv-submit-font-weight, 900) !important;
}
.dfv-submit-btn:hover{
  background-color: var(--dfv-submit-hover-bg, #ffffff) !important;
  color: var(--dfv-submit-hover-color, #970a0a) !important;
  border-color: var(--dfv-submit-hover-border, #970a0a) !important;
}
.dfv-popup-vehicle-card small{
  display: inline-block !important;
  padding: 3px 8px;
  transition: all .2s ease;
}
.dfv-popup-vehicle-card small:hover{
  background-color: var(--dfv-popup-price-hover-bg, inherit) !important;
  color: var(--dfv-popup-price-hover-color, inherit) !important;
  border-color: var(--dfv-popup-price-hover-border, inherit) !important;
}


/* === DFV detail: titelbalk met prijs + overzicht === */
.dfv-detail-titlebar {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 24px !important;
    flex-wrap: wrap !important;
    margin-bottom: 15px !important;
}

.dfv-detail-titlebar-text {
    min-width: 0 !important;
    flex: 1 1 auto !important;
}

.dfv-detail-titlebar-text h1 {
    margin-bottom: 5px !important;
}

.dfv-detail-titlebar-actions {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 15px !important;
    flex: 0 0 auto !important;
}

.dfv-detail-titlebar-price {
    display: inline-block !important;
    font-size: 1.7rem !important;
    line-height: 1.1 !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    white-space: nowrap !important;
}

.dfv-detail-titlebar-overview {
    white-space: nowrap !important;
}

/* Het oude prijs/overzicht-blok rechts naast de thumbs is verplaatst naar de titelbalk. */
.dfv-side-price-overview {
    display: none !important;
}

@media (max-width: 768px) {
    .dfv-detail-titlebar {
        align-items: flex-start !important;
    }

    .dfv-detail-titlebar-actions {
        width: 100% !important;
        justify-content: space-between !important;
    }

    .dfv-detail-titlebar-price {
        font-size: 1.4rem !important;
    }
}

/* === DFV detail layout v2: titel boven hoofdafbeelding + rechterkolom gelijkgetrokken === */
#dvo-occasions .dfv-detail-gallery,
.dfv-detail-gallery {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(260px, 30%) !important;
    gap: 14px !important;
    align-items: stretch !important;
}

.dfv-detail-main-column {
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
    min-width: 0 !important;
    width: 100% !important;
}

.dfv-detail-titlebar {
    width: 100% !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 18px !important;
    flex-wrap: nowrap !important;
    margin: 0 !important;
}

.dfv-detail-titlebar-text {
    min-width: 0 !important;
    flex: 1 1 auto !important;
}

.dfv-detail-titlebar-text h1,
.dfv-detail-titlebar-text .txtoev {
    margin-top: 0 !important;
}

.dfv-detail-titlebar-actions {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 14px !important;
    flex: 0 0 auto !important;
    white-space: nowrap !important;
}

.dfv-detail-titlebar-price {
    display: inline-flex !important;
    align-items: center !important;
    font-size: clamp(1.35rem, 1.7vw, 1.9rem) !important;
    line-height: 1 !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    white-space: nowrap !important;
}

.dfv-detail-titlebar-overview {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    white-space: nowrap !important;
}

.dfv-detail-main-swiper {
    height: clamp(430px, 42vw, 660px) !important;
}

.dfv-detail-side {
    display: grid !important;
    grid-template-rows: minmax(0, 1fr) auto !important;
    gap: 14px !important;
    min-width: 0 !important;
    width: 100% !important;
    align-self: stretch !important;
}

.dfv-detail-thumbs-grid {
    height: auto !important;
    min-height: 0 !important;
}

.dvo-contact-infobox {
    margin-top: 0 !important;
    height: 100% !important;
    min-height: 0 !important;
    display: flex !important;
    align-items: center !important;
}

.dvo-contact-infobox-inner {
    width: 100% !important;
}

.dfv-detail-action-row {
    margin-top: 18px !important;
    margin-bottom: 0 !important;
}

.dfv-detail-spec-cards-section {
    padding-top: 16px !important;
    padding-bottom: 8px !important;
}

.dfv-detail-spec-cards {
    display: grid !important;
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    gap: 14px !important;
}

.dfv-detail-spec-card {
    border-radius: 16px !important;
    border: 1px solid rgba(17, 24, 39, .10) !important;
    box-shadow: 0 12px 28px rgba(17, 24, 39, .06) !important;
}

/* === DFV detail: modern blok onderscheidende opties === */
.dfv-highlight-options-section {
    padding-top: 8px !important;
    padding-bottom: 16px !important;
}

.dfv-highlight-options-card
 {
    background: #000000 !important;
    border: 1px solid rgba(17, 24, 39, .10) !important;
    border-radius: 18px !important;
    padding: 24px !important;
    box-shadow: 0 14px 34px rgba(17, 24, 39, .07) !important;
}

.dfv-highlight-options-head {
    display: flex !important;
    align-items: flex-end !important;
    justify-content: space-between !important;
    gap: 18px !important;
    margin-bottom: 18px !important;
    border-bottom: 1px solid rgba(17, 24, 39, .10) !important;
    padding-bottom: 16px !important;
}

.dfv-highlight-options-eyebrow {
    display: inline-flex !important;
    align-items: center !important;
    border-radius: 999px !important;
    padding: 6px 12px !important;
    background: rgba(151, 10, 10, .08) !important;
    color: #970a0a !important;
    font-size: .78rem !important;
    font-weight: 700 !important;
    letter-spacing: .04em !important;
    text-transform: uppercase !important;
}

.dfv-highlight-options-head h3 {
    margin: 0 !important;
    color: #111827 !important;
    font-size: clamp(1.25rem, 2vw, 1.7rem) !important;
    font-weight: 600 !important;
}

.dfv-highlight-options-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 12px !important;
}

.dfv-highlight-option-item {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    min-height: 58px !important;
    padding: 12px 14px !important;
    border-radius: 14px !important;
    background: #f8fafc !important;
    border: 1px solid rgba(17, 24, 39, .08) !important;
}

.dfv-highlight-option-icon {
    width: 34px !important;
    height: 34px !important;
    flex: 0 0 34px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    box-shadow: 0 6px 16px rgba(17, 24, 39, .06) !important;
}

.dfv-highlight-option-text {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    color: #111827 !important;
    font-weight: 700 !important;
}

.dfv-highlight-option-photo {
    flex: 0 0 auto !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    color: #970a0a !important;
    text-decoration: none !important;
}

.dfv-highlight-option-photo img.dvo-thumb-op {
    width: 24px !important;
    height: 24px !important;
    border-radius: 99px !important;
    object-fit: cover !important;
}

@media (max-width: 1199px) {
    .dfv-detail-spec-cards {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }

    .dfv-highlight-options-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 991px) {
    #dvo-occasions .dfv-detail-gallery,
    .dfv-detail-gallery {
        grid-template-columns: 1fr !important;
    }

    .dfv-detail-side {
        display: flex !important;
        flex-direction: column !important;
        height: auto !important;
    }

    .dvo-contact-infobox {
        height: auto !important;
    }
}

@media (max-width: 768px) {
    .dfv-detail-titlebar {
        align-items: flex-start !important;
        flex-direction: column !important;
    }

    .dfv-detail-titlebar-actions {
        width: 100% !important;
        justify-content: space-between !important;
    }

    .dfv-detail-spec-cards {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .dfv-highlight-options-head {
        align-items: flex-start !important;
        flex-direction: column !important;
    }

    .dfv-highlight-options-grid {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 480px) {
    
    .dfv-detail-titlebar-text {
        order: 1;
    }
    .dfv-detail-spec-cards {
        grid-template-columns: 1fr !important;
    }

    .dfv-detail-titlebar-actions {
        align-items: stretch !important;
        flex-direction: column !important;
        order: 0;
    }

    .dfv-detail-titlebar-overview {
        width: 50% !important;
    }
    
    .dfv-detail-titlebar-price {
        width: 50%;
    }
    
    .dvo-contact-infobox {
        height: 470px !important;
    }
}

/* === DFV detail layout v3: thumbnails equal to main image, actions right, modern tabs/mobile === */
:root {
  --dfv-detail-media-height: clamp(430px, 42vw, 660px);
}

#dvo-occasions .dfv-detail-gallery,
.dfv-detail-gallery {
  grid-template-columns: minmax(0, 1fr) minmax(280px, 50%) !important;
  grid-template-rows: auto var(--dfv-detail-media-height) !important;
  align-items: start !important;
}

.dfv-detail-main-column {
  grid-column: 1 / 2 !important;
  grid-row: 1 / 3 !important;
  display: grid !important;
  grid-template-rows: auto var(--dfv-detail-media-height) !important;
  gap: 14px !important;
}

.dfv-detail-titlebar {
  grid-row: 1 !important;
  max-width: 100% !important;
  align-items: flex-start !important;
}

.dfv-detail-titlebar-text {
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

.dfv-detail-titlebar-actions {
  margin-left: auto !important;
  justify-content: flex-end !important;
  align-self: flex-start !important;
}

.dfv-detail-titlebar-price {
  text-align: right !important;
}

.dfv-detail-main-swiper {
  grid-row: 2 !important;
  height: var(--dfv-detail-media-height) !important;
  min-height: var(--dfv-detail-media-height) !important;
  max-height: var(--dfv-detail-media-height) !important;
}

.dfv-detail-main-swiper .swiper-wrapper,
.dfv-detail-main-swiper .swiper-slide,
.dfv-detail-main-swiper a,
.dfv-detail-main-img {
  height: 100% !important;
}

.dfv-detail-main-img {
  min-height: 100% !important;
  max-height: 100% !important;
}

.dfv-detail-side {
  grid-column: 2 / 3 !important;
  grid-row: 2 / 3 !important;
  height: var(--dfv-detail-media-height) !important;
  min-height: var(--dfv-detail-media-height) !important;
  max-height: var(--dfv-detail-media-height) !important;
  display: grid !important;
  grid-template-rows: minmax(0, 1fr) auto !important;
  gap: 14px !important;
}

.dfv-detail-thumbs-grid {
  height: 100% !important;
  min-height: 0 !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-template-rows: repeat(2, minmax(0, 1fr)) !important;
}

.dfv-detail-thumb-btn,
.dfv-detail-thumb-img {
  height: 100% !important;
  min-height: 0 !important;
}

.dfv-detail-thumb-img {
  aspect-ratio: auto !important;
}

.dvo-contact-infobox {
  min-height: 124px !important;
  max-height: 180px !important;
  overflow: hidden !important;
}

/* Modern tabblok desktop */
#exTab3 > .col-md-12 {
    border: 0 !important;
    border-radius: 24px !important;
    background: #34343a;
    box-shadow: 0 18px 45px rgba(15, 23, 42, .08) !important;
    padding: 22px !important;
}
#exTab3 .nav-tabs
{
    gap: 10px !important;
    padding: 8px !important;
    margin-bottom: 0 !important;
    border: 1px solid rgba(15, 23, 42, .08) !important;
    border-radius: 18px 18px 0 0 !important;
    background: #141417 !important;
}

#exTab3 .nav-tabs .nav-item {
  margin: 0 !important;
}

#exTab3 .nav-tabs .nav-link {
  border: 0 !important;
  border-radius: 14px !important;
  background: transparent !important;
  padding: 13px 18px !important;
  transition: background-color .2s ease, box-shadow .2s ease, transform .2s ease !important;
}

#exTab3 .nav-tabs .nav-link h3 {
  font-size: .98rem !important;
  line-height: 1.1 !important;
  font-weight: 850 !important;
  color: #334155 !important;
  margin: 0 !important;
}

#exTab3 .nav-tabs .nav-link:hover {
  background: #ffffff !important;
  transform: translateY(-1px) !important;
}

#exTab3 .nav-tabs .nav-link.active {
  background: #ffffff !important;
  box-shadow: 0 12px 28px rgba(15, 23, 42, .10) !important;
}

#exTab3 .nav-tabs .nav-link.active h3 {
  color: #970a0a !important;
}

#exTab3 .tab-content {
  border: 1px solid rgba(15, 23, 42, .08) !important;
  border-top: 0 !important;
  border-radius: 0 0 22px 22px !important;
  overflow: hidden !important;
  background: #ffffff !important;
}

#exTab3 .tab-pane > .col-md-12,
#exTab3 .tab-pane .bg-white {
  background: #ffffff !important;
}

#exTab3 h3.dvo-subtitle {
  font-size: 1.35rem !important;
  font-weight: 600 !important;
  letter-spacing: -.02em !important;
  border-bottom: 1px solid rgba(15, 23, 42, .10) !important;
  padding-bottom: 13px !important;
  margin-bottom: 18px !important;
}

#exTab3 .dvo-detail {
  padding: 7px 0 !important;
  line-height: 1.35 !important;
}

/* Modern mobiel accordionblok */
#mobielspec {
  padding-top: 18px !important;
}

#mobielspec > .col-md-12 {
  background: transparent !important;
  padding: 0 !important;
}

#mobielspec .accordion {
  display: grid !important;
  gap: 12px !important;
}

#mobielspec .accordion-item {
  border: 1px solid rgba(15, 23, 42, .10) !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  background: #ffffff !important;
  box-shadow: 0 12px 28px rgba(15, 23, 42, .07) !important;
}

#mobielspec .accordion-button {
  border-radius: 0 !important;
  padding: 17px 18px !important;
  background: #ffffff !important;
  color: #111827 !important;
  font-weight: 600 !important;
  box-shadow: none !important;
}

#mobielspec .accordion-button:not(.collapsed) {
  color: #970a0a !important;
  background: #f8fafc !important;
}

#mobielspec .accordion-body {
  padding: 18px !important;
  background: #ffffff !important;
}

@media (max-width: 991px) {
  #dvo-occasions .dfv-detail-gallery,
  .dfv-detail-gallery {
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto auto !important;
  }

  .dfv-detail-main-column {
    grid-column: 1 !important;
    grid-row: 1 / 2 !important;
    display: flex !important;
  }

  .dfv-detail-main-swiper {
    height: clamp(310px, 65vw, 520px) !important;
    min-height: clamp(310px, 65vw, 520px) !important;
    max-height: clamp(310px, 65vw, 520px) !important;
  }

  .dfv-detail-side {
    grid-column: 1 !important;
    grid-row: 2 / 3 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    display: flex !important;
  }

  .dfv-detail-thumbs-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    grid-template-rows: 1fr !important;
  }

  .dfv-detail-thumb-img {
    aspect-ratio: 4 / 3 !important;
  }

  .dvo-contact-infobox {
    min-height: 0 !important;
    max-height: none !important;
  }

  #exTab3 {
    display: none !important;
  }

  #mobielspec {
    display: block !important;
  }
}

@media (max-width: 768px) {
  .dfv-detail-titlebar-actions {
    margin-left: 0 !important;
    justify-content: flex-end !important;
  }

  .dfv-detail-titlebar {
    flex-direction: row !important;
    align-items: flex-start !important;
  }
}

@media (max-width: 560px) {
  .dfv-detail-titlebar {
    flex-direction: column !important;
  }

  .dfv-detail-titlebar-actions {
    width: 100% !important;
    flex-direction: row !important;
    justify-content: space-between !important;
  }

  .dfv-detail-thumbs-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-template-rows: repeat(2, 1fr) !important;
  }
}

/* =========================
   DFV detail v4: moderne onderkant-secties
   ========================= */
.dfv-bottom-contact-cta-wrap {
    margin-top: 10px !important;
    margin-bottom: 30px;
}

.dfv-bottom-contact-cta {
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  padding: clamp(22px, 3vw, 38px);
  border-radius: 10px;
  background:
    radial-gradient(circle at top left, rgba(151, 10, 10, .18), transparent 34%),
    linear-gradient(135deg, #111827 0%, #1f2937 52%, #0443ab 100%);
  color: #ffffff;
  box-shadow: 0 24px 60px rgba(15, 23, 42, .18);
}

.dfv-bottom-contact-cta::after {
  content: "";
  position: absolute;
  inset: auto -90px -120px auto;
  width: 260px;
  height: 260px;
  border-radius: 999px;
  background: rgba(255, 255, 255, .12);
  pointer-events: none;
}

.dfv-bottom-contact-content {
  position: relative;
  z-index: 1;
  max-width: 680px;
}

.dfv-bottom-contact-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border: 1px solid rgba(255,255,255,.20);
  border-radius: 999px;
  background: rgba(255,255,255,.10);
  font-size: .86rem;
  font-weight: 700;
  letter-spacing: .02em;
  margin-bottom: 14px;
}

.dfv-bottom-contact-content h3 {
  margin: 0 0 8px 0;
  color: #ffffff !important;
  font-size: clamp(1.55rem, 3vw, 2.35rem);
  line-height: 1.05;
  font-weight: 950;
  letter-spacing: -.04em;
}

.dfv-bottom-contact-content p {
  margin: 0;
  color: rgba(255,255,255,.84);
  font-size: 1.1rem;
  line-height: 1.55;
}

.dfv-bottom-contact-actions {
  position: relative;
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 12px;
  min-width: min(100%, 360px);
}

.dfv-bottom-contact-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 52px;
  padding: 14px 18px;
  border-radius: 16px;
  font-weight: 600;
  text-decoration: none !important;
  transition: transform .18s ease, box-shadow .18s ease, background-color .18s ease;
}

.dfv-bottom-contact-btn:hover {
  transform: translateY(-2px);
}

.dfv-bottom-contact-btn-primary {
  background: #ffffff;
  color: #970a0a !important;
  box-shadow: 0 14px 30px rgba(0,0,0,.16);
}

.dfv-bottom-contact-btn-secondary {
  background: rgba(255,255,255,.10);
  color: #ffffff !important;
  border: 1px solid rgba(255,255,255,.24);
}

.dfv-section-heading {
  max-width: 760px;
  margin-bottom: 18px;
}

.dfv-section-heading-center {
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

.dfv-section-heading span {
  display: inline-flex;
  align-items: center;
  margin-bottom: 8px;
  padding: 6px 11px;
  border-radius: 999px;
  background: rgba(151, 10, 10, .08);
  color: #970a0a;
  font-size: .78rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.dfv-section-heading h3 {
  margin: 0 0 8px 0;
  color: #111827 !important;
  font-size: clamp(1.45rem, 2.5vw, 2rem);
  font-weight: 950;
  letter-spacing: -.035em;
}

.dfv-section-heading p {
  margin: 0;
  color: #64748b;
  font-size: 1rem;
  line-height: 1.55;
}

.dfv-alternatives-modern {
    padding: clamp(18px, 3vw, 30px) !important;
    border-radius: 10px;
    background: #000000;
    box-shadow: 0 18px 48px rgba(15, 23, 42, .08);
    border: 1px solid rgba(15, 23, 42, .07);
}

.dfv-alternatives-modern-grid {
  margin-left: -10px !important;
  margin-right: -10px !important;
}

.dfv-alternative-card {
  height: 100%;
  border-radius: 10px !important;
  overflow: hidden;
  background: #ffffff;
  border: 1px solid rgba(15, 23, 42, .08);
  box-shadow: 0 14px 34px rgba(15, 23, 42, .08);
  transition: transform .2s ease, box-shadow .2s ease;
}

.dfv-alternative-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 24px 50px rgba(15, 23, 42, .13);
}

.dfv-alternative-card img.list-thumb {
  border-radius: 0 !important;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}

.dfv-alternative-card .dvo-merkmodel {
  min-height: 0 !important;
  height: auto !important;
  font-size: 1.22rem !important;
  line-height: 1.18 !important;
  margin-bottom: 8px;
}

.dfv-alternative-card .threeline {
  height: 52px !important;
  font-size: .95rem !important;
  color: #475569 !important;
}

.dfv-alternative-card .btn-dvo-primary {
  border-radius: 14px !important;
  padding: 12px 16px !important;
}

@media (max-width: 768px) {
  .dfv-bottom-contact-cta {
    flex-direction: column;
    align-items: flex-start;
  }

  .dfv-bottom-contact-actions,
  .dfv-bottom-contact-btn {
    width: 100%;
  }

  .dfv-alternatives-modern {
    padding: 18px !important;
    border-radius: 22px;
  }
}

@media (max-width: 520px) {
}

@media (max-width: 992px) {
  .dfv-detail-titlebar-text {
    max-width: none !important;
  }
}
@media (max-width: 768px) {
  .dfv-detail-titlebar-actions {
    width: 100% !important;
    margin-left: 0 !important;
    justify-content: flex-end !important;
  }
}

button.dfv-detail-slider-btn.dfv-detail-slider-prev {
    border-color: #0443ab;
}

button.dfv-detail-slider-btn.dfv-detail-slider-next {
    border-color: #0443ab;
}

button.dfv-detail-slider-btn.dfv-detail-slider-next:hover {
    background-color: #0443ab;
}

button.dfv-detail-slider-btn.dfv-detail-slider-prev:hover {
    border-color: #0443ab;
}


/* === DFV correctie: Overzicht-knop detailpagina + hover via admin === */
#dvo-backtolist.dfv-detail-titlebar-overview {
  background-color: var(--dfv-overzicht-bg, #970a0a) !important;
  color: var(--dfv-overzicht-color, #ffffff) !important;
  border: 1px solid var(--dfv-overzicht-border, #970a0a) !important;
  text-decoration: none !important;
  transition: background-color .2s ease, color .2s ease, border-color .2s ease, transform .2s ease, opacity .2s ease !important;
}

#dvo-backtolist.dfv-detail-titlebar-overview:hover,
#dvo-backtolist.dfv-detail-titlebar-overview:focus {
  background-color: var(--dfv-overzicht-hover-bg, #ffffff) !important;
  color: var(--dfv-overzicht-hover-color, #970a0a) !important;
  border-color: var(--dfv-overzicht-hover-border, #970a0a) !important;
  opacity: 1 !important;
  transform: translateY(-1px);
}

#dvo-backtolist.dfv-detail-titlebar-overview:hover i,
#dvo-backtolist.dfv-detail-titlebar-overview:focus i {
  color: inherit !important;
}


/* === DFV detail: brochureknop naast deeliconen === */
.dfv-detail-brochure-button {
  margin-left: 4px !important;
}

.dfv-detail-brochure-button i {
  font-size: 1rem !important;
}

.dfv-detail-brochure-button:hover,
.dfv-detail-brochure-button:focus {
  text-decoration: none !important;
}

/* === DFV behoud hover detail CTA's (Interesse / Inruil) === */
#dvo-website .dfv-detail-cta-button,
.dfv-detail-cta-button {
  background-color: var(--dfv-cta-bg, #970a0a) !important;
  color: var(--dfv-cta-color, #ffffff) !important;
  border: 1px solid var(--dfv-cta-border, #970a0a) !important;
  border-radius: var(--dfv-cta-radius, 14px) !important;
  font-size: var(--dfv-cta-font-size, 1rem) !important;
  font-weight: var(--dfv-cta-font-weight, 900) !important;
  transition: background-color .2s ease, color .2s ease, border-color .2s ease, transform .2s ease, box-shadow .2s ease !important;
}

#dvo-website .dfv-detail-cta-button:hover,
#dvo-website .dfv-detail-cta-button:focus,
.dfv-detail-cta-button:hover,
.dfv-detail-cta-button:focus {
  background-color: var(--dfv-cta-hover-bg, #ffffff) !important;
  color: var(--dfv-cta-hover-color, #970a0a) !important;
  border-color: var(--dfv-cta-hover-border, #970a0a) !important;
  transform: translateY(-1px) !important;
  text-decoration: none !important;
}

/* === DFV bezoeker mededeling popup === */
.dfv-visit-popup {
  position: fixed;
  inset: 0;
  z-index: 999999;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 20px;
}

.dfv-visit-popup.is-visible {
  display: flex;
}

.dfv-visit-popup__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(8, 12, 20, .58);
  backdrop-filter: blur(6px);

}

.dfv-visit-popup__dialog {
  display: none;
  position: relative;
  width: min(520px, 100%);
  background: #ffffff;
  color: #111827;
  border-radius: 22px;
  padding: 34px 30px 28px;
  box-shadow: 0 28px 90px rgba(0, 0, 0, .28);
  text-align: center;
  transform: translateY(16px) scale(.96);
  opacity: 0;
  animation: dfvVisitPopupIn .28s ease forwards;
}


.dfv-visit-popup__dialog.is-active {
  display: block;
}
.dfv-visit-popup__close {
  position: absolute;
  top: 14px;
  right: 16px;
  width: 34px;
  height: 34px;
  border: 0;
  border-radius: 99px;
  background: #f3f4f6;
  color: #111827;
  font-size: 24px;
  line-height: 1;
  cursor: pointer;
}

.dfv-visit-popup__close:hover {
  background: #e5e7eb;
}

.dfv-visit-popup__icon {
  width: 58px;
  height: 58px;
  margin: 0 auto 16px;
  border-radius: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #10425d;
  color: #ffffff;
  font-size: 32px;
  font-weight: 700;
}

.dfv-visit-popup__dialog h2 {
  margin: 0 0 12px;
  font-size: clamp(1.35rem, 3vw, 1.85rem);
  line-height: 1.2;
  font-weight: 700;
  color: #111827;
}

.dfv-visit-popup__text {
  font-size: 1.05rem;
  line-height: 1.65;
  color: #374151;
}

.dfv-visit-popup__text p {
  margin: 0 0 12px;
}

.dfv-visit-popup__button {
  margin-top: 14px;
  width: 100%;
  border: 0;
  border-radius: 14px;
  padding: 14px 18px;
  background: #10425d;
  color: #ffffff;
  font-weight: 700;
  cursor: pointer;
  transition: transform .15s ease, opacity .15s ease;
}

.dfv-visit-popup__button:hover {
  opacity: .9;
  transform: translateY(-1px);
}

@keyframes dfvVisitPopupIn {
  to {
    transform: translateY(0) scale(1);
    opacity: 1;
  }
}

@media (max-width: 480px) {
  .dfv-visit-popup {
    padding: 14px;
  }
  .dfv-visit-popup__dialog {
    padding: 30px 22px 24px;
    border-radius: 18px;
  }
}

/* === DFV interesseformulier keuzes === */
.dfv-interest-choices{
  margin-bottom: 4px;
}
.dfv-interest-choices > label{
  display:block;
  font-weight:700;
  margin-bottom:10px;
}
.dfv-choice-row{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.dfv-choice-pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:11px 14px;
  border:1px solid #d8dee9;
  border-radius:14px;
  background:#ffffff;
  cursor:pointer;
  font-weight:700;
  color:#111827;
}
.dfv-choice-pill input{
  margin:0;
  width:16px;
  height:16px;
}
.dfv-choice-pill:has(input:checked){
  /* border-color:#111827; */
  background:#f5f7fb;
}
@media (max-width: 640px){
  .dfv-choice-row{display:block;}
  .dfv-choice-pill{display:flex;width:100%;margin-bottom:8px;}
}


/* === DFV moderne interesse keuzes in popup === */
.dfv-modern-form .dfv-interest-options{
  margin-top: 4px;
  margin-bottom: 16px;
}
.dfv-modern-form .dfv-interest-options .dfv-interest-title{
  display:block;
  width:100%;
  margin:0 0 12px 0;
  color:#111827;
  font-size:15px;
  line-height:20px;
  font-weight:800;
}
.dfv-modern-form .dfv-interest-option-list{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:12px;
  width:100%;
}
.dfv-modern-form .dfv-interest-pill{
  position:relative;
  display:inline-flex !important;
  align-items:center;
  gap:10px;
  min-height:46px;
  padding:10px 16px;
  margin:0 !important;
  border:1px solid #d9e0ea;
  border-radius:999px;
  background:#fff;
  color:#111827;
  font-size:14px;
  line-height:20px;
  font-weight:800;
  cursor:pointer;
  box-shadow:0 8px 22px rgba(17,24,39,.06);
  transition:all .18s ease;
  user-select:none;
}
.dfv-modern-form .dfv-interest-pill:hover{
  border-color:#bdc7d6;
  box-shadow:0 12px 28px rgba(17,24,39,.10);
  transform:translateY(-1px);
}
.dfv-modern-form .dfv-interest-pill input[type="checkbox"]{
  position:absolute !important;
  opacity:0 !important;
  pointer-events:none !important;
  width:1px !important;
  height:1px !important;
  margin:0 !important;
  padding:0 !important;
}


.dfv-modern-form .dfv-interest-pill:has(input[type="checkbox"]:checked)
 {
    border-color: #0443ab;
    background: #0443ab14;
    color: #111827;
}
@media (max-width:640px){
  .dfv-modern-form .dfv-interest-option-list{
    display:grid;
    grid-template-columns:1fr;
  }
  .dfv-modern-form .dfv-interest-pill{
    width:100%;
  }
}


/* === DFV favorieten: SVG hart + moderne knop === */
.dvo-fav-underfilter {
    margin-bottom: 10px;
}

.dvo-fav-underfilter a.dvo-fav-button {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: linear-gradient(135deg,#111111,#2a2a2a);
    color: #ffffff !important;
    padding: 12px 22px;
    border-radius: 14px;
    text-decoration: none !important;
    font-size: 1rem;
    font-weight: 700;
    border: 1px solid rgba(255,255,255,.08);
    box-shadow: 0 10px 30px rgba(0,0,0,.25);
    transition: all .3s ease;
    position: relative;
    overflow: hidden;
}

.dvo-fav-underfilter a.dvo-fav-button:hover {
    transform: translateY(-2px);
    background: linear-gradient(135deg,#0443ab,#8f0d0f);
    color: #ffffff !important;
    box-shadow: 0 14px 34px rgba(193,18,20,.35);
}

button.dvo-fav-toggle {
    border: none;
    background-color: #333333b8 !important;
    border-radius: 10px;
    width: 40px;
    height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 10px;
    right: 10px;
    left: auto;
    margin: 0;
    z-index: 5;
    cursor: pointer;
}

button.dvo-fav-toggle.is-active {
    background-color: #0443ab !important;
}

button.dvo-fav-toggle .dvo-fav-heart-svg,
.dvo-fav-underfilter .dvo-fav-heart-svg {
    width: 18px;
    height: 18px;
    display: block;
    flex: 0 0 18px;
    fill: #ffffff !important;
    color: #ffffff !important;
    pointer-events: none;
}

button.dvo-fav-toggle .dvo-fav-heart-svg path,
.dvo-fav-underfilter .dvo-fav-heart-svg path {
    fill: #ffffff !important;
}

.dvo-fav-underfilter .dvo-fav-count {
    background: rgba(255,255,255,.14);
    padding: 4px 10px;
    border-radius: 99px;
    font-size: .9rem;
    font-weight: 700;
    line-height: 1;
}

.dvo-fav-button.is-hidden,
.dvo-fav-count.is-hidden {
    display: none !important;
}

/* =========================================================
   DF MOBILE FIX - Favorieten knop + voertuigkaarten mobiel
   ========================================================= */

@media only screen and (max-width: 768px) {

    /* Favorieten knop */
    .dvo-fav-underfilter {
        margin: 12px 0 20px 0 !important;
    }

    .dvo-fav-underfilter a.dvo-fav-button {
        display: inline-flex !important;
        align-items: center !important;
        gap: 10px !important;
        width: auto !important;
        max-width: 100% !important;
        padding: 12px 18px !important;
        border-radius: 14px !important;
        background: #1d1d1d !important;
        border: 1px solid rgba(255,255,255,.08) !important;
        color: #ffffff !important;
        font-size: 1rem !important;
        font-weight: 700 !important;
        box-shadow: 0 10px 30px rgba(0,0,0,.25) !important;
        text-decoration: none !important;
    }

    .dvo-fav-underfilter a.dvo-fav-button:hover {
        background: #0443ab !important;
        color: #ffffff !important;
    }

    .dvo-fav-underfilter .dvo-fav-heart-svg {
        width: 18px !important;
        height: 18px !important;
        fill: #ffffff !important;
        flex-shrink: 0 !important;
    }

    .dvo-fav-underfilter .dvo-fav-count {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        min-width: 24px !important;
        height: 24px !important;
        padding: 0 8px !important;
        border-radius: 99px !important;
        background: rgba(255,255,255,.12) !important;
        font-size: .85rem !important;
        font-weight: 700 !important;
        line-height: 1 !important;
    }

    /* Voertuigkaart mobiel */
    .df-index-slider .swiper-slide,
    .dfv-index-slider .swiper-slide,
    .df-index-slide,
    .dfv-index-slider-slide {
        width: calc(100vw - 50px) !important;
        max-width: calc(100vw - 50px) !important;
        flex: 0 0 calc(100vw - 50px) !important;
    }

    .df-index-slide #cardbox,
    .dfv-index-slider-slide #cardbox,
    .df-index-slider .swiper-slide #cardbox,
    .dfv-index-slider .swiper-slide #cardbox {
        max-width: 100% !important;
        border-radius: 18px !important;
        overflow: hidden !important;
    }

    /* Afbeelding volledig zichtbaar */
    .df-index-slide img.list-thumb,
    .dfv-index-slider-slide img.list-thumb,
    .df-index-slider .swiper-slide img.list-thumb,
    .dfv-index-slider .swiper-slide img.list-thumb {
        width: 100% !important;
        height: auto !important;
        min-height: unset !important;
        max-height: unset !important;
        aspect-ratio: 16/10 !important;
        object-fit: cover !important;
        display: block !important;
    }

    /* Rode favorieten knop */
    button.dvo-fav-toggle {
        width: 42px !important;
        height: 42px !important;
        border-radius: 99px !important;
        top: 12px !important;
        right: 12px !important;
        background: rgba(0,0,0,.55) !important;
        backdrop-filter: blur(6px) !important;
    }

    button.dvo-fav-toggle.is-active {
        background: #d90f16 !important;
    }

    button.dvo-fav-toggle .dvo-fav-heart-svg {
        width: 18px !important;
        height: 18px !important;
        fill: #ffffff !important;
    }

    /* Rechter zwarte fade weg op mobiel */
    .df-index-slider-wrap::after,
    .dfv-index-slider-wrap::after,
    .dfv-index-slider-outer::after {
        display: none !important;
    }
}


/* === Historie knop naast brochure === */

.dfv-history-btn{
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:14px 22px;
    border-radius:14px;
    background:#111111;
    color:#ffffff !important;
    text-decoration:none !important;
    font-weight:700;
    font-size:1rem;
    transition:all .3s ease;
    box-shadow:0 10px 25px rgba(0,0,0,.15);
    border:1px solid rgba(255,255,255,.08);
    margin-left:10px;
}

.dfv-history-btn i{
    font-size:1rem;
    color:#ffffff;
}

.dfv-history-btn:hover{
    background:#0443ab;
    color:#ffffff !important;
    transform:translateY(-2px);
    box-shadow:0 14px 30px rgba(193,18,20,.35);
}

/* mobiel */
@media(max-width:768px){

    .dfv-history-btn{
        width:100%;
        justify-content:center;
        margin-left:0;
        margin-top:10px;
    }

}

.dvo-contact-infobox.d-none
 {
    display: none !important;
}


@keyframes dfvFilterSlideDown {
    from {
        opacity: 0;
        transform: translateY(-8px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}


/* === DF aanpassing 2026-05: gecentreerde indexslider + geen eindschaduw === */
.df-index-slider-wrap,
.dfv-index-slider-outer,
.dfv-index-slider-wrap {
  max-width: 1320px !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  overflow: hidden !important;
}

.df-index-slider,
.dfv-index-slider {
  overflow: hidden !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.df-index-slider-wrap::after,
.dfv-index-slider-outer::after,
.dfv-index-slider-wrap::after {
  display: none !important;
  content: none !important;
  background: none !important;
}

.df-index-slider .swiper-wrapper,
.dfv-index-slider .swiper-wrapper {
  align-items: stretch !important;
}

.df-index-slider .swiper-slide,
.df-index-slide,
.dfv-index-slider .swiper-slide,
.dfv-index-slider-slide {
  width: calc((100% - ((var(--df-index-visible, 4) - 1) * 24px)) / var(--df-index-visible, 4)) !important;
  max-width: none !important;
  flex: 0 0 calc((100% - ((var(--df-index-visible, 4) - 1) * 24px)) / var(--df-index-visible, 4)) !important;
}

.df-index-slide > .col-md-12,
.dfv-index-slider-slide > .col-md-12,
.df-index-slide #cardbox,
.dfv-index-slider-slide #cardbox,
.df-index-slider .swiper-slide #cardbox,
.dfv-index-slider .swiper-slide #cardbox,
.df-index-promo-card,
.df-extra-card {
  max-width: none !important;
}

@media (max-width: 1199px) {
  .df-index-slider .swiper-slide,
  .df-index-slide,
  .dfv-index-slider .swiper-slide,
  .dfv-index-slider-slide {
    width: calc((100% - 24px) / 2) !important;
    flex-basis: calc((100% - 24px) / 2) !important;
  }
}

@media (max-width: 640px) {
  .df-index-slider .swiper-slide,
  .df-index-slide,
  .dfv-index-slider .swiper-slide,
  .dfv-index-slider-slide {
    width: 86vw !important;
    flex-basis: 86vw !important;
  }
}

/* Fallback zonder CSS *-operator: vaste breedtes per adminkeuze */
.df-index-slider-wrap[data-slides-visible="3"] .df-index-slider .swiper-slide,
.dfv-index-slider-wrap[data-slides-visible="3"] .dfv-index-slider .swiper-slide,
.dfv-index-slider-outer[data-slides-visible="3"] .dfv-index-slider .swiper-slide {
  width: calc((100% - 48px) / 3) !important;
  flex-basis: calc((100% - 48px) / 3) !important;
}
.df-index-slider-wrap[data-slides-visible="4"] .df-index-slider .swiper-slide,
.dfv-index-slider-wrap[data-slides-visible="4"] .dfv-index-slider .swiper-slide,
.dfv-index-slider-outer[data-slides-visible="4"] .dfv-index-slider .swiper-slide {
  width: calc((100% - 72px) / 4) !important;
  flex-basis: calc((100% - 72px) / 4) !important;
}
.df-index-slider-wrap[data-slides-visible="5"] .df-index-slider .swiper-slide,
.dfv-index-slider-wrap[data-slides-visible="5"] .dfv-index-slider .swiper-slide,
.dfv-index-slider-outer[data-slides-visible="5"] .dfv-index-slider .swiper-slide {
  width: calc((100% - 96px) / 5) !important;
  flex-basis: calc((100% - 96px) / 5) !important;
}
.df-index-slider-wrap[data-slides-visible="6"] .df-index-slider .swiper-slide,
.dfv-index-slider-wrap[data-slides-visible="6"] .dfv-index-slider .swiper-slide,
.dfv-index-slider-outer[data-slides-visible="6"] .dfv-index-slider .swiper-slide {
  width: calc((100% - 120px) / 6) !important;
  flex-basis: calc((100% - 120px) / 6) !important;
}

/* === DF AANPASSING 2026-05-20: indexslider binnen Elementor-container ===
   De slider breekt niet meer uit naar 100vw. Hierdoor respecteert hij de
   breedte/marges die in Elementor op de bovenliggende container zijn ingesteld. */
.df-index-slider-wrap,
.dfv-index-slider-outer,
.dfv-index-slider-wrap {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

.df-index-slider,
.dfv-index-slider {
  width: 100% !important;
  max-width: 100% !important;
  overflow: hidden !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
}

.df-index-slider .swiper-wrapper,
.dfv-index-slider .swiper-wrapper {
  align-items: stretch !important;
}

.df-index-slider .swiper-slide,
.dfv-index-slider .swiper-slide,
.df-index-slide,
.dfv-index-slider-slide,
.df-index-promo-slide {
  width: var(--df-index-slide-width, calc((100% - 72px) / 4)) !important;
  max-width: var(--df-index-slide-width, calc((100% - 72px) / 4)) !important;
  flex: 0 0 var(--df-index-slide-width, calc((100% - 72px) / 4)) !important;
  box-sizing: border-box !important;
}

.df-index-slider .swiper-slide:not(.df-index-promo-slide) #cardbox,
.dfv-index-slider .swiper-slide:not(.df-index-promo-slide) #cardbox,
.df-index-slide:not(.df-index-promo-slide) #cardbox,
.dfv-index-slider-slide:not(.df-index-promo-slide) #cardbox,
.df-index-promo-card,
.df-index-promo-slide #cardbox {
  width: 100% !important;
  max-width: 100% !important;
}

.df-index-slider-wrap::after,
.dfv-index-slider-outer::after,
.dfv-index-slider-wrap::after {
  display: none !important;
  content: none !important;
  background: none !important;
}

@media (max-width: 768px) {
  .df-index-slider .swiper-slide,
  .dfv-index-slider .swiper-slide,
  .df-index-slide,
  .dfv-index-slider-slide,
  .df-index-promo-slide {
    width: 86vw !important;
    max-width: 86vw !important;
    flex-basis: 86vw !important;
  }
}

/* === DF AANPASSING 2026-05-20: mobiele indexslider kaart centreren ===
   Mobiel krijgt elke slide 100% breedte; de voertuigkaart zelf wordt
   gecentreerd binnen die slide. Zo blijft het één kaart per swipe. */
@media (max-width: 768px) {
  .df-index-slider,
  .dfv-index-slider {
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .df-index-slider .swiper-wrapper,
  .dfv-index-slider .swiper-wrapper {
    align-items: stretch !important;
  }

  .df-index-slider .swiper-slide,
  .dfv-index-slider .swiper-slide,
  .df-index-slide,
  .dfv-index-slider-slide,
  .df-index-promo-slide {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    box-sizing: border-box !important;
    display: flex !important;
    justify-content: center !important;
    align-items: stretch !important;
  }

  .df-index-slider .swiper-slide > .col-md-12,
  .dfv-index-slider .swiper-slide > .col-md-12,
  .df-index-slide > .col-md-12,
  .dfv-index-slider-slide > .col-md-12,
  .df-index-promo-slide > .col-md-12 {
    width: min(86vw, 460px) !important;
    max-width: min(86vw, 460px) !important;
    flex: 0 0 min(86vw, 460px) !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .df-index-slider .swiper-slide #cardbox,
  .dfv-index-slider .swiper-slide #cardbox,
  .df-index-slide #cardbox,
  .dfv-index-slider-slide #cardbox,
  .df-index-promo-card,
  .df-index-promo-slide #cardbox {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

/* === DF AANPASSING 2026-05-20: hover rand voor homepagina indexslider ===
   Zelfde idee als de aanbodpagina: bij hover/focus krijgt de voertuigkaart
   in de slider een blauwe rand en subtiele schaduw. */
.df-index-slider .swiper-slide:not(.df-index-promo-slide) #cardbox,
.dfv-index-slider .swiper-slide:not(.df-index-promo-slide) #cardbox,
.df-index-slide:not(.df-index-promo-slide) #cardbox,
.dfv-index-slider-slide:not(.df-index-promo-slide) #cardbox {
  border: 2px solid transparent !important;
  transition: border-color .22s ease, box-shadow .22s ease, transform .22s ease !important;
  box-sizing: border-box !important;
}

.df-index-slider .swiper-slide:not(.df-index-promo-slide) #cardbox:hover,
.dfv-index-slider .swiper-slide:not(.df-index-promo-slide) #cardbox:hover,
.df-index-slide:not(.df-index-promo-slide) #cardbox:hover,
.dfv-index-slider-slide:not(.df-index-promo-slide) #cardbox:hover,
.df-index-slider .swiper-slide:not(.df-index-promo-slide) a.dvo-gotodetailindex:focus-visible #cardbox,
.dfv-index-slider .swiper-slide:not(.df-index-promo-slide) a.dvo-gotodetailindex:focus-visible #cardbox {
  border-color: var(--dfv-slider-card-hover-border, #0047ba) !important;
  box-shadow: 0 14px 34px rgba(0, 71, 186, .22) !important;
/*  transform: translateY(-2px) !important; */
}

@media (hover: none) {
  .df-index-slider .swiper-slide:not(.df-index-promo-slide) #cardbox:hover,
  .dfv-index-slider .swiper-slide:not(.df-index-promo-slide) #cardbox:hover,
  .df-index-slide:not(.df-index-promo-slide) #cardbox:hover,
  .dfv-index-slider-slide:not(.df-index-promo-slide) #cardbox:hover {
    border-color: transparent !important;
    box-shadow: none !important;
    transform: none !important;
  }
}


/* === DF AANPASSING 2026-05-20 v9: definitieve mobiele indexslider + hover ===
   Belangrijk: deze regels staan onderaan zodat desktop data-slides-visible regels mobiel niet kunnen winnen. */
@media (max-width: 767.98px) {
  .df-index-slider-wrap[data-slides-visible] .df-index-slider,
  .dfv-index-slider-wrap[data-slides-visible] .dfv-index-slider,
  .dfv-index-slider-outer[data-slides-visible] .dfv-index-slider,
  .df-index-slider,
  .dfv-index-slider {
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .df-index-slider-wrap[data-slides-visible] .df-index-slider .swiper-slide,
  .dfv-index-slider-wrap[data-slides-visible] .dfv-index-slider .swiper-slide,
  .dfv-index-slider-outer[data-slides-visible] .dfv-index-slider .swiper-slide,
  .df-index-slider .swiper-slide,
  .dfv-index-slider .swiper-slide,
  .df-index-slide,
  .dfv-index-slider-slide,
  .df-index-promo-slide {
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    box-sizing: border-box !important;
    display: flex !important;
    justify-content: center !important;
    align-items: stretch !important;
  }

  .df-index-slider-wrap[data-slides-visible] .df-index-slider .swiper-slide > .col-md-12,
  .dfv-index-slider-wrap[data-slides-visible] .dfv-index-slider .swiper-slide > .col-md-12,
  .dfv-index-slider-outer[data-slides-visible] .dfv-index-slider .swiper-slide > .col-md-12,
  .df-index-slider .swiper-slide > .col-md-12,
  .dfv-index-slider .swiper-slide > .col-md-12,
  .df-index-slide > .col-md-12,
  .dfv-index-slider-slide > .col-md-12,
  .df-index-promo-slide > .col-md-12 {
    width: min(86vw, 460px) !important;
    max-width: min(86vw, 460px) !important;
    flex: 0 0 min(86vw, 460px) !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .df-index-slider .swiper-slide #cardbox,
  .dfv-index-slider .swiper-slide #cardbox,
  .df-index-slide #cardbox,
  .dfv-index-slider-slide #cardbox,
  .df-index-promo-card,
  .df-index-promo-slide #cardbox {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

@media (min-width: 768px) and (max-width: 1023.98px) {
  .df-index-slider-wrap[data-slides-visible] .df-index-slider .swiper-slide,
  .dfv-index-slider-wrap[data-slides-visible] .dfv-index-slider .swiper-slide,
  .dfv-index-slider-outer[data-slides-visible] .dfv-index-slider .swiper-slide,
  .df-index-slider .swiper-slide,
  .dfv-index-slider .swiper-slide,
  .df-index-slide,
  .dfv-index-slider-slide {
    width: calc((100% - 20px) / 2) !important;
    min-width: calc((100% - 20px) / 2) !important;
    max-width: calc((100% - 20px) / 2) !important;
    flex: 0 0 calc((100% - 20px) / 2) !important;
  }
}

/* Hover-effect homepagina slider gelijk aan aanbodkaarten */
.df-index-slider .swiper-slide:not(.df-index-promo-slide) #cardbox,
.dfv-index-slider .swiper-slide:not(.df-index-promo-slide) #cardbox,
.df-index-slide:not(.df-index-promo-slide) #cardbox,
.dfv-index-slider-slide:not(.df-index-promo-slide) #cardbox {
  border: 2px solid transparent !important;
  transition: border-color .22s ease, box-shadow .22s ease, transform .22s ease !important;
  box-sizing: border-box !important;
}

@media (hover: hover) and (pointer: fine) {
  .df-index-slider .swiper-slide:not(.df-index-promo-slide) #cardbox:hover,
  .dfv-index-slider .swiper-slide:not(.df-index-promo-slide) #cardbox:hover,
  .df-index-slide:not(.df-index-promo-slide) #cardbox:hover,
  .dfv-index-slider-slide:not(.df-index-promo-slide) #cardbox:hover,
  .df-index-slider .swiper-slide:not(.df-index-promo-slide) a.dvo-gotodetailindex:focus-visible #cardbox,
  .dfv-index-slider .swiper-slide:not(.df-index-promo-slide) a.dvo-gotodetailindex:focus-visible #cardbox {
    border-color: var(--dfv-slider-card-hover-border, #0047ba) !important;
    box-shadow: 0 14px 34px rgba(0, 71, 186, .22) !important;
   /* transform: translateY(-2px) !important; */
  }
}


/* === DF serviceblokken shortcode === */
.df-serviceblokken{
  background:var(--df-service-bg,#e8e5df);
  border-radius:var(--df-service-radius,18px);
  padding:12px;
  overflow:hidden;
  font-family:inherit;
}
.df-service-tabs{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin-bottom:18px;
}
.df-serviceblokken button.df-service-tab,
.df-serviceblokken .df-service-tab{
  appearance:none !important;
  -webkit-appearance:none !important;
  border:1px solid var(--df-service-border,#d6d1c8) !important;
  background:var(--df-service-card-bg,#e8e5df) !important;
  background-color:var(--df-service-card-bg,#e8e5df) !important;
  color:var(--df-service-card-text,#111) !important;
  min-height:96px;
  border-radius:12px;
  padding:16px 18px;
  text-align:left;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:14px;
  font-size:1.12rem;
  font-weight:600;
  line-height:1.18;
  cursor:pointer;
  transition:background-color .22s ease,color .22s ease,border-color .22s ease,transform .22s ease;
  box-shadow:none !important;
}
.df-serviceblokken button.df-service-tab:hover,
.df-serviceblokken .df-service-tab:hover{
  transform:translateY(-1px);
  background:var(--df-service-card-bg,#e8e5df) !important;
  background-color:var(--df-service-card-bg,#e8e5df) !important;
  color:var(--df-service-card-text,#111) !important;
  border-color:var(--df-service-border,#d6d1c8) !important;
}
.df-serviceblokken button.df-service-tab.is-active,
.df-serviceblokken .df-service-tab.is-active,
.df-serviceblokken button.df-service-tab.is-active:hover,
.df-serviceblokken .df-service-tab.is-active:hover{
  background:var(--df-service-card-active-bg,#fff) !important;
  background-color:var(--df-service-card-active-bg,#fff) !important;
  color:var(--df-service-card-active-text,#111) !important;
  border-color:var(--df-service-active-border,#fff) !important;
}
.df-service-icon {
    width: 36px;
    height: 36px;
    border-radius: 5px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    color: var(--df-service-accent, #a88a5f);
    font-size: 18px;
    line-height: 1;
    flex: 0 0 auto;
}
.df-service-icon img{
  max-width:100%;
  max-height:100%;
  object-fit:contain;
}
.df-service-content-stage{
  background:var(--df-service-content-bg,#fff);
  color:var(--df-service-text,#111);
  border-radius:14px;
  overflow:hidden;
  position:relative;
}
.df-service-content{
  display:none;
  background:transparent;
  color:var(--df-service-text,#111);
  padding:52px 60px;
  grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);
  gap:70px;
  will-change:transform,opacity;
}
.df-service-content.is-active{display:grid;}
.df-service-content.is-sliding > *{
  animation:dfServiceSlideRightToLeft .48s cubic-bezier(.22,.75,.22,1) both;
}
.df-service-content.is-sliding > .df-service-points{
  animation-delay:.045s;
}
@keyframes dfServiceSlideRightToLeft{
  0%{opacity:0;transform:translateX(78px);}
  100%{opacity:1;transform:translateX(0);}
}
.df-service-main h3,
.df-service-point h4{
  color:var(--df-service-text,#111);
  margin:0 0 12px;
  font-weight:800;
}
.df-service-main p,
.df-service-point p{
  color:var(--df-service-muted,#333);
  margin:0;
  line-height:1.7;
}
.df-service-image-wrap{
  width:100%;
  max-width:380px;
  margin-top:24px;
  border-radius:var(--df-service-image-radius, calc(var(--df-service-radius,18px) - 4px)) !important;
  overflow:hidden !important;
  line-height:0;
  display:block;
  background:transparent;
}
.df-service-image-wrap .df-service-image,
.df-service-image{
  border-radius:var(--df-service-image-radius, calc(var(--df-service-radius,18px) - 4px)) !important;
  width:100%;
  max-width:380px;
  display:block;
  object-fit:cover;
  overflow:hidden !important;
}
.df-service-link{
  color:var(--df-service-text,#111) !important;
  display:inline-block;
  margin-top:28px;
  text-decoration:underline !important;
  text-underline-offset:4px;
}
.df-service-points{display:flex;flex-direction:column;gap:20px;justify-content:center;}
.df-service-point{display:grid;grid-template-columns:24px 1fr;gap:16px;align-items:start;}
.df-service-check {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: var(--df-service-accent, #a88a5f);
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    margin-top: 0px;
    padding: 5px;
}
.df-service-divider{height:1px;background:#e6e1d9;width:100%;}
.df-ticker-slider,
.df-ticker-slider .df-ticker-track,
.df-ticker-slider .df-ticker-item{
  color:var(--df-ticker-color,#e30613) !important;
}
@media (prefers-reduced-motion: reduce){
  .df-service-content.is-sliding > *{animation:none;}
}
@media (max-width: 991px){
  .df-service-tabs{grid-template-columns:repeat(2,minmax(0,1fr));}
  .df-service-content{grid-template-columns:1fr;padding:34px;gap:34px;}
}
@media (max-width: 575px){
  .df-serviceblokken{padding:10px;border-radius:14px;}
  .df-service-tabs{grid-template-columns:1fr;gap:8px;}
  .df-serviceblokken button.df-service-tab,
  .df-serviceblokken .df-service-tab{min-height:auto;padding:14px 16px;gap:10px;font-size:1.05rem;}
  .df-service-content{padding:24px;}
}

/* === DF FIX 2026-05-31: index voorraad slider hover-hoeken ===
   Zorgt dat de hover-border dezelfde border-radius volgt als de kaart.
   Ook de afbeelding/container wordt binnen de afgeronde kaart afgeknipt,
   zodat er links/rechts boven geen donkere hoeken zichtbaar blijven. */
.df-index-slider-wrap,
.dfv-index-slider-wrap,
.dfv-index-slider-outer{
  --dfv-index-card-radius: var(--dfv-index-card-radius, 10px);
  --dfv-index-card-hover-radius: var(--dfv-index-card-hover-radius, var(--dfv-index-card-radius, 10px));
}

.df-index-slider .swiper-slide:not(.df-index-promo-slide) #cardbox,
.dfv-index-slider .swiper-slide:not(.df-index-promo-slide) #cardbox,
.df-index-slide:not(.df-index-promo-slide) #cardbox,
.dfv-index-slider-slide:not(.df-index-promo-slide) #cardbox{
  position: relative !important;
  background: #ffffff !important;
  background-clip: padding-box !important;
  border: 1px solid var(--dfv-index-card-border, transparent) !important;
  border-radius: var(--dfv-index-card-radius, 10px) !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  isolation: isolate !important;
  transition: border-color .22s ease, box-shadow .22s ease, transform .22s ease, border-radius .22s ease !important;
}

.df-index-slider .swiper-slide:not(.df-index-promo-slide) #cardbox:hover,
.dfv-index-slider .swiper-slide:not(.df-index-promo-slide) #cardbox:hover,
.df-index-slide:not(.df-index-promo-slide) #cardbox:hover,
.dfv-index-slider-slide:not(.df-index-promo-slide) #cardbox:hover,
.df-index-slider .swiper-slide:not(.df-index-promo-slide) #cardbox:focus-within,
.dfv-index-slider .swiper-slide:not(.df-index-promo-slide) #cardbox:focus-within{
  border-color: var(--dfv-index-card-hover-border, var(--dfv-slider-card-hover-border, #0047ba)) !important;
  border-radius: var(--dfv-index-card-hover-radius, var(--dfv-index-card-radius, 10px)) !important;
}

.df-index-slider .swiper-slide:not(.df-index-promo-slide) #cardbox > #dvo-ifimagebox,
.dfv-index-slider .swiper-slide:not(.df-index-promo-slide) #cardbox > #dvo-ifimagebox,
.df-index-slide:not(.df-index-promo-slide) #cardbox > #dvo-ifimagebox,
.dfv-index-slider-slide:not(.df-index-promo-slide) #cardbox > #dvo-ifimagebox,
.df-index-slider .swiper-slide:not(.df-index-promo-slide) #cardbox .dvo-thumb-container,
.dfv-index-slider .swiper-slide:not(.df-index-promo-slide) #cardbox .dvo-thumb-container,
.df-index-slide:not(.df-index-promo-slide) #cardbox .dvo-thumb-container,
.dfv-index-slider-slide:not(.df-index-promo-slide) #cardbox .dvo-thumb-container,
.df-index-slider .swiper-slide:not(.df-index-promo-slide) #cardbox .dvo-thumb-container a,
.dfv-index-slider .swiper-slide:not(.df-index-promo-slide) #cardbox .dvo-thumb-container a,
.df-index-slide:not(.df-index-promo-slide) #cardbox .dvo-thumb-container a,
.dfv-index-slider-slide:not(.df-index-promo-slide) #cardbox .dvo-thumb-container a{
  background: #ffffff !important;
  border-top-left-radius: inherit !important;
  border-top-right-radius: inherit !important;
  overflow: hidden !important;
}

.df-index-slider .swiper-slide:not(.df-index-promo-slide) #cardbox img.list-thumb,
.dfv-index-slider .swiper-slide:not(.df-index-promo-slide) #cardbox img.list-thumb,
.df-index-slide:not(.df-index-promo-slide) #cardbox img.list-thumb,
.dfv-index-slider-slide:not(.df-index-promo-slide) #cardbox img.list-thumb{
  display: block !important;
  width: 100% !important;
  border-radius: 0 !important;
  margin-bottom: 0 !important;
}

.df-index-slider .swiper-slide:not(.df-index-promo-slide) #cardbox:hover img.list-thumb,
.dfv-index-slider .swiper-slide:not(.df-index-promo-slide) #cardbox:hover img.list-thumb,
.df-index-slide:not(.df-index-promo-slide) #cardbox:hover img.list-thumb,
.dfv-index-slider-slide:not(.df-index-promo-slide) #cardbox:hover img.list-thumb{
  border-radius: 0 !important;
}

.dfv-list-next-to-filter .dfv-occasionlist-wrap #dvo-occasions,
.dfv-list-next-to-filter #dvo-occasionlist {
    width: 100%;
}

@keyframes dfvFilterIn {
    from { opacity: 0; transform: translateY(-8px); }
    to { opacity: 1; transform: translateY(0); }
}


/* === DFV Lease en financieren detailknop + calculator popup === */
.dfv-detail-cta-lease {
  white-space: nowrap;
}
.dfv-leasecalc-modal .dfv-popup-dialog {
  max-width: 920px;
}
.dfv-leasecalc-logo {
  max-width: 180px;
  max-height: 64px;
  object-fit: contain;
  display: block;
  margin: 0 0 12px;
  background: #fff;
  border-radius: 10px;
  padding: 8px;
}
.dfv-leasecalc-wrap {
  padding: 24px;
  background: #fff;
}
.dfv-leasecalc-tabs {
  display: flex;
  gap: 10px;
  margin-bottom: 18px;
}
.dfv-leasecalc-tab {
  border: 1px solid #d8dde6;
  background: #f7f8fb;
  color: #111827;
  border-radius: 12px;
  padding: 12px 18px;
  font-weight: 700;
  cursor: pointer;
}
.dfv-leasecalc-tab.is-active {
  background: #1f4aa8;
  border-color: #1f4aa8;
  color: #fff;
}
.dfv-leasecalc-summary {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  background: #f4f6fa;
  border: 1px solid #e3e7ef;
  border-radius: 14px;
  padding: 14px 16px;
  margin-bottom: 18px;
}
.dfv-leasecalc-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.dfv-leasecalc-grid label {
  display: flex;
  flex-direction: column;
  gap: 7px;
  font-weight: 700;
  color: #111827;
}
.dfv-leasecalc-grid input,
.dfv-leasecalc-grid select {
  width: 100%;
  height: 48px;
  border: 1px solid #d8dde6;
  border-radius: 12px;
  padding: 0 14px;
  background: #fff;
  font-weight: 700;
}
.dfv-leasecalc-result {
  margin-top: 20px;
  padding: 18px;
  border-radius: 16px;
  background: #111827;
  color: #fff;
  display: grid;
  gap: 6px;
}
.dfv-leasecalc-result span {
  opacity: .8;
  font-weight: 700;
}
.dfv-leasecalc-result strong {
  font-size: clamp(1.8rem, 3vw, 2.6rem);
  line-height: 1.1;
}
.dfv-leasecalc-result small {
  opacity: .75;
}
.dfv-leasecalc-provider {
  margin-top: 16px;
  color: #4b5563;
  font-size: .95rem;
  display: flex;
  flex-wrap: wrap;
  gap: 12px 20px;
  align-items: center;
}
.dfv-leasecalc-provider a {
  color: #1f4aa8;
  font-weight: 700;
  text-decoration: none !important;
}
@media (max-width: 768px) {
  .dfv-leasecalc-grid { grid-template-columns: 1fr; }
  .dfv-leasecalc-summary { flex-direction: column; }
  .dfv-detail-cta-buttons { flex-wrap: wrap; }
  .dfv-detail-cta-lease { width: 100%; }
}


/* === DFV fix: admin-kleuren detail CTA en inruil/verzendknoppen altijd laten winnen ===
   Oorzaak: het donkere detailthema overschreef de CSS-variabelen van de admin-instellingen. */
#dvo-website .dfv-detail-cta-button,
body #dvo-website .dfv-detail-cta-button {
  background-color: var(--dfv-cta-bg, #970a0a) !important;
  color: var(--dfv-cta-color, #ffffff) !important;
  border-color: var(--dfv-cta-border, #970a0a) !important;
  border-style: solid !important;
  border-width: 1px !important;
  border-radius: var(--dfv-cta-radius, 14px) !important;
  font-size: var(--dfv-cta-font-size, 1rem) !important;
  font-weight: var(--dfv-cta-font-weight, 900) !important;
}
#dvo-website .dfv-detail-cta-button:hover,
#dvo-website .dfv-detail-cta-button:focus,
body #dvo-website .dfv-detail-cta-button:hover,
body #dvo-website .dfv-detail-cta-button:focus {
  background-color: var(--dfv-cta-hover-bg, #ffffff) !important;
  color: var(--dfv-cta-hover-color, #970a0a) !important;
  border-color: var(--dfv-cta-hover-border, #970a0a) !important;
}
#dvo-website .dfv-submit-btn,
body #dvo-website .dfv-submit-btn,
body .dfv-popup-modal .dfv-submit-btn {
  background-color: var(--dfv-submit-bg, #970a0a) !important;
  color: var(--dfv-submit-color, #ffffff) !important;
  border-color: var(--dfv-submit-border, #970a0a) !important;
  border-style: solid !important;
  border-width: 1px !important;
  border-radius: var(--dfv-submit-radius, 14px) !important;
  font-size: var(--dfv-submit-font-size, 1rem) !important;
  font-weight: var(--dfv-submit-font-weight, 900) !important;
}
#dvo-website .dfv-submit-btn:hover,
#dvo-website .dfv-submit-btn:focus,
body #dvo-website .dfv-submit-btn:hover,
body #dvo-website .dfv-submit-btn:focus,
body .dfv-popup-modal .dfv-submit-btn:hover,
body .dfv-popup-modal .dfv-submit-btn:focus {
  background-color: var(--dfv-submit-hover-bg, #ffffff) !important;
  color: var(--dfv-submit-hover-color, #970a0a) !important;
  border-color: var(--dfv-submit-hover-border, #970a0a) !important;
}


/* === DFV fix: online/offline contactblok rechts naast onderste contact CTA === */
#dvo-website .dfv-bottom-contact-combo,
.dfv-bottom-contact-combo {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 430px) !important;
    gap: 18px !important;
    align-items: stretch !important;
    width: 100% !important;
}

#dvo-website .dfv-bottom-contact-combo .dfv-bottom-contact-cta,
.dfv-bottom-contact-combo .dfv-bottom-contact-cta {
    min-width: 0 !important;
    height: 100% !important;
}

#dvo-website .dfv-bottom-contact-combo .dvo-contact-infobox,
.dfv-bottom-contact-combo .dvo-contact-infobox {
    display: flex !important;
    align-items: center !important;
    height: 100% !important;
    min-height: 150px !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 18px !important;
    background: var(--dvo-contactblok-bg, #000000) !important;
    color: #ffffff !important;
    border-radius: 10px !important;
    overflow: hidden !important;
}

#dvo-website .dfv-bottom-contact-combo .dvo-contact-infobox.d-none,
.dfv-bottom-contact-combo .dvo-contact-infobox.d-none {
    display: flex !important;
}

#dvo-website .dfv-bottom-contact-combo .dvo-contact-infobox-inner,
.dfv-bottom-contact-combo .dvo-contact-infobox-inner {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    width: 100% !important;
}

#dvo-website .dfv-bottom-contact-combo .dvo-contact-image,
.dfv-bottom-contact-combo .dvo-contact-image {
    flex: 0 0 140px !important;
    max-width: 140px !important;
}

#dvo-website .dfv-bottom-contact-combo .dvo-contact-image img,
.dfv-bottom-contact-combo .dvo-contact-image img {
    width: 140px !important;
    height: auto !important;
    max-height: 135px !important;
    object-fit: contain !important;
    display: block !important;
}

#dvo-website .dfv-bottom-contact-combo .dvo-contact-text,
.dfv-bottom-contact-combo .dvo-contact-text {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    color: #ffffff !important;
    font-size: clamp(.95rem, 1.1vw, 1.12rem) !important;
    line-height: 1.45 !important;
    font-weight: 500 !important;
}

#dvo-website .dfv-bottom-contact-combo .dvo-contact-text a,
.dfv-bottom-contact-combo .dvo-contact-text a {
    color: #ffffff !important;
    text-decoration: none !important;
    font-weight: 700 !important;
}

@media (max-width: 991px) {
    #dvo-website .dfv-bottom-contact-combo,
    .dfv-bottom-contact-combo {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 520px) {
    #dvo-website .dfv-bottom-contact-combo .dvo-contact-infobox-inner,
    .dfv-bottom-contact-combo .dvo-contact-infobox-inner {
        flex-direction: column !important;
        text-align: center !important;
    }

    #dvo-website .dfv-bottom-contact-combo .dvo-contact-image,
    .dfv-bottom-contact-combo .dvo-contact-image {
        flex-basis: auto !important;
        max-width: 180px !important;
    }
}

/* === DFV lease-popup: compact formulier + termijnknoppen === */
.dfv-leasecalc-modal .dfv-popup-dialog {
  max-width: 980px;
}
.dfv-leasecalc-modal .dfv-popup-hero {
  padding-bottom: 16px;
}
.dfv-leasecalc-modal .dfv-popup-eyebrow {
  display: none !important;
}
.dfv-leasecalc-wrap {
  padding: 18px;
}
.dfv-leasecalc-tabs {
  margin-bottom: 12px;
}
.dfv-leasecalc-tab {
  padding: 9px 14px;
  border-radius: 10px;
}
.dfv-leasecalc-summary {
  padding: 10px 13px;
  margin-bottom: 12px;
  border-radius: 12px;
}
.dfv-leasecalc-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.dfv-leasecalc-grid label,
.dfv-lease-form-grid label,
.dfv-leasecalc-term-row > span {
  font-size: .82rem;
  gap: 4px;
}
.dfv-leasecalc-grid input,
.dfv-leasecalc-grid select,
.dfv-lease-form-grid input,
.dfv-lease-form-grid select,
.dfv-lease-form-grid textarea {
  min-height: 38px;
  height: 38px;
  border: 1px solid #d8dde6;
  border-radius: 9px;
  padding: 0 10px;
  font-size: .9rem;
  font-weight: 650;
  background: #fff;
}
.dfv-lease-form-grid textarea {
  height: auto;
  min-height: 58px;
  padding-top: 8px;
  resize: vertical;
}
.dfv-leasecalc-term-row {
  display: grid;
  grid-template-columns: 90px 1fr;
  gap: 10px;
  align-items: center;
  margin-top: 10px;
}
.dfv-leasecalc-term-buttons {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 8px;
}
.dfv-leasecalc-term {
  min-height: 38px;
  border: 1px solid #d8dde6;
  border-radius: 10px;
  background: #f7f8fb;
  color: #111827;
  font-weight: 600;
  cursor: pointer;
}
.dfv-leasecalc-term.is-active,
.dfv-leasecalc-term:hover {
  background: #1f4aa8;
  border-color: #1f4aa8;
  color: #fff;
}
.dfv-leasecalc-result {
  margin-top: 12px;
  padding: 12px 14px;
  border-radius: 13px;
}
.dfv-leasecalc-result strong {
  font-size: clamp(1.35rem, 2.2vw, 2rem);
}
.dfv-lease-application-form {
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px solid #e3e7ef;
}
.dfv-lease-section {
  display: none;
}
.dfv-lease-section.is-active {
  display: block;
}
.dfv-lease-section h4 {
  margin: 0 0 10px;
  font-size: 1rem;
  font-weight: 600;
  color: #111827;
}
.dfv-lease-form-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 9px;
  position: relative;
}
.dfv-lease-field-full,
.dfv-lease-form-grid .dfv-lease-field-full {
  grid-column: 1 / -1;
}
.dfv-lease-private-active .dfv-calc-residual-field {
  display: none;
}
.dfv-lease-submit {
  width: 100%;
  margin-top: 12px;
  min-height: 42px;
  border-radius: 12px;
}
.dfv-lease-recaptcha {
  margin-top: 12px;
}
.dfv-kvk-suggestions {
  display: none;
  grid-column: 1 / -1;
  margin-top: -4px;
  border: 1px solid #d8dde6;
  border-radius: 10px;
  background: #fff;
  overflow: hidden;
  box-shadow: 0 12px 28px rgba(15, 23, 42, .12);
}
.dfv-kvk-suggestions.is-visible {
  display: grid;
}
.dfv-kvk-suggestion {
  border: 0;
  border-bottom: 1px solid #eef1f5;
  background: #fff;
  padding: 8px 10px;
  text-align: left;
  font-size: .88rem;
  cursor: pointer;
}
.dfv-kvk-suggestion:hover {
  background: #f4f6fa;
}
.dfv-field-error {
  border-color: #dc2626 !important;
  box-shadow: 0 0 0 2px rgba(220, 38, 38, .1) !important;
}
.dfv-leasecalc-provider {
  margin-top: 10px;
  font-size: .82rem;
}
@media (max-width: 900px) {
  .dfv-leasecalc-grid,
  .dfv-lease-form-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 560px) {
  .dfv-leasecalc-grid,
  .dfv-lease-form-grid,
  .dfv-leasecalc-term-row {
    grid-template-columns: 1fr;
  }
  .dfv-leasecalc-term-buttons {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

/* === DFV lease-popup modernisering 2026-06-09 === */
.dfv-leasecalc-modal .dfv-popup-dialog {
  max-width: 1040px !important;
  border-radius: 26px !important;
  background: #ffffff !important;
  overflow: auto !important;
}

.dfv-leasecalc-modal .dfv-popup-hero {
  background: transparent !important;
  color: #111827 !important;
  border-radius: 26px 26px 0 0 !important;
  padding: 26px 30px 10px !important;
  border-bottom: 0 !important;
}

.dfv-leasecalc-modal .dfv-popup-hero h3 {
  color: #111827 !important;
  margin: 8px 54px 6px 0 !important;
  font-size: clamp(1.6rem, 2.6vw, 2.15rem) !important;
  letter-spacing: -0.04em !important;
}

.dfv-leasecalc-modal .dfv-popup-hero p {
  color: #475467 !important;
  max-width: 620px !important;
  font-size: .98rem !important;
  line-height: 1.45 !important;
  opacity: 1 !important;
}

.dfv-leasecalc-modal .dfv-leasecalc-logo {
  max-width: 170px !important;
  max-height: 58px !important;
  margin: 0 0 10px !important;
  padding: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.dfv-leasecalc-modal .dfv-popup-close {
  background: #111827 !important;
  color: #ffffff !important;
  border: 0 !important;
  box-shadow: 0 10px 25px rgba(15, 23, 42, .18) !important;
}

.dfv-leasecalc-modal .dfv-leasecalc-wrap {
  padding: 16px 30px 24px !important;
}

.dfv-leasecalc-modal .dfv-leasecalc-tabs {
  display: inline-flex !important;
  gap: 6px !important;
  padding: 5px !important;
  margin-bottom: 14px !important;
  border-radius: 999px !important;
  background: #f2f4f7 !important;
  border: 1px solid #eaecf0 !important;
}

.dfv-leasecalc-modal .dfv-leasecalc-tab {
  min-height: 38px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: transparent !important;
  color: #475467 !important;
  padding: 8px 18px !important;
  font-size: .92rem !important;
  font-weight: 700 !important;
}

.dfv-leasecalc-modal .dfv-leasecalc-tab.is-active {
  background: #0f3f95 !important;
  color: #ffffff !important;
  box-shadow: 0 8px 20px rgba(15, 63, 149, .18) !important;
}

.dfv-leasecalc-modal .dfv-leasecalc-summary {
  background: #f8fafc !important;
  border: 1px solid #e6ebf2 !important;
  border-radius: 16px !important;
  padding: 12px 16px !important;
  margin-bottom: 12px !important;
  align-items: center !important;
}

.dfv-leasecalc-modal .dfv-leasecalc-summary strong,
.dfv-leasecalc-modal .dfv-leasecalc-summary span {
  color: #111827 !important;
  font-size: .98rem !important;
  font-weight: 600 !important;
}

.dfv-leasecalc-modal .dfv-leasecalc-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 12px !important;
}

.dfv-leasecalc-modal .dfv-leasecalc-grid > input[type="hidden"] {
  display: none !important;
}

.dfv-leasecalc-modal .dfv-leasecalc-grid label,
.dfv-leasecalc-modal .dfv-lease-form-grid label,
.dfv-leasecalc-modal .dfv-leasecalc-term-row > span {
  color: #344054 !important;
  font-size: .78rem !important;
  font-weight: 700 !important;
  letter-spacing: .01em !important;
}

.dfv-leasecalc-modal .dfv-leasecalc-grid input,
.dfv-leasecalc-modal .dfv-leasecalc-grid select,
.dfv-leasecalc-modal .dfv-lease-form-grid input,
.dfv-leasecalc-modal .dfv-lease-form-grid select,
.dfv-leasecalc-modal .dfv-lease-form-grid textarea {
  min-height: 42px !important;
  height: 42px !important;
  border: 1px solid #d0d5dd !important;
  border-radius: 12px !important;
  padding: 0 13px !important;
  background: #ffffff !important;
  color: #101828 !important;
  font-size: .9rem !important;
  font-weight: 700 !important;
  box-shadow: 0 1px 2px rgba(16, 24, 40, .05) !important;
  transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease !important;
}

.dfv-leasecalc-modal .dfv-leasecalc-grid input:focus,
.dfv-leasecalc-modal .dfv-leasecalc-grid select:focus,
.dfv-leasecalc-modal .dfv-lease-form-grid input:focus,
.dfv-leasecalc-modal .dfv-lease-form-grid select:focus,
.dfv-leasecalc-modal .dfv-lease-form-grid textarea:focus {
  outline: none !important;
  border-color: #0f3f95 !important;
  box-shadow: 0 0 0 4px rgba(15, 63, 149, .12) !important;
}

.dfv-leasecalc-modal .dfv-lease-form-grid textarea {
  height: auto !important;
  min-height: 64px !important;
  padding-top: 10px !important;
}

.dfv-leasecalc-modal .dfv-leasecalc-term-row {
  grid-template-columns: 78px 1fr !important;
  margin-top: 12px !important;
}

.dfv-leasecalc-modal .dfv-leasecalc-term-buttons {
  gap: 8px !important;
}

.dfv-leasecalc-modal .dfv-leasecalc-term {
  min-height: 40px !important;
  border-radius: 12px !important;
  border: 1px solid #d0d5dd !important;
  background: #ffffff !important;
  color: #344054 !important;
  box-shadow: 0 1px 2px rgba(16, 24, 40, .04) !important;
}

.dfv-leasecalc-modal .dfv-leasecalc-term.is-active,
.dfv-leasecalc-modal .dfv-leasecalc-term:hover {
  background: #0f3f95 !important;
  border-color: #0f3f95 !important;
  color: #ffffff !important;
}

.dfv-leasecalc-modal .dfv-leasecalc-result {
  max-width: 360px !important;
  margin: 14px 0 0 !important;
  padding: 14px 16px !important;
  border-radius: 18px !important;
  background: linear-gradient(135deg, #101828 0%, #18253f 100%) !important;
  box-shadow: 0 16px 38px rgba(16, 24, 40, .16) !important;
}

.dfv-leasecalc-modal .dfv-leasecalc-result span {
  font-size: .82rem !important;
  line-height: 1.2 !important;
}

.dfv-leasecalc-modal .dfv-leasecalc-result strong {
  font-size: clamp(1.45rem, 2.2vw, 2.05rem) !important;
  line-height: 1 !important;
}

.dfv-leasecalc-modal .dfv-leasecalc-result small {
  font-size: .74rem !important;
  line-height: 1.35 !important;
}

.dfv-leasecalc-modal .dfv-lease-application-form {
  margin-top: 16px !important;
  padding-top: 16px !important;
  border-top: 1px solid #eaecf0 !important;
}

.dfv-leasecalc-modal .dfv-lease-section h4 {
  margin-bottom: 12px !important;
  color: #101828 !important;
  font-size: 1.03rem !important;
  letter-spacing: -0.02em !important;
}

.dfv-leasecalc-modal .dfv-lease-form-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 11px !important;
}

.dfv-leasecalc-modal .dfv-lease-field-full,
.dfv-leasecalc-modal .dfv-lease-form-grid .dfv-lease-field-full {
  grid-column: 1 / -1 !important;
}

.dfv-leasecalc-modal .dfv-lease-recaptcha {
  display: flex !important;
  justify-content: center !important;
  margin-top: 14px !important;
}

.dfv-leasecalc-modal .dfv-lease-submit {
  width: auto !important;
  min-height: 46px !important;
  margin: 14px auto 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 999px !important;
  padding: 0 28px !important;
  box-shadow: 0 14px 34px rgba(151, 10, 10, .18) !important;
}

.dfv-leasecalc-modal .dfv-leasecalc-provider {
  width: 100% !important;
  margin: 14px auto 0 !important;
  padding-top: 10px !important;
  border-top: 1px solid #f0f2f5 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 3px !important;
  color: #667085 !important;
  font-size: .74rem !important;
  line-height: 1.35 !important;
  text-align: center !important;
}

.dfv-leasecalc-modal .dfv-leasecalc-provider a {
  color: #344054 !important;
  font-size: .76rem !important;
  font-weight: 700 !important;
}

@media (max-width: 900px) {
  .dfv-leasecalc-modal .dfv-leasecalc-grid,
  .dfv-leasecalc-modal .dfv-lease-form-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .dfv-leasecalc-modal .dfv-leasecalc-result {
    max-width: none !important;
  }
}

@media (max-width: 560px) {
  .dfv-leasecalc-modal .dfv-popup-hero,
  .dfv-leasecalc-modal .dfv-leasecalc-wrap {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  .dfv-leasecalc-modal .dfv-leasecalc-grid,
  .dfv-leasecalc-modal .dfv-lease-form-grid,
  .dfv-leasecalc-modal .dfv-leasecalc-term-row {
    grid-template-columns: 1fr !important;
  }

  .dfv-leasecalc-modal .dfv-leasecalc-term-buttons {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}


/* === DFV lease popup kleine tekst- en looptijd-aanpassingen === */
.dfv-leasecalc-modal .dfv-private-term {
  display: none !important;
}
.dfv-leasecalc-modal.dfv-lease-private-active .dfv-private-term {
  display: inline-flex !important;
}
.dfv-leasecalc-modal .dfv-lease-form-grid label {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
}
.dfv-leasecalc-modal .dfv-leasecalc-result small:empty {
  display: none !important;
}
.dfv-leasecalc-modal.dfv-lease-private-active .dfv-leasecalc-term-buttons {
  grid-template-columns: repeat(10, minmax(0, 1fr)) !important;
}

@media (max-width: 768px) {
  .dfv-leasecalc-modal.dfv-lease-private-active .dfv-leasecalc-term-buttons {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 480px) {
  .dfv-leasecalc-modal.dfv-lease-private-active .dfv-leasecalc-term-buttons {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

/* DFV lease-popup providergegevens compact op één gecentreerde regel */
.dfv-leasecalc-modal .dfv-leasecalc-provider {
  flex-direction: row !important;
  flex-wrap: wrap !important;
  gap: 4px 8px !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  color: #667085 !important;
  font-size: .74rem !important;
  line-height: 1.45 !important;
}

.dfv-leasecalc-modal .dfv-leasecalc-provider span,
.dfv-leasecalc-modal .dfv-leasecalc-provider a {
  display: inline-flex !important;
  align-items: center !important;
  white-space: nowrap !important;
}

.dfv-leasecalc-modal .dfv-leasecalc-provider .dfv-provider-separator {
  color: #c5cbd5 !important;
  font-weight: 600 !important;
}

@media (max-width: 640px) {
  .dfv-leasecalc-modal .dfv-leasecalc-provider {
    font-size: .7rem !important;
    gap: 3px 6px !important;
  }
}

#dvo-website .dfv-detail-titlebar-lease,
body #dvo-website .dfv-detail-titlebar-lease {
    font-weight: 600 !important;
    white-space: nowrap !important;
}

#dvo-website .dfv-detail-titlebar-separator,
body #dvo-website .dfv-detail-titlebar-separator {
    display: inline-block !important;
    margin: 0 8px !important;
    opacity: .55 !important;
}

@media (max-width: 992px) {
}

@media (max-width: 1200px) {
}

@media (max-width: 992px) {
}

@media (max-width: 520px) {
}

#dvo-website .dfv-detail-cta-button,
#dvo-website.dfv-detail-theme-dark .dfv-detail-cta-button,
body #dvo-website .dfv-detail-cta-button{
  background-color:var(--dfv-cta-bg,#970a0a) !important;
  color:var(--dfv-cta-color,#ffffff) !important;
  border:1px solid var(--dfv-cta-border,#970a0a) !important;
  border-radius:var(--dfv-cta-radius,14px) !important;
  font-size:var(--dfv-cta-font-size,1rem) !important;
  font-weight:var(--dfv-cta-font-weight,900) !important;
}
#dvo-website .dfv-detail-cta-button:hover,
#dvo-website .dfv-detail-cta-button:focus,
#dvo-website.dfv-detail-theme-dark .dfv-detail-cta-button:hover,
#dvo-website.dfv-detail-theme-dark .dfv-detail-cta-button:focus,
body #dvo-website .dfv-detail-cta-button:hover,
body #dvo-website .dfv-detail-cta-button:focus{
  background-color:var(--dfv-cta-hover-bg,#ffffff) !important;
  color:var(--dfv-cta-hover-color,#970a0a) !important;
  border-color:var(--dfv-cta-hover-border,#970a0a) !important;
}
#dvo-website .dfv-submit-btn,
body #dvo-website .dfv-submit-btn,
body .dfv-popup-modal .dfv-submit-btn{
  background-color:var(--dfv-submit-bg,#970a0a) !important;
  color:var(--dfv-submit-color,#ffffff) !important;
  border:1px solid var(--dfv-submit-border,#970a0a) !important;
  border-radius:var(--dfv-submit-radius,14px) !important;
  font-size:var(--dfv-submit-font-size,1rem) !important;
  font-weight:var(--dfv-submit-font-weight,900) !important;
}
#dvo-website .dfv-submit-btn:hover,
#dvo-website .dfv-submit-btn:focus,
body #dvo-website .dfv-submit-btn:hover,
body #dvo-website .dfv-submit-btn:focus,
body .dfv-popup-modal .dfv-submit-btn:hover,
body .dfv-popup-modal .dfv-submit-btn:focus{
  background-color:var(--dfv-submit-hover-bg,#ffffff) !important;
  color:var(--dfv-submit-hover-color,#970a0a) !important;
  border-color:var(--dfv-submit-hover-border,#970a0a) !important;
}


#dvo-occasionlist .dvo-voorraadlijst-btn,
#dvo-occasionlist .dvo-voorraadlijst-btn.btn,
#dvo-occasionlist .dvo-gotodetail .dvo-voorraadlijst-btn,
.dvo-clear .dvo-voorraadlijst-btn,
.dvo-clear .dvo-voorraadlijst-btn.btn,
.dvo-clear .dvo-gotodetail .dvo-voorraadlijst-btn {
  background-color: var(--dfv-list-btn-bg, #111827) !important;
  color: var(--dfv-list-btn-color, #ffffff) !important;
  border: 1px solid var(--dfv-list-btn-border, var(--dfv-list-btn-bg, #111827)) !important;
  border-radius: var(--dfv-list-btn-radius, 10px) !important;
  box-shadow: none !important;
}
#dvo-occasionlist .dvo-voorraadlijst-btn:hover,
#dvo-occasionlist .dvo-voorraadlijst-btn:focus,
.dvo-clear .dvo-voorraadlijst-btn:hover,
.dvo-clear .dvo-voorraadlijst-btn:focus {
  background-color: var(--dfv-list-btn-hover-bg, var(--dfv-list-btn-bg, #111827)) !important;
  color: var(--dfv-list-btn-hover-color, var(--dfv-list-btn-color, #ffffff)) !important;
  border-color: var(--dfv-list-btn-hover-border, var(--dfv-list-btn-border, var(--dfv-list-btn-bg, #111827))) !important;
}


/* === DFV zoekfilter clean rebuild === */
.dvo-occasions .dfv-filter-sidebar,
.dvo-occasions .dfv-filter-top {
    box-sizing: border-box;
}
.dfv-filter-layout-left #dvo-filter {
    width: 320px;
    max-width: 320px;
    flex: 0 0 320px;
    padding: 26px 28px !important;
}
.dfv-filter-layout-left .dfv-list-next-to-filter {
    flex: 1 1 0;
    max-width: calc(100% - 320px);
}
#dvo-filter,
#dvo-filter * {
    box-sizing: border-box;
}
#dvo-filter #dvo-text h2 {
    margin: 0 0 2px 0;
    line-height: 1.1;
}
#dvo-filter .dfv-filter-count {
    line-height: 1.25;
}
#dvo-filter-form {
    margin: 0 !important;
    padding: 0 !important;
}
#dvo-filter-form > .dvo-filter,
#dvo-filter-form > .resetbtn {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    padding: 0 !important;
    margin: 0 0 20px 0 !important;
}
#dvo-filter-form > .dvo-filter.d-none,
#dvo-filter-form .d-none {
    display: none !important;
}
#dvo-filter-form > .dvo-filter:not(.d-none) {
    border-top: 1px solid var(--dfv-filter-line-color, #e5e7eb) !important;
    padding-top: 14px !important;
    margin-top: 0 !important;
}
#dvo-filter-form > .dvo-filter:not(.d-none):first-of-type {
    border-top: 0 !important;
    padding-top: 0 !important;
}
#dvo-filter .dfv-multiselect,
#dvo-filter .dfv-range-filter,
#dvo-filter .dfv-sort-filter,
#dvo-filter .dfv-dimension-filter {
    width: 100%;
}
#dvo-filter .dfv-ms-toggle,
#dvo-filter .dfv-range-head,
#dvo-filter .dfv-sort-head,
#dvo-filter .dfv-dimension-toggle {
    width: 100%;
    display: flex !important;
    align-items: center;
    justify-content: flex-start;
    gap: 0;
    padding: 0 !important;
    margin: 0 0 12px 0 !important;
    min-height: 28px;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    color: var(--dfv-filter-label-color, #ffffff) !important;
    font-weight: var(--dfv-filter-label-weight, 800) !important;
    text-align: left !important;
    line-height: 1.25;
    cursor: pointer;
    font-size: 16px;
}
#dvo-filter .dfv-ms-toggle:hover,
#dvo-filter .dfv-range-head:hover,
#dvo-filter .dfv-sort-head:hover,
#dvo-filter .dfv-dimension-toggle:hover,
#dvo-filter .dfv-ms-toggle:focus,
#dvo-filter .dfv-range-head:focus,
#dvo-filter .dfv-sort-head:focus,
#dvo-filter .dfv-dimension-toggle:focus {
    color: var(--dfv-filter-label-color, #ffffff) !important;
    background: transparent !important;
    outline: none !important;
}
#dvo-filter .dfv-ms-menu,
#dvo-filter .dfv-range-body,
#dvo-filter .dfv-sort-body,
#dvo-filter .dfv-dimension-menu {
    display: none;
    width: 100%;
    margin: 0;
    padding: 0;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}
#dvo-filter .dfv-multiselect.is-open > .dfv-ms-menu,
#dvo-filter .dfv-range-filter:not(.is-collapsed) > .dfv-range-body,
#dvo-filter .dfv-sort-filter:not(.is-collapsed) > .dfv-sort-body,
#dvo-filter .dfv-dimension-filter.is-open > .dfv-dimension-menu {
    display: block !important;
}
#dvo-filter .dfv-ms-option,
#dvo-filter .dfv-ms-model-option,
#dvo-filter .dfv-dimension-option {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    width: 100%;
    padding: 4px 0 !important;
    margin: 0 0 6px 0 !important;
    color: var(--dfv-filter-option-color, var(--dfv-filter-label-color, #ffffff)) !important;
    font-weight: 500 !important;
    line-height: 1.3;
    cursor: pointer;
}
#dvo-filter .dfv-ms-option span,
#dvo-filter .dfv-ms-model-option span,
#dvo-filter .dfv-dimension-option span {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    gap: 8px;
    color: inherit !important;
    font-size: 16px;
}
#dvo-filter .dfv-ms-option small,
#dvo-filter .dfv-ms-model-option small,
#dvo-filter .dfv-dimension-option small {
    margin-left: auto;
    color: var(--dfv-filter-facet-count-color, currentColor) !important;
    font-weight: 700;
}
#dvo-filter input[type="checkbox"] {
    appearance: none !important;
    -webkit-appearance: none !important;
    width: 22px !important;
    height: 22px !important;
    min-width: 22px !important;
    margin: 0 10px 0 0 !important;
    border: 1px solid rgba(255,255,255,.85) !important;
    background: #ffffff !important;
    border-radius: 0 !important;
    display: inline-grid !important;
    place-content: center !important;
    cursor: pointer;
}
#dvo-filter input[type="checkbox"]::before {
    content: "";
    width: 7px;
    height: 12px;
    border: solid #111111;
    border-width: 0 3px 3px 0;
    transform: rotate(45deg) scale(0);
    transition: transform .12s ease;
}
#dvo-filter input[type="checkbox"]:checked::before {
    transform: rotate(45deg) scale(1);
}
#dvo-filter .dfv-range-row {
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    width: 100%;
}
#dvo-filter select,
#dvo-filter .form-select,
#dvo-filter .dfv-range-row select,
#dvo-filter .dfv-sort-body select {
    width: 100% !important;
    min-height: 42px;
    padding: 0 12px !important;
    background: #ffffff !important;
    border: 1px solid rgba(255,255,255,.65) !important;
    border-radius: 8px !important;
    color: #111111 !important;
    font-weight: 600 !important;
    box-shadow: none !important;
}
#dvo-filter .dvo-reset-btn,
#dvo-filter .reset.btn {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 100% !important;
    min-height: 48px;
    padding: 10px 16px !important;
    margin-top: 18px;
    background: var(--dfv-filter-clear-bg, #555555) !important;
    color: var(--dfv-filter-clear-color, #ffffff) !important;
    border: 1px solid var(--dfv-filter-clear-border, #333333) !important;
    border-radius: var(--dfv-filter-clear-radius, 10px) !important;
    font-weight: var(--dfv-filter-clear-weight, 700) !important;
    text-decoration: none !important;
    box-shadow: none !important;
}
#dvo-filter .dvo-reset-btn:hover,
#dvo-filter .reset.btn:hover,
#dvo-filter .dvo-reset-btn:focus,
#dvo-filter .reset.btn:focus {
    background: var(--dfv-filter-clear-hover-bg, #111827) !important;
    color: var(--dfv-filter-clear-hover-color, #ffffff) !important;
    border-color: var(--dfv-filter-clear-hover-border, #111827) !important;
}
.dfv-active-filter-chips {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin: 0 0 18px 0;
}
.dfv-active-filter-chips:empty {
    display: none;
}
.dfv-active-filter-chip,
.dfv-active-filter-clear {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 36px;
    padding: 8px 12px;
    background: #ffffff;
    color: #111111;
    border: 1px solid #d8dde5;
    border-radius: 999px;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
    text-decoration: none !important;
}
.dfv-active-filter-chip:hover,
.dfv-active-filter-clear:hover {
    background: #111111;
    color: #ffffff;
    border-color: #111111;
}
@media (max-width: 991px) {
    .dfv-filter-layout-left #dvo-filter,
    .dfv-filter-layout-left .dfv-list-next-to-filter {
        width: 100%;
        max-width: 100%;
        flex: 0 0 100%;
    }
}
@media (max-width: 767px) {
    #dvo-filter .dfv-range-row {
        grid-template-columns: 1fr 1fr;
    }
}


/* === DFV SB Occasions v9: herbouw zoekfilter details === */
#dvo-filter #offsetfiltervoorraad,
#dvo-filter #buttonone,
#dvo-filter #buttontwo {
    display: none !important;
}
#dvo-filter .dfv-ms-child-models {
    display: none !important;
    width: calc(100% - 32px) !important;
    margin: 0 0 8px 32px !important;
    padding: 2px 0 2px 14px !important;
    border-left: 2px solid rgba(255,255,255,.25) !important;
}
#dvo-filter .dfv-ms-child-models.is-visible {
    display: block !important;
}
#dvo-filter .dfv-ms-child-models .dfv-ms-model-option {
    padding: 3px 0 !important;
    margin: 0 0 4px 0 !important;
    font-size: .94em !important;
}
#dvo-filter input[type="checkbox"] {
    border-color: var(--dfv-filter-checkbox-border, #ffffff) !important;
    background: var(--dfv-filter-checkbox-bg, #ffffff) !important;
}
#dvo-filter input[type="checkbox"]:checked {
    background: var(--dfv-filter-checkbox-checked-bg, var(--dfv-filter-checkbox-bg, #ffffff)) !important;
    border-color: var(--dfv-filter-checkbox-border, #ffffff) !important;
}
#dvo-filter input[type="checkbox"]::before {
    border-color: var(--dfv-filter-checkbox-check, #111111) !important;
}
.dfv-active-filter-chip {
    background: var(--dfv-filter-chip-bg, #f3f4f6) !important;
    color: var(--dfv-filter-chip-color, #111827) !important;
    border-color: var(--dfv-filter-chip-border, #d8dde5) !important;
    border-radius: var(--dfv-filter-chip-radius, 999px) !important;
}
.dfv-active-filter-chip:hover,
.dfv-active-filter-chip:focus {
    background: var(--dfv-filter-chip-hover-bg, #111827) !important;
    color: var(--dfv-filter-chip-hover-color, #ffffff) !important;
    border-color: var(--dfv-filter-chip-hover-border, #111827) !important;
}
.dfv-active-filter-chip i,
.dfv-active-filter-chip span {
    color: inherit !important;
}
.dfv-active-filter-clear {
    background: var(--dfv-active-clear-bg, #ffffff) !important;
    color: var(--dfv-active-clear-color, #111827) !important;
    border-color: var(--dfv-active-clear-border, #d8dde5) !important;
    border-radius: var(--dfv-active-clear-radius, 999px) !important;
}
.dfv-active-filter-clear:hover,
.dfv-active-filter-clear:focus {
    background: var(--dfv-active-clear-hover-bg, #111827) !important;
    color: var(--dfv-active-clear-hover-color, #ffffff) !important;
    border-color: var(--dfv-active-clear-hover-border, #111827) !important;
}
#dvo-filter input[type="checkbox"] {
    appearance: none !important;
    -webkit-appearance: none !important;
    border-color: var(--dfv-filter-checkbox-border, #ffffff) !important;
    background-color: var(--dfv-filter-checkbox-bg, #ffffff) !important;
    background-image: none !important;
}
#dvo-filter input[type="checkbox"]:checked {
    background-color: var(--dfv-filter-checkbox-checked-bg, var(--dfv-filter-checkbox-bg, #ffffff)) !important;
    border-color: var(--dfv-filter-checkbox-border, #ffffff) !important;
}
#dvo-filter input[type="checkbox"]::before {
    border-color: var(--dfv-filter-checkbox-check, #111111) !important;
}
#dvo-filter .dfv-sort-filter:not(.is-collapsed) > .dfv-sort-body,
#dvo-filter .dfv-range-filter:not(.is-collapsed) > .dfv-range-body,
#dvo-filter .dfv-multiselect.is-open > .dfv-ms-menu,
#dvo-filter .dfv-dimension-filter.is-open > .dfv-dimension-menu {
    display: block !important;
}
#dvo-filter .dfv-ms-merk > .dfv-ms-menu {
    max-height: 510px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding-right: 8px !important;
    scrollbar-width: thin;
    scrollbar-color: rgba(255,255,255,.55) rgba(255,255,255,.12);
}
#dvo-filter .dfv-ms-merk > .dfv-ms-menu::-webkit-scrollbar {
    width: 8px;
}
#dvo-filter .dfv-ms-merk > .dfv-ms-menu::-webkit-scrollbar-track {
    background: rgba(255,255,255,.12);
    border-radius: 999px;
}
#dvo-filter .dfv-ms-merk > .dfv-ms-menu::-webkit-scrollbar-thumb {
    background: rgba(255,255,255,.55);
    border-radius: 999px;
}
#dvo-filter .dfv-ms-child-models {
    display: none !important;
    width: calc(100% - 34px) !important;
    margin: -2px 0 9px 34px !important;
    padding: 2px 0 2px 14px !important;
    border-left: 2px solid rgba(255,255,255,.28) !important;
}
#dvo-filter .dfv-ms-child-models.is-visible {
    display: block !important;
}
#dvo-filter .dfv-ms-child-models .dfv-ms-model-option {
    padding: 3px 0 !important;
    margin: 0 0 4px 0 !important;
    font-size: .94em !important;
}
#dvo-filter input[type="checkbox"] {
    appearance: none !important;
    -webkit-appearance: none !important;
    background-color: var(--dfv-filter-checkbox-bg, #ffffff) !important;
    border: 1px solid var(--dfv-filter-checkbox-border, #ffffff) !important;
    background-image: none !important;
    display: inline-grid !important;
    place-content: center !important;
}
#dvo-filter input[type="checkbox"]:checked {
    background-color: var(--dfv-filter-checkbox-checked-bg, var(--dfv-filter-checkbox-bg, #ffffff)) !important;
    border-color: var(--dfv-filter-checkbox-border, #ffffff) !important;
}
#dvo-filter input[type="checkbox"]::before {
    content: "" !important;
    width: 7px !important;
    height: 12px !important;
    border-style: solid !important;
    border-color: var(--dfv-filter-checkbox-check, #111111) !important;
    border-width: 0 3px 3px 0 !important;
    transform: rotate(45deg) scale(0) !important;
    transition: transform .12s ease !important;
}
#dvo-filter input[type="checkbox"]:checked::before {
    transform: rotate(45deg) scale(1) !important;
}

/* === DFV SB Occasions v12: mobiele filterknop + checkbox admin kleuren betrouwbaar === */
.dfv-mobile-filter-open-wrap {
    display: none;
    width: 100%;
    margin: 0 0 16px;
}
.dfv-mobile-filter-open {
    width: 100%;
    min-height: 48px;
    border: 1px solid rgba(255,255,255,.35);
    border-radius: 10px;
    background: #111;
    color: #fff;
    font-weight: 700;
    font-size: 16px;
    cursor: pointer;
}
.dfv-mobile-filter-close {
    display: none;
}
#dvo-filter input[type="checkbox"] {
    appearance: none !important;
    -webkit-appearance: none !important;
    width: 22px !important;
    height: 22px !important;
    min-width: 22px !important;
    border-radius: 0 !important;
    background: var(--dfv-filter-checkbox-bg, #ffffff) !important;
    background-color: var(--dfv-filter-checkbox-bg, #ffffff) !important;
    border: 1px solid var(--dfv-filter-checkbox-border, #ffffff) !important;
    box-shadow: none !important;
    position: relative !important;
    display: inline-block !important;
    vertical-align: middle !important;
}
#dvo-filter input[type="checkbox"]:checked {
    background: var(--dfv-filter-checkbox-checked-bg, #ffffff) !important;
    background-color: var(--dfv-filter-checkbox-checked-bg, #ffffff) !important;
    border-color: var(--dfv-filter-checkbox-border, #ffffff) !important;
}
#dvo-filter input[type="checkbox"]::before {
    content: "" !important;
    position: absolute !important;
    left: 7px !important;
    top: 3px !important;
    width: 7px !important;
    height: 12px !important;
    border-style: solid !important;
    border-color: var(--dfv-filter-checkbox-check, #111827) !important;
    border-width: 0 2px 2px 0 !important;
    transform: rotate(45deg) scale(0) !important;
    opacity: 0 !important;
    margin: 0 !important;
    background: transparent !important;
}
#dvo-filter input[type="checkbox"]:checked::before {
    transform: rotate(45deg) scale(1) !important;
    opacity: 1 !important;
}

@media (max-width: 767.98px) {
    .dfv-mobile-filter-open-wrap {
        display: block;
    }
    #dvo-filter {
        display: block !important;
    }
    #dvo-filter #dvo-filter-form.dfv-filter-panel {
        display: none !important;
    }
    body.dfv-mobile-filter-active {
        overflow: hidden;
    }
    body.dfv-mobile-filter-active #dvo-filter #dvo-filter-form.dfv-filter-panel {
        display: block !important;
        position: fixed !important;
        inset: 0 !important;
        width: 100vw !important;
        height: 100vh !important;
        max-height: 100vh !important;
        overflow-y: auto !important;
        z-index: 999999 !important;
        margin: 0 !important;
        padding: 74px 22px 28px !important;
        background: #1f1f1f !important;
        border-radius: 0 !important;
        box-shadow: none !important;
    }
    body.dfv-mobile-filter-active #dvo-filter #dvo-filter-form.dfv-filter-panel::before {
        content: "Filteren";
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        height: 58px;
        display: flex;
        align-items: center;
        padding: 0 22px;
        background: #111;
        color: #fff;
        font-size: 20px;
        font-weight: 600;
        z-index: 1000000;
    }
    body.dfv-mobile-filter-active .dfv-mobile-filter-close {
        display: flex !important;
        align-items: center;
        justify-content: center;
        position: fixed !important;
        top: 10px !important;
        right: 14px !important;
        width: 38px !important;
        height: 38px !important;
        border: 1px solid rgba(255,255,255,.35) !important;
        border-radius: 999px !important;
        background: transparent !important;
        color: #fff !important;
        font-size: 30px !important;
        line-height: 1 !important;
        z-index: 1000001 !important;
        cursor: pointer !important;
        padding: 0 !important;
    }
    body.dfv-mobile-filter-active #dvo-filter .dvo-filter,
    body.dfv-mobile-filter-active #dvo-filter .resetbtn {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}

/* === DFV SB Occasions v13: mobiel filter netjes, desktop X verborgen === */
#dvo-filter .dfv-mobile-filter-close {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

.dfv-mobile-filter-open-wrap + .dfv-mobile-filter-open-wrap,
.dfv-mobile-filter-open-wrap ~ .dfv-mobile-filter-open-wrap {
    display: none !important;
}

.dfv-mobile-filter-open {
    width: auto !important;
    min-width: 150px !important;
    min-height: 50px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    padding: 13px 24px !important;
    border: 1px solid #ffffff !important;
    border-radius: 8px !important;
    background: transparent !important;
    color: #ffffff !important;
    font-weight: 700 !important;
    font-size: 16px !important;
    line-height: 1.1 !important;
    letter-spacing: .01em !important;
    box-shadow: none !important;
    transition: background .2s ease, color .2s ease, border-color .2s ease, transform .2s ease !important;
}
.dfv-mobile-filter-open::before {
    content: "" !important;
    width: 17px !important;
    height: 17px !important;
    display: inline-block !important;
    background: currentColor !important;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='4' y1='21' x2='4' y2='14'/%3E%3Cline x1='4' y1='10' x2='4' y2='3'/%3E%3Cline x1='12' y1='21' x2='12' y2='12'/%3E%3Cline x1='12' y1='8' x2='12' y2='3'/%3E%3Cline x1='20' y1='21' x2='20' y2='16'/%3E%3Cline x1='20' y1='12' x2='20' y2='3'/%3E%3Cline x1='1' y1='14' x2='7' y2='14'/%3E%3Cline x1='9' y1='8' x2='15' y2='8'/%3E%3Cline x1='17' y1='16' x2='23' y2='16'/%3E%3C/svg%3E") center / contain no-repeat !important;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='4' y1='21' x2='4' y2='14'/%3E%3Cline x1='4' y1='10' x2='4' y2='3'/%3E%3Cline x1='12' y1='21' x2='12' y2='12'/%3E%3Cline x1='12' y1='8' x2='12' y2='3'/%3E%3Cline x1='20' y1='21' x2='20' y2='16'/%3E%3Cline x1='20' y1='12' x2='20' y2='3'/%3E%3Cline x1='1' y1='14' x2='7' y2='14'/%3E%3Cline x1='9' y1='8' x2='15' y2='8'/%3E%3Cline x1='17' y1='16' x2='23' y2='16'/%3E%3C/svg%3E") center / contain no-repeat !important;
}
.dfv-mobile-filter-open:hover,
.dfv-mobile-filter-open:focus {
    background: #ffffff !important;
    color: #ffffff !important;
    border-color: #ffffff !important;
    transform: translateY(-1px) !important;
}

@media (max-width: 767.98px) {
    .dfv-mobile-filter-open-wrap {
        display: block !important;
        margin: 10px 0 16px !important;
    }
    .dfv-mobile-filter-open-wrap + .dfv-mobile-filter-open-wrap,
    .dfv-mobile-filter-open-wrap ~ .dfv-mobile-filter-open-wrap {
        display: none !important;
    }
    body.dfv-mobile-filter-active #dvo-filter .dfv-mobile-filter-close {
        display: flex !important;
        visibility: visible !important;
        opacity: 1 !important;
        pointer-events: auto !important;
    }
}

@media (min-width: 768px) {
    .dfv-mobile-filter-open-wrap {
        display: none !important;
    }
    #dvo-filter .dfv-mobile-filter-close {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
        width: 0 !important;
        height: 0 !important;
        padding: 0 !important;
        margin: 0 !important;
        border: 0 !important;
        overflow: hidden !important;
    }
}

/* === DFV SB Occasions v14: range/sort werking, snelle kaartweergave, paginering en kaart-achtergrond === */
#dvo-filter .dfv-range-filter.is-collapsed > .dfv-range-body,
#dvo-filter .dfv-sort-filter.is-collapsed > .dfv-sort-body {
    display: none !important;
}
#dvo-filter .dfv-range-filter:not(.is-collapsed) > .dfv-range-body,
#dvo-filter .dfv-sort-filter:not(.is-collapsed) > .dfv-sort-body {
    display: block !important;
}
#dvo-filter .dfv-range-head,
#dvo-filter .dfv-sort-head,
#dvo-filter .dfv-ms-toggle,
#dvo-filter .dfv-dimension-toggle {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    cursor: pointer !important;
}
#dvo-filter .dfv-sort-body select,
#dvo-filter .dfv-range-row select {
    cursor: pointer !important;
}

#dvo-occasionlist .dfv-cardbox,
#dvo-occasionlist .dfv-card-content {
    background-color: var(--dfv-card-bg, transparent) !important;
}
#dvo-occasionlist .dfv-cardbox {
    border: 1px solid var(--dfv-card-border, transparent) !important;
    border-radius: var(--dfv-card-radius, 10px) !important;
    overflow: hidden !important;
    transition: border-color .18s ease, border-radius .18s ease, box-shadow .18s ease, transform .18s ease !important;
}
#dvo-occasionlist .dfv-cardbox:hover,
#dvo-occasionlist .dfv-cardbox:focus-within {
    border-color: var(--dfv-card-hover-border, var(--dfv-card-border, transparent)) !important;
    border-radius: var(--dfv-card-hover-radius, var(--dfv-card-radius, 10px)) !important;
}

#dvo-occasionlist.dfv-list-loading {
    opacity: .72;
    transition: opacity .12s ease !important;
}
#dvo-occasionlist .dfv-vehicle-reveal {
    opacity: 0;
    transform: translateY(18px);
    transition: opacity .36s ease, transform .36s ease;
    will-change: opacity, transform;
}
#dvo-occasionlist .dfv-vehicle-reveal.is-visible {
    opacity: 1;
    transform: translateY(0);
}
@media (prefers-reduced-motion: reduce) {
    #dvo-occasionlist .dfv-vehicle-reveal {
        opacity: 1 !important;
        transform: none !important;
        transition: none !important;
    }
}

#dvo-pagination {
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    margin: 34px auto 10px !important;
    text-align: center !important;
}
#dvo-pagination .dfv-pagination {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    padding: 8px !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,.06) !important;
    border: 1px solid rgba(255,255,255,.12) !important;
    margin: 0 auto !important;
}
#dvo-pagination .dfv-page-btn {
    width: 40px !important;
    min-width: 40px !important;
    height: 40px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(255,255,255,.22) !important;
    background: transparent !important;
    color: #ffffff !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    transition: background .18s ease, color .18s ease, border-color .18s ease, transform .18s ease !important;
}
#dvo-pagination .dfv-page-btn:hover,
#dvo-pagination .dfv-page-btn:focus,
#dvo-pagination .dfv-page-btn.is-active {
    background: var(--dfv-list-btn-bg, #f2d16b) !important;
    border-color: var(--dfv-list-btn-border, var(--dfv-list-btn-bg, #f2d16b)) !important;
    color: var(--dfv-list-btn-color, #111111) !important;
    transform: translateY(-1px) !important;
}
#dvo-pagination .dfv-page-btn:disabled {
    opacity: .35 !important;
    cursor: not-allowed !important;
    transform: none !important;
}
#dvo-pagination .dfv-page-dots {
    color: rgba(255,255,255,.72) !important;
    font-weight: 700 !important;
    padding: 0 2px !important;
}

/* === DFV SB Occasions v15: rangefilters definitief zichtbaar bij openen === */
#dvo-filter .dfv-range-filter.is-collapsed > .dfv-range-body,
#dvo-filter .dfv-sort-filter.is-collapsed > .dfv-sort-body {
    display: none !important;
}
#dvo-filter .dfv-range-filter:not(.is-collapsed) > .dfv-range-body,
#dvo-filter .dfv-range-filter.is-open > .dfv-range-body,
#dvo-filter .dfv-sort-filter:not(.is-collapsed) > .dfv-sort-body,
#dvo-filter .dfv-sort-filter.is-open > .dfv-sort-body {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
}
#dvo-filter .dfv-range-head,
#dvo-filter .dfv-sort-head {
    pointer-events: auto !important;
    cursor: pointer !important;
    user-select: none !important;
}
#dvo-filter .dfv-range-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    gap: 10px !important;
    width: 100% !important;
    margin-bottom: 14px !important;
}
#dvo-filter .dfv-range-row select {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    min-width: 0 !important;
}
#dvo-filter .dfv-range-filter:not(.is-collapsed) > .dfv-range-body,
#dvo-filter .dfv-range-filter.is-open > .dfv-range-body,
#dvo-filter .dfv-sort-filter:not(.is-collapsed) > .dfv-sort-body,
#dvo-filter .dfv-sort-filter.is-open > .dfv-sort-body,
#dvo-filter .dfv-multiselect.is-open > .dfv-ms-menu,
#dvo-filter .dfv-dimension-filter.is-open > .dfv-dimension-menu {
    display: block !important;
}
#dvo-filter .dfv-range-filter.is-collapsed > .dfv-range-body,
#dvo-filter .dfv-sort-filter.is-collapsed > .dfv-sort-body,
#dvo-filter .dfv-multiselect:not(.is-open) > .dfv-ms-menu,
#dvo-filter .dfv-dimension-filter:not(.is-open) > .dfv-dimension-menu {
    display: none !important;
}
#dvo-filter input[type="checkbox"] {
    appearance: none !important;
    -webkit-appearance: none !important;
    width: 22px !important;
    height: 22px !important;
    min-width: 22px !important;
    border-radius: 0 !important;
    background: var(--dfv-filter-checkbox-bg, #ffffff) !important;
    background-color: var(--dfv-filter-checkbox-bg, #ffffff) !important;
    border: 1px solid var(--dfv-filter-checkbox-border, #ffffff) !important;
    position: relative !important;
    display: inline-block !important;
    box-shadow: none !important;
}
#dvo-filter input[type="checkbox"]:checked {
    background: var(--dfv-filter-checkbox-checked-bg, var(--dfv-filter-checkbox-bg, #ffffff)) !important;
    background-color: var(--dfv-filter-checkbox-checked-bg, var(--dfv-filter-checkbox-bg, #ffffff)) !important;
    border-color: var(--dfv-filter-checkbox-border, #ffffff) !important;
}
#dvo-filter input[type="checkbox"]::before {
    content: "" !important;
    position: absolute !important;
    left: 7px !important;
    top: 3px !important;
    width: 7px !important;
    height: 12px !important;
    border-style: solid !important;
    border-color: #000000 !important;
    border-width: 0 2px 2px 0 !important;
    background: transparent !important;
    transform: rotate(45deg) scale(0) !important;
    opacity: 0 !important;
}
#dvo-filter input[type="checkbox"]:checked::before {
    transform: rotate(45deg) scale(1) !important;
    opacity: 1 !important;
}
#dvo-filter .dfv-range-head.dfv-has-symbol,
#dvo-filter .dfv-sort-head.dfv-has-symbol {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
}

/* === DFV SB Occasions v19: nette rangefilters + stabiele chevrons === */
#dvo-filter .dfv-range-filter,
#dvo-filter .dfv-sort-filter {
    border-bottom: 0 !important;
    padding-bottom: 8px !important;
    margin-bottom: 8px !important;
}
#dvo-filter .dfv-range-head,
#dvo-filter .dfv-sort-head,
#dvo-filter .dfv-ms-toggle,
#dvo-filter .dfv-dimension-toggle {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 0 !important;
    min-height: 38px !important;
    padding: 0 !important;
    cursor: pointer !important;
}
#dvo-filter .dfv-range-body,
#dvo-filter .dfv-sort-body {
    padding: 2px 0 12px 0 !important;
}
#dvo-filter .dfv-range-filter.is-collapsed > .dfv-range-body,
#dvo-filter .dfv-sort-filter.is-collapsed > .dfv-sort-body {
    display: none !important;
}
#dvo-filter .dfv-range-filter.is-open > .dfv-range-body,
#dvo-filter .dfv-range-filter:not(.is-collapsed) > .dfv-range-body,
#dvo-filter .dfv-sort-filter.is-open > .dfv-sort-body,
#dvo-filter .dfv-sort-filter:not(.is-collapsed) > .dfv-sort-body {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}
#dvo-filter .dfv-range-row {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 8px !important;
    width: 100% !important;
    margin: 4px 0 6px !important;
    padding: 0 !important;
}
#dvo-filter .dfv-range-row select,
#dvo-filter .dfv-sort-body select {
    width: 100% !important;
    min-width: 0 !important;
    height: 40px !important;
    min-height: 40px !important;
    padding: 0 30px 0 12px !important;
    border-radius: var(--dfv-filter-input-radius, 8px) !important;
    border: 1px solid var(--dfv-filter-input-border, #d8dde5) !important;
    background-color: var(--dfv-filter-input-bg, #ffffff) !important;
    color: var(--dfv-filter-input-color, #111827) !important;
    font-size: 14px !important;
    font-weight: var(--dfv-filter-input-weight, 600) !important;
    line-height: 40px !important;
    box-shadow: none !important;
    outline: none !important;
    appearance: none !important;
    -webkit-appearance: none !important;
}
#dvo-filter .dfv-range-row select:hover,
#dvo-filter .dfv-sort-body select:hover,
#dvo-filter .dfv-range-row select:focus,
#dvo-filter .dfv-sort-body select:focus {
    border-color: var(--dfv-filter-input-border, #d8dde5) !important;
    background-color: var(--dfv-filter-input-bg, #ffffff) !important;
    color: var(--dfv-filter-input-color, #111827) !important;
}
#dvo-filter .dfv-range-row select option,
#dvo-filter .dfv-sort-body select option {
    color: var(--dfv-filter-option-color, #111827) !important;
    background: var(--dfv-filter-input-bg, #ffffff) !important;
}

#dvo-filter .dfv-ms-toggle,
#dvo-filter .dfv-range-head,
#dvo-filter .dfv-sort-head,
#dvo-filter .dfv-dimension-toggle {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 0 !important;
    width: 100% !important;
    min-height: 42px !important;
   /* padding-right: 30px !important; */
    cursor: pointer !important;
}

#dvo-filter .dfv-range-filter.is-collapsed > .dfv-range-body,
#dvo-filter .dfv-sort-filter.is-collapsed > .dfv-sort-body {
    display: none !important;
}

#dvo-filter .dfv-range-filter.is-open > .dfv-range-body,
#dvo-filter .dfv-range-filter:not(.is-collapsed) > .dfv-range-body,
#dvo-filter .dfv-sort-filter.is-open > .dfv-sort-body,
#dvo-filter .dfv-sort-filter:not(.is-collapsed) > .dfv-sort-body {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}


/* === Unitedlease detailpagina override === */
/* === DFV detailpagina: moderne afbeelding-slider + formulier popups === */
.dfv-detail-gallery {
    position: relative;
    width: 100%;
}

.dfv-detail-main-swiper {
    position: relative;
    overflow: hidden;
    border-radius: 18px;
    background: #111111;
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.14);
}

.dfv-detail-main-swiper .swiper-slide {
    height: auto;
}

.dfv-detail-main-img {
    display: block;
    width: 100%;
    height: clamp(320px, 48vw, 620px);
    object-fit: cover;
    transition: transform .45s ease;
}

.dfv-detail-main-swiper a:hover .dfv-detail-main-img {
    transform: scale(1.025);
}

.dfv-detail-slider-btn {
    position: absolute;
    top: 50%;
    z-index: 10;
    width: 46px;
    height: 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transform: translateY(-50%);
    border: 0;
    border-radius: 99px;
    background: rgba(255, 255, 255, 0.92);
    color: #111111;
    cursor: pointer;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.18);
    transition: transform .2s ease, background-color .2s ease;
}

.dfv-detail-slider-btn:hover {
    background: #ffffff;
    transform: translateY(-50%) scale(1.06);
}

.dfv-detail-slider-prev {
    left: 16px;
}

.dfv-detail-slider-next {
    right: 16px;
}

.dfv-detail-main-pagination {
    bottom: 14px !important;
}

.dfv-detail-main-pagination .swiper-pagination-bullet {
    width: 9px;
    height: 9px;
    background: #ffffff;
    opacity: .65;
}

.dfv-detail-main-pagination .swiper-pagination-bullet-active {
    opacity: 1;
}

.dfv-detail-thumbs-swiper {
    margin-top: 14px;
    overflow: hidden;
}

.dfv-detail-thumbs-swiper .swiper-slide {
    width: 112px;
    height: 76px;
    opacity: .55;
    cursor: pointer;
    border-radius: 12px;
    overflow: hidden;
    border: 2px solid transparent;
    transition: opacity .2s ease, border-color .2s ease, transform .2s ease;
}

.dfv-detail-thumbs-swiper .swiper-slide-thumb-active,
.dfv-detail-thumbs-swiper .swiper-slide:hover {
    opacity: 1;
    border-color: #111111;
    transform: translateY(-1px);
}

.dfv-detail-thumb-img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.dfv-modal-backdrop {
    position: fixed;
    inset: 0;
    z-index: 9998;
    display: none;
    background: rgba(0, 0, 0, 0.62);
    backdrop-filter: blur(4px);
}

body.dfv-modal-open {
    overflow: hidden;
}

body.dfv-modal-open .dfv-modal-backdrop {
    display: block;
}

#informatieblok.dfv-form-modal,
#inruilblok.dfv-form-modal,
#financieringblok.dfv-form-modal,
#financialleaseblok.dfv-form-modal {
    position: fixed !important;
    top: 50% !important;
    left: 50% !important;
    z-index: 9999 !important;
    display: none !important;
    width: min(920px, calc(100vw - 28px)) !important;
    max-height: calc(100vh - 36px) !important;
    margin: 0 !important;
    padding: 28px !important;
    overflow: auto !important;
    transform: translate(-50%, -50%) !important;
    border-radius: 18px !important;
    background: #ffffff !important;
    box-shadow: 0 24px 80px rgba(0, 0, 0, 0.32) !important;
}

#informatieblok.dfv-form-modal.dfv-modal-active,
#inruilblok.dfv-form-modal.dfv-modal-active,
#financieringblok.dfv-form-modal.dfv-modal-active,
#financialleaseblok.dfv-form-modal.dfv-modal-active {
    display: block !important;
}

.dfv-modal-close {
    position: sticky;
    top: 0;
    z-index: 2;
    float: right;
    width: 42px;
    height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: -10px -10px 8px 12px;
    border: 0;
    border-radius: 99px;
    background: #111111;
    color: #ffffff;
    cursor: pointer;
    font-size: 22px;
    line-height: 1;
}

.dfv-modal-close:hover {
    opacity: .85;
}

@media (max-width: 768px) {
    .dfv-detail-main-img {
        height: 310px;
    }

    .dfv-detail-slider-btn {
        width: 40px;
        height: 40px;
    }

    .dfv-detail-slider-prev {
        left: 10px;
    }

    .dfv-detail-slider-next {
        right: 10px;
    }

    .dfv-detail-thumbs-swiper .swiper-slide {
        width: 82px;
        height: 58px;
    }

    #informatieblok.dfv-form-modal,
    #inruilblok.dfv-form-modal,
    #financieringblok.dfv-form-modal,
    #financialleaseblok.dfv-form-modal {
        width: calc(100vw - 18px) !important;
        max-height: calc(100vh - 18px) !important;
        padding: 20px !important;
        border-radius: 14px !important;
    }
}


/* === DFV detailpagina: hoofdafbeelding links + thumbnails rechts (2x2) === */
@media (min-width: 992px) {
    .dfv-detail-gallery {
        display: grid;
        grid-template-columns: minmax(0, 1fr) 190px;
        gap: 14px;
        align-items: stretch;
    }

    .dfv-detail-main-swiper {
        min-width: 0;
        height: 100%;
    }

    .dfv-detail-main-img {
        height: clamp(340px, 34vw, 520px) !important;
    }

    .dfv-detail-thumbs-swiper {
        width: 100%;
        height: 100%;
        margin-top: 0 !important;
        overflow: visible !important;
    }

    .dfv-detail-thumbs-swiper .swiper-wrapper {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-template-rows: repeat(2, minmax(0, 1fr));
        gap: 10px;
        width: 100% !important;
        height: 100% !important;
        transform: none !important;
    }

    .dfv-detail-thumbs-swiper .swiper-slide {
        width: 100% !important;
        height: 100% !important;
        min-height: 0;
        margin: 0 !important;
    }

    .dfv-detail-thumbs-swiper .swiper-slide:nth-child(n+5) {
        display: none !important;
    }

    .dfv-detail-thumb-img {
        height: 100% !important;
        min-height: 0;
    }
}

.dfv-detail-whatsapp-block {
    margin-top: 14px;
}

.dfv-detail-whatsapp-link {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    padding: 15px 18px;
    border-radius: 14px;
    background: #25d366;
    color: #ffffff !important;
    text-decoration: none !important;
    box-shadow: 0 12px 28px rgba(37, 211, 102, 0.24);
    transition: transform .2s ease, box-shadow .2s ease, opacity .2s ease;
}

.dfv-detail-whatsapp-link:hover {
    color: #ffffff !important;
    transform: translateY(-1px);
    box-shadow: 0 16px 34px rgba(37, 211, 102, 0.32);
    opacity: .96;
}

.dfv-detail-whatsapp-icon {
    width: 42px;
    height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 42px;
    border-radius: 99px;
    background: rgba(255, 255, 255, 0.18);
    font-size: 24px;
}

.dfv-detail-whatsapp-text {
    flex: 1 1 auto;
    font-weight: 700;
    line-height: 1.2;
}

.dfv-detail-whatsapp-number {
    flex: 0 0 auto;
    font-weight: 600;
    opacity: .92;
}

@media (max-width: 991px) {
    .dfv-detail-thumbs-swiper .swiper-slide:nth-child(n+5) {
        display: block !important;
    }
}

@media (max-width: 576px) {
    .dfv-detail-whatsapp-link {
        align-items: flex-start;
        flex-direction: column;
        gap: 8px;
    }

    .dfv-detail-whatsapp-number {
        font-size: .95rem;
    }
}

/* === DFV detail gallery: James-style hoofdslider + 2x2 thumbnails rechts === */
#dvo-occasions .dfv-detail-gallery,
.dfv-detail-gallery {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(220px, 50%) !important;
    gap: 14px !important;
    align-items: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    text-align: left !important;
}

.dfv-detail-main-swiper {
    width: 100% !important;
    min-width: 0 !important;
    height: clamp(430px, 42vw, 660px) !important;
    margin: 0 !important;
    overflow: hidden !important;
    border-radius: 16px !important;
    background: #111111 !important;
}

.dfv-detail-main-swiper .swiper-wrapper,
.dfv-detail-main-swiper .swiper-slide {
    height: 100% !important;
}

.dfv-detail-main-swiper a {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
}

.dfv-detail-main-img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
}

.dfv-detail-thumbs-swiper {
    display: none !important;
}

.dfv-detail-thumbs-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-template-rows: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px !important;
    width: 100% !important;
    height: clamp(430px, 42vw, 330px) !important;
    min-width: 0 !important;
}

.dfv-detail-thumb-btn {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
    cursor: pointer !important;
    border: 2px solid transparent !important;
    border-radius: 16px !important;
    background: #111111 !important;
    box-shadow: none !important;
    opacity: .72 !important;
    transition: opacity .2s ease, border-color .2s ease, transform .2s ease !important;
}

.dfv-detail-thumb-btn:nth-child(n+5) {
    display: none !important;
}

.dfv-detail-thumb-btn:hover,
.dfv-detail-thumb-btn.is-active {
    opacity: 1 !important;
    border-color: #ffffff !important;
    transform: translateY(-1px) !important;
}

.dfv-detail-thumb-btn .dfv-detail-thumb-img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
    object-position: center center !important;
    background-color: #000000;
}

.dfv-detail-whatsapp-block {
    width: 100% !important;
    margin: 16px 0 0 0 !important;
}

@media (max-width: 991px) {
    #dvo-occasions .dfv-detail-gallery,
    .dfv-detail-gallery {
        grid-template-columns: 1fr !important;
    }

    .dfv-detail-main-swiper {
        height: 420px !important;
    }

    .dfv-detail-thumbs-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        grid-template-rows: 90px !important;
        height: 90px !important;
    }
}

@media (max-width: 576px) {
    .dfv-detail-main-swiper {
        height: 300px !important;
        border-radius: 12px !important;
    }

    .dfv-detail-thumbs-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        grid-template-rows: repeat(2, 92px) !important;
        height: 198px !important;
        gap: 10px !important;
    }

    .dfv-detail-thumb-btn {
        border-radius: 12px !important;
    }
}

.dvo-thumbs-wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    max-height: 420px;
    overflow-y: auto;
    padding-right: 5px;
}

.dvo-detail-thumb {
    width: 100%;
    height: 100px;
    object-fit: contain;
    background: #000;
    border-radius: 10px;
}

/* WhatsApp blok netjes eronder */
.dvo-whatsapp-blok {
    margin-top: 15px;
    border-radius: 10px;
    overflow: hidden;
}

/* === DFV detail: prijs boven thumbs === */
.dfv-detail-side {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    width: 100% !important;
    min-width: 0 !important;
}

.dfv-side-price-overview {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    background: #ffffff;
    border: 1px solid rgba(0, 0, 0, .12);
    border-radius: 10px;
    padding: 14px;
}

.dfv-side-price {
    display: flex;
    flex-direction: column;
    line-height: 1.15;
}

.dfv-side-price-label {
    font-size: 0.8rem;
    opacity: .7;
}

.dfv-side-price-value {
    font-size: 1.7rem;
    font-weight: 700;
    color: #000000;
}

.dfv-side-overview-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 42px;
    padding: 9px 14px;
    border-radius: 7px;
    background: #970a0a;
    color: #ffffff !important;
    text-decoration: none !important;
    font-weight: 700;
    white-space: nowrap;
}

.dfv-detail-thumbs-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.dfv-detail-thumb-btn {
    position: relative;
    border: 0;
    padding: 0;
    border-radius: 8px;
    overflow: hidden;
    background: #f3f4f4;
    cursor: pointer;
}

.dfv-detail-thumb-img {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
}

.dfv-detail-thumb-more {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, .58);
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 1.1rem;
}

/* === DFV detail: deel + CTA rij === */
.dfv-detail-action-row {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin: 18px 0 8px;
    padding: 16px;
    border: 1px solid rgba(0, 0, 0, .12);
    border-radius: 10px;
}

.dfv-detail-share-block,
.dfv-detail-cta-buttons {
    display: flex;
    align-items: center;
    gap: 10px;
}

.dfv-detail-share-title {
    font-weight: 700;
    color: #ffffff;
    margin-right: 4px;
}

.dfv-detail-share-button {
    width: 42px;
    height: 42px;
    border: 1px solid rgba(0, 0, 0, .16);
    border-radius: 999px;
    background: #ffffff;
    color: #000000;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none !important;
    transition: all .2s ease;
}

.dfv-detail-share-button:hover {
    color: #ffffff;
    background: #10425d;
    border-color: #10425d;
}

.dfv-detail-cta-button {
    min-height: 46px;
    border-radius: 7px;
    border: 1px solid transparent;
    padding: 11px 22px;
    font-weight: 700;
    cursor: pointer;
    text-align: center;
    transition: all .2s ease;
}

.dfv-detail-cta-primary {
    background: #10425d;
    border-color: #10425d;
    color: #ffffff;
}

.dfv-detail-cta-primary:hover {
    background: #ffffff;
    color: #10425d;
}

.dfv-detail-cta-secondary {
    background: #970a0a;
    border-color: #970a0a;
    color: #ffffff;
}

.dfv-detail-cta-secondary:hover {
    background: #ffffff;
    color: #970a0a;
}

/* === DFV detail: losse specificatiekaarten === */
.dfv-detail-spec-cards-section {
    clear: both;
}

.dfv-detail-spec-cards {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 14px;
}

.dfv-detail-spec-card {
    min-height: 145px;
    background: #ffffff;
    color: #000000;
    border: 1px solid rgba(0, 0, 0, .16);
    border-radius: 12px;
    padding: 18px 12px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 9px;
    text-align: center;
}

.dfv-detail-spec-icon {
    width: 44px;
    height: 44px;
    border-radius: 999px;
    background: #f3f4f4;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 23px;
    color: #000000;
}

.dfv-detail-spec-value {
    font-weight: 700;
    font-size: 1rem;
    line-height: 1.25;
}

.dfv-detail-spec-value .napweblabel {
    max-width: 53px;
    padding-left: 5px;
    vertical-align: middle;
    float: right;
}

.dfv-detail-spec-label {
    font-size: .92rem;
    opacity: .76;
}

/* === DFV detail: popup formulieren === */
.dfv-popup-modal {
    position: fixed !important;
    inset: 0;
    z-index: 99999;
    display: none;
    padding: 24px;
    overflow-y: auto;
}

.dfv-popup-modal.is-open {
    display: flex !important;
    align-items: center;
    justify-content: center;
}

.dfv-popup-backdrop {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, .62);
}

.dfv-popup-dialog {
    position: relative;
    z-index: 2;
    width: min(920px, 100%);
    max-height: calc(100vh - 48px);
    overflow-y: auto;
    background: #ffffff;
    border-radius: 18px;
    padding: 26px;
    box-shadow: 0 24px 70px rgba(0, 0, 0, .35);
}

.dfv-popup-close {
    position: sticky;
    top: 0;
    float: right;
    z-index: 3;
    width: 42px;
    height: 42px;
    border: 0;
    border-radius: 999px;
    background: #f3f4f4;
    color: #000000;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.dfv-popup-header {
    margin-bottom: 18px;
    padding-right: 48px;
}

.dfv-popup-header span {
    display: block;
    color: #000000;
    font-size: clamp(1.55rem, 2.2vw, 2.2rem);
    font-weight: 600;
    line-height: 1.1;
}

.dfv-popup-header small {
    display: block;
    margin-top: 8px;
    color: #333333;
    font-size: 1rem;
}

.dfv-popup-vehicle-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 14px;
    margin-bottom: 20px;
    border: 1px solid rgba(0, 0, 0, .12);
    border-radius: 12px;
    background: #f8f8f8;
    color: #000000;
}

.dfv-popup-vehicle-card img {
    width: 130px;
    height: 86px;
    object-fit: cover;
    border-radius: 10px;
}

.dfv-popup-dialog .dvo-form-control {
    width: 100%;
    min-height: 48px;
    border-radius: 8px;
    border: 1px solid rgba(0, 0, 0, .18);
    padding: 12px 14px;
}

.dfv-popup-dialog textarea.dvo-form-control {
    min-height: 110px;
}

body.dfv-modal-open {
    overflow: hidden;
}

#zl-keuzeblok {
    display: none !important;
}

@media (max-width: 1199px) {
    .dfv-detail-spec-cards {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 768px) {
    .dfv-side-price-overview,
    .dfv-detail-action-row {
        flex-direction: column;
        align-items: stretch;
    }

    .dfv-side-overview-btn,
    .dfv-detail-cta-button {
        width: 100%;
    }

    .dfv-detail-share-block {
        justify-content: center;
    }

    .dfv-detail-cta-buttons {
        flex-direction: column;
        width: 100%;
    }

    .dfv-detail-spec-cards {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .dfv-popup-modal {
        padding: 12px;
        align-items: flex-start !important;
    }

    .dfv-popup-dialog {
        max-height: calc(100vh - 24px);
        padding: 18px;
        border-radius: 14px;
    }

    .dfv-popup-vehicle-card {
        flex-direction: column;
        align-items: flex-start;
    }

    .dfv-popup-vehicle-card img {
        width: 100%;
        height: auto;
        max-height: 190px;
    }
}

@media (max-width: 420px) {
    .dfv-detail-spec-cards {
        grid-template-columns: 1fr;
    }
}

/* Forceer popup zichtbaar bij openen, ook als Bootstrap .d-none elders !important gebruikt */
.dfv-popup-modal.is-open.d-none,
.dfv-popup-modal.is-open {
    display: flex !important;
}

/* === DFV popup herstel definitief === */

/* Modal staat boven alles */
.dfv-modal,
.dfv-modern-modal,
.dfv-popup-modal,
#dfv-interest-modal,
#dfv-trade-modal,
#informatieblok,
#inruilblok {
    position: fixed !important;
    inset: 0 !important;
    z-index: 2147483000 !important;
    display: none !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 24px !important;
    background: transparent !important;
    overflow-y: auto !important;
}

.dfv-modal.is-open,
.dfv-modern-modal.is-open,
.dfv-popup-modal.is-open,
#dfv-interest-modal.is-open,
#dfv-trade-modal.is-open,
#informatieblok.is-open,
#inruilblok.is-open {
    display: flex !important;
}

/* Donkere achtergrond terug */
.dfv-modal-backdrop,
.dfv-modern-modal-backdrop,
.dfv-popup-backdrop {
    position: fixed !important;
    inset: 0 !important;
    z-index: 1 !important;
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    background: rgba(0, 0, 0, .68) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

/* Formulier zelf wit/scherp */
.dfv-modal-dialog,
.dfv-modern-modal-dialog,
.dfv-popup-dialog {
    position: relative !important;
    z-index: 2 !important;
    width: min(760px, calc(100vw - 32px)) !important;
    max-width: 760px !important;
    max-height: calc(100vh - 48px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    background: #ffffff !important;
    color: #111111 !important;
    border-radius: 16px !important;
    padding: 26px !important;
    box-shadow: 0 28px 90px rgba(0, 0, 0, .45) !important;
    filter: none !important;
    opacity: 1 !important;
}

/* Header compacter en wit */
.dfv-modal-head,
.dfv-popup-header,
.dfv-modern-modal-header {
    background: #ffffff !important;
    color: #111111 !important;
    border-radius: 14px !important;
    padding: 0 52px 18px 0 !important;
    margin: 0 0 18px 0 !important;
}

.dfv-modal-head h2,
.dfv-popup-header span,
.dfv-modern-modal-header span {
    color: #111111 !important;
    font-size: clamp(1.55rem, 2.1vw, 2.15rem) !important;
    line-height: 1.1 !important;
    margin: 0 0 8px 0 !important;
}

.dfv-modal-head p,
.dfv-popup-header small,
.dfv-modern-modal-header small {
    color: #444444 !important;
    margin: 0 !important;
}

/* Sluitknop */
.dfv-modal-close,
.dfv-popup-close,
.dfv-modern-modal-close {
    position: absolute !important;
    top: 20px !important;
    right: 20px !important;
    z-index: 5 !important;
    width: 42px !important;
    height: 42px !important;
    border-radius: 8px !important;
    border: 0 !important;
    background: #cf2e6f !important;
    color: #ffffff !important;
    cursor: pointer !important;
}

/* Beide formulieren exact dezelfde grid */
.dfv-modal-form,
#dvo-contact-form,
#dvo-inruil-form {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
    align-items: start !important;
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    clear: both !important;
}

.dfv-modal-form .dfv-field,
#dvo-contact-form .dfv-field,
#dvo-inruil-form .dfv-field {
    margin: 0 !important;
    padding: 0 !important;
    min-width: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    clear: none !important;
    position: static !important;
}

.dfv-modal-form .dfv-field-full,
#dvo-contact-form .dfv-field-full,
#dvo-inruil-form .dfv-field-full,
#dvo-inruil-form .dfv-upload-field {
    grid-column: 1 / -1 !important;
}

.dfv-modal-form label,
#dvo-contact-form label,
#dvo-inruil-form label {
    display: block !important;
    font-weight: 700 !important;
    margin-bottom: 6px !important;
    color: #111111 !important;
}

.dfv-modal-form input,
.dfv-modal-form textarea,
#dvo-contact-form input,
#dvo-contact-form textarea,
#dvo-inruil-form input,
#dvo-inruil-form textarea {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 44px !important;
    border: 1px solid #c7c7c7 !important;
    border-radius: 8px !important;
    background: #ffffff !important;
    color: #111111 !important;
    padding: 10px 12px !important;
}

/* Interesse-checkboxes: tekst rechts van de checkbox */
.dfv-check-row {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
    align-items: center !important;
}

.dfv-check-row label {
    display: inline-flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    white-space: nowrap !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 10px 12px !important;
    border: 1px solid #ddd !important;
    border-radius: 10px !important;
    background: #fff !important;
}

.dfv-check-row input[type="checkbox"] {
    flex: 0 0 auto !important;
    width: 18px !important;
    height: 18px !important;
    min-height: 18px !important;
    margin: 0 !important;
}

/* Voertuigblok */
.dfv-modal-vehicle,
.dfv-popup-vehicle-card {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    background: #f7f7f7 !important;
    border: 1px solid rgba(0,0,0,.1) !important;
    border-radius: 12px !important;
    padding: 14px !important;
    margin-bottom: 18px !important;
}

.dfv-modal-vehicle img,
.dfv-popup-vehicle-card img {
    width: 110px !important;
    height: 72px !important;
    object-fit: cover !important;
    border-radius: 8px !important;
}

.dfv-modal-vehicle strong,
.dfv-popup-vehicle-card strong {
    display: block !important;
    color: #111 !important;
}

.dfv-modal-vehicle span,
.dfv-popup-vehicle-card span {
    display: block !important;
    color: #111 !important;
}

.dfv-modal-vehicle-price {
    display: inline-flex !important;
    margin-top: 8px !important;
    font-style: normal !important;
    font-weight: 700 !important;
    color: #970a0a !important;
    font-size: 1.05rem !important;
}

/* Upload */
#dvo_form_fotos3 {
    position: static !important;
    display: block !important;
    height: auto !important;
    min-height: 48px !important;
    margin: 0 !important;
}

.dfv-upload-help {
    display: block !important;
    margin-top: 7px !important;
    font-size: 13px !important;
    opacity: .75 !important;
}

body.dfv-modal-open {
    overflow: hidden !important;
}

@media (max-width: 768px) {
    .dfv-modal,
    .dfv-modern-modal,
    .dfv-popup-modal {
        align-items: flex-start !important;
        padding: 12px !important;
    }

    .dfv-modal-dialog,
    .dfv-modern-modal-dialog,
    .dfv-popup-dialog {
        width: 100% !important;
        max-height: calc(100vh - 24px) !important;
        padding: 20px !important;
    }

    .dfv-modal-form,
    #dvo-contact-form,
    #dvo-inruil-form {
        grid-template-columns: 1fr !important;
    }

    .dfv-check-row label {
        white-space: normal !important;
    }
}

/* === DFV fix: overlay alleen tonen bij geopende popup === */
.dfv-modal:not(.is-open),
.dfv-modern-modal:not(.is-open),
.dfv-popup-modal:not(.is-open),
#dfv-interest-modal:not(.is-open),
#dfv-trade-modal:not(.is-open),
#informatieblok:not(.is-open),
#inruilblok:not(.is-open) {
    display: none !important;
    pointer-events: none !important;
    visibility: hidden !important;
}

.dfv-modal:not(.is-open) .dfv-modal-backdrop,
.dfv-modern-modal:not(.is-open) .dfv-modern-modal-backdrop,
.dfv-popup-modal:not(.is-open) .dfv-popup-backdrop,
#dfv-interest-modal:not(.is-open) .dfv-modal-backdrop,
#dfv-trade-modal:not(.is-open) .dfv-modal-backdrop,
#informatieblok:not(.is-open) .dfv-modal-backdrop,
#inruilblok:not(.is-open) .dfv-modal-backdrop,
#informatieblok:not(.is-open) .dfv-popup-backdrop,
#inruilblok:not(.is-open) .dfv-popup-backdrop {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

body:not(.dfv-modal-open) .dfv-modal-backdrop,
body:not(.dfv-modal-open) .dfv-modern-modal-backdrop,
body:not(.dfv-modal-open) .dfv-popup-backdrop {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

body:not(.dfv-modal-open) {
    overflow: auto !important;
}

.dfv-modal.is-open,
.dfv-modern-modal.is-open,
.dfv-popup-modal.is-open,
#dfv-interest-modal.is-open,
#dfv-trade-modal.is-open,
#informatieblok.is-open,
#inruilblok.is-open {
    display: flex !important;
    visibility: visible !important;
    pointer-events: auto !important;
}

body.dfv-modal-open .dfv-modal.is-open .dfv-modal-backdrop,
body.dfv-modal-open .dfv-modern-modal.is-open .dfv-modern-modal-backdrop,
body.dfv-modal-open .dfv-popup-modal.is-open .dfv-popup-backdrop,
body.dfv-modal-open #informatieblok.is-open .dfv-modal-backdrop,
body.dfv-modal-open #inruilblok.is-open .dfv-modal-backdrop,
body.dfv-modal-open #informatieblok.is-open .dfv-popup-backdrop,
body.dfv-modal-open #inruilblok.is-open .dfv-popup-backdrop {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
}

/* === DFV popup klik fix === */
.dfv-modal.is-open,
.dfv-modern-modal.is-open,
.dfv-popup-modal.is-open,
#dfv-interest-modal.is-open,
#dfv-trade-modal.is-open,
#informatieblok.is-open,
#inruilblok.is-open {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
}

.dfv-modal.is-open .dfv-modal-backdrop,
.dfv-modern-modal.is-open .dfv-modern-modal-backdrop,
.dfv-popup-modal.is-open .dfv-popup-backdrop,
#dfv-interest-modal.is-open .dfv-modal-backdrop,
#dfv-trade-modal.is-open .dfv-modal-backdrop,
#informatieblok.is-open .dfv-modal-backdrop,
#inruilblok.is-open .dfv-modal-backdrop,
#informatieblok.is-open .dfv-popup-backdrop,
#inruilblok.is-open .dfv-popup-backdrop {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
}

/* === DFV moderne popup formulieren 2026 === */
body.dfv-modal-open { overflow: hidden !important; }

.dfv-modern-lead-modal {
  position: fixed !important;
  inset: 0 !important;
  z-index: 999999 !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 22px !important;
  font-family: inherit;
}

.dfv-modern-lead-modal.is-open { display: flex !important; }
.dfv-modern-lead-modal .dfv-popup-backdrop {
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at top left, rgba(151,10,10,.34), transparent 32%), rgba(8, 12, 20, .74);
  backdrop-filter: blur(8px);
}

.dfv-modern-lead-modal .dfv-popup-dialog {
  position: relative;
  width: min(760px, 100%);
  max-height: calc(100vh - 44px);
  overflow: auto;
  background: #ffffff;
  border-radius: 24px;
  padding: 0;
  box-shadow: 0 24px 80px rgba(0,0,0,.28);
  border: 1px solid rgba(255,255,255,.45);
  animation: dfvModernPopup .28s ease both;
}

@keyframes dfvModernPopup {
  from { transform: translateY(24px) scale(.98); opacity: 0; }
  to { transform: translateY(0) scale(1); opacity: 1; }
}

.dfv-modern-lead-modal .dfv-popup-close {
  position: absolute;
  top: 16px;
  right: 16px;
  width: 42px;
  height: 42px;
  border-radius: 999px;
  border: 1px solid rgba(0,0,0,.08);
  background: rgba(255,255,255,.9);
  color: #111827;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 5;
  box-shadow: 0 8px 24px rgba(0,0,0,.12);
}

.dfv-popup-hero {
  padding: 34px 34px 26px;
  background: linear-gradient(135deg, #111827 0%, #0443ab 100%);
  color: #ffffff;
  border-radius: 24px 24px 0 0;
}
.dfv-popup-hero-trade { background: linear-gradient(135deg, #111827 0%, #2B4C8B 100%); }
.dfv-popup-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 7px 12px;
  margin-bottom: 14px;
  border-radius: 999px;
  background: rgba(255,255,255,.14);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .02em;
}
.dfv-popup-hero h3 {
  margin: 0 52px 8px 0;
  color: #ffffff !important;
  font-size: clamp(1.7rem, 3vw, 2.25rem);
  line-height: 1.05;
  font-weight: 700;
}
.dfv-popup-hero p { margin: 0; max-width: 560px; opacity: .92; font-size: 1rem; }

.dfv-popup-vehicle-card {
  margin: 20px 34px 4px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px;
  border-radius: 18px;
  background: #f7f7f8;
  border: 1px solid rgba(0,0,0,.06);
}
.dfv-popup-vehicle-card span { display: block; font-size: 12px; text-transform: uppercase; letter-spacing: .05em; opacity: .7; font-weight: 700; }
.dfv-popup-vehicle-card strong { display: block; font-size: 1.05rem; color: #111827; }
.dfv-popup-vehicle-card small { display: block; margin-top: 3px; font-weight: 700; color: #970a0a; }
.dfv-popup-vehicle-card img { width: 112px; height: 76px; object-fit: cover; border-radius: 14px; }

.dfv-modern-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  padding: 24px 34px 34px;
}
.dfv-modern-form .dfv-field-full,
.dfv-modern-form .dfv-choice-row,
.dfv-modern-form .dfv-form-section-title,
.dfv-modern-form .dfv-form-actions,
.dfv-modern-form .dfv-form-message,
.dfv-modern-form .dvo-help-block { grid-column: 1 / -1; }
.dfv-form-section-title {
  margin-top: 6px;
  padding-top: 4px;
  font-size: .92rem;
  font-weight: 700;
  color: #111827;
}
.dfv-choice-row { display: flex; gap: 10px; flex-wrap: wrap; }
.dfv-choice-row label { cursor: pointer; margin: 0; }
.dfv-choice-row input { position: absolute; opacity: 0; pointer-events: none; }
.dfv-choice-row span {
  display: inline-flex;
  padding: 10px 16px;
  border-radius: 999px;
  background: #f3f4f6;
  border: 1px solid rgba(0,0,0,.08);
  font-weight: 700;
}
.dfv-choice-row input:checked + span { background: #111827; color: #ffffff; }

.dfv-modern-form .dfv-field label {
  display: block;
  margin-bottom: 7px;
  font-size: 13px;
  font-weight: 700;
  color: #374151;
}
.dfv-modern-form input[type="text"],
.dfv-modern-form input[type="email"],
.dfv-modern-form input[type="tel"],
.dfv-modern-form textarea {
  width: 100%;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  background: #ffffff;
  padding: 13px 14px;
  font-size: 15px;
  outline: none;
  transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
.dfv-modern-form textarea { resize: vertical; min-height: 112px; }
.dfv-modern-form input:focus,
.dfv-modern-form textarea:focus {
  border-color: #970a0a;
  box-shadow: 0 0 0 4px rgba(151,10,10,.10);
}
.dfv-upload-field input[type="file"] {
  width: 100%;
  padding: 16px;
  border: 1px dashed #cbd5e1;
  border-radius: 16px;
  background: #f8fafc;
}
.dfv-upload-help { display: block; margin-top: 8px; font-size: 13px; color: #64748b; }
.dfv-submit-btn {
  width: 100%;
  min-height: 52px;
  border: 0;
  border-radius: 16px;
  background: #970a0a;
  color: #ffffff;
  font-size: 1rem;
  font-weight: 700;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  box-shadow: 0 12px 28px rgba(151,10,10,.25);
  transition: transform .15s ease, box-shadow .15s ease, opacity .15s ease;
}
.dfv-submit-btn:hover { transform: translateY(-1px); box-shadow: 0 16px 34px rgba(151,10,10,.3); }
.dfv-submit-btn:disabled { opacity: .65; cursor: wait; transform: none; }
.dvo-mail-status,
.dvo-mail-success,
.dvo-mail-error {
  padding: 12px 14px;
  border-radius: 14px;
  font-weight: 700;
}
.dvo-mail-status { background: #eff6ff; color: #1d4ed8; }
.dvo-mail-success { background: #ecfdf5; color: #047857; }
.dvo-mail-error { background: #fef2f2; color: #b91c1c; }

@media (max-width: 768px) {
  .dfv-modern-lead-modal { padding: 10px !important; align-items: flex-start !important; }
  .dfv-modern-lead-modal .dfv-popup-dialog { max-height: calc(100vh - 20px); border-radius: 18px; }
  .dfv-popup-hero { padding: 28px 20px 22px; border-radius: 18px 18px 0 0; }
  .dfv-popup-vehicle-card { margin: 16px 20px 0; }
  .dfv-popup-vehicle-card img { width: 88px; height: 62px; }
  .dfv-modern-form { grid-template-columns: 1fr; padding: 20px; }
}


/* === DFV admin-styling voor detail CTA's en popup knoppen === */
.dfv-detail-cta-button{
  background-color: var(--dfv-cta-bg, #970a0a) !important;
  color: var(--dfv-cta-color, #ffffff) !important;
  font-size: var(--dfv-cta-font-size, 1rem) !important;
  border: 1px solid var(--dfv-cta-border, #970a0a) !important;
  border-radius: var(--dfv-cta-radius, 14px) !important;
  font-weight: var(--dfv-cta-font-weight, 900) !important;
}
.dfv-detail-cta-button:hover{
  background-color: var(--dfv-cta-hover-bg, #ffffff) !important;
  color: var(--dfv-cta-hover-color, #970a0a) !important;
  border-color: var(--dfv-cta-hover-border, #970a0a) !important;
}
.dfv-submit-btn{
  background-color: var(--dfv-submit-bg, #970a0a) !important;
  color: var(--dfv-submit-color, #ffffff) !important;
  font-size: var(--dfv-submit-font-size, 1rem) !important;
  border: 1px solid var(--dfv-submit-border, #970a0a) !important;
  border-radius: var(--dfv-submit-radius, 14px) !important;
  font-weight: var(--dfv-submit-font-weight, 900) !important;
}
.dfv-submit-btn:hover{
  background-color: var(--dfv-submit-hover-bg, #ffffff) !important;
  color: var(--dfv-submit-hover-color, #970a0a) !important;
  border-color: var(--dfv-submit-hover-border, #970a0a) !important;
}
.dfv-popup-vehicle-card small{
  display: inline-block !important;
  padding: 3px 8px;
  transition: all .2s ease;
}
.dfv-popup-vehicle-card small:hover{
  background-color: var(--dfv-popup-price-hover-bg, inherit) !important;
  color: var(--dfv-popup-price-hover-color, inherit) !important;
  border-color: var(--dfv-popup-price-hover-border, inherit) !important;
}


/* === DFV detail: titelbalk met prijs + overzicht === */
.dfv-detail-titlebar {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 24px !important;
    flex-wrap: wrap !important;
    margin-bottom: 15px !important;
}

.dfv-detail-titlebar-text {
    min-width: 0 !important;
    flex: 1 1 auto !important;
}

.dfv-detail-titlebar-text h1 {
    margin-bottom: 5px !important;
}

.dfv-detail-titlebar-actions {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 15px !important;
    flex: 0 0 auto !important;
}

.dfv-detail-titlebar-price {
    display: inline-block !important;
    font-size: 1.7rem !important;
    line-height: 1.1 !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    white-space: nowrap !important;
}

.dfv-detail-titlebar-overview {
    white-space: nowrap !important;
}

/* Het oude prijs/overzicht-blok rechts naast de thumbs is verplaatst naar de titelbalk. */
.dfv-side-price-overview {
    display: none !important;
}

@media (max-width: 768px) {
    .dfv-detail-titlebar {
        align-items: flex-start !important;
    }

    .dfv-detail-titlebar-actions {
        width: 100% !important;
        justify-content: space-between !important;
    }

    .dfv-detail-titlebar-price {
        font-size: 1.4rem !important;
    }
}

/* === DFV detail layout v2: titel boven hoofdafbeelding + rechterkolom gelijkgetrokken === */
#dvo-occasions .dfv-detail-gallery,
.dfv-detail-gallery {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(260px, 30%) !important;
    gap: 14px !important;
    align-items: stretch !important;
}

.dfv-detail-main-column {
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
    min-width: 0 !important;
    width: 100% !important;
}

.dfv-detail-titlebar {
    width: 100% !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 18px !important;
    flex-wrap: nowrap !important;
    margin: 0 !important;
}

.dfv-detail-titlebar-text {
    min-width: 0 !important;
    flex: 1 1 auto !important;
}

.dfv-detail-titlebar-text h1,
.dfv-detail-titlebar-text .txtoev {
    margin-top: 0 !important;
}

.dfv-detail-titlebar-actions {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 14px !important;
    flex: 0 0 auto !important;
    white-space: nowrap !important;
}

.dfv-detail-titlebar-price {
    display: inline-flex !important;
    align-items: center !important;
    font-size: clamp(1.35rem, 1.7vw, 1.9rem) !important;
    line-height: 1 !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    white-space: nowrap !important;
}

.dfv-detail-titlebar-overview {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    white-space: nowrap !important;
}

.dfv-detail-main-swiper {
    height: clamp(430px, 42vw, 660px) !important;
}

.dfv-detail-side {
    display: grid !important;
    grid-template-rows: minmax(0, 1fr) auto !important;
    gap: 14px !important;
    min-width: 0 !important;
    width: 100% !important;
    align-self: stretch !important;
}

.dfv-detail-thumbs-grid {
    height: auto !important;
    min-height: 0 !important;
}

.dvo-contact-infobox {
    margin-top: 0 !important;
    height: 100% !important;
    min-height: 0 !important;
    display: flex !important;
    align-items: center !important;
}

.dvo-contact-infobox-inner {
    width: 100% !important;
}

.dfv-detail-action-row {
    margin-top: 18px !important;
    margin-bottom: 0 !important;
}

.dfv-detail-spec-cards-section {
    padding-top: 16px !important;
    padding-bottom: 8px !important;
}

.dfv-detail-spec-cards {
    display: grid !important;
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    gap: 14px !important;
}

.dfv-detail-spec-card {
    border-radius: 16px !important;
    border: 1px solid rgba(17, 24, 39, .10) !important;
    box-shadow: 0 12px 28px rgba(17, 24, 39, .06) !important;
}

/* === DFV detail: modern blok onderscheidende opties === */
.dfv-highlight-options-section {
    padding-top: 8px !important;
    padding-bottom: 16px !important;
}

.dfv-highlight-options-card
 {
    background: #000000 !important;
    border: 1px solid rgba(17, 24, 39, .10) !important;
    border-radius: 18px !important;
    padding: 24px !important;
    box-shadow: 0 14px 34px rgba(17, 24, 39, .07) !important;
}

.dfv-highlight-options-head {
    display: flex !important;
    align-items: flex-end !important;
    justify-content: space-between !important;
    gap: 18px !important;
    margin-bottom: 18px !important;
    border-bottom: 1px solid rgba(17, 24, 39, .10) !important;
    padding-bottom: 16px !important;
}

.dfv-highlight-options-eyebrow {
    display: inline-flex !important;
    align-items: center !important;
    border-radius: 999px !important;
    padding: 6px 12px !important;
    background: rgba(151, 10, 10, .08) !important;
    color: #970a0a !important;
    font-size: .78rem !important;
    font-weight: 700 !important;
    letter-spacing: .04em !important;
    text-transform: uppercase !important;
}

.dfv-highlight-options-head h3 {
    margin: 0 !important;
    color: #111827 !important;
    font-size: clamp(1.25rem, 2vw, 1.7rem) !important;
    font-weight: 600 !important;
}

.dfv-highlight-options-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 12px !important;
}

.dfv-highlight-option-item {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    min-height: 58px !important;
    padding: 12px 14px !important;
    border-radius: 14px !important;
    background: #f8fafc !important;
    border: 1px solid rgba(17, 24, 39, .08) !important;
}

.dfv-highlight-option-icon {
    width: 34px !important;
    height: 34px !important;
    flex: 0 0 34px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    box-shadow: 0 6px 16px rgba(17, 24, 39, .06) !important;
}

.dfv-highlight-option-text {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    color: #111827 !important;
    font-weight: 700 !important;
}

.dfv-highlight-option-photo {
    flex: 0 0 auto !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    color: #970a0a !important;
    text-decoration: none !important;
}

.dfv-highlight-option-photo img.dvo-thumb-op {
    width: 24px !important;
    height: 24px !important;
    border-radius: 99px !important;
    object-fit: cover !important;
}

@media (max-width: 1199px) {
    .dfv-detail-spec-cards {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }

    .dfv-highlight-options-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 991px) {
    #dvo-occasions .dfv-detail-gallery,
    .dfv-detail-gallery {
        grid-template-columns: 1fr !important;
    }

    .dfv-detail-side {
        display: flex !important;
        flex-direction: column !important;
        height: auto !important;
    }

    .dvo-contact-infobox {
        height: auto !important;
    }
}

@media (max-width: 768px) {
    .dfv-detail-titlebar {
        align-items: flex-start !important;
        flex-direction: column !important;
    }

    .dfv-detail-titlebar-actions {
        width: 100% !important;
        justify-content: space-between !important;
    }

    .dfv-detail-spec-cards {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .dfv-highlight-options-head {
        align-items: flex-start !important;
        flex-direction: column !important;
    }

    .dfv-highlight-options-grid {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 480px) {
    
    .dfv-detail-titlebar-text {
        order: 1;
    }
    .dfv-detail-spec-cards {
        grid-template-columns: 1fr !important;
    }

    .dfv-detail-titlebar-actions {
        align-items: stretch !important;
        flex-direction: column !important;
        order: 0;
    }

    .dfv-detail-titlebar-overview {
        width: 50% !important;
    }
    
    .dfv-detail-titlebar-price {
        width: 50%;
    }
    
    .dvo-contact-infobox {
        height: 470px !important;
    }
}

/* === DFV detail layout v3: thumbnails equal to main image, actions right, modern tabs/mobile === */
:root {
  --dfv-detail-media-height: clamp(430px, 42vw, 660px);
}

#dvo-occasions .dfv-detail-gallery,
.dfv-detail-gallery {
  grid-template-columns: minmax(0, 1fr) minmax(280px, 50%) !important;
  grid-template-rows: auto var(--dfv-detail-media-height) !important;
  align-items: start !important;
}

.dfv-detail-main-column {
  grid-column: 1 / 2 !important;
  grid-row: 1 / 3 !important;
  display: grid !important;
  grid-template-rows: auto var(--dfv-detail-media-height) !important;
  gap: 14px !important;
}

.dfv-detail-titlebar {
  grid-row: 1 !important;
  max-width: 100% !important;
  align-items: flex-start !important;
}

.dfv-detail-titlebar-text {
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

.dfv-detail-titlebar-actions {
  margin-left: auto !important;
  justify-content: flex-end !important;
  align-self: flex-start !important;
}

.dfv-detail-titlebar-price {
  text-align: right !important;
}

.dfv-detail-main-swiper {
  grid-row: 2 !important;
  height: var(--dfv-detail-media-height) !important;
  min-height: var(--dfv-detail-media-height) !important;
  max-height: var(--dfv-detail-media-height) !important;
}

.dfv-detail-main-swiper .swiper-wrapper,
.dfv-detail-main-swiper .swiper-slide,
.dfv-detail-main-swiper a,
.dfv-detail-main-img {
  height: 100% !important;
}

.dfv-detail-main-img {
  min-height: 100% !important;
  max-height: 100% !important;
}

.dfv-detail-side {
  grid-column: 2 / 3 !important;
  grid-row: 2 / 3 !important;
  height: var(--dfv-detail-media-height) !important;
  min-height: var(--dfv-detail-media-height) !important;
  max-height: var(--dfv-detail-media-height) !important;
  display: grid !important;
  grid-template-rows: minmax(0, 1fr) auto !important;
  gap: 14px !important;
}

.dfv-detail-thumbs-grid {
  height: 100% !important;
  min-height: 0 !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-template-rows: repeat(2, minmax(0, 1fr)) !important;
}

.dfv-detail-thumb-btn,
.dfv-detail-thumb-img {
  height: 100% !important;
  min-height: 0 !important;
}

.dfv-detail-thumb-img {
  aspect-ratio: auto !important;
}

.dvo-contact-infobox {
  min-height: 124px !important;
  max-height: 180px !important;
  overflow: hidden !important;
}

/* Modern tabblok desktop */
#exTab3 > .col-md-12 {
    border: 0 !important;
    border-radius: 24px !important;
    background: #e5e7eb;
    box-shadow: 0 18px 45px rgba(15, 23, 42, .08) !important;
    padding: 22px !important;
}
#exTab3 .nav-tabs
{
    gap: 10px !important;
    padding: 8px !important;
    margin-bottom: 0 !important;
    border: 1px solid rgba(15, 23, 42, .08) !important;
    border-radius: 18px 18px 0 0 !important;
    background: #f3f4f4 !important;
}

#exTab3 .nav-tabs .nav-item {
  margin: 0 !important;
}

#exTab3 .nav-tabs .nav-link {
  border: 0 !important;
  border-radius: 14px !important;
  background: transparent !important;
  padding: 13px 18px !important;
  transition: background-color .2s ease, box-shadow .2s ease, transform .2s ease !important;
}

#exTab3 .nav-tabs .nav-link h3 {
  font-size: .98rem !important;
  line-height: 1.1 !important;
  font-weight: 850 !important;
  color: #334155 !important;
  margin: 0 !important;
}

#exTab3 .nav-tabs .nav-link:hover {
  background: #ffffff !important;
  transform: translateY(-1px) !important;
}

#exTab3 .nav-tabs .nav-link.active {
  background: #ffffff !important;
  box-shadow: 0 12px 28px rgba(15, 23, 42, .10) !important;
}

#exTab3 .nav-tabs .nav-link.active h3 {
  color: #970a0a !important;
}

#exTab3 .tab-content {
  border: 1px solid rgba(15, 23, 42, .08) !important;
  border-top: 0 !important;
  border-radius: 0 0 22px 22px !important;
  overflow: hidden !important;
  background: #ffffff !important;
}

#exTab3 .tab-pane > .col-md-12,
#exTab3 .tab-pane .bg-white {
  background: #ffffff !important;
}

#exTab3 h3.dvo-subtitle {
  font-size: 1.35rem !important;
  font-weight: 600 !important;
  letter-spacing: -.02em !important;
  border-bottom: 1px solid rgba(15, 23, 42, .10) !important;
  padding-bottom: 13px !important;
  margin-bottom: 18px !important;
}

#exTab3 .dvo-detail {
  padding: 7px 0 !important;
  line-height: 1.35 !important;
}

/* Modern mobiel accordionblok */
#mobielspec {
  padding-top: 18px !important;
}

#mobielspec > .col-md-12 {
  background: transparent !important;
  padding: 0 !important;
}

#mobielspec .accordion {
  display: grid !important;
  gap: 12px !important;
}

#mobielspec .accordion-item {
  border: 1px solid rgba(15, 23, 42, .10) !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  background: #ffffff !important;
  box-shadow: 0 12px 28px rgba(15, 23, 42, .07) !important;
}

#mobielspec .accordion-button {
  border-radius: 0 !important;
  padding: 17px 18px !important;
  background: #ffffff !important;
  color: #111827 !important;
  font-weight: 600 !important;
  box-shadow: none !important;
}

#mobielspec .accordion-button:not(.collapsed) {
  color: #970a0a !important;
  background: #f8fafc !important;
}

#mobielspec .accordion-body {
  padding: 18px !important;
  background: #ffffff !important;
}

@media (max-width: 991px) {
  #dvo-occasions .dfv-detail-gallery,
  .dfv-detail-gallery {
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto auto !important;
  }

  .dfv-detail-main-column {
    grid-column: 1 !important;
    grid-row: 1 / 2 !important;
    display: flex !important;
  }

  .dfv-detail-main-swiper {
    height: clamp(310px, 65vw, 520px) !important;
    min-height: clamp(310px, 65vw, 520px) !important;
    max-height: clamp(310px, 65vw, 520px) !important;
  }

  .dfv-detail-side {
    grid-column: 1 !important;
    grid-row: 2 / 3 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    display: flex !important;
  }

  .dfv-detail-thumbs-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    grid-template-rows: 1fr !important;
  }

  .dfv-detail-thumb-img {
    aspect-ratio: 4 / 3 !important;
  }

  .dvo-contact-infobox {
    min-height: 0 !important;
    max-height: none !important;
  }

  #exTab3 {
    display: none !important;
  }

  #mobielspec {
    display: block !important;
  }
}

@media (max-width: 768px) {
  .dfv-detail-titlebar-actions {
    margin-left: 0 !important;
    justify-content: flex-end !important;
  }

  .dfv-detail-titlebar {
    flex-direction: row !important;
    align-items: flex-start !important;
  }
}

@media (max-width: 560px) {
  .dfv-detail-titlebar {
    flex-direction: column !important;
  }

  .dfv-detail-titlebar-actions {
    width: 100% !important;
    flex-direction: row !important;
    justify-content: space-between !important;
  }

  .dfv-detail-thumbs-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-template-rows: repeat(2, 1fr) !important;
  }
}

/* =========================
   DFV detail v4: moderne onderkant-secties
   ========================= */
.dfv-bottom-contact-cta-wrap {
    margin-top: 10px !important;
    margin-bottom: 30px;
}

.dfv-bottom-contact-cta {
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;


/* SB Occasions detail herstel: CTA apart, delen apart, gallery klikbaar en pijlen zwart/grijs */
#dvo-website .dfv-detail-gallery .dfv-detail-cta-row-above-lease{
    display:flex !important;
    flex-wrap:wrap !important;
    gap:12px !important;
    align-items:stretch !important;
    justify-content:space-between !important;
    grid-column:2 !important;
    width:100% !important;
    background:#ffffff !important;
    border:1px solid rgba(7,3,39,.08) !important;
    border-radius:18px !important;
    padding:14px !important;
    box-shadow:0 12px 30px rgba(7,3,39,.08) !important;
    margin:0 0 14px 0 !important;
}
#dvo-website .dfv-detail-gallery .dfv-detail-cta-row-above-lease .dfv-detail-cta-button{
    display:inline-flex !important;
    flex:1 1 150px !important;
    min-height:48px !important;
    align-items:center !important;
    justify-content:center !important;
    white-space:nowrap !important;
}
#dvo-website .dfv-detail-gallery .dfv-detail-action-row{
    grid-column:2 !important;
    width:100% !important;
    display:flex !important;
    justify-content:flex-start !important;
    align-items:center !important;
    background:#ffffff !important;
    border:1px solid rgba(7,3,39,.08) !important;
    border-radius:18px !important;
    padding:12px !important;
    box-shadow:0 12px 30px rgba(7,3,39,.08) !important;
    margin:14px 0 0 0 !important;
    overflow:hidden !important;
}
#dvo-website .dfv-detail-gallery .dfv-detail-action-row .dfv-detail-share-block{
    display:flex !important;
    gap:10px !important;
    flex-wrap:wrap !important;
    justify-content:flex-start !important;
    width:100% !important;
}
#dvo-website .dfv-detail-gallery .dfv-detail-slider-btn{
    background:rgba(255,255,255,.92) !important;
    border:1px solid rgba(17,24,39,.22) !important;
    color:#111827 !important;
    box-shadow:0 10px 24px rgba(0,0,0,.18) !important;
}
#dvo-website .dfv-detail-gallery .dfv-detail-slider-btn i,
#dvo-website .dfv-detail-gallery .dfv-detail-slider-btn svg{
    color:#111827 !important;
    fill:#111827 !important;
}
#dvo-website .dfv-detail-gallery .dfv-detail-slider-btn:hover,
#dvo-website .dfv-detail-gallery .dfv-detail-slider-btn:focus{
    background:#111827 !important;
    border-color:#111827 !important;
    color:#ffffff !important;
}
#dvo-website .dfv-detail-gallery .dfv-detail-slider-btn:hover i,
#dvo-website .dfv-detail-gallery .dfv-detail-slider-btn:focus i,
#dvo-website .dfv-detail-gallery .dfv-detail-slider-btn:hover svg,
#dvo-website .dfv-detail-gallery .dfv-detail-slider-btn:focus svg{
    color:#ffffff !important;
    fill:#ffffff !important;
}
#dvo-website .dfv-detail-gallery .dfv-detail-thumbs-grid,
#dvo-website .dfv-detail-gallery .dfv-detail-thumbslider{
    display:flex !important;
    flex-wrap:nowrap !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    scroll-behavior:smooth !important;
}
#dvo-website .dfv-detail-gallery .dfv-detail-thumb-btn,
#dvo-website .dfv-detail-gallery .dfv-detail-thumb-btn:nth-child(n+5){
    display:inline-flex !important;
    flex:0 0 112px !important;
    width:112px !important;
    min-width:112px !important;
    height:72px !important;
}
@media (max-width: 991px){
    #dvo-website .dfv-detail-gallery,
    #dvo-website .dfv-detail-gallery.status_{
        display:block !important;
    }
    #dvo-website .dfv-detail-gallery .dfv-detail-cta-row-above-lease,
    #dvo-website .dfv-detail-gallery .dfv-detail-action-row{
        grid-column:auto !important;
        margin-top:14px !important;
    }
}


/* SB Occasions rechterkolom volgorde: buttons > calculator > delen */
@media (min-width: 992px){
    #dvo-website .dfv-detail-gallery .dfv-detail-media-panel{
        grid-column:1 / 2 !important;
        grid-row:1 / 4 !important;
    }
    #dvo-website .dfv-detail-gallery .dfv-detail-cta-row-above-lease{
        grid-column:2 / 3 !important;
        grid-row:1 / 2 !important;
    }
    #dvo-website .dfv-detail-gallery .dfv-detail-inline-leasecalc{
        grid-column:2 / 3 !important;
        grid-row:2 / 3 !important;
        width:100% !important;
        align-self:start !important;
    }
    #dvo-website .dfv-detail-gallery .dfv-detail-action-row{
        grid-column:2 / 3 !important;
        grid-row:3 / 4 !important;
    }
}

/* SB Occasions: CTA buttons in titlebar actions onder prijs/overzicht */
#dvo-website .dfv-detail-titlebar-actions{
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-end !important;
    gap:12px !important;
}
#dvo-website .dfv-detail-titlebar-price-row{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:14px !important;
    width:100% !important;
}
#dvo-website .dfv-detail-titlebar-cta-row{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:10px !important;
    width:100% !important;
    background:#ffffff !important;
    border:1px solid rgba(7,3,39,.08) !important;
    border-radius:18px !important;
    padding:12px !important;
    box-shadow:0 12px 30px rgba(7,3,39,.08) !important;
    overflow:hidden !important;
}
#dvo-website .dfv-detail-titlebar-cta-row .dfv-detail-cta-button{
    display:inline-flex !important;
    flex:1 1 150px !important;
    min-height:46px !important;
    align-items:center !important;
    justify-content:center !important;
    white-space:nowrap !important;
}
@media (max-width: 991px){
    #dvo-website .dfv-detail-titlebar-actions{
        align-items:stretch !important;
        width:100% !important;
    }
    #dvo-website .dfv-detail-titlebar-price-row,
    #dvo-website .dfv-detail-titlebar-cta-row{
        justify-content:flex-start !important;
        flex-wrap:wrap !important;
    }
}


/* SB Occasions: CTA blok exact onder prijs/lease/overzicht binnen titlebar */
#dvo-website .dfv-detail-titlebar-actions{
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
}
#dvo-website .dfv-detail-titlebar-actions .dfv-detail-titlebar-price-row{
    order:1 !important;
    width:100% !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:14px !important;
}
#dvo-website .dfv-detail-titlebar-actions .dfv-detail-titlebar-cta-row{
    order:2 !important;
    width:100% !important;
    align-self:stretch !important;
    margin-top:10px !important;
    display:flex !important;
    justify-content:flex-end !important;
    gap:10px !important;
}
@media (max-width: 991px){
    #dvo-website .dfv-detail-titlebar-actions .dfv-detail-titlebar-price-row,
    #dvo-website .dfv-detail-titlebar-actions .dfv-detail-titlebar-cta-row{
        justify-content:flex-start !important;
    }
}


/* SB Occasions: CTA-buttons onder de prijs/lease/overzicht-regel */
#dvo-website .dfv-detail-titlebar-actions{
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-end !important;
    gap:12px !important;
}
#dvo-website .dfv-detail-titlebar-actions .dfv-detail-titlebar-price-row{
    order:1 !important;
    width:100% !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:14px !important;
    flex-wrap:nowrap !important;
}
#dvo-website .dfv-detail-titlebar-actions .dfv-detail-titlebar-cta-row{
    order:2 !important;
    width:100% !important;
    display:flex !important;
    justify-content:flex-end !important;
    gap:10px !important;
    margin-top:12px !important;
    clear:both !important;
}
@media (max-width: 991px){
    #dvo-website .dfv-detail-titlebar-actions{
        align-items:stretch !important;
        width:100% !important;
    }
    #dvo-website .dfv-detail-titlebar-actions .dfv-detail-titlebar-price-row,
    #dvo-website .dfv-detail-titlebar-actions .dfv-detail-titlebar-cta-row{
        justify-content:flex-start !important;
        flex-wrap:wrap !important;
    }
}

/* DFV SB Occasions: inruil verzendknop admin styling altijd toepassen */
body .dfv-popup-modal .dfv-submit-btn-inruil,
body #inruilblok .dfv-submit-btn-inruil,
#dvo-website #inruilblok .dfv-submit-btn-inruil {
  background-color: var(--dfv-submit-bg, #970a0a) !important;
  color: var(--dfv-submit-color, #ffffff) !important;
  border: 1px solid var(--dfv-submit-border, #970a0a) !important;
  border-radius: var(--dfv-submit-radius, 14px) !important;
  font-size: var(--dfv-submit-font-size, 1rem) !important;
}
body .dfv-popup-modal .dfv-submit-btn-inruil:hover,
body .dfv-popup-modal .dfv-submit-btn-inruil:focus,
body #inruilblok .dfv-submit-btn-inruil:hover,
body #inruilblok .dfv-submit-btn-inruil:focus,
#dvo-website #inruilblok .dfv-submit-btn-inruil:hover,
#dvo-website #inruilblok .dfv-submit-btn-inruil:focus {
  background-color: var(--dfv-submit-hover-bg, #ffffff) !important;
  color: var(--dfv-submit-hover-color, #970a0a) !important;
  border-color: var(--dfv-submit-hover-border, #970a0a) !important;
}

/* DFV SB Occasions: Inruilvoorstel knop volledig via adminvariabelen */
#dvo-website #buttonshowinruil.dfv-detail-cta-button,
body #dvo-website #buttonshowinruil.dfv-detail-cta-button,
#buttonshowinruil.dfv-detail-cta-button {
  background-color: var(--dfv-cta-bg, #111827) !important;
  color: var(--dfv-cta-color, #ffffff) !important;
  border: 1px solid var(--dfv-cta-border, #111827) !important;
  border-radius: var(--dfv-cta-radius, 14px) !important;
  font-size: var(--dfv-cta-font-size, 1rem) !important;
  font-weight: var(--dfv-cta-font-weight, 900) !important;
}
#dvo-website #buttonshowinruil.dfv-detail-cta-button:hover,
#dvo-website #buttonshowinruil.dfv-detail-cta-button:focus,
body #dvo-website #buttonshowinruil.dfv-detail-cta-button:hover,
body #dvo-website #buttonshowinruil.dfv-detail-cta-button:focus,
#buttonshowinruil.dfv-detail-cta-button:hover,
#buttonshowinruil.dfv-detail-cta-button:focus {
  background-color: var(--dfv-cta-hover-bg, #ffffff) !important;
  color: var(--dfv-cta-hover-color, #111827) !important;
  border-color: var(--dfv-cta-hover-border, #111827) !important;
}

/* === SB Occasions admin variabelen: Popup hero / Deel blok / Specificatie blok === */
html body #dvo-website .dfv-popup-hero,
html body #dvo-website .dfv-popup-hero.dfv-popup-hero-trade,
html body #dvo-website .dfv-leasecalc-modal .dfv-popup-hero {
    background: var(--dfv-popup-hero-bg) !important;
    background-color: var(--dfv-popup-hero-bg) !important;
    background-image: none !important;
}

html body #dvo-website .dfv-detail-share-block {
    background: var(--dfv-share-block-bg) !important;
    background-color: var(--dfv-share-block-bg) !important;
    border: 1px solid var(--dfv-share-block-border) !important;
    border-radius: var(--dfv-share-block-radius) !important;
    padding: var(--dfv-share-block-padding) !important;
    gap: var(--dfv-share-block-gap) !important;
}

html body #dvo-website .dfv-detail-share-button {
    background: var(--dfv-share-icon-bg) !important;
    background-color: var(--dfv-share-icon-bg) !important;
    color: var(--dfv-share-icon-color) !important;
    border: 1px solid var(--dfv-share-icon-border) !important;
    border-radius: var(--dfv-share-icon-radius) !important;
    width: var(--dfv-share-icon-size) !important;
    height: var(--dfv-share-icon-size) !important;
    min-width: var(--dfv-share-icon-size) !important;
}

html body #dvo-website .dfv-detail-share-button i,
html body #dvo-website .dfv-detail-share-button svg {
    color: var(--dfv-share-icon-color) !important;
    fill: var(--dfv-share-icon-color) !important;
}

html body #dvo-website .dfv-detail-share-button:hover,
html body #dvo-website .dfv-detail-share-button:focus {
    background: var(--dfv-share-icon-hover-bg) !important;
    background-color: var(--dfv-share-icon-hover-bg) !important;
    color: var(--dfv-share-icon-hover-color) !important;
    border-color: var(--dfv-share-icon-hover-border) !important;
}

html body #dvo-website .dfv-detail-share-button:hover i,
html body #dvo-website .dfv-detail-share-button:focus i,
html body #dvo-website .dfv-detail-share-button:hover svg,
html body #dvo-website .dfv-detail-share-button:focus svg {
    color: var(--dfv-share-icon-hover-color) !important;
    fill: var(--dfv-share-icon-hover-color) !important;
}

html body #dvo-website .dfv-detail-spec-cards-section {
    background: var(--dfv-spec-section-bg) !important;
    background-color: var(--dfv-spec-section-bg) !important;
    border: 1px solid var(--dfv-spec-section-border) !important;
    border-radius: var(--dfv-spec-section-radius) !important;
    padding: var(--dfv-spec-section-padding) !important;
}

html body #dvo-website .dfv-detail-spec-cards {
    gap: var(--dfv-spec-grid-gap) !important;
}

html body #dvo-website .dfv-detail-spec-card {
    background: var(--dfv-spec-card-bg) !important;
    background-color: var(--dfv-spec-card-bg) !important;
    border: 1px solid var(--dfv-spec-card-border) !important;
    border-radius: var(--dfv-spec-card-radius) !important;
    padding: var(--dfv-spec-card-padding) !important;
    box-shadow: var(--dfv-spec-card-shadow) !important;
}

html body #dvo-website .dfv-detail-spec-icon {
    background: var(--dfv-spec-icon-bg) !important;
    background-color: var(--dfv-spec-icon-bg) !important;
    color: var(--dfv-spec-icon-color) !important;
    width: var(--dfv-spec-icon-size) !important;
    height: var(--dfv-spec-icon-size) !important;
    min-width: var(--dfv-spec-icon-size) !important;
}

html body #dvo-website .dfv-detail-spec-icon i,
html body #dvo-website .dfv-detail-spec-icon svg {
    color: var(--dfv-spec-icon-color) !important;
    fill: var(--dfv-spec-icon-color) !important;
}

html body #dvo-website .dfv-detail-spec-value {
    color: var(--dfv-spec-value-color) !important;
    font-size: var(--dfv-spec-value-font-size) !important;
    font-weight: var(--dfv-spec-value-font-weight) !important;
}

html body #dvo-website .dfv-detail-spec-label {
    color: var(--dfv-spec-label-color) !important;
    font-size: var(--dfv-spec-label-font-size) !important;
    font-weight: var(--dfv-spec-label-font-weight) !important;
}

/* === DFV SB Occasions: Contactblok (online/offline) opnieuw opgebouwd === */
#dvo-website .dfv-bottom-contact-combo .dvo-contact-infobox,
.dfv-bottom-contact-combo .dvo-contact-infobox,
#dvo-website .dvo-contact-infobox,
.dvo-contact-infobox {
    background: var(--dvo-contactblok-bg, #111827) !important;
    border: 1px solid var(--dvo-contactblok-border-color, transparent) !important;
    border-radius: var(--dvo-contactblok-radius, 14px) !important;
    padding: var(--dvo-contactblok-padding, 18px) !important;
    min-height: var(--dvo-contactblok-min-height, 150px) !important;
    color: var(--dvo-contactblok-text-color, #ffffff) !important;
}

#dvo-website .dfv-bottom-contact-combo .dvo-contact-text,
.dfv-bottom-contact-combo .dvo-contact-text,
#dvo-website .dvo-contact-text,
.dvo-contact-text {
    color: var(--dvo-contactblok-text-color, #ffffff) !important;
    font-size: var(--dvo-contactblok-font-size, 1rem) !important;
    font-weight: var(--dvo-contactblok-font-weight, 500) !important;
}

#dvo-website .dfv-bottom-contact-combo .dvo-contact-text a,
.dfv-bottom-contact-combo .dvo-contact-text a,
#dvo-website .dvo-contact-text a,
.dvo-contact-text a {
    color: var(--dvo-contactblok-link-color, #ffffff) !important;
}

#dvo-website .dfv-bottom-contact-combo .dvo-contact-image,
.dfv-bottom-contact-combo .dvo-contact-image {
    flex: 0 0 var(--dvo-contactblok-image-width, 140px) !important;
    max-width: var(--dvo-contactblok-image-width, 140px) !important;
}

#dvo-website .dfv-bottom-contact-combo .dvo-contact-image img,
.dfv-bottom-contact-combo .dvo-contact-image img,
#dvo-website .dvo-contact-image img,
.dvo-contact-image img {
    width: var(--dvo-contactblok-image-width, 140px) !important;
    max-height: var(--dvo-contactblok-image-max-height, 135px) !important;
    height: auto !important;
    object-fit: contain !important;
}

#dvo-website .dvo-status-dot.is-online,
.dvo-status-dot.is-online {
    color: var(--dvo-contactblok-online-dot, #22c55e) !important;
}

#dvo-website .dvo-status-dot.is-offline,
.dvo-status-dot.is-offline {
    color: var(--dvo-contactblok-offline-dot, #9ca3af) !important;
}


/* SB Occasions: Lease en financieren opnieuw opgebouwd */
.dfv-detail-inline-leasecalc.df-lease-pro{
    background:var(--dfv-inline-card-bg,#fff) !important;
    border:1px solid var(--dfv-inline-border,#e5e7eb) !important;
    border-radius:var(--dfv-inline-radius,18px) !important;
    padding:var(--dfv-inline-padding,24px) !important;
    overflow:hidden;
}
.dfv-detail-inline-leasecalc .dfv-inline-leasecalc-head{
    background:var(--dfv-inline-header-bg,#111827) !important;
    color:var(--dfv-inline-header-color,#fff) !important;
    border-radius:calc(var(--dfv-inline-radius,18px) - 6px) !important;
    padding:18px 20px !important;
    margin:0 0 16px !important;
}
.dfv-detail-inline-leasecalc .dfv-inline-leasecalc-head h3,
.dfv-detail-inline-leasecalc .dfv-inline-leasecalc-eyebrow{color:var(--dfv-inline-header-color,#fff) !important;}
.dfv-detail-inline-leasecalc .dfv-inline-leasecalc-head p{color:var(--dfv-inline-header-subcolor,#e5e7eb) !important;}
.dfv-inline-provider-logo{max-height:44px;max-width:180px;display:block;margin-bottom:10px;object-fit:contain;}
.dfv-inline-lease-type-tabs,.dfv-inline-form-tabs{display:flex;gap:8px;margin:0 0 16px;flex-wrap:wrap;}
.dfv-inline-type-tab,.dfv-inline-form-tab{background:var(--dfv-inline-tab-bg,#f3f4f6) !important;color:var(--dfv-inline-tab-color,#111827) !important;border:1px solid transparent;border-radius:999px;padding:10px 18px;font-weight:800;cursor:pointer;}
.dfv-inline-type-tab.active,.dfv-inline-form-tab.active{background:var(--dfv-inline-tab-active-bg,#c11214) !important;color:var(--dfv-inline-tab-active-color,#fff) !important;}
.dfv-detail-inline-leasecalc .df-input,
.dfv-detail-inline-leasecalc input,
.dfv-detail-inline-leasecalc select,
.dfv-detail-inline-leasecalc textarea{background:var(--dfv-inline-input-bg,#fff) !important;color:var(--dfv-inline-input-color,#111827) !important;border-color:var(--dfv-inline-input-border,#d1d5db) !important;border-radius:var(--dfv-inline-input-radius,10px) !important;}
.dfv-detail-inline-leasecalc .df-readonly,.dfv-detail-inline-leasecalc .df-highlight{background:var(--dfv-inline-result-bg,#f9fafb) !important;color:var(--dfv-inline-result-color,#111827) !important;}
.dfv-detail-inline-leasecalc .df-highlight strong,.dfv-detail-inline-leasecalc .df-monthly{color:var(--dfv-inline-result-price,#c11214) !important;}
.dfv-detail-inline-leasecalc .df-btn,.dfv-detail-inline-leasecalc .df-term-btn.active{background:var(--dfv-inline-btn-bg,#c11214) !important;color:var(--dfv-inline-btn-color,#fff) !important;border:1px solid var(--dfv-inline-btn-border,#c11214) !important;border-radius:var(--dfv-inline-btn-radius,999px) !important;}
.dfv-detail-inline-leasecalc .df-btn:hover{background:var(--dfv-inline-btn-hover-bg,#fff) !important;color:var(--dfv-inline-btn-hover-color,#c11214) !important;border-color:var(--dfv-inline-btn-hover-border,#c11214) !important;}
.dfv-inline-provider-info{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:14px;background:var(--dfv-inline-provider-bg,#f9fafb) !important;color:var(--dfv-inline-provider-color,#667085) !important;border:1px solid var(--dfv-inline-provider-border,#e5e7eb) !important;border-radius:var(--dfv-inline-provider-radius,14px) !important;padding:var(--dfv-inline-provider-padding,12px) !important;}
.dfv-inline-provider-info a,.dfv-inline-provider-info span{color:var(--dfv-inline-provider-color,#667085) !important;}
.dfv-inline-lease-form-section{display:none;}
.dfv-inline-lease-form-section.is-active{display:block;}
.dfv-inline-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.dfv-inline-form-full{grid-column:1/-1;}
@media(max-width:680px){.dfv-inline-form-grid{grid-template-columns:1fr}.dfv-inline-lease-type-tabs,.dfv-inline-form-tabs{display:grid;grid-template-columns:1fr 1fr}.dfv-inline-type-tab,.dfv-inline-form-tab{width:100%;}}

/* SB Occasions leasecalculator detail fixes: tabs, aparte zakelijk/particulier, kleuren admin */
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-leasecalc-head,
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-leasecalc-head h3,
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-leasecalc-head p{
    text-align:left !important;
}
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-provider-logo{
    display:block !important;
    margin:0 0 10px 0 !important;
}
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-lease-type-tabs,
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-form-tabs{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:8px !important;
    width:100% !important;
    flex-wrap:nowrap !important;
}
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-type-tab,
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-form-tab{
    width:100% !important;
    min-width:0 !important;
    justify-content:center !important;
    text-align:center !important;
    border:1px solid var(--dfv-inline-tab-border,#e11d48) !important;
    border-radius:var(--dfv-inline-tab-radius,10px) !important;
    background:var(--dfv-inline-tab-bg,#fff) !important;
    color:var(--dfv-inline-tab-color,#111827) !important;
}
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-type-tab.active,
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-form-tab.active{
    border-color:var(--dfv-inline-tab-active-border,#c11214) !important;
    background:var(--dfv-inline-tab-active-bg,#c11214) !important;
    color:var(--dfv-inline-tab-active-color,#fff) !important;
}
#dvo-website .dfv-detail-inline-leasecalc .df-term-btn{
    background:var(--dfv-inline-term-bg,#fff) !important;
    color:var(--dfv-inline-term-color,#111827) !important;
    border:1px solid var(--dfv-inline-term-border,#d1d5db) !important;
    border-radius:var(--dfv-inline-term-radius,8px) !important;
}
#dvo-website .dfv-detail-inline-leasecalc .df-term-btn.active{
    background:var(--dfv-inline-term-active-bg,#e1d51f) !important;
    color:var(--dfv-inline-term-active-color,#111827) !important;
    border-color:var(--dfv-inline-term-active-border,#e1d51f) !important;
}
#dvo-website .dfv-detail-inline-leasecalc .df-term-btn[hidden],
#dvo-website .dfv-detail-inline-leasecalc .dfv-term-hidden,
#dvo-website .dfv-detail-inline-leasecalc .dfv-balloon-row[hidden],
#dvo-website .dfv-detail-inline-leasecalc .dfv-is-hidden{
    display:none !important;
}
#dvo-website .dfv-detail-inline-leasecalc .df-highlight strong,
#dvo-website .dfv-detail-inline-leasecalc .df-monthly{
    background:var(--dfv-inline-month-bg,#e1d51f) !important;
    color:var(--dfv-inline-month-color,#000) !important;
}
#dvo-website .dfv-detail-inline-leasecalc .df-btn,
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-open-offer,
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-submit{
    background:var(--dfv-inline-btn-bg,#c11214) !important;
    color:var(--dfv-inline-btn-color,#fff) !important;
    border:1px solid var(--dfv-inline-btn-border,#c11214) !important;
    border-radius:var(--dfv-inline-btn-radius,999px) !important;
}
#dvo-website .dfv-detail-inline-leasecalc .df-btn:hover,
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-open-offer:hover,
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-submit:hover{
    background:var(--dfv-inline-btn-hover-bg,#fff) !important;
    color:var(--dfv-inline-btn-hover-color,#c11214) !important;
    border-color:var(--dfv-inline-btn-hover-border,#c11214) !important;
}
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-provider-info.dfv-inline-provider-address{
    margin-top:14px !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    color:var(--dfv-inline-provider-color,#667085) !important;
    font-size:12px !important;
    line-height:1.5 !important;
    text-align:center !important;
    opacity:.85 !important;
}

/* SB Occasions leasecalculator detail: tabs, aparte zakelijke/particuliere logica en adminkleuren */
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-leasecalc-head{
    text-align:left !important;
    align-items:flex-start !important;
}
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-provider-logo{
    display:block !important;
    margin:0 0 10px 0 !important;
    max-width:180px !important;
}
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-leasecalc-head h3,
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-leasecalc-head p,
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-leasecalc-eyebrow{
    text-align:left !important;
}
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-lease-type-tabs,
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-form-tabs{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:8px !important;
    width:100% !important;
    flex-wrap:nowrap !important;
}
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-type-tab,
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-form-tab{
    width:100% !important;
    min-width:0 !important;
    text-align:center !important;
    justify-content:center !important;
    border-radius:var(--dfv-inline-tab-radius,10px) !important;
    background:var(--dfv-inline-tab-bg,#f3f4f6) !important;
    color:var(--dfv-inline-tab-color,#111827) !important;
    border:1px solid var(--dfv-inline-tab-active-bg,#c11214) !important;
}
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-type-tab.active,
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-form-tab.active{
    background:var(--dfv-inline-tab-active-bg,#c11214) !important;
    color:var(--dfv-inline-tab-active-color,#ffffff) !important;
    border-color:var(--dfv-inline-tab-active-bg,#c11214) !important;
}
#dvo-website .dfv-detail-inline-leasecalc .df-term-btn{
    border-radius:var(--dfv-inline-term-radius,8px) !important;
}
#dvo-website .dfv-detail-inline-leasecalc .df-term-btn.active{
    background:var(--dfv-inline-term-active-bg,#d9d421) !important;
    color:var(--dfv-inline-term-active-color,#111827) !important;
    border-color:var(--dfv-inline-term-active-border,#d9d421) !important;
}
#dvo-website .dfv-detail-inline-leasecalc .df-highlight,
#dvo-website .dfv-detail-inline-leasecalc .df-highlight .df-output,
#dvo-website .dfv-detail-inline-leasecalc .df-monthly{
    background:var(--dfv-inline-monthly-bg,#d9d421) !important;
    color:var(--dfv-inline-monthly-color,#111827) !important;
}
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-open-offer,
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-submit{
    background:var(--dfv-inline-btn-bg,#c11214) !important;
    color:var(--dfv-inline-btn-color,#ffffff) !important;
    border:1px solid var(--dfv-inline-btn-border,#c11214) !important;
    border-radius:var(--dfv-inline-btn-radius,999px) !important;
}
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-open-offer:hover,
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-submit:hover{
    background:var(--dfv-inline-btn-hover-bg,#ffffff) !important;
    color:var(--dfv-inline-btn-hover-color,#c11214) !important;
    border-color:var(--dfv-inline-btn-hover-border,#c11214) !important;
}
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-provider-info{
    font-size:.82rem !important;
    line-height:1.45 !important;
    margin-top:14px !important;
    opacity:.95 !important;
}
#dvo-website .dfv-detail-inline-leasecalc .df-term-btn:not(.active){background:var(--dfv-inline-term-bg,#ffffff) !important;color:var(--dfv-inline-term-color,#111827) !important;border:1px solid var(--dfv-inline-term-border,#d1d5db) !important;}
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-type-tab,#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-form-tab{border-color:var(--dfv-inline-tab-border,#e11d48) !important;}
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-type-tab.active,#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-form-tab.active{border-color:var(--dfv-inline-tab-active-border,#c11214) !important;}

/* SB Occasions leasecalculator detail: gevraagde indeling maandbedrag/offerteknop */
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-action-row{
    grid-column:1 / -1 !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    gap:12px !important;
    align-items:end !important;
}
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-action-row .df-highlight{min-width:0 !important;}
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-action-row .dfv-inline-open-offer{width:100% !important;margin:0 !important;align-self:end !important;min-height:48px !important;}
#dvo-website .dfv-detail-inline-leasecalc .df-monthly,
#dvo-website .dfv-detail-inline-leasecalc .df-highlight .df-output.df-monthly{
    font-size:var(--dfv-inline-month-font-size,1rem) !important;
    font-weight:var(--dfv-inline-month-font-weight,800) !important;
    background:var(--dfv-inline-monthly-bg,#d9d421) !important;
    color:var(--dfv-inline-monthly-color,#111827) !important;
}
#dvo-website .dfv-detail-inline-leasecalc.dfv-inline-private-active .dfv-inline-slottermijn-field{display:none !important;}
#dvo-website .dfv-detail-inline-leasecalc.dfv-inline-private-active .dfv-inline-financed-box{grid-column:1 / -1 !important;width:50% !important;max-width:calc(50% - 6px) !important;justify-self:start !important;}
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-leasecalc-note{text-align:center !important;margin:14px auto 0 !important;display:block !important;width:100% !important;}
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-provider-line{margin-top:10px !important;padding:0 !important;border:0 !important;background:transparent !important;color:var(--dfv-inline-provider-color,#667085) !important;font-size:12px !important;line-height:1.45 !important;text-align:center !important;opacity:.95 !important;}
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-provider-address{margin-top:6px !important;padding:0 !important;border:0 !important;background:transparent !important;color:var(--dfv-inline-provider-color,#667085) !important;font-size:11px !important;line-height:1.4 !important;text-align:center !important;opacity:.7 !important;}
@media (max-width:767px){
    #dvo-website .dfv-detail-inline-leasecalc .dfv-inline-action-row{grid-template-columns:1fr !important;}
    #dvo-website .dfv-detail-inline-leasecalc.dfv-inline-private-active .dfv-inline-financed-box{width:100% !important;max-width:none !important;}
}

/* SB Occasions detail leasecalculator final: één adresregel, nette offerteknop en grotere hoofdfoto */
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-provider-line{display:none !important;}
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-provider-address{margin:10px auto 0 !important;padding:0 !important;border:0 !important;background:transparent !important;color:var(--dfv-inline-provider-color,#667085) !important;font-size:11px !important;line-height:1.45 !important;text-align:center !important;opacity:.95 !important;width:100% !important;}
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-open-offer,#dvo-website .dfv-detail-inline-leasecalc .df-btn.dfv-inline-open-offer{display:flex !important;align-items:center !important;justify-content:center !important;text-align:center !important;line-height:1.2 !important;white-space:normal !important;padding-left:16px !important;padding-right:16px !important;}
@media (min-width:1200px){#dvo-website .dfv-detail-gallery .dfv-detail-main-swiper,#dvo-website .dfv-detail-gallery .dfv-detail-main-swiper .swiper-wrapper,#dvo-website .dfv-detail-gallery .dfv-detail-main-swiper .swiper-slide,#dvo-website .dfv-detail-gallery .dfv-detail-main-swiper a,#dvo-website .dfv-detail-gallery .dfv-detail-main-img{height:clamp(440px,35vw,610px) !important;max-height:610px !important;}}

/* SB Occasions final fix: CTA boven calculator, labels bold en adresregel gecentreerd */
#dvo-website .dfv-detail-titlebar-cta-row{
    display:none !important;
}
@media (min-width: 992px){
    #dvo-website .dfv-detail-gallery.status_,
    #dvo-website .dfv-detail-gallery{
        grid-template-columns:minmax(0,70%) minmax(330px,30%) !important;
        grid-template-rows:auto auto auto !important;
        gap:10px 20px !important;
    }
    #dvo-website .dfv-detail-gallery .dfv-detail-media-panel{
        grid-column:1 / 2 !important;
        grid-row:1 / 4 !important;
    }
    #dvo-website .dfv-detail-gallery .dfv-detail-cta-row-above-lease{
        grid-column:2 / 3 !important;
        grid-row:1 / 2 !important;
    }
    #dvo-website .dfv-detail-gallery .dfv-detail-inline-leasecalc{
        grid-column:2 / 3 !important;
        grid-row:2 / 3 !important;
    }
    #dvo-website .dfv-detail-gallery > .dfv-detail-action-row,
    #dvo-website .dfv-detail-gallery .dfv-detail-action-row{
        grid-column:2 / 3 !important;
        grid-row:3 / 4 !important;
    }
}
#dvo-website .dfv-detail-gallery .dfv-detail-cta-row-above-lease{
    width:100% !important;
    max-width:100% !important;
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:10px !important;
    margin:0 0 0 0 !important;
    padding:0 !important;
    background:transparent !important;
    border:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
    align-items:stretch !important;
}
#dvo-website .dfv-detail-gallery .dfv-detail-cta-row-above-lease .dfv-detail-cta-button{
    width:100% !important;
    min-width:0 !important;
    min-height:48px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    text-align:center !important;
    margin:0 !important;
    padding:12px 14px !important;
    white-space:normal !important;
    line-height:1.2 !important;
}
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-provider-address,
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-provider-info.dfv-inline-provider-address{
    width:100% !important;
    max-width:100% !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    text-align:center !important;
    gap:4px !important;
    margin:10px auto 0 !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
}
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-provider-address span,
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-provider-address a{
    text-align:center !important;
}
#dvo-website .dfv-detail-inline-leasecalc label,
#dvo-website .dfv-detail-inline-leasecalc label span,
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-term-box > span,
#dvo-website .dfv-detail-inline-leasecalc .df-readonly > span,
#dvo-website .dfv-detail-inline-leasecalc .df-highlight > span,
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-form-grid label,
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-form-grid label span{
    font-weight:700 !important;
}
@media (max-width: 991px){
    #dvo-website .dfv-detail-gallery .dfv-detail-cta-row-above-lease{
        margin:14px 0 14px 0 !important;
    }
}
@media (max-width: 520px){
    #dvo-website .dfv-detail-gallery .dfv-detail-cta-row-above-lease{
        grid-template-columns:1fr !important;
    }
}

/* SB Occasions fix: CTA knoppen boven leasecalculator + compacte offerteknop */
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-leasecalc-cta-row,
body #dvo-website .dfv-detail-inline-leasecalc .dfv-inline-leasecalc-cta-row{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:10px!important;width:100%!important;margin:0 0 12px 0!important;padding:0!important;}
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-leasecalc-cta-row .dfv-detail-cta-button,
body #dvo-website .dfv-detail-inline-leasecalc .dfv-inline-leasecalc-cta-row .dfv-detail-cta-button{width:100%!important;min-width:0!important;max-width:none!important;margin:0!important;display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;white-space:nowrap!important;}
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-open-offer,#dvo-website .dfv-detail-inline-leasecalc .df-btn.dfv-inline-open-offer,body #dvo-website .dfv-detail-inline-leasecalc .dfv-inline-open-offer{padding-left:10px!important;padding-right:10px!important;white-space:nowrap!important;text-align:center!important;justify-content:center!important;}
@media (max-width:520px){#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-leasecalc-cta-row,body #dvo-website .dfv-detail-inline-leasecalc .dfv-inline-leasecalc-cta-row{grid-template-columns:1fr 1fr!important;gap:8px!important;}}

/* SB Occasions: los wit CTA-blok boven de leasecalculator */
#dvo-website .dfv-detail-gallery .dfv-detail-cta-row-above-lease,
body #dvo-website .dfv-detail-gallery .dfv-detail-cta-row-above-lease{width:100%!important;max-width:100%!important;box-sizing:border-box!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:10px!important;align-items:center!important;background:#fff!important;border:1px solid rgba(17,24,39,.08)!important;border-radius:18px!important;padding:12px!important;margin:0 0 10px 0!important;box-shadow:0 10px 24px rgba(0,0,0,.08)!important;}
#dvo-website .dfv-detail-gallery .dfv-detail-cta-row-above-lease .dfv-detail-cta-button,
body #dvo-website .dfv-detail-gallery .dfv-detail-cta-row-above-lease .dfv-detail-cta-button{width:100%!important;min-width:0!important;max-width:none!important;height:46px!important;display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;margin:0!important;white-space:nowrap!important;}
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-leasecalc-cta-row,
body #dvo-website .dfv-detail-inline-leasecalc .dfv-inline-leasecalc-cta-row{display:none!important;}
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-open-offer,
body #dvo-website .dfv-detail-inline-leasecalc .dfv-inline-open-offer{padding-left:12px!important;padding-right:12px!important;}
@media (max-width:520px){#dvo-website .dfv-detail-gallery .dfv-detail-cta-row-above-lease,body #dvo-website .dfv-detail-gallery .dfv-detail-cta-row-above-lease{grid-template-columns:1fr!important;}}

/* SB Occasions: los wit CTA-blok direct boven de leasecalculator */
#dvo-website .dfv-detail-leasecalc-cta-panel,
body #dvo-website .dfv-detail-leasecalc-cta-panel,
.dfv-detail-leasecalc-cta-panel{
    grid-column:2 !important;
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    gap:10px !important;
    align-items:center !important;
    background:#ffffff !important;
    border:1px solid rgba(17,24,39,.08) !important;
    border-radius:18px !important;
    padding:12px !important;
    margin:0 0 10px 0 !important;
    box-shadow:0 10px 24px rgba(0,0,0,.08) !important;
}
#dvo-website .dfv-detail-leasecalc-cta-panel .dfv-detail-cta-button,
body #dvo-website .dfv-detail-leasecalc-cta-panel .dfv-detail-cta-button,
.dfv-detail-leasecalc-cta-panel .dfv-detail-cta-button{
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    min-height:46px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    text-align:center !important;
    margin:0 !important;
    white-space:nowrap !important;
    line-height:1.15 !important;
}
@media (max-width:991px){
    #dvo-website .dfv-detail-leasecalc-cta-panel,
    body #dvo-website .dfv-detail-leasecalc-cta-panel,
    .dfv-detail-leasecalc-cta-panel{
        grid-column:1 !important;
    }
}
@media (max-width:420px){
    #dvo-website .dfv-detail-leasecalc-cta-panel,
    body #dvo-website .dfv-detail-leasecalc-cta-panel,
    .dfv-detail-leasecalc-cta-panel{
        grid-template-columns:1fr !important;
    }
}

/* SB Occasions fix: wit CTA-blok direct boven leasecalculator in rechterkolom */
@media (min-width: 992px){
  #dvo-website .dfv-detail-gallery.status_,
  #dvo-website .dfv-detail-gallery{
    display:grid !important;
    grid-template-columns:minmax(0,70%) minmax(300px,30%) !important;
    grid-template-rows:auto auto auto !important;
    align-items:start !important;
  }
  #dvo-website .dfv-detail-gallery .dfv-detail-media-panel{
    grid-column:1 / 2 !important;
    grid-row:1 / 4 !important;
  }
  #dvo-website .dfv-detail-gallery .dfv-detail-leasecalc-cta-panel,
  body #dvo-website .dfv-detail-gallery .dfv-detail-leasecalc-cta-panel{
    grid-column:2 / 3 !important;
    grid-row:1 / 2 !important;
    align-self:start !important;
    order:0 !important;
    margin:0 0 10px 0 !important;
    width:100% !important;
    max-width:100% !important;
  }
  #dvo-website .dfv-detail-gallery .dfv-detail-inline-leasecalc,
  body #dvo-website .dfv-detail-gallery .dfv-detail-inline-leasecalc{
    grid-column:2 / 3 !important;
    grid-row:2 / 3 !important;
    align-self:start !important;
    order:1 !important;
    width:100% !important;
    max-width:100% !important;
  }
  #dvo-website .dfv-detail-gallery > .dfv-detail-action-row,
  #dvo-website .dfv-detail-gallery .dfv-detail-action-row,
  body #dvo-website .dfv-detail-gallery .dfv-detail-action-row{
    grid-column:2 / 3 !important;
    grid-row:3 / 4 !important;
    align-self:start !important;
    order:2 !important;
    width:100% !important;
    max-width:100% !important;
    margin-top:10px !important;
  }
}
    grid-column:2 / 3 !important;
    grid-row:2 / 3 !important;
    align-self:start !important;
    order:1 !important;
    width:100% !important;
    max-width:100% !important;
  }
  #dvo-website .dfv-detail-gallery > .dfv-detail-action-row,
  #dvo-website .dfv-detail-gallery .dfv-detail-action-row,
  body #dvo-website .dfv-detail-gallery .dfv-detail-action-row{
    grid-column:2 / 3 !important;
    grid-row:3 / 4 !important;
    align-self:start !important;
    order:2 !important;
    width:100% !important;
    max-width:100% !important;
    margin-top:10px !important;
  }
}

/* DFV SB Occasions: CTA-blok in titelbalk, tweede regel rechts */
#dvo-website .dfv-detail-titlebar-actions .dfv-detail-titlebar-cta-panel,
body #dvo-website .dfv-detail-titlebar-actions .dfv-detail-titlebar-cta-panel{
    width:100% !important;
    max-width:520px !important;
    box-sizing:border-box !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    gap:10px !important;
    align-items:center !important;
    background:#ffffff !important;
    border:1px solid rgba(17,24,39,.08) !important;
    border-radius:18px !important;
    padding:12px !important;
    margin:0 !important;
    box-shadow:0 10px 24px rgba(0,0,0,.08) !important;
}
#dvo-website .dfv-detail-titlebar-actions .dfv-detail-titlebar-cta-panel .dfv-detail-cta-button,
body #dvo-website .dfv-detail-titlebar-actions .dfv-detail-titlebar-cta-panel .dfv-detail-cta-button{
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    height:46px !important;
    margin:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    text-align:center !important;
    white-space:nowrap !important;
    background:var(--dfv-cta-bg) !important;
    color:var(--dfv-cta-color) !important;
    border:1px solid var(--dfv-cta-border) !important;
    border-radius:var(--dfv-cta-radius) !important;
    font-size:var(--dfv-cta-font-size) !important;
    font-weight:var(--dfv-cta-font-weight) !important;
}
#dvo-website .dfv-detail-titlebar-actions .dfv-detail-titlebar-cta-panel .dfv-detail-cta-button:hover,
body #dvo-website .dfv-detail-titlebar-actions .dfv-detail-titlebar-cta-panel .dfv-detail-cta-button:hover{
    background:var(--dfv-cta-hover-bg) !important;
    color:var(--dfv-cta-hover-color) !important;
    border-color:var(--dfv-cta-hover-border) !important;
}
#dvo-website .dfv-detail-gallery .dfv-detail-cta-row-above-lease,
body #dvo-website .dfv-detail-gallery .dfv-detail-cta-row-above-lease,
#dvo-website .dfv-detail-leasecalc-cta-panel,
body #dvo-website .dfv-detail-leasecalc-cta-panel{
    display:none !important;
}
@media (max-width: 991px){
    #dvo-website .dfv-detail-titlebar-actions .dfv-detail-titlebar-cta-panel,
    body #dvo-website .dfv-detail-titlebar-actions .dfv-detail-titlebar-cta-panel{
        max-width:none !important;
    }
}
@media (max-width:520px){
    #dvo-website .dfv-detail-titlebar-actions .dfv-detail-titlebar-cta-panel,
    body #dvo-website .dfv-detail-titlebar-actions .dfv-detail-titlebar-cta-panel{
        grid-template-columns:1fr !important;
    }
}


/* DFV SB Occasions: titelbalk-volgorde fix
   Regel 1 rechts: verkoopprijs / leaseprijs / overzicht.
   Regel 2 rechts: wit CTA-blok met interesse/inruil. */
#dvo-website .dfv-detail-titlebar-actions,
body #dvo-website .dfv-detail-titlebar-actions{
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-end !important;
    gap:12px !important;
}
#dvo-website .dfv-detail-titlebar-actions .dfv-detail-titlebar-price-row,
body #dvo-website .dfv-detail-titlebar-actions .dfv-detail-titlebar-price-row{
    order:1 !important;
    width:100% !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:14px !important;
    flex-wrap:nowrap !important;
    margin:0 !important;
}
#dvo-website .dfv-detail-titlebar-actions .dfv-detail-titlebar-cta-panel,
body #dvo-website .dfv-detail-titlebar-actions .dfv-detail-titlebar-cta-panel{
    order:2 !important;
    width:100% !important;
    max-width:520px !important;
    margin:0 !important;
    align-self:flex-end !important;
}
@media (max-width:991px){
    #dvo-website .dfv-detail-titlebar-actions,
    body #dvo-website .dfv-detail-titlebar-actions{
        align-items:stretch !important;
        width:100% !important;
    }
    #dvo-website .dfv-detail-titlebar-actions .dfv-detail-titlebar-price-row,
    body #dvo-website .dfv-detail-titlebar-actions .dfv-detail-titlebar-price-row{
        justify-content:flex-start !important;
        flex-wrap:wrap !important;
    }
    #dvo-website .dfv-detail-titlebar-actions .dfv-detail-titlebar-cta-panel,
    body #dvo-website .dfv-detail-titlebar-actions .dfv-detail-titlebar-cta-panel{
        max-width:none !important;
        align-self:stretch !important;
    }
}


/* === DFV FIX 2026-06-30: titlebar actions exact even breed als leasecalculator ===
   De leasecalculator staat in de rechterkolom van de gallery. Deze titelbalk krijgt
   dezelfde 2-koloms verdeling, zodat .dfv-detail-titlebar-actions exact dezelfde
   breedte/startpositie heeft als .dfv-detail-inline-leasecalc. */
@media (min-width: 992px){
    #dvo-website .dfv-detail-titlebar,
    body #dvo-website .dfv-detail-titlebar{
        display:grid !important;
        grid-template-columns:minmax(0,66.66%) minmax(300px,33.33%) !important;
        gap:14px !important;
        align-items:start !important;
        justify-content:stretch !important;
        width:100% !important;
        max-width:100% !important;
        box-sizing:border-box !important;
    }

    #dvo-website .dfv-detail-titlebar-text,
    body #dvo-website .dfv-detail-titlebar-text{
        grid-column:1 / 2 !important;
        min-width:0 !important;
        width:100% !important;
        max-width:100% !important;
    }

    #dvo-website .dfv-detail-titlebar-actions,
    body #dvo-website .dfv-detail-titlebar-actions{
        grid-column:2 / 3 !important;
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
        margin:0 !important;
        display:flex !important;
        flex-direction:column !important;
        align-items:stretch !important;
        justify-content:flex-start !important;
        gap:12px !important;
        box-sizing:border-box !important;
    }

    #dvo-website .dfv-detail-titlebar-actions .dfv-detail-titlebar-price-row,
    body #dvo-website .dfv-detail-titlebar-actions .dfv-detail-titlebar-price-row{
        order:1 !important;
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
        display:flex !important;
        align-items:center !important;
        justify-content:flex-end !important;
        gap:14px !important;
        flex-wrap:nowrap !important;
        margin:0 !important;
        box-sizing:border-box !important;
    }

    #dvo-website .dfv-detail-titlebar-actions .dfv-detail-titlebar-cta-panel,
    body #dvo-website .dfv-detail-titlebar-actions .dfv-detail-titlebar-cta-panel{
        order:2 !important;
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
        align-self:stretch !important;
        margin:0 !important;
        box-sizing:border-box !important;
    }
}


/* === DFV 2026-06-30: admin-styling wit buttonblok + duidelijker calculator === */
#dvo-website .dfv-detail-titlebar-actions .dfv-detail-titlebar-cta-panel,
body #dvo-website .dfv-detail-titlebar-actions .dfv-detail-titlebar-cta-panel{
    background:var(--dfv-cta-panel-bg,#ffffff) !important;
    border-radius:var(--dfv-cta-panel-radius,18px) !important;
}

#dvo-website .dfv-detail-inline-leasecalc label,
#dvo-website .dfv-detail-inline-leasecalc label span,
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-term-box > span,
#dvo-website .dfv-detail-inline-leasecalc .df-readonly > span,
#dvo-website .dfv-detail-inline-leasecalc .df-highlight > span,
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-form-grid label,
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-form-grid label span,
body #dvo-website .dfv-detail-inline-leasecalc label,
body #dvo-website .dfv-detail-inline-leasecalc label span,
body #dvo-website .dfv-detail-inline-leasecalc .dfv-inline-term-box > span,
body #dvo-website .dfv-detail-inline-leasecalc .df-readonly > span,
body #dvo-website .dfv-detail-inline-leasecalc .df-highlight > span,
body #dvo-website .dfv-detail-inline-leasecalc .dfv-inline-form-grid label,
body #dvo-website .dfv-detail-inline-leasecalc .dfv-inline-form-grid label span{
    font-weight:700 !important;
}

#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-monthly-box,
body #dvo-website .dfv-detail-inline-leasecalc .dfv-inline-monthly-box{
    padding:16px 18px !important;
    min-height:74px !important;
    background:var(--dfv-inline-monthly-bg,#e1d51f) !important;
    color:var(--dfv-inline-monthly-color,#111827) !important;
    border:2px solid var(--dfv-inline-monthly-bg,#e1d51f) !important;
    border-radius:18px !important;
    box-shadow:0 12px 28px rgba(0,0,0,.10) !important;
}
#dvo-website .dfv-detail-inline-leasecalc .dfv-inline-monthly-box > span,
body #dvo-website .dfv-detail-inline-leasecalc .dfv-inline-monthly-box > span{
    display:block !important;
    margin-bottom:4px !important;
    font-size:.82rem !important;
    font-weight:800 !important;
    letter-spacing:.02em !important;
}
#dvo-website .dfv-detail-inline-leasecalc .df-monthly,
#dvo-website .dfv-detail-inline-leasecalc .df-highlight .df-output.df-monthly,
body #dvo-website .dfv-detail-inline-leasecalc .df-monthly,
body #dvo-website .dfv-detail-inline-leasecalc .df-highlight .df-output.df-monthly{
    display:block !important;
    padding:4px 0 0 0 !important;
    font-size:max(var(--dfv-inline-month-font-size,1rem),1.55rem) !important;
    line-height:1.05 !important;
    font-weight:900 !important;
}

/* === DFV 2026-06-30: onderste contactblokken juiste volgorde === */
#dvo-website .dfv-bottom-contact-combo,
body #dvo-website .dfv-bottom-contact-combo,
.dfv-bottom-contact-combo{
    display:grid !important;
    grid-template-columns:minmax(0, 1fr) minmax(280px, 430px) !important;
    gap:18px !important;
    align-items:stretch !important;
    width:100% !important;
}

#dvo-website .dfv-bottom-contact-combo .dfv-bottom-contact-cta,
body #dvo-website .dfv-bottom-contact-combo .dfv-bottom-contact-cta,
.dfv-bottom-contact-combo .dfv-bottom-contact-cta{
    grid-column:1 / 2 !important;
    grid-row:1 !important;
    order:1 !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
}

#dvo-website .dfv-bottom-contact-combo .dvo-contact-infobox,
body #dvo-website .dfv-bottom-contact-combo .dvo-contact-infobox,
.dfv-bottom-contact-combo .dvo-contact-infobox{
    grid-column:2 / 3 !important;
    grid-row:1 !important;
    order:2 !important;
    width:100% !important;
    max-width:100% !important;
    height:100% !important;
    margin:0 !important;
    box-sizing:border-box !important;
}

@media (max-width:991px){
    #dvo-website .dfv-bottom-contact-combo,
    body #dvo-website .dfv-bottom-contact-combo,
    .dfv-bottom-contact-combo{
        grid-template-columns:1fr !important;
    }

    #dvo-website .dfv-bottom-contact-combo .dfv-bottom-contact-cta,
    body #dvo-website .dfv-bottom-contact-combo .dfv-bottom-contact-cta,
    .dfv-bottom-contact-combo .dfv-bottom-contact-cta,
    #dvo-website .dfv-bottom-contact-combo .dvo-contact-infobox,
    body #dvo-website .dfv-bottom-contact-combo .dvo-contact-infobox,
    .dfv-bottom-contact-combo .dvo-contact-infobox{
        grid-column:1 / 2 !important;
        grid-row:auto !important;
    }
}


/* DFV lease aanvraag: verplichte lege velden duidelijk rood markeren */
#dvo-website .dfv-lease-application-form input.dfv-field-error,
#dvo-website .dfv-lease-application-form select.dfv-field-error,
#dvo-website .dfv-lease-application-form textarea.dfv-field-error,
#leasecalculatorblok .dfv-lease-application-form input.dfv-field-error,
#leasecalculatorblok .dfv-lease-application-form select.dfv-field-error,
#leasecalculatorblok .dfv-lease-application-form textarea.dfv-field-error,
#dvo-website .dfv-detail-inline-leasecalc input.dfv-field-error,
#dvo-website .dfv-detail-inline-leasecalc select.dfv-field-error,
#dvo-website .dfv-detail-inline-leasecalc textarea.dfv-field-error{
  border-color:#dc2626 !important;
  border-width:2px !important;
  box-shadow:0 0 0 3px rgba(220,38,38,.14) !important;
  background:#fffafa !important;
}
#dvo-website .dfv-field-error-wrap,
#leasecalculatorblok .dfv-field-error-wrap{
  color:#b42318 !important;
}
#dvo-website .dfv-field-error:focus,
#leasecalculatorblok .dfv-field-error:focus{
  border-color:#b42318 !important;
  box-shadow:0 0 0 4px rgba(220,38,38,.18) !important;
  outline:none !important;
}


/* === DFV tabs styling fix: admin kleuren + geen lege ruimte === */
#dvo-website #exTab3 .tab-content,
#dvo-website #exTab3 .tab-pane,
#dvo-website #exTab3 .tab-pane > div,
#dvo-website #exTab3 .tab-pane .bg-white{
  height:auto !important;
  min-height:0 !important;
  margin-bottom:0 !important;
}
#dvo-website #exTab3 .tab-pane:not(.active),
#dvo-website #exTab3 .tab-pane.fade:not(.show){
  display:none !important;
}
#dvo-website #exTab3 .tab-pane.active,
#dvo-website #exTab3 .tab-pane.fade.show{
  display:block !important;
}
#dvo-website #exTab3 .tab-content .text-black,
#dvo-website #exTab3 .tab-content .dvo-detail,
#dvo-website #exTab3 .tab-content p,
#dvo-website #exTab3 .tab-content div,
#dvo-website #exTab3 .tab-content span,
#dvo-website #exTab3 .tab-content h3,
#dvo-website #exTab3 .tab-content h4,
#dvo-website #exTab3 .tab-content a{
  color:inherit !important;
}

/* === DFV tabs: meer specificaties + mobiel accordion alleen mobiel === */
#dvo-website #exTab3 .dfv-more-specs-toggle,
body #dvo-website #exTab3 .dfv-more-specs-toggle{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:8px !important;
  margin:0 0 12px 0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  color:inherit !important;
  font:inherit !important;
  font-weight:700 !important;
  cursor:pointer !important;
  text-align:left !important;
}
#dvo-website #exTab3 .dfv-more-specs-toggle .dfv-spec-less-text,
body #dvo-website #exTab3 .dfv-more-specs-toggle .dfv-spec-less-text{
  display:none !important;
}
#dvo-website #exTab3 .dfv-more-specs-toggle[aria-expanded="true"] .dfv-spec-more-text,
body #dvo-website #exTab3 .dfv-more-specs-toggle[aria-expanded="true"] .dfv-spec-more-text{
  display:none !important;
}
#dvo-website #exTab3 .dfv-more-specs-toggle[aria-expanded="true"] .dfv-spec-less-text,
body #dvo-website #exTab3 .dfv-more-specs-toggle[aria-expanded="true"] .dfv-spec-less-text{
  display:inline !important;
}
#dvo-website #exTab3 .dfv-more-specs-toggle i,
body #dvo-website #exTab3 .dfv-more-specs-toggle i{
  transition:transform .2s ease !important;
}
#dvo-website #exTab3 .dfv-more-specs-toggle[aria-expanded="true"] i,
body #dvo-website #exTab3 .dfv-more-specs-toggle[aria-expanded="true"] i{
  transform:rotate(180deg) !important;
}
#dvo-website #exTab3 .dfv-more-specs-collapse,
body #dvo-website #exTab3 .dfv-more-specs-collapse{
  height:auto;
}
@media (min-width: 992px){
  #dvo-website #mobielspec,
  body #dvo-website #mobielspec,
  html body #dvo-website #mobielspec{
    display:none !important;
    visibility:hidden !important;
    height:0 !important;
    min-height:0 !important;
    max-height:0 !important;
    overflow:hidden !important;
    margin:0 !important;
    padding:0 !important;
  }
  #dvo-website #exTab3,
  body #dvo-website #exTab3,
  html body #dvo-website #exTab3{
    display:block !important;
    height:auto !important;
    min-height:0 !important;
    margin-bottom:0 !important;
  }
}
@media (max-width: 991px){
  #dvo-website #exTab3,
  body #dvo-website #exTab3,
  html body #dvo-website #exTab3{
    display:none !important;
    height:0 !important;
    overflow:hidden !important;
    margin:0 !important;
    padding:0 !important;
  }
  #dvo-website #mobielspec,
  body #dvo-website #mobielspec,
  html body #dvo-website #mobielspec{
    display:block !important;
    visibility:visible !important;
    height:auto !important;
    max-height:none !important;
    overflow:visible !important;
  }
}

/* === DFV tabs herstel 2026-06-30: geen dubbele desktopcontent + mobiele accordion modern === */
#dvo-website #exTab3,
body #dvo-website #exTab3{
  height:auto !important;
  min-height:0 !important;
  margin-bottom:0 !important;
}
#dvo-website #exTab3 .tab-content,
body #dvo-website #exTab3 .tab-content{
  position:relative !important;
  height:auto !important;
  min-height:0 !important;
  margin-bottom:0 !important;
  overflow:visible !important;
}
#dvo-website #exTab3 .tab-content > .tab-pane,
body #dvo-website #exTab3 .tab-content > .tab-pane{
  height:auto !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  opacity:1 !important;
}
#dvo-website #exTab3 .tab-content > .tab-pane:not(.active),
#dvo-website #exTab3 .tab-content > .tab-pane.fade:not(.show),
body #dvo-website #exTab3 .tab-content > .tab-pane:not(.active),
body #dvo-website #exTab3 .tab-content > .tab-pane.fade:not(.show){
  display:none !important;
  height:0 !important;
  min-height:0 !important;
  max-height:0 !important;
  overflow:hidden !important;
  visibility:hidden !important;
  margin:0 !important;
  padding:0 !important;
}
#dvo-website #exTab3 .tab-content > .tab-pane.active,
#dvo-website #exTab3 .tab-content > .tab-pane.active.show,
body #dvo-website #exTab3 .tab-content > .tab-pane.active,
body #dvo-website #exTab3 .tab-content > .tab-pane.active.show{
  display:block !important;
  height:auto !important;
  max-height:none !important;
  overflow:visible !important;
  visibility:visible !important;
}
#dvo-website #exTab3 .dfv-more-specs-toggle,
body #dvo-website #exTab3 .dfv-more-specs-toggle{
  margin:12px 0 0 0 !important;
}
@media (min-width: 992px){
  #dvo-website #mobielspec,
  body #dvo-website #mobielspec,
  html body #dvo-website #mobielspec,
  #dvo-website .dfv-mobile-tabs,
  body #dvo-website .dfv-mobile-tabs{
    display:none !important;
    visibility:hidden !important;
    height:0 !important;
    min-height:0 !important;
    max-height:0 !important;
    overflow:hidden !important;
    margin:0 !important;
    padding:0 !important;
  }
}
@media (max-width: 991px){
  #dvo-website #exTab3,
  body #dvo-website #exTab3{
    display:none !important;
    height:0 !important;
    min-height:0 !important;
    max-height:0 !important;
    overflow:hidden !important;
    margin:0 !important;
    padding:0 !important;
  }
  #dvo-website #mobielspec,
  body #dvo-website #mobielspec{
    display:block !important;
    visibility:visible !important;
    height:auto !important;
    max-height:none !important;
    overflow:visible !important;
    padding:16px 0 !important;
    margin:0 !important;
    background:transparent !important;
  }
  #dvo-website #mobielspec > .col-md-12,
  body #dvo-website #mobielspec > .col-md-12{
    padding:0 !important;
    background:transparent !important;
    color:inherit !important;
  }
  #dvo-website #mobielspec .accordion,
  body #dvo-website #mobielspec .accordion{
    display:grid !important;
    gap:12px !important;
    background:transparent !important;
  }
  #dvo-website #mobielspec .accordion-item,
  body #dvo-website #mobielspec .accordion-item{
    border:0 !important;
    border-radius:16px !important;
    overflow:hidden !important;
    background:#ffffff !important;
    box-shadow:0 10px 26px rgba(0,0,0,.14) !important;
  }
  #dvo-website #mobielspec .accordion-button,
  body #dvo-website #mobielspec .accordion-button{
    min-height:64px !important;
    padding:18px 20px !important;
    border-radius:16px !important;
    background:#ffffff !important;
    color:#111111 !important;
    font-weight:800 !important;
    font-size:1.05rem !important;
    box-shadow:none !important;
  }
  #dvo-website #mobielspec .accordion-button:not(.collapsed),
  body #dvo-website #mobielspec .accordion-button:not(.collapsed){
    border-radius:16px 16px 0 0 !important;
    background:#ffffff !important;
    color:#d70000 !important;
  }
  #dvo-website #mobielspec .accordion-button:after,
  body #dvo-website #mobielspec .accordion-button:after{
    width:18px !important;
    height:18px !important;
    background-size:18px 18px !important;
  }
  #dvo-website #mobielspec .accordion-body,
  body #dvo-website #mobielspec .accordion-body{
    padding:18px !important;
    background:#ffffff !important;
    color:#111111 !important;
  }
}

/* === DFV fix: Minder specificaties toont pijl omhoog === */
#dvo-website #exTab3 .dfv-more-specs-toggle .dfv-spec-arrow-up,
body #dvo-website #exTab3 .dfv-more-specs-toggle .dfv-spec-arrow-up{
  display:none !important;
}
#dvo-website #exTab3 .dfv-more-specs-toggle .dfv-spec-arrow-down,
body #dvo-website #exTab3 .dfv-more-specs-toggle .dfv-spec-arrow-down{
  display:inline-flex !important;
  transform:none !important;
}
#dvo-website #exTab3 .dfv-more-specs-toggle[aria-expanded="true"] .dfv-spec-arrow-down,
body #dvo-website #exTab3 .dfv-more-specs-toggle[aria-expanded="true"] .dfv-spec-arrow-down{
  display:none !important;
}
#dvo-website #exTab3 .dfv-more-specs-toggle[aria-expanded="true"] .dfv-spec-arrow-up,
body #dvo-website #exTab3 .dfv-more-specs-toggle[aria-expanded="true"] .dfv-spec-arrow-up{
  display:inline-flex !important;
  transform:none !important;
}

/* === DFV 2026-07: mobiele detailvolgorde titel/prijzen/CTA fallback === */
#dvo-website .dfv-detail-titlebar-cta-panel-mobile,
body #dvo-website .dfv-detail-titlebar-cta-panel-mobile{display:none!important;}
@media (max-width:991px){
  #dvo-website .dfv-detail-titlebar,body #dvo-website .dfv-detail-titlebar{display:flex!important;flex-direction:column!important;width:100%!important;gap:14px!important;align-items:stretch!important;padding:0!important;margin:0 0 18px 0!important;}
  #dvo-website .dfv-detail-titlebar-actions,#dvo-website .dfv-detail-titlebar-price-row,body #dvo-website .dfv-detail-titlebar-actions,body #dvo-website .dfv-detail-titlebar-price-row{display:contents!important;}
  #dvo-website .dfv-detail-titlebar-overview,body #dvo-website .dfv-detail-titlebar-overview{order:1!important;width:100%!important;max-width:100%!important;min-height:58px!important;display:flex!important;align-items:center!important;justify-content:center!important;margin:0!important;box-sizing:border-box!important;font-size:1.05rem!important;font-weight:800!important;}
  #dvo-website .dfv-detail-titlebar-text,body #dvo-website .dfv-detail-titlebar-text{order:2!important;width:100%!important;max-width:100%!important;text-align:left!important;margin:0!important;padding:0!important;}
  #dvo-website .dfv-detail-titlebar-text h2,body #dvo-website .dfv-detail-titlebar-text h2{text-align:left!important;margin-left:0!important;margin-right:0!important;}
  #dvo-website .dfv-detail-titlebar-price,body #dvo-website .dfv-detail-titlebar-price{order:3!important;width:100%!important;max-width:100%!important;display:block!important;text-align:left!important;justify-content:flex-start!important;margin:0!important;padding:0!important;white-space:normal!important;line-height:1.2!important;}
  #dvo-website .dfv-detail-titlebar-actions>.dfv-detail-titlebar-cta-panel:not(.dfv-detail-titlebar-cta-panel-mobile),body #dvo-website .dfv-detail-titlebar-actions>.dfv-detail-titlebar-cta-panel:not(.dfv-detail-titlebar-cta-panel-mobile){display:none!important;}
  #dvo-website .dfv-detail-media-panel,body #dvo-website .dfv-detail-media-panel{display:flex!important;flex-direction:column!important;gap:14px!important;width:100%!important;}
  #dvo-website .dfv-detail-main-column,body #dvo-website .dfv-detail-main-column{order:1!important;width:100%!important;}
  #dvo-website .dfv-detail-side,body #dvo-website .dfv-detail-side{display:contents!important;}
  #dvo-website .dfv-detail-thumbs-grid,body #dvo-website .dfv-detail-thumbs-grid{order:2!important;width:100%!important;margin-top:0!important;}
  #dvo-website .dfv-detail-titlebar-cta-panel-mobile,body #dvo-website .dfv-detail-titlebar-cta-panel-mobile{order:3!important;display:flex!important;flex-direction:column!important;gap:12px!important;width:100%!important;max-width:100%!important;margin:0!important;padding:14px!important;box-sizing:border-box!important;}
  #dvo-website .dfv-detail-titlebar-cta-panel-mobile .dfv-detail-cta-button,body #dvo-website .dfv-detail-titlebar-cta-panel-mobile .dfv-detail-cta-button{width:100%!important;min-height:58px!important;display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;}
  #dvo-website .dfv-detail-inline-leasecalc,body #dvo-website .dfv-detail-inline-leasecalc{margin-top:14px!important;}
}

/* Moderne info-iconen bij leasecalculator labels */
.dfv-calc-label-text {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  width: auto !important;
  position: relative !important;
}
.dfv-calc-info {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 17px !important;
  height: 17px !important;
  min-width: 17px !important;
  border-radius: 999px !important;
  border: 1px solid #d0d5dd !important;
  background: #f8fafc !important;
  color: #475467 !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  cursor: help !important;
  font-style: normal !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  z-index: 5 !important;
}
.dfv-calc-info:hover,
.dfv-calc-info:focus {
  background: #111827 !important;
  border-color: #111827 !important;
  color: #ffffff !important;
  outline: none !important;
}
.dfv-calc-info::after {
  content: attr(data-tooltip) !important;
  position: absolute !important;
  left: 50% !important;
  bottom: calc(100% + 9px) !important;
  transform: translateX(-50%) translateY(4px) !important;
  width: max-content !important;
  max-width: 245px !important;
  padding: 9px 11px !important;
  border-radius: 10px !important;
  background: #111827 !important;
  color: #ffffff !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
  text-align: left !important;
  white-space: normal !important;
  box-shadow: 0 12px 30px rgba(15, 23, 42, .18) !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transition: opacity .16s ease, transform .16s ease, visibility .16s ease !important;
}
.dfv-calc-info::before {
  content: '' !important;
  position: absolute !important;
  left: 50% !important;
  bottom: calc(100% + 4px) !important;
  transform: translateX(-50%) !important;
  border-width: 5px 5px 0 5px !important;
  border-style: solid !important;
  border-color: #111827 transparent transparent transparent !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transition: opacity .16s ease, visibility .16s ease !important;
}
.dfv-calc-info:hover::after,
.dfv-calc-info:focus::after,
.dfv-calc-info:hover::before,
.dfv-calc-info:focus::before {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateX(-50%) translateY(0) !important;
}
.dfv-calc-info:hover::before,
.dfv-calc-info:focus::before {
  transform: translateX(-50%) !important;
}
@media (max-width: 767px) {
  .dfv-calc-info::after {
    left: auto !important;
    right: -12px !important;
    transform: translateY(4px) !important;
    max-width: min(245px, 78vw) !important;
  }
  .dfv-calc-info:hover::after,
  .dfv-calc-info:focus::after {
    transform: translateY(0) !important;
  }
}
