/* OMS — De Aircomonteur offerte-wizard. Donker + geel (#F2D918), matcht Manus-design. */
.dac-wizard *,.dac-wizard *::before,.dac-wizard *::after{box-sizing:border-box}
.dac-wizard{
  --geel:#F2D918;--geel-dim:#E1C809;--zwart:#1A1A1A;--bg:#111;--panel:#161616;
  background:var(--bg);color:#fff;padding:32px 16px;font-family:'Plus Jakarta Sans',system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  max-width:820px;margin:0 auto;
}
.dac-wizard a{color:var(--geel)}
.dac-hero{text-align:center;margin-bottom:28px}
.dac-badge{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(242,217,24,.3);background:rgba(242,217,24,.06);padding:6px 12px;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--geel);font-weight:700;margin-bottom:14px}
.dac-hero h2{font-size:30px;line-height:1.15;font-weight:900;margin:0 0 8px}
.dac-hero h2 span{color:var(--geel)}
.dac-hero p{color:rgba(255,255,255,.72);max-width:520px;margin:0 auto;font-size:15px}

/* Step indicator */
.dac-steps{display:flex;align-items:center;justify-content:center;gap:0;margin:0 0 28px;overflow-x:auto;padding-bottom:8px}
.dac-step-i{display:flex;align-items:center}
.dac-step-dot{width:36px;height:36px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:900;border:2px solid rgba(255,255,255,.2);color:rgba(255,255,255,.3);background:transparent;transition:.3s}
.dac-step-i.done .dac-step-dot{background:var(--geel);border-color:var(--geel);color:var(--zwart)}
.dac-step-i.active .dac-step-dot{background:var(--zwart);border-color:var(--geel);color:var(--geel)}
.dac-step-lbl{font-size:9px;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:rgba(255,255,255,.25);margin-top:4px;text-align:center;display:block}
.dac-step-i.active .dac-step-lbl{color:var(--geel)}
.dac-step-i.done .dac-step-lbl{color:rgba(255,255,255,.7)}
.dac-step-cell{display:flex;flex-direction:column;align-items:center}
.dac-step-line{width:34px;height:2px;margin:0 4px;background:rgba(255,255,255,.1)}
.dac-step-i.done .dac-step-line{background:var(--geel)}
@media(max-width:640px){.dac-step-lbl{display:none}.dac-step-line{width:20px}}

.dac-panel{background:var(--panel);border:1px solid rgba(255,255,255,.08);padding:28px}
.dac-step{display:none}
.dac-step.active{display:block;animation:dacfade .25s ease}
@keyframes dacfade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.dac-step h3{font-size:22px;font-weight:900;margin:0 0 6px}
.dac-step .sub{color:rgba(255,255,255,.68);font-size:14px;margin:0 0 22px}

.dac-label{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:rgba(255,255,255,.78);margin-bottom:6px}
.dac-label .req{color:var(--geel)}
.dac-input,.dac-select,.dac-textarea{width:100%;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.15);color:#fff;padding:10px 12px;font-size:14px;transition:.2s}
.dac-select{background:var(--zwart)}
.dac-input:focus,.dac-select:focus,.dac-textarea:focus{outline:none;border-color:rgba(242,217,24,.6)}
.dac-input::placeholder,.dac-textarea::placeholder{color:rgba(255,255,255,.25)}
.dac-textarea{resize:vertical;min-height:96px}
.dac-hint{font-size:11.5px;color:rgba(255,255,255,.6);margin:5px 0 0}
.dac-grid{display:grid;gap:12px}
.dac-grid.c2{grid-template-columns:1fr 1fr}
.dac-grid.c3{grid-template-columns:1fr 1fr 1fr}
@media(max-width:600px){.dac-grid.c2,.dac-grid.c3{grid-template-columns:1fr}}
.dac-field{margin-bottom:16px}
.dac-sect-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--geel);margin:0 0 12px}

/* choice cards */
.dac-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:600px){.dac-cards{grid-template-columns:1fr}}
.dac-card{text-align:left;padding:22px;border:2px solid rgba(255,255,255,.1);background:rgba(255,255,255,.02);cursor:pointer;transition:.2s;color:#fff}
.dac-card:hover{border-color:rgba(255,255,255,.3)}
.dac-card.sel{border-color:var(--geel);background:rgba(242,217,24,.08)}
.dac-card h4{font-size:18px;font-weight:900;margin:0 0 4px}
.dac-card .desc{font-size:13px;color:rgba(255,255,255,.68);margin:0 0 12px}
.dac-card ul{margin:0;padding:0;list-style:none}
.dac-card li{font-size:12px;color:rgba(255,255,255,.62);padding-left:14px;position:relative;margin:4px 0}
.dac-card li::before{content:"";position:absolute;left:0;top:7px;width:4px;height:4px;border-radius:50%;background:rgba(242,217,24,.6)}
/* Onderhoudscontract: pakketkaarten met zichtbare prijs */
.dac-cards-contract{gap:18px}
.dac-card-tier{position:relative;display:flex;flex-direction:column}
.dac-card-tier .tierprice{display:block;font-size:32px;font-weight:900;color:var(--geel);line-height:1;margin-bottom:8px}
.dac-card-tier .tierprice small{font-size:13px;font-weight:600;color:rgba(255,255,255,.4)}
.dac-card-tier ul{margin-bottom:12px}
.dac-card-tier li{color:rgba(255,255,255,.55);font-size:12.5px}
.dac-card-tier .tierextra{margin-top:auto;font-size:11.5px;color:rgba(255,255,255,.45);border-top:1px solid rgba(255,255,255,.1);padding-top:10px}
.dac-card-tier .tierbadge{position:absolute;top:-11px;right:14px;background:var(--geel);color:var(--zwart);font-size:9.5px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;padding:4px 10px}
.dac-card-premium{border-color:rgba(242,217,24,.35)}

/* mini option buttons (grid of choices) */
.dac-opts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
@media(max-width:600px){.dac-opts{grid-template-columns:repeat(2,1fr)}}
.dac-opt{padding:12px;border:1px solid rgba(255,255,255,.18);background:transparent;color:rgba(255,255,255,.82);cursor:pointer;text-align:left;transition:.2s;font-size:13px}
.dac-opt:hover{border-color:rgba(255,255,255,.4)}
.dac-opt.sel{border-color:var(--geel);background:rgba(242,217,24,.08);color:#fff}
.dac-opt .ico{font-size:20px;display:block;margin-bottom:4px}
.dac-opt strong{display:block;font-weight:700}
.dac-opt small{color:rgba(255,255,255,.62);font-size:10.5px}

/* checkbox rows */
.dac-check{display:flex;gap:12px;align-items:flex-start;cursor:pointer;padding:4px 0}
.dac-check .box{width:22px;height:22px;border:2px solid rgba(255,255,255,.55);flex:0 0 auto;margin-top:2px;display:flex;align-items:center;justify-content:center;transition:.2s;font-size:13px;color:var(--zwart)}
.dac-check:hover .box{border-color:rgba(242,217,24,.7)}
.dac-check.on .box{background:var(--geel);border-color:var(--geel)}
.dac-check .box::after{content:"✓";opacity:0}
.dac-check.on .box::after{opacity:1}
.dac-check .t{display:block;font-size:14.5px;font-weight:700;color:#fff}
.dac-check .d{display:block;font-size:12.5px;color:rgba(255,255,255,.72);margin-top:3px;line-height:1.45}
.dac-box{border:1px solid rgba(255,255,255,.1);padding:16px;margin-bottom:16px}

.dac-info{display:flex;gap:10px;background:rgba(242,217,24,.06);border:1px solid rgba(242,217,24,.2);padding:12px;margin-top:12px;font-size:12.5px;color:rgba(255,255,255,.78);line-height:1.5}
.dac-info .i{color:var(--geel);font-weight:900}

/* room card */
.dac-room{border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.02);margin-bottom:16px}
.dac-room-head{display:flex;align-items:center;justify-content:space-between;padding:12px 16px}
.dac-room-head .n{width:28px;height:28px;background:var(--geel);color:var(--zwart);font-weight:900;font-size:12px;display:inline-flex;align-items:center;justify-content:center;margin-right:10px}
.dac-room-body{padding:0 16px 16px;border-top:1px solid rgba(255,255,255,.1)}
.dac-room-title{font-size:14px;font-weight:700;display:flex;align-items:center}
.dac-room-kw{font-size:11px;color:var(--geel)}
.dac-room-del{background:none;border:none;color:rgba(255,80,80,.6);cursor:pointer;font-size:16px}
.dac-advies{margin-top:12px;background:rgba(242,217,24,.05);border:1px solid rgba(242,217,24,.3);padding:14px}
.dac-advies .k{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--geel);font-weight:700;margin:0 0 8px}
.dac-advies .row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-bottom:8px}
.dac-advies .row .v{font-size:18px;font-weight:900}
.dac-advies .row .v.geel{color:var(--geel)}
.dac-advies .row small{font-size:10px;color:rgba(255,255,255,.4);text-transform:uppercase;display:block}
.dac-advies .m{font-size:12px;color:rgba(255,255,255,.7)}
.dac-add{width:100%;border:2px dashed rgba(255,255,255,.15);background:none;color:rgba(255,255,255,.4);padding:16px;cursor:pointer;font-size:14px;font-weight:600;transition:.2s}
.dac-add:hover{border-color:rgba(242,217,24,.4);color:var(--geel)}

/* summary + price */
.dac-sum-box{border:1px solid rgba(255,255,255,.1);padding:16px;margin-bottom:14px}
.dac-sum-box .k{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--geel);font-weight:700;margin:0 0 10px}
.dac-sum-row{display:flex;justify-content:space-between;font-size:13px;padding:3px 0}
.dac-sum-row .l{color:rgba(255,255,255,.62)}
.dac-price{background:rgba(242,217,24,.08);border:1px solid rgba(242,217,24,.3);padding:18px;margin-bottom:14px}
.dac-price .lbl{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--geel);font-weight:700}
.dac-price .big{font-size:30px;font-weight:900;margin:4px 0}
.dac-price .note{font-size:11.5px;color:rgba(255,255,255,.72)}

/* nav */
.dac-wizard .dac-nav{display:flex;align-items:center;justify-content:space-between;margin-top:26px;padding-top:22px;border-top:1px solid rgba(255,255,255,.1)}
.dac-prev{background:none;border:none;color:rgba(255,255,255,.6);cursor:pointer;font-size:14px;font-weight:600}
.dac-prev:hover{color:#fff}
.dac-next,.dac-submit{background:var(--geel);color:var(--zwart);font-weight:900;font-size:13px;text-transform:uppercase;letter-spacing:.04em;padding:12px 30px;border:none;cursor:pointer;transition:.2s}
.dac-next:hover,.dac-submit:hover{background:var(--geel-dim)}
.dac-next:disabled{background:rgba(255,255,255,.08);color:rgba(255,255,255,.5);box-shadow:inset 0 0 0 1px rgba(255,255,255,.22);cursor:not-allowed}
.dac-err{margin-top:16px;background:rgba(242,163,60,.1);border:1px solid rgba(242,163,60,.5);padding:12px 14px;font-size:13px;color:#f6b871;line-height:1.5}
.dac-err strong{display:block;color:#f2a33c;margin-bottom:6px;font-size:13px}
.dac-err ul{margin:0;padding-left:18px}
.dac-err li{margin:3px 0}
.dac-input.dac-invalid,.dac-select.dac-invalid,.dac-textarea.dac-invalid,.dac-field.dac-invalid .dac-input,.dac-field.dac-invalid .dac-select,.dac-field.dac-invalid .dac-textarea{border-color:#f2a33c!important;box-shadow:0 0 0 2px rgba(242,163,60,.22)}
.dac-card.dac-invalid{border-color:#f2a33c!important}
.dac-check.dac-invalid .box{border-color:#f2a33c!important}
.dac-hide{display:none!important}

/* success */
.dac-done{text-align:center;padding:40px 16px}
.dac-done .chk{width:72px;height:72px;background:var(--geel);color:var(--zwart);font-size:36px;display:flex;align-items:center;justify-content:center;margin:0 auto 20px}
.dac-done h3{font-size:26px;font-weight:900;margin:0 0 10px}
.dac-done p{color:rgba(255,255,255,.6);margin:0 0 8px}

/* trust */
.dac-trust{margin-top:22px;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.dac-trust div{display:flex;align-items:center;justify-content:center;gap:8px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);padding:12px;color:var(--geel);font-size:12px;font-weight:600}

/* ===== Intern (verkoop): één lange pagina + live prijspaneel ===== */
.dac-wizard.dac-single .dac-steps{display:none}
.dac-wizard.dac-single .dac-step{display:block;animation:none;border-top:1px solid rgba(255,255,255,.08);margin-top:26px;padding-top:24px}
.dac-wizard.dac-single .dac-panel>.dac-step:first-of-type{border-top:0;margin-top:0;padding-top:0}
.dac-wizard.dac-single .dac-nav .dac-prev{display:none}
.dac-wizard.dac-single .dac-nav{justify-content:flex-start}
/* live paneel */
.dac-live-panel{background:var(--panel);border:1px solid rgba(242,217,24,.35);padding:18px}
.dac-live-panel .lbl{font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:var(--geel);font-weight:700;margin:0 0 6px}
.dac-live-panel .big{font-size:27px;font-weight:900;margin:0;line-height:1.1}
.dac-live-panel .lines{font-size:12px;color:rgba(255,255,255,.72);margin-top:12px;max-height:280px;overflow:auto}
.dac-live-panel .lines .r{display:flex;justify-content:space-between;gap:12px;padding:2px 0}
.dac-live-actions{margin-top:14px}
.dac-reset{background:transparent;border:1px solid rgba(255,255,255,.25);color:rgba(255,255,255,.8);font-weight:700;font-size:12px;padding:9px 14px;cursor:pointer;transition:.2s}
.dac-reset:hover{border-color:var(--geel);color:var(--geel)}
/* desktop: vaste zijkolom rechts */
@media(min-width:1080px){
  .dac-wizard.dac-single{position:relative;max-width:1180px;padding-right:372px}
  .dac-live{position:absolute;top:0;right:0;bottom:0;width:344px}
  .dac-live-panel{position:sticky;top:20px}
}
/* mobiel/tablet: vaste onderbalk */
@media(max-width:1079px){
  .dac-wizard.dac-single{padding-bottom:78px}
  .dac-live{position:fixed;left:0;right:0;bottom:0;z-index:60;background:var(--panel);border-top:2px solid var(--geel);padding:10px 16px;box-shadow:0 -6px 20px rgba(0,0,0,.4)}
  .dac-live-panel{border:0;padding:0;background:transparent;display:flex;align-items:center;justify-content:space-between;gap:14px}
  .dac-live-panel .lines{display:none}
  .dac-live-panel .lbl{margin:0 0 2px;font-size:9px}
  .dac-live-panel .big{font-size:19px}
  .dac-live-main{min-width:0}
  .dac-live-actions{margin:0;flex-shrink:0}
  .dac-reset{padding:8px 12px}
}

/* concept-link (intern bedankscherm) */
.dac-cl-slot{display:flex;flex-wrap:wrap;align-items:center;gap:8px;justify-content:center}
.dac-wizard a.dac-cl-btn{display:inline-block;background:var(--geel);color:var(--zwart);font-weight:900;font-size:13px;padding:11px 18px;text-decoration:none;transition:.2s}
.dac-wizard a.dac-cl-btn:hover{background:var(--geel-dim)}
