/* ==========================================================================
   MDSuplementos.com redesign — step 1, 2026-11-13
   Visual / layout only. Does not change prices, forms, checkout, or payment.
   White page like dermstore.com; product photos provide the color.
   Sage (#2F4A43) is used only for buttons. Gold (#C4A574) is only a tiny accent.
   #F6F5F3 is only for the search field and small cards — never large areas.
   ========================================================================== */

/* ---------- page ---------- */
html {
  background: #FFFFFF !important;
}
body,
body.bt-home-page,
#bt_container,
#bt_header,
#bt_footer,
.container,
.boss_header,
.bt-footer-middle,
#content,
#content.col-sm-9,
.box,
.box-content,
.caption,
footer,
header {
  background-color: #FFFFFF !important;
  background-image: none !important;
}
body,
body.bt-home-page {
  font-family: Outfit, "Helvetica Neue", Arial, sans-serif !important;
  color: #1A1A1A !important;
  font-size: 15px;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  margin: 0;
  padding: 0;
}
a { color: #1A1A1A; }
a:hover { color: #2F4A43; }

/* Hide the old loading spinner so pages appear faster */
#bt_loading { display: none !important; }

/* ---------- hide old chrome (replaced by .mds-header) ---------- */
#top,
#bt_header > nav#top,
#bt_header > header,
#bt_header > .boss-new-position,
#bt_header > .bt-mobile,
#bt_header > a.open-bt-mobile,
#bt_header > .container,
.boss_header,
.bt-mobile,
a.open-bt-mobile,
.header_category,
#column-right,
.hero-luxury-spacer {
  display: none !important;
}

/* Left category sidebar is gone. On inner pages the old left column is hidden
   so content is full width. On the homepage, #column-left holds brand photos
   and is restyled as a full-width row (no ASP move needed). */
body:not(.bt-home-page) #column-left {
  display: none !important;
}
.bt-home-page #column-left {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  float: none !important;
  width: 100% !important;
  max-width: 1440px !important;
  margin: 28px auto 8px !important;
  padding: 0 48px !important;
  background: #FFFFFF !important;
  box-sizing: border-box;
}
.bt-home-page #column-left > *:not(.bt-staticblock-college) {
  display: none !important;
}

/* Full-width content once the left column is gone */
#column-left + #content.col-sm-9,
#content.col-sm-9,
#content,
.bt-home-page #content,
.bt-home-page #column-left + #content.col-sm-9 {
  width: 100% !important;
  max-width: 1440px !important;
  float: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 48px !important;
  padding-right: 48px !important;
}

/* ==========================================================================
   New header
   ========================================================================== */
.mds-header {
  background: #FFFFFF;
  color: #1A1A1A;
  position: relative;
  z-index: 1000;
  font-family: Outfit, "Helvetica Neue", Arial, sans-serif;
}
.mds-header a { text-decoration: none; color: inherit; }
.mds-header-inner {
  display: flex;
  align-items: center;
  gap: 28px;
  padding: 16px 48px 14px;
  max-width: 1440px;
  margin: 0 auto;
  box-sizing: border-box;
}
.mds-logo {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}
.mds-logo img {
  display: block;
  height: 64px;
  width: auto;
  max-width: 280px;
}
.mds-menu-btn {
  display: none;
  background: none;
  border: 0;
  padding: 8px;
  margin: 0;
  cursor: pointer;
  color: #1A1A1A;
  line-height: 0;
  flex-shrink: 0;
}
.mds-menu-btn svg { display: block; }

/* Search — same form action and field names as today (mdsearch.asp, searchterm, searchaction, orderby) */
.mds-search {
  flex: 1;
  display: flex;
  align-items: center;
  height: 44px;
  max-width: 640px;
  margin: 0 auto;
  background: #F6F5F3;
  border: 1px solid #E8E6E3;
  border-radius: 24px;
  padding: 0 6px 0 18px;
  box-sizing: border-box;
}
.mds-search input[name="searchterm"] {
  flex: 1;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  outline: none;
  height: 42px;
  font-family: Outfit, "Helvetica Neue", Arial, sans-serif;
  font-size: 14px;
  font-weight: 400;
  color: #1A1A1A;
  padding: 0 10px 0 0;
  min-width: 0;
  width: auto;
}
.mds-search input[name="searchterm"]::placeholder {
  color: #737373;
  opacity: 1;
}
.mds-search button[name="searchaction"],
.mds-search input[name="searchaction"] {
  flex-shrink: 0;
  height: 34px;
  padding: 0 18px;
  border: 0;
  border-radius: 17px;
  background: #2F4A43;
  color: #FFFFFF;
  font-family: Outfit, "Helvetica Neue", Arial, sans-serif;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  cursor: pointer;
}
.mds-search button[name="searchaction"]:hover,
.mds-search input[name="searchaction"]:hover {
  background: #243832;
}
.mds-search-orderby { display: none; } /* field is still submitted as hidden input popularity */

.mds-actions {
  display: flex;
  align-items: center;
  gap: 28px;
  flex-shrink: 0;
  margin-left: auto;
}
.mds-action {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #1A1A1A !important;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  white-space: nowrap;
}
.mds-action svg { display: block; flex-shrink: 0; }
.mds-action:hover { color: #2F4A43 !important; }
.mds-cart-count {
  display: inline-block;
  min-width: 0;
  font-weight: 600;
  color: #2F4A43;
}
.mds-cart-count:empty,
.mds-cart-count.is-empty { display: none; }

/* ---------- category bar ---------- */
.mds-cats {
  border-top: 1px solid #E8E6E3;
  border-bottom: 1px solid #E8E6E3;
  background: #FFFFFF;
}
.mds-cats-inner {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 48px;
  box-sizing: border-box;
  list-style: none;
}
.mds-cats-inner,
.mds-cats-inner ul { margin: 0; padding-left: 0; list-style: none; }
.mds-cat {
  position: relative;
  flex: 0 1 auto;
}
.mds-cat > a {
  display: flex;
  align-items: center;
  height: 48px;
  color: #1A1A1A !important;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.10em;
  text-transform: uppercase;
  white-space: nowrap;
  padding: 0 6px;
}
.mds-cat > a:hover,
.mds-cat:hover > a,
.mds-cat.is-open > a {
  color: #2F4A43 !important;
}
/* tiny gold underline on hover only */
.mds-cat > a::after {
  content: "";
  position: absolute;
  left: 6px;
  right: 6px;
  bottom: 0;
  height: 1px;
  background: #C4A574;
  opacity: 0;
}
.mds-cat:hover > a::after,
.mds-cat.is-open > a::after { opacity: 1; }

.mds-drop {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  min-width: 220px;
  background: #FFFFFF;
  border: 1px solid #E8E6E3;
  box-shadow: 0 8px 24px rgba(26,26,26,0.06);
  padding: 10px 0;
  z-index: 1100;
  list-style: none;
  margin: 0;
}
.mds-cat:hover > .mds-drop,
.mds-cat.is-open > .mds-drop { display: block; }
.mds-drop a {
  display: block;
  padding: 8px 18px;
  color: #1A1A1A !important;
  font-size: 13px;
  font-weight: 400;
  letter-spacing: 0.02em;
  text-transform: none;
  white-space: nowrap;
}
.mds-drop a:hover {
  background: #FFFFFF;
  color: #2F4A43 !important;
}

/* ==========================================================================
   Homepage hero — one image, one caption, top right
   ========================================================================== */
.menu_custom.row,
.header_slider,
.hero-luxury-slot {
  float: none !important;
  width: 100% !important;
  max-width: 1440px !important;
  height: auto !important;
  margin: 22px auto 0 !important;
  padding: 0 48px !important;
  box-sizing: border-box;
  background: #FFFFFF !important;
}
.hero-luxury-link {
  display: block;
  position: relative;
  width: 100%;
  text-decoration: none;
  line-height: 0;
  background: #FFFFFF;
}
.hero-luxury-link img {
  width: 100%;
  height: auto;
  display: block;
  border: 0;
  max-width: 100%;
}
.hero-luxury-caption {
  position: absolute !important;
  top: 28px !important;
  right: 36px !important;
  left: auto !important;
  bottom: auto !important;
  text-align: right !important;
  z-index: 2;
  pointer-events: none;
  font-family: Outfit, "Helvetica Neue", Arial, sans-serif !important;
  color: #FFFFFF !important;
  line-height: 1.2 !important;
  text-shadow: 0 1px 2px rgba(0,0,0,0.35);
}
.hero-luxury-line1,
.hero-luxury-line2 {
  display: block;
  font-family: Outfit, "Helvetica Neue", Arial, sans-serif !important;
  font-weight: 500 !important;
  letter-spacing: 0.01em;
  color: #FFFFFF !important;
}
.hero-luxury-line1 { font-size: 28px !important; line-height: 1.15 !important; }
.hero-luxury-line2 { font-size: 22px !important; margin-top: 4px !important; font-weight: 400 !important; }

/* Brand banners — restyle as a clean photo row, no colored blocks */
.mds-brand-row,
#mds-brand-banners {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  max-width: 1440px;
  margin: 28px auto 8px;
  padding: 0 48px;
  box-sizing: border-box;
  background: #FFFFFF;
}
.mds-brand-row .bt-staticblock-college,
#mds-brand-banners .bt-staticblock-college,
.bt-staticblock-college {
  position: relative;
  margin: 0 0 16px 0 !important;
  background: #FFFFFF !important;
  border: 1px solid #E8E6E3;
  overflow: hidden;
}
.bt-staticblock-college img {
  width: 100%;
  height: auto;
  display: block;
}
/* Hide the old colored text/button overlay; the photo is the banner */
.bt-staticblock-college .text-info { display: none !important; }

/* Homepage section headings — quiet, not colored blocks */
h1, h2, h3,
.box-heading h1,
.box-heading h2,
.box-heading h3,
.boss_heading,
.bt-heading {
  font-family: Outfit, "Helvetica Neue", Arial, sans-serif !important;
  color: #1A1A1A !important;
  font-weight: 500 !important;
  background: transparent !important;
  background-color: transparent !important;
  border-color: #E8E6E3 !important;
}
.box-heading h1,
#content h1,
.bt-home-page h1 {
  font-size: 22px !important;
  letter-spacing: 0.04em;
  text-transform: none;
  margin: 36px 0 18px !important;
  padding: 0 !important;
  border: 0 !important;
}

/* ==========================================================================
   Product listing cards
   ========================================================================== */
.product-layout,
.product-layout.product-list,
.product-layout.product-grid {
  background: #FFFFFF !important;
  padding: 12px !important;
}
.product-thumb,
.product-layout .product-thumb,
.product-related ul li .relt_product {
  background: #FFFFFF !important;
  border: 1px solid #E8E6E3 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  transition: border-color 0.2s ease;
}
.product-layout:hover .product-thumb,
.product-thumb:hover {
  box-shadow: none !important;
  border-color: #1A1A1A !important;
}
.product-thumb .image,
.product-thumb .image img,
.product-layout .product-thumb .image {
  background: #FFFFFF !important;
}
.product-thumb .caption,
.product-thumb .name,
.product-thumb .name a,
.product-thumb .name span,
span[itemprop="name"] {
  font-family: Outfit, "Helvetica Neue", Arial, sans-serif !important;
  color: #1A1A1A !important;
  font-weight: 400 !important;
  background: transparent !important;
}
span[itemprop="description"],
.product-thumb .name span[style*="808080"] {
  color: #737373 !important;
  font-family: Outfit, "Helvetica Neue", Arial, sans-serif !important;
}
.product-thumb .price,
.price,
span[itemprop="price"],
span[itemprop="priceCurrency"] {
  font-family: Outfit, "Helvetica Neue", Arial, sans-serif !important;
  color: #1A1A1A !important;
  font-weight: 600 !important;
  background: transparent !important;
}
.price-old,
.price .price-old {
  color: #737373 !important;
  font-weight: 400 !important;
  text-decoration: line-through;
}
.price-new,
.price .price-new,
.price-special,
span.sale,
.price ins {
  color: #9C4B42 !important;
  font-weight: 600 !important;
}
/* "Frete Grátis" and similar promo notes: muted, not a loud red */
.product-thumb .price span[style*="cc0000"],
.product-thumb .price span[style*="#cc0000"] {
  color: #737373 !important;
  font-size: 12px !important;
  font-weight: 400 !important;
}

/* Add-to-cart — sage button. Do not change the form or field names.
   The existing control is often an <input type=image>; we restyle surrounding buttons. */
.btn-cart,
.button-group .btn-cart,
a.btn-cart,
button.btn-cart,
.btn.btn-primary,
.btn-shopnow,
input[type="submit"].btn,
#button-cart,
.product-thumb .button-group button {
  background: #2F4A43 !important;
  background-image: none !important;
  border: 0 !important;
  border-radius: 999px !important;
  color: #FFFFFF !important;
  font-family: Outfit, "Helvetica Neue", Arial, sans-serif !important;
  font-weight: 500 !important;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  box-shadow: none !important;
}
.btn-cart:hover,
.btn.btn-primary:hover,
.btn-shopnow:hover {
  background: #243832 !important;
  color: #FFFFFF !important;
}

/* Quantity field — keep name=quantity, just tidy the look */
.product-thumb input[name="quantity"],
input[name="quantity"] {
  border: 1px solid #E8E6E3 !important;
  background: #FFFFFF !important;
  color: #1A1A1A !important;
  font-family: Outfit, "Helvetica Neue", Arial, sans-serif !important;
  padding: 4px 6px;
  height: auto;
}

/* ==========================================================================
   Product detail page
   ========================================================================== */
.product-info,
.product-info h1,
h1[itemprop="name"] {
  font-family: Outfit, "Helvetica Neue", Arial, sans-serif !important;
  color: #1A1A1A !important;
  background: #FFFFFF !important;
}
h1[itemprop="name"] {
  font-size: 26px !important;
  font-weight: 500 !important;
  letter-spacing: 0;
  line-height: 1.3;
  margin: 0 0 16px !important;
}
.product-info .price,
.product-info span[itemprop="price"] {
  font-size: 22px !important;
  font-weight: 600 !important;
  color: #1A1A1A !important;
}

/* ==========================================================================
   Footer — white, thin top rule, no colored blocks
   ========================================================================== */
#bt_footer,
#bt_footer footer,
.bt-footer-middle,
.bt-block-footer,
.footer-social,
.footer-contact {
  background: #FFFFFF !important;
  background-image: none !important;
  color: #1A1A1A !important;
  border-color: #E8E6E3 !important;
}
#bt_footer {
  border-top: 1px solid #E8E6E3;
  margin-top: 0;
  padding: 24px 0 8px !important;
  font-family: Outfit, "Helvetica Neue", Arial, sans-serif !important;
}
/* Override leftover theme rule footer .bt-footer-middle{padding:65px 0;} */
#bt_footer footer .bt-footer-middle,
#bt_footer .bt-footer-middle {
  padding: 0 !important;
  margin: 0 !important;
}
#bt_footer .bt-block-footer img,
#bt_footer .mds-footer-brand img {
  margin-bottom: 0 !important;
}
#bt_footer footer h3,
#bt_footer h3,
#bt_footer .box-heading h3 {
  margin-bottom: 14px !important;
}
#bt_footer h3,
#bt_footer .box-heading h3 {
  font-family: Outfit, "Helvetica Neue", Arial, sans-serif !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.10em;
  text-transform: uppercase;
  color: #1A1A1A !important;
  background: transparent !important;
  margin: 0 0 14px !important;
}
#bt_footer a { color: #1A1A1A !important; }
#bt_footer a:hover { color: #2F4A43 !important; }
#bt_footer li,
#bt_footer p,
.footer-contact li,
.footer-contact span {
  color: #737373 !important;
  font-size: 13px;
  line-height: 1.8;
  background: transparent !important;
}
#bt_footer img { max-width: 100%; height: auto; }
#back_top {
  background: #1A1A1A !important;
  color: #FFFFFF !important;
  border: 0 !important;
}

/* Login / cart / generic forms — tidy, do not change field names */
#content form input[type="text"],
#content form input[type="password"],
#content form input[type="email"],
#content form select,
#content form textarea {
  border: 1px solid #E8E6E3 !important;
  background: #FFFFFF !important;
  color: #1A1A1A !important;
  font-family: Outfit, "Helvetica Neue", Arial, sans-serif !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}
#content form input[type="submit"],
#content form button[type="submit"],
#content .btn-primary {
  background: #2F4A43 !important;
  background-image: none !important;
  border: 0 !important;
  color: #FFFFFF !important;
  font-family: Outfit, "Helvetica Neue", Arial, sans-serif !important;
  font-weight: 500 !important;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

/* Kill leftover colored section backgrounds from the old theme */
.box-heading,
.boss_heading,
.bt-heading,
.nav-heading,
.panel-heading,
.bt-staticblock-freeshipping,
.well,
.panel,
.alert-info {
  background-color: #FFFFFF !important;
  background-image: none !important;
}

/* ==========================================================================
   Mobile
   ========================================================================== */
@media only screen and (max-width: 1100px) {
  .mds-cat > a { letter-spacing: 0.06em; font-size: 10px; padding: 0 4px; }
  .mds-header-inner,
  .mds-cats-inner,
  .menu_custom.row,
  .header_slider,
  .hero-luxury-slot,
  .mds-brand-row,
  #mds-brand-banners,
  #column-left + #content.col-sm-9,
  #content.col-sm-9,
  #content {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
}
@media only screen and (max-width: 900px) {
  /* Category bar becomes a menu button */
  .mds-menu-btn { display: block; }
  .mds-cats {
    display: none;
    border-bottom: 1px solid #E8E6E3;
  }
  .mds-header.is-open .mds-cats { display: block; }
  .mds-cats-inner {
    flex-direction: column;
    align-items: stretch;
    padding: 8px 16px 16px !important;
  }
  .mds-cat > a {
    height: 44px;
    font-size: 13px;
    letter-spacing: 0.08em;
    border-bottom: 1px solid #E8E6E3;
  }
  .mds-cat > a::after { display: none; }
  .mds-drop {
    position: static;
    border: 0;
    box-shadow: none;
    padding: 0 0 8px 12px;
    display: none;
  }
  .mds-cat.is-open > .mds-drop { display: block; }
  .mds-logo img { height: 48px; max-width: 200px; }
  .mds-actions { gap: 14px; }
  .mds-action span.mds-action-label { display: none; } /* icons only on very small? keep labels until 600 */
  .hero-luxury-caption { top: 14px !important; right: 16px !important; }
  .hero-luxury-line1 { font-size: 16px !important; }
  .hero-luxury-line2 { font-size: 13px !important; }
  .mds-brand-row,
  #mds-brand-banners { grid-template-columns: repeat(2, 1fr); padding-left: 24px; padding-right: 24px; }
  .header_slider, .hero-luxury-slot, .menu_custom.row { margin-top: 12px !important; padding-left: 16px !important; padding-right: 16px !important; }
}
@media only screen and (max-width: 720px) {
  .mds-header-inner { gap: 12px; padding: 10px 16px !important; flex-wrap: wrap; }
  .mds-search { order: 3; flex-basis: 100%; max-width: none; margin: 4px 0 6px; }
  .mds-logo img { height: 42px; }
  .mds-action-label { display: none; }
  #content, #content.col-sm-9, #column-left + #content.col-sm-9 {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}
@media only screen and (max-width: 480px) {
  .mds-brand-row, #mds-brand-banners { grid-template-columns: 1fr; }
  .hero-luxury-line1 { font-size: 14px !important; }
  .hero-luxury-line2 { font-size: 11px !important; }
}


/* ---------- payment, shipping and security logos in the footer (display only) ---------- */
/* Gray is the default (Bruno, 14 Nov 2026). Full color: add class "mds-pay-color"
   to <html>, or open any page with ?pay=color (test-only switch in mds-redesign-head.asp). */
html {
  --mds-pay-filter: grayscale(1);
  --mds-pay-opacity: 0.8;
}
html.mds-pay-color {
  --mds-pay-filter: none;
  --mds-pay-opacity: 1;
}
.mds-pay-logos,
.mds-ship-logos {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px 18px;
  list-style: none;
  margin: 0;
  padding: 0;
  background: #FFFFFF;
}
.mds-pay-logos li,
.mds-ship-logos li {
  display: flex;
  align-items: center;
  margin: 0;
  padding: 0;
  line-height: 0;
  background: transparent;
}
.mds-pay-logos img,
.mds-pay-logos svg,
.mds-ship-logos img,
.mds-ship-logos svg {
  display: block;
  height: 22px;
  width: auto;
  max-width: 140px;
  filter: var(--mds-pay-filter);
  opacity: var(--mds-pay-opacity);
  transition: filter 0.2s ease, opacity 0.2s ease;
}
html:not(.mds-pay-color) .mds-pay-logos li:hover img,
html:not(.mds-pay-color) .mds-pay-logos li:hover svg,
html:not(.mds-pay-color) .mds-pay-logos img:hover,
html:not(.mds-pay-color) .mds-ship-logos li:hover img,
html:not(.mds-pay-color) .mds-ship-logos img:hover {
  filter: none;
  opacity: 1;
}
#bt_footer .mds-pay-logos img,
#bt_footer .mds-ship-logos img { max-width: 140px; height: 22px; }

/* Segurança seals: already drawn in muted gray + gold, so no grayscale filter. */
.mds-sec-logos {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 12px;
  list-style: none;
  margin: 0;
  padding: 0;
  background: #FFFFFF;
}
.mds-sec-logos li {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  margin: 0;
  padding: 0;
  line-height: 0;
  background: transparent;
}
.mds-sec-logos img,
.mds-sec-logos svg {
  display: block;
  height: 48px;
  width: auto;
  max-width: none;
}
.mds-sec-logos a.mds-sec-link {
  display: block;
  line-height: 0;
  color: inherit !important;
}
.mds-sec-logos a.mds-sec-link:hover img,
.mds-sec-logos a.mds-sec-link:focus img {
  opacity: 0.82;
}
#bt_footer .mds-sec-logos img { max-width: none; height: 48px; width: auto; }
/* Use the new logo in the footer; leave logo2.png on disk */
#bt_footer a img[alt="MD Suplementos"],
#bt_footer a img[alt="MDSuplementos"] {
  /* actual src swap is in footer.asp; this just sizes it */
  height: 52px;
  width: auto;
  max-width: 220px;
}

@media only screen and (max-width: 900px) {
  .bt-home-page #column-left {
    grid-template-columns: repeat(2, 1fr) !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
}
@media only screen and (max-width: 480px) {
  .bt-home-page #column-left {
    grid-template-columns: 1fr !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}

/* ==========================================================================
   Fix pass 2026-11-13 (v=20261113c) — found in screenshot review
   ========================================================================== */
/* Category bar: keep side padding (an earlier shared rule reset padding-left) */
@media only screen and (min-width: 901px) {
  .mds-cats-inner { margin: 0 auto !important; padding: 0 32px !important; }
}
/* Old theme heading decorations (gray bar + icon_3.png arrow) */
.box-heading::before, .box-heading::after,
.box-heading h1::before, .box-heading h1::after,
.box-heading h2::before, .box-heading h2::after,
.box-heading h3::before, .box-heading h3::after {
  display: none !important;
  content: none !important;
  background: none !important;
}
/* Old dark hover overlay on brand banners */
.bt-staticblock-college a::before,
.bt-staticblock-college a::after { display: none !important; content: none !important; }
/* Product images must stay inside their box so name, price and button show */
.product-thumb .image {
  display: flex !important;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.product-thumb .image a { display: flex; align-items: center; justify-content: center; height: 100%; width: 100%; }
.product-thumb .image img {
  max-height: 100% !important;
  max-width: 100% !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain;
}
/* Mobile: hero and content use the full width */
@media only screen and (max-width: 720px) {
  .bt-home-page #content > .container,
  .menu_custom.row > .container,
  .container .menu_custom.row { padding-left: 0 !important; padding-right: 0 !important; }
  .menu_custom.row, .header_slider, .hero-luxury-slot { padding-left: 0 !important; padding-right: 0 !important; margin-left: 0 !important; margin-right: 0 !important; }
}
@media only screen and (max-width: 480px) {
  .bt-home-page #column-left { grid-template-columns: repeat(2, 1fr) !important; gap: 10px !important; }
  .mds-brand-row, #mds-brand-banners { grid-template-columns: repeat(2, 1fr); }
}
/* Add-to-cart image button: same input and form, only the picture is swapped by CSS (sage) */
input[type="image"][src*="addtocart.png"] {
  box-sizing: border-box !important;
  width: 141px !important;
  height: 42px !important;
  padding: 42px 0 0 0 !important;
  overflow: hidden;
  background: #2F4A43 url(/specialorders/assets/redesign/comprar.svg) center / 141px 42px no-repeat !important;
  border: 0 !important;
  border-radius: 999px;
  cursor: pointer;
}
input[type="image"][src*="addtocart.png"]:hover { opacity: 0.9; }
/* Discount lines: muted sale red instead of bright red */
span[style*="#cc0000"], span[style*="#CC0000"] { color: #9C4B42 !important; }
/* Carousel arrows and footer heading rule: neutral */
.nav_thumb, .nav_thumb i, a.prev.nav_thumb, a.next.nav_thumb { background: #FFFFFF !important; color: #1A1A1A !important; border: 1px solid #E8E6E3 !important; }
#bt_footer .box-heading h3::after, #bt_footer h3::after, #bt_footer .box-heading::after { background: #C4A574 !important; border-color: #C4A574 !important; }
/* Mobile: inner pages (product, cart) must not be wider than the screen */
@media only screen and (max-width: 720px) {
  #bt_container .container > .row { display: block !important; }
  #bt_container #content.col-sm-12,
  #bt_container #content {
    padding-left: 16px !important;
    padding-right: 16px !important;
    box-sizing: border-box !important;
    max-width: 100% !important;
  }
  #content table { max-width: 100% !important; }
  #content img { max-width: 100% !important; height: auto; }
}

/* ==========================================================================
   Polish 2026-11-13 (v=20261113d): neutral/gold accents instead of blue
   ========================================================================== */
#bt_footer h3::before,
#bt_footer h4::before,
#bt_footer .box-heading h3::before {
  border-color: #C4A574 !important;
  background-color: #C4A574 !important;
}
/* Star ratings: same image tag, a gold picture is shown instead of the blue one */
img[src$="images/rating.jpg"] {
  content: url(/specialorders/assets/redesign/rating-gold.svg);
  width: 86px;
  height: 19px;
  vertical-align: middle;
}
span[itemprop="reviewCount"] {
  color: #737373 !important;
  font-family: Outfit, "Helvetica Neue", Arial, sans-serif !important;
  font-weight: 400 !important;
}
.rating .fa-star, .rating .fa-star-o { color: #C4A574 !important; }

/* ==========================================================================
   Full-bleed hero (v=20261113e) — edge to edge like dermstore.com.
   CSS gives a close fallback; redesign.js sets the exact left offset.
   ========================================================================== */
#bt_container { overflow-x: clip; }
.bt-home-page .menu_custom.row,
.bt-home-page .header_slider.hero-luxury-slot {
  overflow: visible !important;
}
.hero-luxury-slot {
  position: relative !important;
  width: 100% !important; /* was 100vw; JS sets exact clientWidth */
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
}
.hero-luxury-link,
.hero-luxury-link img { border-radius: 0 !important; }
.hero-luxury-link img {
  width: 100% !important;
  max-width: none !important;
  height: 600px !important;
  object-fit: cover;
  object-position: 50% 30%;
}
.hero-luxury-caption {
  top: 36px !important;
  right: 56px !important;
  text-shadow: 0 1px 3px rgba(0,0,0,0.45), 0 0 18px rgba(0,0,0,0.25);
}
.hero-luxury-line1 { font-size: 34px !important; }
.hero-luxury-line2 { font-size: 22px !important; }
@media only screen and (max-width: 1100px) {
  .hero-luxury-link img { height: 480px !important; }
}
@media only screen and (max-width: 720px) {
  .hero-luxury-link img { height: 400px !important; object-position: 45% 30%; }
  .hero-luxury-caption { top: 16px !important; right: 16px !important; }
  .hero-luxury-line1 { font-size: 20px !important; }
  .hero-luxury-line2 { font-size: 14px !important; }
}
@media only screen and (max-width: 480px) {
  .hero-luxury-link img { height: 340px !important; }
  .hero-luxury-line1 { font-size: 19px !important; }
  .hero-luxury-line2 { font-size: 13px !important; }
}

/* Live SEO change (single H1) turned two homepage headings into div.mdh1 styled by css/mdh1.css
   with the old colored ribbons. Show them exactly like the redesign's quiet h1 headings. */
.box-heading .mdh1,
#content .box-heading .mdh1 {
  display: inline-block !important;
  background: transparent !important;
  background-color: transparent !important;
  color: #1A1A1A !important;
  font-family: Outfit, "Helvetica Neue", Arial, sans-serif !important;
  font-size: 22px !important;
  font-weight: 500 !important;
  letter-spacing: 0.04em;
  line-height: 40px !important;
  height: auto !important;
  text-transform: none !important;
  padding: 0 !important;
  margin: 36px 0 18px !important;
  border: 0 !important;
  box-shadow: none !important;
}
.box-heading .mdh1::before,
.box-heading .mdh1::after { display: none !important; content: none !important; }

/* ==========================================================================
   New wide hero photo (v=20261113g): hero-wide-table.jpg, 16:9.
   Woman on the left, Codeage bottle low in the frame, empty cream wall on the right.
   Height follows the width so the face and the whole bottle stay in frame.
   ========================================================================== */
.hero-luxury-link picture { display: block; width: 100%; line-height: 0; }
.hero-luxury-link img {
  height: min(48.6vw, 820px) !important;
  object-position: 50% 88% !important;
}
/* The photo is light on the right, so the caption is dark text, no shadow */
.hero-luxury-caption {
  top: 9% !important;
  right: 7% !important;
  color: #1A1A1A !important;
  text-shadow: none !important;
}
.hero-luxury-line1, .hero-luxury-line2 { color: #1A1A1A !important; }
.hero-luxury-line1 { font-size: clamp(22px, 2.8vw, 44px) !important; font-weight: 500 !important; }
.hero-luxury-line2 { font-size: clamp(13px, 1.6vw, 26px) !important; color: #3A3A3A !important; }
@media only screen and (max-width: 720px) {
  .hero-luxury-link img {
    height: 340px !important;
    object-position: 22% 70% !important;
  }
  .hero-luxury-caption { top: 14px !important; right: 12px !important; max-width: 160px; }
  .hero-luxury-line1 { font-size: 17px !important; }
  .hero-luxury-line2 { font-size: 12px !important; line-height: 1.25 !important; }
}

/* ==========================================================================
   Homepage product rows (v=20261113h): MAIS VENDIDOS and later rows.
   Big product photos on pure white, no boxes, wide sage COMPRAR button.
   ========================================================================== */
.mds-row {
  max-width: 1344px;
  margin: 64px auto 16px;
  padding: 0; /* #content already has 48px side padding */
  box-sizing: border-box;
  background: #FFFFFF;
  clear: both;
}
.mds-row .mds-row-title,
#content .mds-row .mds-row-title {
  font-family: Outfit, "Helvetica Neue", Arial, sans-serif !important;
  font-weight: 300 !important;
  font-size: 30px !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase;
  text-align: left;
  color: #1A1A1A !important;
  margin: 0 0 36px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}
.mds-row-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 40px 32px;
}
.mds-card {
  display: flex;
  flex-direction: column;
  text-align: center;
  background: #FFFFFF;
  border: 0;
}
.mds-card-img {
  display: block;
  position: relative;
  width: 100%;
  aspect-ratio: 1 / 1;
  background: #FFFFFF;
  margin-bottom: 18px;
  overflow: hidden;
}
.mds-card-img img {
  position: absolute !important;
  top: 4%; left: 4%;
  width: 92% !important;
  height: 92% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: contain;
  object-position: 50% 50%;
  display: block;
  margin: 0 !important;
  transition: transform 0.35s ease;
}
.mds-card-img:hover img { transform: scale(1.03); }
.mds-card-name {
  font-size: 15px;
  line-height: 1.4;
  font-weight: 400;
  color: #1A1A1A !important;
  text-decoration: none !important;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 4.2em;
}
.mds-card-en {
  font-size: 12px;
  line-height: 1.45;
  color: #737373;
  margin-top: 6px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 2.9em;
}
.mds-card-price {
  font-size: 18px;
  font-weight: 500;
  color: #1A1A1A;
  margin-top: 12px;
}
.mds-card-old { color: #737373; font-weight: 400; font-size: 14px; margin-right: 6px; }
.mds-card-buy { margin: auto 0 0; padding: 16px 0 0; }
.mds-card-btn {
  display: block;
  width: 100%;
  height: 48px;
  border: 0;
  border-radius: 999px;
  background: #2F4A43;
  color: #FFFFFF;
  font-family: Outfit, "Helvetica Neue", Arial, sans-serif;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  cursor: pointer;
  transition: background 0.2s ease;
}
.mds-card-btn:hover { background: #243A34; }
@media only screen and (max-width: 1100px) {
  .mds-row { padding: 0 24px; }
  .mds-row-grid { gap: 32px 20px; }
}
@media only screen and (max-width: 720px) {
  .mds-row { padding: 0 16px; margin-top: 40px; }
  .mds-row .mds-row-title, #content .mds-row .mds-row-title { font-size: 22px !important; margin-bottom: 22px !important; }
  .mds-row-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 14px; }
  .mds-card-name { font-size: 13px; }
  .mds-card-en { font-size: 11px; }
  .mds-card-price { font-size: 16px; }
  .mds-card-btn { height: 44px; font-size: 13px; letter-spacing: 0.12em; }
}
/* MAIS VENDIDOS sizing: larger cards (desktop gap 24px; mobile row escapes 32px of #content padding) */
.mds-row .mds-row-grid { column-gap: 24px; }
@media only screen and (max-width: 720px) {
  .mds-row { margin: 40px -32px 28px; padding: 0; }
  .mds-row .mds-row-grid { column-gap: 14px; }
}

/* MDS REDESIGN 2026-11-14: Bruno removed the strip of 4 brand photos under the hero.
   Their markup is removed from index.asp (image files kept); the old left column stays hidden. */
.bt-home-page #column-left { display: none !important; }

/* MDS REDESIGN 2026-11-14: footer credit "Uma empresa [Mercado Direto logo]" (like Whole Foods' "an amazon company") */
#bt_footer .mds-credit {
  clear: both;
  max-width: 1170px;
  margin: 20px auto 0;
  padding: 16px 16px 0;
  border-top: 1px solid #E8E6E3;
  text-align: center;
  background: #FFFFFF;
}
#bt_footer .mds-credit a {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  text-decoration: none !important;
  color: #737373 !important;
}
#bt_footer .mds-credit span {
  font-family: Outfit, "Helvetica Neue", Arial, sans-serif;
  font-size: 12px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #737373;
  line-height: 1;
}
#bt_footer .mds-credit img {
  display: block;
  height: 30px !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
}
@media only screen and (max-width: 720px) {
  #bt_footer .mds-credit { margin-top: 16px; padding-top: 14px; }
  #bt_footer .mds-credit span { font-size: 11px; }
  #bt_footer .mds-credit img { height: 28px !important; }
}

/* MDS REDESIGN 2026-11-14: header option B (Bruno): full logo with tagline, thin divider, "Uma empresa / Mercado Direto" (Vitacost style) */
.mds-brandlock { display: flex; align-items: center; gap: 20px; flex-shrink: 0; }
.mds-brand-vr { width: 1px; height: 42px; background: #D9D5CF; flex-shrink: 0; }
.mds-header a.mds-brand-co,
.mds-brand-co {
  display: flex;
  flex-direction: column;
  justify-content: center;
  font-family: Outfit, "Helvetica Neue", Arial, sans-serif;
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0.16em;
  line-height: 1.5;
  text-transform: uppercase;
  white-space: nowrap;
  color: #737373;
  text-decoration: none;
}
.mds-brand-co .mds-brand-co-md { color: #C4A574; font-weight: 500; }
@media only screen and (max-width: 720px) {
  .mds-brandlock { gap: 8px; }
  .mds-brandlock .mds-logo img { height: 35px; }
  .mds-header-inner { gap: 10px !important; }
  .mds-brand-vr { height: 30px; }
  .mds-header a.mds-brand-co, .mds-brand-co { font-size: 10px; letter-spacing: 0.05em; line-height: 1.35; }
}
@media only screen and (max-width: 385px) {
  .mds-header-inner { padding-left: 12px !important; padding-right: 12px !important; gap: 8px !important; }
  .mds-brandlock .mds-logo img { height: 32px; }
  .mds-brandlock { gap: 7px; }
}

/* MDS REDESIGN 2026-11-14: subtle hover on both "Uma empresa Mercado Direto" links (header + footer), link to https://www.mercadodireto.com/ */
.mds-header a.mds-brand-co, #bt_footer .mds-credit a { cursor: pointer; transition: opacity 0.2s ease; }
.mds-header a.mds-brand-co:hover, .mds-header a.mds-brand-co:focus-visible,
#bt_footer .mds-credit a:hover, #bt_footer .mds-credit a:focus-visible { opacity: 0.7; }
.mds-header a.mds-brand-co:hover .mds-brand-co-md,
#bt_footer .mds-credit a:hover span { text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }

/* ==========================================================================
   MDS REDESIGN 2026-11-14: Dermstore-style mega menu (first used on MINERAIS E VITAMINAS).
   Reusable: <li class="mds-cat has-mega"> + <div class="mds-drop mds-mega"><div class="mds-mega-inner">
   <div class="mds-mega-col"><p class="mds-mega-head">..</p><ul><li><a>..</a></li></ul></div>...
   ========================================================================== */
.mds-cats { position: relative; }
.mds-cat.has-mega { position: static; }
.mds-cat.has-mega > a { position: relative; }
.mds-drop.mds-mega {
  left: 0;
  right: 0;
  top: 100%;
  min-width: 0;
  padding: 0;
  border: 0;
  border-top: 1px solid #E8E6E3;
  border-bottom: 1px solid #E8E6E3;
  box-shadow: 0 18px 32px rgba(26,26,26,0.06);
  background: #FFFFFF;
}
.mds-mega-inner {
  display: flex;
  gap: 64px;
  max-width: 1440px;
  margin: 0 auto;
  padding: 32px 48px 36px;
  box-sizing: border-box;
}
.mds-mega-col { min-width: 150px; }
.mds-mega-col ul { list-style: none; margin: 0; padding: 0; }
.mds-mega .mds-mega-head {
  margin: 0 0 14px;
  padding: 0;
  font-family: Outfit, "Helvetica Neue", Arial, sans-serif;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #1A1A1A;
}
.mds-mega .mds-mega-col a {
  display: block;
  padding: 5px 0;
  font-family: Outfit, "Helvetica Neue", Arial, sans-serif;
  font-size: 14px;
  font-weight: 300;
  letter-spacing: 0.01em;
  line-height: 1.45;
  text-transform: none;
  white-space: nowrap;
  color: #4A4A4A !important;
  background: transparent;
}
.mds-mega .mds-mega-col a:hover {
  color: #2F4A43 !important;
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
}
.mds-mega-all { margin-left: auto; padding-left: 40px; border-left: 1px solid #E8E6E3; }
.mds-mega .mds-mega-col a.mds-mega-viewall {
  display: inline-block;
  margin-top: 2px;
  padding: 10px 22px;
  border: 1px solid #2F4A43;
  color: #2F4A43 !important;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  text-decoration: none;
}
.mds-mega .mds-mega-col a.mds-mega-viewall:hover { background: #2F4A43; color: #FFFFFF !important; text-decoration: none; }
/* MDS REDESIGN 2026-11-14 polish: closer to Dermstore - firmer small headings with a hairline rule,
   even column widths, long lists (8+ links) flow into two balanced sub-columns, calmer link spacing. */
.mds-mega-inner { gap: 56px; padding: 36px 48px 40px; }
.mds-mega-col { min-width: 170px; }
.mds-mega .mds-mega-head {
  font-weight: 600;
  font-size: 11px;
  letter-spacing: 0.18em;
  padding-bottom: 10px;
  margin-bottom: 12px;
  border-bottom: 1px solid #E8E6E3;
}
.mds-mega .mds-mega-col a { padding: 6px 0; font-size: 14px; font-weight: 300; color: #3D3D3D !important; }
.mds-mega-col ul:has(> li:nth-child(8)) { columns: 2; column-gap: 56px; }
.mds-mega-col ul:has(> li:nth-child(8)) li { break-inside: avoid; }
.mds-mega-all { min-width: 0; padding-left: 48px; }
.mds-mega-all .mds-mega-head { border-bottom: 0; }
@media only screen and (max-width: 1100px) {
  .mds-mega-inner { gap: 40px; padding: 28px 24px 32px; }
}
@media only screen and (max-width: 900px) {
  .mds-cat.has-mega { position: relative; }
  .mds-drop.mds-mega { position: static; border: 0; box-shadow: none; }
  .mds-mega-inner { display: block; padding: 6px 0 12px 12px; }
  .mds-mega-col { min-width: 0; margin-bottom: 14px; }
  .mds-mega .mds-mega-head { margin: 8px 0 6px; font-size: 10px; color: #737373; }
  .mds-mega .mds-mega-col a { padding: 7px 0; font-size: 14px; }
  .mds-mega-all { margin-left: 0; padding-left: 0; border-left: 0; }
  .mds-mega .mds-mega-head { border-bottom: 0; padding-bottom: 0; font-weight: 500; letter-spacing: 0.16em; }
  .mds-mega-col ul:has(> li:nth-child(8)) { columns: 1; }
}

/* MDS REDESIGN 2026-11-14: announcement bar above the header (only rendered when announcement.txt has text) */
.mds-announce {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  padding: 8px 16px;
  box-sizing: border-box;
  background: #D9D9D9;
  color: #1A1A1A;
  text-align: center;
  font-family: Outfit, "Helvetica Neue", Arial, sans-serif;
  font-size: 13px;
  font-weight: 400;
  letter-spacing: 0.03em;
  line-height: 1.35;
}
.mds-announce a, .mds-announce span { color: #1A1A1A !important; text-decoration: none; }
.mds-announce a:hover { text-decoration: underline; text-underline-offset: 3px; }
@media only screen and (max-width: 720px) { .mds-announce { font-size: 12px; padding: 7px 12px; } }


/* =====================================================================
   MDS HERO CAROUSEL 2026-11-14
   4 approved slides (visual only). Replaces the single hero photo.
   Images already include typography; COMPRAR is a transparent overlay.
   ===================================================================== */
.hero-luxury-slot .mds-hero,
.mds-hero {
  position: relative;
  width: 100%;
  margin: 0;
  overflow: hidden;
  background: #FFFFFF;
  font-family: Outfit, "Helvetica Neue", Arial, sans-serif;
  line-height: 0;
}
.mds-hero-track {
  display: flex;
  transition: transform 0.7s cubic-bezier(.4, 0, .2, 1);
  will-change: transform;
}
.mds-slide {
  position: relative;
  flex: 0 0 100%;
  width: 100%;
  margin: 0;
  padding: 0;
  line-height: 0;
}
.mds-slide picture,
.mds-slide img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: center !important;
  border: 0 !important;
  margin: 0 !important;
}
.mds-slide picture { line-height: 0; }
@media (min-width: 721px) {
  .mds-slide img { aspect-ratio: 2 / 1; }
}
@media (max-width: 720px) {
  .mds-slide.mds-slide-osteo img { aspect-ratio: 390 / 500; }
  .mds-slide:not(.mds-slide-osteo) img { aspect-ratio: 390 / 514; }
}

/* Transparent hit area over the baked-in COMPRAR button */
.mds-slide-buy {
  position: absolute;
  z-index: 2;
  display: block;
  overflow: hidden;
  color: transparent !important;
  background: transparent;
  text-indent: 100%;
  white-space: nowrap;
  text-decoration: none !important;
  border: 0;
}
.mds-slide-buy:focus-visible {
  outline: 2px solid #C4A574;
  outline-offset: 3px;
  text-indent: 0;
  color: transparent !important;
  background: transparent;
}

/* Desktop button positions, measured on the 1440-wide banners */
@media (min-width: 721px) {
  .mds-slide-rogaine .mds-slide-buy {
    left: 8.7%; top: 65.0%; width: 10.0%; height: 6.8%;
  }
  .mds-slide-durma .mds-slide-buy {
    left: 51.0%; top: 47.0%; width: 10.2%; height: 6.6%;
  }
  .mds-slide-osteo .mds-slide-buy {
    left: 8.6%; top: 53.5%; width: 10.2%; height: 6.6%;
  }
}
/* Mobile: full-width COMPRAR near the bottom of the type band */
@media (max-width: 720px) {
  .mds-slide-buy {
    left: 4%;
    right: 4%;
    width: auto;
    top: auto;
    bottom: 5.5%;
    height: 10.5%;
  }
}

/* Arrows and dots — same size and place as the approved previews */
.mds-hero-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 44px;
  height: 44px;
  border-radius: 50%;
  border: 0;
  background: rgba(255, 255, 255, 0.925);
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.14);
  cursor: pointer;
  z-index: 3;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.mds-hero-arrow.prev { left: 28px; }
.mds-hero-arrow.next { right: 28px; }
.mds-hero-arrow svg {
  width: 16px;
  height: 16px;
  stroke: #1A1A1A;
  stroke-width: 1.35;
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.mds-hero-arrow:hover { background: #FFFFFF; }
.mds-hero-arrow:focus-visible { outline: 2px solid #C4A574; outline-offset: 2px; }

.mds-hero-dots {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 22px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 18px;
  z-index: 3;
  line-height: 0;
}
.mds-hero-dots button {
  width: 7px;
  height: 7px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: rgba(26, 26, 26, 0.47);
  cursor: pointer;
}
.mds-hero-dots button.on {
  width: 20px;
  height: 5px;
  border-radius: 3px;
  background: rgba(26, 26, 26, 0.98);
}
.mds-hero.is-light-ui .mds-hero-dots button { background: rgba(255, 255, 255, 0.70); }
.mds-hero.is-light-ui .mds-hero-dots button.on { background: rgba(255, 255, 255, 0.98); }

@media (max-width: 720px) {
  .mds-hero-arrow { display: none; }
  .mds-hero-dots { bottom: 14px; }
  /* type band is light on every mobile slide */
  .mds-hero .mds-hero-dots button { background: rgba(26, 26, 26, 0.35); }
  .mds-hero .mds-hero-dots button.on { background: #1A1A1A; }
}

@media (prefers-reduced-motion: reduce) {
  .mds-hero-track { transition: none; }
}


/* Carousel must clip slides (overrides earlier overflow:visible on the hero slot). */
.bt-home-page .header_slider.hero-luxury-slot,
.hero-luxury-slot,
.mds-hero {
  overflow: hidden !important;
}
.mds-hero-track { width: 100%; }
.mds-slide {
  flex: 0 0 100%;
  width: 100%;
  min-width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}
/* MDS REDESIGN 2026-11-14: one balanced 4-column footer, same width as the page.
   Col 1 logo/contact, col 2 Links, col 3 payment + shipping, col 4 Seguranca.
   Tablet 2x2. Phone stacked. Display only. */
#bt_footer p:empty { display: none !important; margin: 0 !important; padding: 0 !important; }
#bt_footer .bt-footer-middle .container {
  width: 100% !important;
  max-width: 1344px !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
}
#bt_footer .bt-footer-middle .row {
  margin-left: 0 !important;
  margin-right: 0 !important;
}
#bt_footer .bt-footer-middle .col-md-12 {
  float: none !important;
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
#bt_footer .mds-footer-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(0, 0.8fr) minmax(0, 1.15fr) minmax(0, 0.85fr);
  gap: 28px 32px;
  align-items: start;
  width: 100%;
  margin: 0;
  padding: 0;
  text-align: left;
  background: #FFFFFF;
}
#bt_footer .mds-footer-brand,
#bt_footer .mds-footer-links,
#bt_footer .mds-footer-payship,
#bt_footer .mds-footer-sec,
#bt_footer .mds-footer-grid .bt-block-footer,
#bt_footer .mds-footer-grid .col-xs-12 {
  float: none !important;
  width: auto !important;
  max-width: 100%;
  margin: 0 !important;
  padding: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  text-align: left;
  background: #FFFFFF;
}
#bt_footer .mds-footer-links .box-heading,
#bt_footer .mds-footer-links .box-content,
#bt_footer .mds-footer-links .footer-contact {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}
#bt_footer .mds-footer-brand a { display: inline-block; line-height: 0; }
#bt_footer .mds-footer-brand .footer-contact { margin-top: 16px !important; }
#bt_footer .mds-footer-brand p { margin: 8px 0 0 !important; }
#bt_footer .mds-footer-payship h3:not(:first-child) {
  margin-top: 24px !important;
}
#bt_footer .mds-footer-payship ul,
#bt_footer .mds-footer-sec ul,
#bt_footer .mds-footer-links ul {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none;
}
#bt_footer .mds-pay-logos {
  display: grid !important;
  grid-template-columns: repeat(4, max-content);
  gap: 12px 16px;
  align-items: center;
  justify-content: start;
  justify-items: start;
  list-style: none;
  margin: 0 !important;
  padding: 0 !important;
  background: #FFFFFF;
}
#bt_footer .mds-pay-logos li {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  margin: 0;
  padding: 0;
  height: 22px;
  line-height: 0;
  background: transparent;
}
#bt_footer .mds-pay-logos img,
#bt_footer .mds-pay-logos svg {
  display: block;
  height: 22px !important;
  width: auto !important;
  max-width: 100%;
  max-height: 22px !important;
  object-fit: contain;
  object-position: left center;
}
#bt_footer .mds-ship-logos {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 14px;
  list-style: none;
  margin: 0 !important;
  padding: 0 !important;
}
#bt_footer .mds-sec-logos {
  display: flex !important;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: flex-start;
  gap: 8px;
  list-style: none;
  margin: 0 !important;
  padding: 0 !important;
  background: #FFFFFF;
}
#bt_footer .mds-sec-logos li {
  display: block;
  margin: 0;
  padding: 0;
  line-height: 0;
}
#bt_footer .mds-sec-logos img,
#bt_footer .mds-sec-logos svg {
  display: block;
  width: 140px !important;
  height: 44px !important;
  max-width: 100%;
  box-sizing: border-box;
}
#bt_footer .mds-credit {
  width: 100%;
  max-width: 1344px;
  margin: 16px auto 0;
  padding: 12px 0 0;
  box-sizing: border-box;
}
@media only screen and (max-width: 991px) {
  #bt_footer .mds-footer-grid {
    grid-template-columns: 1fr 1fr;
    gap: 28px 32px;
  }
  #bt_footer .mds-pay-logos {
    grid-template-columns: repeat(4, max-content);
  }
}
@media only screen and (max-width: 767px) {
  #bt_footer {
    margin-top: 0;
    padding: 20px 0 8px;
  }
  #bt_footer .bt-footer-middle .container {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
  #bt_footer .mds-footer-grid {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  #bt_footer .mds-pay-logos {
    grid-template-columns: repeat(3, max-content);
    gap: 10px 16px;
  }
  #bt_footer .mds-sec-logos {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 8px 10px;
  }
  #bt_footer .mds-sec-logos img,
  #bt_footer .mds-sec-logos svg {
    width: 140px !important;
    height: 42px !important;
  }
  #bt_footer .mds-credit {
    width: calc(100% - 32px);
    max-width: none;
    margin-top: 16px;
    padding-top: 12px;
  }
}
/* MDS REDESIGN 2026-11-14: sit the hero flush under the category bar and clip carousel slides cleanly. */
/* Do not use 100vw here: it is wider than the layout viewport when a scrollbar is reserved, which lets the next slide peek. redesign.js sizes the slot to clientWidth. */
.bt-home-page .menu_custom.row,
.bt-home-page .header_slider,
.bt-home-page .header_slider.hero-luxury-slot,
.bt-home-page .hero-luxury-slot {
  margin-top: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}
.bt-home-page .header_slider.hero-luxury-slot,
.bt-home-page .hero-luxury-slot,
.mds-hero,
.hero-luxury-slot .mds-hero {
  overflow: hidden !important;
  clip-path: inset(0);
  isolation: isolate;
  contain: paint;
}
.mds-hero,
.hero-luxury-slot .mds-hero {
  width: 100% !important;
  max-width: 100% !important;
}
.mds-hero-track {
  display: flex;
  margin: 0;
  padding: 0;
}
.mds-slide {
  flex: 0 0 100%;
  width: 100%;
  min-width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  overflow: hidden;
  margin: 0;
  padding: 0;
}
