@charset 'UTF-8';

*,::before,::after { box-sizing: border-box; }

html, body {
  height: 100%;
}

body {
  background: #fff;
  color: #444;
  font-size: 15px;
  overflow-x: hidden;
}

/* layout
-----------------------------------------------------------*/

#content {
  margin-top: 20px;
  margin-bottom: 100px;
}

.container {
  max-width: 1170px;
  padding: 0 25px;
}

.section-title-wrapper {
  max-width: 1170px;
  padding: 0 25px;
  margin: 0 auto;
}

/* fonts, colors
-----------------------------------------------------------*/

html, body, div, p, li, input, select, textarea {
  font-family: "Roboto", "Helvetica Neue", Arial, sans-serif;
  font-weight: 400;
}

h1, h2, h3, h4 {
  font-family: "Dosis", sans-serif;
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: -0.05rem;
}

.bootic_button,
.bootic_alert,
input[type=submit] {
  font-family: "Roboto", "Helvetica Neue", Arial, sans-serif;
  font-weight: 600;
  font-size: 14px;
  height: 38px;
  line-height: 38px;
  border-radius: 3px;
  padding: 0 20px;

  text-transform: none;
  letter-spacing: 0;
}

h1   { font-size: 3em; }
h2   { font-size: 2.2em; }
h3   { font-size: 1.4em; }
p    { font-size: 1em; line-height: 1.6; }
img  { max-width: 100%; height: auto; }
ul   { margin: 0 }
li   { font-size: 1em; list-style: none; }
li p { font-size: 1em; }

a {
  color: #333;
  text-decoration: none;
}

a:hover, .button:hover, .post .more-link {
  color: var(--button-bg-hover);
  border-color: var(--button-bg-hover);
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

input[type=submit].primary,
button.primary,
.button.primary,
.bootic_button.primary {
  color: #fff;
  /*background-color: rgb(64, 189, 131);*/
  /*border-color: rgb(64, 189, 131);*/
  background-color: var(--button-bg, #000);
  border-color: var(--button-bg, #000);
}

/*
.bootic_button.primary {
  color: white;
  background-color: #31C7B5;
  border-color: #31C7B5;
}
*/

/* header
-----------------------------------------------------------*/

#nav {
  z-index: 101; /* above sticky menus */
  position: relative;
  width: 100%; /* for position: fixed/sticky */
  background: var(--header-bg, #363636);
  min-height: 84px;
  transition: top 0.2s ease;
}

#home #nav.transparent-on-home {
  position: absolute;
  background: transparent;
}

/* nav-fixed for both phone and desktop
   nav-fixed-desktop for desktop
   nav-fixed-phone for phone (check responsive section below) */

.nav-fixed #nav {
  position: fixed;
  top: 0px;
}

.nav-fixed.fixed-infobar #nav,
.nav-fixed.notice-shown #nav {
  top: 42px;
}

.nav-fixed #wrapper {
  margin-top: 84px;
}

.supernav-fixed #wrapper {
  margin-top: 53px;
}

#logo {
  position: relative;
}

#logo img, #logo span {
  max-height: 50px;
  max-width: 280px;
  margin: 15px 12px 0 0;
  float: left;
}

#logo span {
  margin-top: 22px;
  font-size: 24px;
  font-weight: 500;
  letter-spacing: -0.04em;
}

#main-menu {
  margin: 20px;
  float: left;
  display: flex;
}

#logo span,
#main-menu a,
#main-menu span,
.toggle-menu-icon,
.cart-icon,
.search-icon {
  color: var(--header-link-color, #ffffff);
}

#main-menu li {
  list-style: none;
  font-weight: 700;
  margin: 0 5px;
  padding: 10px 5px;
  font-size: 15px;
}

#nav #mobile-menu a,
#main-menu .drop-down li a {
  font-size: 13px;
  color: #444;
}

#cart-amount {
  background: var(--discount-tag);
  display: inline-block;
  text-align: center;
  border-radius: 12px;
  padding: 1px 7px;
  color: white;
  font-weight: 600;
  letter-spacing: -0.01em;
  position: absolute;
  margin-left: -10px;
  font-size: 11px;
}

.toggle-menu-icon,
.cart-icon,
.search-icon,
.login-icon {
  position: absolute;
  font-size: 26px;
  margin: 22px 0;
  color: var(--header-link-color, #ffffff);
}

.toggle-menu-icon {
  top: -1px;
}

.cart-icon {
  right: 20px;
  font-size: 24px;
}

.search-icon {
  right: 63px;
  font-size: 24px;
}

.login-icon {
  right: 89px;
  margin-top: 21px;
}

.toggle-menu-icon:hover,
.cart-icon:hover,
.search-icon:hover {
  text-decoration: none;
}

#content .nav {
  margin-top: 50px;
  text-align: center;
}

#navigation-path {
  color: #999;
  padding: 8px 0;
}

#home #navigation-path {
  display: none;
}

#mobile-menu {
  left: 35px;
  top: 58px;
}

#search-form {
  margin: 0 auto 20px;
  z-index: 103;
  max-width: 600px;
}

#search-form input {
  margin-bottom: 0;
  border-radius: 4px;
}

#search-form button {
  display: none;
}

#search-form.active {
  display: block !important;
}

header .user-menu-container {
  position: relative;
  top: 55px;
}

#search-posts {
  display: flex;
  justify-content: flex-end;
  width: 100%;
  margin: 0 0 5rem 0;
  align-items: center;
}

#search-posts form {
  display: flex;
  align-items: center;
  gap: 1rem
}

#search-posts input {
  margin: 0;
  border-radius: 5px;
}

#search-posts button {
  border: 0;
  padding: 0;
  display: flex;
  align-items: center;
}

#search-posts button .ion-android-search {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 2.2rem;
  border-radius: 60px;
  width: 35px;
  height: 35px;
  background-color: #ddd;
}

@media (min-width: 600px) {
  .nav-fixed-desktop #nav {
    position: fixed;
    top: 0;
  }

  .nav-fixed-desktop.fixed-infobar #nav,
  .nav-fixed-desktop.notice-shown #nav {
    top: 42px;
  }

  .nav-fixed #wrapper,
  .nav-fixed-desktop #wrapper {
    margin-top: 84px;
  }
}

@media (max-width: 600px) {
  .container {
    padding: 0 15px;
  }

  #nav {
    min-height: 72px;
  }

  .nav-fixed-phone #nav {
    position: fixed;
    top: 0;
  }

  .nav-fixed-phone.fixed-infobar #nav,
  .nav-fixed-phone.notice-shown #nav {
    top: 42px;
  }

  .nav-fixed #wrapper,
  .nav-fixed-phone #wrapper {
    margin-top: 72px;
  }

  #logo img, #logo span {
    max-height: 43px;
    margin-left: 38px;
  }

  #logo span {
    margin-top: 15px;
  }

  .toggle-menu-icon,
  .cart-icon,
  .search-icon {
    margin-top: 16px;
  }

  .login-icon {
    margin-top: 15px;
  }

  #search-form {
    position: absolute;
    right: 25px;
    left: 25px;
    top: 63px;
  }
}

/*!MOBILE MENU*/

#mobile-menu {
  position: relative;
  left: unset;
  top: unset;
  display: flex;
  flex-direction: column;
  background-color: transparent;
  border: none;
  box-shadow: none;
  width: 100dvw;
  margin: 0;
  transform: none;
  padding: 2rem;
}

#mobile-menu .menu a:hover,
#mobile-menu .menu a:focus {
  color: var(--button-bg-hover);
}

#mobile-menu .menu a:active,
#mobile-menu.menu a.active,
#mobile-menu .menu .active a {
  font-weight: 600;
  color: var(--button-bg-hover);
}

#mobile-menu li {
  text-align: center;
  margin: 0 0 1rem 0;
  position: initial;
}

#mobile-menu li.first-level > a {
  text-transform: uppercase;
  font-weight: 600;
}

#mobile-menu li.second-level,
#mobile-menu li.third-level {
  margin: 0;
  font-weight: 400;
}

#mobile-menu.mobile-vertical .second-level .has-submenu {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
}

#mobile-menu li:last-child {
  margin: 0;
}

#mobile-menu li.menuitem-all {
  margin: 2rem 0 0 0;
  padding: 2rem 0 0 0;
  border-top: 1px solid #dfdfdf;
}

#mobile-menu li .has-submenu svg {
  height: 1.4rem;
  width: 1.4rem;
  transition:transform 0.3s ease;
  margin: 0 0 -0.1rem 0;
}

#mobile-menu li .has-submenu.active svg {
  transform:rotate(60deg)
}

#mobile-menu li .has-submenu:focus,
#mobile-menu li .has-submenu:hover,
#mobile-menu li .has-submenu.active,
#mobile-menu li .has-submenu.active:hover {
  text-decoration: none;
}

#mobile-menu .menuitem-all a {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  font-weight: 600;
  position: relative;
  width: fit-content;
  margin: 0 auto;
}

#mobile-menu .menuitem-all svg {
  height: 1.5rem;
  width: 1.5rem;
  position: absolute;
  right: -2rem;
}

#mobile-menu-wrapper {
  display: flex!important;
  top: 0;
  position: fixed;
  left: 0;
  height: 100dvh;
  transform: translateX(-100%);
  transition: transform 0.2s ease;
  background: #fff repeat;
  z-index: 102;
}

#mobile-menu-wrapper.active {
  position: fixed;
  z-index: 10001;
  top: 0;
  left: 0;
  width: 100dvw;
  height: 100dvh;
  background-color: #fff;
  transform: translateX(0);
  transition: transform 0.2s ease;
  overflow:auto;
  flex-direction: column;
}

body:has(#mobile-menu-wrapper.active) {
  overflow: hidden;
}

#mobile-menu ul {
  padding: 1rem;
  border-radius: 4px;
}

#mobile-menu .submenu,
#mobile-menu .subsubmenu {
  transition: all 0.3s ease;
  max-height: 800px;
  opacity: 1;
}

#mobile-menu.mobile-vertical .submenu {
  background-color:#f7f7f7;
  margin: 0;
  padding: 2rem;
}

#mobile-menu.mobile-vertical .second-level:has(.active) .subsubmenu {
  margin: 1rem 0;
}

#mobile-menu.mobile-vertical .subsubmenu {
  margin: 0;
  padding: 2rem;
  background-color: #fff;
}

#mobile-menu.mobile-vertical .first-level:has(.active) .submenu {
  margin: 1rem 0;
}

#mobile-menu .submenu.hidden,
#mobile-menu .subsubmenu.hidden  {
  opacity: 0;
  padding-top: 0;
  padding-bottom: 0;
  margin-top: 0;
  max-height: 0;
  overflow: hidden;
  display: block!important; /*! necesario para hacerle override a los helpers */
}

.mobile-menu-actions {
  display: flex;
  padding: 2rem 1rem;
  justify-content: space-between;
  align-items: center;
  gap: 2rem;
  position: sticky;
  top: 0;
  background-color: #fff;
  z-index: 9;
  border-bottom: 1px solid #eee;
}

.mobile-menu-actions .login-icon {
  position: unset;
  margin: 0 1.5rem 0 0;
  color: #000;
  font-size: 1.8rem;
  display: flex;
  gap: 1rem;
}

.close-mobile-menu {
  display: inline-flex;
}

.close-btn {
  height: 2.8rem;
  fill: var(--button-bg, #000);
}

.mobile-menu-actions .login-icon svg {
  fill: var(--button-bg, #000);
  width: 30px;
  height: 30px;
}

.social-icons.social-mobile {
  margin: 3rem 0 3rem 0;
}

.contact-mobile {
  padding: 2rem 0;
  margin: auto 1rem 0 0;
  border-top: 1px solid #eee;
  border-bottom: 1px solid #eee;
  display: flex;
  flex-direction: column;
  align-items: center;
}

#mobile-menu.mobile-vertical .previous-menu {
  display: none;
}

#mobile-menu .has-submenu {
  position: relative;
  width: fit-content;
  margin: 0 auto;
  display: inline-block;
  max-width: 90%;
}

.mobile-vertical .lucide-chevron-right,
.mobile-vertical .lucide-chevron-left {
  display: none;
}

.mobile-horizontal .plusminus {
  display: none;
}

.plusminus {
  position: absolute;
  top: 0.6rem;
  right: -2rem;
  width: 1rem;
  height: 1rem;
  cursor: pointer;
}

.has-submenu.active .plusminus:before {
  transform: translatey(-50%) rotate(-90deg);
  opacity: 0;
}

.has-submenu.active .plusminus:after {
  transform: translatey(-50%) rotate(0);
}
.plusminus:before, .plusminus:after {
  content: "";
  display: block;
  background-color: #333;
  position: absolute;
  top: 50%;
  left: 0;
  transition: 0.35s;
  width: 100%;
  height: 2px;
}

.plusminus:before {
  transform: translatey(-50%);
}

.plusminus:after {
  transform: translatey(-50%) rotate(90deg);
}

/*! three level menu */

#mobile-menu.mobile-horizontal {
  display: flex;
  justify-content: flex-start;
}

#mobile-menu.mobile-horizontal li {
  text-align: left;
}

#mobile-menu.mobile-horizontal {
  transition:all 0.3s ease;
  opacity:1
}

#mobile-menu.mobile-horizontal .submenu.hidden,
#mobile-menu.mobile-horizontal .subsubmenu.hidden {
  position: absolute;
  top: 0;
  left: -100dvw;
  opacity:0;
  overflow:hidden;
  display:block;
  width: 100dvw;
  margin: 0;
}

#mobile-menu.mobile-horizontal .submenu,
#mobile-menu.mobile-horizontal .subsubmenu {
  position: absolute;
  margin: 0;
  width: 100dvw;
  height: 100dvh;
  top: 0;
  left: 0;
  opacity:1;
  overflow:hidden;
  display:block;
  z-index: 9;
  background-color: #fff;
  padding: 2rem;
}

#mobile-menu .previous-menu {
  display: flex;
  gap: 0.5rem
}

#mobile-menu .previous-menu a {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

#mobile-menu .previous-menu a svg {
  max-height: 1.5rem;
  max-width: 1.5rem;
}

#mobile-menu.mobile-horizontal .menuitem-all {
  display: none
}

.second-level-header,
.third-level-header {
  font-weight: 600;
  text-transform: uppercase;
  display: flex;
  align-items: center;
  gap: 1rem;
}

.all-items {
  font-size: 1.2rem;
  margin: 0 0 0 0.5rem;
  min-width: fit-content;
}

#mobile-menu.mobile-horizontal .second-level .has-submenu {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin: 0;
}

/* promo notice
-----------------------------------------------------------*/

#bootic_top_notice .bootic_notice {
  font-size: 14px;
}

/* drop down
-----------------------------------------------------------*/

.drop-down-menu {
  position: relative;
  z-index: 1;
}

.drop-down {
  position: absolute;
  /*max-height: 0;*/
  display: none;
  overflow: hidden;
  top: 25px;
  left: -30px;
  background: #fafafa;
  width: 160px;
  box-shadow: 0px 1px 5px rgba(0, 0, 0, 0.3);
  border-radius: 5px;
}

.drop-down.with-second-level {
  width: 400px;
}

.second-level-menu {
  display: none;
  position: absolute;
  right: 0;
  /*width: 165px;*/
  width: 205px;
  top: 0;
  background: #f0f0f0;
  padding: 0 10px 10px;
  border-left: 1px solid #eee;
}

.first-level.active {
  background: #eee;
}

/*#main-menu .drop-down li:hover .second-menu,*/
.second-level-menu.active {
  display: block;
}

.drop-down li,
#main-menu .drop-down li {
  font-weight: 500;
  text-align: left;
  width: 100%;
  padding: 7px 15px;
  margin: 0;
  position: static;
}

.drop-down-menu:hover {
  cursor: default;
}

.drop-down-menu:hover .drop-down,
.drop-down.active {
  max-height: 400px;
  display: block;
  overflow-y: auto;
}

.drop-down-menu:hover .drop-down.with-second-level {
  overflow-y: hidden;
}

.drop-down .caret {
  margin: 12px 5px 0;
}

.drop-down .caret-toggle:hover .caret {
  border-top-color: red
}

ul.drop-down ul {
  margin: 0 0 0;
}

ul.drop-down ul li {
  padding-left: 5px !important;
  padding-right: 5px !important;
}

.drop-down,
#main-menu a,
.drop-down-menu {
  -webkit-transform: translateZ(0);
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

/* section base
-------------------------------------------------*/

.section {
  padding: var(--section-spacing, 75px) 0;
}

.fat.section {
  padding: 125px 0;
}

.slim.section {
  padding: 25px 0;
}

.section h2,
.section .title,
.section .section-title {
  margin-bottom: 50px;
}

.section .text {
  max-width: 600px;
}

.center-text .text {
  margin-left: auto;
  margin-right: auto;
}

.section-title {
  text-align: center;
}

.align-titles-left .section-title {
  text-align: left;
}

.align-titles-right .section-title {
  text-align: right;
}

/* section colors
-------------------------------------------------*/

.dark a {
  color: #31C7B5;
  border-color: #31C7B5;
}

.dark a:hover {
  color: #fff;
  border-color: #fff;
}

.dark.section {
  background-color: #333;
  color: #fff;
}

.dark.section .title {
}

.dark.section .text {
  color: #ccc;
}

/* content section, used in blog, pages and forms
-------------------------------------------------*/

.content.section .container {
  max-width: 600px;
}

.content.section .relations-container {
  max-width: 1170px;
  margin: 0 auto 2rem;
}

.content h3 {
  font-size: 28px;
}

.content li {
  list-style: unset
}

/* section with background image
-------------------------------------------------*/

.section.with-background {
  position: relative;
}

.section .background,
.section.with-background::after {
  content: "";
  background-size: cover;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  position: absolute;
  z-index: -1;
}

/* flex
-------------------------------------------------*/

@media (min-width: 760px) {
  .flex-end {
    justify-content: flex-end;
  }
}

@media (min-width: 600px) {
  .flex {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }

  .flex > * {
    flex-grow: 1;
    flex-basis: 0;
  }
}

/* grid-list
-------------------------------------------------*/

.grid-list .product-item {
  /*min-height: 300px;*/
  float: left;
  margin-bottom: 60px;
}

.grid-list .item-1 {
  margin-left: 0 !important
}

.grid-list-5 .product-item {
  width: 18.8%;
  margin-left: 1.5%;
}

.grid-list-5 .product-item:nth-child(5n+1) {
  clear: left;
  margin-left: 0
}

.grid-list-4 .product-item {
  width: 23.5%;
  margin-left: 2%;
}

.grid-list-4 .product-item:nth-child(4n+1) {
  clear: left;
  margin-left: 0
}

.grid-list-3 .product-item {
  width: 31.333%;
  margin-left: 3%;
}

.grid-list-3.grid-list .product-item:nth-child(3n+1) {
  margin-left: 0;
  clear: left;
}

@media (max-width: 800px) {

  .grid-list-5 .product-item {
    width: 23.5%;
    margin-left: 2%;
  }

  .grid-list-5 .product-item:nth-child(5n+1) {
    clear: none;
    margin-left: 2%
  }

  .grid-list-5 .product-item:nth-child(4n+1) {
    margin-left: 0;
    clear: left;
  }

  .grid-list-4 .product-item {
    width: 31.333%;
    margin-left: 3%
  }

  .grid-list-4 .product-item:nth-child(4n+1) {
    clear: none;
    margin-left: 3%
  }

  .grid-list-4 .product-item:nth-child(3n+1) {
    margin-left: 0;
    clear: left;
  }

  .grid-list-3 .product-item {
    width: 48%;
    margin-left: 4%;
  }

  .grid-list-3.grid-list .product-item:nth-child(3n+1) {
    clear: none;
    margin-left: 4%
  }

  .grid-list-3 .product-item:nth-child(2n+1) {
    margin-left: 0;
    clear: left;
  }

}

@media (max-width: 760px) {
  .grid-list-5 .product-item {
    width: 31.333%;
    margin-left: 3%
  }

  .grid-list-5 .product-item:nth-child(4n+1) {
    clear: none;
    margin-left: 3%
  }

  .grid-list-5 .product-item:nth-child(3n+1) {
    margin-left: 0;
    clear: left;
  }

  .grid-list-4 .product-item {
    width: 48%;
    margin-left: 4%
  }

  .grid-list-4 .product-item:nth-child(3n+1) {
    clear: none;
    margin-left: 4%
  }

  .grid-list-4 .product-item:nth-child(2n+1) {
    margin-left: 0;
    clear: left
  }

  .grid-list-3 .product-item {
    width: 100%;
    margin-left: 0%;
    clear: none
  }

  .grid-list-3 .product-item:nth-child(3n+1) {
    margin-left: 0
  }
}

@media (max-width: 460px) {

  .grid-list-5 .product-item,
  .grid-list-4 .product-item {
    width: 100%;
    margin-left: 0%;
    clear: none
  }

  .grid-list-5 .product-item:nth-child(4n+1) {
    margin-left: 0
  }

  .mobile-columns-2 .product-item {
    width: 48%;
    margin-left: 4%;
  }

  .mobile-columns-2 .product-item:nth-child(2n+1) {
    clear: both;
    margin-left: 0 !important;
  }

  .mobile-columns-2 .add_to_cart .submit {
    font-size: 9px !important;
  }

  .mobile-columns-2 .bootic_button {
    padding: 0 !important;
    font-size: 1.3rem;
  }

  footer.mobile-columns-2 .flex {
    display: flex;
    flex-wrap: wrap;
  }

  footer.mobile-columns-2 .flex > div {
    flex-grow: 1;
    width: 50%;
  }

  footer.mobile-columns-2 li {
    margin-left: 0px !important;
  }


}

/* main gallery
-------------------------------------------------*/

.main-gallery-section {
  padding: 0 !important;
}

.main-gallery-section .gallery-item {
  position: relative;
}

.main-gallery-section .gallery-item:after {
  position: absolute;
  content: "";
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(18, 25, 24, 0.5);
  will-change: background;
  z-index: 0;
}

.main-gallery-section img {
  object-fit: cover;
  height: 100%;
  width: 100%;
  display: block;
}

.main-gallery-section .item-info {
  position: absolute;
  width: auto;
  left: 200px;
  right: 200px;
  top: 50%;
  transform: translateY(-50%);
  text-align: center;
  z-index: 1;
}

.main-gallery-section .item-title {
  font-size: 36px;
  letter-spacing: -0.05em;
  line-height: 1em;
  color: #fff;
  display: block;
  margin-bottom: 10px;
}

.main-gallery-section .item-text {
  margin-bottom: 10px;
  font-size: 18px;
  color: #dadada;
}

.main-gallery-section .item-button {
  margin-top: 10px;
  border-radius: 3px;
  background-color: var(--button-bg, #000);
  border-color: var(--button-bg, #000);
  color:#fff;
}

.main-gallery-section .item-button:hover {
  background-color: var(--button-bg-hover);
  border-color: var(--button-bg-hover);
  color: #fff;
}

.main-gallery-count-1 .gallery-prev,
.main-gallery-count-1 .gallery-next {
  display: none;
}

.gallery-item {
    display: none;
}

.gallery-item:first-child {
    display: block;
}

.section .dots {
  display: flex;
  justify-content: center;
  background-color: #fff;;
}

.dots__item {
  width: 8px;
  height: 8px;
  margin: 1rem .2rem;
  padding: unset;
  border: 0;
  background-color: #ccc;
  border-radius: 50%;
  outline: 0;
  cursor: pointer;
}

.dots__item--active {
  background: #000;
}

@media (max-width: 900px) {
  .main-gallery-section .item-info {
    left: 100px;
    right: 100px;
  }
}

@media (max-width: 760px) {
  .main-gallery-section .item-info {
    left: 60px;
    right: 60px;
  }

  .main-gallery-section .item-title {
    font-size: 30px;
  }

  .main-gallery-section .item-text {
    font-size: 16px;
  }

  .main-gallery-section img {
    min-height: 55vh;
  }

  .main-gallery-section.visible-phone img {
    min-height: unset;
  }


}

/* banners section
-------------------------------------------------*/

.banners-section .banner {
  margin-bottom: 20px;
}

@media (min-width: 760px) {
  .banners-section .banner {
    margin-left: 25px;
  }

  .banners-section .banner:first-child {
    margin-left: 0;
  }
}

@media (max-width: 760px) {

  .banners-section .flex {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .banners-section .banner {
    width: 100%;
  }

  .banners-section .banner img {
    width: 100%;
    margin: 0;
  }

  .banners-section .banner a {
    display: block;
    line-height: 0!important;
  }

}

/*
.banners-section.fixed-height img {
  width: auto;
  max-width: inherit;
}
*/

/* instagram feed section
-------------------------------------------------*/

.instagram-feed-section .js_slider {
  position: relative;
}

.instagram-feed-section .frame {
  font-size: 0;
  line-height: 0;
  overflow: hidden;
  white-space: nowrap;
  margin-left: 18px;
  /*margin-left: 18px;*/
  padding: 0;
}

.instagram-feed-section .js_slider {
  /*padding-left: 7px;*/
  padding: 0;
}

.full-width-sections-true .full-width-false,
.full-width-true.container {
  max-width: none;
  /*padding: 0;*/
}

/*.full-width-true .frame {
  overflow: visible;
}*/

.instagram-feed-section .slides {
  display: inline-block;
}

.instagram-feed-section .slides li {
  position: relative;
  display: inline-block;
  margin-right: 20px;
}

/*.instagram-feed-section .slides li.active {
  outline: 2px solid;
}*/

.instagram-feed-section .prev,
.instagram-feed-section .next {
  position: absolute;
  top: 50%;
  margin-top: -25px;
  display: block;
  cursor: pointer;
}

.instagram-feed-section .next.disabled,
.instagram-feed-section .prev.disabled {
  opacity: .3;
  /*pointer-events: none;*/
}

.instagram-feed-section .prev {
  left: 25px;
}

.instagram-feed-section .next {
  right: 10px;
}

.instagram-feed-section .next svg,
.instagram-feed-section .prev svg {
  width: 40px;
}

.instagram-feed-section .next path ,
.instagram-feed-section .prev path {
  fill: #fff;
}

.instagram-feed-section .next:hover path ,
.instagram-feed-section .prev:hover path {
  fill: lightblue;
}

@media (max-width: 450px) {
  .instagram-feed-section .next {
    right: 25px;
  }
}

/* image/text, cta sections
-------------------------------------------------*/

.image-and-text-section .container {
  display: flex;
  gap: 2rem;
}

.image-and-text-section .container.image-postion-right {
  flex-direction: row-reverse;
}

.image-and-text-section .section-title,
.call-to-action-section .section-title {
  margin-bottom: 20px;
}

.image-and-text-section h2 {
  text-align: left;
}

.image-and-text-section .button,
.call-to-action-section .button {
  border-radius: 3px;
  background-color: var(--button-bg, #000);
  border-color: var(--button-bg, #000);
  color:#fff;
}

.image-and-text-section .button:hover,
.call-to-action-section .button:hover  {
  background-color: var(--button-bg-hover);
  border-color: var(--button-bg-hover);
  color: #fff;
}

.image-and-text-section .image-container {
  max-width: 50%;
  width: fit-content;
  flex-shrink: 0;
}

@media (max-width: 760px) {
  .image-and-text-section .container,
  .image-and-text-section .container.image-postion-right {
    flex-direction: column;
  }

  .image-and-text-section .image-container {
    max-width: 100%;
  }
}

.fixed-bg {
  height: 75vh;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-size: cover
}

/* sticky/sections menu
-------------------------------------------------*/

.bootic-section-menu-container {
  background: #fafafa;
  z-index: 9;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  padding: 0 !important;
  box-shadow: 0px 3px 10px rgba(0,0,0,0.1);
}

.bootic-section-menu-container.sticky {
  z-index: 101;
}

.bootic-section-menu {
  /* same height as nav so it completely covers it when both elements are fixed */
  height: 82px;
  line-height: 82px;
}

/* products section
-------------------------------------------------*/

.image-placeholder {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
}

.image-placeholder svg {
  width: 30%;
  height: 30%;
  fill: #fdfdfd;
  stroke: #3b3c40;
}

.resource-cover-image {
  max-height: 45rem;
  width: 100%;
  object-fit: cover;
}

.products .product-vendor-link {
  font-size: 1.2rem
}

.vendor-spacer {
  display: inline-block;
  min-height: 15px;
  height: 15px;
}

/*

.products .product-vendor {
  display: none;
}

.product-image {
  max-height: 300px;
  vertical-align: top;
}

.container .product-image {
  max-height: 250px
}
*/

.toggle-cats {
  margin-bottom: 25px
}

.collection-desc {
  text-align: center;
  font-size: 16px;
  margin: 0 auto 60px;
}

.grid .sidebar {
  margin: 11rem 0 0 0;
}

.sidebar h3 {
  padding: 10px 0;
  font-size: 22px;
}

.sidebar .has-submenu {
  margin-top: 20px;
}

.sidebar .menu-header {
  color: #40bd83;
  font-weight: bold;
  text-transform: uppercase;
}

.sidebar .filter-name {
  cursor: pointer;
  margin-bottom: 10px;
  position: relative;
}

.collapsable-filters-true .filter-panel .filter-name:after {
  display: inline-block;
  font-family: "Icomoon";
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  text-rendering: auto;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f104";
  transform: rotate(90deg);
  transition: transform 0.2s ease;
  position: absolute;
  right: 10px;
  margin-top: 2px;
}

.non-collapsable.filter-panel .filter-name:after {
  content: "";
}

.filter-panel.collapsed .filter-name:after {
  transform: rotate(-90deg);
  transition: transform 0.2s ease;
}

.sidebar .filter-panel {
  margin-bottom: 15px;
  padding-bottom: 15px;
  border-bottom: 1px solid #eee;
}

.collapsable-filters-true .filter-panel.collapsed {
  /*padding-bottom: 8px;*/
}

.collapsable-filters-true .filter-panel.collapsed ul {
  /*max-height: auto;*/
  height: 0;
  overflow: hidden;
}

.collapsable-filters-true .filter-panel ul {
  transition: height 0.2s ease-out;
  max-height: 500px;
}

.filter-list {
  overflow: hidden;
}

.panel-open .filter-list {
  overflow: auto;
}

.sidebar ul {
  margin: 10px 0 0
}

.sidebar li.current {
  font-weight: bold;
}

.sidebar li ul {
  border-bottom: none;
  padding: 0;
}

.sidebar li input.search-filter {
  margin-bottom: 0;
  accent-color: var(--checkbox-color, #000000);
}

.sidebar li label {
  display: inline;
  margin-left: 5px;
  cursor: pointer;
  font-weight: normal;
}

.products .product-item {
  list-style: none;
  padding: 0;
  position: relative; /* needed for discount tag (absolute position) */
  border-radius: 3px;
  box-shadow: 0 1px 5px 0px rgba(0,0,0,0.2);
}

@media (min-width: 500px) {
  .products.gallery-container.pending-load {
    display: flex;
    overflow: hidden;
  }

  .products.gallery-container.pending-load .product-item {
    flex: 1;
    min-width: 200px;
    max-width: 280px;
  }
}

.products.gallery-container .product-item {
  margin: 10px 10px 60px;
}

.products .product-item:hover {
  box-shadow: 0 1px 5px 0px rgba(0,0,0,0.6);
}

.products .product-meta {
  padding: 15px 20px 14px;
}

.products h3 {
  font-family: Roboto;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.2;
  min-height: 36px;
  margin: 0 0 5px;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.products .stock {
  float: right;
}

@media (max-width: 460px) {
  .products .stock {
    float: none;
    display: block;
  }
  .products .product-meta {
    padding: 15px 10px 14px;
  }
}

.products .prices,
.products .prices small {
  color: #666;
  font-size: 12px;
  line-height: 19px;
}

.products .bootic-price.with-price-comparison {
/*  font-size: 14px;*/
  color: #000;
}

.products .bootic-price-comparison-box { color: #999; }

.units-in-stock {
  font-size: 13px;
  color: #6daba3;
}

.variants .units-in-stock {
  display: inline;
  font-size: 12px;
  font-weight: 500;
}

.products .units-in-stock {
  margin-bottom: 0;
  display: inline;
}

.add_to_cart .product-control,
.products .add_to_cart,
.products .add-to-cart-component-container {
  margin: 15px 0 5px;
}

.products .add_to_cart li {
  padding-left: 0;
  padding-right: 0;
}

.static-bundle-configurator h3  {
  margin: 20px 0 10px;
  color: rgb(163, 164, 167);
  font-weight: bolder;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 3px;
}

.static-bundle-configurator .fixed-items li {
  padding: 8px 0px;
  list-style-type: disc;
  list-style-position: inside;
  border: none;
}

.products .add_to_cart .submit {
  padding: 0;
}

.product-item .prices {
  margin-top: 1px;
}

.product-item .bootic-price-comparison-label {
  display: none;
}

.original.price {
  text-decoration: line-through;
  color: #666 !important;
}

.discounted.price {
  color: #FF4141;
}

/* hide 'From' in products with multiple prices, if option is enabled */
.without-from-true .price-from {
  display: none
}

.product-image * {
  -webkit-transition: all 0.3s ease-in-out;
          transition: all 0.3s ease-in-out;
}

.product-image {
  display: block;
  overflow: hidden;
  position: relative;
  vertical-align: top;
  height: var(--product-img-height, 260px);
  vertical-align: top;
  background-color: #fff;
}

.product-image .cover {
  position: absolute;
  text-align: center;
  top: 0;
  width: 100%;
  height: 100%;
  color: #fff;
  will-change: background;
}

.product-image .cover big {
  font-size: 48px;
  position: absolute;
  top: 37%;
  margin-left: -15px;
/*  transform: translateX(-50%) translateY(-50%); */
  opacity: 0;
  will-change: opacity;
  -webkit-transform: scale3d(1.5, 1.5, 1);
          transform: scale3d(1.5, 1.5, 1);
}

.product-image:hover div {
  background: rgba(0,0,0,0.4);
}

.product-image:hover big {
  opacity: 1;
  -webkit-transform: scale3d(1, 1, 1);
          transform: scale3d(1, 1, 1);
}

.product-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  -webkit-transform: scale3d(1, 1, 1);
          transform: scale3d(1, 1, 1);
/*
  position: relative;
  top: 50%;
  -webkit-transform: scale3d(1, 1, 1) translateY(-50%);
          transform: scale3d(1, 1, 1) translateY(-50%);
*/
}

.product-image:hover img {
  -webkit-transform: scale3d(1.1, 1.1, 1);
          transform: scale3d(1.1, 1.1, 1);
/*
  -webkit-transform: scale3d(1.1, 1.1, 1) translateY(-50%);
          transform: scale3d(1.1, 1.1, 1) translateY(-50%);
*/
}

/* theme: show_second_image? */

.second-image-on-hover img {
  transition: opacity .2s ease-in-out;
  float: left;
}

.second-image-on-hover:hover img {
  -webkit-transform: none;
  transform: none;
}

.second-image-on-hover .back-image {
  opacity: 0;
}

.second-image-on-hover .front-image {
  margin-left: -100%;
}

.second-image-on-hover:hover .back-image {
  opacity: 1;
}

.second-image-on-hover:hover .front-image {
  opacity: 0;
}

.product-tag,
.discount-tag {
  width: 60px;
  height: 60px;
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 3;
  background-color: var(--discount-tag, #f4717d);
  border-radius: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.product-tag span,
.discount-tag span {
  color: white;
  font-size: 1.7rem;
  font-weight: bold;
  display: block;
  text-align: center;
  line-height: 2rem;
  letter-spacing: -0.05em;
}

.product-tag.bundle-qty-tag {
  width: fit-content;
  height: fit-content;
  display: flex;
  top: unset;
  right: auto;
  left: 1rem;
  bottom: 1rem;
  align-items: center;
  justify-content: center;
  background-color: var(--bundle-badge , #1a604e);
  border-radius: 3px;
  padding: 0.25rem 0.6rem 0.25rem 0.3rem;
}

.list-view .bundle-qty-tag {
  left: 1rem;
}

.bundle-qty-tag span {
  font-size: 1.2rem;
}

.product-tag strong {
  padding: 0 2px;
}

.product-image .view-more-ico {
  font-size: 21px;
  position: absolute;
  bottom: 4px;
  right: 10px;
  /*color: #fff;*/
  color: #333;
  z-index: 1;
}

.product-image:has(.fave-icon) .view-more-ico {
  left: 1rem;
}

/*! products list view */

.products.list-view .product-item {
  display: flex;
  margin: 0 0 4rem 0;
  clear: unset;
  width: 100%;
  float: unset;
}

.products.list-view .image-placeholder {
  min-width: 24rem
}

.products.list-view .product-meta {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}

.products.list-view .add_to_cart {
  margin: auto 0 0 0;
}

.products.list-view .fave-icon {
  top: 1.2rem;
}

.products.list-view .product-image {
  max-width: 240px;
}

@media screen and (max-width: 760px) {
  .list-view .product-tag {
    left: 0.5rem;
    top: 0.5rem;
    width: 40px;
    height: 40px;
  }

  .list-view .product-tag span{
    font-size: 1.2rem;
  }
}

@media (max-width: 450px) {

  .products.mobile-columns-2.list-view .product-item {
    margin-left: 0;
  }

  .products.list-view .product-image {
    height:auto;
    max-width: 16rem;
    min-height: 16rem;
    max-height: 100%;
  }

  .products.list-view .image-placeholder {
    min-width: 16rem;
  }

  .products.list-view .add_to_cart,
  .products.list-view .add-to-cart-component-container {
    margin: 10px 0 0 0;
  }

}

.n2-theme .products.list-view .vol-discount-container {
  margin: 10px 0;
  width: fit-content;
}

/* image galleries
-------------------------------------------------*/

.image-gallery-section,
.vendor-list-section  {
  position: relative;
}

.image-gallery-section .gallery-container,
.vendor-list-section .gallery-container {
  padding: 0 0 10px 0;
  width: 98%;
  margin: 0 auto;
}

.image-gallery-section .gallery-item{
  margin: 0 10px;
  position: relative;
  background: rgba(255, 255, 255, 0.8);
  -webkit-box-shadow: 0 1px 5px 0px rgba(0,0,0,0.2);
  box-shadow: 0 1px 5px 0px rgba(0,0,0,0.2);
}

.vendor-list-section .gallery-item {
    margin: 0 10px;
    position: relative;
    background: transparent;
}

.image-gallery-section .gallery-item:hover {
  -webkit-box-shadow: 0 1px 14px 1px rgba(0, 0, 0, 0.2);
  box-shadow: 0 1px 14px 1px rgba(0, 0, 0, 0.2);
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  -webkit-transition: -webkit-box-shadow 0.4s ease 0s;
  transition: box-shadow 0.4s ease 0s;
}

/*
.image-gallery-section .thumb {
  position: relative;
}

.image-gallery-section .thumb img {
  display: block;
  margin: 0 auto;
}

.image-gallery-section .thumb:after {
  content: "";
  background: #000;
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: all 0.4s ease 0s;
}

.image-gallery-section .gallery-item:hover .thumb:after {
  opacity: 0.3;
  border-radius: 5px 5px 0 0;
}
*/

.image-gallery-section .name,
.vendor-list-section .name {
  text-align: center;
  margin: 15px 0 0;
  padding-bottom: 15px;
  font-style: normal;
  font-size: 13px;
  text-transform: uppercase;
}

.image-gallery-section h4,
.vendor-list-section h4 {
  font-size: 16px;
  margin: 0;
}

.image-gallery-section a {
  display: block;
}

.image-gallery-section .gallery-item:hover a {
  font-weight: 500;
}

.image-gallery-section .image-container,
.vendor-list-section .image-container {
  display: block;
  overflow: hidden;
  position: relative;
  height: 240px;
}

.image-gallery-section img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.vendor-list-section img{
  display: block;
  margin: 0 auto;
  width: auto;
  height: 100%;
  object-fit: contain;
}

.gallery-prev,
.gallery-next,
.vendor-prev,
.vendor-next {
  position: absolute;
  top: calc(50%);
  transform: translateY(calc(-50%));
  cursor: pointer;
  border-radius: 60px;
  background-color: var(--button-bg , #000);
  width: 3rem;
  height: 3rem;
  display: flex;
  justify-content: center;
  align-items: center;
}

.gallery-prev,
.vendor-prev {
  left: -1rem;
}

.gallery-next,
.vendor-next {
  right: -1rem;
}

.full-width-sections-true .gallery-next,
.full-width-sections-true .vendor-next {
  right: 1rem;
}

.full-width-sections-true .gallery-prev,
.full-width-sections-true .vendor-prev {
  left: 1rem;
}

.gallery-prev:hover,
.gallery-next:hover {
  background-color: var(--button-bg-hover, #484848);
}

.main-gallery-section .gallery-prev {
  left: 4rem;
}

.main-gallery-section .gallery-next {
  right: 4rem;
}

@media screen and (max-width: 760px) {

  .gallery-prev {
    left: 0.2rem;
  }

  .gallery-next {
    right: 0.2rem;
  }

  .main-gallery-section .gallery-prev {
    left: 1rem;
  }

  .main-gallery-section .gallery-next {
    right: 1rem;
  }

}

/* product filters
-------------------------------------------------*/

.product-filters {
  display: flex;
  align-items: center;
  gap: 1rem;
  white-space: nowrap;
  padding: 10px 0;
  border-top: 1px solid #eee;
  border-bottom: 1px solid #eee;
  margin-bottom: 30px;
  margin-top: 26px;
}

.product-filters .filter-wrapper {
  display: flex;
  gap: 1rem;
  align-items: center;
}

.product-filters label {
  margin:0;
  padding: 0;
}

.product-filters select {
  margin: 0!important;
  width: 19rem!important;
}

.search-filter-label {
  font-weight: 300;
  color: #777;
}

@media (max-width: 760px) {
  .product-filters {
    padding:0 0 20px;
    border-top:none;
    flex-direction: column;
    align-items: flex-start;
  }

  .product-filters .filter-wrapper {
    width: 100%;
  }

  .product-filters .layout-chooser {
    width: 100%;
    justify-content: flex-end;
    margin: 1.2rem 0 0 0;
  }

  .mobile-filters-none .product-filters,
  .mobile-filters-none .sidebar-filters {
    display: none;
  }

  .per-page-select {
    display: none;
  }

  .product-filters select {
    margin:0;
    width:100% !important;
  }

  .product-filters label {
    min-width: 79px;
  }

  .grid .sidebar {
    margin: 0;
  }

/*
  #category-list {
    margin: 20px 0 30px;
    background: #eee;
    padding: 10px 20px 5px;
  }
*/

  .product-filters select {
    margin: 0;
    width: 100%;
  }
}

@media (min-width: 760px) {
  .search-filter-label {
    display: inline-block;
  }
}

.layout-chooser {
  display: flex;
  line-height: 0;
  gap: 0.5rem;
}

.layout-chooser a {
  display: inline-block;
  color: #ccc;
}

.layout-chooser a.active {
  color: #333;
}

/* single product section
-------------------------------------------------*/

.single .prouduct-tag,
.single .discount-tag {
  top: 1rem;
  right: 0;
  border-radius: 2px 0 0 2px;
  height: unset;
  width: unset;
  line-height: 0;
  padding: 0.7rem 1.5rem;
}

#product-secondary,
.title-description {
  position: relative;
}

#product-main .fave-icon {
  position: absolute;
  top: 1.5rem;
  right: 2.5rem;
}

.single .product-name {
  font-size: 2.2em;
}

.relation-items .product-name {
  font-size: 1.5rem;
}

.single .product-model,
.single .product-vendor {
  font-family: "Dosis", sans-serif;
  display: inline;
  max-width: 390px;
}

@media (min-width: 760px) {
  .info-below-images #product-main .product-info {
    display: none;
  }
}

@media (max-width: 760px) {
  .info-below-images #product-secondary .product-info {
    display: none;
  }
}

.product-name {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.product-vendor {
  font-size: 2.5rem;
  color: #535353;
}

.product h2 {
  margin-bottom: 10px;
}

.product .title-description {
  /* min-height: 345px; */
}

.product .bootic-price {
  font-size: 2rem;
  font-weight: 500;
}

.subscription-fees-container {
  margin-top: 1rem;
}

.product .price {
  color: #FF4141;
}

.product .discounted,
.product .bootic-price-comparison-box {
  text-decoration: line-through;
  padding-right: 6px;
}

.product-info {
  margin: 30px 0;
}

.no-tabs-true .info-tabs {
  display: none;
}

.no-tabs-true .info-content > div {
  display: block !important;
}

.product-description {
  padding: 12px 0 0;
}

.product-attributes ul {
}

.product-attributes li,
.product-files li {
  color: #555;
  border-bottom: 1px solid #eee;
  padding: 13px 0;
  margin: 0;
}

.product-files li {
  list-style: circle inside;
}

.product-attributes strong {
  font-weight: 600
}

.buying-info {
  background: #f6f6f6;
  padding: 5px 20px 1px;
  margin: 40px 0 30px;
}

.shipping-calc a {
  color: var(--button-bg-hover);
  text-decoration: underline;
}

.info-tabs {
  margin-bottom: 20px;
  border-bottom: 1px solid #ccc;
}

.buying-info .info-tabs {
  margin-bottom: 20px
}

.info-tabs .item {
  letter-spacing: .1rem !important;
  /*border-bottom: 1px solid #ccc;*/
}

.info-tabs .item a:hover {
  color: var(--button-bg-hover);
}

@media (min-width: 901px) and (max-width: 1200px) {
  .info-tabs .item {
    padding: 0 10px;
    font-size: 10px;
  }
}

@media (max-width: 500px) {
  .info-tabs .item {
    padding: 0 10px;
    font-size: 10px;
  }
}

@media (min-width: 601px) and (max-width: 900px) {
  .info-tabs {
    border-bottom: none;
  }

  .info-tabs .item {
    display: block;
    border-bottom: 1px solid #ccc;
  }
}

.info-tabs li a {
  color: #999;
}

.info-tabs li.current {
  border-bottom: 1px solid #000;
  top: 1px;
}

.info-tabs li.current a {
  color: #000;
}

.product-vendor-logo {
  display: block;
  height: 4rem;
  margin: 0.5rem 0 1rem 0;
}

.product-vendor-logo img {
  height: 100%;
  width: auto;
}

.product-description ul,
.product-description ol {
  padding: 0 2rem;
}

.product-description ul li {
  list-style: disc outside;
}

.product-description ol li {
  list-style: decimal outside;
}

.product-description ul li p,
.product-description ol li p {
  display: inline;
}

.product-description li a {
  text-decoration: underline;
  font-weight: 500;
  color: var(--button-bg);
}

.product-description li a:hover {
  color: var(--button-bg-hover);
}

.product-multiples-info {
  margin: 16px auto;
  text-align: center;
}

.product-multiples-info span {
  font-size: 12px;
  border-radius: 6px;
  padding: 4px 8px;
  background: #f6f6f6;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #48484A;
  border: 1px solid #e6e6f1;
  line-height: 20px;
}


/* single product images
-------------------------------------------------*/

#product-images:has(.image-placeholder) {
  display: flex;
  flex-direction: column;
}

#product-images .image-placeholder {
  border: 1px solid #cecece;
  border-radius: 6px;
  width: 100%;
  flex-grow: 1;
  aspect-ratio: 1;
}

#product-images {
  margin-bottom: 30px;
  text-align: center;
  position: relative;
}

#product-images .loading {
  background: #fff;
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
}

#product-images .loading.spinner {
  background: #fff url(ajax-loader.gif) center center no-repeat;
}

.left-side-thumbs #main-image {
  margin-left: 100px;
  display: grid !important; /* so image height matches .thumbs at 100% */
}

.product .thumbs {
  text-align: center;
  margin-top: 7px;
}

.product .thumbs li {
  display: inline-block;
  margin: 8px 10px 0 0;
}

.product .thumbs img {
  width: 85px;
  display: block;
}

.left-side-thumbs .thumbs {
  margin-top: 0;
  position: absolute;
  top: 0;
  width: 100px;
  background: #fff;
  height: 100%;
  overflow-y: auto;
}

.left-side-thumbs .thumbs li:first-child {
  margin-top: 0;
}

/* width */
.thumbs::-webkit-scrollbar {
  width: 5px;
}

/* Track */
.thumbs::-webkit-scrollbar-track {
  background: #f1f1f1;
  cursor: -webkit-grab
}

/* Handle */
.thumbs::-webkit-scrollbar-thumb {
  background: #888;
}

/* Handle on hover */
.thumbs::-webkit-scrollbar-thumb:hover {
  background: #555;
}

/* Banner and Carousel */
.banner-and-carousel h2 {
  float: left;
}

.banner-and-carousel-box {
  display: flex;
  flex-direction: row;
  gap: 10px;
  clear: both;
}

.carousel-box {
  width: 100%;
  overflow: hidden;
  position: relative;
}

.carousel-box .products.gallery-container li {
  margin: 10px
}

.banner-box {
  display: block;
  width: fit-content;
  padding: 1rem 0;
  flex-shrink: 0;
}

.banner-box img {
  object-fit: cover;
  height: 395px;
  border-radius: 4px;
}

.link-show-more {
  float: right;
}

@media (max-width: 1080px) {
  .banner-box {
    display: none;
  }
}

/*! product stock by branch
-------------------------------------------------*/

#product-stock-by-branch {
  margin: 1rem 0;
  width: fit-content;
  background-color: #5b5d64;
  border-radius: 2px;
  padding: 0.5rem 1rem;
}

#product-stock-by-branch:hover {
  background-color: var(--button-bg-hover);
}

#product-stock-modal {
  position: fixed;
  background-color: #0000008a;
  width: 100dvw;
  height: 100dvh;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  display: none;
  z-index: 9999;
}

#product-stock-modal h2 {
  margin: 0 0 2rem 0;
}

#product-stock-modal .close-stock-modal {
  position: absolute;
  top: 2rem;
  right: 2rem;
}

#product-stock-modal.visible {
  display: flex!important;
  justify-content: center;
  align-items: center;
}

#product-stock-wrapper {
  position: relative;
  padding: 2rem;
  background-color: #fff;
  width: calc(100dvw / 3);
  max-height: 50dvh;
  border-radius: 4px;
  overflow: hidden
}

@media screen and (max-width: 1300px) {
  #product-stock-wrapper {
    width: 50dvw;
  }
}

@media screen and (max-width: 700px) {
  #product-stock-wrapper {
    width: 80dvw;
  }
}

#product-stock-branches {
  display: grid;
  grid-template-columns: 1fr 1fr;
  border: 1px solid var(--button-bg);
  border-radius: 4px;
  overflow: scroll;
  max-height: 40dvh;
}

.product-branch-header,
.product-branch-row {
  display: contents;
}

.product-branch-header > div {
  font-weight: bold;
  background-color: var(--button-bg);
  color: #fff;
  position: sticky;
  top: 0;
}

.product-branch-name,
.product-branch-stock {
  padding: 1rem;
  border-bottom: 1px solid #eee;
}

.product-branch-name {
  font-weight: 500;
}

.product-branch-row:last-child .product-branch-name,
.product-branch-row:last-child .product-branch-stock {
  border-bottom: none;
}

.product-branch-row:nth-child(even) div {
  background-color: #f9f9f9;
}

@media (max-width: 760px) {
  #product-stock-branches {
    grid-template-columns: 1fr;
  }

  .product-branch-header {
    display: none;
  }

  .product-branch-name,
  .product-branch-stock {
    padding: 8px;
  }

  .product-branch-stock::before {
    content: "Unidades disponibles: ";
    font-weight: bold;
  }
}

.show-branches {
  cursor: pointer;
  display: block;
  font-size: 1.2rem;
  text-align: center;
  font-weight: 500;
  color: #fff;
}

.product-branch-info {
  padding: 4px 0;
  border-bottom: 1px solid #e6e0e0;
}

.product-branch-info p {
  margin: 0;
}

/* posts section
-------------------------------------------------*/

.posts.section .post {
  margin-left: auto;
  margin-right: auto;
}

.posts-container {
  position: relative;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 4rem;
}

.posts-grid {
  position: relative;
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  padding: 0 4rem;
}

.posts-wrapper-section {
  max-width: 1170px;
  margin: 0 auto;
  padding: 2rem 0rem;
}

.post-item-wrapper {
  position: relative;
  display: flex;
  width: auto;
  max-width: fill-available;
  flex-direction: column;
  flex-wrap: wrap;
}

.gallery-active .post-item {
  position: relative;
  margin: 0 1rem;
  border-radius: 10px 10px;
  box-shadow: 0px 2px 5px rgba(0,0,0,0.2);
  display: flex;
  flex-direction: column;
  height: 100%;
}

.posts-grid .post-item {
  display: flex;
  flex-direction: column;
  height: auto;
  width: calc(100% / 3 - 1.34rem);
  box-shadow: 0px 2px 10px rgba(0,0,0,0.2);
  border-radius: 10px;
}

@media (max-width:850px) {
  .posts-grid .post-item {
    width: calc(100% / 2 - 1rem);
  }
}

@media (max-width:760px) {
  .posts-grid .post-item {
    width: calc(100%);
  }
}

.post-item .post-cover-image {
  object-fit: cover;
  height: 20rem;
  width: 100%;
  margin: 0;
  border-radius: 10px 10px 0 0;
}

.post-info {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  position: relative;
  padding: 2rem 2rem 1rem 2rem;
}

.post-item h2 {
  margin: 0 0 2rem 0;
  font-weight: 500;
  font-size: 2.4rem;
}

.post-item h2 a:hover {
  color: var(--button-bg, #000)
}

.post-item p {
  margin: 0 0 2rem 0;
  font-size: 1.3rem;
  line-height: 2rem;
  font-weight: 400;
}

.post-info .read-more {
  position: relative;
  display: inline;
  color: #fff;
  line-height: 1;
  border-radius: 2px;
  padding: 0.5rem 0.5rem;
  margin: auto 0 1rem 0!important;
  font-size: 1rem;
  background-color: var(--button-bg, #000);
  text-transform: uppercase;
  align-self: flex-start;
}

.post-item:has(.post-body) .read-more {
  display: none;
}

.post-item:has(.post-body) .post-date {
  margin: auto 0 0 0;
}

.blog-intro {
  max-width:1200px;
  margin:0 auto 4rem auto;
  padding:0 2rem
}

.blog-intro h2 {
  font-weight:500;
  text-align:center;
  margin:0 0 3rem
}

.blog-intro p {
  padding: 0 4rem;
}

/* blog
-------------------------------------------------*/

.post {
  margin-bottom: 100px;
}

.post h1 a {
  color: #123;
  text-decoration: none;
}

.post .more-link:hover {
  color: #222;
}

.post-date {
  color: #999;
  font-size: 14px;
  border-top: 1px solid #ccc;
  display: block;
  padding: 7px 0;
}

/* post content
-------------------------------------------------*/

.post-cover-image {
  margin: 0 0 40px 0;
}

.no-post-cover-image {
  display: block;
  min-height: 20rem;
  border-radius: 10px 10px 0 0;
  background-color: #ddd;
}

.no-post-cover-image.hide-placeholder {
  display: none;
}

.post-body small {
  color: #666;
  line-height: 150%;
  font-size: 0.9em;
}

.post-body {
  margin: 0 0 2rem 0;
}

.post-body a {
  text-decoration: underline;
  color: lightseagreen;
}

.posts-wrapper .post-body a {
  display: none
}

.post-body a small {
  display: inline;
}

.post-body embed {
  margin: 10px 0 20px;
}

.post-body span {
  height: 20px;
  border: 1px solid #bec7c5;
  border-left: 0;
  border-right: 0;
  margin: 25px 0;
  display: block;
}

.post-body .quote {
  padding: 20px;
  border: 1px solid #ccc;
  padding: 15px 15px 0;
  background: #fbfbfb;
  background-position: 30px -10px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
}

.post-body .codecolorer span {
  display: inline;
  margin: 0;
  border: none;
}

.post-body blockquote,
.post-body pre,
.post-body .codecolorer,
.post-body code {
/*  background: #101C21;
  border:1px solid #293842;*/
  background-color: #fff;
  border: 1px solid #bbb;
  margin: 1.5em 1em 2em;
  padding: .8em 1.2em;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  color: #222;
}

.post-body code {
  font-size: 13px;
  white-space: nowrap;
  display: block;
  overflow-x: auto;
}

.post-body blockquote p,
.post-body pre p,
.post-body code p {
  font-size: 1.4em;
  margin: 0;
}

.post-body blockquote li {
  margin-left: 30px;
}

.post-body blockquote ol,
.post-body blockquote ul {
  margin-bottom: 15px;
}

.post-product {
  display: flex;
  gap: 1rem;
  align-items: center;
  border: 1px solid #ccc;
  margin: 0 0 2.5rem 0;
  padding: 1rem;
}

.post-product figure {
  margin: 0;
}

.post-product figure img {
  margin:0;
  padding:0;
  max-width:unset;
  transition: transform 0.1s ease;
}

.post-product figure img:hover {
  transform: scale(1.01);
}

.post-product-title {
  font-family: dosis;
  font-size: 2rem;
  font-weight: 500;
  margin: 0 0 1rem 0;
}

.post-product-title a {
  color: #444;
}

.post-product-title a:hover {
  color: #31C7B5;
}

.post-product-description {
   display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}

.post-product-cta {
  font-size: 1.2rem;
}

.post-product .choose-product {
  display: none;
}

.post-block {
  margin: 0 0 2.5rem 0;
}

.post-block:has(.post-warning) {
  padding: 2rem;
  color: #9F6000;
  background-color: #FEEFB3;
  border-radius: 3px;
}

.post-warning {
  position: relative;
}

.post-warning-title {
  font-weight:500;
  display: flex;
  align-items: center;
  gap: 1rem;
}

.post-warning-title:before {
  content: '';
  display: block;
  width: 2rem;
  height: 2rem;
  margin: 0 0 0.6rem 0;
  background: url(ico-warning.svg) no-repeat;
}

.post-warning p:last-child,
.post-paragraph:last-child {
  margin-bottom: 0;
}

.post-block iframe {
  width: 100%;
}

.post-description {
  font-weight: 500;
}

.post-description:empty {
  display:none;
}

.entry li {
  list-style: unset
}

/* relations */

.relations-wrapper {
  margin: 4rem 0 0 0;
  background-color: #f4f4f4;
  padding: 2rem;
  border-radius: 5px;
}

.relation {
  position: relative;
  margin: 0 0 2rem 0;
  width: 100%;
}

.relation:only-child {
  margin: 0;
}

.relation .relation-title {
  margin: 0 0 1rem 0;
}

.relation:has(.products) .relation-title {
  margin: 0;
}

.relation-description {
  margin: 0;
}

.relation-description:empty {
  display: none;
}

.relation-items {
  padding: 1rem 0 1rem;
  position: relative;
}

.relation-items.grid-list {
  margin-left: 3px;
}

.relation-items.products.gallery-container .product-item {
  position: relative;
  margin: 10px 10px 0px;
  border-radius: 5px;
  box-shadow: 0 1px 5px 0px rgba(0,0,0,0.2);
  transition: box-shadow 0.3s ease;
}

.relation-items .product-image {
  border-radius: 5px 5px 0 0;
}

.relation-items .product-item:hover {
  box-shadow: 0 1px 5px 0px rgba(0,0,0,0.6);
}

.relation-items .product-meta {
  min-height: 150px;
  display: flex;
  flex-direction: column;
}

.relation .next,
.posts-container .next {
  position: absolute;
  top: 50% !important;
  transform: translateY(-50%) !important;
  right:-0.5rem;
  cursor: pointer;
}

.relation .prev,
.posts-container .prev {
  position: absolute;
  top: 50% !important;
  transform: translateY(-50%) !important;
  left:-0.5rem;
  cursor: pointer;
}

.products.relation-items.grid-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.products.relation-items.grid-list .product-item {
  box-sizing: border-box;
  margin: 8px!important;
  flex: 1 1 calc(25% - 16px);
  max-width: calc(25% - 8px);
  transition: all 0.3s ease;
}

.products.relation-items.grid-list .product-item:only-child {
  flex: 0 0 auto;
  width: 300px;
  margin: 16px auto;
}

.post-relation {
  position: relative;
}

.related-post-image {
  display: flex;
}

.related-post-image img {
  width: 100%;
  max-height: 30rem;
  object-fit: cover;
}

.post-relation .image-placeholder {
  margin: 0 auto;
  min-height: 40rem;
}

.related-post-cta {
  position:absolute;
  right:0;
  left:0;
  top:0;
  bottom:0;
  margin:auto;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  background-color: #00000054;
  transition:background-color 0.4s ease;
}
.related-post-cta:hover {
  background-color: #3333;
  transition:background-color 0.4s ease
}

.content .related-post-title {
  font-size: 3.5rem;
  text-shadow: 1px 1px 1px #000;
  font-weight:500;
  color:#fff;
  text-align: center;
}

.bootic_button.read-more-post {
  width: fit-content;
}

.related-post-description {
  font-weight: 500;
  margin: 0 0 1rem 0;
}

@media (max-width: 1024px) {

  .products.relation-items.grid-list .product-item {
    flex: 1 1 calc(33.333% - 16px);
    max-width: calc(33.333% - 16px);
  }

  .products.relation-items.grid-list .product-item:only-child {
    width: 60%;
  }

}

@media (max-width: 830px) {

  .products.relation-items.grid-list .product-item {
    flex: 1 1 calc(50% - 16px);
    max-width: calc(50% - 16px);
  }

  .products.relation-items.grid-list .product-item:only-child {
    width: 80%;
  }

}

@media (max-width: 450px) {

  .relations-container {
    padding: 0;
  }

  .products.relation-items.grid-list {
    justify-content: center;
  }

  .products.relation-items.grid-list .product-item {
    flex: 1 1 100%;
    max-width: 100%;
    margin: 8px 0;
  }

  .products.relation-items.grid-list .product-item:only-child {
    width: 100%;
    margin: 8px 0;
  }

}

/*! post nav */

.post-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  justify-content: center;
  margin: 6rem 0 0 0;
}

.post-nav .button {
  border-radius: 4px;
  border-color: var(--button-bg, #000);
  background-color: var(--button-bg, #000);
  color: #fff;
}

.post-nav .button:hover{
  border-radius: 4px;
  border-color: var(--button-bg-hover, #484848);
  background-color: var(--button-bg-hover, #484848);
  color: #fff;
}

/* imagenes en posts y paginas
-------------------------------------------------*/

figure.post-image {
  margin-left: 0;
  margin-right: 0;
}

.entry img,
.entry object {
  margin: 0 0 20px;
  position: relative;
  display: block;
  padding: 0;
}

.entry img[align="left"],
.entry img.note-float-left {
  margin-right: 20px;
}

.entry img[align="right"],
.entry img.note-float-right {
  margin-left: 20px;
}

img.border {
  -webkit-border-radius: 4px;
     -moz-border-radius: 4px;
          border-radius: 4px;
}

.post-image-centered img {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.post-image-stretched img {
  width: 100%;
}


/* cart, add to cart fixes
-------------------------------------------------*/

.bootic_form fieldset {
  margin: 0;
}

.bootic_form legend {
  /*font-weight: 400;*/
  color: #aaa;
}

.bootic_form label {
  /*font-weight: 400;*/
  padding-top: 11px;
}

.bootic_form .row.checkbox {
  text-align: center;
  margin: 25px 0;
}

.bootic_form .row.checkbox label {
  margin-left: 0;
}

.section .cart_action_buttons {
  border-top: 1px solid #ddd;
  padding: 2rem 0;
}

.slideout .cart_action_buttons {
  position: sticky;
  bottom: 0;
  background-color: #fff;
  width: 100%;
  border-top: 1px solid #ddd;
  padding: 2rem;
  margin: 0 !important;
}

.cart_action_buttons > .bootic_button {
  letter-spacing: unset;
}

@media (max-width: 425px) {
  .cart_action_buttons .bootic_button {
    margin: 0;
  }
}

@media (max-width: 700px) {
  .bootic_form label {
    text-align: left;
  }

  .bootic_form select,
  .bootic_form input[type=text],
  .bootic_form input[type=email],
  .bootic_form input[type=password],
  .bootic_form textarea {
    width: 100%;
    margin-bottom: 0;
  }
}

.add_to_cart,
.add-to-cart-component-container {
  margin: 30px 0;
  padding: 0;
}

.in-stock .add_to_cart {
  border-color: var(--button-bg, #000);
  display: block;
}

.add_to_cart .variant-options {
  margin: 15px 15px 10px;
}

.add_to_cart .bundle-variant-chooser {
  margin: 0 15px;
}

.add_to_cart .variant-option-block {
  margin-bottom: 20px;
}

.add_to_cart .variant-option-block select {
  margin-bottom: 0;
}

.add_to_cart .variants-select-container {
/*  padding: 15px 15px 0;*/
}

.add_to_cart ul.variants {
  margin-bottom: 15px;
}

.add_to_cart li {
  padding: 16px 15px;
  border-top: 1px solid #eee;
  position: relative;
}

.add_to_cart li:hover {
  background-color: whitesmoke;
}

.bootic_variant .variant-color {
  margin-right: 10px;
}

.add_to_cart label {
  /*font-weight: 600;*/
  color: #5f838e;
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: .1rem;
  line-height: 16px;
  display: inline-block;
}

.add_to_cart .cart_item_quantity {
  width: 40px;
  display: none;
}

.add_to_cart .bootic_alert {
  margin-left: 0;
  padding: 0;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.add_to_cart .notify-in-stock,
.add_to_cart .out_of_stock {
  display: flex;
  justify-content: center;
  align-items: center;
}

.add_to_cart .bootic_alert.out_of_stock {
  background-color: #d1d1d1;
  border-color: #9b9b9b;
  color: #595959;
}

.orders_disabled,
.out_of_stock {
  border-color: #bbb;
  color: #bbb;
}

.add_to_cart .bootic_alert,
.add_to_cart .bootic_button {
  border-radius: 25px;
}

.add_to_cart .submit {
  margin: 0;
  width: 100%;
}

.cart_table th,
.cart_table td {
  padding: 13px 15px;
}

@media (max-width: 760px) {
  .cart_table th,
  .cart_table td {
    padding: 13px 8px;
  }
}

.cart_table th {
  font-weight: normal;
}

.cart_table img {
  width: auto;
  max-width: 50px;
  margin: 7px 4px 0 15px;
}

.cart_table .cart_item_qty input {
  margin: 0;
  height: 36px;
  width: 36px;
}

.cart_table .cart_item_name {
  width: 50%;
}

.cart_table .remove {
  padding: 0;
  margin: 0;
  line-height: inherit;
}

@media (max-width: 549px) {
  .cart_table th,
  .cart_table td {
    padding: 13px 8px;
  }
}

/* subscribe
--------------------------------------------*/

.subscribe-section {
  background-color: #f3f0ef;
  padding: 40px 0;
}

.subscribe-section .section-title {
  margin: 70px 0 10px;
  font-size: 30px;
  text-align: left;
}

.subscribe-section .text,
.subscribe-section form {
  margin: 0;
}

.subscribe-section .text {
  color: #888;
}

.subscribe-section fieldset {
  margin: 15px 0 0;
}

.subscribe-section input {
  width: 80%;
  margin-right: 10px;
  font-size: 14px;
}

.subscribe-section input,
.subscribe-section button {
  /*border-color: #31C7B5;*/
}

.subscribe-section button {
  color: #fff;
}

.subscribe-section .phone_row {
  display: none !important;
}

@media (max-width: 840px) {
  .subscribe-section .section-title {
    margin-top: 60px;
  }

  .subscribe-section input {
    width: 100%;
  }
}

@media (max-width: 760px) {
  .subscribe-section .section-title {
    margin-top: 35px;
  }

  .subscribe-section form {
    margin: 30px 0;
  }
}

/* footer
-----------------------------------------------------------*/

#wrapper {
  min-height: 100%;
  height: auto !important;
  height: 100%;
  margin: 0 auto -325px;
}

#footer, #wrapper-push {
  height: 325px;
  /* clear: both; */
}

footer {
  background: #2d2d2d;
  color: #8d8d8d;
  overflow: hidden;
  padding: 50px 0 20px;
}

footer,
footer a {
  color: var(--footer-link-color, #8d8d8d);
}

footer .menu a:hover,
footer a:hover {
  color: var(--footer-link-hover-color, #1EAEDB);
}

footer h3 {
  font-family: Roboto;
  font-weight: 400;
  font-size: 15px;
  margin-bottom: 20px;
  color: var(--footer-headings, #eee);
}

footer ul {
  margin: 0 0 30px;
}

footer .menu li {
  font-weight: 400;
  padding: 5px 0;
  font-size: 12px;
}

footer p, footer li {
  margin: 0;
}

footer hr {
  border-color: #ccc;
  margin: 2rem 0;
}

footer p {
  font-size: 11px;
  text-transform: uppercase;
  font-weight: 400;
}

footer .payment-methods-img {
  width: 72%;
  max-width: 200px;
  margin: 0 auto;
  display: block;
}

/*footer strong, footer p a {
  color: #cecece;
}*/

.social-icons {
  margin: 30px 0 0;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1rem;
}

.social-icons a {
  display: block;
  width: 3rem;
  height: 3rem;
  border: none;
  cursor: pointer;
  overflow: hidden;
  color: transparent;
  background-color: var(--footer-link-color, #8d8d8d);
  transition: background-color 0.2s;
  --svg-li: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"%3E%3Cpath d="M24,4H6C4.895,4,4,4.895,4,6v18c0,1.105,0.895,2,2,2h18c1.105,0,2-0.895,2-2V6C26,4.895,25.105,4,24,4z M10.954,22h-2.95 v-9.492h2.95V22z M9.449,11.151c-0.951,0-1.72-0.771-1.72-1.72c0-0.949,0.77-1.719,1.72-1.719c0.948,0,1.719,0.771,1.719,1.719 C11.168,10.38,10.397,11.151,9.449,11.151z M22.004,22h-2.948v-4.616c0-1.101-0.02-2.517-1.533-2.517 c-1.535,0-1.771,1.199-1.771,2.437V22h-2.948v-9.492h2.83v1.297h0.04c0.394-0.746,1.356-1.533,2.791-1.533 c2.987,0,3.539,1.966,3.539,4.522V22z"%3E%3C/path%3E%3C/svg%3E');
  --svg-fb: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"%3E%3Cpath d="M24,4H6C4.895,4,4,4.895,4,6v18c0,1.105,0.895,2,2,2h10v-9h-3v-3h3v-1.611C16,9.339,17.486,8,20.021,8 c1.214,0,1.856,0.09,2.16,0.131V11h-1.729C19.376,11,19,11.568,19,12.718V14h3.154l-0.428,3H19v9h5c1.105,0,2-0.895,2-2V6 C26,4.895,25.104,4,24,4z"%3E%3C/path%3E%3C/svg%3E');
  --svg-tw: url('data:image/svg+xml, %3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"%3E%3Cpath d="M 6 4 C 4.895 4 4 4.895 4 6 L 4 24 C 4 25.105 4.895 26 6 26 L 24 26 C 25.105 26 26 25.105 26 24 L 26 6 C 26 4.895 25.105 4 24 4 L 6 4 z M 8.6484375 9 L 13.259766 9 L 15.951172 12.847656 L 19.28125 9 L 20.732422 9 L 16.603516 13.78125 L 21.654297 21 L 17.042969 21 L 14.056641 16.730469 L 10.369141 21 L 8.8945312 21 L 13.400391 15.794922 L 8.6484375 9 z M 10.878906 10.183594 L 17.632812 19.810547 L 19.421875 19.810547 L 12.666016 10.183594 L 10.878906 10.183594 z"%3E%3C/path%3E%3C/svg%3E');
  --svg-yt: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"%3E%3Cpath d="M 15 4 C 10.814 4 5.3808594 5.0488281 5.3808594 5.0488281 L 5.3671875 5.0644531 C 3.4606632 5.3693645 2 7.0076245 2 9 L 2 15 L 2 15.001953 L 2 21 L 2 21.001953 A 4 4 0 0 0 5.3769531 24.945312 L 5.3808594 24.951172 C 5.3808594 24.951172 10.814 26.001953 15 26.001953 C 19.186 26.001953 24.619141 24.951172 24.619141 24.951172 L 24.621094 24.949219 A 4 4 0 0 0 28 21.001953 L 28 21 L 28 15.001953 L 28 15 L 28 9 A 4 4 0 0 0 24.623047 5.0546875 L 24.619141 5.0488281 C 24.619141 5.0488281 19.186 4 15 4 z M 12 10.398438 L 20 15 L 12 19.601562 L 12 10.398438 z"%3E%3C/path%3E%3C/svg%3E');
  --svg-ig: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"%3E%3Cpath d="M 8 3 C 5.239 3 3 5.239 3 8 L 3 16 C 3 18.761 5.239 21 8 21 L 16 21 C 18.761 21 21 18.761 21 16 L 21 8 C 21 5.239 18.761 3 16 3 L 8 3 z M 18 5 C 18.552 5 19 5.448 19 6 C 19 6.552 18.552 7 18 7 C 17.448 7 17 6.552 17 6 C 17 5.448 17.448 5 18 5 z M 12 7 C 14.761 7 17 9.239 17 12 C 17 14.761 14.761 17 12 17 C 9.239 17 7 14.761 7 12 C 7 9.239 9.239 7 12 7 z M 12 9 A 3 3 0 0 0 9 12 A 3 3 0 0 0 12 15 A 3 3 0 0 0 15 12 A 3 3 0 0 0 12 9 z"%3E%3C/path%3E%3C/svg%3E');
  --svg-wa: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 50 50"%3E%3Cpath d="M25,8c9.389,0,17,7.611,17,17c0,9.389-7.611,17-17,17c-3.023,0-5.856-0.798-8.316-2.181l-8.537,1.904l2.185-8.158	C8.859,31.048,8,28.127,8,25C8,15.611,15.611,8,25,8z M33.943,31.254c0.373-1.048,0.373-1.946,0.257-2.135	c-0.113-0.183-0.408-0.294-0.857-0.519c-0.45-0.225-2.655-1.313-3.069-1.461c-0.408-0.148-0.71-0.225-1.004,0.225	c-0.302,0.45-1.158,1.461-1.425,1.756c-0.26,0.302-0.519,0.337-0.969,0.112c-0.45-0.225-1.896-0.696-3.61-2.227	c-1.333-1.187-2.233-2.655-2.492-3.104c-0.26-0.448-0.029-0.695,0.196-0.919c0.204-0.196,0.45-0.519,0.675-0.779	c0.217-0.267,0.294-0.45,0.442-0.752c0.155-0.294,0.077-0.562-0.035-0.786c-0.112-0.225-0.983-2.444-1.383-3.329	c-0.337-0.744-0.688-0.765-1.011-0.773c-0.261-0.014-0.563-0.014-0.857-0.014c-0.302,0-0.786,0.112-1.2,0.562	c-0.406,0.45-1.566,1.532-1.566,3.744c0,2.204,1.602,4.34,1.827,4.635c0.225,0.302,3.104,4.979,7.669,6.777	c3.785,1.49,4.558,1.194,5.386,1.117C31.737,33.312,33.57,32.301,33.943,31.254z"%3E%3C/path%3E%3C/svg%3E');
  --svg-tt: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"%3E%3Cpath d="M24,4H6C4.895,4,4,4.895,4,6v18c0,1.105,0.895,2,2,2h18c1.105,0,2-0.895,2-2V6C26,4.895,25.104,4,24,4z M22.689,13.474 c-0.13,0.012-0.261,0.02-0.393,0.02c-1.495,0-2.809-0.768-3.574-1.931c0,3.049,0,6.519,0,6.577c0,2.685-2.177,4.861-4.861,4.861 C11.177,23,9,20.823,9,18.139c0-2.685,2.177-4.861,4.861-4.861c0.102,0,0.201,0.009,0.3,0.015v2.396c-0.1-0.012-0.197-0.03-0.3-0.03 c-1.37,0-2.481,1.111-2.481,2.481s1.11,2.481,2.481,2.481c1.371,0,2.581-1.08,2.581-2.45c0-0.055,0.024-11.17,0.024-11.17h2.289 c0.215,2.047,1.868,3.663,3.934,3.811V13.474z"%3E%3C/path%3E%3C/svg%3E');
}

.social-icons a:hover,
.social-icons a:focus {
  background-color: var(--footer-link-hover-color);
}

.social-icons a.facebook {
  -webkit-mask: var(--svg-fb);
  mask: var(--svg-fb);
}

.social-icons a.instagram {
  -webkit-mask: var(--svg-ig);
  mask: var(--svg-ig);
}

.social-icons a.linkedin {
  -webkit-mask: var(--svg-li);
  mask: var(--svg-li);
}

.social-icons a.twitter {
  -webkit-mask: var(--svg-tw);
  mask: var(--svg-tw);
}

.social-icons a.youtube {
  -webkit-mask: var(--svg-yt);
  mask: var(--svg-yt);
}

.social-icons a.whatsapp {
  -webkit-mask: var(--svg-wa);
  mask: var(--svg-wa);
}

.social-icons a.tiktok {
  -webkit-mask: var(--svg-tt);
  mask: var(--svg-tt);
}

.bob-logo.inverted {
  filter: invert(1);
}

/* pagination
--------------------------------------------------------------*/

.pagination {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
  width: 100%;
  margin: 2em 1em .5em;
  color: #999;
  text-align: center;
  clear: both;
  line-height: 1; /* otherwise on small screens the lines overlap */
}

.pagination a,
.pagination span {
  border: 1px solid #ccc;
  padding: 12px 14px;
  font-size: 1em;
  margin: 0 2px;
}

.pagination a.more-results {
  padding: 12px 20px;
}

.pagination .gap {
  border-color: transparent;
  padding: 10px 3px
}

.pagination em {
  display: inline-block;
  font-style: normal;
  padding: 0 10px;
}

.pagination a:link,
.pagination a:visited {
  color: #666;
  border-color: #999;
}

.pagination a:hover,
.pagination .current {
  color: #333;
  border-color: #666;
}

.pagination a,
.pagination span,
.pagination em {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0;
  padding: 1rem;
}

.pagination a:not(.next_page) {
  border-radius: 20px;
  min-width: 37px;
}

.pagination a:not(.next_page):hover,
.pagination a:not(.previoust_page):hover {
  background-color: var(--button-bg, #000);
  border: 1px solid var(--button-bg, #000);
  color: #fff;
}

.pagination em.current {
  border-radius: 20px;
  min-width: 37px;
  background-color: var(--button-bg, #000);
  color: #fff;
  font-weight: 500;
}

.pagination .previous_page,
.pagination .next_page {
  border: none;
}

.pagination a.previous_page:hover,
.pagination a.next_page:hover {
  color: var(--button-bg, #000);
  background-color: transparent;
  border: none;
}

@media (max-width: 760px) {

  .pagination .previous_page.disabled,
  .pagination .previous_page,
  .pagination .next_page {
    width: 100%;
  }

}

@font-face {
  font-family: 'icomoon';
  src: url('icomoon.eot?xe2loj');
  src: url('icomoon.eot?xe2loj#iefix') format('embedded-opentype'),
    url('icomoon.ttf?xe2loj') format('truetype'),
    url('icomoon.woff?xe2loj') format('woff'),
    url('icomoon.svg?xe2loj#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

.ion, .ionicons, .ion-user, .ion-android-arrow-back:before, .ion-android-arrow-forward:before, .ion-android-cart:before, .ion-android-favorite:before, .ion-android-favorite-outline:before, .ion-android-lock:before, .ion-android-search:before, .ion-android-star:before, .ion-android-star-half:before, .ion-android-star-outline:before, .ion-arrow-expand:before, .ion-bag:before, .ion-checkmark-circled:before, .ion-help-buoy:before, .ion-ios-arrow-left:before, .ion-ios-arrow-right:before, .ion-navicon:before, .ion-social-facebook:before, .ion-social-facebook-outline:before, .ion-social-googleplus:before, .ion-social-googleplus-outline:before, .ion-social-instagram:before, .ion-social-instagram-outline:before, .ion-social-skype:before, .ion-social-skype-outline:before, .ion-social-tumblr:before, .ion-social-twitter:before, .ion-social-twitter-outline:before, .ion-social-whatsapp:before, .ion-social-whatsapp-outline:before, .ion-social-youtube:before, .ion-social-youtube-outline:before { display: inline-block; font-family: "icomoon"; speak: none; font-style: normal; font-weight: normal; font-variant: normal; text-transform: none; text-rendering: auto; line-height: 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

.ion-user:before {
  content: "\e900";
}
.ion-social-instagram:before {
  content: "\e901";
}
.ion-android-star:before {
  content: "\f102";
}
.ion-social-youtube-outline:before {
  content: "\f103";
}
.ion-ios-arrow-left:before {
  content: "\f104";
}
.ion-ios-arrow-right:before {
  content: "\f3d3";
}
.ion-checkmark-circled:before {
  content: "\f105";
}
.ion-android-arrow-forward:before {
  content: "\f106";
}
.ion-android-arrow-back:before {
  content: "\f107";
}
.ion-social-whatsapp-outline:before {
  content: "\f108";
}
.ion-social-facebook-outline:before {
  content: "\f109";
}
.ion-help-buoy:before {
  content: "\f10a";
}
.ion-social-tumblr:before {
  content: "\f10c";
}
.ion-android-cart:before {
  content: "\f370";
}
.ion-social-twitter-outline:before {
  content: "\f10e";
}
.ion-social-youtube:before {
  content: "\f10f";
}
.ion-android-favorite:before {
  content: "\f110";
}
.ion-android-star-half:before {
  content: "\f111";
}
.ion-social-whatsapp:before {
  content: "\f112";
}
.ion-navicon:before {
  content: "\f20e";
}
.ion-android-star-outline:before {
  content: "\f113";
}
.ion-social-twitter:before {
  content: "\f115";
}
.ion-android-lock:before {
  content: "\f116";
}
.ion-android-favorite-outline:before {
  content: "\f118";
}
.ion-social-facebook:before {
  content: "\f119";
}
.ion-android-search:before {
  content: "\f11a";
}
.ion-arrow-expand:before {
  content: "\f11b";
}
.ion-bag:before {
  content: "\f11c";
}

/* libreria EasyZoom
--------------------------------------------------------------*/

.easyzoom {
  position: relative;

  /* 'Shrink-wrap' the element */
  display: inline-block;
  *display: inline;
  *zoom: 1;
}

.easyzoom img {
  vertical-align: bottom;
}

.easyzoom.is-loading img {
  cursor: progress;
}

.easyzoom.is-ready img {
  cursor: crosshair;
}

.easyzoom.is-error  img {
  cursor: not-allowed;
}

.easyzoom-notice {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 150;
  width: 10em;
  margin: -1em 0 0 -5em;
  line-height: 2em;
  text-align: center;
  background: #FFF;
  box-shadow: 0 0 10px #888;
}

.easyzoom-flyout {
  position:absolute;
  z-index: 100;
  overflow: hidden;
  background: #FFF;
}

/**
 * EasyZoom layout variations
 */
.easyzoom--overlay .easyzoom-flyout {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.easyzoom--adjacent .easyzoom-flyout {
  top: 0;
  left: 100%;
  width: 100%;
  height: 100%;
  margin-left: 20px;
}

.easyzoom-flyout img {
  max-width: inherit;
}

/* CSS for user reviews (yotpo) */

.user-reviews {
  background: #d4c2ad;
  padding: 30px 20px 40px;
  margin-top: 50px;
}

.yotpo .yotpo-first-review {
  margin-top: 0 !important;
}

.yotpo-bottomline-empty-state {
  display: none !important;
}

.yotpo .yotpo-small-box {
  display: none !important;
}

.yotpo .yotpo-regular-box {
  border-top: none !important;
}

.yotpo input[type="button"].yotpo-default-button {
  padding: 0 15px !important;
}

.yotpo .y-input,
.yotpo .form-group .form-element .y-input,
.yotpo .text-box,
.yotpo .yotpo-text-box {
  background-color: #fff !important;
}

.yotpo .write-review .yotpo-header .yotpo-icon {
  color: #ef013d !important;
}

.yotpo.yotpo-main-widget .yotpo-thank-you,
.yotpo .yotpo-modal-dialog .yotpo-thank-you {
  background-color: #eae1d6;
}

/* CSS for countdown timer section */
.countdown-timer-section {
  position: relative;
}

.countdown-timer-container {
  display: flex;
  position: absolute;
  bottom: 10px;
  right: 30px;
}

.countdown-timer-container ul {
  display: none;
  list-style: none;
  margin: 0;
  padding: 0;
  margin-top: 2rem;
}

.countdown-timer-container li {
  border-radius: 10px;
  padding: 1rem;
  display: flex;
  flex-direction: column;
  margin: 0 0.5rem;
  box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5);
  text-align: center;
  font-weight: 700;
}

.countdown-timer-container span {
  font-size: 3rem;
}

.countdown-timer-container .time-fraction {
  font-size: 15px;
  font-weight: 200;
}

.countdown-timer-container .done {
  color: white;
}

/*! prevent zoom on safari iOS inputs with font size smaller than 16px */

@supports (-webkit-touch-callout: none) {
  @media screen and (max-width: 480px) {
    form select,
    form input[type="text"],
    form input[type="email"],
    form input[type="number"],
    form input[type="password"],
    form textarea {
      font-size: 16px;
    }
  }
}

/*! Checkboxes */

.checkbox.color-checkbox {
  display: flex;
  position: relative;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  gap: 1rem;
  align-items: center;
}

.checkbox.color-checkbox input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

.checkbox.color-checkbox input:checked ~ .checkbox__checkmark:after {
  opacity: 1;
}

.checkbox.color-checkbox:hover input ~ .checkbox__checkmark {
  background-color: #eee;
}

.checkbox.color-checkbox:hover input ~ .checkbox__body {
  opacity: 0.8;
  text-decoration: underline;
}

.checkbox.color-checkbox .checkbox__checkmark {
  position: relative;
  left: 0;
  height: 1.8rem;
  width: 1.8rem;
  background-color: #eee;
  transition: background-color 0.25s ease;
  border-radius: 11px;
  border: solid #333;
  border-width: 1px;
}

.checkbox.color-checkbox .checkbox__checkmark:after {
  content: "";
  position: absolute;
  left: 0.65rem;
  top: 0.3rem;
  width: 0.5rem;
  height: 1rem;
  border: solid #333;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
  opacity: 0;
  transition: opacity 0.25s ease;
}

.checkbox.black-color-checkbox .checkbox__checkmark:after {
  border-color: #fff;
}

.checkbox.color-checkbox .checkbox__body {
  color: #333;
  line-height: 1.4;
  font-size: 1.6rem;
  transition: color 0.25s ease;
}

/*! rounded forms */

.bootic_row select,
.bootic_row input[type=text],
.bootic_row input[type=email],
.bootic_row input[type=number],
.bootic_row input[type=password],
.bootic_row input[type=date],
.bootic_row textarea,
.product select,
.product input[type=text],
.product input[type=email],
.product input[type=number],
.product input[type=password],
.product input[type=date],
.product textarea {
  border-radius: 4px;
}

.widget-promotions span.promo-name {
  color: black;
  font-size: 14px;
}

.widget-promotions .promo-group {
  margin-bottom: 15px;
}

.widget-promotions .promo-card {
  align-items: center;
  justify-content: flex-start;
  padding: 14px 18px 16px;
  border: 1px solid rgb(229, 229, 229);
  border-radius: 6px;
  min-height: 80px;
  margin-bottom: 1rem;
  gap: 3rem;
  display: grid;
  grid-template-columns: 20% auto;
}

.widget-promotions span.promo-discount {
  text-align: center;
}

.widget-promotions .promo-desc-container {
  border-left: 1px solid rgb(229, 229, 229);
  padding: 0 2rem;
  font-weight: 500;
}

.widget-promotions .promo-desc-container p {
  margin: 0;
}

.widget-promotions .promo-desc-container p.promo-desc {
  font-size: 13px;
  border: none;
}

.widget-promotions .promo-desc-container p.promo-conditions {
  margin-top: 1rem;
  font-size: 11.5px;
  border-top: 1px dotted #e0e0e0;
  padding-top: 1rem;
}

/*! RangeSlider */

.price-select-wrapper {
  margin: 0 0 2rem 0;
}

.price-selector .irs--flat .irs-bar,
.price-selector .irs--flat .irs-shadow,
.price-selector .irs--flat .irs-handle > i:first-child,
.price-selector .irs--flat .irs-handle.state_hover > i:first-child,
.price-selector .irs--flat .irs-handle:hover > i:first-child,
.price-selector .irs--flat .irs-from,
.price-selector .irs--flat .irs-to,
.price-selector .irs--flat .irs-single {
  background-color: var(--slider-bg, #444);
}

.price-selector .irs--flat .irs-from::before,
.price-selector .irs--flat .irs-to::before,
.price-selector .irs--flat .irs-single::before {
  border-top-color: var(--slider-bg, #444);
}

.price-selector .irs--flat .irs-from,
.price-selector .irs--flat .irs-to,
.price-selector .irs--flat .irs-single {
  color: var(--slider-text, #fff);
}

.price-selector .btn-price-filter {
  width: 100%;
  font-weight: 400;
}
