/* JvD Drunen – subtiel + fallback */
[hidden]{ display:none !important; } /* fallback voor browsers/caching */
.jvd-drunen-full{ width:100%; margin:0 auto 20px auto; background:#fff; border:1px solid #e5e7eb; border-radius:12px; box-shadow:0 6px 18px rgba(0,0,0,.05); padding:clamp(18px, 2.2vw, 26px); max-width:1200px; text-align:left; }
.jvd-drunen-actions{ display:flex; gap:.6rem; flex-wrap:wrap; margin-top:.5rem; align-items:center; }
.jvd-btn{ display:inline-flex; align-items:center; gap:.45rem; padding:.6rem .9rem; border-radius:10px; text-decoration:none; font-weight:600; border:1px solid #111827; background:#111827; color:#fff; }
.jvd-btn:link, .jvd-btn:visited, .jvd-btn:hover, .jvd-btn:active, .jvd-btn *{ color:#fff; }
.jvd-btn:hover{ filter:brightness(.92); }
.jvd-btn.ghost{ background:#fff; border-color:#111827; color:#111827; }
.jvd-btn.ghost:link, .jvd-btn.ghost:visited, .jvd-btn.ghost:hover, .jvd-btn.ghost:active, .jvd-btn.ghost *{ color:#111827; }
.jvd-phone{ display:inline-flex; align-items:center; gap:.35rem; font-weight:700; }
.jvd-phone a{ text-decoration:none; }
.jvd-ico-phone{ width:18px; height:18px; display:inline-block; background-repeat:no-repeat; background-size:contain; background-position:center; background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23111827' d='M6.6 10.8c1.6 3 3.6 5 6.6 6.6l2.2-2.2c.3-.3.7-.4 1.1-.3 1.2.4 2.6.6 4 .6.6 0 1 .4 1 1V20c0 .6-.4 1-1 1C11.3 21 3 12.7 3 2c0-.6.4-1 1-1h3.5c.6 0 1 .4 1 1 0 1.4.2 2.8.6 4 .1.4 0 .8-.3 1.1L6.6 10.8z'/></svg>"); }
.jvd-offers-wrap{ max-width:1200px; margin:20px auto; padding:0 10px; }
.jvd-acc-header{ width:100%; background:#f8fafc; color:#111827; padding:.7rem .8rem; border-radius:10px; border:1px solid #e5e7eb; text-align:left; font-weight:700; display:flex; align-items:center; justify-content:space-between; cursor:pointer; }
.jvd-acc-header[aria-expanded="true"]{ background:#eef2f7; }
.jvd-acc-icon{ width:20px; height:20px; transform:rotate(-90deg); transition:transform .2s; fill:#374151; }
.jvd-acc-header[aria-expanded="true"] .jvd-acc-icon{ transform:rotate(0); }
.jvd-cards{ display:grid; grid-template-columns:repeat(3, 1fr); gap:.85rem; }
.jvd-card{ border:1px solid #e5e7eb; border-radius:10px; box-shadow:0 4px 12px rgba(0,0,0,.04); padding:.9rem; background:#fff; }
.jvd-card.wide{ grid-column:1/-1; display:flex; align-items:center; justify-content:space-between; gap:.8rem; }
.jvd-price{ font-weight:800; font-size:1.05rem; }
@media (max-width:900px){ .jvd-cards{ grid-template-columns:1fr; } .jvd-card.wide{ flex-direction:column; align-items:flex-start; } }
.jvd-modal{ position:fixed; inset:0; display:none; z-index:9999; }
.jvd-modal[aria-hidden="false"]{ display:block; }
.jvd-modal-backdrop{ position:absolute; inset:0; background:rgba(0,0,0,.45); }
.jvd-modal-dialog{ position:relative; margin:8vh auto 0; background:#fff; max-width:460px; border-radius:12px; padding:14px 16px; box-shadow:0 20px 50px rgba(0,0,0,.2); max-height:85vh; overflow:auto; }
.jvd-modal-close{ position:absolute; top:.3rem; right:.6rem; background:none; border:0; font-size:1.3rem; cursor:pointer; }
.jvd-form label{ display:block; margin:.35rem 0 .15rem; font-weight:600; font-size:.92rem; }
.jvd-form input, .jvd-form textarea{ width:100%; padding:.5rem .6rem; border:1px solid #e5e7eb; border-radius:8px; font:inherit; font-size:.95rem; }
.jvd-checkboxes label{ display:block; font-weight:500; font-size:.92rem; }
.jvd-submit{ margin-top:.6rem; padding:.55rem .85rem; border-radius:10px; border:1px solid #111827; background:#111827; color:#fff; cursor:pointer; font-weight:600; }
.jvd-submit:hover{ filter:brightness(.92); }
.jvd-form-status{ margin-top:.45rem; min-height:1.2em; font-size:.92rem; color:#065f46; }
.jvd-form.is-sending .jvd-submit{ opacity:.7; pointer-events:none; }
.jvd-form.is-sending .jvd-form-status:before{ content:"⏳ "; }
