/* WIM | Carrinho amplo. Mantem dados e acoes nativas do Morelia. */
body.template-cart {
  background: #fff;
  color: #493b35;
}
body.template-cart .js-adbar { display: none !important; }
body.template-cart #shoppingCartPage { padding: 18px 0 52px; }
body.template-cart #shoppingCartPage > .container,
body.template-cart #shoppingCartPage > form.container { max-width: 1240px !important; width: calc(100% - 64px); }
body.template-cart #shoppingCartPage .breadcrumbs { display: none; }
body.template-cart #shoppingCartPage .page-header { padding: 12px 0 24px !important; text-align: left !important; }
body.template-cart #shoppingCartPage .page-header h1 { margin: 0 0 9px; font: 600 12px/1.4 Inter, Arial, sans-serif !important; color: #493b35; }
body.template-cart .wim-cart-intro { margin: 0; color: #726761; font: 400 14px/1.45 Inter, Arial, sans-serif; }
body.template-cart .wim-checkout-progress { display: flex; justify-content: center; align-items: center; gap: 16px; margin: 0 auto 24px; padding: 12px 0; font: 500 12px/1.2 Inter, Arial, sans-serif; }
body.template-cart .wim-checkout-progress span { display: inline-flex; align-items: center; gap: 7px; white-space: nowrap; }
body.template-cart .wim-checkout-progress b { display: inline-grid; place-items: center; width: 25px; height: 25px; border: 1px solid #a99c92; border-radius: 50%; font-size: 12px; font-weight: 500; }
body.template-cart .wim-checkout-progress [aria-current="step"] b { color: #fff; background: #493b35; border-color: #493b35; }
body.template-cart .wim-checkout-progress i { width: 38px; border-top: 1px solid #c9bdb5; }
body.template-cart #shoppingCartPage > form { margin-bottom: 28px !important; }
body.template-cart #shoppingCartPage > form > .cart-row { padding: 10px 22px; margin-bottom: 0 !important; border: 1px solid #e8e2dc; border-bottom: 0; border-radius: 7px 7px 0 0; color: #746a64; font: 600 11px/1.4 Inter, Arial, sans-serif; letter-spacing: .05em; text-transform: uppercase; }
body.template-cart #shoppingCartPage > form > .cart-row .cart-img-col-title { flex: 1 1 auto; }
body.template-cart #shoppingCartPage > form > .cart-row .col-7.offset-5 { flex: 0 0 480px; max-width: 480px; margin-left: auto; }
body.template-cart #shoppingCartPage > form > .cart-row .col-7.offset-5 > .row > .col-4:last-child { display: none; }
body.template-cart #shoppingCartPage .js-ajax-cart-list { padding: 0 22px; border: 1px solid #e8e2dc; border-radius: 0 0 7px 7px; }
body.template-cart #shoppingCartPage .js-cart-item { display: grid; grid-template-columns: 68px minmax(0,1fr) 148px 150px 72px; gap: 16px; align-items: center; padding: 18px 0; margin: 0 !important; border-bottom: 1px solid #eee8e3; }
body.template-cart #shoppingCartPage .js-cart-item:last-child { border-bottom: 0; }
body.template-cart #shoppingCartPage .js-cart-item > .col-auto:first-child { display: block !important; grid-column: 1; width: 68px; max-width: 68px; padding: 0 !important; }
body.template-cart #shoppingCartPage .js-cart-item > .col-auto:first-child img { display: block; width: 68px; height: 68px; object-fit: cover; background: #fafafa; border-radius: 3px; }
body.template-cart #shoppingCartPage .js-cart-item > .col.pl-3,
body.template-cart #shoppingCartPage .js-cart-item > .col.pl-3 > .row,
body.template-cart #shoppingCartPage .js-cart-item .col-md-7,
body.template-cart #shoppingCartPage .js-cart-item .col-md-7 > .row { display: contents !important; }
body.template-cart #shoppingCartPage .js-cart-item .col-md-5 { grid-column: 2; min-width: 0; width: auto !important; max-width: none !important; padding: 0 !important; }
body.template-cart #shoppingCartPage .js-cart-item .col-md-5 a { color: #493b35; font: 500 14px/1.4 Inter, Arial, sans-serif; }
body.template-cart #shoppingCartPage .js-cart-item .col-md-5 > .js-cart-item-subtotal.d-md-none { display: none !important; }
body.template-cart #shoppingCartPage .js-cart-item .cart-item-quantity.col-md-3 { grid-column: 3; width: 100%; max-width: none; padding: 0 !important; margin: 0 !important; }
body.template-cart #shoppingCartPage .js-cart-item .cart-item-quantity .form-quantity { float: none !important; margin: auto !important; }
body.template-cart #shoppingCartPage .js-cart-item .js-cart-item-unit-price { display: none !important; }
body.template-cart #shoppingCartPage .js-cart-item .col-5.col-md-4 { grid-column: 4; display: block !important; width: auto; max-width: none; margin: 0 !important; text-align: center !important; }
body.template-cart #shoppingCartPage .js-cart-item .col-5.col-md-4 .js-cart-item-subtotal { font: 600 14px/1.4 Inter, Arial, sans-serif; }
body.template-cart #shoppingCartPage .js-cart-item > .col-auto:last-child { grid-column: 5; display: block !important; padding: 0; text-align: right !important; }
body.template-cart #shoppingCartPage .js-cart-item > .col-auto:last-child button { color: #665a53; font: 500 12px/1.4 Inter, Arial, sans-serif; text-decoration: underline; }
body.template-cart #shoppingCartPage .js-cart-item .col-md-7 button.d-md-none { display: none !important; }
body.template-cart #shoppingCartPage > form > .row.justify-content-between.mt-4 { display: grid; grid-template-columns: minmax(0,1fr) minmax(300px,390px); gap: 20px; margin: 18px 0 0 !important; }
body.template-cart #shoppingCartPage > form > .row.justify-content-between.mt-4 > .col-md-4 { width: auto; max-width: none; flex: none; padding: 0; }
body.template-cart .wim-cart-coupon-card,
body.template-cart #cart-sticky-summary { position: static !important; padding: 20px 22px; border: 1px solid #e8e2dc; border-radius: 7px; background: #fff; box-shadow: 0 2px 18px rgba(56,40,32,.025); }
body.template-cart .wim-cart-coupon-card [data-store="coupon-input"] { margin: 0 !important; padding: 0 !important; border: 0 !important; }
body.template-cart .wim-cart-coupon-card [data-store="coupon-input"] svg { display: none; }
body.template-cart .wim-cart-coupon-card [data-store="coupon-input"] .js-accordion-private-toggle { font: 600 13px/1.4 Inter, Arial, sans-serif; }
body.template-cart .wim-cart-summary-title { margin: 0 0 16px; color: #493b35; font: 600 12px/1.4 Inter, Arial, sans-serif; }
body.template-cart #cart-sticky-summary .cart-total { border-top: 1px solid #e8e2dc; padding-top: 12px; }
body.template-cart #cart-sticky-summary .text-center.w-100.pb-3:has(> a[href*="/produtos/"]) { display: none !important; }
body.template-cart #go-to-checkout { min-height: 46px; margin-top: 18px; border: 1px solid #477a61 !important; border-radius: 5px; background: #477a61 !important; color: #fff !important; font: 600 12px/1.2 Inter, Arial, sans-serif; letter-spacing: .05em; }
body.template-cart #go-to-checkout:hover,
body.template-cart #go-to-checkout:focus,
body.template-cart #go-to-checkout:active { border-color: #477a61 !important; background: #477a61 !important; color: #fff !important; opacity: 1 !important; }
body.template-cart #go-to-checkout:focus-visible { outline: 2px solid #493b35; outline-offset: 3px; }
body.template-cart .wim-cart-security { margin: 7px 0 0; color: #746a64; text-align: center; font: 400 11px/1.4 Inter, Arial, sans-serif; }
body.template-cart .wim-cart-recommendations { max-width: 1240px; width: calc(100% - 64px); margin: 38px auto 48px; }
body.template-cart .wim-cart-recommendations h2 { margin: 0 0 18px; font: 600 17px/1.4 Inter, Arial, sans-serif; }
body.template-cart .wim-cart-recommendations-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 18px; }
body.template-cart .wim-cart-recommendation { min-width: 0; }
body.template-cart .wim-cart-recommendation img { display: block; width: 100%; aspect-ratio: 1/1; object-fit: cover; background: #faf9f7; }
body.template-cart .wim-cart-recommendation a { color: inherit; text-decoration: none; }
body.template-cart .wim-cart-recommendation a:hover { text-decoration: underline; }
body.template-cart .wim-cart-recommendation-name { display: block; margin-top: 9px; font: 500 13px/1.45 Inter, Arial, sans-serif; }
body.template-cart .wim-cart-recommendation-price { margin: 5px 0 0; font: 600 13px/1.4 Inter, Arial, sans-serif; }
@media (max-width:1100px) {
  body.template-cart #shoppingCartPage > form > .cart-row { display: none !important; }
}
@media (max-width:767px) {
  body.template-cart #shoppingCartPage > .container,
  body.template-cart #shoppingCartPage > form.container,
  body.template-cart .wim-cart-recommendations { width: calc(100% - 28px); }
  body.template-cart .wim-checkout-progress { gap: 6px; font-size: 10px; }
  body.template-cart .wim-checkout-progress i { width: 16px; }
  body.template-cart .wim-checkout-progress b { width: 22px; height: 22px; }
  body.template-cart #shoppingCartPage .js-ajax-cart-list { padding: 0 14px; border-radius: 7px; }
  body.template-cart #shoppingCartPage .js-cart-item { grid-template-columns: 56px minmax(0,1fr) 48px; gap: 5px 7px; padding: 14px 0; }
  body.template-cart #shoppingCartPage .js-cart-item > .col-auto:first-child { grid-column: 1; grid-row: 1 / 3; width: 56px; max-width: 56px; }
  body.template-cart #shoppingCartPage .js-cart-item > .col-auto:first-child img { width: 56px; height: 56px; }
  body.template-cart #shoppingCartPage .js-cart-item .col-md-5 { grid-column: 2; grid-row: 1; }
  body.template-cart #shoppingCartPage .js-cart-item .cart-item-quantity.col-md-3 { grid-column: 2; grid-row: 2; max-width: 110px; }
  body.template-cart #shoppingCartPage .js-cart-item .col-5.col-md-4 { grid-column: 2; grid-row: 3; text-align: left !important; }
  body.template-cart #shoppingCartPage .js-cart-item > .col-auto:last-child { grid-column: 3; grid-row: 1 / 4; }
  body.template-cart #shoppingCartPage > form > .row.justify-content-between.mt-4 { grid-template-columns: 1fr; gap: 12px; }
  body.template-cart .wim-cart-recommendations-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px 10px; }
}

body.template-cart .wim-cart-recommendation { display: flex; flex-direction: column; }
body.template-cart .wim-cart-recommendation-image { display: block; overflow: hidden; aspect-ratio: 1/1; background: #fafafa; }
body.template-cart .wim-cart-recommendation-image img { width: 100%; height: 100%; object-fit: cover; }
body.template-cart .wim-cart-recommendation-form { margin-top: auto; }
body.template-cart .wim-cart-recommendation-action { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 42px; margin-top: auto; padding: 9px; border: 1px solid #b38f79; background: #b38f79; color: #fff !important; font: 600 12px/1.2 Inter, Arial, sans-serif; cursor: pointer; text-decoration: none !important; }
body.template-cart .wim-cart-recommendation-action:hover { background: #5b483d; border-color: #5b483d; }
body.template-cart .wim-cart-recommendation-action:focus-visible { outline: 2px solid #493b35; outline-offset: 3px; }
body.template-cart .wim-cart-recommendation.is-pending .wim-cart-recommendation-action { opacity: .68; }

/* Mesmo posicionamento sobre a foto na pagina ampla do carrinho. */
body.template-cart .wim-cart-recommendation-media {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  aspect-ratio: 1 / 1;
  background: #fafafa;
}
body.template-cart .wim-cart-recommendation-media .wim-cart-recommendation-image {
  width: 100%;
  height: 100%;
}
body.template-cart .wim-cart-recommendation-media > .wim-cart-recommendation-form,
body.template-cart .wim-cart-recommendation-media > a.wim-cart-recommendation-action {
  position: absolute;
  z-index: 2;
  right: 12px;
  bottom: 12px;
  left: 12px;
  width: auto;
  height: auto;
  margin: 0;
}
body.template-cart .wim-cart-recommendation-media .wim-cart-recommendation-action {
  width: 100%;
  min-height: 42px;
  margin: 0;
  border-color: rgba(255,255,255,.9);
  background: rgba(91,72,61,.78);
  color: #fff !important;
  text-align: center;
  text-shadow: 0 1px 2px rgba(35,23,18,.6);
}
body.template-cart .wim-cart-recommendation-media > a.wim-cart-recommendation-action {
  width: auto;
}
body.template-cart .wim-cart-recommendation-media .wim-cart-recommendation-action:is(:hover,:focus-visible) {
  border-color: #fff;
  background: rgba(91,72,61,.94);
  text-decoration: none;
}
body.template-cart .wim-cart-recommendation-media .wim-cart-recommendation-action:focus-visible {
  outline: 2px solid #fff;
  outline-offset: -4px;
}
@media (hover: hover) and (pointer: fine) and (min-width: 901px) {
  body.template-cart .wim-cart-recommendation-media > .wim-cart-recommendation-form,
  body.template-cart .wim-cart-recommendation-media > a.wim-cart-recommendation-action {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(6px);
    transition: opacity .16s ease, transform .16s ease, visibility .16s ease;
  }
  body.template-cart .wim-cart-recommendation-media:is(:hover,:focus-within) > .wim-cart-recommendation-form,
  body.template-cart .wim-cart-recommendation-media:is(:hover,:focus-within) > a.wim-cart-recommendation-action {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
  }
}

/* WIM 2026-09-25: manter somente o fluxo padrao de entrega no carrinho amplo. */
body.template-cart #shoppingCartPage #cart-sticky-summary [id^="wallet-express-checkout-panel-"] {
  display: none !important;
}
