/* Two-column order quote; the same fields become two short steps on phones. */
.modal__dialog:has(.order-form){max-width:1080px;padding:30px 34px;max-height:94dvh}
.modal__dialog:has(.order-form) .eyebrow{font-size:.68rem;margin:0}
.modal__dialog:has(.order-form) .modal__title{font-size:2rem;margin:6px 0}
.modal__dialog:has(.order-form) .inquiry__hook{background:none;border:0;padding:0;margin:0 0 22px;font-size:.88rem;color:var(--muted)}
.order-form{gap:0!important}.order-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:30px;align-items:start}
.order-pane{display:grid;gap:13px;min-width:0}.order-details{border-left:1px solid var(--line);padding-left:30px}
.order-section-title{display:flex;align-items:center;gap:10px;font-size:1rem!important;margin:0 0 3px!important;letter-spacing:0!important}
.order-section-title>span{font-size:.7rem;color:var(--accent);letter-spacing:.1em}
.order-form .form__row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
.order-product-row{display:grid;grid-template-columns:minmax(0,1fr) 86px;gap:12px}
.order-form .field{min-width:0}.order-form .field label{font-size:.75rem;margin-bottom:5px}
.order-form .field input,.order-form .field select,.order-form .field textarea{padding:10px 12px;font-size:.88rem;min-height:43px;width:100%;min-width:0}
.order-form .field select{padding-right:32px;background-position:right 12px center;text-overflow:ellipsis}
.order-form .field textarea{min-height:75px;resize:vertical}
.order-form .form__note{font-size:.75rem;line-height:1.5;margin:0}
.quote-estimate{padding:17px;border:1px solid #6b6340;border-radius:12px;background:rgba(255,242,135,.055);margin:0;min-width:0}
.quote-estimate h3{font-size:.85rem;margin:0 0 12px}.quote-estimate dl{margin:0}.quote-estimate dl>div{display:flex;justify-content:space-between;gap:12px;margin:7px 0;align-items:baseline}.quote-estimate dt{font-size:.8rem}.quote-estimate dd{margin:0;white-space:nowrap;font-size:.88rem;font-variant-numeric:tabular-nums}.quote-estimate .quote-total{border-top:1px solid var(--line);padding-top:10px;margin-top:12px;font-weight:700}.quote-total dd{font-size:1.4rem;color:var(--accent)}.quote-estimate p{font-size:.73rem;line-height:1.5;margin:9px 0 0;color:#c5bfb3}.quote-estimate .quote-import{color:#fff287;font-weight:600}
.quote-special{display:flex;gap:9px;align-items:flex-start;font-size:.8rem;line-height:1.5;margin-top:10px}.quote-special input{margin-top:4px;width:16px;height:16px;flex-shrink:0;accent-color:#fff287}.quote-region-note{font-size:.73rem;color:var(--muted);margin:8px 0 0;line-height:1.5}
.quote-address{border:0;padding:0;margin:0;display:grid;gap:10px;min-width:0}.quote-address legend{font-size:.85rem;font-weight:600;margin:8px 0}.quote-address legend span{font-size:.72rem;font-weight:400;color:var(--muted);margin-left:6px}
.order-form details{margin:0;font-size:.76rem}.order-form summary{cursor:pointer;color:var(--muted);line-height:1.5}.order-form details[open]>summary{margin-bottom:10px}
.order-submit{border-top:1px solid var(--line);padding-top:16px;display:grid;gap:9px;margin-top:3px}.order-submit .btn{width:100%;justify-content:space-between;font-size:.88rem;padding:13px 18px}
.order-form [hidden]{display:none!important}.order-mobile-steps,.order-continue,.order-mobile-summary{display:none}
/* Inline product forms get the same compact layout when enough space exists. */
.product-quote-form .order-layout{grid-template-columns:1fr}.product-quote-form .order-details{padding-left:0;border-left:0;border-top:1px solid var(--line);padding-top:20px}
@media(max-width:1000px){
 .modal__dialog:has(.order-form){max-width:720px;padding:24px;max-height:94dvh}
 .modal__dialog:has(.order-form) .modal__title{font-size:1.7rem}
 .modal__dialog:has(.order-form) .inquiry__hook{margin-bottom:16px;font-size:.8rem;padding-right:0}
 .order-layout{grid-template-columns:1fr;gap:0}.order-details{padding:0;border:0}.product-quote-form .order-details{border:0;padding:0}
 .order-mobile-steps{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:18px}
 .order-mobile-steps button{font:inherit;font-size:.8rem;text-align:left;background:transparent;border:0;border-bottom:2px solid var(--line);padding:0 0 10px;color:var(--muted);cursor:pointer}
 .order-mobile-steps button[aria-current]{color:var(--accent);border-color:var(--accent)}.order-mobile-steps span{font-size:.72rem;margin-right:6px}
 .order-form[data-order-step=setup] .order-details,.order-form[data-order-step=details] .order-setup{display:none}
 .order-continue{display:flex;justify-content:space-between;width:100%;font-size:.85rem;padding:12px 16px}
 .order-mobile-summary{display:block;margin:0;padding:12px;border:1px solid #6b6340;border-radius:8px;color:var(--accent);font-size:.85rem;line-height:1.5}
 .order-form .field input,.order-form .field select,.order-form .field textarea{font-size:16px}
 .order-form .quote-quasar-options{grid-template-columns:1fr 1fr}.quote-estimate .quote-total{flex-wrap:wrap}
 .order-section-title{font-size:.9rem!important}
 .order-form .field label{font-size:.72rem}.order-form .form__row{gap:10px}
}
@media(max-width:359px){.modal__dialog:has(.order-form){padding:22px 18px}.order-form .form__row{grid-template-columns:1fr}.order-form .quote-quasar-options{grid-template-columns:1fr}.order-product-row{grid-template-columns:minmax(0,1fr) 68px}}
@media(prefers-reduced-motion:reduce){.order-form{scroll-behavior:auto}}
/* Preserve a usable complete form when scripting is unavailable. */
.order-form:not([data-order-enhanced]) .order-mobile-steps,.order-form:not([data-order-enhanced]) .order-continue{display:none}
.order-form:not([data-order-enhanced]) .order-details{display:grid}
