
/* SOURCE visual-borobo-mobile-r1-fix-shipping-layout/src/presentation.css */
/* Extension only. Existing E1 frame geometry, image URLs and handlers are retained. */
body.bb-visual-fase1.bb-mv1-presentation #single-product[data-bb-mv1-presentation][data-bb-mv1-gallery-preview="images"] .borobo-e1-track .borobo-e1-media-link > img.borobo-e1-image {
  object-fit: cover !important;
}
body.bb-visual-fase1.bb-mv1-presentation #single-product[data-bb-mv1-presentation][data-bb-mv1-single-image="1"] .borobo-e1-thumbs {
  display: none !important;
}

/* Same native breadcrumb, after all PDP/related content and before the footer. */
body.template-product.bb-visual-fase1.bb-mv1-presentation > [data-bb-mv1-breadcrumb-slot="pdp"] {
  box-sizing: border-box;
  width: 100%;
  max-width: 1560px;
  margin: 24px auto 0;
  padding: 0 clamp(16px, 2.5vw, 40px) 26px;
}
body.template-product.bb-visual-fase1.bb-mv1-presentation > [data-bb-mv1-breadcrumb-slot="pdp"] > .borobo-e1-breadcrumbs[data-bb-mv1-breadcrumb] {
  margin: 0;
  padding: 12px 0 0;
  border-top: 1px solid var(--bbv-border, #dce2de);
  font-size: 12px;
  line-height: 1.5;
  overflow-wrap: anywhere;
  color: var(--bbv-muted, #66716f);
}

/* Compress the native logo row through spacing; logo image dimensions stay native. */
body.bb-visual-fase1.bb-mv1-presentation .head-main > .container-fluid {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
body.bb-visual-fase1.bb-mv1-presentation .head-main > .container-fluid > .js-nav-logo-bar {
  min-height: 44px;
  padding-top: 0;
  padding-bottom: 0;
}
body.bb-visual-fase1.bb-mv1-presentation .head-main #logo.logo-img-container {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
body.bb-visual-fase1.bb-mv1-presentation .head-main #logo > a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
}
/* Native .logo-img adds 15px above and below the image itself. */
body.bb-visual-fase1.bb-mv1-presentation .head-main #logo > a > img.logo-img {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* aria-pressed remains the sealed engine's reversible 1–9 / 10+ selection. */
body.bb-visual-fase1.bb-mv1-presentation #single-product[data-bb-mv1-presentation] .bb-cohort-tier {
  background: #fff;
  color: #111;
  border-color: #e3e3e3;
}
body.bb-visual-fase1.bb-mv1-presentation #single-product[data-bb-mv1-presentation] .bb-cohort-tier[aria-pressed="true"] {
  background: #111;
  color: #fff;
  border-color: #111;
}
body.bb-visual-fase1.bb-mv1-presentation #single-product[data-bb-mv1-presentation] .bb-cohort-tier :is(span, strong) { color: inherit; }
body.bb-visual-fase1.bb-mv1-presentation #single-product[data-bb-mv1-presentation] .bb-cohort-tier:focus-visible {
  outline: 2px solid #111;
  outline-offset: 3px;
}
body.bb-visual-fase1.bb-mv1-presentation #single-product[data-bb-mv1-presentation] .bb-mv1-transfer-copy { display: none; }

@media (max-width: 767px) {
  /* Hide only the horizontal gallery chrome; native overflow, snap, focus,
     keyboard handlers and touch scrolling retain their existing behavior. */
  body.bb-visual-fase1.bb-mv1-presentation #single-product[data-bb-mv1-presentation][data-bb-mv1-gallery-preview="images"] :is(.borobo-e1-track, .borobo-e1-thumbs) {
    scrollbar-width: none;
  }
  body.bb-visual-fase1.bb-mv1-presentation #single-product[data-bb-mv1-presentation][data-bb-mv1-gallery-preview="images"] :is(.borobo-e1-track, .borobo-e1-thumbs)::-webkit-scrollbar {
    height: 0;
  }

  /* Tax and payment-details wrapper are siblings, so only the original native
     payment wrapper retains its click target and independent hide/show state. */
  body.bb-visual-fase1.bb-mv1-presentation #single-product[data-bb-mv1-presentation] [data-bb-mv1-tax-details] {
    display: flex;
    align-items: baseline;
    gap: 8px;
    width: 100%;
    min-width: 0;
    margin: 0 0 2px;
  }
  body.bb-visual-fase1.bb-mv1-presentation #single-product[data-bb-mv1-presentation] [data-bb-mv1-tax-details] > .js-price-without-taxes-container {
    flex: 1 1 auto;
    min-width: 0;
    margin: 0 !important;
    font-size: 12px;
    line-height: 1.4;
    overflow-wrap: anywhere;
  }
  body.bb-visual-fase1.bb-mv1-presentation #single-product[data-bb-mv1-presentation] [data-bb-mv1-tax-details] > .js-product-payments-container {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
    margin: 0 !important;
    padding: 0;
  }
  body.bb-visual-fase1.bb-mv1-presentation #single-product[data-bb-mv1-presentation] [data-bb-mv1-tax-details] #btn-installments {
    margin: 0 !important;
    padding: 0;
    font-size: 12px;
    line-height: 1.4;
    white-space: nowrap;
  }

  /* Hide only a verified redundant text span. Native status.textContent writes
     remove it synchronously: waiting/error/success/guard text stays visible. */
  body.bb-visual-fase1.bb-mv1-presentation #single-product[data-bb-mv1-presentation] .bb-cohort-tiers + p[role="status"] > span[data-bb-mv1-selection="normal"] {
    display: none;
  }
  body.bb-visual-fase1.bb-mv1-presentation #single-product[data-bb-mv1-presentation] .bb-cohort-tiers + p[role="status"]:has(> span[data-bb-mv1-selection="normal"]:only-child) {
    margin-top: 0;
    margin-bottom: 0;
  }
  body.bb-visual-fase1.bb-mv1-presentation #single-product[data-bb-mv1-presentation] .bb-cohort-tiers + p[role="status"]:has(> span[data-bb-mv1-selection="normal"]:only-child)::before {
    content: none;
  }

  body.bb-visual-fase1.bb-mv1-presentation #single-product[data-bb-mv1-presentation] .borobo-e1-price-container { row-gap: 2px; }
  body.bb-visual-fase1.bb-mv1-presentation #single-product[data-bb-mv1-presentation] .borobo-e1-price-container > .js-price-without-taxes-container {
    margin-bottom: 0 !important;
  }
  body.bb-visual-fase1.bb-mv1-presentation #single-product[data-bb-mv1-presentation] .borobo-e1-price-container > .bb-cohort-tiers {
    margin-top: 2px;
  }
  body.bb-visual-fase1.bb-mv1-presentation #single-product[data-bb-mv1-presentation] .bb-info2-transfer {
    margin-top: 4px;
    margin-bottom: 4px;
  }
  body.bb-visual-fase1.bb-mv1-presentation #single-product[data-bb-mv1-presentation] .bb-info2-transfer > :is(.bb-info2-transfer-line, .bb-info2-transfer-price) {
    display: none;
  }
  body.bb-visual-fase1.bb-mv1-presentation #single-product[data-bb-mv1-presentation] .bb-info2-transfer > .bb-mv1-transfer-copy {
    display: block;
    margin: 0;
    font-size: 13px;
    line-height: 1.45;
  }
}


/* SOURCE visual-borobo-mobile-r1/src/purchase-controls.css */
/* Mobile presentation of the original product/cart controls. Native visibility wins. */
@media (max-width: 767px) {
  body.bb-visual-fase1.bbv-purchase-ready .bbv-mobile-dock.bbv-purchase-dock {
    display: flex;
    flex-direction: column;
    max-height: 100dvh;
    overflow-y: auto;
    overscroll-behavior: contain;
  }
  body.bb-visual-fase1.bbv-purchase-ready .bbv-purchase-dock > .bb-minimum-panel { order: 0; flex: 0 0 auto; }
  body.bb-visual-fase1.bbv-purchase-ready .bbv-purchase-dock > .bbv-bottom-nav { order: 2; flex: 0 0 auto; }
  /* Docking inside the native form must not recolor navigation labels. */
  body.bb-visual-fase1.bbv-purchase-ready #single-product #product_form .bbv-purchase-dock .bbv-bottom-nav > :is(a.bbv-nav-link, button.bbv-shipping-nav) { color: var(--bbv-ink, #111820); }
  body.bb-visual-fase1.bbv-purchase-ready #single-product #product_form .bbv-purchase-dock .bbv-bottom-nav > a.bbv-nav-link[aria-current="page"] { color: var(--bbv-green, #194c3c); }
  body.bb-visual-fase1.bbv-purchase-ready #single-product #product_form .bbv-purchase-dock .bbv-bottom-nav > :is(a.bbv-nav-link, button.bbv-shipping-nav) > .bbv-nav-label { color: inherit; }
  body.bb-visual-fase1.bbv-purchase-ready #single-product #product_form .bbv-purchase-dock > .bbv-purchase-row {
    order: 1;
    display: flex;
    flex: 0 0 auto;
    flex-wrap: wrap;
    align-items: center;
    gap: 0 8px;
    width: 100%;
    margin: 0 !important;
    padding: 9px 12px;
    border-bottom: 1px solid var(--bbv-border, #dce2de);
    background: var(--bbv-surface, #fff);
  }
  body.bb-visual-fase1.bbv-purchase-ready #single-product #product_form .bbv-purchase-row > .bbv-purchase-quantity-column {
    flex: 0 0 150px !important;
    width: 150px !important;
    max-width: 150px !important;
    min-width: 0;
    padding: 0 !important;
  }
  body.bb-visual-fase1.bbv-purchase-ready #single-product #product_form .bbv-purchase-row > .bbv-purchase-button-column {
    flex: 1 1 0 !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0;
    padding: 0 !important;
  }
  body.bb-visual-fase1.bbv-purchase-ready #single-product #product_form .bbv-purchase-row .js-quantity,
  body.bb-visual-fase1.bbv-purchase-ready #single-product #product_form .bbv-purchase-row .form-quantity {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100%;
    margin: 0 !important;
    padding: 0 !important;
  }
  body.bb-visual-fase1.bbv-purchase-ready #single-product #product_form .bbv-purchase-row .form-quantity { flex-wrap: nowrap; }
  body.bb-visual-fase1.bbv-purchase-ready #single-product #product_form .bbv-purchase-row .form-quantity-icon {
    flex: 0 0 44px;
    width: 44px;
    min-width: 44px;
    min-height: 44px;
    padding: 8px;
  }
  body.bb-visual-fase1.bbv-purchase-ready #single-product #product_form .bbv-purchase-row .form-control-container {
    flex: 1 1 auto;
    min-width: 0;
    padding: 0;
  }
  body.bb-visual-fase1.bbv-purchase-ready #single-product #product_form .bbv-purchase-row :is(.bb-cohort-quantity, .borobo-e112-quantity-center) {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 2px;
    min-width: 0;
  }
  body.bb-visual-fase1.bbv-purchase-ready #single-product #product_form .bbv-purchase-row input[name="quantity"] {
    flex: 1 1 30px;
    width: 30px;
    min-width: 24px !important;
    max-width: 100%;
    padding-right: 0;
    padding-left: 0;
    text-align: center;
  }
  body.bb-visual-fase1.bbv-purchase-ready #single-product #product_form .bbv-purchase-row :is(.bb-cohort-unit, .borobo-e112-quantity-unit) { font-size: 11px; }
  body.bb-visual-fase1.bbv-purchase-ready #single-product #product_form .bbv-purchase-row .js-addtocart {
    width: 100%;
    min-width: 0;
    min-height: 46px;
    margin: 0 !important;
    padding: 11px 6px;
    font-size: 12px;
    line-height: 1.3;
    letter-spacing: 0;
    white-space: normal;
  }
  body.bb-visual-fase1.bbv-purchase-ready #single-product #product_form .bbv-purchase-row > .col-12 { flex: 0 0 100%; }
  body.bb-visual-fase1.bbv-purchase-ready #single-product #product_form .bbv-purchase-row .js-added-to-cart-product-message { margin: 7px 0 0 !important; font-size: 11px; }
  /* The complete native row carries its stock text and progress placeholder. */
  body.bb-visual-fase1.bbv-purchase-ready #single-product #product_form .bbv-purchase-quantity-column > .font-small { padding: 3px 0 0 !important; font-size: 10px; line-height: 1.2; }
  body.bb-visual-fase1.bbv-native-cart-open .bbv-mobile-dock { display: none !important; }

  .bbv-cart-summary-scope .bbv-cart-total-fixed,
  .bbv-cart-summary-scope .bbv-cart-checkout-fixed {
    position: fixed;
    left: 0;
    right: 0;
    width: auto;
    margin: 0 !important;
    box-sizing: border-box;
    background: #fff;
    color: #111820;
    z-index: 2;
  }
  .bbv-cart-summary-scope .bbv-cart-total-fixed {
    bottom: var(--bbv-cart-controls-height, 0px);
    padding: 12px 16px 8px;
    border-top: 1px solid #dce2de;
    box-shadow: 0 -3px 14px rgb(17 24 32 / 7%);
  }
  .bbv-cart-summary-scope .bbv-cart-checkout-fixed {
    bottom: 0;
    padding: 6px 16px calc(8px + env(safe-area-inset-bottom, 0px));
    max-height: 50dvh;
    overflow-y: auto;
    overscroll-behavior: contain;
  }
  .bbv-cart-summary-scope .bbv-cart-total-fixed > .row { margin-right: 0; margin-left: 0; font-size: 20px; }
  .bbv-cart-summary-scope .bbv-cart-checkout-fixed :is(input, button)[name="go_to_checkout"] {
    min-height: 48px;
    width: 100%;
    border-radius: 8px;
    font-size: 15px;
  }
  .bbv-cart-summary-scope .bbv-cart-checkout-fixed .row { margin-right: 0; margin-left: 0; }
  .bbv-cart-summary-scope .bbv-cart-checkout-fixed .mb-3 { margin-bottom: 8px !important; }
  .bbv-cart-summary-scope .bbv-cart-checkout-fixed .alert { width: 100%; margin-top: 0; font-size: 12px; }
  .bbv-cart-scroll-reserve { padding-bottom: calc(var(--bbv-cart-summary-height, 0px) + 24px) !important; }
  body.bbv-cart-summary-active { padding-bottom: calc(var(--bbv-cart-summary-height, 0px) + 24px); }
  body.bbv-cart-summary-active .js-notification-cookie-banner.notification-fixed-bottom { bottom: calc(var(--bbv-cart-summary-height, 0px) + 6px) !important; }
}
@media (max-width: 359px) {
  body.bb-visual-fase1.bbv-purchase-ready #single-product #product_form .bbv-purchase-dock > .bbv-purchase-row { gap: 0 6px; padding-right: 8px; padding-left: 8px; }
}


/* SOURCE visual-borobo-mobile-r1-fix-shipping-layout/src/purchase-overlay.css */
/* DRAFT: local mobile presentation correction. No native node or handler changes.
 * Append after R1 only when assembled and reviewed with shipping-layout.css.
 * This draft does not establish which CSS version is on the user's device.
 */
@media (max-width: 767px) {
  /* Global navigation stays visible and available through its panel adapter.
   * Only purchase/minimum paint is suppressed, with stable layout geometry. */
  body.bbv-global-nav-ready.bbv-global-panel-open #product_form > .bbv-purchase-row,
  body.bbv-global-nav-ready.bbv-global-panel-open .bbv-purchase-dock > .bb-minimum-panel {
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  /* User's updated minimum layout: one heading/note line, subtotal line,
   * then full-width progress. The redundant cart action is visually removed.
   * The sealed module remains the sole source of products-subtotal progress.
   */
  body.bb-visual-fase1.bbv-purchase-ready .bbv-purchase-dock > .bb-minimum-panel {
    padding: 6px 10px;
    gap: 0;
  }
  body.bb-visual-fase1.bbv-purchase-ready .bbv-purchase-dock .bb-minimum-copy {
    display: grid;
    width: 100%;
    grid-template-columns: max-content minmax(0, 1fr);
    align-items: center;
    column-gap: 6px;
    row-gap: 3px;
  }
  body.bb-visual-fase1.bbv-purchase-ready .bbv-purchase-dock .bb-minimum-title {
    grid-column: 1;
    grid-row: 1;
    margin: 0;
    font-size: 11px;
    font-weight: 400;
    line-height: 1.35;
  }
  body.bb-visual-fase1.bbv-purchase-ready .bbv-purchase-dock .bb-minimum-status {
    grid-column: 1 / -1;
    grid-row: 2;
    margin: 0;
    font-size: 11px;
    line-height: 1.35;
  }
  body.bb-visual-fase1.bbv-purchase-ready .bbv-purchase-dock .bb-minimum-progress {
    grid-column: 1 / -1;
    grid-row: 3;
    width: 100%;
    height: 5px;
    margin: 0;
  }
  body.bb-visual-fase1.bbv-purchase-ready .bbv-purchase-dock .bb-minimum-note {
    grid-column: 2;
    grid-row: 1;
    margin: 0;
    font-size: 10px;
    font-weight: 400;
    line-height: 1.35;
  }
  body.bb-visual-fase1.bbv-purchase-ready .bbv-purchase-dock .bb-minimum-open-cart {
    display: none !important;
  }
  /* >=30,000 products subtotal means the minimum notice has served its role.
   * No shipping eligibility inference, replacement benefit banner or animation.
   * ResizeObserver in the unchanged dock module measures the collapsed panel.
   */
  html:not([data-bb-cart-presentation-suspended="true"]) body.bb-visual-fase1.bbv-purchase-ready .bbv-purchase-dock > .bb-minimum-panel:has(.bb-minimum-progress[value="100"]) {
    display: none !important;
  }
  html[data-bb-cart-presentation-suspended="true"] body.bb-visual-fase1.bbv-purchase-ready .bbv-purchase-dock :is(.bb-minimum-status,.bb-minimum-progress) {
    visibility: hidden;
  }
  body.bb-visual-fase1.bbv-purchase-ready #single-product #product_form > .bbv-purchase-row {
    position: fixed;
    bottom: var(--bbv-global-nav-height, 0px);
    left: 0;
    right: 0;
    z-index: 900;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0 8px;
    width: 100%;
    margin: 0 !important;
    padding: 6px 12px;
    border-top: 1px solid var(--bbv-border, #dce2de);
    background: #fff;
    box-sizing: border-box;
    max-height: calc(100dvh - var(--bbv-global-nav-height, 0px));
    overflow-y: auto;
    padding-top: 6px;
    padding-bottom: 6px;
  }
  body.bb-visual-fase1.bbv-purchase-ready .bbv-purchase-dock > .bb-minimum-panel {
    position: fixed;
    left: 0;
    right: 0;
    bottom: calc(var(--bbv-global-nav-height, 0px) + var(--bbv-purchase-controls-height, 0px));
  }

  /* Five independent labels fit narrow screens without touching. Keep native
   * anchors/buttons and their >=48px touch height, including the Envio opener.
   */
  body.bb-visual-fase1.bbv-purchase-ready .bbv-purchase-dock > .bbv-bottom-nav {
    gap: 4px;
    padding: 3px 6px calc(3px + env(safe-area-inset-bottom, 0px));
  }
  body.bb-visual-fase1.bbv-purchase-ready #single-product #product_form .bbv-purchase-dock .bbv-bottom-nav > :is(a.bbv-nav-link, button.bbv-shipping-nav) {
    min-width: 0;
    min-height: 48px;
    padding: 3px 0;
    font-size: 10px;
    line-height: 1.2;
  }
  body.bb-visual-fase1.bbv-purchase-ready #single-product #product_form .bbv-purchase-dock .bbv-bottom-nav > :is(a.bbv-nav-link, button.bbv-shipping-nav) > .bbv-nav-label {
    display: block;
    min-width: 0;
    max-width: 100%;
    font: inherit;
    white-space: normal;
    overflow-wrap: anywhere;
    text-align: center;
  }

  /* The existing ResizeObserver already reserves measured native footer space.
   * Give native CP focus/scroll targets the same clearance; do not add another
   * fixed spacer, reparent shipping, or alter checkout/validation visibility.
   */
  .bbv-cart-summary-scope,
  .bbv-cart-summary-scope .bbv-cart-scroll-reserve {
    scroll-padding-bottom: calc(var(--bbv-cart-summary-height, 0px) + 24px);
  }
  .bbv-cart-summary-scope #cart-shipping-container :is(.js-shipping-calculator-head, .js-shipping-input, .js-calculate-shipping) {
    scroll-margin-bottom: calc(var(--bbv-cart-summary-height, 0px) + 24px);
  }

  /* Native active CP panes use z-index:100. The existing footer used 2,
   * allowing that content to paint over it despite its white background.
   * Keep native visibility and all checkout states; make the surfaces opaque.
   */
  :is(#modal-cart, #shoppingCartPage).bbv-cart-summary-scope .bbv-cart-total-fixed,
  :is(#modal-cart, #shoppingCartPage).bbv-cart-summary-scope .bbv-cart-checkout-fixed {
    z-index: 201;
    isolation: isolate;
    background: #fff !important;
    opacity: 1 !important;
    overflow-x: hidden;
  }
  :is(#modal-cart, #shoppingCartPage).bbv-cart-summary-scope .bbv-cart-total-fixed {
    bottom: calc(var(--bbv-global-nav-height, 0px) + var(--bbv-cart-controls-height, 0px));
    overflow-y: hidden;
  }
  :is(#modal-cart, #shoppingCartPage).bbv-cart-summary-scope .bbv-cart-checkout-fixed {
    bottom: var(--bbv-global-nav-height, 0px);
    padding-bottom: 8px;
    overflow-y: auto;
  }
}
@media (max-width: 359px) {
  body.bb-visual-fase1.bbv-purchase-ready #single-product #product_form > .bbv-purchase-row { gap: 0 6px; padding-right: 8px; padding-left: 8px; }
}


/* SOURCE visual-borobo-mobile-r1/src/shipping-panel.css */
/* Mobile panel uses the original native shipping root in its original form.
 * Desktop phase 3B styles and collapse state remain authoritative.
 */
.bbv-shipping-close,
.bbv-shipping-backdrop,
.bbv-shipping-nav { display: none; }

@media (max-width: 767px) {
  body.bb-visual-fase1 .bbv-bottom-nav > button.bbv-shipping-nav {
    position: relative; display: flex; flex: 1 1 0; flex-direction: column;
    align-items: center; justify-content: center; gap: 4px; min-width: 0; min-height: 50px;
    margin: 0; padding: 4px 2px; border: 0; border-radius: 8px; background: transparent;
    color: var(--bbv-ink, #111820); font: inherit; font-size: 11px; line-height: 1.2;
    text-align: center; cursor: pointer;
  }
  body.bb-visual-fase1 .bbv-bottom-nav > button.bbv-shipping-nav[hidden] { display: none; }
  body.bb-visual-fase1 .bbv-bottom-nav > button.bbv-shipping-nav:focus-visible {
    outline: 2px solid var(--bbv-green, #194c3c); outline-offset: 2px;
  }
  body.bb-visual-fase1 #single-product #product-shipping-container[data-bbv-mobile-shipping="ready"] { display: none; }
  body.bb-visual-fase1.bbv-shipping-open { overflow: hidden; }
  body.bb-visual-fase1.bbv-shipping-open .bbv-shipping-backdrop:not([hidden]) {
    display: block; position: fixed; inset: 0; z-index: 1100;
    background: rgb(17 24 32 / 42%); touch-action: none;
  }
  body.bb-visual-fase1 #single-product #product-shipping-container[data-bbv-mobile-shipping="ready"][data-bbv-shipping-open="1"] {
    display: block; position: fixed; z-index: 1101;
    top: max(12px, env(safe-area-inset-top, 0px)); right: 12px;
    bottom: max(12px, env(safe-area-inset-bottom, 0px)); left: 12px;
    width: auto; max-width: none; min-width: 0; height: auto; min-height: 0; max-height: none;
    margin: 0; padding: 0 16px 20px; border: 1px solid var(--bbv-border, #dce2de);
    border-radius: 14px; background: #fff; color: var(--bbv-ink, #111820);
    overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch; box-shadow: 0 10px 36px rgb(17 24 32 / 18%);
  }
  body.bb-visual-fase1 #single-product #product-shipping-container[data-bbv-mobile-shipping="ready"] .bb-shipping-head {
    position: sticky; top: 0; z-index: 2; align-items: flex-start; gap: 10px;
    margin: 0 -1px 14px; padding: 14px 0 12px; border-bottom: 1px solid var(--bbv-border, #dce2de);
    background: #fff;
  }
  body.bb-visual-fase1 #single-product #product-shipping-container[data-bbv-mobile-shipping="ready"] #bb-shipping-title { font-size: 17px; line-height: 1.3; }
  body.bb-visual-fase1 #single-product #product-shipping-container[data-bbv-mobile-shipping="ready"] .bb-shipping-hint { font-size: 12px; }
  body.bb-visual-fase1 #single-product #product-shipping-container[data-bbv-mobile-shipping="ready"] .bb-shipping-toggle { display: none; }
  body.bb-visual-fase1 #single-product #product-shipping-container[data-bbv-mobile-shipping="ready"] .bbv-shipping-close {
    display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center;
    min-height: 44px; min-width: 52px; margin: -3px 0 0; padding: 8px;
    border: 1px solid var(--bbv-border, #dce2de); border-radius: 8px; background: #fff;
    color: var(--bbv-ink, #111820); font: inherit; font-size: 12px; cursor: pointer;
  }
  /* Override only phase 3B's presentation collapse; never click its toggle or
   * change its flag. Desktop resumes the exact previous collapsed state. */
  body.bb-visual-fase1 #single-product #product-shipping-container[data-bbv-mobile-shipping="ready"][data-bbv-shipping-open="1"] > #bb-shipping-native-content { display: flex; }
  body.bb-visual-fase1 #single-product #product-shipping-container[data-bbv-mobile-shipping="ready"] .js-shipping-input { font-size: 16px; min-height: 44px; }
  body.bb-visual-fase1 #single-product #product-shipping-container[data-bbv-mobile-shipping="ready"] .js-calculate-shipping { min-height: 44px; }
}


/* SOURCE visual-borobo-mobile-r1-fix-shipping-layout/patch/shipping-layout.css */
/* LOCAL DRAFT: mobile native shipping layout only; not a deployment bundle.
 * Preserve both native panes, controls, state classes, values and quote output.
 * Include the previous closed-state correction without assuming it is deployed.
 * Purchase-dock stacking is supplied by the coordinated purchase-overlay draft.
 */
@media (max-width: 767px) {
  /* Native available-variant .show() writes inline display:block. Keep the
   * initialized mobile panel out of normal PDP flow whenever it is closed. */
  body.bb-visual-fase1 #single-product #product-shipping-container[data-bbv-mobile-shipping="ready"][data-bbv-shipping-open="0"] {
    display: none !important;
  }
  /* The native 45/110/200px head assumes absolutely positioned content. Give
   * the active native pane real height so wrapped copy/error rows cannot spill
   * into results, cart links, totals or the shipping dialog title. */
  :is(body.bb-visual-fase1 #single-product #product-shipping-container[data-bbv-mobile-shipping="ready"][data-bbv-shipping-open="1"], #modal-cart #cart-shipping-container, #shoppingCartPage #cart-shipping-container) .js-shipping-calculator-head {
    height: auto; min-height: 0; margin-bottom: 12px;
  }
  :is(body.bb-visual-fase1 #single-product #product-shipping-container[data-bbv-mobile-shipping="ready"][data-bbv-shipping-open="1"], #modal-cart #cart-shipping-container, #shoppingCartPage #cart-shipping-container) .js-shipping-calculator-head > :is(.js-shipping-calculator-form, .js-shipping-calculator-with-zipcode) {
    position: static !important; top: auto; z-index: auto;
    width: 100%; max-width: 100%; min-width: 0; margin-bottom: 0 !important;
  }
  /* Existing with-form/with-zip selects the mode. Native initialization or a
   * reset can leave both panes transition-up-active, so activity alone is not
   * sufficient. Never force display on a pane native code explicitly hides. */
  :is(body.bb-visual-fase1 #single-product #product-shipping-container[data-bbv-mobile-shipping="ready"][data-bbv-shipping-open="1"], #modal-cart #cart-shipping-container, #shoppingCartPage #cart-shipping-container) .js-shipping-calculator-head.with-zip > .js-shipping-calculator-form,
  :is(body.bb-visual-fase1 #single-product #product-shipping-container[data-bbv-mobile-shipping="ready"][data-bbv-shipping-open="1"], #modal-cart #cart-shipping-container, #shoppingCartPage #cart-shipping-container) .js-shipping-calculator-head.with-form > .js-shipping-calculator-with-zipcode,
  :is(body.bb-visual-fase1 #single-product #product-shipping-container[data-bbv-mobile-shipping="ready"][data-bbv-shipping-open="1"], #modal-cart #cart-shipping-container, #shoppingCartPage #cart-shipping-container) .js-shipping-calculator-head > :is(.js-shipping-calculator-form, .js-shipping-calculator-with-zipcode):not(.transition-up-active) {
    display: none !important;
  }
  :is(body.bb-visual-fase1 #single-product #product-shipping-container[data-bbv-mobile-shipping="ready"][data-bbv-shipping-open="1"], #modal-cart #cart-shipping-container, #shoppingCartPage #cart-shipping-container) :is(.js-shipping-calculator-spinner, .js-shipping-calculator-response) {
    float: none !important; clear: both; min-width: 0;
  }
  :is(body.bb-visual-fase1 #single-product #product-shipping-container[data-bbv-mobile-shipping="ready"][data-bbv-shipping-open="1"], #modal-cart #cart-shipping-container, #shoppingCartPage #cart-shipping-container) .js-shipping-calculator-head.with-form + .shipping-spinner-container {
    margin-top: 0;
  }

  /* CP summary and its own Cambiar CP button share one wrapping row. */
  :is(body.bb-visual-fase1 #single-product #product-shipping-container[data-bbv-mobile-shipping="ready"][data-bbv-shipping-open="1"], #modal-cart #cart-shipping-container, #shoppingCartPage #cart-shipping-container) .js-shipping-calculator-with-zipcode > .container > .row {
    display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0;
  }
  :is(body.bb-visual-fase1 #single-product #product-shipping-container[data-bbv-mobile-shipping="ready"][data-bbv-shipping-open="1"], #modal-cart #cart-shipping-container, #shoppingCartPage #cart-shipping-container) .js-shipping-calculator-with-zipcode > .container > .row > .col {
    flex: 1 1 140px; min-width: 0; padding: 0; overflow-wrap: anywhere;
  }
  :is(body.bb-visual-fase1 #single-product #product-shipping-container[data-bbv-mobile-shipping="ready"][data-bbv-shipping-open="1"], #modal-cart #cart-shipping-container, #shoppingCartPage #cart-shipping-container) .js-shipping-calculator-with-zipcode > .container > .row > .col-auto {
    flex: 0 0 auto; max-width: 100%; padding: 0;
  }
  :is(body.bb-visual-fase1 #single-product #product-shipping-container[data-bbv-mobile-shipping="ready"][data-bbv-shipping-open="1"], #modal-cart #cart-shipping-container, #shoppingCartPage #cart-shipping-container) .js-shipping-calculator-change-zipcode {
    display: inline-flex; align-items: center; justify-content: center;
    min-height: 44px; max-width: 100%; white-space: normal;
  }

  /* Native label/help/error rows span both columns; inputs can shrink inside
   * their own column instead of pushing Calcular outside a 320px viewport. */
  :is(body.bb-visual-fase1 #single-product #product-shipping-container[data-bbv-mobile-shipping="ready"][data-bbv-shipping-open="1"], #modal-cart #cart-shipping-container, #shoppingCartPage #cart-shipping-container) .js-shipping-calculator-form > .form-row {
    display: grid; grid-template-columns: minmax(0, 1fr) minmax(90px, auto);
    align-items: start; gap: 8px; margin: 0;
  }
  :is(body.bb-visual-fase1 #single-product #product-shipping-container[data-bbv-mobile-shipping="ready"][data-bbv-shipping-open="1"], #modal-cart #cart-shipping-container, #shoppingCartPage #cart-shipping-container) .js-shipping-calculator-form > .form-row > :is(.col-6, .col-12) {
    width: auto; max-width: none; min-width: 0; padding: 0;
  }
  :is(body.bb-visual-fase1 #single-product #product-shipping-container[data-bbv-mobile-shipping="ready"][data-bbv-shipping-open="1"], #modal-cart #cart-shipping-container, #shoppingCartPage #cart-shipping-container) .js-shipping-calculator-form > .form-row > .col-12 {
    grid-column: 1 / -1;
  }
  :is(body.bb-visual-fase1 #single-product #product-shipping-container[data-bbv-mobile-shipping="ready"][data-bbv-shipping-open="1"], #modal-cart #cart-shipping-container, #shoppingCartPage #cart-shipping-container) .js-shipping-input {
    box-sizing: border-box; width: 100%; min-width: 0; max-width: 100%; min-height: 44px; font-size: 16px;
  }
  :is(body.bb-visual-fase1 #single-product #product-shipping-container[data-bbv-mobile-shipping="ready"][data-bbv-shipping-open="1"], #modal-cart #cart-shipping-container, #shoppingCartPage #cart-shipping-container) .js-calculate-shipping {
    min-height: 44px; max-width: 100%; white-space: normal;
  }

  /* Cerrar belongs to the dialog title row, not the native postcode row. */
  body.bb-visual-fase1 #single-product #product-shipping-container[data-bbv-mobile-shipping="ready"][data-bbv-shipping-open="1"] > .bb-shipping-head {
    display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: start; gap: 10px;
    background: #fff !important; opacity: 1 !important;
    z-index: 201; isolation: isolate; overflow: hidden;
  }
  body.bb-visual-fase1 #single-product #product-shipping-container[data-bbv-mobile-shipping="ready"][data-bbv-shipping-open="1"] .bbv-shipping-close {
    align-self: start; margin: 0;
  }
  body.bb-visual-fase1 #single-product #product-shipping-container[data-bbv-mobile-shipping="ready"][data-bbv-shipping-open="1"] .bbv-shipping-close:focus-visible {
    outline-offset: -3px;
  }
  /* The generic entry hint does not describe the native saved-CP/results view. */
  body.bb-visual-fase1 #single-product #product-shipping-container[data-bbv-mobile-shipping="ready"][data-bbv-shipping-open="1"]:has(.js-shipping-calculator-head.with-zip > .js-shipping-calculator-with-zipcode.transition-up-active) .bb-shipping-hint {
    display: none;
  }
}


/* SOURCE visual-borobo-mobile-r1-fix-shipping-layout/src/global-navigation.css */
/* Global mobile shell. Append after R1 and purchase overlay. No auth/UI state
 * is inferred from customer data; the real Nube widget remains untouched. */
.bbv-global-navigation { display: none; }
@media (max-width: 767px) {
  body.bbv-global-nav-ready { padding-bottom: calc(var(--bbv-global-nav-height, 0px) + 16px); }
  body.bbv-global-nav-ready.bbv-purchase-ready { padding-bottom: calc(var(--bbv-global-nav-height, 0px) + var(--bbv-purchase-stack-height, 0px) + 16px); }
  body.bbv-global-nav-ready.bbv-cart-summary-active { padding-bottom: calc(var(--bbv-global-nav-height, 0px) + 16px); }
  body.bbv-global-nav-ready.bbv-purchase-ready.bbv-cart-summary-active { padding-bottom: calc(var(--bbv-global-nav-height, 0px) + var(--bbv-purchase-stack-height, 0px) + 16px); }
  /* The phase1 dock now contains navigation only. Keep the same native cookie
   * notice above the measured foreground controls, without changing its ack. */
  body.bbv-global-nav-ready { --bbv-cookie-controls-clearance: 0px; }
  body.bbv-global-nav-ready.bbv-purchase-ready:not(.bbv-global-panel-open):not(.bbv-global-external-dialog) { --bbv-cookie-controls-clearance: var(--bbv-purchase-stack-height, 0px); }
  body.bbv-global-nav-ready.bbv-cart-summary-active:not(.bbv-global-external-dialog) { --bbv-cookie-controls-clearance: var(--bbv-cart-summary-height, 0px); }
  body.bbv-global-nav-ready .js-notification.js-notification-cookie-banner.notification-fixed-bottom {
    bottom: calc(var(--bbv-global-nav-height, 0px) + var(--bbv-cookie-controls-clearance, 0px) + 6px) !important;
  }
  body.bbv-global-nav-ready .bbv-mobile-dock.bbv-global-navigation,
  body.bb-visual-fase1.bbv-global-nav-ready.bbv-native-cart-open .bbv-mobile-dock.bbv-global-navigation {
    position: fixed; inset: auto 0 0; z-index: 21000; display: block !important;
    width: 100%; margin: 0; padding: 0; max-height: none; overflow: visible;
    background: #fff; border-top: 1px solid #dce2de; box-sizing: border-box;
    visibility: visible; opacity: 1; pointer-events: auto;
  }
  body.bbv-global-nav-ready .bbv-global-navigation > .bbv-bottom-nav {
    display: flex; align-items: stretch; justify-content: space-around; gap: 4px;
    margin: 0; padding: 3px 6px calc(3px + env(safe-area-inset-bottom, 0px));
    background: #fff; box-sizing: border-box;
  }
  body.bbv-global-nav-ready .bbv-global-navigation .bbv-bottom-nav > .bbv-nav-link {
    position: relative; display: flex; flex: 1 1 0; flex-direction: column;
    align-items: center; justify-content: center; gap: 3px;
    min-width: 0; min-height: 48px; margin: 0; padding: 3px 0;
    border: 0; border-radius: 6px; background: transparent; color: #111820;
    font: inherit; font-size: 10px; line-height: 1.2; text-decoration: none; text-align: center;
    box-sizing: border-box; cursor: pointer;
  }
  body.bbv-global-nav-ready .bbv-global-navigation .bbv-nav-label { display: block; max-width: 100%; font: inherit; color: inherit; overflow-wrap: anywhere; }
  body.bbv-global-nav-ready .bbv-global-navigation .bbv-nav-icon { width: 22px; height: 22px; flex: 0 0 22px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
  body.bbv-global-nav-ready .bbv-global-navigation .bbv-nav-link[aria-disabled="true"] { color: #6a716e; cursor: default; }
  body.bbv-global-nav-ready .bbv-global-navigation .bbv-nav-link.bbv-global-panel-active { color: #194c3c; background: #e9f2ed; }
  body.bbv-global-nav-ready .bbv-global-navigation [data-bbv-global-close-mark] { display: none; position: absolute; top: -9px; left: calc(50% - 8px); width: 16px; height: 16px; font: 16px/16px Arial,sans-serif; color: #111820; background: #fff; border-radius: 50%; pointer-events: auto; }
  body.bbv-global-nav-ready .bbv-global-navigation .bbv-global-panel-active > [data-bbv-global-close-mark] { display: block; }
  body.bbv-global-nav-ready .bbv-global-navigation .bbv-nav-link:focus-visible { outline: 2px solid #194c3c; outline-offset: -2px; }

  /* Hide duplicate mobile header access only after the new nav is installed. */
  body.bbv-global-nav-ready .head-main > .section-topbar,
  body.bbv-global-nav-ready .head-main .nav-row,
  body.bbv-global-nav-ready .head-main [data-component="menu-button"],
  body.bbv-global-nav-ready .head-main [data-toggle="#nav-search"],
  body.bbv-global-nav-ready .head-main .borobo-e11-search-trigger,
  body.bbv-global-nav-ready .head-main #ajax-cart,
  body.bbv-global-nav-ready .head-main .utilities-item:has(> #ajax-cart),
  body.bbv-global-nav-ready .head-main .js-search-container,
  body.bbv-global-nav-ready .head-main .js-search-suggest { display: none !important; }
  body.bbv-global-nav-ready .head-main { border-bottom: 1px solid #dce2de; background: #fff; box-shadow: none; }
  body.bbv-global-nav-ready .head-main > .container-fluid { padding-top: 0 !important; padding-bottom: 0 !important; }
  body.bbv-global-nav-ready .head-main .js-nav-logo-bar { min-height: 44px; padding-top: 0; padding-bottom: 0; }
  body.bbv-global-nav-ready .head-main #logo { margin: 0 auto !important; text-align: center; }
  body.bbv-global-nav-ready .head-main #logo > a { display: inline-flex; align-items: center; min-height: 44px; }
  body.bbv-global-nav-ready .head-main #logo img.logo-img { width: auto; max-height: 38px; margin-top: 0 !important; margin-bottom: 0 !important; }
  body.bbv-global-nav-ready :is(#modal-cart,#nav-hamburger,#nav-search).modal-show {
    top: 0; bottom: var(--bbv-global-nav-height, 0px);
    height: calc(100dvh - var(--bbv-global-nav-height, 0px)); max-height: calc(100dvh - var(--bbv-global-nav-height, 0px));
  }
  body.bbv-global-nav-ready.bbv-shipping-open #single-product #product-shipping-container[data-bbv-mobile-shipping="ready"][data-bbv-shipping-open="1"] { bottom: calc(var(--bbv-global-nav-height, 0px) + 12px); }
  body.bbv-global-nav-ready .bbv-cart-scroll-reserve { padding-bottom: calc(var(--bbv-cart-summary-height, 0px) + 24px) !important; }
  /* An unmanaged native dialog retains priority and its own focus/auth flow.
   * Global navigation resumes after it closes; no native dialog is restyled. */
  body.bbv-global-nav-ready.bbv-global-external-dialog .bbv-mobile-dock.bbv-global-navigation,
  body.bb-visual-fase1.bbv-global-nav-ready.bbv-native-cart-open.bbv-global-external-dialog .bbv-mobile-dock.bbv-global-navigation {
    display: none !important;
  }
  body.bbv-global-nav-ready.bbv-global-external-dialog :is(.bbv-purchase-row,.bbv-cart-total-fixed,.bbv-cart-checkout-fixed) {
    visibility: hidden !important; pointer-events: none !important;
  }
}


/* SOURCE visual-borobo-mobile-r1-fix-shipping-layout/src/nube-header.css */
/* Native Nube informational widget only. All nodes keep their native parents;
   the future wallet-buy-now panel therefore retains its closest form. */
@media (max-width: 767px) {
  body.template-product.bbv-global-nav-ready.bbv-purchase-ready #single-product #product_form > .bbv-purchase-row[data-bbv-nube-row] {
    z-index: var(--bbv-nube-row-z);
    transition-property: none !important;
  }
  body.template-product.bbv-global-nav-ready.bbv-purchase-ready #product_form #emailPanelProduct[data-bbv-nube-header] {
    position: fixed;
    top: var(--bbv-nube-top);
    left: var(--bbv-nube-left);
    right: auto;
    bottom: auto;
    width: 48px;
    height: 13px;
    min-width: 0;
    max-width: none;
    padding: 0 !important;
    margin: 0 !important;
    transition-property: none !important;
    z-index: 1;
    transition: none;
  }
  body.template-product #emailPanelProduct[data-bbv-nube-header] > [data-testid="email-panel-product-page"] {
    width: 48px;
    height: 13px;
    padding: 0 !important;
    margin: 0 !important;
    transition-property: none !important;
  }
  body.template-product #emailPanelProduct[data-bbv-nube-header] > [data-testid="email-panel-product-page"] > div:first-child {
    margin: 0 !important;
    transition-property: none !important;
  }
  body.template-product #emailPanelProduct[data-bbv-nube-header] [data-bbv-nube-info-leaf]:not(a[href],button,input,select,textarea,[role="button"],[role="link"],[contenteditable]:not([contenteditable="false"]),[tabindex]):not(:has(a[href],button,input,select,textarea,[role="button"],[role="link"],[contenteditable]:not([contenteditable="false"]),[tabindex])) {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
    transition-property: none !important;
  }
  body.template-product.bbv-global-nav-ready .head-main .js-nav-logo-bar > :has(> #logo[data-bbv-nube-logo]) {
    text-align: right !important;
  }
  body.template-product.bbv-global-nav-ready .head-main #logo[data-bbv-nube-logo] {
    text-align: right !important;
    margin-left: auto !important;
    margin-right: 0 !important;
  }
}


/* SOURCE pdp-error-20261006-1751/header-fix/src/mobile-header.css */
/* Same native header/logo. Measured reserve is the only new layout node. */
[data-bbv-header-reserve] { box-sizing: border-box; width: 100%; pointer-events: none; }
@media (max-width: 767px) {
  body:is(.template-home,.template-product).bbv-global-nav-ready > header.js-head-main.head-main[data-bbv-header-fixed] {
    position: fixed !important;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
  }
  body:is(.template-home,.template-product).bbv-global-nav-ready > header.js-head-main.head-main[data-bbv-header-fixed] .js-nav-logo-bar > [data-bbv-header-search-row] {
    display: none !important;
  }
}


/* SOURCE pdp-error-strip-20261006/src/error-strip.css */
/* The terminal cart presentation masks the minimum copy but reserves its
 * geometry. Remove only the empty mobile PDP panel's paint and hit target;
 * keep all dimensions and the separate error/review UI unchanged. */
@media (max-width: 767px) {
  html:is([data-bb-cart-transaction="review"], [data-bb-cart-transaction="error"])[data-bb-cart-transaction-mask][data-bb-cart-presentation-suspended="true"] body.bb-visual-fase1.bbv-purchase-ready .bbv-purchase-dock > .bb-minimum-panel[data-bb-minimum-owned] {
    background: transparent;
    border-color: transparent;
    pointer-events: none;
  }
}
