@import url(./base.css);
@import url(./pages/homepage.css);
@import url(./pages/account_page.css);
@import url(./pages/products_page.css);
@import url(./pages/white-wine_page.css);
@import url(./pages/red-wine_page.css);
@import url(./pages/single_product_page.css);
@import url(./pages/who-we-are__page.css);
@import url(./pages/who-we-are-history_page.css);
@import url(./pages/vineyards__page.css);
@import url(./pages/contact__page.css);
@import url(./pages/news.css);
@import url(./pages/cart_page.css);
@import url(./pages/validation__page.css);
@import url(./pages/order_page.css);
@import url(./pages/privacy-policy_page.css);
@import url(./pages/legal-notice__page.css);
@import url(./pages/cgv__page.css);
@import url(./pages/review_page.css);

/* LAYOUTS */

@import url(./layouts/footer.css);


**
 * Products
 */
.products .product {
  list-style: none;
  margin-left: 0;
  text-align: center;
  position: relative;
  background: var(--modules-background-color);
}
.products .product.product-category .product-category-wrap {
  background: var(--modules-background-color);
}
.products .product.product-category .product-category-wrap .title {
  margin: 1em;
  -webkit-transition: -webkit-transform .3s;
  transition: -webkit-transform .3s;
  transition: transform .3s;
  transition: transform .3s,-webkit-transform .3s;
}
.products .product.product-category .product-category-wrap .title:after {
  content: '';
  position: absolute;
  width: 60px;
  height: 1.5px;
  background: var(--primary-color);
  display: block;
  left: calc(50% - 30px);
  margin-top: 0.3em;
}
.products .product.product-category .product-category-wrap .term-description {
  margin: 0 2em 3em 2em;
  -webkit-transition: -webkit-transform .3s;
  transition: -webkit-transform .3s;
  transition: transform .3s;
  transition: transform .3s,-webkit-transform .3s;
}
.products .product .woocommerce-LoopProduct-link {
  display: block;
}
.products .product .price {
  display: block;
  margin: 1em 0 3em 0;
  opacity: 1;
  -webkit-transition: all .3s ease;
  -moz-transition: all .3s ease;
  transition: all .3s ease;
  will-change: transform;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-family: var(--base-font-family);
  font-weight: 500;
  font-size: 0.857rem;
  color: var(--primary-color);
}
@media (min-width: 2400px) {
  .products .product .price {
    font-size: 1rem;
    letter-spacing: 4px;
  }
}
.products .product .price ins {
  background-color: transparent;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-family: var(--base-font-family);
  font-weight: 500;
  font-size: 0.857rem;
  color: var(--primary-color);
}
@media (min-width: 2400px) {
  .products .product .price ins {
    font-size: 1rem;
    letter-spacing: 4px;
  }
}
.products .product .woocommerce-loop-product__title {
  font-size: var(--headings-4-font-size);
  line-height: normal;
}
.products .product .woocommerce-loop-product__title a {
  color: #fff;
}
.products .product img {
  display: block;
  margin: 0 auto;
  -webkit-transition: -webkit-transform .3s;
  transition: -webkit-transform .3s;
  transition: transform .3s;
  transition: transform .3s,-webkit-transform .3s;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.products .product .product-image-wrap {
  position: relative;
}
.products .product .product-meta-wrap {
  overflow: hidden;
  text-align: center;
  background: var(--modules-background-color);
  -webkit-transition: -webkit-transform .3s;
  transition: -webkit-transform .3s;
  transition: transform .3s;
  transition: transform .3s,-webkit-transform .3s;
}
.products .product .product-meta-wrap .product-meta-wrap-inner {
  position: relative;
  padding: 2em;
}
.products .product .product-meta-wrap .product-meta-wrap-inner .button {
  position: absolute;
  left: 50%;
  right: auto;
  opacity: 0;
  -webkit-transform: translate(-50%, 50%);
  transform: translate(-50%, 50%);
  -webkit-transition: .4s;
  transition: .4s;
  width: 60%;
  height: 48px;
}
@media (min-width: 2400px) {
  .products .product .product-meta-wrap .product-meta-wrap-inner .button {
    height: 58px;
  }
}
.products .product .product-meta-wrap .product-meta-wrap-inner .button.product_type_external {
  width: 80%;
  height: auto;
}
.products .product .product-meta-wrap .product-meta-wrap-inner .added_to_cart {
  position: absolute;
  left: 50%;
  right: auto;
  opacity: 0;
  -webkit-transform: translate(-50%, 50%);
  transform: translate(-50%, 50%);
  -webkit-transition: .4s;
  transition: .4s;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-family: var(--base-font-family);
  font-weight: 500;
  font-size: 0.714rem;
}
@media (min-width: 2400px) {
  .products .product .product-meta-wrap .product-meta-wrap-inner .added_to_cart {
    font-size: 0.857rem;
    letter-spacing: 4px;
  }
}
.products .product:hover.product-category .product-category-wrap .title {
  -webkit-transform: translateY(-25px);
  -moz-transform: translateY(-25px);
  -ms-transform: translateY(-25px);
  transform: translateY(-25px);
}
.products .product:hover.product-category .product-category-wrap .term-description {
  -webkit-transform: translateY(-25px);
  -moz-transform: translateY(-25px);
  -ms-transform: translateY(-25px);
  transform: translateY(-25px);
}
.products .product:hover img {
  -webkit-transform: translateY(-50px);
  -moz-transform: translateY(-50px);
  -ms-transform: translateY(-50px);
  transform: translateY(-50px);
}
@media (min-width: 2400px) {
  .products .product:hover img {
    -webkit-transform: translateY(-80px);
    -moz-transform: translateY(-80px);
    -ms-transform: translateY(-80px);
    transform: translateY(-80px);
  }
}
.products .product:hover .product-meta-wrap {
  -webkit-transform: translateY(-50px);
  -moz-transform: translateY(-50px);
  -ms-transform: translateY(-50px);
  transform: translateY(-50px);
  overflow: visible;
}
@media (min-width: 2400px) {
  .products .product:hover .product-meta-wrap {
    -webkit-transform: translateY(-80px);
    -moz-transform: translateY(-80px);
    -ms-transform: translateY(-80px);
    transform: translateY(-80px);
  }
}
.products .product:hover .product-meta-wrap .product-meta-wrap-inner .button {
  -webkit-transform: translate(-50%, 0);
  -moz-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  opacity: 1;
  visibility: visible;
}
.products .product:hover .product-meta-wrap .product-meta-wrap-inner .added_to_cart {
  -webkit-transform: translate(-50%, 50px);
  -moz-transform: translate(-50%, 50px);
  -ms-transform: translate(-50%, 50px);
  transform: translate(-50%, 50px);
  opacity: 1;
  visibility: visible;
}
@media (min-width: 2400px) {
  .products .product:hover .product-meta-wrap .product-meta-wrap-inner .added_to_cart {
    -webkit-transform: translate(-50%, 80px);
    -moz-transform: translate(-50%, 80px);
    -ms-transform: translate(-50%, 80px);
    transform: translate(-50%, 80px);
  }
}



.h1 {
    font-size: var(--headings-1-font-size);
}
.h2 {
    font-size: var(--headings-2-font-size);
}
.h3 {
    font-size: var(--headings-3-font-size);
}
.h4 {
    font-size: var(--headings-4-font-size);
}
.h5 {
    font-size: var(--headings-5-font-size);
}
.h6 {
    font-size: var(--headings-6-font-size);
}
.p {
    font-size: var(--base-font-size);
}

.title {
    font-family: var(--headings-font-family);
}
