#buscador-llantas { scroll-margin-top: 110px; }
.quote-layout { background: #fff; padding: 54px 0 52px; }
.quote-layout__inner { width: min(100%, 900px); margin: auto; color: #171b24; }
.quote-layout__heading { margin-bottom: 34px; text-align: center; }
.quote-layout__heading h1 { margin: 0 0 8px; color: #171b24; }
.quote-step { margin-bottom: 30px; }
.quote-step__heading { display: flex; gap: 12px; align-items: center; padding-bottom: 12px; border-bottom: 1px solid #d9dde3; }
.quote-step__number { display: grid; width: 27px; height: 27px; place-items: center; border-radius: 50%; background: #d21f32; color: #fff; }
.quote-page__items { display: grid; }
.quote-page__item { display: grid; grid-template-columns: 118px minmax(0, 1fr) 170px 70px; gap: 18px; align-items: center; padding: 15px 0; border-bottom: 1px solid #e0e3e7; }
.quote-page__image { width: 118px; height: 100px; object-fit: contain; }
.quote-page__details h3, .quote-page__details p { margin: 0 0 4px; }
.quote-page__quantity-controls { display: flex; }
.quote-page__quantity-controls button, .quote-page__quantity-controls input { height: 38px; border: 1px solid #cbd1d9; text-align: center; }
.quote-page__quantity-controls button { width: 39px; }
.quote-page__quantity-controls input { width: 47px; }
.quote-page__remove { border: 0; background: transparent; color: #d21f32; cursor: pointer; }
.quote-page__add, .quote-help a { color: #c8272f; font-weight: 700; }
.quote-page__empty { padding: 22px 0; }
.quote-page__notice, .quote-request-form__summary { padding: 11px 14px; background: #fff0f1; color: #76141a; }
.quote-request-form__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.quote-field--message { grid-column: 1 / -1; }
.quote-field input, .quote-field textarea { width: 100%; border: 1px solid #cbd1d9; padding: 10px 12px; }
.quote-request-form__error { color: #a51d25; font-weight: 700; }
.quote-request-form__submit-row { margin-top: 16px; text-align: right; }
.quote-request-form__channel-status, .quote-request-form__manual-link { display: block; margin-bottom: 12px; font-weight: 700; }
.quote-help { display: flex; gap: 14px; justify-content: center; margin-top: 26px; padding-top: 14px; border-top: 1px solid #d9dde3; }
@media (max-width: 767px) { #buscador-llantas { scroll-margin-top: 80px; } .quote-layout__heading { text-align: left; } .quote-page__item { grid-template-columns: 72px minmax(0, 1fr) 36px; gap: 10px; } .quote-page__image { width: 72px; height: 72px; } .quote-page__quantity { grid-column: 2 / 3; } .quote-page__remove { grid-column: 3; grid-row: 1; } .quote-request-form__grid { grid-template-columns: 1fr; } }
.quote-add-button, .quote-notice__view, .quote-notice__close { display: inline-flex; min-height: 46px; align-items: center; justify-content: center; padding: 10px 18px; border-radius: 7px; font-size: 15px; font-weight: 700; text-decoration: none; cursor: pointer; }
.quote-add-button { border: 1px solid #c8272f; background: #c8272f; color: #fff; }
.quote-add-button:hover { background: #a91f26; color: #fff; }
.quote-add-button:disabled { cursor: wait; opacity: .7; }
.catalog-product-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 16px; }
.catalog-whatsapp-btn { display: inline-flex; min-height: 46px; align-items: center; justify-content: center; padding: 10px 18px; border-radius: 7px; background: #25d366; color: #fff; font-size: 15px; font-weight: 700; text-decoration: none; }
.catalog-whatsapp-btn:hover { background: #128c7e; color: #fff; }
.catalog-whatsapp-btn:focus-visible { outline: 3px solid #111; outline-offset: 3px; }
.catalog-product-actions--quote .catalog-product-btn--secondary { border: 1px solid #c8272f; background: #fff; color: #c8272f; }
.catalog-product-actions--quote .catalog-product-btn--secondary:hover { background: #fff0f1; color: #8f171e; }
.catalog-product-actions--quote .catalog-product-btn--secondary:active { background: #f9dadd; }
.catalog-product-actions--quote .catalog-product-btn--secondary:disabled { border-color: #9ca3af; background: #f3f4f6; color: #6b7280; }
.catalog-product-actions--quote .catalog-product-btn--tertiary { display: inline-flex; align-items: center; min-height: 46px; padding: 10px 4px; color: #5b6470; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
.catalog-product-actions--quote .catalog-product-btn--tertiary:hover { color: #20242a; }
.catalog-product-actions--quote .catalog-product-btn--tertiary:focus-visible { outline: 3px solid #111; outline-offset: 3px; }
.quote-notice__view { min-height: auto; padding: 0; color: #8f171e; font-size: 14px; font-weight: 800; text-decoration: underline; text-underline-offset: 3px; }
.quote-notice__view:hover { color: #681016; }
.quote-notice__close { width: 32px; min-height: 32px; padding: 0; border: 0; border-radius: 50%; background: transparent; color: #4b5563; font-size: 22px; line-height: 1; }
.quote-notice__close:hover { background: #e8f5ec; color: #20242a; }
.quote-notice { position: fixed; z-index: 2000; right: 18px; bottom: 18px; width: min(390px, calc(100% - 36px)); }
.quote-notice[hidden] { display: none; }
.quote-notice__panel { display: grid; grid-template-columns: auto 1fr auto; gap: 12px; align-items: center; padding: 14px 14px 14px 16px; border: 1px solid #a7d7b5; border-left: 5px solid #238442; border-radius: 10px; background: #f4fbf6; box-shadow: 0 10px 30px rgba(0, 0, 0, .18); }
.quote-notice__icon { display: grid; width: 30px; height: 30px; place-items: center; border-radius: 50%; background: #238442; color: #fff; font-size: 18px; font-weight: 800; }
.quote-notice__content { display: flex; flex-wrap: wrap; gap: 4px 12px; align-items: baseline; color: #173b23; }
.quote-notice__content strong { font-size: 15px; }
.quote-feedback { position: fixed; z-index: 2001; right: 16px; bottom: 16px; max-width: min(420px, calc(100% - 32px)); margin: 0; padding: 14px 16px; border: 1px solid #9f1d24; border-radius: 8px; background: #fff; color: #9f1d24; font-weight: 700; box-shadow: 0 8px 24px rgba(0, 0, 0, .18); }
.quote-add-button:focus-visible, .quote-notice__view:focus-visible, .quote-notice__close:focus-visible { outline: 3px solid #111; outline-offset: 3px; }
@media (max-width: 480px) { .catalog-product-actions--quote > * { width: 100%; } .catalog-product-actions--quote .catalog-product-btn--tertiary { justify-content: center; } }
@media (max-width: 480px) { .quote-notice { right: 12px; bottom: 12px; width: calc(100% - 24px); } }
@media (prefers-reduced-motion: reduce) { .quote-notice * { transition: none !important; animation: none !important; } }
