/* Premium architectural maquettes. The legacy engineering state is retained in hidden SVG. */
.cfg-visual.cfg-luxury{padding:0;background:#f4f1ea;border:1px solid #b8935a66;border-radius:12px;overflow:hidden;box-shadow:0 16px 40px #3028180b}
.cfg-luxury>svg[hidden]{display:none!important}
.cfg-model{position:relative}
.cfg-model-top{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:21px 26px 17px;border-bottom:1px solid #b8935a30;color:#846a43;font:600 .58rem/1.4 var(--f-body);letter-spacing:.16em}
.cfg-model-top>span:last-child{white-space:nowrap;font-weight:500;letter-spacing:.10em}
.cfg-model-stage{position:relative;width:100%;aspect-ratio:4/3;overflow:hidden;background:#f1ede6}
.cfg-model-scene{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;opacity:0;visibility:hidden;transition:opacity .65s ease,visibility 0s .65s}
.cfg-model-scene.is-active{opacity:1;visibility:visible;transition-delay:0s}
.cfg-model-caption{padding:19px 26px 22px;border-top:1px solid #b8935a30;background:var(--card)}
.cfg-model-kicker{margin:0 0 7px;color:#846a43;font:600 .55rem/1.4 var(--f-body);letter-spacing:.18em}
.cfg-model-caption h3{font:400 clamp(1.7rem,2.5vw,2.2rem)/1.1 var(--f-title);color:var(--green);margin:0 0 15px}
.cfg-model-specs{display:flex;flex-wrap:wrap;gap:7px}
.cfg-model-chip{display:inline-flex;align-items:center;min-height:26px;padding:5px 9px;border:1px solid #173a2e24;border-radius:3px;font:500 .68rem/1.4 var(--f-body);color:var(--green);background:#f4f6f0}
.cfg-model-chip--warm{color:#855638;border-color:#9e693634;background:#f6efe6}
.cfg-model-chip--old{color:var(--muted);background:transparent;border-style:dashed}
.cfg-model-note{font:400 .65rem/1.6 var(--f-body);color:var(--muted);margin:14px 0 0;max-width:42em}
.cfg-model-screw{position:absolute;top:8px;width:7px;height:7px;pointer-events:none;user-select:none;opacity:.8}
.cfg-model-screw--left{left:8px;transform:rotate(-14deg)}.cfg-model-screw--right{right:8px;transform:rotate(22deg)}
@media(max-width:1023.98px){.cfg-model-stage{height:250px;aspect-ratio:auto}.cfg-model-top{padding:17px 21px 13px}.cfg-model-caption{padding:16px 21px 18px}.cfg-model-caption h3{font-size:1.8rem;margin-bottom:12px}}
@media(max-width:520px){.cfg-model-stage{height:225px}.cfg-model-top{font-size:.52rem;padding:16px 18px 12px;gap:8px}.cfg-model-caption{padding:15px 18px 17px}.cfg-model-caption h3{font-size:1.7rem}.cfg-model-note{font-size:.6rem;margin-top:12px}.cfg-model-chip{font-size:.62rem;min-height:25px;padding:4px 7px}}
@media(prefers-reduced-motion:reduce){.cfg-model-scene{transition:none}}

/* Registered light markers follow the photo's 4:3 canvas, including mobile letterboxing. */
.cfg-model-stage{display:grid;place-items:center}
.cfg-model-photo{position:relative;width:100%;height:100%;aspect-ratio:4/3}
.cfg-model-lights{position:absolute;inset:0;pointer-events:none;z-index:2}
.cfg-light-point{position:absolute;left:var(--x,50%);top:var(--y,50%);width:8px;height:8px;transform:translate(-50%,-50%);border-radius:50%;border:1px solid #fff5d9;background:#ffe2a0;opacity:0;transition:opacity .5s ease,box-shadow .5s ease}
.cfg-light-point.is-active{opacity:1}
.cfg-light-point.is-warm{background:#ffe2a0;box-shadow:0 0 8px 3px #ffd38dcc,0 0 23px 9px #e8a95766}
.cfg-light-point.is-cold{background:#d1f7ee;border-color:#f1fff9;box-shadow:0 0 8px 3px #aeeadacc,0 0 23px 9px #83cbb966}
.cfg-light-point.is-warm.is-cold{background:#faf1c9;box-shadow:-5px 0 11px 4px #ffd38dba,5px 0 11px 4px #aeeadaba,0 0 24px 8px #d9d2ad44}
.cfg-unit-light{width:10px;height:10px}
@media(max-width:1023.98px){.cfg-model-photo{width:min(100%,333.333px);height:auto}}
@media(max-width:520px){.cfg-model-photo{width:min(100%,300px)}.cfg-light-point{width:6px;height:6px}.cfg-unit-light{width:8px;height:8px}
/* Long explanatory amounts need complete lines on narrow result cards. */
.cfg-sec .cfg-dl{grid-template-columns:minmax(0,1fr);gap:0}
.cfg-sec .cfg-dl dt{font-size:.8rem;padding:12px 0 3px;color:var(--muted)}
.cfg-sec .cfg-dl dt::after{display:none}
.cfg-sec .cfg-dl dd{font-size:1rem;text-align:left;padding:0 0 10px;max-width:100%;overflow-wrap:anywhere}
.cfg-sec .cfg-dl dd.tot{border-top:0;margin-top:0;padding-top:0}
.cfg-sec .cfg-dl dt.warm{padding-top:16px}.cfg-sec .cfg-dl dd.warm{font-size:2.4rem;padding-top:3px}
}
@media(prefers-reduced-motion:reduce){.cfg-light-point{transition:none}}

@media(max-width:520px){.cfg-sec .cfg-card::after{width:62px;right:12px}.cfg-sec .cfg-card::before{padding-left:22px;font-size:.65rem;letter-spacing:.14em}}
@media(max-width:359px){.site-header .bar{gap:10px}.site-header .logo{padding-left:14px;padding-right:14px}.site-header .logo b{font-size:.9rem}.site-header .logo small{font-size:.5rem}.site-header .nav-toggle{padding-left:12px;padding-right:12px}}
