/* =========================================================
   ESPELHOS BRASIL — CSS REFINADO
   Mantém apenas as regras usadas na Home atual.
   ========================================================= */

/* 1) HERO ================================================= */

.slider-slide {
  position: relative !important;
}

.slider-slide .swiper-text .btn {
  display: inline-flex !important;
  width: auto !important;
  white-space: nowrap !important;
  letter-spacing: .8px !important;
}

@media (max-width: 767px) {
  .slider-slide .swiper-text {
    position: absolute !important;
    left: 24px !important;
    right: auto !important;
    top: 46% !important;
    bottom: auto !important;
    transform: translateY(-50%) !important;
    width: 48% !important;
    max-width: 190px !important;
    text-align: left !important;
  }

  .slider-slide .swiper-text .h1 {
    margin: 0 0 15px !important;
    font-size: 29px !important;
    line-height: 1.08 !important;
    font-weight: 400 !important;
    text-align: left !important;
  }

  .slider-slide .swiper-text p {
    margin: 0 0 18px !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
    text-align: left !important;
  }

  .slider-slide .swiper-text .btn {
    margin-top: 24px !important;
    padding: 11px 13px !important;
    font-size: 10px !important;
    line-height: 1.2 !important;
  }
}

@media (min-width: 768px) {
  .slider-slide .swiper-text {
    position: absolute !important;
    left: 8% !important;
    right: auto !important;
    top: 50% !important;
    bottom: auto !important;
    transform: translateY(-50%) !important;
    width: 38% !important;
    max-width: 560px !important;
    text-align: left !important;
  }

  .slider-slide .swiper-text .h1 {
    margin: 0 0 18px !important;
    font-size: 50px !important;
    line-height: 1.06 !important;
    font-weight: 400 !important;
    text-align: left !important;
  }

  .slider-slide .swiper-text p {
    max-width: 500px !important;
    margin: 0 0 28px !important;
    font-size: 16px !important;
    line-height: 1.5 !important;
    text-align: left !important;
  }

  .slider-slide .swiper-text .btn {
    margin-top: 8px !important;
    padding: 13px 20px !important;
    font-size: 11px !important;
    line-height: 1.2 !important;
  }
}


/* 2) HEADER =============================================== */

.js-head-main {
  transition: background-color .35s ease, box-shadow .35s ease, backdrop-filter .35s ease !important;
}

.js-head-main.head-transparent-on-section:not(.compress) {
  background: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

.js-head-main.compress {
  background: rgba(31, 42, 35, .97) !important;
  box-shadow: 0 8px 28px rgba(0, 0, 0, .12) !important;
  backdrop-filter: blur(10px) !important;
}

.js-head-main .nav-list-link,
.js-head-main .nav-list-link:visited,
.js-head-main .utilities-link,
.js-head-main .utilities-item,
.js-head-main .utilities-icon,
.js-head-main svg.utilities-icon,
.js-head-main .icon-inline,
.js-head-main .nav-list-link svg {
  color: #fff !important;
  transition: color .25s ease !important;
}

.js-head-main .utilities-icon,
.js-head-main svg.utilities-icon,
.js-head-main .icon-inline,
.js-head-main .nav-list-link svg {
  fill: currentColor !important;
}

.js-head-main .utilities-icon path,
.js-head-main .utilities-icon circle,
.js-head-main .utilities-icon line,
.js-head-main .utilities-icon polyline,
.js-head-main .utilities-icon rect,
.js-head-main .utilities-icon use,
.js-head-main .icon-inline path,
.js-head-main .icon-inline circle,
.js-head-main .icon-inline line,
.js-head-main .icon-inline use {
  fill: currentColor !important;
}

.js-head-main img {
  filter: none !important;
  opacity: 1 !important;
}

.js-head-main .nav-list-link:hover,
.js-head-main .utilities-link:hover,
.js-head-main .utilities-item:hover {
  color: #b18a55 !important;
}

.js-head-main .nav-list-link {
  position: relative;
}

.js-head-main .nav-list-link::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -7px;
  width: 0;
  height: 1px;
  background: #b18a55;
  transform: translateX(-50%);
  transition: width .25s ease;
}

.js-head-main .nav-list-link:hover::after {
  width: 100%;
}


/* 3) INDICADORES / PROVA SOCIAL =========================== */

@media (max-width: 767px) {
  section[data-store="banner-services"] {
    margin: 0 !important;
    padding: 0 !important;
    background: #f6f5f2 !important;
    border-bottom: 1px solid rgba(31, 42, 35, .1);
  }

  section[data-store="banner-services"] > .container {
    width: 100% !important;
    max-width: none !important;
    margin: 0 auto !important;
    padding: 0 16px !important;
  }

  section[data-store="banner-services"] .row {
    width: 100% !important;
    margin: 0 !important;
  }

  section[data-store="banner-services"] .swiper,
  section[data-store="banner-services"] .swiper-container,
  section[data-store="banner-services"] .swiper-initialized {
    width: 100% !important;
    overflow: visible !important;
  }

  section[data-store="banner-services"] .swiper-wrapper {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 0 !important;
    width: 100% !important;
    height: auto !important;
    transform: none !important;
    transition: none !important;
  }

  section[data-store="banner-services"] .swiper-slide {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 0 !important;
    min-height: 118px !important;
    height: auto !important;
    margin: 0 !important;
    padding: 20px 8px !important;
    text-align: center !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
  }

  section[data-store="banner-services"] .swiper-slide-duplicate {
    display: none !important;
  }

  section[data-store="banner-services"] .swiper-slide:not(:last-child)::after {
    content: "";
    position: absolute;
    top: 24%;
    right: 0;
    width: 1px;
    height: 52%;
    background: rgba(31, 42, 35, .15);
  }

  section[data-store="banner-services"] .swiper-slide > div,
  section[data-store="banner-services"] .service-item {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  section[data-store="banner-services"] .service-item-title,
  section[data-store="banner-services"] .swiper-slide h3,
  section[data-store="banner-services"] .swiper-slide h4,
  section[data-store="banner-services"] .swiper-slide strong {
    margin: 0 0 7px !important;
    font-family: "Playfair Display", Georgia, serif !important;
    font-size: 19px !important;
    font-weight: 400 !important;
    line-height: 1.15 !important;
    color: #1f2a23 !important;
  }

  section[data-store="banner-services"] .service-item-description,
  section[data-store="banner-services"] .swiper-slide p,
  section[data-store="banner-services"] .swiper-slide small {
    max-width: 100px !important;
    margin: 0 auto !important;
    font-family: "Inter", Arial, sans-serif !important;
    font-size: 10px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
    color: #666a66 !important;
  }

  section[data-store="banner-services"] .js-informative-banners-pagination,
  section[data-store="banner-services"] .service-pagination,
  section[data-store="banner-services"] .swiper-pagination,
  section[data-store="banner-services"] .swiper-button-prev,
  section[data-store="banner-services"] .swiper-button-next {
    display: none !important;
  }
}

@media (min-width: 768px) {
  section[data-store="banner-services"] {
    padding-top: 38px !important;
    padding-bottom: 38px !important;
  }
}


/* 4) CATEGORIAS — CHÃO / PAREDE / ORGÂNICOS / LED ========= */

section[data-store="home-banner-news"] {
  position: relative !important;
  padding-top: 130px !important;
  padding-bottom: 26px !important;
  background: #f6f5f2 !important;
}

section[data-store="home-banner-news"]::before {
  content: "CATEGORIAS";
  position: absolute;
  top: 36px;
  left: 0;
  z-index: 5;
  width: 100%;
  font-family: "Inter", Arial, sans-serif !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
  letter-spacing: 2.2px !important;
  color: #b18a55 !important;
  text-align: center !important;
  text-transform: uppercase !important;
  pointer-events: none;
}

section[data-store="home-banner-news"]::after {
  content: "Encontre o espelho ideal";
  position: absolute;
  top: 62px;
  left: 0;
  z-index: 5;
  width: 100%;
  padding: 0 24px;
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: 36px !important;
  font-weight: 400 !important;
  line-height: 1.2 !important;
  color: #1f2a23 !important;
  text-align: center !important;
  pointer-events: none;
}

section[data-store="home-banner-news"] .textbanner-image {
  position: relative !important;
  overflow: hidden !important;
  border-radius: 10px !important;
  background: #1f2a23 !important;
  transition: transform .35s ease, box-shadow .35s ease !important;
}

section[data-store="home-banner-news"] .textbanner-image img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  transition: transform .55s ease !important;
}

section[data-store="home-banner-news"] .js-textbanner-text {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: auto !important;
  bottom: 0 !important;
  z-index: 2 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: flex-end !important;
  width: 100% !important;
  min-height: 66% !important;
  padding: 80px 20px 22px !important;
  background: linear-gradient(
    to top,
    rgba(31,42,35,.96) 0%,
    rgba(31,42,35,.78) 32%,
    rgba(31,42,35,.40) 58%,
    rgba(31,42,35,.10) 80%,
    transparent 100%
  ) !important;
  color: #fff !important;
  text-align: left !important;
}

section[data-store="home-banner-news"] .js-banner-title {
  margin: 0 0 8px !important;
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: 23px !important;
  font-weight: 400 !important;
  line-height: 1.1 !important;
  color: #fff !important;
  text-align: left !important;
  text-shadow: 0 1px 4px rgba(0,0,0,.35) !important;
}

section[data-store="home-banner-news"] .js-textbanner-text p,
section[data-store="home-banner-news"] .textbanner-paragraph,
section[data-store="home-banner-news"] .textbanner-description {
  max-width: 295px !important;
  margin: 0 !important;
  font-family: "Inter", Arial, sans-serif !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 1.42 !important;
  color: #fff !important;
  text-align: left !important;
  text-shadow: 0 1px 5px rgba(0,0,0,.78), 0 1px 2px rgba(0,0,0,.9) !important;
}

section[data-store="home-banner-news"] a {
  text-decoration: none !important;
}

@media (hover: hover) and (pointer: fine) {
  section[data-store="home-banner-news"] .textbanner-image:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 14px 34px rgba(20,27,22,.18) !important;
  }

  section[data-store="home-banner-news"] .textbanner-image:hover img {
    transform: scale(1.045) !important;
  }
}

@media (min-width: 768px) and (max-width: 1100px) {
  section[data-store="home-banner-news"] .js-textbanner-text {
    padding: 68px 16px 20px !important;
  }

  section[data-store="home-banner-news"] .js-banner-title {
    font-size: 21px !important;
  }

  section[data-store="home-banner-news"] .js-textbanner-text p,
  section[data-store="home-banner-news"] .textbanner-paragraph,
  section[data-store="home-banner-news"] .textbanner-description {
    font-size: 11px !important;
  }
}

@media (max-width: 767px) {
  section[data-store="home-banner-news"] {
    padding-top: 126px !important;
    padding-bottom: 20px !important;
  }

  section[data-store="home-banner-news"]::before {
    top: 34px;
    font-size: 9px !important;
    letter-spacing: 1.8px !important;
  }

  section[data-store="home-banner-news"]::after {
    top: 57px;
    padding: 0 22px;
    font-size: 28px !important;
    line-height: 1.15 !important;
  }

  section[data-store="home-banner-news"] .textbanner-image {
    border-radius: 8px !important;
  }

  section[data-store="home-banner-news"] .js-textbanner-text {
    min-height: 58% !important;
    padding: 70px 17px 22px !important;
    background: linear-gradient(
      to top,
      rgba(31,42,35,.98) 0%,
      rgba(31,42,35,.80) 34%,
      rgba(31,42,35,.36) 62%,
      transparent 100%
    ) !important;
  }

  section[data-store="home-banner-news"] .js-banner-title {
    margin-bottom: 7px !important;
    font-size: 23px !important;
  }

  section[data-store="home-banner-news"] .js-textbanner-text p,
  section[data-store="home-banner-news"] .textbanner-paragraph,
  section[data-store="home-banner-news"] .textbanner-description {
    max-width: 285px !important;
    font-size: 12px !important;
  }
}


/* 5) SOLID — NOSSO CLÁSSICO =============================== */

section[data-store="home-image-text-module"] {
  position: relative !important;
  margin: 0 !important;
  padding: 34px 0 64px !important;
  background: #f6f5f2 !important;
}

section[data-store="home-image-text-module"] .js-home-module,
section[data-store="home-image-text-module"] .js-modules-container {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

section[data-store="home-image-text-module"] .textbanner {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

section[data-store="home-image-text-module"] .row {
  align-items: center !important;
}

section[data-store="home-image-text-module"] .textbanner-image {
  position: relative !important;
  overflow: hidden !important;
  border-radius: 5px !important;
  background: #eeece8 !important;
  box-shadow: 0 18px 46px rgba(31,42,35,.08) !important;
}

section[data-store="home-image-text-module"] .textbanner-image img,
section[data-store="home-image-text-module"] img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  object-fit: cover !important;
  transition: transform .6s ease !important;
}

section[data-store="home-image-text-module"] .js-textbanner-text,
section[data-store="home-image-text-module"] .textbanner-text {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  max-width: 570px !important;
  margin-right: auto !important;
  margin-left: auto !important;
  padding: 24px 34px !important;
  color: #1f2a23 !important;
  text-align: left !important;
}

section[data-store="home-image-text-module"] .js-banner-title,
section[data-store="home-image-text-module"] .textbanner-title,
section[data-store="home-image-text-module"] h2,
section[data-store="home-image-text-module"] h3 {
  max-width: 570px !important;
  margin: 0 0 18px !important;
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: 38px !important;
  font-weight: 400 !important;
  line-height: 1.12 !important;
  color: #1f2a23 !important;
  text-align: left !important;
}

section[data-store="home-image-text-module"] .js-banner-title::before,
section[data-store="home-image-text-module"] .textbanner-title::before,
section[data-store="home-image-text-module"] h2::before,
section[data-store="home-image-text-module"] h3::before {
  content: "NOSSO CLÁSSICO";
  display: block;
  margin-bottom: 15px;
  font-family: "Inter", Arial, sans-serif !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
  letter-spacing: 2.2px !important;
  color: #b18a55 !important;
  text-align: left !important;
  text-transform: uppercase !important;
}

section[data-store="home-image-text-module"] p,
section[data-store="home-image-text-module"] .textbanner-description {
  max-width: 550px !important;
  margin: 0 0 27px !important;
  font-family: "Inter", Arial, sans-serif !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.62 !important;
  color: #5f645f !important;
  text-align: left !important;
}

section[data-store="home-image-text-module"] .btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 176px !important;
  min-height: 46px !important;
  margin: 0 !important;
  padding: 14px 23px !important;
  border: 1px solid #1f2a23 !important;
  border-radius: 2px !important;
  background: #1f2a23 !important;
  color: #fff !important;
  font-family: "Inter", Arial, sans-serif !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
  letter-spacing: 1.15px !important;
  text-align: center !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  box-shadow: none !important;
  transition: background-color .25s ease, border-color .25s ease, color .25s ease, transform .25s ease !important;
}

@media (hover: hover) and (pointer: fine) {
  section[data-store="home-image-text-module"] .textbanner-image:hover img {
    transform: scale(1.025) !important;
  }

  section[data-store="home-image-text-module"] .btn:hover {
    border-color: #b18a55 !important;
    background: #b18a55 !important;
    color: #fff !important;
    transform: translateY(-2px) !important;
  }
}

@media (min-width: 768px) and (max-width: 1100px) {
  section[data-store="home-image-text-module"] {
    padding-top: 30px !important;
    padding-bottom: 54px !important;
  }

  section[data-store="home-image-text-module"] .js-textbanner-text,
  section[data-store="home-image-text-module"] .textbanner-text {
    padding: 22px 24px !important;
  }

  section[data-store="home-image-text-module"] .js-banner-title,
  section[data-store="home-image-text-module"] .textbanner-title,
  section[data-store="home-image-text-module"] h2,
  section[data-store="home-image-text-module"] h3 {
    font-size: 32px !important;
  }

  section[data-store="home-image-text-module"] p,
  section[data-store="home-image-text-module"] .textbanner-description {
    font-size: 13px !important;
    line-height: 1.55 !important;
  }
}

@media (max-width: 767px) {
  section[data-store="home-image-text-module"] {
    padding-top: 22px !important;
    padding-bottom: 46px !important;
  }

  section[data-store="home-image-text-module"] .js-banner-col {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  section[data-store="home-image-text-module"] .textbanner-image {
    margin-bottom: 25px !important;
    border-radius: 4px !important;
    box-shadow: 0 12px 30px rgba(31,42,35,.08) !important;
  }

  section[data-store="home-image-text-module"] .js-textbanner-text,
  section[data-store="home-image-text-module"] .textbanner-text {
    align-items: center !important;
    max-width: none !important;
    padding: 0 22px !important;
    text-align: center !important;
  }

  section[data-store="home-image-text-module"] .js-banner-title,
  section[data-store="home-image-text-module"] .textbanner-title,
  section[data-store="home-image-text-module"] h2,
  section[data-store="home-image-text-module"] h3 {
    width: 100% !important;
    max-width: 340px !important;
    margin: 0 auto 15px !important;
    font-size: 29px !important;
    line-height: 1.14 !important;
    text-align: center !important;
  }

  section[data-store="home-image-text-module"] .js-banner-title::before,
  section[data-store="home-image-text-module"] .textbanner-title::before,
  section[data-store="home-image-text-module"] h2::before,
  section[data-store="home-image-text-module"] h3::before {
    width: 100% !important;
    margin-bottom: 11px;
    font-size: 9px !important;
    letter-spacing: 1.8px !important;
    text-align: center !important;
  }

  section[data-store="home-image-text-module"] p,
  section[data-store="home-image-text-module"] .textbanner-description {
    max-width: 340px !important;
    margin: 0 auto 23px !important;
    font-size: 13px !important;
    line-height: 1.58 !important;
    text-align: center !important;
  }

  section[data-store="home-image-text-module"] .btn {
    align-self: center !important;
    min-width: 168px !important;
    min-height: 44px !important;
    margin: 0 auto !important;
    padding: 13px 19px !important;
    font-size: 9px !important;
  }
}


/* 6) NOSSAS LINHAS — PREMIUM / ESSENCIAL ================== */

section[data-store="home-banner-categories"] {
  position: relative !important;
  padding-top: 145px !important;
  padding-bottom: 72px !important;
  background: #f6f5f2 !important;
}

section[data-store="home-banner-categories"]::before {
  content: "NOSSAS LINHAS";
  position: absolute;
  top: 46px;
  left: 0;
  z-index: 5;
  width: 100%;
  font-family: "Inter", Arial, sans-serif !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
  letter-spacing: 2.2px !important;
  color: #b18a55 !important;
  text-align: center !important;
  text-transform: uppercase !important;
  pointer-events: none;
}

section[data-store="home-banner-categories"]::after {
  content: "Escolha a linha ideal para o seu projeto.";
  position: absolute;
  top: 72px;
  left: 0;
  z-index: 5;
  width: 100%;
  padding: 0 24px;
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: 36px !important;
  font-weight: 400 !important;
  line-height: 1.2 !important;
  color: #1f2a23 !important;
  text-align: center !important;
  pointer-events: none;
}

/* Card e imagem */
section[data-store="home-banner-categories"] .textbanner,
section[data-store="home-banner-categories"] .textbanner-image {
  position: relative !important;
  overflow: hidden !important;
  width: 100% !important;
  max-width: 100% !important;
  border-radius: 10px !important;
  background: #1f2a23 !important;
  box-shadow: 0 12px 34px rgba(31,42,35,.08) !important;
}

section[data-store="home-banner-categories"] .textbanner-image img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  transition: transform .55s ease !important;
}

/* Desliga overlays antigos para evitar conflito */
section[data-store="home-banner-categories"] .textbanner::before,
section[data-store="home-banner-categories"] .textbanner::after,
section[data-store="home-banner-categories"] .textbanner-image::after,
section[data-store="home-banner-categories"] .textbanner-link::before,
section[data-store="home-banner-categories"] .textbanner-link::after {
  display: none !important;
}

/* O degradê fica no próprio bloco de texto.
   Assim ele nunca some e nunca fica acima do título. */
section[data-store="home-banner-categories"] .js-textbanner-text,
section[data-store="home-banner-categories"] .textbanner-text,
section[data-store="home-banner-categories"] [class*="textbanner-text"] {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  top: auto !important;
  z-index: 10 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: flex-end !important;
  width: 100% !important;
  min-height: 58% !important;
  margin: 0 !important;
  padding: 72px 27px 26px !important;
  background: linear-gradient(
    to top,
    rgba(31,42,35,.98) 0%,
    rgba(31,42,35,.82) 31%,
    rgba(31,42,35,.48) 56%,
    rgba(31,42,35,.14) 78%,
    transparent 100%
  ) !important;
  color: #fff !important;
  text-align: left !important;
}

/* Título e descrição acima do degradê */
section[data-store="home-banner-categories"] .js-banner-title,
section[data-store="home-banner-categories"] [class*="banner-title"] {
  position: relative !important;
  z-index: 20 !important;
  width: 100% !important;
  margin: 0 0 9px !important;
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: 28px !important;
  font-weight: 400 !important;
  line-height: 1.1 !important;
  color: #fff !important;
  text-align: left !important;
  text-shadow: 0 1px 4px rgba(0,0,0,.35) !important;
}

section[data-store="home-banner-categories"] .js-textbanner-text p,
section[data-store="home-banner-categories"] .textbanner-paragraph,
section[data-store="home-banner-categories"] .textbanner-description {
  position: relative !important;
  z-index: 20 !important;
  max-width: 440px !important;
  margin: 0 !important;
  font-family: "Inter", Arial, sans-serif !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  color: rgba(255,255,255,.96) !important;
  text-align: left !important;
  text-shadow: 0 1px 6px rgba(0,0,0,.75) !important;
}

section[data-store="home-banner-categories"] a,
section[data-store="home-banner-categories"] a:visited {
  color: #fff !important;
  text-decoration: none !important;
}

@media (hover: hover) and (pointer: fine) {
  section[data-store="home-banner-categories"] .textbanner {
    transition: transform .35s ease, box-shadow .35s ease !important;
  }

  section[data-store="home-banner-categories"] .textbanner:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 18px 44px rgba(31,42,35,.15) !important;
  }

  section[data-store="home-banner-categories"] .textbanner:hover .textbanner-image img {
    transform: scale(1.035) !important;
  }
}

@media (min-width: 768px) and (max-width: 1100px) {
  section[data-store="home-banner-categories"] {
    padding-top: 132px !important;
  }

  section[data-store="home-banner-categories"]::after {
    font-size: 32px !important;
  }

  section[data-store="home-banner-categories"] .js-textbanner-text,
  section[data-store="home-banner-categories"] .textbanner-text,
  section[data-store="home-banner-categories"] [class*="textbanner-text"] {
    padding: 62px 20px 22px !important;
  }

  section[data-store="home-banner-categories"] .js-banner-title,
  section[data-store="home-banner-categories"] [class*="banner-title"] {
    font-size: 24px !important;
  }
}

/* Mobile */
@media (max-width: 767px) {
  section[data-store="home-banner-categories"] {
    padding-top: 126px !important;
    padding-bottom: 48px !important;
  }

  section[data-store="home-banner-categories"]::before {
    top: 34px;
    font-size: 9px !important;
    letter-spacing: 1.8px !important;
  }

  section[data-store="home-banner-categories"]::after {
    top: 57px;
    padding: 0 28px;
    font-size: 28px !important;
    line-height: 1.15 !important;
  }

  section[data-store="home-banner-categories"] .textbanner,
  section[data-store="home-banner-categories"] .textbanner-image {
    border-radius: 8px !important;
  }

  section[data-store="home-banner-categories"] .js-textbanner-text,
  section[data-store="home-banner-categories"] .textbanner-text,
  section[data-store="home-banner-categories"] [class*="textbanner-text"] {
    align-items: center !important;
    min-height: 62% !important;
    padding: 78px 18px 24px !important;
    background: linear-gradient(
      to top,
      rgba(31,42,35,.99) 0%,
      rgba(31,42,35,.86) 32%,
      rgba(31,42,35,.52) 58%,
      rgba(31,42,35,.16) 79%,
      transparent 100%
    ) !important;
    text-align: center !important;
  }

  section[data-store="home-banner-categories"] .js-banner-title,
  section[data-store="home-banner-categories"] [class*="banner-title"] {
    width: 100% !important;
    margin-bottom: 8px !important;
    font-size: 25px !important;
    line-height: 1.12 !important;
    color: #fff !important;
    text-align: center !important;
  }

  section[data-store="home-banner-categories"] .js-textbanner-text p,
  section[data-store="home-banner-categories"] .textbanner-paragraph,
  section[data-store="home-banner-categories"] .textbanner-description {
    max-width: 310px !important;
    font-size: 13px !important;
    text-align: center !important;
  }
}

/* 7) INSPIRAÇÃO — AMBIENTES =============================== */

section[data-store="home-banner-promotional"] {
  position: relative !important;
  margin: 0 !important;
  padding: 108px 0 58px !important;
  background: #f6f5f2 !important;
}

section[data-store="home-banner-promotional"] .container {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Cabeçalho da seção */
section[data-store="home-banner-promotional"]::before {
  content: "INSPIRAÇÃO";
  position: absolute;
  top: 30px;
  left: 0;
  z-index: 20;
  width: 100%;
  font-family: "Inter", Arial, sans-serif !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
  letter-spacing: 2.2px !important;
  color: #b18a55 !important;
  text-align: center !important;
  text-transform: uppercase !important;
  pointer-events: none;
}

section[data-store="home-banner-promotional"]::after {
  content: "Inspire-se para transformar seu ambiente";
  position: absolute;
  top: 56px;
  left: 50%;
  z-index: 20;
  width: calc(100% - 48px);
  max-width: 900px;
  transform: translateX(-50%);
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: 36px !important;
  font-weight: 400 !important;
  line-height: 1.2 !important;
  color: #1f2a23 !important;
  text-align: center !important;
  pointer-events: none;
}

/* Card */
section[data-store="home-banner-promotional"] .textbanner,
section[data-store="home-banner-promotional"] .textbanner-image {
  position: relative !important;
  overflow: hidden !important;
  width: 100% !important;
  border-radius: 10px !important;
  background: transparent !important;
}

section[data-store="home-banner-promotional"] .textbanner {
  box-shadow: 0 9px 26px rgba(31,42,35,.07) !important;
}

section[data-store="home-banner-promotional"] .textbanner-image img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  object-fit: cover !important;
  transition: transform .55s ease !important;
}

/* Desliga overlays antigos: o degradê fica no próprio bloco de texto */
section[data-store="home-banner-promotional"] .textbanner::after,
section[data-store="home-banner-promotional"] .textbanner-image::after,
section[data-store="home-banner-promotional"] .js-banner-link::after {
  display: none !important;
}

/* Texto + degradê em uma única camada: evita o título ficar atrás */
section[data-store="home-banner-promotional"] .js-textbanner-text,
section[data-store="home-banner-promotional"] .textbanner-text,
section[data-store="home-banner-promotional"] [class*="textbanner-text"] {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  top: auto !important;
  z-index: 50 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: flex-end !important;
  width: 100% !important;
  min-height: 58% !important;
  margin: 0 !important;
  padding: 70px 20px 22px !important;
  background: linear-gradient(
    to top,
    rgba(31,42,35,.96) 0%,
    rgba(31,42,35,.78) 32%,
    rgba(31,42,35,.40) 58%,
    rgba(31,42,35,.10) 80%,
    transparent 100%
  ) !important;
  color: #fff !important;
  text-align: left !important;
}

/* Força todos os títulos/links do card para branco */
section[data-store="home-banner-promotional"] .js-banner-col a,
section[data-store="home-banner-promotional"] .js-banner-col a:visited,
section[data-store="home-banner-promotional"] .js-banner-col .js-banner-title,
section[data-store="home-banner-promotional"] .js-banner-col [class*="banner-title"],
section[data-store="home-banner-promotional"] .js-banner-col h3,
section[data-store="home-banner-promotional"] .js-banner-col h4,
section[data-store="home-banner-promotional"] .js-banner-col .h5 {
  position: relative !important;
  z-index: 60 !important;
  color: #fff !important;
  text-decoration: none !important;
}

section[data-store="home-banner-promotional"] .js-banner-title,
section[data-store="home-banner-promotional"] [class*="banner-title"],
section[data-store="home-banner-promotional"] .js-banner-col h3,
section[data-store="home-banner-promotional"] .js-banner-col h4,
section[data-store="home-banner-promotional"] .js-banner-col .h5 {
  width: 100% !important;
  margin: 0 !important;
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: 22px !important;
  font-weight: 400 !important;
  line-height: 1.15 !important;
  text-align: left !important;
  text-shadow: 0 1px 4px rgba(0,0,0,.35) !important;
  opacity: 1 !important;
}

/* Sem descrição nos cards */
section[data-store="home-banner-promotional"] .js-textbanner-text p,
section[data-store="home-banner-promotional"] .textbanner-paragraph,
section[data-store="home-banner-promotional"] .textbanner-description {
  display: none !important;
}

@media (hover: hover) and (pointer: fine) {
  section[data-store="home-banner-promotional"] .textbanner {
    transition: transform .35s ease, box-shadow .35s ease !important;
  }

  section[data-store="home-banner-promotional"] .textbanner:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 16px 38px rgba(31,42,35,.14) !important;
  }

  section[data-store="home-banner-promotional"] .textbanner:hover .textbanner-image img {
    transform: scale(1.04) !important;
  }
}

/* Tablet */
@media (min-width: 768px) and (max-width: 1100px) {
  section[data-store="home-banner-promotional"]::after {
    font-size: 32px !important;
  }

  section[data-store="home-banner-promotional"] .js-banner-title,
  section[data-store="home-banner-promotional"] [class*="banner-title"],
  section[data-store="home-banner-promotional"] .js-banner-col h3,
  section[data-store="home-banner-promotional"] .js-banner-col h4,
  section[data-store="home-banner-promotional"] .js-banner-col .h5 {
    font-size: 20px !important;
  }
}

/* Mobile: 1 banner por linha + título centralizado */
@media (max-width: 767px) {
  section[data-store="home-banner-promotional"] {
    padding-top: 170px !important;
    padding-bottom: 44px !important;
    overflow: visible !important;
  }

  section[data-store="home-banner-promotional"]::before {
    top: 32px;
    font-size: 9px !important;
    letter-spacing: 1.8px !important;
  }

  section[data-store="home-banner-promotional"]::after {
    top: 56px;
    width: calc(100% - 40px);
    max-width: 330px;
    font-size: 25px !important;
    line-height: 1.14 !important;
  }

  section[data-store="home-banner-promotional"] .row,
  section[data-store="home-banner-promotional"] .swiper-wrapper {
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
    height: auto !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    transform: none !important;
  }

  section[data-store="home-banner-promotional"] .js-banner-col,
  section[data-store="home-banner-promotional"] .swiper-slide {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 18px !important;
    padding: 0 16px !important;
  }

  section[data-store="home-banner-promotional"] .swiper-slide-duplicate,
  section[data-store="home-banner-promotional"] .swiper-pagination {
    display: none !important;
  }

  section[data-store="home-banner-promotional"] .swiper,
  section[data-store="home-banner-promotional"] .swiper-container {
    width: 100% !important;
    overflow: visible !important;
  }

  section[data-store="home-banner-promotional"] .textbanner,
  section[data-store="home-banner-promotional"] .textbanner-image {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    border-radius: 10px !important;
  }

  section[data-store="home-banner-promotional"] .js-textbanner-text,
  section[data-store="home-banner-promotional"] .textbanner-text,
  section[data-store="home-banner-promotional"] [class*="textbanner-text"] {
    align-items: center !important;
    min-height: 56% !important;
    padding: 72px 18px 24px !important;
    background: linear-gradient(
      to top,
      rgba(31,42,35,.98) 0%,
      rgba(31,42,35,.82) 34%,
      rgba(31,42,35,.42) 62%,
      rgba(31,42,35,.10) 82%,
      transparent 100%
    ) !important;
    text-align: center !important;
  }

  section[data-store="home-banner-promotional"] .js-banner-title,
  section[data-store="home-banner-promotional"] [class*="banner-title"],
  section[data-store="home-banner-promotional"] .js-banner-col h3,
  section[data-store="home-banner-promotional"] .js-banner-col h4,
  section[data-store="home-banner-promotional"] .js-banner-col .h5 {
    width: 100% !important;
    font-size: 26px !important;
    line-height: 1.12 !important;
    color: #fff !important;
    text-align: center !important;
  }
}

/* Mobile estreito: reserva espaço extra para título em 3 linhas */
@media (max-width: 390px) {
  section[data-store="home-banner-promotional"] {
    padding-top: 186px !important;
  }

  section[data-store="home-banner-promotional"]::after {
    width: calc(100% - 34px);
    max-width: 305px;
    font-size: 24px !important;
    line-height: 1.13 !important;
  }
}

/* 8) MAIS ESCOLHIDOS — PRODUTOS EM DESTAQUE =============== */
/* Versão conservadora: preserva 100% o layout nativo dos produtos */

section[data-store="home-products-featured"] {
  position: relative !important;
  padding-top: 138px !important;
  padding-bottom: 64px !important;
  background: #f6f5f2 !important;
}

/* Remove somente o título padrão do tema */
section[data-store="home-products-featured"] .section-title,
section[data-store="home-products-featured"] .section-title-container,
section[data-store="home-products-featured"] .js-section-title {
  display: none !important;
}

/* Label */
section[data-store="home-products-featured"]::before {
  content: "MAIS ESCOLHIDOS";
  position: absolute;
  top: 38px;
  left: 0;
  z-index: 5;
  width: 100%;
  font-family: "Inter", Arial, sans-serif !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
  letter-spacing: 2.2px !important;
  color: #b18a55 !important;
  text-align: center !important;
  text-transform: uppercase !important;
  pointer-events: none;
}

/* Título */
section[data-store="home-products-featured"]::after {
  content: "Os favoritos dos nossos clientes";
  position: absolute;
  top: 64px;
  left: 50%;
  z-index: 5;
  width: calc(100% - 48px);
  max-width: 820px;
  transform: translateX(-50%);
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: 36px !important;
  font-weight: 400 !important;
  line-height: 1.2 !important;
  color: #1f2a23 !important;
  text-align: center !important;
  pointer-events: none;
}

/* NÃO altera altura, aspect-ratio, padding ou position do container de imagem */
section[data-store="home-products-featured"] .item-product,
section[data-store="home-products-featured"] .js-item-product {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* Apenas acabamento visual na foto, sem mudar geometria */
section[data-store="home-products-featured"] .item-image img,
section[data-store="home-products-featured"] .item-product-image img,
section[data-store="home-products-featured"] .js-item-image img {
  border-radius: 8px !important;
}

/* Nome */
section[data-store="home-products-featured"] .item-name,
section[data-store="home-products-featured"] .item-product-name,
section[data-store="home-products-featured"] .js-item-name {
  margin-top: 12px !important;
  margin-bottom: 5px !important;
  font-family: "Inter", Arial, sans-serif !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
  color: #1f2a23 !important;
}

section[data-store="home-products-featured"] .item-name a,
section[data-store="home-products-featured"] .item-product-name a,
section[data-store="home-products-featured"] .js-item-name a {
  color: #1f2a23 !important;
  text-decoration: none !important;
}

/* Preço */
section[data-store="home-products-featured"] .item-price,
section[data-store="home-products-featured"] .item-price-container,
section[data-store="home-products-featured"] .js-price-display,
section[data-store="home-products-featured"] [class*="price-display"] {
  font-family: "Inter", Arial, sans-serif !important;
  color: #1f2a23 !important;
}

section[data-store="home-products-featured"] .js-price-display,
section[data-store="home-products-featured"] [class*="price-display"] {
  font-size: 15px !important;
  font-weight: 600 !important;
}

/* Hover apenas no nome do produto — a imagem não recebe transform */
@media (hover: hover) and (pointer: fine) {
  section[data-store="home-products-featured"] .item-name a:hover,
  section[data-store="home-products-featured"] .item-product-name a:hover,
  section[data-store="home-products-featured"] .js-item-name a:hover {
    color: #b18a55 !important;
  }
}

/* Tablet */
@media (min-width: 768px) and (max-width: 1100px) {
  section[data-store="home-products-featured"] {
    padding-top: 130px !important;
    padding-bottom: 56px !important;
  }

  section[data-store="home-products-featured"]::after {
    font-size: 32px !important;
  }
}

/* Mobile */
@media (max-width: 767px) {
  section[data-store="home-products-featured"] {
    padding-top: 122px !important;
    padding-bottom: 44px !important;
  }

  section[data-store="home-products-featured"]::before {
    top: 30px;
    font-size: 9px !important;
    letter-spacing: 1.8px !important;
  }

  section[data-store="home-products-featured"]::after {
    top: 53px;
    width: calc(100% - 36px);
    max-width: 330px;
    font-size: 27px !important;
    line-height: 1.15 !important;
  }

  section[data-store="home-products-featured"] .item-name,
  section[data-store="home-products-featured"] .item-product-name,
  section[data-store="home-products-featured"] .js-item-name {
    margin-top: 9px !important;
    font-size: 13px !important;
  }

  section[data-store="home-products-featured"] .js-price-display,
  section[data-store="home-products-featured"] [class*="price-display"] {
    font-size: 14px !important;
  }
}

/* 8.1) PRODUTOS EM DESTAQUE — HOVER SEM TROCA DE IMAGEM === */
/* Classes confirmadas pelo DevTools:
   Principal: product-item-image-featured / item-image-featured
   Secundária: js-product-item-secondary-image-private /
               product-item-image-secondary / item-image-secondary

   IMPORTANTE:
   Não alteramos transform, position, width ou height da imagem principal,
   pois o tema usa transform para centralizá-la corretamente. */

/* Mantém a imagem principal sempre visível */
section[data-store="home-products-featured"]
img.product-item-image-featured,
section[data-store="home-products-featured"]
img.item-image-featured {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Desativa SOMENTE a imagem secundária do hover */
section[data-store="home-products-featured"]
img.js-product-item-secondary-image-private,
section[data-store="home-products-featured"]
img.product-item-image-secondary,
section[data-store="home-products-featured"]
img.item-image-secondary {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
}

/* Reforço durante hover no card/link */
section[data-store="home-products-featured"]
.item-product:hover img.product-item-image-featured,
section[data-store="home-products-featured"]
.js-item-product:hover img.product-item-image-featured,
section[data-store="home-products-featured"]
.item-product:hover img.item-image-featured,
section[data-store="home-products-featured"]
.js-item-product:hover img.item-image-featured,
section[data-store="home-products-featured"]
.js-product-item-image-link-private:hover img.product-item-image-featured,
section[data-store="home-products-featured"]
.js-product-item-image-link-private:hover img.item-image-featured {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Mesmo no hover, a segunda imagem continua desligada */
section[data-store="home-products-featured"]
.item-product:hover img.js-product-item-secondary-image-private,
section[data-store="home-products-featured"]
.js-item-product:hover img.js-product-item-secondary-image-private,
section[data-store="home-products-featured"]
.js-product-item-image-link-private:hover img.js-product-item-secondary-image-private,
section[data-store="home-products-featured"]
.item-product:hover img.product-item-image-secondary,
section[data-store="home-products-featured"]
.js-item-product:hover img.product-item-image-secondary,
section[data-store="home-products-featured"]
.js-product-item-image-link-private:hover img.product-item-image-secondary,
section[data-store="home-products-featured"]
.item-product:hover img.item-image-secondary,
section[data-store="home-products-featured"]
.js-item-product:hover img.item-image-secondary,
section[data-store="home-products-featured"]
.js-product-item-image-link-private:hover img.item-image-secondary {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
}

/* Hover discreto apenas no nome do produto */
@media (hover: hover) and (pointer: fine) {
  section[data-store="home-products-featured"] .item-name a,
  section[data-store="home-products-featured"] .item-product-name a,
  section[data-store="home-products-featured"] .js-item-name a {
    transition: color .25s ease !important;
  }

  section[data-store="home-products-featured"] .item-name a:hover,
  section[data-store="home-products-featured"] .item-product-name a:hover,
  section[data-store="home-products-featured"] .js-item-name a:hover {
    color: #b18a55 !important;
  }
}

/* 8.2) REGRA CRÍTICA — NÃO SOBRESCREVER O TRANSFORM NATIVO === */
/* A imagem principal usa translateX calculado pelo tema para ficar centralizada.
   Por isso, nesta vitrine não aplicamos scale(), translate() nem transform:none
   em hover sobre as imagens. A troca secundária permanece desativada pelo bloco 8.1. */

/* 8.3) PRODUTOS — ZOOM SUAVE NO DESKTOP ==================== */
/* Estrutura confirmada no DevTools:
   Nível 2 = .position-relative.d-block (173x173)
   Nível 3 = container da imagem (173x173, overflow hidden)

   O zoom é aplicado no wrapper da foto, e NÃO na imagem.
   Assim o transform interno da Nuvemshop continua intacto. */

@media (hover: hover) and (pointer: fine) and (min-width: 768px) {

  section[data-store="home-products-featured"]
  .js-product-item-image-container-private {
    overflow: hidden !important;
    border-radius: 8px !important;
  }

  section[data-store="home-products-featured"]
  .js-product-item-image-container-private > .position-relative.d-block {
    transform: scale(1) !important;
    transform-origin: center center !important;
    transition: transform .38s ease !important;
    will-change: transform;
  }

  /* O efeito acontece ao passar o mouse em qualquer ponto do card */
  section[data-store="home-products-featured"]
  .item-product:hover
  .js-product-item-image-container-private > .position-relative.d-block,
  section[data-store="home-products-featured"]
  .js-item-product:hover
  .js-product-item-image-container-private > .position-relative.d-block {
    transform: scale(1.035) !important;
  }
}

/* 9) AVALIAÇÕES TRUSTY — EXPERIÊNCIAS REAIS ================= */
/* Estrutura confirmada no DevTools:
   .reviewsapp.reviewsapp-highlights-container.rio
   .reviewsapp-highlights
   .reviewsapp-highlights-item
   .reviewsapp-highlights-header
   .reviewsapp-highlights-author-block
   .reviewsapp-highlights-author-name
   .reviewsapp-highlights-title
   .reviewsapp-highlights-nav-left / right
*/

.reviewsapp.reviewsapp-highlights-container.rio {
  position: relative !important;
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 150px 0 82px !important;
  background: #f6f5f2 !important;
  overflow: hidden !important;
}

.reviewsapp.reviewsapp-highlights-container.rio::before {
  content: "EXPERIÊNCIAS REAIS";
  position: absolute;
  top: 48px;
  left: 0;
  width: 100%;
  font-family: "Inter", Arial, sans-serif !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
  letter-spacing: 2.2px !important;
  text-transform: uppercase !important;
  text-align: center !important;
  color: #b18a55 !important;
  pointer-events: none;
  z-index: 4;
}

.reviewsapp.reviewsapp-highlights-container.rio::after {
  content: "A confiança de quem escolheu a Espelhos Brasil.";
  position: absolute;
  top: 72px;
  left: 50%;
  width: calc(100% - 48px);
  max-width: 900px;
  transform: translateX(-50%);
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: 36px !important;
  font-weight: 400 !important;
  line-height: 1.18 !important;
  text-align: center !important;
  color: #1f2a23 !important;
  pointer-events: none;
  z-index: 4;
}

.reviewsapp.reviewsapp-highlights-container.rio .reviewsapp-highlights {
  box-sizing: border-box !important;
  max-width: 1080px !important;
  margin: 0 auto !important;
  padding: 0 52px !important;
}

.reviewsapp.reviewsapp-highlights-container.rio .reviewsapp-highlights-item {
  box-sizing: border-box !important;
  background: #ffffff !important;
  border: 1px solid rgba(31, 42, 35, .08) !important;
  border-radius: 12px !important;
  box-shadow: 0 8px 24px rgba(31, 42, 35, .055) !important;
  padding: 22px 20px !important;
}

.reviewsapp.reviewsapp-highlights-container.rio .reviewsapp-highlights-header {
  margin-bottom: 12px !important;
}

.reviewsapp.reviewsapp-highlights-container.rio .reviewsapp-highlights-author-block,
.reviewsapp.reviewsapp-highlights-container.rio .reviewsapp-highlights-author-name {
  font-family: "Inter", Arial, sans-serif !important;
  color: #1f2a23 !important;
}

.reviewsapp.reviewsapp-highlights-container.rio .reviewsapp-highlights-author-name {
  font-size: 13px !important;
  font-weight: 500 !important;
  line-height: 1.3 !important;
}

.reviewsapp.reviewsapp-highlights-container.rio .reviewsapp-highlights-title {
  margin-top: 10px !important;
  margin-bottom: 6px !important;
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: 20px !important;
  font-weight: 400 !important;
  line-height: 1.25 !important;
  color: #1f2a23 !important;
}

.reviewsapp.reviewsapp-highlights-container.rio .reviewsapp-highlights-item,
.reviewsapp.reviewsapp-highlights-container.rio .reviewsapp-highlights-item p,
.reviewsapp.reviewsapp-highlights-container.rio .reviewsapp-highlights-item div {
  color: #1f2a23;
}

.reviewsapp.reviewsapp-highlights-container.rio .reviewsapp-highlights-item p {
  font-family: "Inter", Arial, sans-serif !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
}

.reviewsapp.reviewsapp-highlights-container.rio .reviewsapp-highlights-nav-left,
.reviewsapp.reviewsapp-highlights-container.rio .reviewsapp-highlights-nav-right {
  width: 42px !important;
  height: 42px !important;
  border-radius: 50% !important;
  background: #ffffff !important;
  border: 1px solid rgba(31,42,35,.14) !important;
  box-shadow: 0 4px 12px rgba(31,42,35,.06) !important;
  color: #1f2a23 !important;
  transition: background-color .25s ease, border-color .25s ease !important;
}

@media (hover: hover) and (pointer: fine) {
  .reviewsapp.reviewsapp-highlights-container.rio .reviewsapp-highlights-nav-left:hover,
  .reviewsapp.reviewsapp-highlights-container.rio .reviewsapp-highlights-nav-right:hover {
    background: #1f2a23 !important;
    border-color: #1f2a23 !important;
    color: #ffffff !important;
  }
}

@media (min-width: 768px) and (max-width: 1100px) {
  .reviewsapp.reviewsapp-highlights-container.rio {
    padding-top: 140px !important;
    padding-bottom: 70px !important;
  }

  .reviewsapp.reviewsapp-highlights-container.rio::after {
    font-size: 32px !important;
  }

  .reviewsapp.reviewsapp-highlights-container.rio .reviewsapp-highlights {
    padding-left: 44px !important;
    padding-right: 44px !important;
  }
}

@media (max-width: 767px) {
  .reviewsapp.reviewsapp-highlights-container.rio {
    padding-top: 126px !important;
    padding-bottom: 52px !important;
  }

  .reviewsapp.reviewsapp-highlights-container.rio::before {
    top: 34px;
    font-size: 9px !important;
    letter-spacing: 1.8px !important;
  }

  .reviewsapp.reviewsapp-highlights-container.rio::after {
    top: 57px;
    width: calc(100% - 36px);
    max-width: 330px;
    font-size: 27px !important;
    line-height: 1.15 !important;
  }

  .reviewsapp.reviewsapp-highlights-container.rio .reviewsapp-highlights {
    padding-left: 36px !important;
    padding-right: 36px !important;
  }

  .reviewsapp.reviewsapp-highlights-container.rio .reviewsapp-highlights-item {
    padding: 18px 16px !important;
    border-radius: 10px !important;
  }

  .reviewsapp.reviewsapp-highlights-container.rio .reviewsapp-highlights-title {
    font-size: 18px !important;
  }

  .reviewsapp.reviewsapp-highlights-container.rio .reviewsapp-highlights-item p {
    font-size: 12px !important;
  }

  .reviewsapp.reviewsapp-highlights-container.rio .reviewsapp-highlights-nav-left,
  .reviewsapp.reviewsapp-highlights-container.rio .reviewsapp-highlights-nav-right {
    width: 34px !important;
    height: 34px !important;
  }
}

/* 9.1) AJUSTE FINO — AVALIAÇÕES TRUSTY ====================== */
/* Reduz o grande vazio entre a vitrine de produtos e as avaliações,
   sem alterar a lógica do carrossel do Trusty. */

/* Aproxima o fim da vitrine de produtos da seção de avaliações */
section[data-store="home-products-featured"] {
  padding-bottom: 24px !important;
}

/* Desktop */
@media (min-width: 1101px) {
  .reviewsapp.reviewsapp-highlights-container.rio {
    padding-top: 138px !important;
    padding-bottom: 72px !important;
  }

  .reviewsapp.reviewsapp-highlights-container.rio::before {
    top: 38px !important;
  }

  .reviewsapp.reviewsapp-highlights-container.rio::after {
    top: 62px !important;
  }
}

/* Tablet */
@media (min-width: 768px) and (max-width: 1100px) {
  section[data-store="home-products-featured"] {
    padding-bottom: 20px !important;
  }

  .reviewsapp.reviewsapp-highlights-container.rio {
    padding-top: 130px !important;
    padding-bottom: 62px !important;
  }

  .reviewsapp.reviewsapp-highlights-container.rio::before {
    top: 34px !important;
  }

  .reviewsapp.reviewsapp-highlights-container.rio::after {
    top: 57px !important;
  }
}

/* Mobile */
@media (max-width: 767px) {
  section[data-store="home-products-featured"] {
    padding-bottom: 12px !important;
  }

  .reviewsapp.reviewsapp-highlights-container.rio {
    padding-top: 112px !important;
    padding-bottom: 44px !important;
  }

  .reviewsapp.reviewsapp-highlights-container.rio::before {
    top: 24px !important;
  }

  .reviewsapp.reviewsapp-highlights-container.rio::after {
    top: 46px !important;
    max-width: 310px !important;
    font-size: 25px !important;
    line-height: 1.14 !important;
  }

  /* Mantém o primeiro card confortável e o próximo apenas como pista de navegação */
  .reviewsapp.reviewsapp-highlights-container.rio .reviewsapp-highlights {
    padding-left: 34px !important;
    padding-right: 34px !important;
  }
}

/* 9.2) CORREÇÃO FINAL DO ESPAÇO ENTRE PRODUTOS E AVALIAÇÕES == */
/* Medição real no DevTools:
   fim da seção de produtos = 3567px
   início do Trusty = 3637px
   distância externa = 70px
   margin-top do Trusty = 0px

   Portanto o vazio não está dentro dos cards nem no padding inferior
   dos produtos; é um espaçamento externo criado entre os dois blocos.
   Neutralizamos somente esses 70px na seção de avaliações. */

.reviewsapp.reviewsapp-highlights-container.rio {
  margin-top: -70px !important;
}

/* Depois de remover o vão externo, devolvemos um respiro editorial
   controlado dentro do próprio bloco de avaliações. */
@media (min-width: 1101px) {
  .reviewsapp.reviewsapp-highlights-container.rio {
    padding-top: 132px !important;
  }

  .reviewsapp.reviewsapp-highlights-container.rio::before {
    top: 42px !important;
  }

  .reviewsapp.reviewsapp-highlights-container.rio::after {
    top: 67px !important;
  }
}

@media (min-width: 768px) and (max-width: 1100px) {
  .reviewsapp.reviewsapp-highlights-container.rio {
    padding-top: 124px !important;
  }

  .reviewsapp.reviewsapp-highlights-container.rio::before {
    top: 38px !important;
  }

  .reviewsapp.reviewsapp-highlights-container.rio::after {
    top: 62px !important;
  }
}

@media (max-width: 767px) {
  .reviewsapp.reviewsapp-highlights-container.rio {
    margin-top: -70px !important;
    padding-top: 118px !important;
  }

  .reviewsapp.reviewsapp-highlights-container.rio::before {
    top: 32px !important;
  }

  .reviewsapp.reviewsapp-highlights-container.rio::after {
    top: 55px !important;
  }
}

/* 2.1) MENU DESKTOP — SUBMENU SOBRE FUNDO CLARO ============ */
@media (min-width: 768px) {
  .js-head-main .nav-dropdown-content .nav-list-link,
  .js-head-main .nav-dropdown-content .nav-list-link:visited,
  .js-head-main .nav-dropdown-content a,
  .js-head-main .nav-dropdown-content a:visited {
    color: #1f2a23 !important;
  }

  .js-head-main .nav-dropdown-content .nav-list-link:hover,
  .js-head-main .nav-dropdown-content a:hover {
    color: #b18a55 !important;
  }

  .js-head-main .nav-dropdown-content .nav-list-link::after {
    display: none !important;
  }
}

/* Teste de carregamento FTP / V2 */
:root {
  --espelhos-brasil-custom-css: "V2-ATIVO";
}

