/* =========================================================
   AMBIENTA THEME
   OpenCart 4.0.2.3
   Desktop + Tablet + Mobile
   ========================================================= */


/* =========================================================
   VARIABLES
   Valores din��micos pueden ser sobrescritos desde header.twig
   ========================================================= */

:root {
  --ambienta-green: #95c11f;
  --ambienta-green-dark: #769d13;
  --ambienta-text: #17191c;
  --ambienta-border: #ededed;
  --ambienta-search-bg: #f4f4f4;
  --ambienta-white: #ffffff;

  --ambienta-header-height: 84px;
  --ambienta-logo-width: 235px;
  --ambienta-menu-font-size: 15px;
  --ambienta-search-width: 340px;
  --ambienta-search-height: 46px;
  --ambienta-topbar-font-size: 15px;
  --ambienta-topbar-background: #95c11f;
  --ambienta-topbar-text-color: #ffffff;
  --ambienta-topbar-height: 48px;

  --ambienta-whatsapp-size: 60px;
  --ambienta-whatsapp-right: 28px;
  --ambienta-whatsapp-bottom: 28px;
}


/* =========================================================
   GENERAL
   ========================================================= */

body {
  margin: 0;
  background: #ffffff;
  color: var(--ambienta-text);
}

a {
  transition:
    color .2s ease,
    opacity .2s ease,
    background-color .2s ease;
}

main {
  position: relative;
  z-index: 1;
}


/* =========================================================
   ADMIN-CONTROLLED SITE COLORS & FONTS
   ========================================================= */

body {
  background: var(--ambienta-site-background) !important;
  color: var(--ambienta-text-color);
  font-family: var(--ambienta-body-font), Arial, sans-serif;
  font-size: var(--ambienta-body-font-size);
}

h1, h2, h3, h4, h5, h6 {
  color: var(--ambienta-heading-color);
  font-family: var(--ambienta-heading-font), Arial, sans-serif;
}
h1 { font-size: var(--ambienta-h1-size); }
h2 { font-size: var(--ambienta-h2-size); }
h3 { font-size: var(--ambienta-h3-size); }

#content a:not(.btn):not(.dropdown-item):not(.list-group-item) { color: var(--ambienta-link-color); }
#content a:not(.btn):not(.dropdown-item):not(.list-group-item):hover { color: var(--ambienta-link-hover-color); }

.btn-primary,
#button-cart,
.product-thumb .button-group button:first-child {
  background-color: var(--ambienta-button-color) !important;
  border-color: var(--ambienta-button-color) !important;
  color: #fff !important;
}
.btn-primary:hover, .btn-primary:focus,
#button-cart:hover, #button-cart:focus,
.product-thumb .button-group button:first-child:hover {
  background-color: var(--ambienta-button-hover-color) !important;
  border-color: var(--ambienta-button-hover-color) !important;
}

.list-group-item.active,
.list-group-item.active:hover,
.list-group-item.active:focus {
  background-color: var(--ambienta-active-color) !important;
  border-color: var(--ambienta-active-color) !important;
  color: #fff !important;
}
.list-group-item.active a, .list-group-item.active * { color: #fff !important; }

/* =========================================================
   TOP GREEN BAR
   ========================================================= */

.ambienta-topbar {
  position: relative;
  z-index: 1030;

  width: 100%;

  background: var(--ambienta-topbar-background, var(--ambienta-green));
  color: var(--ambienta-topbar-text-color, #ffffff);
}

.ambienta-topbar-inner {
  width: 100%;
  min-height: var(--ambienta-topbar-height, 48px);

  padding: 0 30px;

  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 30px;
}


/* =========================================================
   CONTACT
   ========================================================= */

.ambienta-top-contact {
  display: flex;
  align-items: center;

  gap: 20px;

  white-space: nowrap;
}

.ambienta-top-contact a {
  display: inline-flex;
  align-items: center;

  gap: 7px;

  color: #ffffff !important;
  text-decoration: none !important;

  font-size: var(--ambienta-topbar-font-size) !important;
  font-weight: 600;
}

.ambienta-top-contact a:hover {
  color: #ffffff !important;
  opacity: .82;
}

.ambienta-top-contact i {
  color: #ffffff;
  font-size: 16px;
}

.ambienta-top-contact a + a::before {
  content: "";

  display: inline-block;

  width: 1px;
  height: 22px;

  margin-right: 18px;

  background: rgba(255,255,255,.70);
}


/* =========================================================
   TOP ACTIONS
   ========================================================= */

.ambienta-top-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;

  gap: 22px;

  white-space: nowrap;
}


/* =========================================================
   ACCOUNT
   ========================================================= */

.ambienta-account > a {
  display: inline-flex;
  align-items: center;

  gap: 7px;

  color: #ffffff !important;
  text-decoration: none !important;

  font-size: var(--ambienta-topbar-font-size) !important;
  font-weight: 600;
}

.ambienta-account > a:hover {
  color: #ffffff !important;
  opacity: .82;
}

.ambienta-account > a::after {
  display: none !important;
}

.ambienta-account i {
  color: #ffffff;
  font-size: 21px;
}

.ambienta-account .dropdown-menu {
  min-width: 190px;

  margin-top: 10px;

  background: #ffffff;

  border: 1px solid var(--ambienta-border);
  border-radius: 8px;

  box-shadow: 0 12px 30px rgba(0,0,0,.12);
}

.ambienta-account .dropdown-item {
  padding: 9px 16px;

  color: var(--ambienta-text);

  font-size: 14px;
}


/* =========================================================
   CART
   ========================================================= */

.ambienta-cart {
  display: flex;
  align-items: center;
}

.ambienta-cart::before {
  content: "";

  display: inline-block;

  width: 1px;
  height: 22px;

  margin-right: 20px;

  background: rgba(255,255,255,.70);
}

.ambienta-cart .btn,
.ambienta-cart button,
.ambienta-cart .btn-inverse {
  display: inline-flex !important;

  align-items: center;
  justify-content: center;

  width: auto !important;
  min-width: auto !important;

  padding: 0 !important;

  color: #ffffff !important;

  background: transparent !important;
  background-image: none !important;

  border: 0 !important;

  box-shadow: none !important;
  text-shadow: none !important;
}

.ambienta-cart .btn:hover,
.ambienta-cart button:hover {
  color: #ffffff !important;
  opacity: .82;
}

.ambienta-cart #cart-total {
  display: inline-flex !important;
  align-items: center;

  gap: 7px;

  color: #ffffff !important;

  font-size: var(--ambienta-topbar-font-size) !important;
  font-weight: 600;
}

.ambienta-cart i,
.ambienta-cart #cart-total i {
  color: #ffffff !important;
  font-size: 21px !important;
}

.ambienta-cart .dropdown-menu {
  min-width: 320px;

  background: #ffffff;

  border: 1px solid var(--ambienta-border);
  border-radius: 8px;

  box-shadow: 0 12px 30px rgba(0,0,0,.12);
}


/* =========================================================
   MAIN WHITE HEADER
   ========================================================= */

.ambienta-main-header {
  position: relative;
  z-index: 1020;

  width: 100%;

  background: #ffffff;

  border-bottom: 1px solid var(--ambienta-border);

  box-shadow: 0 2px 8px rgba(0,0,0,.05);
}

.ambienta-main-header.ambienta-sticky {
  position: sticky;
  top: 0;
}


/* =========================================================
   HEADER LAYOUT
   ========================================================= */

.ambienta-header-inner {
  width: 100%;
  min-height: var(--ambienta-header-height);

  padding: 6px 18px;

  display: grid;

  grid-template-columns:
    285px
    minmax(0, 1fr)
    var(--ambienta-search-width);

  align-items: center;
  justify-content: start;

  column-gap: 32px;
}


/* =========================================================
   LOGO
   ========================================================= */

.ambienta-logo {
  display: flex;
  align-items: center;

  width: var(--ambienta-logo-width);
  max-width: var(--ambienta-logo-width);

  min-width: 0;
}

.ambienta-logo a {
  display: inline-flex;
  align-items: center;

  text-decoration: none;
}

.ambienta-logo img {
  display: block;

  width: auto !important;
  height: auto !important;

  max-width: var(--ambienta-logo-width) !important;
  max-height: calc(var(--ambienta-header-height) - 28px) !important;

  object-fit: contain;
}

.ambienta-logo h1 {
  margin: 0;
}


/* =========================================================
   DESKTOP NAVIGATION
   ========================================================= */

.ambienta-navigation {
  display: flex;
  align-items: center;

  min-width: 0;
}

.ambienta-navigation #menu {
  width: auto;
  min-height: auto !important;

  margin: 0 !important;
  padding: 0 !important;

  background: transparent !important;
  background-image: none !important;

  border: 0 !important;
  border-radius: 0 !important;

  box-shadow: none !important;
}

.ambienta-navigation #menu .container,
.ambienta-navigation #menu .container-fluid {
  width: auto;
  max-width: none !important;

  margin: 0 !important;
  padding: 0 !important;
}

.ambienta-navigation #menu .navbar-collapse {
  padding: 0 !important;
}

.ambienta-navigation #menu .navbar-nav {
  display: flex !important;

  flex-direction: row !important;
  flex-wrap: nowrap !important;

  align-items: center;

  gap: 4px !important;

  width: auto;

  margin: 0;
  padding: 0;
}

.ambienta-navigation #menu .navbar-nav > li {
  position: relative;

  flex: 0 0 auto;

  float: none !important;
}

.ambienta-navigation #menu .navbar-nav > li > a {
  display: inline-flex;
  align-items: center;

  padding: 9px 10px !important;

  color: var(--ambienta-text) !important;

  background: transparent !important;

  font-size: var(--ambienta-menu-font-size) !important;
  font-weight: 700;

  line-height: 1.2;

  text-decoration: none !important;
  text-shadow: none !important;

  white-space: nowrap;
}

.ambienta-navigation #menu .navbar-nav > li > a:hover,
.ambienta-navigation #menu .navbar-nav > li > a:focus {
  color: var(--ambienta-green-dark) !important;
  background: transparent !important;
}


/* Underline */

.ambienta-navigation #menu .navbar-nav > li > a::after {
  content: "";

  position: absolute;

  left: 10px;
  right: 10px;
  bottom: 1px;

  height: 2px;

  background: var(--ambienta-green);

  transform: scaleX(0);
  transform-origin: center;

  transition: transform .2s ease;
}

.ambienta-navigation #menu .navbar-nav > li:hover > a::after {
  transform: scaleX(1);
}


/* =========================================================
   DESKTOP DROPDOWNS
   ========================================================= */

.ambienta-navigation #menu .dropdown-menu {
  min-width: 225px;

  margin-top: 0;
  padding: 8px 0;

  background: #ffffff;

  border: 1px solid var(--ambienta-border);
  border-radius: 8px;

  box-shadow: 0 12px 30px rgba(0,0,0,.12);
}

.ambienta-navigation #menu .dropdown-menu a {
  display: block;

  padding: 9px 16px;

  color: var(--ambienta-text);

  background: transparent;

  font-size: 14px;
  font-weight: 600;

  text-decoration: none;
}

.ambienta-navigation #menu .dropdown-menu a:hover {
  color: var(--ambienta-green-dark);
  background: #f6f8f2;
}


/* =========================================================
   SEARCH
   ========================================================= */

.ambienta-search {
  width: var(--ambienta-search-width) !important;
  max-width: var(--ambienta-search-width) !important;

  margin-left: 0 !important;
  margin-right: 0 !important;

  justify-self: start;
}

.ambienta-search #search {
  display: flex;

  width: 100%;

  height: var(--ambienta-search-height) !important;
  min-height: var(--ambienta-search-height) !important;

  margin: 0 !important;

  overflow: hidden;

  background: var(--ambienta-search-bg);

  border: 1px solid rgba(149,193,31,.28) !important;

  border-radius: calc(var(--ambienta-search-height) / 2) !important;

  box-shadow: none !important;
}

.ambienta-search #search .form-control,
.ambienta-search #search .form-control-lg,
.ambienta-search #search input {
  flex: 1;

  min-width: 0;

  height: var(--ambienta-search-height) !important;
  min-height: var(--ambienta-search-height) !important;

  padding-left: 20px !important;
  padding-right: 8px;

  color: #444444;

  background: transparent !important;

  border: 0 !important;
  border-radius: 0 !important;

  box-shadow: none !important;

  font-size: 15px !important;
}

.ambienta-search #search input::placeholder {
  color: #73777a;
  opacity: 1;
}

.ambienta-search #search button,
.ambienta-search #search .btn,
.ambienta-search #search .btn-lg {
  width: 52px !important;
  min-width: 52px !important;

  height: var(--ambienta-search-height) !important;
  min-height: var(--ambienta-search-height) !important;

  padding: 0 !important;

  color: #555555 !important;

  background: transparent !important;

  border: 0 !important;
  border-radius: 0 !important;

  box-shadow: none !important;

  font-size: 19px !important;
}

.ambienta-search #search button:hover,
.ambienta-search #search .btn:hover {
  color: var(--ambienta-green-dark) !important;
}

.ambienta-search #search:focus-within {
  box-shadow:
    0 0 0 2px rgba(149,193,31,.18) !important;
}


/* =========================================================
   WHATSAPP
   ========================================================= */

.ambienta-whatsapp {
  position: fixed;

  right: var(--ambienta-whatsapp-right);
  bottom: var(--ambienta-whatsapp-bottom);

  width: var(--ambienta-whatsapp-size);
  height: var(--ambienta-whatsapp-size);

  display: flex;
  align-items: center;
  justify-content: center;

  background: #25D366;

  color: #ffffff !important;

  border-radius: 50%;

  text-decoration: none !important;

  box-shadow: 0 6px 18px rgba(0,0,0,.22);

  z-index: 9999;

  transition:
    transform .20s ease,
    box-shadow .20s ease,
    background-color .20s ease;
}

.ambienta-whatsapp i {
  display: block;

  color: #ffffff !important;

  font-size: calc(var(--ambienta-whatsapp-size) * .53);

  line-height: 1;
}

.ambienta-whatsapp:hover {
  background: #20bd5a;

  color: #ffffff !important;

  transform:
    translateY(-3px)
    scale(1.05);

  box-shadow: 0 9px 25px rgba(0,0,0,.28);
}

.ambienta-whatsapp:hover i {
  color: #ffffff !important;
}


/* =========================================================
   MOBILE NAVIGATION DEFAULT
   ========================================================= */

.ambienta-mobile-navigation {
  display: none;
}


/* =========================================================
   LAPTOP
   ========================================================= */

@media (max-width: 1300px) and (min-width: 992px) {

  .ambienta-header-inner {
    grid-template-columns:
      250px
      minmax(0, 1fr)
      300px;

    column-gap: 18px;

    padding-left: 14px;
    padding-right: 14px;
  }

  .ambienta-logo {
    width: 220px;
    max-width: 220px;
  }

  .ambienta-logo img {
    max-width: 220px !important;
  }

  .ambienta-navigation #menu .navbar-nav {
    gap: 2px !important;
  }

  .ambienta-navigation #menu .navbar-nav > li > a {
    padding-left: 6px !important;
    padding-right: 6px !important;
    font-size: 14px !important;
  }

}


/* =========================================================
   TABLET + MOBILE
   ========================================================= */

@media (max-width: 991px) {

  /* Top bar */

  .ambienta-topbar-inner {
    min-height: auto;

    padding: 7px 14px;

    flex-wrap: wrap;

    gap: 6px 12px;
  }

  .ambienta-top-contact {
    display: flex;
    align-items: center;

    flex-wrap: wrap;

    gap: 8px 14px;
  }

  .ambienta-top-contact a {
    font-size: 12px !important;
  }

  .ambienta-top-contact a + a::before {
    display: none;
  }

  .ambienta-top-actions {
    margin-left: auto;

    gap: 12px;
  }

  .ambienta-account span {
    display: none;
  }

  .ambienta-account i,
  .ambienta-cart i,
  .ambienta-cart #cart-total i {
    font-size: 20px !important;
  }

  .ambienta-cart::before {
    margin-right: 10px;
  }


  /* Header */

  .ambienta-main-header.ambienta-sticky {
    position: relative;
  }

  .ambienta-header-inner {
    display: grid;

    grid-template-columns:
      185px
      minmax(0, 1fr);

    min-height: auto;

    padding: 10px 12px;

    gap: 14px;

    align-items: center;
  }

  .ambienta-logo {
    width: 175px;
    max-width: 175px;
  }

  .ambienta-logo img {
    max-width: 175px !important;
    max-height: 58px !important;
  }

  .ambienta-navigation {
    display: none;
  }


  /* Search */

  .ambienta-search {
    width: 100% !important;
    max-width: none !important;

    justify-self: stretch;
  }

  .ambienta-search #search {
    height: 44px !important;
    min-height: 44px !important;

    border-radius: 22px !important;
  }

  .ambienta-search #search .form-control,
  .ambienta-search #search .form-control-lg,
  .ambienta-search #search input {
    height: 44px !important;
    min-height: 44px !important;

    padding-left: 17px !important;

    font-size: 14px !important;
  }

  .ambienta-search #search button,
  .ambienta-search #search .btn,
  .ambienta-search #search .btn-lg {
    width: 48px !important;
    min-width: 48px !important;

    height: 44px !important;
    min-height: 44px !important;

    font-size: 18px !important;
  }


  /* Mobile navigation */

  .ambienta-mobile-navigation {
    display: block;

    width: 100%;

    background: #ffffff !important;

    border-top: 1px solid #eeeeee !important;
  }

  .ambienta-mobile-navigation > .container {
    width: 100% !important;
    max-width: none !important;

    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .ambienta-mobile-navigation #menu {
    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #ffffff !important;
    background-image: none !important;

    border: 0 !important;
    border-radius: 0 !important;

    box-shadow: none !important;
  }


  /* Categories */

  .ambienta-mobile-navigation #menu #category {
    color: #333333 !important;

    text-shadow: none !important;

    opacity: 1 !important;

    font-size: 16px !important;
    font-weight: 700 !important;
  }


  /* Hamburger */

  .ambienta-mobile-navigation #menu .navbar-toggler,
  .ambienta-mobile-navigation #menu .btn-navbar {
    margin: 8px 14px;

    color: #ffffff !important;

    background: var(--ambienta-green) !important;

    border: 0 !important;
    border-radius: 6px !important;

    box-shadow: none !important;
  }

  .ambienta-mobile-navigation #menu .navbar-toggler i,
  .ambienta-mobile-navigation #menu .btn-navbar i {
    color: #ffffff !important;
  }


  /* Collapsed menu */

  .ambienta-mobile-navigation #menu .navbar-collapse,
  .ambienta-mobile-navigation #menu .collapse,
  .ambienta-mobile-navigation #menu .collapsing {
    width: 100% !important;

    background: #ffffff !important;
  }


  /* Main category links */

  .ambienta-mobile-navigation #menu .navbar-nav {
    width: 100% !important;

    margin: 0 !important;
    padding: 0 14px !important;
  }

  .ambienta-mobile-navigation #menu .navbar-nav > li {
    width: 100% !important;
  }

  .ambienta-mobile-navigation #menu .navbar-nav > li > a,
  .ambienta-mobile-navigation #menu .nav > li > a {
    display: block !important;

    width: 100% !important;

    padding: 11px 16px !important;

    color: #333333 !important;

    background: #ffffff !important;

    font-size: 15px !important;
    font-weight: 500 !important;

    text-shadow: none !important;

    border-bottom: 1px solid #eeeeee !important;
  }

  .ambienta-mobile-navigation #menu .navbar-nav > li > a:hover,
  .ambienta-mobile-navigation #menu .navbar-nav > li > a:focus,
  .ambienta-mobile-navigation #menu .nav > li > a:hover,
  .ambienta-mobile-navigation #menu .nav > li > a:focus {
    color: var(--ambienta-green-dark) !important;

    background: #f7f8f5 !important;
  }


  /* Dropdowns */

  .ambienta-mobile-navigation #menu .dropdown-menu {
    position: static !important;

    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #f8f8f8 !important;

    border: 0 !important;

    box-shadow: none !important;
  }

  .ambienta-mobile-navigation #menu .dropdown-menu li > a {
    display: block;

    padding: 10px 28px !important;

    color: #444444 !important;

    background: transparent !important;

    font-size: 14px !important;

    text-shadow: none !important;
  }

  .ambienta-mobile-navigation #menu .dropdown-menu li > a:hover {
    color: var(--ambienta-green-dark) !important;

    background: #f1f3ed !important;
  }

}


/* =========================================================
   PHONE
   ========================================================= */

@media (max-width: 575px) {

  /* =======================================================
     TOP BAR
     ======================================================= */

  .ambienta-topbar-inner {
    padding: 6px 10px;

    gap: 5px;
  }

  .ambienta-top-contact {
    width: 100%;

    justify-content: center;

    gap: 10px;
  }

  .ambienta-top-contact a {
    font-size: 13px !important;

    gap: 5px;
  }

  .ambienta-top-contact i {
    font-size: 15px !important;
  }


  /* Account + Cart row */

  .ambienta-top-actions {
    width: 100%;

    display: flex !important;

    align-items: center !important;
    justify-content: center !important;

    margin-left: 0;

    gap: 18px !important;
  }

  .ambienta-account,
  .ambienta-cart {
    display: flex !important;
    align-items: center !important;

    height: 32px !important;

    margin: 0 !important;
    padding: 0 !important;
  }

  .ambienta-account > a {
    display: flex !important;

    align-items: center !important;
    justify-content: center !important;

    height: 32px !important;

    margin: 0 !important;
    padding: 0 !important;

    line-height: 1 !important;
  }

  .ambienta-cart .btn,
  .ambienta-cart button,
  .ambienta-cart .btn-inverse,
  .ambienta-cart #cart-total {
    display: flex !important;

    align-items: center !important;
    justify-content: center !important;

    height: 32px !important;

    margin: 0 !important;
    padding: 0 !important;

    line-height: 1 !important;
  }

  .ambienta-account i,
  .ambienta-cart i,
  .ambienta-cart #cart-total i {
    font-size: 19px !important;

    line-height: 1 !important;

    vertical-align: middle !important;
  }

  .ambienta-cart #cart-total {
    font-size: 12px !important;
  }

  .ambienta-cart::before {
    align-self: center !important;

    height: 24px !important;

    margin-right: 18px !important;
  }


  /* =======================================================
     LOGO + SEARCH
     ======================================================= */

  .ambienta-header-inner {
    grid-template-columns:
      165px
      minmax(0, 1fr);

    padding: 9px 10px;

    gap: 10px;
  }

  .ambienta-logo {
    width: 155px;
    max-width: 155px;
  }

  .ambienta-logo img {
    max-width: 155px !important;
    max-height: 52px !important;
  }

  .ambienta-search #search {
    height: 42px !important;
    min-height: 42px !important;

    border-radius: 21px !important;
  }

  .ambienta-search #search .form-control,
  .ambienta-search #search .form-control-lg,
  .ambienta-search #search input {
    height: 42px !important;
    min-height: 42px !important;

    padding-left: 15px !important;

    font-size: 14px !important;
  }

  .ambienta-search #search button,
  .ambienta-search #search .btn,
  .ambienta-search #search .btn-lg {
    width: 44px !important;
    min-width: 44px !important;

    height: 42px !important;
    min-height: 42px !important;
  }


  /* =======================================================
     MOBILE MENU
     ======================================================= */

  .ambienta-mobile-navigation #menu #category {
    padding-left: 20px !important;

    font-size: 15px !important;
  }

  .ambienta-mobile-navigation #menu .navbar-nav > li > a,
  .ambienta-mobile-navigation #menu .nav > li > a {
    padding: 10px 14px !important;

    font-size: 14px !important;
  }


  /* =======================================================
     WHATSAPP
     ======================================================= */

  .ambienta-whatsapp {
    right: 16px;
    bottom: 18px;
  }

}


/* =========================================================
   VERY SMALL PHONES
   ========================================================= */

@media (max-width: 390px) {

  .ambienta-top-contact {
    gap: 6px;
  }

  .ambienta-header-inner {
    grid-template-columns:
      145px
      minmax(0, 1fr);

    gap: 8px;
  }

  .ambienta-logo {
    width: 140px;
    max-width: 140px;
  }

  .ambienta-logo img {
    max-width: 140px !important;
  }

}

/* =========================================================
   LANGUAGE SELECTOR - FLAG SIZE
   ========================================================= */

.ambienta-language img {
    width: 24px !important;
    height: 16px !important;
    object-fit: cover;
    vertical-align: middle;
    margin-right: 5px;
}

.ambienta-language .dropdown-toggle {
    display: flex;
    align-items: center;
}

/* =========================================================
   AMBIENTA NEWSLETTER
   FINAL CLEAN VERSION
   ========================================================= */

.ambienta-newsletter {
  margin: 28px auto !important;
  padding: 0 !important;

  border: 1px solid rgba(255,255,255,.10) !important;
  border-radius: 12px !important;

  overflow: hidden;

  box-shadow: 0 4px 16px rgba(0,0,0,.06);
}


/* =========================================================
   CONTENT
   ========================================================= */

.ambienta-newsletter .card-body {
  padding: 24px 38px !important;
  background: transparent !important;
}


/* =========================================================
   MAIN ENVELOPE
   ========================================================= */

.ambienta-newsletter .ambienta-newsletter-icon {
  margin: 0 0 8px !important;

  text-align: center !important;
  line-height: 1 !important;
}

.ambienta-newsletter .ambienta-newsletter-icon i {
  font-size: 38px !important;
  line-height: 1 !important;

  color: inherit !important;
}


/* =========================================================
   TITLE
   ========================================================= */

.ambienta-newsletter .ambienta-newsletter-title {
  margin: 0 0 7px !important;

  text-align: center !important;

  font-size: 27px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;

  color: inherit !important;
}


/* =========================================================
   DESCRIPTION
   ========================================================= */

.ambienta-newsletter .ambienta-newsletter-description {
  max-width: 700px;

  margin: 0 auto 15px !important;

  text-align: center !important;

  font-size: 15px !important;
  line-height: 1.4 !important;

  color: inherit !important;
}


/* =========================================================
   SOCIAL ICONS
   ========================================================= */

.ambienta-newsletter .ambienta-newsletter-social {
  display: flex !important;

  align-items: center !important;
  justify-content: center !important;

  gap: 9px !important;

  margin: 0 0 17px !important;
}

.ambienta-newsletter .ambienta-newsletter-social a {
  width: 34px !important;
  height: 34px !important;

  display: inline-flex !important;

  align-items: center !important;
  justify-content: center !important;

  padding: 0 !important;
  margin: 0 !important;

  background: rgba(255,255,255,.08) !important;

  color: inherit !important;

  border: 1px solid rgba(255,255,255,.35) !important;
  border-radius: 50% !important;

  text-decoration: none !important;

  line-height: 1 !important;

  transition:
    background-color .2s ease,
    border-color .2s ease,
    transform .2s ease;
}

.ambienta-newsletter .ambienta-newsletter-social a:hover {
  background: var(--ambienta-green) !important;

  border-color: var(--ambienta-green) !important;

  color: #ffffff !important;

  transform: translateY(-2px);
}

.ambienta-newsletter .ambienta-newsletter-social i {
  margin: 0 !important;
  padding: 0 !important;

  font-size: 15px !important;
  line-height: 1 !important;

  color: inherit !important;
}


/* =========================================================
   FORM
   ========================================================= */

.ambienta-newsletter .ambienta-newsletter-form {
  display: grid !important;

  grid-template-columns:
    minmax(180px, 1fr)
    minmax(240px, 1.3fr)
    auto !important;

  gap: 14px !important;

  align-items: center !important;
}

.ambienta-newsletter .ambienta-newsletter-field {
  min-width: 0;
}


/* =========================================================
   INPUTS
   ========================================================= */

.ambienta-newsletter .form-control {
  width: 100% !important;

  height: 46px !important;

  margin: 0 !important;
  padding: 0 16px !important;

  background: #ffffff !important;

  color: #333333 !important;

  border: 1px solid #dddddd !important;
  border-radius: 6px !important;

  box-shadow: none !important;

  font-size: 14px !important;
}

.ambienta-newsletter .form-control::placeholder {
  color: #707070 !important;
  opacity: 1;
}

.ambienta-newsletter .form-control:focus {
  border-color: var(--ambienta-green) !important;

  box-shadow:
    0 0 0 2px rgba(149,193,31,.15) !important;
}


/* =========================================================
   SUBSCRIBE BUTTON
   ========================================================= */

.ambienta-newsletter .ambienta-newsletter-button .btn {
  height: 46px !important;

  margin: 0 !important;
  padding: 0 28px !important;

  display: inline-flex !important;

  align-items: center !important;
  justify-content: center !important;

  background: var(--ambienta-green) !important;

  color: #ffffff !important;

  border: 0 !important;
  border-radius: 8px !important;

  box-shadow: none !important;

  font-size: 14px !important;
  font-weight: 700 !important;

  white-space: nowrap !important;

  transition:
    background-color .2s ease,
    transform .2s ease;
}

.ambienta-newsletter .ambienta-newsletter-button .btn:hover {
  background: var(--ambienta-green-dark) !important;

  color: #ffffff !important;

  transform: translateY(-1px);
}


/* =========================================================
   NOTIFICATIONS
   ========================================================= */

.ambienta-newsletter .notify:empty {
  display: none;
}

.ambienta-newsletter .alert {
  margin: 0 0 15px;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 991px) {

  .ambienta-newsletter .card-body {
    padding: 24px !important;
  }

  .ambienta-newsletter .ambienta-newsletter-form {
    grid-template-columns: 1fr 1fr !important;
  }

  .ambienta-newsletter .ambienta-newsletter-button {
    grid-column: 1 / -1;
  }

  .ambienta-newsletter .ambienta-newsletter-button .btn {
    width: 100% !important;
  }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

  .ambienta-newsletter {
    margin: 20px 12px !important;
  }

  .ambienta-newsletter .card-body {
    padding: 22px 18px !important;
  }

  .ambienta-newsletter .ambienta-newsletter-icon {
    margin-bottom: 7px !important;
  }

  .ambienta-newsletter .ambienta-newsletter-icon i {
    font-size: 34px !important;
  }

  .ambienta-newsletter .ambienta-newsletter-title {
    font-size: 23px !important;
  }

  .ambienta-newsletter .ambienta-newsletter-description {
    margin-bottom: 14px !important;

    font-size: 14px !important;
  }

  .ambienta-newsletter .ambienta-newsletter-social {
    gap: 8px !important;

    margin-bottom: 15px !important;
  }

  .ambienta-newsletter .ambienta-newsletter-social a {
    width: 32px !important;
    height: 32px !important;
  }

  .ambienta-newsletter .ambienta-newsletter-social i {
    font-size: 14px !important;
  }

  .ambienta-newsletter .ambienta-newsletter-form {
    grid-template-columns: 1fr !important;

    gap: 10px !important;
  }

  .ambienta-newsletter .ambienta-newsletter-button {
    grid-column: auto;
  }

  .ambienta-newsletter .ambienta-newsletter-button .btn {
    width: 100% !important;
  }

}


/* =========================================================
   VERY SMALL PHONES
   ========================================================= */

@media (max-width: 390px) {

  .ambienta-newsletter {
    margin-left: 8px !important;
    margin-right: 8px !important;
  }

  .ambienta-newsletter .card-body {
    padding: 20px 14px !important;
  }

  .ambienta-newsletter .ambienta-newsletter-title {
    font-size: 21px !important;
  }

}

/* =========================================================
   CI NEWSLETTER POPUP - CLOSE BUTTON FIX
   ========================================================= */

#popup-newsletter.popup_advance .modal-content {
  position: relative !important;
  overflow: visible !important;
}

#popup-newsletter.popup_advance .modal-content > .close_icon.close {
  position: absolute !important;

  top: 12px !important;
  right: 12px !important;
  left: auto !important;

  width: 38px !important;
  height: 38px !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  margin: 0 !important;
  padding: 0 !important;

  background: #95c11f !important;
  color: #ffffff !important;

  border: 0 !important;
  border-radius: 50% !important;

  font-size: 26px !important;
  font-weight: 400 !important;
  line-height: 38px !important;

  opacity: 1 !important;
  visibility: visible !important;

  z-index: 99999 !important;

  cursor: pointer !important;
  pointer-events: auto !important;

  text-shadow: none !important;
  box-shadow: 0 3px 10px rgba(0,0,0,.20) !important;
}

#popup-newsletter.popup_advance .modal-content > .close_icon.close:hover {
  background: #769d13 !important;
  color: #ffffff !important;
}


/* MOBILE */

@media (max-width: 767px) {

  #popup-newsletter.popup_advance .modal-content > .close_icon.close {
    top: 8px !important;
    right: 8px !important;

    width: 34px !important;
    height: 34px !important;

    font-size: 23px !important;
    line-height: 34px !important;
  }

}

/* =========================================================
   CI NEWSLETTER POPUP - Z-INDEX FIX
   Keep popup above Ambienta sticky header
   ========================================================= */

#popup-newsletter.modal {
  z-index: 10050 !important;
}

#popup-newsletter .modal-dialog {
  position: relative !important;
  z-index: 10060 !important;
}

#popup-newsletter .modal-content {
  position: relative !important;
  z-index: 10070 !important;
  overflow: visible !important;
}

#popup-newsletter .close_icon {
  z-index: 10080 !important;
}

/* Bootstrap backdrop */
body.modal-open > .modal-backdrop {
  z-index: 10040 !important;
}

/* Keep Ambienta header below popup */
body.modal-open .ambienta-topbar,
body.modal-open .ambienta-main-header,
body.modal-open .ambienta-sticky {
  z-index: 1000 !important;
}


/* =========================================================
   CI NEWSLETTER POPUP - POSITION FIX
   ========================================================= */

#popup-newsletter .modal-dialog {
  min-height: calc(100vh - 40px) !important;

  margin: 20px auto !important;

  display: flex !important;
  align-items: center !important;
}

#popup-newsletter .modal-content {
  width: 100% !important;

  margin: auto !important;

  position: relative !important;
}


/* MOBILE */

@media (max-width: 767px) {

  #popup-newsletter .modal-dialog {
    min-height: calc(100vh - 24px) !important;

    margin: 12px auto !important;

    align-items: center !important;
  }

}

/* =====================================================
   AMBIENTA - GLOBAL PRIMARY COLORS
   ===================================================== */

/* =====================================================
   NORMAL CONTENT LINKS
   Product names and regular content links
   ===================================================== */

#content .product-thumb h4 a,
#content .product-thumb .description h4 a,
#content .product-thumb .name a {
    color: var(--ambienta-link-color) !important;
}

#content .product-thumb h4 a:hover,
#content .product-thumb .description h4 a:hover,
#content .product-thumb .name a:hover {
    color: var(--ambienta-link-hover-color) !important;
}


/* =====================================================
   BREADCRUMBS
   ===================================================== */

.breadcrumb a,
.breadcrumb-item a {
    color: var(--ambienta-link-color) !important;
}

.breadcrumb a:hover,
.breadcrumb-item a:hover {
    color: var(--ambienta-link-hover-color) !important;
}

.breadcrumb a i,
.breadcrumb .fa,
.breadcrumb .fas {
    color: var(--ambienta-link-color) !important;
}


/* =====================================================
   PRIMARY BUTTONS
   Continue, Product Compare, etc.
   ===================================================== */

.btn-primary,
button.btn-primary,
a.btn-primary,
#compare-total {
    background-color: var(--ambienta-button-color) !important;
    background-image: none !important;
    border-color: var(--ambienta-button-color) !important;
    color: #ffffff !important;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
button.btn-primary:hover,
button.btn-primary:focus,
a.btn-primary:hover,
a.btn-primary:focus,
#compare-total:hover,
#compare-total:focus {
    background-color: var(--ambienta-button-hover-color) !important;
    background-image: none !important;
    border-color: var(--ambienta-button-hover-color) !important;
    color: #ffffff !important;
}
/* LEFT CATEGORY MENU - HOVER */

.list-group a.list-group-item:not(.active):hover,
.list-group a.list-group-item:not(.active):focus {
  background-color: #EEF6D7 !important;
  border-color: #DCEAB8 !important;
  color: #638A10 !important;
}

/* =========================================================
   PRODUCT MAIN IMAGE - STABLE SIZE
   Prevent Combimage image resize jump
   ========================================================= */

#product-info .image.magnific-popup {
  max-width: 450px;
}

#product-info .image.magnific-popup > a {
  display: block;
  width: 100%;
  aspect-ratio: 1 / 1;
  overflow: hidden;
}

#product-info .image.magnific-popup > a > img {
  display: block;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain;
  margin: 0 !important;
}
/* =========================================================
   AMBIENTA - FONDO DEL ZOOM DE IMAGEN
   ========================================================= */

.mfp-bg {
    background: #000 !important;
    opacity: 0.92 !important;
}

/* =========================================================
   TMD POPUP WINDOW - Z-INDEX / CLOSE FIX
   ========================================================= */

.modal-backdrop,
.modal-backdrop.show {
  z-index: 10040 !important;
}

.modal,
.modal.show {
  z-index: 10050 !important;
}

.modal-dialog {
  position: relative !important;
  z-index: 10060 !important;
}

.modal-content {
  position: relative !important;
  z-index: 10070 !important;
}

.modal .close,
.modal .btn-close,
.modal button.close,
.modal [data-bs-dismiss="modal"],
.modal [data-dismiss="modal"] {
  position: relative !important;
  z-index: 10080 !important;
  pointer-events: auto !important;
  cursor: pointer !important;
}

/* Keep Ambienta header below popup */
body.modal-open .ambienta-topbar,
body.modal-open .ambienta-main-header,
body.modal-open .ambienta-sticky {
  z-index: 1000 !important;
}

@media (max-width: 767px) {
    .ambienta-mobile-navigation #category {
        display: none !important;
    }
}

/* =========================================================
   AMBIENTA MOBILE HEADER - FINAL LOGO FIX
   ========================================================= */

@media (max-width: 767px) {

  .ambienta-header-inner {
    display: grid !important;

    grid-template-columns:
      190px
      minmax(0, 1fr) !important;

    column-gap: 14px !important;

    padding-left: 22px !important;
    padding-right: 16px !important;
  }

  .ambienta-logo {
    width: 180px !important;
    max-width: 180px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;

    overflow: visible !important;
  }

  .ambienta-logo a {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
  }

  .ambienta-logo img {
    width: 180px !important;
    max-width: 180px !important;
    height: auto !important;

    object-fit: contain !important;
    object-position: left center !important;

    display: block !important;
  }

  .ambienta-search {
    min-width: 0 !important;
    width: 100% !important;
  }

}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 420px) {

  .ambienta-header-inner {
    grid-template-columns:
      170px
      minmax(0, 1fr) !important;

    column-gap: 10px !important;

    padding-left: 18px !important;
    padding-right: 12px !important;
  }

  .ambienta-logo,
  .ambienta-logo img {
    width: 160px !important;
    max-width: 160px !important;
  }

}

/* =========================================================
   AMBIENTA - MOBILE HEADER CLEAN FINAL
   One authoritative mobile logo/search layout
   ========================================================= */

@media (max-width: 767px) {

  .ambienta-header-inner {
    grid-template-columns:
      170px
      minmax(0, 1fr) !important;

    padding-left: 20px !important;
    padding-right: 14px !important;

    column-gap: 12px !important;
  }

  .ambienta-logo {
    width: 160px !important;
    max-width: 160px !important;
    margin-left: 0 !important;

    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
  }

  .ambienta-logo a {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
  }

  .ambienta-logo img {
    width: auto !important;
    max-width: 160px !important;
    max-height: 54px !important;
    height: auto !important;

    display: block !important;
    object-fit: contain !important;
    object-position: left center !important;
  }

  .ambienta-search {
    min-width: 0 !important;
    width: 100% !important;
    max-width: none !important;
  }
}

@media (max-width: 420px) {

  .ambienta-header-inner {
    grid-template-columns:
      150px
      minmax(0, 1fr) !important;

    padding-left: 18px !important;
    padding-right: 12px !important;

    column-gap: 10px !important;
  }

  .ambienta-logo {
    width: 140px !important;
    max-width: 140px !important;
  }

  .ambienta-logo img {
    max-width: 140px !important;
    max-height: 50px !important;
  }
}

/* =========================================================
   AMBIENTA FOOTER - COMPACT
   ========================================================= */

footer {
  padding-top: 24px !important;
  padding-bottom: 18px !important;
}

footer .container {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Column titles */
footer h5,
footer h4,
footer h3 {
  margin-top: 0 !important;
  margin-bottom: 10px !important;

  font-size: 17px !important;
  line-height: 1.2 !important;
}

/* Footer lists */
footer ul {
  margin-top: 0 !important;
  margin-bottom: 12px !important;
  padding-left: 0 !important;
}

footer ul li {
  margin: 0 0 4px !important;
  line-height: 1.25 !important;
}

footer ul li a {
  font-size: 14px !important;
  line-height: 1.25 !important;
}

/* Main footer row */
footer .row {
  margin-bottom: 8px !important;
}

/* Powered by / copyright area */
footer hr {
  margin-top: 14px !important;
  margin-bottom: 12px !important;
}

footer p {
  margin-top: 0 !important;
  margin-bottom: 2px !important;

  font-size: 13px !important;
  line-height: 1.25 !important;
}

/* Tablet / mobile */
@media (max-width: 767px) {

  footer {
    padding-top: 20px !important;
    padding-bottom: 16px !important;
  }

  footer h5,
  footer h4,
  footer h3 {
    margin-bottom: 8px !important;
  }

  footer ul {
    margin-bottom: 14px !important;
  }

}
/* =========================================================
   AMBIENTA - MOBILE STICKY HEADER RESTORE
   ========================================================= */

@media (max-width: 991px) {
  .ambienta-main-header.ambienta-sticky {
    position: sticky !important;
    top: 0 !important;
    z-index: 1020 !important;
  }
}

/* =========================================================
   AMBIENTA SIGNATURE PRESET
   ========================================================= */
body.ambienta-style-signature .ambienta-main-header {
  box-shadow: 0 1px 6px rgba(0,0,0,.04);
}
body.ambienta-style-signature .ambienta-header-inner {
  padding-top: 4px;
  padding-bottom: 4px;
}
body.ambienta-style-signature .ambienta-navigation #menu .nav-link,
body.ambienta-style-signature .ambienta-navigation #menu a {
  letter-spacing: .01em;
}
body.ambienta-style-signature .ambienta-search #search {
  border-radius: 24px;
}

/* =========================================================
   AMBIENTA SIGNATURE - CATEGORY CARDS
   ========================================================= */

body.ambienta-style-signature .ambienta-category-card {
    background: #ffffff;
    border: 1px solid #e3e5e8;
    border-radius: 16px;
    box-shadow: 0 3px 12px rgba(0, 0, 0, 0.055);
    overflow: hidden;
    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        border-color 0.25s ease;
}

body.ambienta-style-signature .ambienta-category-card:hover {
    border-color: #9abd32;
    box-shadow: 0 9px 22px rgba(0, 0, 0, 0.10);
    transform: translateY(-3px);
}

body.ambienta-style-signature .ambienta-category-card__title {
    color: #4d5258;
    font-weight: 550;
    letter-spacing: 0.1px;
}

body.ambienta-style-signature .ambienta-category-card:hover
.ambienta-category-card__title {
    color: #30353a;
}

/* =========================================================
   AMBIENTA SIGNATURE - TOP BAR
   Approved green gradient
   ========================================================= */

body.ambienta-style-signature .ambienta-topbar {
    background:
        linear-gradient(
            90deg,
            rgba(103, 148, 28, 0.90),
            rgba(82, 125, 15, 0.96)
        ) !important;

    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);

    border-bottom: 1px solid rgba(255, 255, 255, 0.18);

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.12),
        0 2px 8px rgba(0,0,0,0.08);
}

/* =========================================================
   AMBIENTA SIGNATURE - CART VISUAL ALIGNMENT
   ========================================================= */

body.ambienta-style-signature #header-cart > .dropdown > button,
body.ambienta-style-signature #header-cart button {
    transform: translateY(2px) !important;
}

/* =========================================================
   AMBIENTA SIGNATURE - SUBCATEGORY VIEW ALL BUTTON
   Prevent text clipping on narrow cards
   ========================================================= */

body.ambienta-style-signature #tmdsubcategory .image .hoverbox .btn-primary {
    width: calc(100% - 10px) !important;
    max-width: calc(100% - 10px) !important;
    margin: 0 5px !important;
    padding: 8px 5px !important;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    font-size: 12px !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;

    box-sizing: border-box !important;
}

body.ambienta-style-signature #tmdsubcategory .image .hoverbox .btn-primary i {
    margin-right: 4px !important;
    flex: 0 0 auto;
}

body.ambienta-style-signature #tmdsubcategory .image .hoverbox .btn-primary .all {
    min-width: 0;
    white-space: nowrap !important;
}

/* =========================================================
   AMBIENTA SIGNATURE - SEARCH SPACING
   ========================================================= */

body.ambienta-style-signature .ambienta-search {
    margin-left: 14px !important;
}
/* =========================================================
   AMBIENTA SIGNATURE - MOBILE TOP BAR REFINEMENT
   ========================================================= */

@media (max-width: 575px) {

    body.ambienta-style-signature .ambienta-topbar-inner {
        padding: 4px 10px !important;
        gap: 3px !important;
    }

    body.ambienta-style-signature .ambienta-top-contact {
        gap: 8px !important;
    }

    body.ambienta-style-signature .ambienta-top-contact a {
        font-size: 12.5px !important;
    }

    body.ambienta-style-signature .ambienta-top-actions {
        gap: 15px !important;
    }

    body.ambienta-style-signature .ambienta-account,
    body.ambienta-style-signature .ambienta-cart {
        height: 30px !important;
    }

    body.ambienta-style-signature .ambienta-account > a,
    body.ambienta-style-signature .ambienta-cart .btn,
    body.ambienta-style-signature .ambienta-cart button,
    body.ambienta-style-signature .ambienta-cart #cart-total {
        height: 30px !important;
    }

}


/* =========================================================
   AMBIENTA SIGNATURE - LANGUAGE CLEAN STYLE
   ========================================================= */

body.ambienta-style-signature .ambienta-language img {
    display: none !important;
}

body.ambienta-style-signature .ambienta-language .dropdown-toggle {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;

    font-size: 14px !important;
    font-weight: 500 !important;
    color: rgba(255,255,255,.92) !important;
}

body.ambienta-style-signature .ambienta-language .dropdown-toggle > i:first-child {
    font-size: 14px !important;
    opacity: 0.90;
}

body.ambienta-style-signature .ambienta-language .dropdown-toggle > span {
    display: inline !important;
}

@media (max-width: 575px) {

    body.ambienta-style-signature .ambienta-language .dropdown-toggle {
        gap: 5px !important;
        font-size: 13px !important;
    }

    body.ambienta-style-signature .ambienta-language .dropdown-toggle > i:first-child {
        font-size: 13px !important;
    }

}