.quote-section{padding-block:clamp(2rem,6vw,5rem)}
.quote-layout{display:grid;grid-template-columns:minmax(0,42rem) minmax(14rem,1fr);gap:clamp(2rem,7vw,7rem);align-items:start}
.quote-form{min-width:0}.quote-form p{line-height:1.6}.quote-field{margin:0 0 1.7rem;border:0;padding:0;min-width:0}
.quote-field>label,.quote-field>legend,.quote-group>legend{display:block;font-weight:750;font-size:1.08rem;margin-bottom:.5rem;line-height:1.4}
.quote-field input:not([type=checkbox]):not([type=radio]),.quote-field textarea,.quote-field select{display:block;width:100%;min-height:48px;border:2px solid var(--muted);border-radius:9px;background:var(--bg);color:var(--fg);font:inherit;padding:.75rem}
.quote-field input[type=file]{font-size:1rem;max-width:100%;overflow:hidden}.quote-field input::file-selector-button{font:inherit;background:var(--sun);color:var(--ink);padding:.6rem;border:0;border-radius:5px;margin-right:.5rem}
.quote-field textarea{resize:vertical}.quote-hint{color:var(--muted);font-size:.94rem;margin:.4rem 0 .65rem;line-height:1.5}
.quote-group{border:0;border-top:2px solid var(--line);padding:1.5rem 0 0;margin:2rem 0;min-width:0}.quote-group>legend{padding-right:1rem;font-size:1.35rem}
.quote-choices>div:not(.quote-error){display:grid;grid-template-columns:1fr 1fr;gap:.55rem}
.quote-choices label,.quote-consent label{display:flex;gap:.7rem;align-items:center;padding:.7rem .8rem;border:1px solid var(--muted);border-radius:9px;min-height:48px;cursor:pointer;font-weight:550;line-height:1.35}
.quote-choices input,.quote-consent input{flex-shrink:0;appearance:auto;width:1.25rem;height:1.25rem;accent-color:var(--ink)}
.quote-consent label{align-items:flex-start}.quote-consent input{margin-top:.15rem}
.quote-error{color:#9c241b;font-weight:700;line-height:1.45;font-size:.96rem}.quote-error p{margin-top:.4rem}.quote-field--error input,.quote-field--error textarea{border-width:3px!important}
.quote-errors{border:3px solid currentColor;border-radius:12px;padding:1.2rem;margin-bottom:1.5rem}.quote-errors h2{font-size:1.35rem}.quote-errors ul{padding-left:1.2rem;margin:.8rem 0}.quote-errors a{text-decoration:underline;text-underline-offset:.2em;line-height:1.6}
.quote-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.quote-aside{border-left:3px solid var(--sun-deep);padding-left:1.4rem}.quote-aside h2{font-size:1.45rem;margin-bottom:.8rem}.quote-aside p{line-height:1.65;margin-bottom:1rem}
:root[data-tint=on] .quote-error{color:#ffb4a9}:root[data-tint=on] .quote-choices input,:root[data-tint=on] .quote-consent input{accent-color:var(--sun)}
[data-vehicle-fields][hidden],[data-window-fields][hidden]{display:none}
@media(max-width:760px){.quote-layout{grid-template-columns:1fr}.quote-aside{margin-top:1rem}.quote-choices>div:not(.quote-error){grid-template-columns:1fr}.quote-contact>div:not(.quote-error){grid-template-columns:1fr 1fr}}

.quote-form [hidden]{display:none!important}
.quote-security{border-top:2px solid var(--line);padding-top:1.5rem;margin:1.5rem 0}.quote-security h2{font-size:1.15rem;margin-bottom:.8rem}.quote-turnstile{width:100%;min-height:65px}.quote-security a{text-decoration:underline}.quote-form button[disabled]{opacity:.65;cursor:wait}
.quote-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1rem}
.quote-grid--vehicle{grid-template-columns:minmax(5rem,.6fr) repeat(2,minmax(0,1fr))}
.quote-optional>summary{font-size:1.35rem;font-weight:750;line-height:1.4;cursor:pointer;min-height:48px;padding:.35rem 0 .8rem}
.quote-optional>summary>span,.quote-optional-label{font-size:.85rem;font-weight:550;color:var(--muted);white-space:nowrap}
.quote-optional[open]>summary{margin-bottom:.6rem}
.quote-contact>div:not(.quote-error){grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:520px){.quote-grid,.quote-grid--vehicle{grid-template-columns:1fr}.quote-contact>div:not(.quote-error){grid-template-columns:1fr}}
