/* Staging cart drawer overrides */
.shopcart-drawer-overlay {
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  z-index: 2147483000 !important;
  background: rgba(24, 18, 22, 0.48) !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transition: opacity 320ms ease-in-out, visibility 320ms ease-in-out !important;
}
body.shopcart-drawer-open { overflow: hidden !important; }
/* desktop: catalogo ao lado continua a fazer scroll */
@media (min-width: 761px) {
  body.shopcart-drawer-open { overflow: visible !important; }
  body.shopcart-drawer-open .shopcart-drawer-overlay { pointer-events: none !important; }
}
body.shopcart-drawer-open .shopcart-drawer-overlay {
  opacity: 1 !important;
  visibility: visible !important;
}
#shopcart-modal-container {
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: auto !important;
  display: block !important;
  visibility: hidden !important;
  pointer-events: none !important;
  width: 550px !important;
  max-width: 100vw !important;
  height: 100vh !important;
  margin: 0 !important;
  z-index: 2147483002 !important;
  background: #fff !important;
  box-shadow: -22px 0 48px rgba(24, 18, 22, 0.18) !important;
  transform: translateX(100%) !important;
  transition: transform 320ms ease-in-out, visibility 320ms ease-in-out, opacity 220ms ease-in-out !important;
}
body.shopcart-drawer-open #shopcart-modal-container {
  visibility: visible !important;
  pointer-events: auto !important;
  transform: translateX(0) !important;
}
body:not(.shopcart-drawer-open) #shopcart-modal-container {
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translateX(100%) !important;
}
#shopcart-modal-container .shopcart-modal-caret { display: none !important; }
#shopcart-modal, #shopcart-modal-container .shopcart-modal-html {
position: static !important;
top: auto !important;
right: auto !important;
width: auto !important;
height: 100% !important;
padding: 0 0 28px !important;
border: 0 !important;
border-radius: 0 !important;
box-shadow: none !important;
background: #f7f3ef !important;
overflow: hidden !important;
}
.shopcart-drawer__head {
display: flex !important;
align-items: center !important;
justify-content: space-between !important;
gap: 18px !important;
padding: 20px 22px 17px !important;
border-bottom: 1px solid #ece5e9 !important;
color: #1b1519 !important;
background: #f7f3ef !important;
text-align: left !important;
}
.shopcart-drawer__head strong {
display: block !important;
font-size: 22px !important;
font-weight: 500 !important;
line-height: 1.1 !important;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
}
.shopcart-drawer__eyebrow {
  display: block !important;
  margin-bottom: 6px !important;
  color: #8f8089 !important;
  font-family: "Lato", sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 1.6px !important;
  text-transform: uppercase !important;
}
.shopcart-drawer__close {
  width: 38px !important;
  height: 38px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 50% !important;
  color: #fff !important;
  background: #3a3035 !important;
  cursor: pointer !important;
  line-height: 38px !important;
  text-align: center !important;
}
.shopcart-drawer__close:hover { background: #9f0049 !important; }
.shopcart-drawer__body {
  display: flex !important;
  flex-direction: column !important;
  height: calc(100vh - 84px) !important;
  overflow: hidden !important;
  padding: 0 !important;
  background: #fff !important;
}
.shopcart-drawer__items {
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  min-height: 0 !important;
  overflow-y: auto !important;
  padding: 0 !important;
  background: #fff !important;
}
.shopcart-drawer__footer {
  flex: 0 0 auto !important;
  padding: 18px 22px 22px !important;
  border-top: 1px solid #ece5e9 !important;
  background: #fff !important;
  box-shadow: 0 -12px 30px rgba(24, 18, 22, 0.06) !important;
}
.shopcart-drawer__free-shipping {
  margin: 0 0 16px !important;
}
.shopcart-drawer__free-shipping-inner {
  padding: 13px 14px !important;
  border: 1px solid #eadfe5 !important;
  border-radius: 8px !important;
  background: #fffafa !important;
}
.shopcart-drawer__free-shipping-line {
  display: grid !important;
  grid-template-columns: 22px minmax(0, 1fr) !important;
  gap: 10px !important;
  align-items: center !important;
  color: #332c30 !important;
  font-family: "Lato", Arial, sans-serif !important;
}
.shopcart-drawer__free-shipping-line i {
  color: #332c30 !important;
  font-size: 18px !important;
  line-height: 1 !important;
}
.shopcart-drawer__free-shipping-line span,
.shopcart-drawer__free-shipping-line strong {
  min-width: 0 !important;
  font-size: 14px !important;
  line-height: 1.25 !important;
}
.shopcart-drawer__free-shipping-line span {
  font-weight: 700 !important;
}
.shopcart-drawer__free-shipping-status {
  display: block !important;
  color: #8d1530 !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;
  text-align: right !important;
}
.shopcart-drawer__free-shipping-bar {
  height: 7px !important;
  margin: 11px 0 9px !important;
  overflow: hidden !important;
  border-radius: 999px !important;
  background: #e7deda !important;
}
.shopcart-drawer__free-shipping-bar span {
  display: block !important;
  height: 100% !important;
  border-radius: inherit !important;
  background: #8d1530 !important;
  transition: width 260ms ease !important;
}
.shopcart-drawer__item {
  display: grid !important;
  grid-template-columns: 78px minmax(0, 1fr) auto !important;
  gap: 16px !important;
  align-items: start !important;
  padding: 18px 22px !important;
  border-bottom: 1px solid #eee7eb !important;
  background: #fff !important;
  color: #332c30 !important;
}
.shopcart-drawer__thumb {
  width: 78px !important;
  height: 92px !important;
  border: 1px solid #eadfe5 !important;
  border-radius: 8px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  background: #fff !important;
}
.shopcart-drawer__thumb img {
  width: auto !important;
  max-width: 70px !important;
  height: auto !important;
  max-height: 84px !important;
  object-fit: contain !important;
}
.shopcart-drawer__item-title,
.shopcart-drawer__item-title a,
.shopcart-drawer__item-title span {
  color: #332c30 !important;
  font-family: "Lato", sans-serif !important;
  font-size: 15px !important;
  line-height: 1.35 !important;
  text-align: left !important;
}
.shopcart-drawer__item-title a {
  font-weight: 700 !important;
  text-decoration: none !important;
}
.shopcart-drawer__item-title .product_subinfo {
  display: block !important;
  margin-top: 4px !important;
  color: #8d8389 !important;
  font-size: 13px !important;
}
.shopcart-drawer__line-discount {
  margin-top: 8px !important;
  color: #9f0049 !important;
  font-size: 13px !important;
  text-align: left !important;
}
.shopcart-drawer__line-discount strike { color: #8d8389 !important; }
.shopcart-drawer__line-controls {
  margin-top: 12px !important;
  text-align: left !important;
}
.shopcart-drawer__qty-select {
  width: 72px !important;
  height: 34px !important;
  border: 1px solid #ded4da !important;
  background: #fff !important;
  color: #332c30 !important;
  font-size: 14px !important;
  text-align: center !important;
}
.shopcart-drawer__item-side {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: 14px !important;
  min-width: 82px !important;
}
.shopcart-drawer__item-side strong {
  color: #332c30 !important;
  font-size: 16px !important;
  white-space: nowrap !important;
}
.shopcart-drawer__remove {
  border: 1px solid #ded4da !important;
  border-radius: 50% !important;
  width: 34px !important;
  height: 34px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #6c6268 !important;
  background: #fff !important;
  cursor: pointer !important;
  font-size: 15px !important;
}
.shopcart-drawer__remove:hover {
  color: #9f0049 !important;
  border-color: #9f0049 !important;
}
.shopcart-drawer__totals {
  margin-bottom: 14px !important;
  padding-bottom: 14px !important;
  border-bottom: 1px solid #ece5e9 !important;
}
.shopcart-drawer__totals > div {
  display: flex !important;
  justify-content: space-between !important;
  gap: 18px !important;
  margin: 0 0 8px !important;
  color: #625961 !important;
  font-size: 14px !important;
}
.shopcart-drawer__totals strong {
  color: #332c30 !important;
  font-size: 15px !important;
  white-space: nowrap !important;
}
.shopcart-drawer__totals .shopcart-drawer__total {
  margin-top: 12px !important;
  padding-top: 12px !important;
  border-top: 1px solid #ece5e9 !important;
  color: #1f191d !important;
  font-size: 18px !important;
}
.shopcart-drawer__totals .shopcart-drawer__total strong {
  /* total a preto (pedido do dono 2026-08-06; igual no checkout) */
  color: #1D1D1F !important;
  font-size: 24px !important;
}
.shopcart-drawer__checkout {
  display: block !important;
  width: 100% !important;
  height: 54px !important;
  margin: 0 0 10px !important;
  padding: 0 18px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #2fac66 !important;
  color: #fff !important;
  font-family: "Raleway", sans-serif !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  line-height: 54px !important;
  text-align: center !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  cursor: pointer !important;
}
.shopcart-drawer__checkout:hover { background: #249455 !important; }
#stock_shopcart,
#stock_shopcart_element,
.stock_shopcart_element { text-align: center !important; }
.cupido-cart-remove-scrim {
  position: fixed !important;
  inset: 0 !important;
  z-index: 2147483005 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 32px !important;
  background: rgba(18, 18, 18, 0.68) !important;
}
.cupido-cart-remove-scrim,
.cupido-cart-remove-scrim * { box-sizing: border-box !important; }
.pv-modal--cart-remove {
  position: relative !important;
  width: min(560px, 100%) !important;
  max-height: calc(100vh - 64px) !important;
  overflow: auto !important;
  border: 1px solid rgba(80, 72, 68, 0.25) !important;
  border-radius: 8px !important;
  background: #fff !important;
  box-shadow: 0 22px 70px rgba(0, 0, 0, 0.28) !important;
  color: #514844 !important;
}
.pv-modal--cart-remove .pv-modal__close {
  position: absolute !important;
  top: 18px !important;
  right: 20px !important;
  width: 30px !important;
  height: 30px !important;
  border: 0 !important;
  background: transparent !important;
  color: #514844 !important;
  font-size: 30px !important;
  line-height: 1 !important;
  cursor: pointer !important;
}
.pv-modal--cart-remove .pv-modal__head,
.pv-modal--cart-remove .pv-modal__body,
.pv-modal--cart-remove .pv-modal__foot {
  padding-left: clamp(28px, 4vw, 66px) !important;
  padding-right: clamp(28px, 4vw, 66px) !important;
}
.pv-modal--cart-remove .pv-modal__head { padding-top: 40px !important; }
.pv-modal--cart-remove .pv-modal__title {
  margin: 0 !important;
  color: #514844 !important;
  font-family: "Raleway", "Lato", Arial, sans-serif !important;
  font-size: clamp(24px, 2.6vw, 30px) !important;
  font-weight: 500 !important;
  line-height: 1.15 !important;
}
.pv-modal--cart-remove .pv-modal__body { padding-top: 28px !important; }
.pv-modal-product {
  display: flex !important;
  align-items: center !important;
  gap: 22px !important;
  margin-bottom: 28px !important;
  padding: 22px !important;
  border: 1px solid rgba(81, 72, 68, 0.18) !important;
  border-radius: 8px !important;
  background: #fbfaf7 !important;
  color: #514844 !important;
  text-decoration: none !important;
}
.pv-modal-product:hover { text-decoration: none !important; }
.pv-modal-product__image {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 74px !important;
  width: 74px !important;
  height: 92px !important;
  overflow: hidden !important;
  border: 1px solid #cacaca !important;
  border-radius: 8px !important;
  background: #fff !important;
}
.pv-modal-product__image img {
  display: block !important;
  width: auto !important;
  max-width: 66px !important;
  height: auto !important;
  max-height: 84px !important;
  object-fit: contain !important;
}
.pv-modal-product__content {
  display: grid !important;
  gap: 8px !important;
  min-width: 0 !important;
}
.pv-modal-product__name {
  color: #1f1b19 !important;
  font-family: "Lato", Arial, sans-serif !important;
  font-size: clamp(15px, 1.6vw, 16px) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
}
.pv-modal-product__meta {
  color: rgba(81, 72, 68, 0.82) !important;
  font-family: "Lato", Arial, sans-serif !important;
  font-size: clamp(13px, 1.5vw, 15px) !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
}
.pv-modal--cart-remove .pv-modal__text {
  margin: 0 !important;
  color: #514844 !important;
  font-family: "Lato", Arial, sans-serif !important;
  font-size: clamp(16px, 1.8vw, 18px) !important;
  line-height: 1.4 !important;
}
.pv-modal--cart-remove .pv-modal__foot {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  margin-top: 42px !important;
  padding-top: 24px !important;
  padding-bottom: 30px !important;
  border-top: 1px solid rgba(81, 72, 68, 0.16) !important;
  background: #fbfaf7 !important;
}
.cupido-cart-remove-scrim .pv-modal__foot-actions {
  display: inline-flex !important;
  gap: 18px !important;
}
.cupido-cart-remove-scrim .cup-cart-remove-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 48px !important;
  padding: 12px 26px !important;
  border: 1px solid transparent !important;
  border-radius: 8px !important;
  font-family: "Lato", Arial, sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  cursor: pointer !important;
}
.cupido-cart-remove-scrim .cup-cart-remove-btn--link {
  min-height: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #514844 !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  text-decoration: underline !important;
  text-underline-offset: 0.16em !important;
}
.cupido-cart-remove-scrim .cup-cart-remove-btn--ghost {
  border-color: rgba(81, 72, 68, 0.24) !important;
  background: #fff !important;
  color: #514844 !important;
}
.cupido-cart-remove-scrim .cup-cart-remove-btn--danger {
  border-color: #7a1a28 !important;
  background: #7a1a28 !important;
  color: #fff !important;
}
@media (max-width: 560px) {
  .cupido-cart-remove-scrim { padding: 16px !important; }
  .pv-modal--cart-remove { max-height: calc(100vh - 32px) !important; }
  .pv-modal--cart-remove .pv-modal__head,
  .pv-modal--cart-remove .pv-modal__body,
  .pv-modal--cart-remove .pv-modal__foot {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  .pv-modal--cart-remove .pv-modal__head { padding-top: 38px !important; }
  .pv-modal--cart-remove .pv-modal__title { font-size: 27px !important; }
  .pv-modal--cart-remove .pv-modal__body { padding-top: 24px !important; }
  .pv-modal-product {
    align-items: flex-start !important;
    gap: 14px !important;
    margin-bottom: 24px !important;
    padding: 16px !important;
  }
  .pv-modal-product__image {
    flex-basis: 64px !important;
    width: 64px !important;
    height: 82px !important;
  }
  .pv-modal-product__image img {
    max-width: 58px !important;
    max-height: 76px !important;
  }
  .pv-modal-product__name {
    font-size: 16px !important;
    line-height: 1.3 !important;
  }
  .pv-modal-product__meta { font-size: 13px !important; }
  .pv-modal--cart-remove .pv-modal__text {
    font-size: 15px !important;
    line-height: 1.45 !important;
  }
  .pv-modal--cart-remove .pv-modal__foot,
  .cupido-cart-remove-scrim .pv-modal__foot-actions {
    align-items: stretch !important;
    flex-direction: column !important;
    width: 100% !important;
  }
  .pv-modal--cart-remove .pv-modal__foot { margin-top: 30px !important; }
  .cupido-cart-remove-scrim .cup-cart-remove-btn { width: 100% !important; }
  .cupido-cart-remove-scrim .cup-cart-remove-btn--link { width: auto !important; align-self: flex-start !important; }
}


.shopcart-drawer__saved-slot { display: none; margin-top: auto !important; flex: 0 0 auto !important; }
.shopcart-drawer__saved-section {
  border-top: 1px solid #eee7eb !important;
  border-bottom: 1px solid #eee7eb !important;
  background: #f7f7f7 !important;
  transition: background-color 220ms ease, border-color 220ms ease !important;
}
.shopcart-drawer__saved-head {
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
  gap: 10px !important;
  padding-left: 20px !important;
  padding-top: 5px !important;
  padding-bottom: 5px !important;
  border: 0 !important;
  background: #fff !important;
  color: #514844 !important;
  cursor: pointer !important;
  text-align: left !important;
  transition: background-color 180ms ease, color 180ms ease !important;
}
.shopcart-drawer__saved-head:hover { background: #f7f7f7 !important; }
.shopcart-drawer__saved-head span {
  flex: 1 1 auto !important;
  font-family: "Raleway", "Lato", Arial, sans-serif !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.2 !important;
}
.shopcart-drawer__saved-head strong {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 23px !important;
  height: 23px !important;
  border-radius: 50% !important;
  background: #ece8e6 !important;
  color: #514844 !important;
  font-size: 14px !important;
  line-height: 1 !important;
}
.shopcart-drawer__saved-head i {
  color: #6c6268 !important;
  font-size: 14px !important;
  transition: transform 220ms ease, color 220ms ease !important;
}
.shopcart-drawer__saved-items {
  display: block !important;
  max-height: 900px !important;
  overflow: hidden !important;
  opacity: 1 !important;
  transform: translateY(0) !important;
  transition: max-height 320ms ease, opacity 220ms ease, transform 220ms ease !important;
}
.shopcart-drawer__saved-section.is-collapsed .shopcart-drawer__saved-items {
  max-height: 0 !important;
  opacity: 0 !important;
  transform: translateY(-6px) !important;
}
.shopcart-drawer__saved-section.is-collapsed .shopcart-drawer__saved-add-all {
  max-height: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  opacity: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
}
.shopcart-drawer__saved-section.is-collapsed .shopcart-drawer__saved-head i { transform: rotate(-90deg) !important; }
.shopcart-drawer__saved-item {
  display: grid !important;
  grid-template-columns: 70px minmax(0, 1fr) !important;
  column-gap: 12px !important;
  align-items: start !important;
  padding: 18px 22px !important;
  border-top: 0 !important;
  border-bottom: 1px solid #eee7eb !important;
  background: transparent !important;
  color: #332c30 !important;
}
.shopcart-drawer__saved-controls {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
}
.shopcart-drawer__saved-remove,
.shopcart-drawer__saved-add {
  width: 34px !important;
  height: 34px !important;
  padding: 0 !important;
  border: 1px solid #ded4da !important;
  border-radius: 50% !important;
  background: #fff !important;
  color: #6c6268 !important;
  font-size: 15px !important;
  line-height: 1 !important;
  cursor: pointer !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.shopcart-drawer__saved-remove:hover,
.shopcart-drawer__saved-add:hover {
  color: #9f0049 !important;
  border-color: #9f0049 !important;
}
.shopcart-drawer__saved-add-all {
  display: block !important;
  width: calc(100% - 44px) !important;
  height: 50px !important;
  margin: 18px 22px 22px !important;
  border: 0 !important;
  background: #514844 !important;
  color: #fff !important;
  font-family: "Raleway", "Lato", Arial, sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  max-height: 50px !important;
  opacity: 1 !important;
  transition: background-color 180ms ease, opacity 220ms ease, max-height 260ms ease, margin 260ms ease, transform 180ms ease !important;
}
.shopcart-drawer__saved-add-all:hover {
  background: #3f3531 !important;
  transform: translateY(-1px) !important;
}

.shopcart-drawer__loader {
  position: absolute !important;
  inset: 0 !important;
  z-index: 4 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  pointer-events: none !important;
  opacity: 0 !important;
  background: rgba(255, 255, 255, 0.42) !important;
  backdrop-filter: blur(1.5px) !important;
  transition: opacity 180ms ease !important;
}
.shopcart-drawer__item .shopcart-drawer__loader,
.shopcart-drawer__saved-item .shopcart-drawer__loader,
.shopcart-drawer__saved-section .shopcart-drawer__loader {
  border-radius: inherit !important;
}
.is-shopcart-loading > .shopcart-drawer__loader { opacity: 1 !important; }
.shopcart-drawer__loader span {
  width: 22px !important;
  height: 22px !important;
  border-radius: 50% !important;
  border: 2px solid rgba(81, 72, 68, 0.18) !important;
  border-top-color: rgba(81, 72, 68, 0.78) !important;
  animation: cupidoCartSpin 720ms linear infinite !important;
}
@keyframes cupidoCartSpin { to { transform: rotate(360deg); } }
#shopcart-modal-container.is-shopcart-loading .shopcart-drawer__body,
.shopcart-drawer__saved-item.is-shopcart-loading,
.shopcart-drawer__saved-section.is-shopcart-loading {
  transition: opacity 180ms ease, filter 180ms ease !important;
}
#shopcart-modal-container.is-shopcart-loading .shopcart-drawer__body,
.shopcart-drawer__saved-item.is-shopcart-loading > :not(.shopcart-drawer__loader),
.shopcart-drawer__saved-section.is-shopcart-loading > :not(.shopcart-drawer__loader) {
  opacity: 0.58 !important;
}

body.shopcart-drawer-open .sweet-overlay { z-index: 2147483001 !important; }
body.shopcart-drawer-open .sweet-alert { z-index: 2147483003 !important; }
@media (max-width: 560px) {
  #shopcart-modal-container { width: 100vw !important; }
  .shopcart-drawer-overlay { pointer-events: none !important; }
  body.shopcart-drawer-open .sweet-overlay { z-index: 2147483003 !important; }
  body.shopcart-drawer-open .sweet-alert { z-index: 2147483004 !important; }
  .shopcart-drawer__head {
    padding: 18px 18px 15px !important;
  }
  /* title size from main block */
  .shopcart-drawer__item {
    grid-template-columns: 64px minmax(0, 1fr) auto !important;
    gap: 12px !important;
    padding: 16px 18px !important;
  }
  .shopcart-drawer__thumb {
    width: 64px !important;
    height: 78px !important;
  }
  .shopcart-drawer__item-side { min-width: 70px !important; }
  .shopcart-drawer__free-shipping-line {
    grid-template-columns: 22px minmax(0, 1fr) !important;
  }
  .shopcart-drawer__free-shipping-line strong {
    grid-column: 2 !important;
    text-align: left !important;
  }
}

/* Hide secondary product info in cart drawer */
.shopcart-drawer__item-title .product_subinfo,
#shopcart-modal-container .shopcart-drawer__item-title .product_subinfo,
#shopcart-modal-container .product_subinfo {
  display: none !important;
}


/* Compact drawer product price line */
.shopcart-drawer__item {
  position: relative !important;
  grid-template-columns: 78px minmax(0, 1fr) !important;
  padding-right: 58px !important;
}

.shopcart-drawer__item-remove {
  position: absolute !important;
  top: 16px !important;
  right: 18px !important;
}

.shopcart-drawer__price-row {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 9px !important;
  margin-top: 10px !important;
  color: #332c30 !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
}

.shopcart-drawer__price-discount,
.shopcart-drawer__price-discount span {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  color: #9f0049 !important;
  font-size: 14px !important;
  white-space: nowrap !important;
}

.shopcart-drawer__price-discount strike {
  color: #8d8389 !important;
}

.shopcart-drawer__price-unit,
.shopcart-drawer__price-total {
  color: #332c30 !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
}

.shopcart-drawer__price-row .shopcart-drawer__line-controls {
  margin-top: 0 !important;
}

.shopcart-drawer__price-row .shopcart-drawer__qty-select {
  width: 58px !important;
  height: 32px !important;
}

@media (max-width: 760px) {
  .shopcart-drawer__item {
    grid-template-columns: 64px minmax(0, 1fr) !important;
    padding-right: 52px !important;
  }
  .shopcart-drawer__item-remove {
    top: 14px !important;
    right: 14px !important;
  }
}

/* Conversao: no drawer o CTA verde tem de ficar acima da dobra.
   Express (PayPal/GPay/Apple Pay) fica so no /checkout/. */
#shopcart-modal .cv2-dx,
.shopcart-drawer .cv2-dx { display: none !important; }

/* ============================================================
   CV2 Express no drawer (PayPal / GPay / Apple Pay)
   ============================================================ */
.cv2-dx { margin: 12px 0 8px; }
.cv2-dx__title { font-family: 'Raleway', 'DM Sans', sans-serif; font-size: 15px; font-weight: 700; color: #211722; text-align: center; margin-bottom: 10px; }
.cv2-dx__row { display: flex; gap: 8px; }
.cv2-dx__or { display: flex; align-items: center; gap: 10px; margin-top: 12px; color: #8a7f8a; font-size: 13px; }
.cv2-dx__or:before, .cv2-dx__or:after { content: ''; flex: 1 1 0; border-top: 1px solid #eadfe4; }
.cv2-dx__slot { flex: 1 1 0; min-width: 0; }
.cv2-dx__slot > div { width: 100%; }
.cv2-dx__btn {
	flex: 1 1 0; min-width: 0; height: 44px;
	border: none; border-radius: 9px; cursor: pointer;
	font-size: 16px; font-weight: 700;
	display: inline-flex; align-items: center; justify-content: center;
}
.cv2-dx__btn--paypal { background: #ffc439; }
.cv2-dx__btn--paypal .cv2-pp-word { font-style: italic; color: #0070ba; }
.cv2-dx__btn--paypal .cv2-pp-word b { color: #003087; }
.cv2-dx__btn--gpay { background: #000; color: #fff; }
.cv2-dx__btn--gpay .g-blue { color: #4285f4; }
.cv2-dx__btn--apple { background: #000; color: #fff; }
.cv2-dx__btn.is-soon { opacity: .35; cursor: not-allowed; }

/* Separador acima do bloco express + nota explicativa (so com portes por calcular) */
.cv2-dx { border-top: 1px solid #eee6ea; padding-top: 12px; }
.cv2-dx__note { display: none; }
.shopcart-drawer__footer.is-shipping-pending .cv2-dx__note {
	display: block; margin: -4px 0 10px; text-align: center;
	font-size: 12px; line-height: 1.35; color: #7d727d;
}

/* Totais sem separador inferior + "Tem um codigo de desconto?" */
.shopcart-drawer__totals { padding-bottom: 0 !important; border-bottom: 0 !important; }
.shopcart-drawer__promo { margin: 8px 0 4px !important; text-align: left !important; }
.shopcart-drawer__promo-toggle {
	background: none !important; border: 0 !important; padding: 0 !important;
	color: #8d1530 !important; font-size: 13px !important; font-weight: 700 !important;
	text-decoration: underline !important; cursor: pointer !important;
}
.shopcart-drawer__promo-form { display: flex; gap: 8px !important; margin-top: 8px !important; }
.shopcart-drawer__promo-form input {
	flex: 1 1 auto !important; min-width: 0 !important; height: 38px !important;
	border: 1px solid #ded4da !important; border-radius: 8px !important; padding: 0 10px !important;
	font-size: 14px !important; background: #fff !important;
}
.shopcart-drawer__promo-form button {
	flex: 0 0 auto !important; height: 38px !important; padding: 0 14px !important;
	border: 0 !important; border-radius: 8px !important; background: #3a3035 !important;
	color: #fff !important; font-size: 13px !important; font-weight: 700 !important; cursor: pointer !important;
}
.shopcart-drawer__promo-form button:hover { background: #8d1530 !important; }
/* toasts visiveis por cima do drawer */
body.shopcart-drawer-open #toast-container { z-index: 2147483010 !important; }
/* linhas escondidas via style inline vencem o display:flex !important acima */
.shopcart-drawer__totals > div[style*="display:none"],
.shopcart-drawer__totals > div[style*="display: none"] { display: none !important; }

/* Total alinhado ao centro; CTA Calcular + select de paises na linha Portes */
.shopcart-drawer__total { display: flex !important; align-items: center !important; justify-content: space-between !important; }
.shopcart-drawer__ship-calc {
	background: none !important; border: 0 !important; padding: 0 !important;
	color: #8d1530 !important; font-size: 13px !important; font-weight: 700 !important;
	text-decoration: underline !important; cursor: pointer !important;
}
.shopcart-drawer__ship-select {
	height: 34px !important; max-width: 230px !important; padding: 0 6px !important;
	border: 1px solid #ded4da !important; border-radius: 8px !important;
	background: #fff !important; font-size: 13px !important; color: #332c30 !important;
}

/* tag do pais escolhido na linha Portes */
.shopcart-drawer__ship-tag {
	display: inline-flex !important; align-items: center !important; gap: 6px !important;
	margin-left: 8px !important; padding: 2px 8px !important;
	background: #f7ecf0 !important; border: 1px solid #e6cdd6 !important; border-radius: 999px !important;
	color: #8d1530 !important; font-size: 12px !important; font-weight: 700 !important; line-height: 1.4 !important;
}
.shopcart-drawer__ship-tag button {
	background: none !important; border: 0 !important; padding: 0 !important; margin: 0 !important;
	color: #8d1530 !important; font-size: 14px !important; line-height: 1 !important; cursor: pointer !important;
}
.shopcart-drawer__ship-tag button:hover { color: #4a0b1a !important; }

/* linhas do drawer com o layout do checkout: rodape tracejado com stepper + total */
.shopcart-drawer__line-foot {
	display: flex !important; align-items: center !important; justify-content: space-between !important;
	margin-top: 10px !important; padding-top: 10px !important; border-top: 1px dashed #e7dde2 !important;
}
.shopcart-drawer__stepper {
	display: inline-flex !important; align-items: center !important;
	border: 1px solid #ded4da !important; border-radius: 9px !important; overflow: hidden !important; background: #fff !important;
}
.shopcart-drawer__stepper button {
	width: 36px !important; height: 34px !important; border: 0 !important; background: #fff !important;
	color: #332c30 !important; font-size: 16px !important; cursor: pointer !important;
	display: inline-flex !important; align-items: center !important; justify-content: center !important;
}
.shopcart-drawer__stepper button:hover { background: #f7ecf0 !important; }
.shopcart-drawer__stepper button:disabled { color: #ded4da !important; cursor: default !important; background: #fff !important; }
.shopcart-drawer__stepper .dx-step-qty {
	min-width: 30px !important; height: 34px !important; line-height: 34px !important; text-align: center !important;
	font-size: 14px !important; font-weight: 700 !important; color: #332c30 !important;
	border-left: 1px solid #eee6ea !important; border-right: 1px solid #eee6ea !important;
}
.shopcart-drawer__stepper .dx-step-minus.is-remove i { font-size: 14px !important; }
.shopcart-drawer__line-foot .shopcart-drawer__price-total { font-size: 15px !important; }

/* tamanho/cor ao lado do titulo */
.shopcart-drawer__item-title .shopcart-drawer__item-variant {
	color: #8d8389 !important; font-size: 13px !important; font-weight: 400 !important;
	margin-left: 6px !important; white-space: nowrap !important;
}
/* viewports baixos: o banner de portes gratis cede o lugar aos produtos */
@media (max-height: 620px) {
	.shopcart-drawer__free-shipping { display: none !important; }
}
/* transicao suave produtos -> footer */
.shopcart-drawer__footer { box-shadow: 0 -16px 28px rgba(24, 18, 22, 0.12) !important; }

/* thumbs: altura ate 94px sem limite de largura */
.shopcart-drawer__thumb img { max-width: none !important; max-height: 94px !important; }
/* Apple Pay indisponivel nao aparece (perde .is-soon quando elegivel) */
#cv2_dx_apple.is-soon { display: none !important; }
/* botoes express sem sobreposicao: o iframe do SDK PayPal impoe largura minima
   interna e invadia o gap quando 3 botoes partilhavam a linha (drawer ~500px).
   O wrap a 50% aplica-se SEMPRE no drawer (nao so em viewports mobile). */
.cv2-dx__row { flex-wrap: wrap !important; gap: 8px !important; }
.cv2-dx__slot, .cv2-dx__btn { flex: 1 1 calc(50% - 8px) !important; min-width: 140px !important; }
.cv2-dx__slot { overflow: hidden; }
/* Google Pay indisponivel tambem nao aparece */
#cv2_dx_gpay.is-soon { display: none !important; }

/* coerencia de raios: botao verde igual aos botoes express (9px) */
.shopcart-drawer__checkout { border-radius: 9px !important; }

/* precos estilo PV: strike em cima, badge -% + preco por baixo, a direita do titulo */
.shopcart-drawer__toprow { display: flex !important; align-items: flex-start !important; justify-content: space-between !important; gap: 12px !important; }
.shopcart-drawer__toprow .shopcart-drawer__item-title { flex: 1 1 auto !important; min-width: 0 !important; }
.shopcart-drawer__prices { display: flex !important; flex-direction: column !important; align-items: flex-end !important; gap: 5px !important; flex: 0 0 auto !important; text-align: right !important; }
.shopcart-drawer__prices .pvx-strike { color: #8d8389 !important; text-decoration: line-through !important; font-size: 14px !important; line-height: 1.2 !important; }
.shopcart-drawer__prices .pvx-now { display: inline-flex !important; align-items: center !important; gap: 8px !important; }
.shopcart-drawer__prices .pvx-badge { background: #6e1226 !important; color: #fff !important; border-radius: 8px !important; padding: 3px 9px !important; font-size: 13px !important; font-weight: 700 !important; line-height: 1.2 !important; }
.shopcart-drawer__prices .pvx-price { color: #332c30 !important; font-size: 15px !important; line-height: 1.2 !important; }

/* thumbs arredondados com borda suave (cesto + checkout) */
.shopcart-drawer__thumb {
	position: relative !important; overflow: visible !important;
	border: 1px solid #e9e2e6 !important; border-radius: 16px !important;
	background: #fff !important; box-shadow: 0 2px 8px rgba(24, 18, 22, 0.06) !important;
}
.shopcart-drawer__thumb img { border-radius: 12px !important; }
/* badge de quantidade no canto do thumb (resumo do checkout) */
.pvx-qty-badge {
	position: absolute !important; top: -8px !important; right: -8px !important;
	min-width: 26px !important; height: 26px !important; padding: 0 4px !important;
	background: #211722 !important; color: #fff !important;
	border: 2px solid #fff !important; border-radius: 999px !important;
	font-size: 13px !important; font-weight: 700 !important; line-height: 22px !important; text-align: center !important;
	box-sizing: border-box !important;
}

/* GPay oficial: fundo #3c4043 + logotipo SVG */
.cv2-dx__btn--gpay { background: #3c4043 !important; }
.pvx-gpay-svg { height: 20px !important; width: auto !important; display: block !important; margin: 0 auto !important; }

/* fundo bege na zona de itens para dar contraste a borda branca dos thumbs */
.shopcart-drawer__items { background: #f7f3ef !important; }
.shopcart-drawer__item { background: transparent !important; }
/* thumbs: border branco grosso + sombra (referencia) */
.shopcart-drawer__thumb { border: 4px solid #fff !important; box-shadow: 0 4px 14px rgba(24, 18, 22, 0.14) !important; }
/* thumbs 95x95; coluna do grid acompanha para nao sobrepor o conteudo */
.shopcart-drawer__thumb { width: 95px !important; height: 95px !important; }
.shopcart-drawer__thumb img { max-height: 95px !important; max-width: 100% !important; }
.shopcart-drawer__item { grid-template-columns: 95px minmax(0, 1fr) auto !important; }
/* thumbs 90x90 */
.shopcart-drawer__thumb { width: 90px !important; height: 90px !important; }
.shopcart-drawer__thumb img { max-height: 90px !important; }
.shopcart-drawer__item { grid-template-columns: 90px minmax(0, 1fr) auto !important; }
/* footer translucido com blur: em mobile percebe-se que ha mais produtos por baixo */
.shopcart-drawer__footer {
	background: rgba(255, 255, 255, 0.72) !important;
	-webkit-backdrop-filter: blur(10px) !important;
	backdrop-filter: blur(10px) !important;
}
/* footer sobreposto a lista (a lista desliza por baixo do vidro) */
#shopcart-modal .shopcart-drawer__body { position: relative !important; }
.shopcart-drawer__footer { position: absolute !important; left: 0 !important; right: 0 !important; bottom: 0 !important; z-index: 3 !important; }

/* imagens 70x70 */
.shopcart-drawer__thumb { width: 70px !important; height: 70px !important; }
.shopcart-drawer__thumb img { max-height: 70px !important; }
.shopcart-drawer__item { grid-template-columns: 70px minmax(0, 1fr) auto !important; }

/* corpo do drawer: header de 65px; dvh evita o corte da barra de URL no iOS */
.shopcart-drawer__body { height: calc(100vh - 65px) !important; }
@supports (height: 100dvh) {
	.shopcart-drawer__body { height: calc(100dvh - 65px) !important; }
}

/* scroll vertical fiavel em telemoveis */
.shopcart-drawer__items {
	-webkit-overflow-scrolling: touch !important;
	touch-action: pan-y !important;
	overscroll-behavior: contain !important;
}

@media (max-width: 760px) {
	.shopcart-drawer__item { padding-right: 10px !important; }
}

@media (max-width: 760px) and (orientation: portrait) {
	.shopcart-drawer__totals .shopcart-drawer__total { font-size: 16px !important; }
	.shopcart-drawer__totals .shopcart-drawer__total strong { font-size: 18px !important; }
	.shopcart-drawer__footer.is-shipping-pending .cv2-dx__note { font-size: 10px !important; }
}

/* mobile: sem footer sobreposto — produtos e footer seguidos num so scroll */
@media (max-width: 760px) {
	.shopcart-drawer__body { display: block !important; overflow-y: auto !important; -webkit-overflow-scrolling: touch !important; }
	.shopcart-drawer__items { overflow: visible !important; flex: none !important; }
	.shopcart-drawer__footer {
		position: static !important;
		background: #fff !important;
		-webkit-backdrop-filter: none !important;
		backdrop-filter: none !important;
	}
}
/* a imagem nao pode exceder o interior do thumb (70 - 2x4 de borda) */
.shopcart-drawer__thumb img { max-height: 60px !important; }
/* 12px entre o thumb e a coluna de conteudo */
.shopcart-drawer__item { column-gap: 12px !important; }
/* thumb em border-box: 70px TOTAIS (borda incluida) -> gap de 12px real;
   imagem com folga dentro dos 62px interiores */
.shopcart-drawer__thumb { box-sizing: border-box !important; width: 70px !important; height: 70px !important; }
.shopcart-drawer__thumb img { max-width: 54px !important; max-height: 54px !important; }
/* a imagem ocupa o interior do thumb ate ao maximo */
.shopcart-drawer__thumb img { max-width: 100% !important; max-height: 100% !important; }
/* interior exato do thumb (70 - 2x4 de borda): a imagem enche ate 62px */
.shopcart-drawer__thumb img { width: auto !important; height: auto !important; max-width: 62px !important; max-height: 62px !important; }
/* .pict_shopcart traz padding 6px que soma ao tamanho (content-box) */
.shopcart-drawer__thumb img { padding: 0 !important; }

/* X de fechar: preto sem fundo; ao clicar roda e desaparece */
.shopcart-drawer__close {
	background: transparent !important; color: #1b1519 !important;
	font-size: 20px !important;
	transition: transform 260ms ease, opacity 260ms ease, color 160ms ease !important;
}
.shopcart-drawer__close:hover { background: transparent !important; color: #9f0049 !important; }
.shopcart-drawer__close.is-closing { transform: rotate(180deg) scale(0.2) !important; opacity: 0 !important; }

/* codigo de desconto: campo + botao unidos (campo radius esq, botao radius dir, 1px entre) */
.shopcart-drawer__promo-form { gap: 0 !important; }
.dx-promo-fieldwrap { position: relative !important; flex: 1 1 auto !important; min-width: 0 !important; display: flex !important; }
.dx-promo-fieldwrap input {
	width: 100% !important; border-radius: 8px 0 0 8px !important;
	border-right: 0 !important; padding-right: 32px !important;
}
.dx-promo-fieldwrap .dx-promo-hide {
	position: absolute !important; right: 8px !important; top: 50% !important; transform: translateY(-50%) !important;
	background: none !important; border: 0 !important; padding: 0 4px !important;
	color: #8d8389 !important; font-size: 18px !important; line-height: 1 !important; cursor: pointer !important;
}
.dx-promo-fieldwrap .dx-promo-hide:hover { color: #8d1530 !important; }
.shopcart-drawer__promo-form button[data-dx-promo-apply] {
	border-radius: 0 8px 8px 0 !important;
	border-left: 1px solid #ded4da !important;
}

/* iOS Safari: font <16px num campo focado faz zoom -> nunca abaixo de 16 em mobile */
@media (max-width: 760px) {
	.shopcart-drawer__promo-form input,
	.shopcart-drawer__ship-select,
	.shopcart-drawer__qty-select { font-size: 16px !important; }
}

/* head mais compacto */
/* compact head padding overridden by main block */
/* title size from main block */

/* desktop: drawer a 500px; linhas com mais respiro */
@media (min-width: 761px) {
	#shopcart-modal-container { width: 500px !important; max-width: 500px !important; }
	.shopcart-drawer__item { padding-right: 20px !important; column-gap: 25px !important; }
}
/* desktop: imagem 100px (interior 92 com a borda de 4) */
@media (min-width: 761px) {
	.shopcart-drawer__thumb { width: 100px !important; height: 100px !important; }
	.shopcart-drawer__thumb img { max-width: 92px !important; max-height: 92px !important; }
	.shopcart-drawer__item { grid-template-columns: 100px minmax(0, 1fr) auto !important; }
	.shopcart-drawer__saved-item { grid-template-columns: 100px minmax(0, 1fr) !important; }
}

/* X do codigo de desconto: hover sem fundo (regras globais de button davam fundo) */
.dx-promo-fieldwrap .dx-promo-hide:hover,
.dx-promo-fieldwrap .dx-promo-hide:focus,
.dx-promo-fieldwrap .dx-promo-hide:active {
	background: none !important; background-color: transparent !important;
	color: #8d1530 !important; box-shadow: none !important; border: 0 !important;
}

/* saco/cesto do header: clicavel em todo o site (abre o drawer) */
html body .shopcart-container,
html body .shopcart-container .shopcart-selector,
html body .shopcart-container .shopcart-badge,
html body .shopcart-selector-small,
html body .fichaGotoCartModal,
html body .fichaGotoCart { cursor: pointer !important; }

/* rodape escondido ate haver artigos (evita flash dos botoes de pagamento no cesto vazio) */
.shopcart-drawer__footer:not(.cv2-has-items) { display: none !important; }


/* ===== empty state iOS (drawer) ===== */
#shopcart-modal .shopcart_empty,
#shopcart-modal .shopcart-drawer__empty {
	margin-top: 0 !important;
	padding: 48px 28px 24px !important;
	text-align: center !important;
	background: #fff !important;
	flex: 1 1 auto !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 280px !important;
}
#shopcart-modal .shopcart-drawer__empty-icon {
	width: 56px !important;
	height: 56px !important;
	color: #c8c4c2 !important;
	margin-bottom: 18px !important;
	display: block !important;
}
#shopcart-modal .shopcart_empty h1,
#shopcart-modal .shopcart-drawer__empty h1 {
	margin: 0 0 8px !important;
	font-size: 20px !important;
	font-weight: 700 !important;
	color: #111 !important;
	line-height: 1.25 !important;
}
#shopcart-modal .shopcart_empty p,
#shopcart-modal .shopcart-drawer__empty p {
	margin: 0 0 16px !important;
	font-size: 15px !important;
	font-weight: 400 !important;
	color: #8a8582 !important;
	line-height: 1.35 !important;
}
#shopcart-modal .shopcart-drawer__empty-cta,
#shopcart-modal .shopcart_empty a.shopcart-drawer__empty-cta {
	font-size: 16px !important;
	font-weight: 600 !important;
	color: #9d0048 !important;
	text-decoration: none !important;
	background: none !important;
	border: 0 !important;
}
#shopcart-modal .favoritesSHreminder,
#shopcart-modal .favoritesSHreminderContainer { display: none !important; }

#shopcart-modal.is-empty .shopcart-drawer__body,
#shopcart-modal:has(.shopcart_empty) .shopcart-drawer__body {
	display: flex !important;
	flex-direction: column !important;
}
#shopcart-modal.is-empty .shopcart-drawer__items,
#shopcart-modal:has(.shopcart_empty) .shopcart-drawer__items {
	display: flex !important;
	flex-direction: column !important;
	flex: 1 1 auto !important;
	min-height: calc(100vh - 80px) !important;
}

/* Guardados: linha iOS quando o cesto está vazio */
#shopcart-modal.is-empty .shopcart-drawer__saved-section,
#shopcart-modal:has(.shopcart_empty) .shopcart-drawer__saved-section {
	background: transparent !important;
	border: 0 !important;
	margin: auto 16px 20px !important;
	margin-top: 15px !important;
}
#shopcart-modal.is-empty .shopcart-drawer__saved-head,
#shopcart-modal:has(.shopcart_empty) .shopcart-drawer__saved-head {
	height: 44px !important;
	padding: 0 12px 0 16px !important;
	border: 1px solid #ececec !important;
	border-radius: 10px !important;
	background: #f4f4f4 !important;
	color: #111 !important;
}
#shopcart-modal.is-empty .shopcart-drawer__saved-head span,
#shopcart-modal:has(.shopcart_empty) .shopcart-drawer__saved-head span {
	font-size: 15px !important;
	font-weight: 500 !important;
	color: #111 !important;
}
#shopcart-modal.is-empty .shopcart-drawer__saved-head strong,
#shopcart-modal:has(.shopcart_empty) .shopcart-drawer__saved-head strong {
	width: 22px !important;
	height: 22px !important;
	background: #b4b0ae !important;
	color: #fff !important;
	font-size: 12px !important;
	font-weight: 700 !important;
}
#shopcart-modal.is-empty .shopcart-drawer__saved-head i,
#shopcart-modal:has(.shopcart_empty) .shopcart-drawer__saved-head i {
	color: #b4b0ae !important;
}


/* Guardados (cesto com artigos): mais alto, letra mais densa, colado aos totais */
.shopcart-drawer__saved-slot { margin-bottom: 0 !important; }
.shopcart-drawer__saved-section { margin: 0 !important; }
.shopcart-drawer__saved-head {
	min-height: 48px !important;
	padding-top: 12px !important;
	padding-bottom: 12px !important;
	box-sizing: border-box !important;
}
.shopcart-drawer__saved-head span {
	font-weight: 600 !important;
	letter-spacing: -0.01em !important;
}
.shopcart-drawer__items:has(.shopcart-drawer__saved-section) {
	padding-bottom: 0 !important;
}
.shopcart-drawer__items:has(.shopcart-drawer__saved-section) + .shopcart-drawer__footer {
	padding-top: 8px !important;
	border-top: 0 !important;
}


/* CTA sempre no fundo do drawer (mobile: flex, nao static a meio do branco) */
@media (max-width: 760px) {
	#shopcart-modal .shopcart-drawer__body {
		display: flex !important;
		flex-direction: column !important;
		overflow: hidden !important;
		height: calc(100vh - 65px) !important;
	}
	@supports (height: 100dvh) {
		#shopcart-modal .shopcart-drawer__body {
			height: calc(100dvh - 65px) !important;
		}
	}
	#shopcart-modal .shopcart-drawer__items {
		flex: 1 1 auto !important;
		min-height: 0 !important;
		overflow-y: auto !important;
		-webkit-overflow-scrolling: touch !important;
	}
	#shopcart-modal .shopcart-drawer__footer {
		position: relative !important;
		flex: 0 0 auto !important;
		margin-top: auto !important;
		background: #fff !important;
		-webkit-backdrop-filter: none !important;
		backdrop-filter: none !important;
		padding-bottom: calc(12px + env(safe-area-inset-bottom, 0px)) !important;
	}
	#shopcart-modal .shopcart-drawer__checkout {
		margin-bottom: 0 !important;
	}
}


/* Guardados: pedra quente #F4EFEA — sem azul/rosa/verde (Designer 2026-08-15) */
#shopcart-modal .shopcart-drawer__saved-section {
	background: #F4EFEA !important;
	border-top-color: #e8e0d8 !important;
	border-bottom-color: #e8e0d8 !important;
}
#shopcart-modal .shopcart-drawer__saved-head,
#shopcart-modal .shopcart-drawer__saved-head:hover {
	background: #F4EFEA !important;
	color: #514844 !important;
}
#shopcart-modal .shopcart-drawer__saved-head strong {
	background: #e8e0d8 !important;
	color: #514844 !important;
}
#shopcart-modal .shopcart-drawer__saved-head i {
	color: #8a7d74 !important;
}
#shopcart-modal.is-empty .shopcart-drawer__saved-section,
#shopcart-modal:has(.shopcart_empty) .shopcart-drawer__saved-section {
	background: transparent !important;
	border: 0 !important;
	margin-top: 15px !important;
}
#shopcart-modal.is-empty .shopcart-drawer__saved-head,
#shopcart-modal:has(.shopcart_empty) .shopcart-drawer__saved-head {
	background: #F4EFEA !important;
	border-color: #e8e0d8 !important;
	color: #514844 !important;
}
#shopcart-modal.is-empty .shopcart-drawer__saved-head strong,
#shopcart-modal:has(.shopcart_empty) .shopcart-drawer__saved-head strong {
	background: #e8e0d8 !important;
	color: #514844 !important;
}
#shopcart-modal.is-empty .shopcart-drawer__saved-head i,
#shopcart-modal:has(.shopcart_empty) .shopcart-drawer__saved-head i {
	color: #8a7d74 !important;
}

/* desktop checkout button not clipped */
@media (min-width: 761px) {
	#shopcart-modal-container {
		box-sizing: border-box !important;
		height: 100vh !important;
		height: 100dvh !important;
		overflow: hidden !important;
	}
	#shopcart-modal,
	#shopcart-modal-container .shopcart-modal-html {
		box-sizing: border-box !important;
		padding: 0 !important;
		display: flex !important;
		flex-direction: column !important;
		height: 100% !important;
		max-height: 100% !important;
		overflow: hidden !important;
	}
	#shopcart-modal .shopcart-drawer__head {
		flex: 0 0 auto !important;
	}
	#shopcart-modal .shopcart-drawer__body {
		flex: 1 1 auto !important;
		min-height: 0 !important;
		height: auto !important;
		overflow: hidden !important;
		display: flex !important;
		flex-direction: column !important;
		position: relative !important;
	}
	#shopcart-modal .shopcart-drawer__items {
		flex: 1 1 auto !important;
		min-height: 0 !important;
		overflow-y: auto !important;
	}
	#shopcart-modal .shopcart-drawer__footer {
		position: relative !important;
		left: auto !important;
		right: auto !important;
		bottom: auto !important;
		flex: 0 0 auto !important;
		padding-bottom: 22px !important;
	}
	#shopcart-modal .shopcart-drawer__checkout {
		margin-bottom: 0 !important;
	}
}

/* ===== short-viewport CTA 2026-09-17: flex column; panel scrolls; CTA pinned =====
   Problem: on short screens the footer exceeded body height and clipped checkout.
   Prefer: body flex; items scroll; footer capped; cv2-cs panel scrolls; checkout flex-none. */
#shopcart-modal-container {
	box-sizing: border-box !important;
	height: 100vh !important;
	height: 100dvh !important;
	max-height: 100vh !important;
	max-height: 100dvh !important;
	overflow: hidden !important;
	display: flex !important;
	flex-direction: column !important;
}
#shopcart-modal,
#shopcart-modal-container .shopcart-modal-html {
	box-sizing: border-box !important;
	display: flex !important;
	flex-direction: column !important;
	flex: 1 1 auto !important;
	height: 100% !important;
	max-height: 100% !important;
	min-height: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
}
#shopcart-modal .shopcart-drawer__head {
	flex: 0 0 auto !important;
}
#shopcart-modal .shopcart-drawer__body {
	display: flex !important;
	flex-direction: column !important;
	flex: 1 1 auto !important;
	min-height: 0 !important;
	height: auto !important;
	max-height: none !important;
	overflow: hidden !important;
	position: relative !important;
}
#shopcart-modal .shopcart-drawer__items {
	flex: 1 1 auto !important;
	min-height: 0 !important;
	overflow-x: hidden !important;
	overflow-y: auto !important;
	-webkit-overflow-scrolling: touch !important;
	overscroll-behavior: contain !important;
	padding-bottom: 12px !important;
}
#shopcart-modal .shopcart-drawer__footer.cv2-has-items,
#shopcart-modal .shopcart-drawer__footer[data-cv2-cs="1"] {
	position: relative !important;
	left: auto !important;
	right: auto !important;
	bottom: auto !important;
	display: flex !important;
	flex-direction: column !important;
	flex: 0 1 auto !important;
	align-self: stretch !important;
	min-height: 0 !important;
	max-height: min(46vh, 360px) !important;
	overflow: hidden !important;
	margin-top: 0 !important;
	padding: 10px 16px calc(12px + env(safe-area-inset-bottom, 0px)) !important;
	background: #fff !important;
	-webkit-backdrop-filter: none !important;
	backdrop-filter: none !important;
	border-radius: 0 !important;
	box-shadow: 0 -12px 28px rgba(24, 18, 22, 0.10) !important;
	z-index: 4 !important;
}
#shopcart-modal .shopcart-drawer__footer[data-cv2-cs="1"] > .cv2-cs__toggle {
	flex: 0 0 auto !important;
}
#shopcart-modal .shopcart-drawer__footer[data-cv2-cs="1"] > .cv2-cs__panel {
	flex: 1 1 auto !important;
	min-height: 0 !important;
	overflow-x: hidden !important;
	overflow-y: auto !important;
	-webkit-overflow-scrolling: touch !important;
	overscroll-behavior: contain !important;
	max-height: none !important;
}
#shopcart-modal .shopcart-drawer__footer .shopcart-drawer__checkout,
#shopcart-modal .shopcart-drawer__footer[data-cv2-cs="1"] .shopcart-drawer__checkout {
	position: relative !important;
	left: auto !important;
	right: auto !important;
	bottom: auto !important;
	flex: 0 0 auto !important;
	width: 100% !important;
	margin: 8px 0 0 !important;
	z-index: 6 !important;
	box-shadow: none !important;
}
#shopcart-modal .shopcart-drawer__footer[data-cv2-cs="1"] > .cv2-cs__live {
	flex: 0 0 auto !important;
}
@media (min-height: 780px) {
	#shopcart-modal .shopcart-drawer__footer,
	#shopcart-modal .shopcart-drawer__footer[data-cv2-cs="1"] {
		max-height: min(52vh, 460px) !important;
	}
}
#shopcart-modal.is-empty .shopcart-drawer__footer,
#shopcart-modal:has(.shopcart_empty) .shopcart-drawer__footer {
	max-height: none !important;
	overflow: visible !important;
	padding-bottom: 0 !important;
}
#shopcart-modal.is-empty .shopcart-drawer__items,
#shopcart-modal:has(.shopcart_empty) .shopcart-drawer__items {
	padding-bottom: 12px !important;
}
#shopcart-modal[data-cv2-lists-tab="saved"] .shopcart-drawer__footer,
#shopcart-modal[data-cv2-lists-tab="saved"] .shopcart-drawer__footer[data-cv2-cs="1"] {
	max-height: none !important;
	overflow: visible !important;
	padding-bottom: 12px !important;
}
#shopcart-modal .shopcart-drawer__footer:not([data-cv2-cs="1"]) {
	overflow-y: auto !important;
}
#shopcart-modal .shopcart-drawer__footer:not([data-cv2-cs="1"]) .shopcart-drawer__checkout {
	position: sticky !important;
	bottom: 0 !important;
	background: #2fac66 !important;
}

#shopcart-modal .shopcart-drawer__footer:not(.cv2-has-items) {
	display: none !important;
}

/* ===== mobile CTA pin 2026-09-19 =====
   Root cause: short-viewport rules (2026-09-17) set footer to
   flex:0 1 auto + min-height:0 + overflow:hidden. With 5+ products the
   flex layout shrank the footer and clipped «Continuar para o checkout».
   Fix: footer never shrinks (0 0 auto); items scroll above; panel scrolls
   inside footer when details are tall; checkout stays flex-none. */
#shopcart-modal .shopcart-drawer__body {
	display: flex !important;
	flex-direction: column !important;
	flex: 1 1 auto !important;
	min-height: 0 !important;
	height: auto !important;
	max-height: none !important;
	overflow: hidden !important;
	position: relative !important;
}
#shopcart-modal .shopcart-drawer__items {
	flex: 1 1 auto !important;
	min-height: 0 !important;
	overflow-x: hidden !important;
	overflow-y: auto !important;
	-webkit-overflow-scrolling: touch !important;
	overscroll-behavior: contain !important;
}
/* Kill leftover absolute footer overlay that could push CTA off-screen */
#shopcart-modal .shopcart-drawer__footer,
#shopcart-modal .shopcart-drawer__footer.cv2-has-items,
#shopcart-modal .shopcart-drawer__footer[data-cv2-cs="1"] {
	position: relative !important;
	left: auto !important;
	right: auto !important;
	bottom: auto !important;
	flex: 0 0 auto !important;
	align-self: stretch !important;
	min-height: auto !important;
	margin-top: 0 !important;
	display: flex !important;
	flex-direction: column !important;
	background: #fff !important;
	-webkit-backdrop-filter: none !important;
	backdrop-filter: none !important;
	z-index: 4 !important;
}
/* Cap tall footers so the product list keeps scroll room; panel absorbs overflow */
#shopcart-modal .shopcart-drawer__footer.cv2-has-items,
#shopcart-modal .shopcart-drawer__footer[data-cv2-cs="1"] {
	max-height: min(48vh, 400px) !important;
	overflow: hidden !important;
	padding: 10px 16px calc(12px + env(safe-area-inset-bottom, 0px)) !important;
}
#shopcart-modal .shopcart-drawer__footer[data-cv2-cs="1"] > .cv2-cs__toggle,
#shopcart-modal .shopcart-drawer__footer[data-cv2-cs="1"] > .cv2-cs__live {
	flex: 0 0 auto !important;
}
#shopcart-modal .shopcart-drawer__footer[data-cv2-cs="1"] > .cv2-cs__panel {
	flex: 1 1 auto !important;
	min-height: 0 !important;
	overflow-x: hidden !important;
	overflow-y: auto !important;
	-webkit-overflow-scrolling: touch !important;
	overscroll-behavior: contain !important;
	max-height: none !important;
	opacity: 1 !important;
}
#shopcart-modal .shopcart-drawer__footer .shopcart-drawer__checkout,
#shopcart-modal .shopcart-drawer__footer[data-cv2-cs="1"] .shopcart-drawer__checkout {
	position: relative !important;
	left: auto !important;
	right: auto !important;
	bottom: auto !important;
	flex: 0 0 auto !important;
	width: 100% !important;
	margin: 8px 0 0 !important;
	z-index: 6 !important;
	box-shadow: none !important;
}
/* Before cv2-cs enhance: never clip the CTA */
#shopcart-modal .shopcart-drawer__footer:not([data-cv2-cs="1"]).cv2-has-items {
	max-height: none !important;
	overflow: visible !important;
}
#shopcart-modal .shopcart-drawer__footer:not([data-cv2-cs="1"]) .shopcart-drawer__checkout {
	position: relative !important;
	bottom: auto !important;
}
@media (min-height: 780px) {
	#shopcart-modal .shopcart-drawer__footer.cv2-has-items,
	#shopcart-modal .shopcart-drawer__footer[data-cv2-cs="1"] {
		max-height: min(52vh, 460px) !important;
	}
}
@media (max-height: 620px) {
	#shopcart-modal .shopcart-drawer__footer.cv2-has-items,
	#shopcart-modal .shopcart-drawer__footer[data-cv2-cs="1"] {
		max-height: min(42vh, 280px) !important;
	}
}
/* Guardados tab: compact footer (gfoot only) — do not regress */
#shopcart-modal[data-cv2-lists-tab="saved"] .shopcart-drawer__footer,
#shopcart-modal[data-cv2-lists-tab="saved"] .shopcart-drawer__footer[data-cv2-cs="1"] {
	max-height: none !important;
	overflow: visible !important;
	flex: 0 0 auto !important;
	min-height: auto !important;
	padding-bottom: calc(12px + env(safe-area-inset-bottom, 0px)) !important;
}
/* Empty cart: no footer cap */
#shopcart-modal.is-empty .shopcart-drawer__footer,
#shopcart-modal:has(.shopcart_empty) .shopcart-drawer__footer {
	max-height: none !important;
	overflow: visible !important;
}
#shopcart-modal .shopcart-drawer__footer:not(.cv2-has-items) {
	display: none !important;
}
