/* Planner controls deliberately override the legacy form and photo-card rules. */
#quote-form .visual-service-choices{display:grid;grid-template-columns:1fr;gap:10px}
#quote-form .visual-choice{position:relative;display:grid;grid-template-columns:82px minmax(0,1fr) 20px;align-items:center;gap:14px;min-height:114px;margin:0;padding:10px 14px 10px 10px;overflow:visible;border:1px solid #d4dfd3;border-radius:10px;background:#fff;color:#173a29;box-shadow:none;cursor:pointer}
#quote-form .visual-choice::before,#quote-form .visual-choice::after{content:none;display:none}
#quote-form .visual-choice .choice-image{position:relative;inset:auto;display:block;width:82px;height:94px;margin:0;padding:0;border:0;border-radius:6px;box-shadow:none;backdrop-filter:none;background-color:#eaf0e6;background-image:url('install-selector-triptych-v2.png');background-size:400% auto;background-repeat:no-repeat;background-position:0 center}
#quote-form .fireplace .choice-image{background-position:33.333% center}
#quote-form .sound .choice-image{background-position:66.666% center}
#quote-form .security .choice-image{background-position:100% center}
#quote-form .transport .choice-image,#quote-form .purchase .choice-image{background-image:url('transport-shop-selector-v1.webp');background-size:auto 100%;background-position:0 center}
#quote-form .purchase .choice-image{background-position:100% center}
#quote-form .visual-choice .choice-copy{position:static;display:block;min-width:0;margin:0;padding:0;border:0;border-radius:0;background:none;box-shadow:none;backdrop-filter:none}
#quote-form .visual-choice .choice-copy strong{display:block;color:#163b2a;font-size:15px;font-weight:750;line-height:1.25}
#quote-form .visual-choice .choice-copy small{display:block;margin-top:5px;color:#506758;font-size:12px;font-weight:400;line-height:1.4}
#quote-form .visual-choice input{position:static;grid-column:3;grid-row:1;appearance:auto;-webkit-appearance:auto;width:20px!important;height:20px!important;min-height:0!important;max-height:20px;margin:0!important;padding:0!important;opacity:1!important;accent-color:#24684f;box-shadow:none}
#quote-form .visual-choice:has(input:checked){border-color:#287050;background:#f1f8ed;box-shadow:0 0 0 1px #287050}
#quote-form .visual-choice:has(input:focus-visible),#quote-form .mount-style:has(input:focus-visible){outline:3px solid #82b99b;outline-offset:3px}
#quote-form .mount-style-choices{display:grid;grid-template-columns:1fr;gap:10px}
#quote-form .mount-style{position:relative;display:grid;grid-template-columns:76px minmax(0,1fr) 20px;align-items:center;gap:14px;min-height:92px;margin:0;padding:12px;border:1px solid #d4dfd3;border-radius:10px;overflow:visible;background:#fff;color:#173a29;cursor:pointer}
#quote-form .mount-style::before{content:none;display:none}
#quote-form .mount-style .mount-diagram{display:block;width:76px;height:66px;padding:0;border-radius:6px;background:#edf4e8;object-fit:contain}
#quote-form .mount-style>span{position:static;min-width:0;padding:0;color:#173a29}
#quote-form .mount-style strong{font-size:15px;font-weight:750;line-height:1.25;color:#163b2a}
#quote-form .mount-style small{display:block;margin-top:5px;font-size:12px;line-height:1.4;color:#506758}
#quote-form .mount-style input{position:static;appearance:auto;-webkit-appearance:auto;grid-column:3;grid-row:1;flex:none;width:20px;height:20px;min-height:0;max-height:20px;margin:0;padding:0;accent-color:#24684f;background:none;box-shadow:none}
#quote-form .mount-style:has(input:checked){border-color:#287050;background:#f1f8ed;box-shadow:0 0 0 1px #287050}
@media(min-width:1050px){#quote-form .visual-service-choices{grid-template-columns:1fr 1fr}#quote-form .visual-choice{grid-template-columns:62px minmax(0,1fr) 18px;gap:10px;padding:8px;min-height:110px}#quote-form .visual-choice .choice-image{width:62px;height:94px}#quote-form .visual-choice .choice-copy strong{font-size:14px}}
@media(max-width:800px){body.is-planning .contact-rail,body.is-planning .mobile-call{display:none}.wizard-card{padding:20px 16px}.wizard-step h3{font-size:25px}.wizard-card .step-help{font-size:14px}}
@media(max-width:360px){#quote-form .visual-choice{grid-template-columns:66px minmax(0,1fr) 18px;gap:10px;padding:8px}#quote-form .visual-choice .choice-image{width:66px;height:90px}#quote-form .visual-choice .choice-copy strong{font-size:14px}}

/* Individual local images avoid stretched sprite crops and remote failures. */
#quote-form .tv-wall .choice-image{background-image:url('selector/tv-wall.webp');background-size:cover;background-position:center}
#quote-form .fireplace .choice-image{background-image:url('selector/fireplace.webp');background-size:cover;background-position:center}
#quote-form .sound .choice-image{background-image:url('selector/sound.webp');background-size:cover;background-position:center}
#quote-form .security .choice-image{background-image:url('selector/security.webp');background-size:cover;background-position:center}
