:root{--ink:#0b1638;--muted:#5b6472;--line:#dbe4f3;--paper:#eff6ff;--orange:#1f5eeb;--white:#fff}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.5 'DM Sans','Helvetica Neue',Arial,sans-serif}button,input,select{font:inherit}button{cursor:pointer}button,a,input,select{ -webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--orange);outline-offset:3px}button{border:1px solid var(--line);background:white;color:var(--ink);border-radius:7px;padding:10px 15px;transition:background .18s,transform .18s}button:hover{background:#eef3fc}header{height:92px;padding:0 4%;display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--line)}a.brand{display:flex;align-items:center;gap:13px;text-decoration:none;color:var(--ink);font-size:14px;letter-spacing:1.5px;font-weight:750}.brandmark{font-size:28px;letter-spacing:-5px;padding-right:6px}.brandmark span{color:var(--orange)}.brand small{display:block;font-size:12px;letter-spacing:2px;font-weight:500}.header-note{font-size:14px;color:var(--muted)}.quiet{font-size:14px;background:transparent}.workspace{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(360px,1fr);gap:38px;padding:32px 4% 45px;max-width:1800px;margin:auto}.eyebrow{font-size:12px;font-weight:700;letter-spacing:1.7px}.visual-column>.eyebrow{display:flex;justify-content:space-between;margin:0 0 15px}.visual-column>.eyebrow span{font-size:12px;color:var(--muted)}.visual{height:560px;min-height:420px;position:relative;overflow:hidden;border-radius:12px;background:#e6edf8}.visual>img{width:100%;height:100%;object-fit:cover;transition:opacity .2s}.visual:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.58));pointer-events:none}.visual.drawing-mode:after{display:none}.image-top{position:absolute;top:20px;left:20px;right:20px;display:flex;justify-content:space-between;z-index:2}.pill,.glass{background:rgba(255,255,255,.93);border:0;border-radius:5px;font-size:12px;padding:8px 12px}.glass{font-size:24px;line-height:1}.scene-title{position:absolute;left:30px;bottom:86px;color:#fff;z-index:1}.scene-title small{font-size:12px;letter-spacing:2px}.scene-title h1{font-size:clamp(30px,3.1vw,52px);font-weight:450;line-height:1.08;letter-spacing:-1.5px;margin:12px 0}.view-switch{position:absolute;bottom:22px;left:24px;display:flex;gap:3px;z-index:3;background:rgba(255,255,255,.95);padding:4px;border-radius:8px}.view-switch button{border:0;background:transparent;padding:8px 13px;font-size:13px}.view-switch button.active{background:var(--ink);color:#fff}.visual-caption{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13px;margin-top:10px}.text-button{border:0;background:none;font-size:13px;padding:7px 0;text-decoration:underline;text-underline-offset:4px}.render-note{font-size:12px;line-height:1.6;color:var(--muted);max-width:650px;margin:4px 0 20px}.overview{display:grid;grid-template-columns:1fr 1fr 1.1fr;border-top:1px solid var(--line);padding-top:22px}.overview>div+div{border-left:1px solid var(--line);padding-left:25px}.overview small{font-size:12px;letter-spacing:1.4px;color:var(--muted);display:block}.overview strong{font-size:25px;display:block;font-weight:500;margin-top:4px}.overview em{font-size:15px;font-style:normal}.overview>div:last-child strong{font-size:19px;margin-top:9px}.config{background:#fff;border:1px solid var(--line);border-radius:12px;align-self:start;overflow:hidden}.config-heading{padding:25px 26px 18px}.config-heading .eyebrow{color:var(--orange)}h2{font-size:27px;letter-spacing:-.8px;font-weight:500;line-height:1.2;margin:9px 0}.steps{display:flex;border-block:1px solid var(--line);padding:0 20px;gap:6px}.steps button{background:none;border:0;border-radius:0;border-bottom:2px solid transparent;padding:16px 6px;font-size:12px;color:var(--muted);flex:1;white-space:nowrap}.steps span{font-size:13px;margin-left:3px}.steps .active{border-color:var(--orange);color:var(--ink)}#panel{padding:22px 25px;min-height:410px}.field-title{font-size:15px;font-weight:650;margin:0 0 11px}.help{font-size:13px;color:var(--muted);margin:8px 0 18px}.filters{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:18px}.filters button{font-size:12px;padding:6px 10px;border-radius:20px}.filters .active{background:var(--ink);color:white;border-color:var(--ink)}.models{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-height:375px;overflow:auto;padding:2px}.model{padding:0;text-align:left;overflow:hidden;border-radius:7px;border:2px solid transparent;background:#f5f8fe;position:relative}.model.active{border-color:var(--orange)}.model.active:after{content:'✓';position:absolute;right:7px;top:7px;border-radius:50%;width:21px;height:21px;text-align:center;background:var(--orange);color:white;font-size:13px}.model img{height:89px;width:100%;object-fit:cover;display:block}.model strong{font-size:13px;font-weight:600;display:block;padding:8px 10px 1px}.model small{font-size:12px;display:block;padding:0 10px 9px;color:var(--muted)}.config-footer{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid var(--line);padding:18px 25px}.config-footer>span{font-size:12px;letter-spacing:1px;color:var(--muted)}.primary{background:var(--orange);border-color:var(--orange);color:#fff;font-size:14px;padding:12px 18px}.primary:hover{background:#1747b8}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:15px 0}label{display:block;font-size:13px;font-weight:600}input,select{width:100%;background:#fff;border:1px solid #c3cee2;border-radius:6px;padding:10px;margin-top:6px;color:var(--ink)}.shape-options{display:flex;gap:8px;margin-bottom:20px}.shape-options button{flex:1;font-size:13px}.shape-options .active{border-color:var(--orange);background:#e3edff}.length-row{display:flex;gap:10px;align-items:end;margin:12px 0}.length-row label{flex:1}.length-row button{height:46px}.check{display:flex;align-items:start;gap:10px;margin:15px 0;font-weight:400}.check input{width:17px;height:17px;margin:3px 0 0;accent-color:var(--orange)}.info{background:#f1f6ff;padding:13px;border-radius:6px;font-size:12px;color:#4b5568;margin:16px 0}.error{color:#ac3b17;font-size:13px}.summary-list{margin:0}.summary-list>div{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:9px 0;font-size:13px}.summary-list dt{color:var(--muted)}.summary-list dd{margin:0;text-align:right}.actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.actions button{font-size:13px}.collection{padding:40px 4% 60px;background:#e9f0fc}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:25px}.section-heading>span{font-size:13px;color:var(--muted)}.section-heading h2{font-size:33px;margin-top:12px}#catalog{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.catalog-card{border:0;text-align:left;padding:0;background:transparent;border-radius:0}.catalog-card:hover{background:transparent;transform:translateY(-3px)}.catalog-card img{width:100%;height:170px;object-fit:cover;border-radius:8px;display:block}.catalog-card strong{font-size:16px;font-weight:500;display:block;margin-top:10px}.catalog-card small{color:var(--muted);font-size:12px}footer{display:flex;justify-content:space-between;padding:25px 4%;font-size:12px;letter-spacing:1px}#drawing{position:absolute;inset:0;background:#f8fafe;z-index:2;padding:45px 16px 85px}#drawing svg{width:100%;height:100%;overflow:visible}.drawing-mode .scene-title,.drawing-mode .image-top{display:none}dialog{border:0;border-radius:14px;padding:35px;width:min(1100px,94vw);max-height:92vh;color:var(--ink)}dialog::backdrop{background:#0b1638b8;backdrop-filter:blur(6px)}.close{position:absolute;top:9px;right:10px;padding:5px 10px}.large-render{width:100%;max-height:70vh;object-fit:contain}.compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.compare-grid img{width:100%;border-radius:8px}.compare-grid select{margin:10px 0}.print-summary{font-size:14px}.print-summary svg{max-height:320px;width:100%}.print-summary img{width:100%;max-height:350px;object-fit:cover}.print-summary table{width:100%;border-collapse:collapse}.print-summary td,.print-summary th{padding:8px;border-bottom:1px solid var(--line);text-align:left}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%) translateY(120px);background:var(--ink);color:#fff;padding:12px 22px;border-radius:8px;z-index:10;transition:transform .3s;font-size:14px;max-width:90vw}#toast.show{transform:translateX(-50%) translateY(0)}@media(min-width:1600px){.visual{height:650px}}@media(max-width:1050px){.workspace{gap:22px;padding-inline:25px;grid-template-columns:minmax(0,1.2fr) minmax(340px,1fr)}.visual{height:520px}.header-note{display:none}.scene-title{left:20px}.visual-caption{align-items:start;flex-direction:column}.overview>div+div{padding-left:10px}.overview strong{font-size:22px}.steps{padding-inline:12px}#panel{padding-inline:18px}.section-heading>span{display:none}}@media(max-width:760px){header{height:72px;padding-inline:20px}.brandmark{font-size:25px}.brand{font-size:12px!important}.quiet{font-size:12px;padding:8px}.workspace{display:flex;flex-direction:column;padding:20px 16px;gap:22px}.visual-column>.eyebrow{font-size:12px}.visual-column>.eyebrow span{font-size:12px}.visual{height:400px;min-height:0}.scene-title h1{font-size:36px}.scene-title{bottom:77px}.view-switch{left:15px;bottom:15px}.overview{padding-top:15px}.overview strong{font-size:22px}.overview small{font-size:12px}.overview>div:last-child strong{font-size:15px}.visual-caption{flex-direction:row;font-size:12px}.text-button{font-size:12px}.render-note{font-size:12px;margin-bottom:15px}.config{width:100%}.config-heading{padding:22px 20px 17px}#panel{min-height:0;padding:20px}.models{max-height:400px;grid-template-columns:1fr 1fr}.model img{height:110px}.collection{padding:30px 16px}#catalog{grid-template-columns:1fr 1fr;gap:18px 12px}.catalog-card img{height:130px}.catalog-card strong{font-size:14px}.section-heading h2{font-size:27px}.compare-grid{grid-template-columns:1fr}footer{gap:15px;flex-direction:column;font-size:12px}dialog{padding:35px 18px 20px}.visual.drawing-mode{height:400px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}@media print{body>*:not(dialog){display:none!important}dialog{display:block;position:static;max-height:none;width:100%;padding:0;overflow:visible}dialog .close,dialog .actions{display:none}.print-summary h2{font-size:23px}.print-summary img{max-height:240px}dialog::backdrop{background:none}}

/* Laat de schutting volledig zichtbaar; titel en bediening staan buiten het productbeeld. */
.visual{height:auto;min-height:0;aspect-ratio:3/2;margin-bottom:55px;overflow:visible}.visual>img{display:block;border-radius:12px;object-fit:contain}.visual:after{display:none}.scene-title{position:static;color:var(--ink);margin:0;z-index:auto}.scene-title small{font-size:12px;color:var(--muted)}.scene-title h1{font-size:29px;line-height:1.2;letter-spacing:-.8px;margin:6px 0}.view-switch{bottom:-47px;left:0;background:#e6edf8}.visual.drawing-mode{height:auto;aspect-ratio:3/2}.visual.drawing-mode #drawing{border-radius:12px;padding:24px 10px}.visual.drawing-mode>img{visibility:hidden}.visual-caption{margin-top:4px}.render-note{margin-top:5px}@media(max-width:760px){.visual,.visual.drawing-mode{height:auto;aspect-ratio:3/2}.scene-title h1{font-size:25px}.image-top{top:10px;left:10px;right:10px}.pill{font-size:12px}.visual.drawing-mode #drawing{padding:8px}.view-switch button{font-size:12px}.scene-title{margin-top:0}}

.spec-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:15px}.spec-tags span{font-size:12px;border:1px solid #d6e0f0;border-radius:4px;padding:4px 7px;color:#4b5568}.shape-options{flex-wrap:wrap}.shape-options button{min-width:80px}.layout-heading{display:flex;justify-content:space-between;gap:12px;margin:24px 0 10px;align-items:center}.layout-heading>span:last-child{font-size:12px;color:var(--muted)}#layout-previews{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:25px}#layout-previews button{padding:0;overflow:hidden;text-align:left;border:2px solid transparent;background:#edf2fa}#layout-previews button.active{border-color:var(--orange)}#layout-previews img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover}#layout-previews span{display:block;padding:6px 10px;font-size:12px}.render-zoom{overflow:auto;max-height:64vh;border-radius:8px;background:#e9eff9}.render-zoom img{display:block;width:100%;max-width:none;height:auto}.zoom-control{display:flex;align-items:center;gap:12px;margin:10px 0 15px}.zoom-control input{width:180px;margin:0;accent-color:var(--orange)}.zoom-control output{min-width:45px;font-size:12px}.drawing-mode #drawing{overflow:auto}@media(max-width:760px){.layout-heading .eyebrow{font-size:12px;letter-spacing:1px}.layout-heading>span:last-child{font-size:12px}#layout-previews{gap:6px}#layout-previews span{font-size:12px;padding:5px 7px}.zoom-control{font-size:12px}.zoom-control input{width:140px}.config .shape-options button{flex:1 0 28%}}

button:disabled{opacity:.4;cursor:not-allowed}button:disabled:hover{background:inherit;transform:none}

/* Huisstijl Prefabwerk: Manrope voor koppen, DM Sans voor tekst. */
h1,h2,h3,.scene-title h1,.brand{font-family:'Manrope','DM Sans',sans-serif}h2,.scene-title h1,.section-heading h2{font-weight:800}.brand img{display:block}

#image-status{position:absolute;inset:0;z-index:4;background:#eef3fbe8;border-radius:12px;display:flex;align-items:center;justify-content:center;text-align:center;padding:30px;font-size:14px;color:#0b1638}#image-status[hidden]{display:none}.drawing-mode #image-status{display:none}

label,.steps span,.filters button,.model strong,.shape-options button,.actions button{font-size:14px}.visual-column>.eyebrow,.layout-heading{flex-wrap:wrap;gap:6px 12px}.brand small{letter-spacing:1px}@media(max-width:760px){.brand small{font-size:12px;letter-spacing:.4px}.brandmark{font-size:23px}.visual-column>.eyebrow span{font-size:12px}.model strong{font-size:14px}.model small{font-size:12px}.render-note{font-size:12px}.view-switch button{font-size:13px}.layout-heading .eyebrow{font-size:12px}.visual-caption{flex-wrap:wrap}}

/* Huisstijl Prefabwerk: woordmerk en knoppen. */
a.brand{gap:14px}.pw-logo{font-family:'Manrope','DM Sans',sans-serif;font-weight:800;font-size:26px;letter-spacing:-.04em;line-height:1;color:#0b1638;text-transform:none}.pw-logo span{color:#1f5eeb}.pw-sub{font-size:11px;font-weight:700;letter-spacing:2px;color:var(--muted);padding-left:14px;border-left:1px solid var(--line);line-height:1.4}
.primary,.quiet,.actions button{border-radius:16px;text-transform:uppercase;letter-spacing:.14em;font-size:11px!important;font-weight:800;font-family:'Manrope','DM Sans',sans-serif}.primary{padding:14px 22px;box-shadow:0 10px 24px rgba(31,94,235,.22)}.quiet{border:1px solid var(--line);padding:11px 18px}.quiet:hover{background:#eff6ff}.actions button{padding:12px 16px}
footer a{color:#1f5eeb}
@media(max-width:760px){.pw-logo{font-size:22px}.pw-sub{display:none}.quiet{padding:9px 12px}}

/* vaste stappenbalk en aanvraag (aanvraag.js) */
.config{overflow:clip}
.config-footer{position:sticky;bottom:0;z-index:5;background:#fff;display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center}
.config-footer>span{grid-column:1}
.config-footer #previous{grid-column:2}
.config-footer #next{grid-column:3}
.config-footer #next.is-aanvraag~.footer-offerte{display:none}
.footer-offerte{grid-column:1/-1;display:flex;align-items:center;justify-content:center;min-height:48px;border-radius:8px;background:#1f5eeb;color:#fff!important;text-decoration:none;text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:800;font-family:'Manrope','DM Sans',sans-serif;box-shadow:0 10px 24px rgba(31,94,235,.22)}
.footer-offerte:hover{background:#1747b8}
.config-footer #next:not(.is-aanvraag){background:#0b1638;box-shadow:none}
.aanvraag-knop{width:100%;margin:16px 0 4px;min-height:48px}
@media(max-width:760px){.config-footer{display:none}}
@media print{.pa-balk{display:none}}
