/* Sitebrede regels die Elementor v4 niet per element kan. Bron: _AI/werk/elementor/plugin/site.css */
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
[id]{scroll-margin-top:96px}
body{background:var(--creme);color:var(--koffie);font-family:var(--font-body),system-ui,sans-serif}
::selection{background:var(--poeder);color:var(--wijn)}
:is(.cv-sectie--wijn,.cv-sectie--koffie,.cv-cta__kaart,.cv-welniet__kaart--wel,.cv-prijs--uitgelicht,.cv-nav,.cv-footer) ::selection{background:var(--creme);color:var(--wijn)}
/* Accent in een kop op donker: het woord tussen <span> wordt poeder */
.elementor :is(.cv-sectie--wijn,.cv-sectie--koffie,.cv-cta__kaart,.cv-welniet__kaart--wel,.cv-prijs--uitgelicht,.cv-nav,.cv-footer) :is(h1,h2) span{color:var(--poeder)}
/* Links in lopende tekst (alinea's en lijsten; knoppen en menu niet) */
.elementor :is(p,span>ul) a{color:inherit;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:3px}
/* Focus: koffie op licht, poeder op donker */
.elementor :focus-visible{outline:2px solid var(--koffie);outline-offset:3px}
.elementor :is(.cv-sectie--wijn,.cv-sectie--koffie,.cv-cta__kaart,.cv-welniet__kaart--wel,.cv-prijs--uitgelicht,.cv-nav,.cv-footer) :focus-visible{outline-color:var(--poeder)}
/* Lijsten in een e-paragraph (tag span) */
.elementor span>ul{margin:0;padding-left:20px;display:grid;gap:6px}
/* Logostrook: één rij die doorloopt, stopt bij hover/focus en bij minder beweging */
.elementor .cv-logos--loop{width:max-content;animation:cv-logolus 45s linear infinite;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.elementor .cv-logos--loop:hover,.elementor .cv-logos--loop:focus-within{animation-play-state:paused}
@keyframes cv-logolus{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.elementor .cv-logos--loop{animation:none;width:auto;-webkit-mask-image:none;mask-image:none;justify-content:center}.elementor .cv-logos--loop .cv-logos__rij{flex-wrap:wrap;justify-content:center;padding:0 var(--space-4)}.elementor .cv-logos__rij--kopie{display:none}}
/* Uitklapvragen: plusje wordt een kruisje */
.elementor .cv-faq details .cv-faq__icoon{transition:transform .2s ease}
.elementor .cv-faq details[open] .cv-faq__icoon{transform:rotate(45deg)}
.elementor .cv-faq summary{list-style:none}
.elementor .cv-faq summary::-webkit-details-marker{display:none}
/* Projecten: lege velden en secties vallen weg */
.cv-geen-resultaat #cv-sectie-resultaat,.cv-geen-quote #cv-blok-quote,.cv-geen-galerij #cv-sectie-beeld,
.cv-geen-vraag2 #cv-vraag2,.cv-geen-intro #cv-deed-intro,.cv-geen-stap4 #cv-stap-4,.cv-geen-stap5 #cv-stap-5{display:none!important}
/* Projectgalerij ([cv_galerij]) */
.cvg{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,1fr);gap:var(--space-6);align-items:start;margin-top:var(--space-3)}
.cvg__desks,.cvg__mobs{display:grid;gap:var(--space-6)}
.cvg figure{margin:0}
.cvg img{display:block;width:100%;height:auto;border-radius:var(--radius-md);box-shadow:0 10px 24px var(--schaduw-kaart)}
.cvg__mob img{border-radius:22px;border:6px solid var(--toestel)}
.cvg:not(:has(.cvg__desks)){grid-template-columns:repeat(2,minmax(0,220px))}
@media (max-width:1024px){.cvg{grid-template-columns:minmax(0,1fr)}.cvg__mobs{grid-template-columns:1fr 1fr}}
/* Header: menuknop 44px en rechts van de knop Kennismaken onder 1024px */
.cv-nav .elementor-menu-toggle{width:44px;height:44px;border-color:var(--lijn-op-donker)!important}
@media (max-width:1024px){.elementor .cv-nav__menu{order:3;flex:0 0 auto}.elementor .cv-nav__acties{margin-left:auto}}
/* Gratis scan ([cv_scan]) */
.cvs{display:grid;gap:var(--space-6);max-width:760px;width:100%}
.cvs fieldset{border:0;margin:0;padding:0;min-width:0}
.cvs__deel{padding:var(--space-6)!important;background:var(--wit);border-radius:var(--radius-md);display:grid;gap:var(--space-4)}
.cvs__deelnaam{font-family:var(--font-display),Impact,sans-serif;text-transform:uppercase;font-size:22px;line-height:1.1;color:var(--wijn);padding:0;float:left;width:100%;margin-bottom:var(--space-2)}
.cvs__voortgang{display:block;font-family:var(--font-body),sans-serif;font-size:12px;letter-spacing:.14em;font-weight:700;color:var(--taupe-tekst);margin-bottom:4px}
.cvs__vraag legend{padding:0;margin:0 0 var(--space-2);font-weight:600;color:var(--koffie);font-size:16px;line-height:24px}
.cvs__optie{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid var(--lijn);border-radius:var(--radius-md);margin-top:6px;cursor:pointer;color:var(--koffie);font-size:15px;line-height:22px;min-height:44px}
.cvs__optie:has(input:checked){border-color:var(--wijn);background:var(--wijn-5)}
.cvs__optie input{accent-color:var(--wijn);margin-top:4px;flex:none}
.cvs__vraag--leeg legend{color:var(--wijn)}.cvs__vraag--leeg legend::after{content:" · kies een antwoord";font-weight:400}
.cvs__uitleg,.cvs__privacy{margin:0;font-size:15px;line-height:24px;color:var(--koffie)}.cvs__privacy{font-size:14px;color:var(--taupe-tekst)}
.cvs__privacy a{color:inherit;text-decoration:underline}
.cvs__veld{margin:0;display:grid;gap:var(--space-2)}
.cvs__veld label{font-weight:600;font-size:14px;color:var(--koffie)}.cvs__veld small{font-weight:400}
.cvs__veld input{font:400 16px/24px var(--font-body),sans-serif;color:var(--koffie);background:var(--wit);border:1.5px solid var(--taupe-tekst);border-radius:var(--radius-md);padding:12px 14px}
.cvs__veld input:focus{border-color:var(--wijn)}
.cvs__fout{color:var(--wijn);font-size:14px}
.cvs__knop{justify-self:start;font:600 15px/20px var(--font-body),sans-serif;padding:14px 24px;border-radius:999px;border:0;background:var(--wijn);color:var(--creme);cursor:pointer;min-height:44px}
.cvs__knop:hover{background:var(--wijn-diep)}.cvs__knop:disabled{opacity:.6}
.cvs__uitslag{max-width:760px;background:var(--wijn);color:var(--creme);border-radius:var(--radius-md);padding:var(--space-8);display:grid;gap:var(--space-3)}
.cvs__uitslag p,.cvs__uitslag li{color:var(--tekst-op-donker);margin:0;font-size:16px;line-height:26px}
.cvs__label{font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--poeder)}
.cvs__kop,.cvs__profiel{margin:0;font-family:var(--font-display),Impact,sans-serif;text-transform:uppercase;font-weight:400;color:var(--creme);font-size:clamp(26px,3vw,34px);line-height:1.02}
.cvs__profiel{color:var(--poeder);font-size:24px;margin-top:var(--space-2)}
.cvs__lijst{margin:0;padding-left:18px;display:grid;gap:var(--space-2)}.cvs__lijst b{color:var(--creme);display:block}
.cvs__uitslag a{color:var(--creme)}
.cvs__cta{display:inline-flex;font:600 15px/20px var(--font-body),sans-serif;padding:14px 24px;border-radius:999px;background:var(--poeder);color:var(--wijn)!important;text-decoration:none;min-height:44px;align-items:center}
.cvs__cta:hover{background:var(--creme)}
.cvs__uitslag :focus-visible,.cvs__cta:focus-visible{outline:2px solid var(--poeder);outline-offset:3px}
/* Links in tekst op donkere vlakken en in de footer: kleur van de tekst, niet de globale wijnrode linkkleur */
.elementor :is(.cv-sectie--wijn,.cv-sectie--koffie,.cv-cta__kaart,.cv-welniet__kaart--wel,.cv-prijs--uitgelicht,.cv-nav,.cv-footer) :is(p,span) a{color:inherit}
.elementor .cv-footer__klein a{text-decoration:underline;text-underline-offset:3px}
.elementor .cv-footer__klein a:hover{color:var(--poeder)}
