/* V7: bounded form and review refinements. Approved page grids remain unchanged. */
.lead-modal{position:fixed;z-index:1000;inset:0;display:grid;place-items:center;padding:16px;box-sizing:border-box}
.lead-modal__backdrop{position:absolute;inset:0;background:#0009}
.lead-modal__dialog{position:relative;box-sizing:border-box;background:#fff;overflow:auto}
.lead-modal__close{position:absolute;right:12px;top:7px;border:0;background:none;font-size:30px;cursor:pointer}
.lead-modal p{color:#666}
.toast{position:fixed;z-index:1200;left:50%;bottom:24px;transform:translate(-50%,20px);padding:12px 18px;background:#222;color:#fff;opacity:0;pointer-events:none;transition:.25s}
.toast.is-visible{opacity:1;transform:translate(-50%,0)}
.lead-modal__dialog{width:min(510px,100%);padding:26px 28px;max-height:calc(100dvh - 32px)}
.lead-modal h2{font-size:25px;line-height:1.2;font-weight:800;margin:0 24px 7px 0}
.lead-modal #lead-context{font-size:16px;line-height:1.35;margin:0 0 12px}
.lead-modal form{display:grid;gap:8px!important;margin-top:10px!important}
.lead-modal form label{display:grid;gap:3px!important;font-size:16px;line-height:1.25;margin:0!important}
.lead-modal .form-label{display:block;font-weight:600}
.lead-modal .form-label .form-required{display:inline;color:#c42626;margin-left:2px;font-weight:700}
.lead-modal input,.lead-modal textarea{box-sizing:border-box;width:100%;min-width:0;border:1px solid #cbd2d7;border-radius:3px;padding:8px 10px;font:16px/1.3 Roboto,Arial,sans-serif}
.lead-modal input{height:38px}.lead-modal textarea{min-height:56px;height:56px;resize:vertical}
.lead-modal button[type=submit]{min-height:42px;padding:10px 22px;margin-top:2px}
.lead-modal form>small{font:12px/1.3 Roboto,Arial,sans-serif;color:#69737b}
.lead-modal .form-hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.lead-modal[hidden]{display:none!important}
.review-collapsible{display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden}
.review-collapsible.is-expanded{display:block;overflow:visible}
.review-expand{display:inline-block;align-self:start;margin:4px 0 14px;padding:4px 0;background:none;border:0;border-bottom:1px solid currentColor;color:#1689d5;font:600 16px/1.3 Roboto,Arial,sans-serif;cursor:pointer}
.review-expand:focus-visible{outline:3px solid #2097e6;outline-offset:4px}
.product-prototype .models .models-intro+p.models-intro{margin-top:12px}
.product-prototype .tab-panel>div:last-child{min-width:0}
.product-prototype .tab-panel ul{padding-left:24px}
.product-prototype .tab-panel li{max-width:none;margin-bottom:12px}
.product-prototype .price-panel__discount{display:inline-block}
.product-prototype #models-title{scroll-margin-top:calc(var(--product-header-height,90px) + 8px)}
.purchase-more{margin:0 0 18px}
.purchase-more>summary{display:list-item;width:max-content;max-width:100%;cursor:pointer;color:#1689d5;font:600 18px/1.5 Roboto,Arial,sans-serif;padding:4px 0}
.purchase-more>summary:focus-visible{outline:3px solid #2097e6;outline-offset:4px}
.purchase-more__content{padding-top:18px}
.purchase-more__content>p:first-child{margin-top:0}
.js-copy-justification{display:inline-block;margin-top:8px}
@media(max-width:767px){.lead-modal{padding:12px}.lead-modal__dialog{padding:22px 20px;max-height:calc(100dvh - 24px)}.lead-modal h2{font-size:23px}.lead-modal #lead-context{font-size:15px}.lead-modal form{gap:7px!important}.lead-modal form>small{font-size:11px}}
