/* v42: trapvergelijker (voor/na) — alles binnen .okv, zodat de rest van de site niet verandert. */
.okv{--g:#123f35;--deep:#0d3029;--cream:#fff5df;--gold:#e3bf73;--muted:#b7c8be;--line:#ffffff26;
  background:radial-gradient(ellipse at 1% 40%,#1a4a3c80,transparent 48%),var(--g);color:var(--cream);-webkit-font-smoothing:antialiased}
.okv *{box-sizing:border-box}
.okv button,.okv a,.okv input{-webkit-tap-highlight-color:transparent}
.okv button{font:inherit;cursor:pointer;color:inherit;border:0;touch-action:manipulation}
.okv button:disabled{opacity:.35;cursor:default}
.okv button:focus-visible,.okv a:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.okv-wrap{max-width:1180px;margin:0 auto;padding:56px 24px}
.okv-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr);gap:clamp(36px,6vw,88px);align-items:start}
.okv-eyebrow{font-size:12px;letter-spacing:2px;font-weight:700;margin:0;color:var(--gold);display:flex;align-items:center;gap:10px;text-transform:uppercase}
.okv-eyebrow>span{width:20px;height:1px;background:var(--gold)}
.okv-title{font-size:clamp(34px,4vw,52px);letter-spacing:-1.5px;line-height:1.08;font-weight:500;margin:22px 0 18px;color:var(--cream)}
.okv-title em{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-style:italic;color:var(--gold)}
.okv-lead{font-size:16px;line-height:1.75;max-width:420px;margin:0;color:#dbe5dc}
.okv-rule{height:1px;max-width:420px;background:var(--line);margin:28px 0 20px}
.okv-selhead{max-width:420px;display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.okv-selhead h3{font-size:15px;font-weight:600;margin:0;color:var(--cream)}
.okv-selhead>span{font-size:12px;color:var(--muted)}
.okv-list{display:grid;gap:10px;max-width:420px}
.okv-option{border:1px solid var(--line);border-radius:8px;display:flex;align-items:center;gap:15px;text-align:left;background:#0d302940;padding:9px 15px 9px 9px;min-height:76px;transition:background .18s,border-color .18s}
.okv-option:hover{background:#ffffff0d;border-color:#e3bf7370}
.okv-option.active{border-color:var(--gold);background:#e3bf730d}
.okv-option img{border-radius:4px;width:48px;height:58px;object-fit:cover;flex-shrink:0}
.okv-option-text{display:grid;gap:4px}
.okv-option-text small{font-size:11px;letter-spacing:1.4px;color:var(--muted)}
.okv-option.active small{color:var(--gold)}
.okv-option-text strong{font-size:15px;font-weight:600}
.okv-option-text>span{font-size:13px;color:var(--muted)}
.okv-arrow{margin-left:auto;font-size:20px;color:var(--muted)}
.okv-option.active .okv-arrow{color:var(--gold)}
.okv-note{font-size:13px;color:var(--muted);margin:18px 0 0}
.okv-viewer{min-width:0;max-width:500px;justify-self:end;width:100%}
.okv-vhead{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;gap:12px}
.okv-vhead h3{font-size:16px;line-height:1.4;font-weight:500;margin:6px 0 0;color:#e4ece1}
.okv-icon{background:transparent;border:1px solid #ffffff30;border-radius:50%;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:border-color .18s,background .18s}
.okv-icon:hover{background:#ffffff0d;border-color:var(--gold)}
.okv-icon svg{width:20px;height:20px}
.okv-expand{border-radius:8px}
.okv-stage{position:relative;isolation:isolate;aspect-ratio:3/4;background:var(--deep);border-radius:10px;overflow:hidden;width:100%;--position:50%}
.okv-img{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;user-select:none;-webkit-user-select:none;pointer-events:none}
.okv-before{clip-path:inset(0 calc(100% - var(--position)) 0 0)}
.okv-stage:after{content:'';position:absolute;inset:0;box-shadow:inset 0 0 0 1px #ffffff1c;border-radius:inherit;pointer-events:none;z-index:5}
.okv-tag{position:absolute;top:16px;z-index:2;padding:7px 11px;font-size:12px;letter-spacing:1.5px;font-weight:700;border-radius:5px;background:#123f35e0;color:var(--cream);pointer-events:none}
.okv-tag-before{left:16px}
.okv-tag-after{right:16px;background:#fff5dfee;color:var(--g)}
.okv-divider{position:absolute;inset:0 auto 0 var(--position);width:2px;background:var(--cream);transform:translateX(-50%);pointer-events:none;z-index:3;box-shadow:0 0 6px #0004}
.okv-handle{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:52px;height:52px;border-radius:50%;background:var(--cream);color:var(--g);box-shadow:0 2px 15px #0003;display:flex;align-items:center;justify-content:center}
.okv-handle svg{width:29px;height:20px}
.okv-range{position:absolute;inset:0;width:100%;height:100%;padding:0;margin:0;opacity:0;cursor:ew-resize;z-index:4;touch-action:pan-y}
.okv-stage.okv-focus{outline:3px solid var(--gold);outline-offset:4px}
.okv-stage[data-edge="before"] .okv-tag-after,.okv-stage[data-edge="after"] .okv-tag-before,.okv-stage[data-edge] .okv-divider{visibility:hidden}
.okv-toolbar{display:flex;align-items:center;justify-content:space-between;padding-top:14px;gap:10px}
.okv-switch{display:flex;padding:3px;border:1px solid var(--line);border-radius:8px;gap:3px;flex-grow:1;max-width:320px}
.okv-switch button{flex:1;border-radius:5px;background:transparent;padding:10px 12px;font-size:14px;color:var(--muted);min-height:44px}
.okv-switch button:hover{color:var(--cream);background:#ffffff0d}
.okv-switch button.selected{color:var(--g);background:var(--gold);font-weight:700}
.okv-readout{font-size:13px;letter-spacing:1px;color:var(--muted);font-variant-numeric:tabular-nums}
.okv-help{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:13px;margin:10px 0 0;line-height:1.5}
.okv-help svg{width:18px;height:16px;flex-shrink:0}
.okv-vfoot{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid var(--line);margin-top:20px;padding-top:14px}
.okv-vfoot p{font-size:13px;color:var(--muted);line-height:1.5;display:flex;align-items:center;gap:8px;margin:0;flex:1}
.okv-dot{width:5px;height:5px;border-radius:50%;background:var(--gold);flex-shrink:0}
.okv-steps{display:flex;gap:10px;align-items:center;flex-shrink:0}
.okv-steps>span{font-size:12px;white-space:nowrap;color:var(--muted);letter-spacing:1px}
.okv-error{position:absolute;inset:0;background:var(--deep);z-index:10;padding:30px;display:grid;place-content:center;text-align:center;font-size:15px;line-height:1.7}
.okv-error[hidden]{display:none}
.okv-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.okv-dialog{border:1px solid #e3bf7360;background:var(--deep,#0d3029);color:#fff5df;border-radius:12px;padding:20px;width:min(94vw,840px);max-height:96dvh;overflow:auto;box-shadow:0 20px 80px #0008}
.okv-dialog::backdrop{background:#061d18ec}
.okv-dialog .okv-dhead{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}
.okv-dialog .okv-dhead>span{font-size:14px;color:#e3bf73}
.okv-close{display:flex;align-items:center;gap:12px;border:1px solid #ffffff26;border-radius:6px;padding:10px 14px;font-size:14px;background:transparent;min-height:44px;color:#fff5df;cursor:pointer}
.okv-close span{font-size:22px;line-height:12px}
.okv-dialog .okv-stage{height:min(72dvh,860px);width:auto;max-width:100%;margin-inline:auto}
.okv-dialog .okv-toolbar,.okv-dialog .okv-help{max-width:645px;margin-inline:auto}
html.okv-open{overflow:hidden}
.okv-extra{background:#f5f1e8}
.okv-extra .okv-wrap{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:28px;padding-top:48px;padding-bottom:48px}
.okv-extra h2{margin:0 0 10px}
.okv-extra p{margin:0 0 12px;line-height:1.7}
.okv-cta{display:inline-block;background:#123f35;color:#fff!important;padding:13px 20px;border-radius:8px;text-decoration:none;font-weight:700;min-height:44px}
.okv-cta.outline{background:transparent;color:#123f35!important;border:2px solid #123f35;margin-left:8px}
/* Tablet (o.a. iPad staand): twee kolommen blijven, compacter */
@media (max-width:1023px){.okv-wrap{padding:44px 24px}.okv-grid{grid-template-columns:minmax(0,.85fr) minmax(0,1fr);gap:32px}.okv-title{font-size:40px}.okv-lead{font-size:15px}.okv-vfoot{flex-wrap:wrap}}
/* Telefoon en smalle tablets: onder elkaar, trapkeuze als drie tegels */
@media (max-width:767px){
 .okv-wrap{padding:32px 16px}
 .okv-grid{display:flex;flex-direction:column;gap:22px}
 .okv-title{font-size:36px;margin:16px 0 12px;letter-spacing:-1px}
 .okv-lead{font-size:15px;max-width:none}
 .okv-rule{margin:20px 0 16px;max-width:none}
 .okv-selhead,.okv-list{max-width:none}
 .okv-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
 .okv-option{flex-direction:column;padding:7px 5px 9px;gap:7px;text-align:center;min-height:104px}
 .okv-option img{width:100%;height:56px}
 .okv-option-text small{font-size:10px;letter-spacing:1px}
 .okv-option-text strong{font-size:12px}
 .okv-option-text>span,.okv-arrow,.okv-note{display:none}
 .okv-viewer{max-width:none;justify-self:stretch;scroll-margin-top:90px}
 .okv-tag{top:12px;padding:6px 9px;font-size:11px}.okv-tag-before{left:12px}.okv-tag-after{right:12px}
 .okv-switch{max-width:none}
 .okv-readout{display:none}
 .okv-vfoot p{font-size:12px}
 .okv-dialog{padding:12px;width:96vw;max-height:97dvh;border-radius:8px}
 .okv-dialog .okv-stage{width:100%;height:auto;max-height:72dvh}
 .okv-cta.outline{margin:10px 0 0}
}
@media (prefers-reduced-motion:reduce){.okv *,.okv *:before,.okv *:after{transition:none!important}}
.okv-extra h2{font-size:clamp(22px,2.4vw,28px);font-weight:600;line-height:1.25;color:#123f35;letter-spacing:-.3px}
.okv-extra p{font-size:16px;color:#2c3b37}
/* v43: tweede keuzelijst (nicotineaanslag) */
.okv-selhead-2{margin-top:26px}
@media (max-width:767px){.okv-selhead-2{margin-top:20px}.okv-list-4{grid-template-columns:repeat(2,minmax(0,1fr))}.okv-list-4 .okv-option{min-height:0;flex-direction:row;text-align:left;padding:7px 9px 7px 7px;gap:10px}.okv-list-4 .okv-option img{width:40px;height:52px}}
@media (min-width:768px){.okv-viewer{position:sticky;top:84px}}
