/* Fix para compatibilidade com tema Nuvemshop */

/* Remove padding-top do body que causa erro */
body.js-head-offset {
  padding-top: 0 !important;
}

/* Garante que o header não quebre o layout */
.header-astro-container {
  position: relative !important;
  top: 0 !important;
}

/* Fix para logo container */
.header-astro-container .js-logo-container {
  width: 220px !important;
  min-width: 220px !important;
}

/* Previne conflitos com container do tema */
.header-astro-container .container {
  width: 100% !important;
  max-width: 1170px !important;
  margin: 0 auto !important;
  padding: 0 15px !important;
}

/* Clearfix */
.header-astro-container .container::after {
  content: "" !important;
  display: table !important;
  clear: both !important;
}

/* Fix para elementos flutuantes */
.header-astro-container .left {
  float: left !important;
}

.header-astro-container .right {
  float: right !important;
}

/* Garante que grid funcione */
.header-astro-container [class*="grid12-"] {
  float: left !important;
  position: relative !important;
}

/* Fix para busca mobile */
@media (max-width: 767px) {
  body .header-astro-container .mobile-search[class*="grid12-"] {
    position: fixed !important;
    width: 100%;
    left: 0;
    top: 46px;
  }

  body .header-astro-container .mobile-search.active[class*="grid12-"] {
    position: fixed !important;
    width: 100%;
    left: 0;
    top: 46px;
  }

  .mobile-search .form-search button {
    position: initial;
  }

  .mobile-search>.form-search>form {
    display: flex;
    align-items: center;
    float: initial;
    gap: 15px;
  }

  .mobile-search .form-search .input-text {
    transform: initial;
    height: 40px !important;
    margin: 0;
  }

  .mobile-search.active+.wrap-cliente {
    width: 100% !important;
  }

  .header-astro-container  .wrap-cliente.grid12-6.no-gutter {
    width: 100% !important;
  }
}

/* Estilo
s para área de login no menu mobile */
.mobile-menu-user {
  padding: 20px 15px;
  border-bottom: 1px solid #e0e0e0;
  background-color: #f8f8f8;
}

.mobile-user-info {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 16px;
  font-weight: 600;
  color: #333;
  margin-bottom: 15px;
}

.mobile-user-info i {
  font-size: 20px;
  color: #ff7e26;
}

.mobile-user-links {
  list-style: none;
  padding: 0;
  margin: 0;
}

.mobile-user-links li {
  margin-bottom: 10px;
}

.mobile-user-links a {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px;
  background-color: #fff;
  border-radius: 6px;
  color: #333;
  text-decoration: none;
  transition: background-color 0.3s;
}

.mobile-user-links a:hover {
  background-color: #f0f0f0;
}

.mobile-user-links i {
  font-size: 18px;
  color: #ff7e26;
}

.mobile-login-buttons {
  display: flex;
  gap: 10px;
}

.mobile-btn-login,
.mobile-btn-register {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 12px 20px;
  border-radius: 6px;
  text-decoration: none;
  font-weight: 600;
  transition: all 0.3s;
}

.mobile-btn-login {
  background-color: #fff;
  color: #333;
  border: 2px solid #ff7e26;
}

.mobile-btn-login:hover {
  background-color: #ff7e26;
  color: #fff;
}

.mobile-btn-register {
  background-color: #ff7e26;
  color: #fff;
  border: 2px solid #ff7e26;
}

.mobile-btn-register:hover {
  background-color: #e66d1f;
  border-color: #e66d1f;
}

.mobile-btn-login i,
.mobile-btn-register i {
  font-size: 18px;
}