/* ajustes para mobile: back-to-top discreto */
.back-to-top { display: none; }
@media (max-width: 576px) {
  .back-to-top {
    bottom: 18px;
    right: 14px;
    opacity: 0.9;
    transform: scale(0.5);
    transform-origin: bottom right;
    position: fixed;
    display: block;
    z-index: 1000;
  }
  .back-to-top svg { width: 39px; height: 75px; }
}
@media (min-width: 577px) {
  .back-to-top { display: none !important; }
}

/* Cookie consent modal: desktop bottom-left, mobile centered */
.common-modal.cookie_consent_modal {
  position: fixed;
  left: 24px;
  bottom: 24px;
  width: 420px;
  max-width: 92vw;
  max-height: 80vh;
  overflow-y: auto;
  padding: 16px;
  box-sizing: border-box;
}
.cookie_consent_close_btn { position: absolute; right: 12px; top: 12px; }
.common-modal.cookie_consent_modal .common-modal-btn .thm-btn-two { width: 100%; }

@media (max-width: 576px) {
  .common-modal.cookie_consent_modal {
    left: 12px;
    right: 12px;
    bottom: 12px;
    top: auto;
    transform: none;
    width: auto;
    max-width: none;
    border-radius: 12px;
    z-index: 999;
  }
}

/* esconder barra superior (email/telefone) */
.header-border { display: none; }

/* banner da home: começa abaixo do menu, altura 320px, imagem completa */
.banner-three { 
  position: relative; 
  min-height: 420px; 
  background-position: center; 
  background-size: cover; 
  margin: 0; 
  padding: 0;
  margin-top: 0;
}

.banner-three .banner-three-txt { display: none; }

.banner-three .banner-search-bar-main { 
  position: absolute; 
  left: 50%; 
  transform: translateX(-50%); 
  bottom: -24px; 
  z-index: 10; 
  width: min(1100px, calc(100% - 48px)); 
}

.categories.categories-two { 
  margin-top: 100px; 
}

/* Ajuste para garantir que o banner fique abaixo do header */
main {
  margin-top: 0;
  padding-top: 0;
}

/* Ajuste do header para não sobrepor o banner */
.header.header-two.inner-header {
  position: relative;
  z-index: 100;
}

.menu-bg {
  position: relative;
  z-index: 100;
  background: #fff;
}

/* ícone no botão Entrar (nav-btn) */
.header .menu-bg .nav-main .nav-btn .thm-btn-two span { line-height: 0; margin-right: 6px; }
.header .menu-bg .nav-main .nav-btn .thm-btn-two span svg { stroke: currentColor; color: currentColor; }

/* Responsivo para tablets */
@media (max-width: 991px) {
  .banner-three { 
    min-height: 350px; 
  }
  
  .banner-three .banner-search-bar-main { 
    bottom: -28px; 
    width: calc(100% - 32px); 
  }
  
  .categories.categories-two { 
    margin-top: 120px; 
  }
}

/* Responsivo para mobile */
@media (max-width: 576px) {
  .banner-three { 
    min-height: 280px; 
  }
  
  .banner-three .banner-search-bar-main { 
    bottom: -32px; 
    width: calc(100% - 24px); 
  }
  
  .categories.categories-two { 
    margin-top: 140px; 
  }
}
 
.banner-three .banner-search-bar-main { display: none !important; }
.home-search .banner-search-bar-main { position: relative; left: 50%; transform: translateX(-50%); margin-top: -24px; z-index: 10; width: min(1100px, calc(100% - 48px)); }
@media (max-width: 991px) { .home-search .banner-search-bar-main { margin-top: -28px; width: calc(100% - 32px); } }
@media (max-width: 576px) { .home-search .banner-search-bar-main { margin-top: -32px; width: calc(100% - 24px); } }
