/* VANDENBOORN AUTOMOTIVE - Brons & Bot
   Alle waarden komen uit de actieve Novamira-ontwerprichting. */

:root{
  --vdb-bg:#F4F1EA;
  --vdb-surface:#FFFFFF;
  --vdb-sunk:#EAE5DA;
  --vdb-ink:#000000;
  --vdb-muted:#6B6259;
  --vdb-line:#DCD5C7;
  --vdb-accent:#8E612B;
  --vdb-accent-deep:#6B4720;
  --vdb-xs:8px; --vdb-sm:16px; --vdb-md:32px; --vdb-lg:64px; --vdb-xl:128px;
  --vdb-r-sm:2px; --vdb-r-md:4px;
  --vdb-gutter:max(24px, calc((100vw - 1320px) / 2));
}

body{background:var(--vdb-bg);color:var(--vdb-ink);font-family:"Manrope",sans-serif;font-weight:400;line-height:1.65;-webkit-font-smoothing:antialiased;}

h1,h2,h3,h4,h5,h6,.vdb-display{font-family:"Archivo",sans-serif;color:var(--vdb-ink);margin:0;}
h1,.vdb-display{font-size:clamp(38px,5.2vw,74px);line-height:1.04;letter-spacing:-0.01em;font-weight:500;text-transform:uppercase;}
h2{font-size:clamp(29px,3.3vw,45px);line-height:1.1;letter-spacing:-0.01em;font-weight:500;}
h3{font-size:20px;line-height:1.15;font-weight:600;}
p{margin:0;max-width:68ch;}

/* Labels. Gerantsoeneerd: hoogstens een per drie secties. */
.vdb-eyebrow{font-family:"Manrope",sans-serif;font-size:12px;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;color:var(--vdb-accent);margin-bottom:var(--vdb-md);}
.vdb-lede{font-size:clamp(18px,1.5vw,21px);line-height:1.55;color:var(--vdb-ink);max-width:56ch;}
.vdb-muted{color:var(--vdb-muted);}

/* Knoppen. Zwart vlak is de enige primaire vorm. Nooit brons als vlak. */
.vdb-btn-ghost .elementor-button{background-color:transparent!important;color:var(--vdb-ink)!important;border:1px solid var(--vdb-ink)!important;}
.vdb-btn-ghost .elementor-button:hover{background-color:var(--vdb-ink)!important;color:#FFFFFF!important;}
.vdb-on-dark .vdb-btn-ghost .elementor-button{color:#FFFFFF!important;border-color:#FFFFFF!important;}
.vdb-on-dark .vdb-btn-ghost .elementor-button:hover{background-color:#FFFFFF!important;color:var(--vdb-ink)!important;}
.vdb-on-dark,.vdb-on-dark h1,.vdb-on-dark h2,.vdb-on-dark h3,.vdb-on-dark p{color:#FFFFFF;}
.vdb-on-dark .vdb-muted{color:#CFC8BC;}

/* Randbleed naar de viewport. */
.vdb-bleed-right{margin-right:calc(50% - 50vw);}
.vdb-bleed-left{margin-left:calc(50% - 50vw);}

/* Hero: tekstkolom in het grid, beeld bleedt naar de rechterrand. */
.vdb-hero{min-height:min(86vh,860px);}
.vdb-hero .vdb-hero__text{padding-left:var(--vdb-gutter);padding-right:clamp(32px,4vw,80px);justify-content:center;}
.vdb-hero .vdb-hero__media{background-size:cover;background-position:center;min-height:min(86vh,860px);}
@media (max-width:900px){
  .vdb-hero{min-height:0;}
  .vdb-hero .vdb-hero__media{order:-1;min-height:52vh;}
  .vdb-hero .vdb-hero__text{padding:var(--vdb-lg) 24px;}
}

/* Opdrachtgeversregel: haarlijnen, geen kaarten. */
.vdb-clients{border-top:1px solid var(--vdb-line);border-bottom:1px solid var(--vdb-line);}
.vdb-clients .vdb-clients__item{font-family:"Archivo",sans-serif;font-size:14px;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:var(--vdb-muted);padding:var(--vdb-md) 0;flex:1 1 0;text-align:center;border-left:1px solid var(--vdb-line);}
.vdb-clients .vdb-clients__item:first-child{border-left:0;}
@media (max-width:900px){.vdb-clients .vdb-clients__item{flex:1 1 50%;text-align:left;border-left:0;padding:var(--vdb-sm) 0;border-top:1px solid var(--vdb-line);}}

/* Dienstenlijst: haarlijn-gescheiden rijen, geen iconenkaarten. */
.vdb-service{border-top:1px solid var(--vdb-line);padding-top:var(--vdb-md);}
.vdb-service h3{margin-bottom:var(--vdb-xs);}
.vdb-service p{font-size:16px;color:var(--vdb-muted);max-width:44ch;}

/* Voertuigkaart. Vlak wit op de grond, geen rand, geen schaduw. */
.vdb-card{background:var(--vdb-surface);border-radius:var(--vdb-r-md);overflow:hidden;position:relative;transition:transform .25s ease;}
.vdb-card:hover{transform:translateY(-2px);}
.vdb-card__media{aspect-ratio:3/2;overflow:hidden;background:var(--vdb-sunk);}
.vdb-card__media img{width:100%;height:100%;object-fit:cover;display:block;}
.vdb-card__body{padding:var(--vdb-md) var(--vdb-md) var(--vdb-md);}
.vdb-card__title{font-family:"Archivo",sans-serif;font-size:20px;font-weight:600;line-height:1.15;}
.vdb-card__sub{font-size:15px;color:var(--vdb-muted);margin-top:2px;}
.vdb-card__meta{display:flex;gap:var(--vdb-sm);flex-wrap:wrap;border-top:1px solid var(--vdb-line);border-bottom:1px solid var(--vdb-line);margin-top:var(--vdb-md);padding:12px 0;font-size:13px;color:var(--vdb-muted);letter-spacing:0.02em;}
.vdb-card__price{font-family:"Archivo",sans-serif;font-size:22px;font-weight:600;color:var(--vdb-ink);margin-top:var(--vdb-md);}
.vdb-card__badge{position:absolute;top:var(--vdb-sm);left:var(--vdb-sm);background:var(--vdb-ink);color:#FFFFFF;font-family:"Archivo",sans-serif;font-size:11px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;padding:6px 12px;border-radius:var(--vdb-r-sm);z-index:2;}
.vdb-card__link{position:absolute;inset:0;z-index:3;text-indent:-9999px;overflow:hidden;}

/* Statistiekregel: grote cijfers, geen kaarten. */
.vdb-stat__value{font-family:"Archivo",sans-serif;font-size:clamp(40px,4.4vw,64px);font-weight:500;line-height:1;letter-spacing:-0.02em;}
.vdb-stat__label{font-size:14px;color:var(--vdb-muted);margin-top:var(--vdb-sm);max-width:26ch;}

/* Woordmerk */
.vdb-wordmark{font-family:'Archivo',sans-serif;font-size:19px;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;color:var(--vdb-ink);text-decoration:none;line-height:1;}
.vdb-wordmark span{color:var(--vdb-accent);}

/* Footer */
.vdb-footer{background:var(--vdb-ink);color:#FFFFFF;}
.vdb-footer h3{color:#FFFFFF;font-size:13px;letter-spacing:0.14em;text-transform:uppercase;font-weight:600;}
.vdb-footer p,.vdb-footer a{color:#CFC8BC;font-size:15px;text-decoration:none;}
.vdb-footer a:hover{color:#FFFFFF;}
.vdb-footer .elementor-nav-menu .elementor-item{color:#CFC8BC;font-size:15px;padding:4px 0;}
.vdb-footer .elementor-nav-menu .elementor-item:hover{color:#FFFFFF;}
.vdb-footer-base{border-top:1px solid rgba(255,255,255,0.16);}

/* Ontbrekende bedrijfsgegevens zichtbaar markeren zolang ze niet zijn aangeleverd. */
.vdb-todo{background:var(--vdb-sunk);color:var(--vdb-accent-deep);font-size:12px;font-weight:600;letter-spacing:0.06em;padding:2px 6px;border-radius:var(--vdb-r-sm);}
.vdb-footer .vdb-todo{background:rgba(255,255,255,0.12);color:#E4D9C6;}

/* Motion staat op 0.25: alleen een korte opacity-fade. */
@media (prefers-reduced-motion:reduce){.vdb-card{transition:none;}}

/* Voertuigraster: drie kolommen, twee op 1024px, een op 640px. */
.vdb-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--vdb-md);}
@media (max-width:1024px){.vdb-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:640px){.vdb-grid{grid-template-columns:1fr;}}
.vdb-grid__invite{background:var(--vdb-sunk);border-radius:var(--vdb-r-md);padding:var(--vdb-md);display:flex;flex-direction:column;justify-content:flex-end;}
.vdb-grid__invite h3{margin-bottom:var(--vdb-xs);}
.vdb-grid__invite p{font-size:15px;color:var(--vdb-muted);max-width:34ch;}
.vdb-invite__link{display:inline-block;margin-top:var(--vdb-md);font-family:"Archivo",sans-serif;font-size:13px;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:var(--vdb-ink);text-decoration:none;border-bottom:1px solid var(--vdb-accent);padding-bottom:4px;align-self:flex-start;}
.vdb-invite__link:hover{color:var(--vdb-accent);}

/* Menu-overlay: rechterkolom rechts uitgelijnd */
.vdb-menu__aside,.vdb-menu__aside .elementor-widget-container,.vdb-menu__aside .elementor-heading-title,.vdb-menu__aside p{text-align:right}
.vdb-menu__aside .elementor-widget{align-self:flex-end;width:100%}

/* Statuskleuren */
.vdb-vcard__status .jet-listing-dynamic-field__content,.vdb-car-status,.vdb-car-card__badge{background:#8E612B;color:#fff!important}
.vdb-status--verkocht .vdb-vcard__status .jet-listing-dynamic-field__content,.vdb-car-status.vdb-status--verkocht,.vdb-car-card__badge.vdb-status--verkocht{background:#B3261E!important}
.vdb-status--gereserveerd .vdb-vcard__status .jet-listing-dynamic-field__content,.vdb-car-status.vdb-status--gereserveerd,.vdb-car-card__badge.vdb-status--gereserveerd{background:#6B6B6B!important}
.vdb-status--wordt-verwacht .vdb-vcard__status .jet-listing-dynamic-field__content,.vdb-car-status.vdb-status--wordt-verwacht,.vdb-car-card__badge.vdb-status--wordt-verwacht{background:#3D3D3D!important;border:1px solid rgba(255,255,255,.35)}
.vdb-status--nieuw-binnen .vdb-vcard__status .jet-listing-dynamic-field__content,.vdb-car-status.vdb-status--nieuw-binnen,.vdb-car-card__badge.vdb-status--nieuw-binnen{background:#B8834A!important}
.vdb-status--in-prijs-verlaagd .vdb-vcard__status .jet-listing-dynamic-field__content,.vdb-car-status.vdb-status--in-prijs-verlaagd,.vdb-car-card__badge.vdb-status--in-prijs-verlaagd{background:#0F6B3F!important}
.vdb-status--consignatieverkoop .vdb-vcard__status .jet-listing-dynamic-field__content,.vdb-car-status.vdb-status--consignatieverkoop,.vdb-car-card__badge.vdb-status--consignatieverkoop{background:#5A3E1B!important}
.vdb-status--verkocht .vdb-vcard__media img{filter:grayscale(1) brightness(.7)}
