/* Request list and six information stages. The existing horizontal flow and state own navigation. */
.catalog-redesign #quoteDrawer { color: #1a1d1b; font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif; }
.catalog-redesign #quoteDrawer [hidden] { display: none !important; }
.catalog-redesign #quoteDrawer .drawer-backdrop { background: #101510b8; backdrop-filter: blur(5px); }
.catalog-redesign #quoteDrawer .drawer-panel { width: min(1040px, calc(100% - 40px)); height: min(860px, calc(100dvh - 40px)); border: 1px solid #ced4c4; border-radius: 8px; background: #f4f4ef; box-shadow: 0 24px 80px #0d160d40; }
.catalog-redesign #quoteDrawer .drawer-head { align-items: center; gap: 20px; padding: 22px 26px; border-bottom: 3px solid #f7df22; background: #1a1d1b; }
.catalog-redesign #quoteDrawer .drawer-head .eyebrow { margin: 0 0 7px; color: #f7df22; font-size: 10px; font-weight: 700; letter-spacing: .12em; }
.catalog-redesign #quoteDrawer .drawer-head h2 { margin: 0; color: #fff; font-size: clamp(23px, 2.4vw, 30px); font-weight: 800; letter-spacing: -.035em; line-height: 1.15; }
.catalog-redesign #quoteDrawer .drawer-head > .icon-button { flex: 0 0 44px; width: 44px; height: 44px; min-height: 44px; border: 1px solid #536048; border-radius: 4px; background: #30372a; color: #fff; }
.catalog-redesign #quoteDrawer .drawer-head > .icon-button svg { width: 22px; height: 22px; }
.catalog-redesign #quoteDrawer .quote-progress { gap: 14px; padding: 16px 26px; border-color: #dce1d2; background: #e9ede2; }
.catalog-redesign #quoteDrawer .quote-progress [data-quote-progress] { gap: 9px; color: #737e68; font-size: 12px; }
.catalog-redesign #quoteDrawer .quote-progress span { width: 30px; height: 30px; border: 1px solid #cbd3bf; border-radius: 4px; background: #f9faf5; font-weight: 750; }
.catalog-redesign #quoteDrawer .quote-progress [data-quote-progress].active { color: #303a26; }
.catalog-redesign #quoteDrawer .quote-progress [data-quote-progress].active span { border-color: #bbc4aa; background: #dfe6d4; }
.catalog-redesign #quoteDrawer .quote-progress [data-quote-progress].current { color: #1a1d1b; }
.catalog-redesign #quoteDrawer .quote-progress [data-quote-progress].current span { border-color: #1a1d1b; background: #1a1d1b; color: #f7df22; }
.catalog-redesign #quoteDrawer .quote-progress [data-quote-progress].current strong { text-decoration: none; }
.catalog-redesign #quoteDrawer .quote-progress-line { height: 1px; border-radius: 0; background: #cdd6c0; }
.catalog-redesign #quoteDrawer .quote-progress-line::after { background: #7d8d68; }
.catalog-redesign #quoteDrawer :is(.quote-step, .quote-profile-editor-body) { scrollbar-width: thin; scrollbar-color: #a9b399 transparent; }
.catalog-redesign #quoteDrawer :is(button, input, select, textarea, a):focus-visible { outline: 2px solid #a18a00; outline-offset: 3px; }
.catalog-redesign #quoteDrawer .button { gap: 9px; min-height: 46px; padding: 11px 16px; border-radius: 4px; font-size: 13px; font-weight: 700; line-height: 1.4; white-space: normal; }
.catalog-redesign #quoteDrawer .button svg { width: 18px; height: 18px; flex-shrink: 0; }
.catalog-redesign #quoteDrawer .button.primary { border-color: #ddc91e; background: #f7df22; color: #1a1d1b; box-shadow: none; }
.catalog-redesign #quoteDrawer .button.secondary { border-color: #ccd5bf; background: #fff; color: #435333; }
.catalog-redesign #quoteDrawer button:disabled { opacity: .5; cursor: not-allowed; }

/* A compact equipment list, paired with its estimate on wide screens. */
.catalog-redesign #quoteDrawer .quote-step-list { background: #f4f4ef; }
.catalog-redesign #quoteDrawer .quote-items { display: grid; align-content: start; gap: 12px; padding: 22px; }
.catalog-redesign #quoteDrawer .quote-item { grid-template-columns: 80px minmax(0, 1fr) 40px; gap: 14px; padding: 18px; border: 1px solid #dce1d3; border-radius: 6px; background: #fff; align-items: start; }
.catalog-redesign #quoteDrawer .quote-item > img { width: 80px; height: 86px; padding: 5px; border: 1px solid #edf0e7; border-radius: 4px; background: #fafbf7; object-fit: contain; }
.catalog-redesign #quoteDrawer .quote-item > div { min-width: 0; }
.catalog-redesign #quoteDrawer .quote-item > div > strong { margin: 0 0 6px; color: #1a1d1b; font-size: 16px; font-weight: 750; letter-spacing: -.02em; line-height: 1.3; overflow-wrap: anywhere; }
.catalog-redesign #quoteDrawer .quote-item span { color: #68745d; font-size: 11px; line-height: 1.45; }
.catalog-redesign #quoteDrawer .quote-machine-note { margin-top: 9px; color: #414d35; font-size: 12px; font-weight: 600; line-height: 1.45; }
.catalog-redesign #quoteDrawer .quote-edit-item { min-height: 36px; margin-top: 8px; padding: 7px 11px; border-color: #dce1d3; border-radius: 4px; background: #f4f6ee; color: #3b4b2c; font-size: 11px; font-weight: 650; }
.catalog-redesign #quoteDrawer .quote-item > .icon-button { width: 40px; height: 40px; min-height: 40px; padding: 0; border: 1px solid #e2e5dc; border-radius: 4px; background: #fff; color: #6d765f; }
.catalog-redesign #quoteDrawer .quote-item > .icon-button svg { width: 19px; height: 19px; }
.catalog-redesign #quoteDrawer .qty-control { width: fit-content; gap: 0; margin-top: 10px; overflow: hidden; border: 1px solid #dce1d3; border-radius: 4px; background: #fff; }
.catalog-redesign #quoteDrawer .qty-control button { width: 36px; height: 36px; min-height: 36px; border: 0; border-radius: 0; background: #edf1e6; color: #36432a; }
.catalog-redesign #quoteDrawer .qty-control span { min-width: 30px; text-align: center; color: #1a1d1b; font-size: 13px; font-weight: 700; }
.catalog-redesign #quoteDrawer .quote-bundle { margin-top: 12px; padding: 10px; border: 1px solid #e5e9dc; border-left: 3px solid #d6c020; border-radius: 4px; background: #f8faf3; }
.catalog-redesign #quoteDrawer .quote-bundle-title { font-size: 10px; letter-spacing: .05em; }
.catalog-redesign #quoteDrawer .quote-bundle-option img { object-fit: contain; border-radius: 3px; background: #fff; }
.catalog-redesign #quoteDrawer .quote-bundle-option strong { font-size: 12px; font-weight: 650; }
.catalog-redesign #quoteDrawer .quote-bundle-option small { font-size: 11px; font-weight: 450; }
.catalog-redesign #quoteDrawer .quote-empty { padding: 36px 22px; border-color: #cbd4be; border-radius: 5px; background: #fff; color: #6a765e; font-size: 14px; }
.catalog-redesign #quoteDrawer .quote-reservation { gap: 20px; padding: 24px; border-top: 0; background: #22271f; color: #fff; }
.catalog-redesign #quoteDrawer .quote-reservation h3 { color: #fff; font-size: 22px; font-weight: 750; letter-spacing: -.03em; line-height: 1.25; }
.catalog-redesign #quoteDrawer .quote-reservation p { margin-top: 12px; color: #c0c9b4; font-size: 12px; line-height: 1.65; }
.catalog-redesign #quoteDrawer .quote-reservation-action { gap: 16px; }
.catalog-redesign #quoteDrawer .quote-total-summary { padding: 18px 20px; gap: 8px 16px; border: 1px solid #47553a; border-radius: 5px; background: #22271f; color: #fff; }
.catalog-redesign #quoteDrawer .quote-total-summary span { color: #c0cbb4; font-size: 12px; font-weight: 600; }
.catalog-redesign #quoteDrawer .quote-total-summary strong { color: #f7df22; font-size: 28px; font-weight: 800; letter-spacing: -.04em; }
.catalog-redesign #quoteDrawer .quote-total-summary small { color: #bdc9b0; font-size: 11px; font-weight: 450; line-height: 1.5; }
.catalog-redesign #quoteDrawer .quote-total-summary .quote-total-delivery-fee { color: #f6e388 !important; font-weight: 650 !important; }
.catalog-redesign #quoteDrawer .quote-reservation .quote-total-summary { grid-template-columns: minmax(0, 1fr); gap: 9px; padding: 20px 0 0; border: 0; border-top: 1px solid #45513a; border-radius: 0; background: transparent; }
.catalog-redesign #quoteDrawer .quote-reservation .quote-total-summary strong { font-size: 38px; }
@media (min-width: 821px) {
  .catalog-redesign #quoteDrawer .drawer-panel[data-quote-step="list"] { height: min(680px, calc(100dvh - 40px)); }
  .catalog-redesign #quoteDrawer .quote-step-list:has(.quote-reservation:not([hidden])) { display: grid; grid-template-columns: minmax(0, 1fr) 310px; align-items: start; align-content: start; }
  .catalog-redesign #quoteDrawer .quote-step-list .quote-reservation { position: sticky; top: 0; align-content: start; margin-top: 0; min-height: 100%; }
}

/* One active section at a time, with compact editable summaries above it. */
.catalog-redesign #quoteDrawer .quote-form { padding: 22px 26px 26px; gap: 18px; border: 0; background: #f4f4ef; }
.catalog-redesign #quoteDrawer .quote-form-head { align-items: center; gap: 16px; }
.catalog-redesign #quoteDrawer .quote-form-head h3 { color: #2e3924; font-size: 19px; font-weight: 750; letter-spacing: -.025em; }
.catalog-redesign #quoteDrawer .quote-form-head .eyebrow { margin-bottom: 4px; color: #78846c; font-size: 9px; font-weight: 650; letter-spacing: .08em; }
.catalog-redesign #quoteDrawer .quote-info-wizard { gap: 10px; }
.catalog-redesign #quoteDrawer .quote-info-panel { gap: 20px; padding: 22px; border: 1px solid #dce2d2; border-radius: 6px; background: #fff; box-shadow: none; }
.catalog-redesign #quoteDrawer .quote-info-stage[data-stage-state="active"] .quote-info-panel { border-color: #d2cf9b; box-shadow: none; }
.catalog-redesign #quoteDrawer .quote-info-stage-head { grid-template-columns: 42px minmax(0, 1fr); gap: 14px; margin: -22px -22px 0; padding: 20px 22px; border-bottom: 1px solid #e1e6d8; border-radius: 5px 5px 0 0; background: #eef2e7; }
.catalog-redesign #quoteDrawer .quote-info-stage-head > span { width: 42px; height: 42px; border-radius: 4px; background: #22271f; color: #f7df22; font-size: 18px; font-weight: 750; }
.catalog-redesign #quoteDrawer .quote-info-stage-head small { margin-bottom: 5px; color: #78846b; font-size: 9px; font-weight: 650; letter-spacing: .1em; }
.catalog-redesign #quoteDrawer .quote-info-stage-head h4 { color: #26311e; font-size: 21px; font-weight: 750; letter-spacing: -.025em; line-height: 1.3; }
.catalog-redesign #quoteDrawer :is(.quote-customer-type-fields, .quote-fulfillment-fields, .quote-worksite-fields) { padding: 0; border: 0; border-radius: 0; background: transparent; }
.catalog-redesign #quoteDrawer :is(.quote-customer-type-fields, .quote-fulfillment-fields, .quote-worksite-decision, .quote-message-decision) legend { float: none; width: auto; margin: 0 0 10px; color: #647254; font-size: 12px; font-weight: 650; line-height: 1.5; }
.catalog-redesign #quoteDrawer .quote-field-hint { margin: 0 0 12px; color: #738066; font-size: 12px; line-height: 1.55; }
.catalog-redesign #quoteDrawer .quote-choice-grid { gap: 12px; margin-top: 10px; }
.catalog-redesign #quoteDrawer .quote-choice-card { min-height: 94px; padding: 17px; border: 1px solid #d3dbc6; border-radius: 5px; background: #f8faf4; box-shadow: none; }
.catalog-redesign #quoteDrawer .quote-choice-card input { width: 20px; height: 20px; margin-top: 1px; accent-color: #c6b019; }
.catalog-redesign #quoteDrawer .quote-choice-card strong { color: #29371f; font-size: 15px; font-weight: 700; line-height: 1.35; }
.catalog-redesign #quoteDrawer .quote-choice-card small { color: #6d7b5d; font-size: 12px; font-weight: 450; line-height: 1.55; }
.catalog-redesign #quoteDrawer .quote-choice-card:has(input:checked) { border-color: #22271f; background: #22271f; box-shadow: inset 3px 0 #f7df22; }
.catalog-redesign #quoteDrawer .quote-choice-card:has(input:checked) strong { color: #fff; }
.catalog-redesign #quoteDrawer .quote-choice-card:has(input:checked) small { color: #c3d0b5; }
.catalog-redesign #quoteDrawer .quote-choice-card.compact { min-height: 100px; padding: 13px; }
.catalog-redesign #quoteDrawer .quote-choice-card.compact strong { font-size: 13px; }
.catalog-redesign #quoteDrawer .quote-choice-card.compact small { font-size: 11px; }
.catalog-redesign #quoteDrawer .quote-profile-fields { gap: 17px 20px; }
.catalog-redesign #quoteDrawer :is(.quote-form, .quote-profile-editor-body) label:not(.quote-choice-card):not(.checkbox-line) { color: #59684a; font-size: 12px; font-weight: 650; line-height: 1.4; }
.catalog-redesign #quoteDrawer :is(input:not([type="checkbox"]):not([type="radio"]), select, textarea) { min-width: 0; width: 100%; min-height: 46px; padding: 11px 12px; border: 1px solid #ccd7bf; border-radius: 4px; background: #fcfdf9; color: #1a1d1b; font: inherit; font-size: 14px; font-weight: 500; line-height: 1.4; box-shadow: none; }
.catalog-redesign #quoteDrawer textarea { min-height: 125px; resize: vertical; }
.catalog-redesign #quoteDrawer :is(input, textarea)::placeholder { color: #8b967f; opacity: 1; font-weight: 400; }
.catalog-redesign #quoteDrawer .structured-address { gap: 14px; }
.catalog-redesign #quoteDrawer .quote-profile-fields > .structured-address { padding-top: 18px; border-top: 1px solid #e4eadb; }
.catalog-redesign #quoteDrawer .address-helper { color: #7b886e; font-size: 11px; font-weight: 450; line-height: 1.55; }
.catalog-redesign #quoteDrawer .quote-worksite-fields { gap: 14px; }
.catalog-redesign #quoteDrawer .quote-worksite-fields h4 { color: #46563a; font-size: 15px; font-weight: 650; line-height: 1.4; }
.catalog-redesign #quoteDrawer .quote-delivery-options { margin-top: 18px; padding-top: 18px; border-top-color: #dfe6d4; }
.catalog-redesign #quoteDrawer .quote-delivery-options > strong { color: #59684a; font-size: 12px; font-weight: 650; }
.catalog-redesign #quoteDrawer .quote-delivery-price-note { margin-top: 15px; padding: 13px 15px; border: 1px solid #dfd398; border-left: 3px solid #c9ac1b; border-radius: 4px; background: #fffbeb; color: #716026; font-size: 12px; line-height: 1.6; }
.catalog-redesign #quoteDrawer .quote-stage-confirm-wrap { padding-top: 4px; justify-items: end; }
.catalog-redesign #quoteDrawer .quote-stage-confirm-wrap .button { width: auto; min-width: 250px; }
.catalog-redesign #quoteDrawer .quote-info-summary { grid-template-columns: 28px minmax(0, 1fr) 42px; gap: 12px; padding: 13px 15px; border-color: #dde5d2; border-radius: 5px; background: #fff; }
.catalog-redesign #quoteDrawer .quote-info-summary-check { border-radius: 4px; background: #e7efd9; color: #547731; }
.catalog-redesign #quoteDrawer .quote-info-summary small { margin-bottom: 4px; color: #89957b; font-size: 10px; font-weight: 500; }
.catalog-redesign #quoteDrawer .quote-info-summary strong { font-size: 14px; font-weight: 650; line-height: 1.5; }
.catalog-redesign #quoteDrawer :is(.quote-info-summary > button, .quote-review-card button) { width: 42px; height: 42px; border: 1px solid #dbe4ce; border-radius: 4px; background: #f4f7ee; color: #5a6e42; }
.catalog-redesign #quoteDrawer .quote-address-card { gap: 3px 16px; color: #5d6c4d; font-size: 12px; line-height: 1.5; }
.catalog-redesign #quoteDrawer .quote-account-prefill-note { padding: 13px; border: 1px solid #dbe5cc; border-radius: 4px; background: #f4f8ed; color: #566c3f; font-size: 12px; font-weight: 500; }
.catalog-redesign #quoteDrawer .checkbox-line { min-height: 46px; padding: 12px; border-radius: 4px; border-color: #dce4d0; background: #f8fbf2; font-size: 12px; color: #526a3a; }
.catalog-redesign #quoteDrawer .checkbox-line input { accent-color: #968500; }
.catalog-redesign #quoteDrawer .quote-final-review { gap: 12px; }
.catalog-redesign #quoteDrawer .quote-review-ready { padding: 13px 15px; border-color: #c8ddb0; border-radius: 4px; background: #f0f7e7; color: #4e702e; font-size: 12px; font-weight: 550; }
.catalog-redesign #quoteDrawer .quote-review-card { gap: 7px; padding: 16px 64px 16px 16px; border-color: #dfe6d5; border-radius: 4px; background: #f8faf4; }
.catalog-redesign #quoteDrawer .quote-review-card > small { color: #82916e; font-size: 10px; font-weight: 650; letter-spacing: .06em; }
.catalog-redesign #quoteDrawer .quote-review-card > div { color: #36472a; font-size: 13px; line-height: 1.55; }
.catalog-redesign #quoteDrawer .quote-review-equipment { padding-right: 16px; }
.catalog-redesign #quoteDrawer .quote-review-equipment-list > div { padding-bottom: 8px; border-bottom: 1px solid #e1e8d8; }
.catalog-redesign #quoteDrawer .quote-review-equipment-list > div:last-child { padding-bottom: 0; border-bottom: 0; }
.catalog-redesign #quoteDrawer .quote-review-equipment-list span { color: #77876a; font-size: 11px; }
.catalog-redesign #quoteDrawer .drawer-actions { padding: 0; gap: 12px; border: 0; background: transparent; }
.catalog-redesign #quoteDrawer .form-legal-note { margin: 0; color: #79876c; font-size: 11px; line-height: 1.6; }
.catalog-redesign #quoteDrawer .form-legal-note a { color: #5a6d46; }
.catalog-redesign #quoteDrawer .quote-success { gap: 18px; padding: 32px; background: #f4f4ef; }
.catalog-redesign #quoteDrawer .quote-success-icon { width: 72px; height: 72px; border-radius: 8px; background: #e3eed7; color: #43742e; }
.catalog-redesign #quoteDrawer .quote-success h3 { color: #25351c; font-size: clamp(26px, 4vw, 38px); font-weight: 800; letter-spacing: -.035em; }
.catalog-redesign #quoteDrawer .quote-success .eyebrow { color: #839670; font-size: 10px; letter-spacing: .1em; }
.catalog-redesign #quoteDrawer .quote-success > p:not(.eyebrow) { color: #6e8060; font-size: 14px; line-height: 1.6; }
/* Keep the middle slide's width after the cart has been cleared, without exposing its hidden form. */
.catalog-redesign #quoteDrawer .drawer-panel[data-quote-step="success"] #quoteForm[hidden] { display: grid !important; visibility: hidden; pointer-events: none; }
.catalog-redesign #quoteDrawer .quote-profile-editor-panel { border: 1px solid #cdd7c0; border-radius: 7px; background: #f4f6ef; }
.catalog-redesign #quoteDrawer .quote-profile-editor-head { padding: 20px; background: #22271f; color: #fff; }
.catalog-redesign #quoteDrawer .quote-profile-editor-head .eyebrow { color: #e9d646; font-size: 10px; }
.catalog-redesign #quoteDrawer .quote-profile-editor-head h3 { color: #fff; font-size: 23px; font-weight: 750; }
.catalog-redesign #quoteDrawer .quote-profile-editor-head .icon-button { border-radius: 4px; background: #36442a; color: #fff; }
.catalog-redesign #quoteDrawer .quote-profile-editor-actions { background: #fff; }
/* Invalid attempts must remain visible and animated; these rules win over selected/focus styling. */
.catalog-redesign #quoteDrawer .reservation-field-invalid:not(.quote-choice-grid),
.catalog-redesign #quoteDrawer .reservation-field-invalid > .quote-choice-card { border-color: #b42318; outline: 2px solid #b42318; outline-offset: -2px; background: #fff5f3; }
.catalog-redesign #quoteDrawer .reservation-field-invalid > .quote-choice-card :is(strong, small) { color: #91352c; }
.catalog-redesign #quoteDrawer .reservation-field-invalid::placeholder { color: #b42318; }
.catalog-redesign #quoteDrawer .reservation-field-error { color: #b42318; font-size: 12px; font-weight: 600; }
@media (max-width: 820px) {
  .catalog-redesign #quoteDrawer .drawer-panel { width: min(720px, calc(100% - 24px)); height: min(860px, calc(100dvh - 24px)); }
  .catalog-redesign #quoteDrawer .quote-step-list .quote-reservation { margin-top: auto; }
  .catalog-redesign #quoteDrawer .quote-items { padding: 18px; }
  .catalog-redesign #quoteDrawer .quote-reservation { padding: 22px; gap: 18px; }
  .catalog-redesign #quoteDrawer .quote-reservation .quote-total-summary { grid-template-columns: minmax(0, 1fr) auto; padding-top: 16px; }
  .catalog-redesign #quoteDrawer .quote-reservation .quote-total-summary strong { font-size: 30px; }
}
@media (max-width: 620px) {
  .catalog-redesign #quoteDrawer .drawer-panel { inset: 8px; width: auto; height: auto; border-radius: 6px; }
  .catalog-redesign #quoteDrawer .drawer-head { gap: 12px; padding: 17px 15px; }
  .catalog-redesign #quoteDrawer .drawer-head h2 { font-size: 21px; line-height: 1.2; }
  .catalog-redesign #quoteDrawer .drawer-head .eyebrow { font-size: 9px; margin-bottom: 5px; }
  .catalog-redesign #quoteDrawer .quote-progress { grid-template-columns: minmax(0, 1fr) 12px minmax(0, 1fr) 12px minmax(0, 1fr); gap: 3px; padding: 12px; }
  .catalog-redesign #quoteDrawer .quote-progress [data-quote-progress] { flex-direction: column; gap: 5px; font-size: 10px; }
  .catalog-redesign #quoteDrawer .quote-progress span { width: 26px; height: 26px; }
  .catalog-redesign #quoteDrawer .quote-progress-line { min-width: 12px; }
  .catalog-redesign #quoteDrawer .quote-items { gap: 10px; padding: 12px; }
  .catalog-redesign #quoteDrawer .quote-item { grid-template-columns: 54px minmax(0, 1fr) 34px; padding: 12px; gap: 10px; }
  .catalog-redesign #quoteDrawer .quote-item > img { width: 54px; height: 62px; padding: 3px; }
  .catalog-redesign #quoteDrawer .quote-item > div > strong { font-size: 14px; }
  .catalog-redesign #quoteDrawer .quote-item > .icon-button { width: 34px; height: 38px; min-height: 38px; }
  .catalog-redesign #quoteDrawer .quote-reservation { padding: 20px 16px; gap: 14px; }
  .catalog-redesign #quoteDrawer .quote-reservation h3 { font-size: 20px; }
  .catalog-redesign #quoteDrawer .quote-reservation p { margin-top: 9px; font-size: 11px; line-height: 1.6; }
  .catalog-redesign #quoteDrawer .quote-form { padding: 15px 12px 18px; gap: 15px; }
  .catalog-redesign #quoteDrawer .quote-form-head { align-items: stretch; gap: 14px; }
  .catalog-redesign #quoteDrawer .quote-form-head .button { width: fit-content; }
  .catalog-redesign #quoteDrawer .quote-form-head h3 { font-size: 18px; }
  .catalog-redesign #quoteDrawer .quote-info-panel { padding: 15px; gap: 16px; }
  .catalog-redesign #quoteDrawer .quote-info-stage-head { grid-template-columns: 34px minmax(0, 1fr); margin: -15px -15px 0; padding: 16px 15px; gap: 11px; }
  .catalog-redesign #quoteDrawer .quote-info-stage-head > span { width: 34px; height: 34px; font-size: 15px; }
  .catalog-redesign #quoteDrawer .quote-info-stage-head h4 { font-size: 18px; }
  .catalog-redesign #quoteDrawer .quote-info-stage-head small { font-size: 8px; }
  .catalog-redesign #quoteDrawer .quote-choice-card { min-height: 78px; padding: 14px; }
  .catalog-redesign #quoteDrawer .quote-choice-card.compact { min-height: 70px; }
  .catalog-redesign #quoteDrawer .quote-choice-card strong { font-size: 14px; }
  .catalog-redesign #quoteDrawer .quote-choice-card small { font-size: 11px; }
  .catalog-redesign #quoteDrawer :is(input:not([type="checkbox"]):not([type="radio"]), select, textarea) { font-size: 16px; }
  .catalog-redesign #quoteDrawer .quote-profile-fields { gap: 14px; }
  .catalog-redesign #quoteDrawer .address-line-grid { grid-template-columns: minmax(0, 1fr) 80px; }
  .catalog-redesign #quoteDrawer .address-details-grid { grid-template-columns: 95px minmax(0, 1fr); }
  .catalog-redesign #quoteDrawer .address-details-grid > label:last-child { grid-column: 1 / -1; }
  .catalog-redesign #quoteDrawer .quote-stage-confirm-wrap .button { width: 100%; min-width: 0; }
  .catalog-redesign #quoteDrawer .quote-info-summary { grid-template-columns: 24px minmax(0, 1fr) 40px; gap: 9px; padding: 12px; }
  .catalog-redesign #quoteDrawer .quote-info-summary-check { width: 24px; height: 24px; }
  .catalog-redesign #quoteDrawer .quote-info-summary > button { width: 40px; height: 40px; }
  .catalog-redesign #quoteDrawer .quote-address-card { grid-template-columns: minmax(0, 1fr); font-size: 12px; }
  .catalog-redesign #quoteDrawer .quote-total-summary { padding: 16px; }
  .catalog-redesign #quoteDrawer .quote-total-summary strong { font-size: 26px; }
  .catalog-redesign #quoteDrawer .quote-review-card { padding: 14px 58px 14px 14px; }
  .catalog-redesign #quoteDrawer .quote-review-equipment { padding-right: 14px; }
  .catalog-redesign #quoteDrawer .quote-success { padding: 25px 18px; }
}

/* Submission feedback remains separate from the request, and only appears after its existing triggers. */
.catalog-redesign #quoteSubmissionOverlay { background: #151c14ee; backdrop-filter: blur(5px); }
.catalog-redesign #quoteSubmissionOverlay .quote-submission-card { padding: clamp(28px, 5vw, 48px); border-radius: 8px; border: 1px solid #c9d4bf; border-top: 4px solid #f7df22; background: #f7f9f2; box-shadow: 0 24px 70px #0a100940; }
.catalog-redesign #quoteSubmissionOverlay .quote-submission-card h2 { color: #26371d; font-size: clamp(26px, 4vw, 40px); line-height: 1.15; }
.catalog-redesign #quoteSubmissionOverlay .quote-submission-card > p:not(.eyebrow) { color: #6f805f; font-size: 14px; }
.catalog-redesign #quoteSubmissionOverlay :is(.quote-submission-spinner, .quote-submission-check) { width: 86px; height: 86px; }
.catalog-redesign #quoteSubmissionOverlay .quote-submission-close { min-height: 48px; border-radius: 4px; background: #f7df22; font-size: 14px; }
@media (prefers-reduced-motion: reduce) {
  .catalog-redesign #quoteDrawer :is(.drawer-panel, .quote-choice-card, .quote-info-summary, .quote-flow-track, .quote-progress span, .quote-progress-line::after) { transition: none; }
}
