@charset "UTF-8";
/*!
Theme Name: impasti4punto1
Author: MADE IN CIMA Team
Author URI: https://www.madeincima.it
Version: 1.0
Text Domain: mc
*/
/* ----------- RESET DEFAULT STYLES ----------- */
html {
  -webkit-text-size-adjust: 100%;
  font-size: 62.5%;
  height: 100%;
}

body {
  font-size: 1.6em;
  font-family: Arial, sans-serif;
  padding: 0;
  margin: 0;
  width: 100%;
  line-height: 150%;
}

div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 1em;
  vertical-align: baseline;
  background: transparent;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}

nav ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  background: transparent;
}

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

* {
  outline: none;
}

img[src$=".gif"], img[src$=".png"], img[src$=".webp"], img[src$=".jpg"] {
  image-rendering: -webkit-optimize-contrast; /* Webkit (non-standard naming) */
}

@font-face {
  font-family: "ITC Avant Garde";
  src: url("font/AvantGardeLT-Bold.eot");
  src: url("font/AvantGardeLT-Bold.eot?#iefix") format("embedded-opentype"), url("font/AvantGardeLT-Bold.woff2") format("woff2"), url("font/AvantGardeLT-Bold.woff") format("woff"), url("font/AvantGardeLT-Bold.ttf") format("truetype"), url("font/AvantGardeLT-Bold.svg#AvantGardeLT-Bold") format("svg");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "ITC Avant Garde Gothic";
  src: url("font/ITCAvantGardeGothicStd-Bold.eot");
  src: url("font/ITCAvantGardeGothicStd-Bold.eot?#iefix") format("embedded-opentype"), url("font/ITCAvantGardeGothicStd-Bold.woff2") format("woff2"), url("font/ITCAvantGardeGothicStd-Bold.woff") format("woff"), url("font/ITCAvantGardeGothicStd-Bold.ttf") format("truetype"), url("font/ITCAvantGardeGothicStd-Bold.svg#ITCAvantGardeGothicStd-Bold") format("svg");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "ITC Avant Garde Gothic";
  src: url("font/ITCAvantGardeGothicStd-Book.eot");
  src: url("font/ITCAvantGardeGothicStd-Book.eot?#iefix") format("embedded-opentype"), url("font/ITCAvantGardeGothicStd-Book.woff2") format("woff2"), url("font/ITCAvantGardeGothicStd-Book.woff") format("woff"), url("font/ITCAvantGardeGothicStd-Book.ttf") format("truetype"), url("font/ITCAvantGardeGothicStd-Book.svg#ITCAvantGardeGothicStd-Bold") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "ITC Avant Garde";
  src: url("font/ITCAvantGardeStd-Md.eot");
  src: url("font/ITCAvantGardeStd-Md.eot?#iefix") format("embedded-opentype"), url("font/ITCAvantGardeStd-Md.woff2") format("woff2"), url("font/ITCAvantGardeStd-Md.woff") format("woff"), url("font/ITCAvantGardeStd-Md.ttf") format("truetype"), url("font/ITCAvantGardeStd-Md.svg#ITCAvantGardeStd-Md") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Granjon";
  src: url("font/GranjonLTStd.eot");
  src: url("font/GranjonLTStd.eot?#iefix") format("embedded-opentype"), url("font/GranjonLTStd.woff2") format("woff2"), url("font/GranjonLTStd.woff") format("woff"), url("font/GranjonLTStd.ttf") format("truetype"), url("font/GranjonLTStd.svg#GranjonLTStd") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
.logo {
  position: absolute;
  top: 31px;
  left: 50%;
  z-index: 1;
  transform: translateX(-50%);
  display: block;
  width: 176px;
  height: 41px;
  margin-bottom: 0;
  line-height: 0;
  font-size: 0;
  text-indent: -9999px;
  background: url(images/logo.svg) no-repeat center;
  background-size: contain;
}
@media screen and (min-width: 25.01em) {
  .logo {
    width: 220px;
    height: 51px;
  }
}
@media screen and (min-width: 31.26em) {
  .logo {
    width: 250px;
    height: 58px;
  }
}
@media screen and (min-width: 43.76em) {
  .logo {
    width: 300px;
    height: 70px;
  }
}
@media screen and (min-width: 46.885em) {
  .logo {
    width: 176px;
    height: 41px;
  }
}
@media screen and (min-width: 50.01em) {
  .logo {
    width: 200px;
    height: 47px;
  }
}
@media screen and (min-width: 62.51em) {
  .logo {
    width: 220px;
    height: 51px;
  }
}
@media screen and (min-width: 68.76em) {
  .logo {
    top: 38px;
    width: 260px;
    height: 61px;
  }
}
@media screen and (min-width: 75.01em) {
  .logo {
    width: 280px;
    height: 65px;
  }
}
@media screen and (min-width: 81.26em) {
  .logo {
    width: 300px;
    height: 70px;
  }
}
@media screen and (min-width: 87.51em) {
  .logo {
    top: 48px;
    width: 320px;
    height: 75px;
  }
}
@media screen and (min-width: 93.76em) {
  .logo {
    width: 350px;
    height: 82px;
  }
}
@media screen and (min-width: 96.885em) {
  .logo {
    top: 58px;
    width: 374px;
    height: 87px;
  }
}

.icon-hamburger {
  position: fixed;
  top: 24px;
  right: 12px;
  z-index: 2;
  display: block;
  width: 36px;
  height: 30px;
  cursor: pointer;
  transition: all .2s ease-in-out;
}
@media screen and (min-width: 37.51em) {
  .icon-hamburger {
    right: 27px;
  }
}
@media screen and (min-width: 56.26em) {
  .icon-hamburger {
    top: 32px;
    right: 32px;
  }
}
@media screen and (min-width: 68.76em) {
  .icon-hamburger {
    top: 32px;
    right: 32px;
  }
}
@media screen and (min-width: 87.51em) {
  .icon-hamburger {
    top: 54px;
    right: 39px;
  }
}
.no-touch .icon-hamburger:hover {
  transform: scale(1.2);
}
.icon-hamburger.with-background {
  top: 21px;
  right: 11px;
  padding: 3px 1px;
  background-color: #433C32;
}
@media screen and (min-width: 37.51em) {
  .icon-hamburger.with-background {
    right: 26px;
  }
}
@media screen and (min-width: 56.26em) {
  .icon-hamburger.with-background {
    top: 29px;
    right: 31px;
  }
}
@media screen and (min-width: 87.51em) {
  .icon-hamburger.with-background {
    padding: 5px 2px;
    top: 49px;
    right: 37px;
  }
}
.menu-open .icon-hamburger.with-background {
  background-color: #F3EFEC;
}
.menu-open .icon-hamburger .icon {
  background: none;
}
.menu-open .icon-hamburger .icon:before, .menu-open .icon-hamburger .icon:after {
  background: #433C32;
}
.no-touch .menu-open .icon-hamburger:hover .icon {
  background: none;
}
.icon-hamburger .icon {
  position: relative;
  top: 14px;
  width: 20px;
  display: block;
  height: 2px;
  margin: 0 auto;
  line-height: 0;
  background: #fff;
  text-indent: -9999px;
  transition: all .2s ease-in-out;
}
@media screen and (min-width: 87.51em) {
  .icon-hamburger .icon {
    width: 24px;
  }
}
.icon-hamburger .icon:before, .icon-hamburger .icon:after {
  transition: all 0.3s ease-in-out;
  background: #fff;
  height: 2px;
  width: 100%;
  display: block;
  position: absolute;
  left: 0;
  content: "";
}
.icon-hamburger .icon:before {
  transition-property: top, transform;
  top: -8px;
}
@media screen and (min-width: 87.51em) {
  .icon-hamburger .icon:before {
    top: -11px;
  }
}
.menu-open .icon-hamburger .icon:before {
  transform: rotate(45deg);
  top: 0;
}
.icon-hamburger .icon:after {
  transition-property: bottom, transform;
  bottom: -8px;
}
@media screen and (min-width: 87.51em) {
  .icon-hamburger .icon:after {
    bottom: -11px;
  }
}
.menu-open .icon-hamburger .icon:after {
  transform: rotate(-45deg);
  bottom: 0;
}

.menu-open .menu-container {
  left: 0;
}
@media screen and (min-width: 56.26em) {
  .menu-open .menu-container {
    left: calc(100% - 350px);
  }
}

.menu-container {
  position: fixed;
  right: 0;
  left: 110%;
  top: 0;
  z-index: 2;
  display: table-cell;
  display: -webkit-flexbox;
  display: -moz-flex;
  display: flex;
  -moz-align-items: center;
  -ms-align-items: center;
  -o-align-items: center;
  align-items: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  -o-justify-content: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 40px 0;
  overflow-y: auto;
  background: url(images/background-logo.svg), #F3EFEC;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 50%;
  box-shadow: 0 0 20px #433C32;
  text-align: center;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
  transition: all 0.5s ease 0s;
}
@media screen and (min-width: 56.26em) {
  .menu-container {
    width: 350px;
    height: 350px;
  }
}
.menu-container .main-menu {
  -webkit-width: max-content;
  -moz-width: -moz-max-content;
  width: max-content;
  font-weight: bold;
  text-align: left;
}
.menu-container .main-menu li {
  position: relative;
  margin-bottom: 2em;
}
.menu-container .main-menu li:last-child {
  margin-bottom: 0;
}
.menu-container .main-menu li a {
  position: relative;
  display: block;
  padding: 0px 11px;
  font-family: "ITC Avant Garde Gothic";
  font-size: 2rem;
  line-height: 14px;
  color: #433C32;
  text-decoration: none;
  transition: font-size 0.2s ease;
}
@media screen and (min-width: 31.26em) {
  .menu-container .main-menu li a {
    font-size: 2.4rem;
    line-height: 28px;
  }
}
@media screen and (min-width: 46.885em) {
  .menu-container .main-menu li a {
    font-size: 2.8rem;
    line-height: 32px;
  }
}
@media screen and (min-width: 56.26em) {
  .menu-container .main-menu li a {
    font-size: 2rem;
    line-height: 14px;
  }
}
.no-touch .menu-container .main-menu li a:hover {
  opacity: 0.8;
}

.footer {
  padding-top: 41px;
  padding-bottom: 38px;
  color: #F3EFEC;
  text-align: center;
  background-color: #433C32;
}
@media screen and (min-width: 93.76em) {
  .footer {
    padding-bottom: 41px;
  }
}
.footer .inner {
  display: grid;
}
.footer__column-left {
  grid-column: 1/1;
  grid-row: 1/2;
}
@media screen and (min-width: 50.01em) {
  .footer__column-left {
    grid-column: 1/2;
    grid-row: 1/2;
  }
}
.footer__column-center {
  grid-column: 1/1;
  grid-row: 3/4;
}
@media screen and (min-width: 50.01em) {
  .footer__column-center {
    grid-column: 1/2;
    grid-row: 2/3;
    align-self: flex-end;
  }
}
.footer__column-right {
  grid-column: 1/1;
  grid-row: 2/3;
  margin-bottom: 33px;
}
@media screen and (min-width: 50.01em) {
  .footer__column-right {
    grid-column: 2/3;
    grid-row: 1/3;
    margin-bottom: 0;
  }
}
.footer p {
  font-size: 1.8rem;
  font-weight: 600;
  line-height: 2.3rem;
}
.footer a {
  display: block;
  margin-bottom: 20px;
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 2rem;
}
@media screen and (min-width: 50.01em) {
  .footer a {
    margin-bottom: 23px;
  }
}
@media screen and (min-width: 75.01em) {
  .footer a {
    margin-bottom: 24px;
  }
}
@media screen and (min-width: 93.76em) {
  .footer a {
    margin-bottom: 26px;
  }
}
.footer a:last-child {
  margin-bottom: 0;
}
.no-touch .footer a:hover {
  text-decoration: underline;
}
.footer p, .footer a {
  font-family: "ITC Avant Garde Gothic";
  color: #F3EFEC;
}
@media screen and (min-width: 50.01em) {
  .footer p, .footer a {
    font-size: 1.6rem;
    line-height: 2rem;
  }
}
@media screen and (min-width: 62.51em) {
  .footer p, .footer a {
    font-size: 1.7rem;
    line-height: 2.2rem;
  }
}
@media screen and (min-width: 75.01em) {
  .footer p, .footer a {
    font-size: 1.8rem;
    line-height: 2.3rem;
  }
}
@media screen and (min-width: 81.26em) {
  .footer p, .footer a {
    font-size: 1.9rem;
    line-height: 2.4rem;
  }
}
@media screen and (min-width: 93.76em) {
  .footer p, .footer a {
    font-size: 2rem;
    line-height: 2.5rem;
  }
}
.footer .text {
  font-size: 1.4rem;
  line-height: 1.8rem;
  display: none;
}
@media screen and (min-width: 50.01em) {
  .footer .text {
    display: block;
  }
}
.footer__column-left {
  margin-bottom: 33px;
}
@media screen and (min-width: 50.01em) {
  .footer__column-left {
    display: table-cell;
    display: -webkit-flexbox;
    display: -moz-flex;
    display: flex;
    -moz-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;
    -moz-justify-content: space-between;
    -ms-justify-content: space-between;
    -o-justify-content: space-between;
    justify-content: space-between;
    margin-bottom: 0;
    text-align: left;
  }
}
@media screen and (min-width: 50.01em) {
  .footer__column-left > div p {
    display: inline-block;
  }
}
@media screen and (min-width: 50.01em) {
  .footer__column-right {
    text-align: right;
  }
}
@media screen and (min-width: 50.01em) {
  .footer__column-center {
    text-align: left;
  }
}
@media screen and (min-width: 50.01em) {
  .footer__column-center .menu {
    position: relative;
    top: -1px;
    height: 20px;
  }
}
@media screen and (min-width: 75.01em) {
  .footer__column-center .menu {
    top: -2px;
  }
}
.footer__column-center li {
  display: inline-block;
}
.footer__column-center li:not(:last-child) {
  margin-right: 10px;
}
.footer__column-center li a {
  font-family: "ITC Avant Garde Gothic";
  font-size: 1.4rem;
  line-height: 2rem;
  color: #F3EFEC;
}

h2 {
  font-family: "ITC Avant Garde Gothic";
  font-size: 2.2rem;
  font-weight: 600;
  line-height: 1.28;
}
@media screen and (min-width: 25.01em) {
  h2 {
    font-size: 2.75rem;
  }
}
@media screen and (min-width: 37.51em) {
  h2 {
    font-size: 3.3rem;
  }
}
@media screen and (min-width: 50.01em) {
  h2 {
    font-size: 3.85rem;
  }
}
@media screen and (min-width: 62.51em) {
  h2 {
    font-size: 4.4rem;
  }
}
@media screen and (min-width: 75.01em) {
  h2 {
    font-size: 4.95rem;
  }
}
@media screen and (min-width: 93.76em) {
  h2 {
    font-size: 5.5rem;
  }
}

h3 {
  font-family: "Granjon";
  font-size: 3rem;
  font-weight: 300;
  line-height: 1.2;
}
@media screen and (min-width: 25.01em) {
  h3 {
    font-size: 3.75rem;
  }
}
@media screen and (min-width: 37.51em) {
  h3 {
    font-size: 4.5rem;
  }
}
@media screen and (min-width: 50.01em) {
  h3 {
    font-size: 5.25rem;
  }
}
@media screen and (min-width: 62.51em) {
  h3 {
    font-size: 6rem;
  }
}
@media screen and (min-width: 75.01em) {
  h3 {
    font-size: 6.75rem;
  }
}
@media screen and (min-width: 93.76em) {
  h3 {
    font-size: 7.5rem;
  }
}

.title-46 {
  font-family: "Granjon";
  font-size: 4.6rem;
  line-height: 4.2rem;
  font-weight: 300;
}
@media screen and (min-width: 87.51em) {
  .title-46 {
    font-size: 8.9rem;
    line-height: 7.96rem;
  }
}
.title-46 strong {
  font-family: "ITC Avant Garde Gothic";
  font-size: 3.2rem;
  line-height: 4.2rem;
}
@media screen and (min-width: 87.51em) {
  .title-46 strong {
    font-size: 6.1rem;
    line-height: 7.96rem;
  }
}
.title-46--white {
  color: #F3EFEC;
}

.no-touch a[href*="tel:"] {
  cursor: default;
  text-decoration: none;
}
.no-touch a[href*="tel:"]:hover {
  text-decoration: none;
}

* {
  -webkit-tap-highlight-color: transparent;
}

.screenreader-menu {
  position: absolute;
  top: -999px;
  left: -999px;
}

html, body {
  overflow-x: hidden;
  display: block;
  width: 100%;
  position: relative;
  color: #433C32;
  background-color: #F3EFEC;
}

html.no-touch.popup-open {
  position: relative;
  right: 9px;
}
html.no-touch.popup-open::-webkit-scrollbar {
  display: none;
}
html.no-touch.popup-open {
  -ms-overflow-style: none; /* IE and Edge */
  scrollbar-width: none; /* Firefox */
}

a {
  color: #433C32;
  text-decoration: none;
}
.no-touch a:hover {
  text-decoration: none;
}

p {
  font-family: "Granjon", "serif";
}
p strong {
  font-family: "ITC Avant Garde Gothic", "sans-serif";
}

.hide-desktop {
  display: block;
}
@media screen and (min-width: 46.885em) {
  .hide-desktop {
    display: none;
  }
}

.hide-mobile {
  display: none;
}
@media screen and (min-width: 46.885em) {
  .hide-mobile {
    display: block;
  }
}

.inner {
  max-width: 1508px;
  margin: 0 auto;
  padding: 0 20px;
}
@media screen and (min-width: 37.51em) {
  .inner {
    padding: 0 35px;
  }
}
@media screen and (min-width: 56.26em) {
  .inner {
    padding: 0 40px;
  }
}
@media screen and (min-width: 68.76em) {
  .inner {
    padding: 0 46px;
  }
}

/* Flicity styles */
.flickity-page-dots {
  bottom: 26px;
}
.flickity-page-dots .dot {
  border-radius: 0;
  width: 0.843rem;
  height: 0.87rem;
  background-color: #fff;
  opacity: 1;
}
@media screen and (min-width: 56.26em) {
  .flickity-page-dots .dot {
    width: 1.096rem;
    height: 1.13rem;
  }
}
.flickity-page-dots .dot.is-selected {
  background-color: #353028;
}

.flickity-prev-next-button {
  padding: 0;
  background: none;
}
.flickity-prev-next-button .flickity-button-icon {
  fill: #fff;
  transform: scale(2);
}
@media screen and (min-width: 68.76em) {
  .flickity-prev-next-button .flickity-button-icon {
    transform: scale(2.81);
  }
}
.flickity-prev-next-button.previous {
  left: 34px;
}
@media screen and (min-width: 56.26em) {
  .flickity-prev-next-button.previous {
    left: 38px;
  }
}
@media screen and (min-width: 68.76em) {
  .flickity-prev-next-button.previous {
    left: 54px;
  }
}
.flickity-prev-next-button.next {
  right: 34px;
}
@media screen and (min-width: 56.26em) {
  .flickity-prev-next-button.next {
    right: 38px;
  }
}
@media screen and (min-width: 68.76em) {
  .flickity-prev-next-button.next {
    right: 54px;
  }
}
.flickity-prev-next-button:hover {
  background: none;
  border: none;
}
.no-touch .flickity-prev-next-button:hover {
  opacity: 0.8;
}
.flickity-prev-next-button:focus {
  box-shadow: none;
}

/* 
==========================================================================
Main banner
========================================================================== 
*/
.main-banner {
  max-width: 2000px;
  margin: 0 auto;
}
.main-banner__image-container {
  max-height: 873px;
  position: relative;
}
.main-banner__image-container:before {
  display: block;
  content: "";
  width: 100%;
  padding-top: 164%;
}
@media screen and (min-width: 46.885em) {
  .main-banner__image-container {
    position: relative;
  }
  .main-banner__image-container:before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 54.5625%;
  }
}
.main-banner__image-container img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.main-banner__title {
  position: absolute;
  top: 192px;
  padding: 0 28px;
}
@media screen and (min-width: 46.885em) {
  .main-banner__title {
    -webkit-width: max-content;
    -moz-width: -moz-max-content;
    width: max-content;
    left: 50%;
    transform: translateX(-50%);
  }
}
.main-banner__title.title-46 {
  top: 170px;
  font-size: 4.2rem;
  line-height: 3.8rem;
}
@media screen and (min-width: 21.885em) {
  .main-banner__title.title-46 {
    top: 190px;
    font-size: 4.6rem;
    line-height: 4.2rem;
  }
}
@media screen and (min-width: 25.01em) {
  .main-banner__title.title-46 {
    top: 210px;
    font-size: 5rem;
    line-height: 4.6rem;
  }
}
@media screen and (min-width: 28.135em) {
  .main-banner__title.title-46 {
    top: 220px;
    font-size: 5.5rem;
    line-height: 5.1rem;
  }
}
@media screen and (min-width: 31.26em) {
  .main-banner__title.title-46 {
    top: 250px;
    font-size: 6rem;
    line-height: 5.6rem;
  }
}
@media screen and (min-width: 37.51em) {
  .main-banner__title.title-46 {
    top: 280px;
    font-size: 6.5rem;
    line-height: 6.1rem;
  }
}
@media screen and (min-width: 46.885em) {
  .main-banner__title.title-46 {
    top: 137px;
    font-size: 4rem;
    line-height: 3.6rem;
  }
}
@media screen and (min-width: 50.01em) {
  .main-banner__title.title-46 {
    font-size: 4.5rem;
    line-height: 4.1rem;
  }
}
@media screen and (min-width: 56.26em) {
  .main-banner__title.title-46 {
    font-size: 5rem;
    line-height: 4.6rem;
  }
}
@media screen and (min-width: 62.51em) {
  .main-banner__title.title-46 {
    top: 158px;
    font-size: 5.6rem;
    line-height: 5.2rem;
  }
}
@media screen and (min-width: 68.76em) {
  .main-banner__title.title-46 {
    top: 185px;
    font-size: 6rem;
    line-height: 5.6rem;
  }
}
@media screen and (min-width: 75.01em) {
  .main-banner__title.title-46 {
    top: 193px;
    font-size: 7rem;
    line-height: 6rem;
  }
}
@media screen and (min-width: 81.26em) {
  .main-banner__title.title-46 {
    top: 224px;
    font-size: 7.4rem;
    line-height: 6.4rem;
  }
}
@media screen and (min-width: 87.51em) {
  .main-banner__title.title-46 {
    top: 250px;
    font-size: 8rem;
    line-height: 7rem;
  }
}
@media screen and (min-width: 93.76em) {
  .main-banner__title.title-46 {
    top: 270px;
    font-size: 8.4rem;
    line-height: 7.4rem;
  }
}
@media screen and (min-width: 96.885em) {
  .main-banner__title.title-46 {
    top: 291px;
    font-size: 8.9rem;
    line-height: 7.96rem;
  }
}
.main-banner__title.title-46 strong {
  display: inline-block;
  line-height: inherit;
  font-size: 2.9rem;
  font-weight: 600;
}
@media screen and (min-width: 21.885em) {
  .main-banner__title.title-46 strong {
    font-size: 3.2rem;
  }
}
@media screen and (min-width: 25.01em) {
  .main-banner__title.title-46 strong {
    font-size: 3.5rem;
  }
}
@media screen and (min-width: 28.135em) {
  .main-banner__title.title-46 strong {
    font-size: 3.8rem;
  }
}
@media screen and (min-width: 31.26em) {
  .main-banner__title.title-46 strong {
    font-size: 4.2rem;
  }
}
@media screen and (min-width: 37.51em) {
  .main-banner__title.title-46 strong {
    font-size: 4.5rem;
  }
}
@media screen and (min-width: 46.885em) {
  .main-banner__title.title-46 strong {
    font-size: 2.7rem;
  }
}
@media screen and (min-width: 50.01em) {
  .main-banner__title.title-46 strong {
    font-size: 3.1rem;
  }
}
@media screen and (min-width: 56.26em) {
  .main-banner__title.title-46 strong {
    font-size: 3.5rem;
  }
}
@media screen and (min-width: 62.51em) {
  .main-banner__title.title-46 strong {
    font-size: 3.9rem;
  }
}
@media screen and (min-width: 68.76em) {
  .main-banner__title.title-46 strong {
    font-size: 4.2rem;
  }
}
@media screen and (min-width: 75.01em) {
  .main-banner__title.title-46 strong {
    font-size: 4.8rem;
  }
}
@media screen and (min-width: 81.26em) {
  .main-banner__title.title-46 strong {
    font-size: 5.2rem;
  }
}
@media screen and (min-width: 87.51em) {
  .main-banner__title.title-46 strong {
    font-size: 5.5rem;
  }
}
@media screen and (min-width: 93.76em) {
  .main-banner__title.title-46 strong {
    font-size: 5.8rem;
  }
}
@media screen and (min-width: 96.885em) {
  .main-banner__title.title-46 strong {
    font-size: 6.1rem;
  }
}

/* 
==========================================================================
Chi siamo 
========================================================================== 
*/
@media screen and (min-width: 46.885em) {
  .about-us {
    background-color: #F3EFEC;
    padding-bottom: 35px;
  }
}
@media screen and (min-width: 56.26em) {
  .about-us {
    padding-bottom: 40px;
  }
}
@media screen and (min-width: 68.76em) {
  .about-us {
    padding-bottom: 46px;
  }
}
@media screen and (min-width: 46.885em) {
  .about-us__blocks {
    display: table-cell;
    display: -webkit-flexbox;
    display: -moz-flex;
    display: flex;
    -o-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
.about-us__blocks .text-container, .about-us__blocks .image-container {
  position: relative;
  position: relative;
  width: 100%;
}
.about-us__blocks .text-container:before, .about-us__blocks .image-container:before {
  display: block;
  content: "";
  width: 100%;
  padding-top: 100%;
}
@media screen and (min-width: 46.885em) {
  .about-us__blocks .text-container, .about-us__blocks .image-container {
    width: 50%;
  }
}
@media screen and (min-width: 62.51em) {
  .about-us__blocks .text-container, .about-us__blocks .image-container {
    width: 32%;
  }
}
@media screen and (min-width: 100em) {
  .about-us__blocks .text-container, .about-us__blocks .image-container {
    width: 472px;
  }
}
@media screen and (min-width: 62.51em) {
  .about-us__blocks > * {
    margin-right: 2%;
  }
}
@media screen and (min-width: 100em) {
  .about-us__blocks > * {
    margin-right: 46px;
  }
}
.about-us__blocks > *:nth-child(3n+0) {
  margin-right: 0;
}
.about-us__blocks .text-container {
  -ms-align-self: flex-end;
  -o-align-self: flex-end;
  align-self: flex-end;
  height: 100%;
  padding: 20px 0;
  background: url(images/background-logo.svg) center no-repeat;
  background-size: 79%;
}
.about-us__blocks .text-container:after {
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  left: -200%;
  z-index: -1;
  height: 100%;
  width: 1000%;
  background-color: #F3EFEC;
}
@media screen and (min-width: 31.26em) {
  .about-us__blocks .text-container {
    background-size: 61%;
  }
}
@media screen and (min-width: 46.885em) {
  .about-us__blocks .text-container {
    padding: 0;
  }
  .about-us__blocks .text-container:nth-of-type(1) {
    order: 1;
  }
  .about-us__blocks .text-container:nth-of-type(2) {
    order: 4;
  }
  .about-us__blocks .text-container:nth-of-type(3) {
    order: 5;
  }
}
@media screen and (min-width: 62.51em) {
  .about-us__blocks .text-container:nth-of-type(1) {
    order: 0;
  }
  .about-us__blocks .text-container:nth-of-type(2) {
    order: 0;
  }
  .about-us__blocks .text-container:nth-of-type(3) {
    order: 0;
  }
}
.about-us__blocks .image-container {
  display: block;
  margin-bottom: 20px;
  margin-top: 20px;
}
@media screen and (min-width: 37.51em) {
  .about-us__blocks .image-container {
    margin-bottom: 35px;
    margin-top: 35px;
  }
}
@media screen and (min-width: 46.885em) {
  .about-us__blocks .image-container {
    margin-bottom: 0;
  }
  .about-us__blocks .image-container:nth-of-type(1) {
    order: 2;
  }
  .about-us__blocks .image-container:nth-of-type(2) {
    order: 3;
  }
  .about-us__blocks .image-container:nth-of-type(3) {
    order: 6;
  }
}
@media screen and (min-width: 56.26em) {
  .about-us__blocks .image-container {
    margin-top: 40px;
    margin-bottom: 0;
  }
}
@media screen and (min-width: 62.51em) {
  .about-us__blocks .image-container:nth-of-type(1) {
    order: 0;
  }
  .about-us__blocks .image-container:nth-of-type(2) {
    order: 0;
  }
  .about-us__blocks .image-container:nth-of-type(3) {
    order: 0;
  }
}
@media screen and (min-width: 68.76em) {
  .about-us__blocks .image-container {
    margin-top: 46px;
  }
}
.about-us__blocks p {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-width: max-content;
  -moz-width: -moz-max-content;
  width: max-content;
  font-family: "ITC Avant Garde Gothic";
  font-size: 1.9rem;
  font-weight: 600;
  line-height: 2.5rem;
  transform: translate(-50%, -50%);
}
@media screen and (min-width: 21.885em) {
  .about-us__blocks p {
    font-size: 2.1rem;
    line-height: 2.7rem;
  }
}
@media screen and (min-width: 31.26em) {
  .about-us__blocks p {
    font-size: 2.3rem;
    line-height: 2.9rem;
  }
}
@media screen and (min-width: 37.51em) {
  .about-us__blocks p {
    font-size: 2.5rem;
    line-height: 3.1rem;
  }
}
@media screen and (min-width: 46.885em) {
  .about-us__blocks p {
    font-size: 1.9rem;
    line-height: 2.5rem;
  }
}
@media screen and (min-width: 50.01em) {
  .about-us__blocks p {
    font-size: 2rem;
    line-height: 2.6rem;
  }
}
@media screen and (min-width: 56.26em) {
  .about-us__blocks p {
    font-size: 2.3rem;
    line-height: 2.9rem;
  }
}
@media screen and (min-width: 62.51em) {
  .about-us__blocks p {
    font-size: 1.7rem;
    line-height: 2.3rem;
  }
}
@media screen and (min-width: 68.76em) {
  .about-us__blocks p {
    font-size: 1.9rem;
    line-height: 2.5rem;
  }
}
@media screen and (min-width: 68.76em) {
  .about-us__blocks p {
    font-size: 2rem;
    line-height: 2.6rem;
  }
}
@media screen and (min-width: 75.01em) {
  .about-us__blocks p {
    font-size: 2.1rem;
    line-height: 2.7rem;
  }
}
@media screen and (min-width: 81.26em) {
  .about-us__blocks p {
    font-size: 2.2rem;
    line-height: 2.8rem;
  }
}
@media screen and (min-width: 87.51em) {
  .about-us__blocks p {
    font-size: 2.3rem;
    line-height: 2.9rem;
  }
}
.about-us__blocks img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

/* 
==========================================================================
Slider Home & Slider Product
========================================================================== 
*/
.home-slider, .popup-product-slider {
  max-width: 1600px;
  margin: 0 auto;
  box-shadow: 0 0 0 100vmax #F3EFEC;
  -webkit-clip-path: inset(0 -100vmax);
          clip-path: inset(0 -100vmax);
}
.home-slider ul, .popup-product-slider ul {
  list-style: none;
}
.home-slider__images--mobile::after, .popup-product-slider__images--mobile::after {
  content: "flickity";
  display: none;
}
@media screen and (min-width: 46.885em) {
  .home-slider__images--mobile::after, .popup-product-slider__images--mobile::after {
    content: "";
  }
}
.home-slider__images--desktop::after, .popup-product-slider__images--desktop::after {
  content: "";
}
@media screen and (min-width: 46.885em) {
  .home-slider__images--desktop::after, .popup-product-slider__images--desktop::after {
    content: "flickity";
    display: none;
  }
}
.home-slider .image-container, .popup-product-slider .image-container {
  position: relative;
  width: 100%;
  position: relative;
}
.home-slider .image-container:before, .popup-product-slider .image-container:before {
  display: block;
  content: "";
  width: 100%;
  padding-top: 100%;
}
@media screen and (min-width: 46.885em) {
  .home-slider .image-container, .popup-product-slider .image-container {
    position: relative;
  }
  .home-slider .image-container:before, .popup-product-slider .image-container:before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 52.875%;
  }
}
.home-slider .image-container img, .popup-product-slider .image-container img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

/* 
==========================================================================
Prodotti
========================================================================== 
*/
.products {
  background-color: #F3EFEC;
}
.products > .inner {
  padding: 0;
  max-width: 1600px;
}
.products h2 {
  margin: 0 auto;
}
@media screen and (min-width: 46.885em) {
  .products h2, .products h3 {
    width: -moz-max-content;
    width: max-content;
    text-align: left;
  }
}
.products__main-product, .products__list-item {
  width: 100%;
  padding: 14px 0;
  margin-bottom: 0.52rem;
  background-color: #fff;
  text-align: center;
  text-transform: lowercase;
  cursor: pointer;
}
@media screen and (min-width: 46.885em) {
  .products__main-product, .products__list-item {
    padding: 25px 0;
  }
}
.no-touch .products__main-product:hover, .no-touch .products__list-item:hover {
  color: #F3EFEC;
  background-color: #433C32;
}
.no-touch .products__main-product:hover .popup-main-product, .no-touch .products__main-product:hover .popup-product, .no-touch .products__list-item:hover .popup-main-product, .no-touch .products__list-item:hover .popup-product {
  background-color: #F3EFEC;
  color: #433C32;
  cursor: auto;
}
.products__main-product {
  text-align: center;
}
.products__list-item {
  list-style: none;
}
.products__list-item:last-child {
  margin-bottom: 0;
}

/* 
==========================================================================
Prenota
========================================================================== 
*/
.contacts {
  background-color: #F3EFEC;
  padding: 20px 0;
}
@media screen and (min-width: 37.51em) {
  .contacts {
    padding: 35px 0;
  }
}
@media screen and (min-width: 56.26em) {
  .contacts {
    padding: 40px 0;
  }
}
@media screen and (min-width: 68.76em) {
  .contacts {
    padding: 46px 0;
  }
}
@media screen and (min-width: 31.26em) {
  .contacts .inner {
    display: table-cell;
    display: -webkit-flexbox;
    display: -moz-flex;
    display: flex;
    -o-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
.no-touch .contacts a:hover p {
  text-decoration: underline;
}
.contacts__card {
  position: relative;
  display: block;
  width: 100%;
  margin-bottom: 20px;
  background-color: #433C32;
  position: relative;
}
.contacts__card:before {
  display: block;
  content: "";
  width: 100%;
  padding-top: 100%;
}
@media screen and (min-width: 31.26em) {
  .contacts__card {
    width: calc(50% - 10px);
  }
}
@media screen and (min-width: 37.51em) {
  .contacts__card {
    width: calc(50% - 17.5px);
  }
}
@media screen and (min-width: 56.26em) {
  .contacts__card {
    width: calc(50% - 20px);
  }
}
@media screen and (min-width: 62.51em) {
  .contacts__card {
    width: calc(33.3333333333% - 26.6666666667px);
  }
}
@media screen and (min-width: 68.76em) {
  .contacts__card {
    width: calc(33.3333333333% - 30.6666666667px);
  }
}
.contacts__card:last-child {
  margin-bottom: 0;
}
@media screen and (min-width: 31.26em) {
  .contacts__card:first-child {
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 37.51em) {
  .contacts__card:first-child {
    margin-bottom: 35px;
  }
}
@media screen and (min-width: 56.26em) {
  .contacts__card:first-child {
    margin-bottom: 40px;
  }
}
@media screen and (min-width: 62.51em) {
  .contacts__card:first-child {
    margin-right: 40px;
    margin-bottom: 0;
  }
}
@media screen and (min-width: 68.76em) {
  .contacts__card:first-child {
    margin-right: 46px;
  }
}
@media screen and (min-width: 31.26em) {
  .contacts__card:nth-child(2) {
    margin-right: 20px;
    margin-bottom: 0;
  }
}
@media screen and (min-width: 37.51em) {
  .contacts__card:nth-child(2) {
    margin-right: 35px;
  }
}
@media screen and (min-width: 56.26em) {
  .contacts__card:nth-child(2) {
    margin-right: 40px;
  }
}
@media screen and (min-width: 68.76em) {
  .contacts__card:nth-child(2) {
    margin-right: 46px;
  }
}
@media screen and (min-width: 31.26em) {
  .contacts__card:nth-child(1) {
    position: relative;
    width: 100%;
  }
  .contacts__card:nth-child(1):before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 33.3333333333%;
  }
}
@media screen and (min-width: 62.51em) {
  .contacts__card:nth-child(1) {
    position: relative;
    width: calc(33.3333333333% - 26.6666666667px);
  }
  .contacts__card:nth-child(1):before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 100%;
  }
}
@media screen and (min-width: 62.51em) {
  .contacts__card:nth-child(1) {
    width: calc(33.3333333333% - 30.6666666667px);
  }
}
.contacts__text {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  font-family: "ITC Avant Garde Gothic";
  font-size: 1.9rem;
  line-height: 1.21;
  font-weight: 300;
  color: #F3EFEC;
  text-align: center;
  transform: translate(-50%, -50%);
}
@media screen and (min-width: 25.01em) {
  .contacts__text {
    font-size: 2.1rem;
  }
}
@media screen and (min-width: 31.26em) {
  .contacts__text {
    font-size: 1.8rem;
  }
}
@media screen and (min-width: 37.51em) {
  .contacts__text {
    font-size: 1.9rem;
  }
}
@media screen and (min-width: 43.76em) {
  .contacts__text {
    font-size: 2.1rem;
  }
}
@media screen and (min-width: 50.01em) {
  .contacts__text {
    font-size: 2.3rem;
  }
}
@media screen and (min-width: 56.26em) {
  .contacts__text {
    font-size: 2.6rem;
  }
}
@media screen and (min-width: 62.51em) {
  .contacts__text {
    font-size: 1.9rem;
  }
}
@media screen and (min-width: 68.76em) {
  .contacts__text {
    font-size: 2.1rem;
  }
}
@media screen and (min-width: 75.01em) {
  .contacts__text {
    font-size: 2.3rem;
  }
}
@media screen and (min-width: 81.26em) {
  .contacts__text {
    font-size: 2.6rem;
  }
}
@media screen and (min-width: 87.51em) {
  .contacts__text {
    font-size: 2.8rem;
  }
}
@media screen and (min-width: 93.76em) {
  .contacts__text {
    font-size: 3rem;
  }
}
@media screen and (min-width: 96.885em) {
  .contacts__text {
    font-size: 3.2rem;
  }
}
@media screen and (min-width: 100.01em) {
  .contacts__text {
    font-size: 3.2rem;
  }
}
.contacts__text strong {
  font-weight: 600;
}

/* 
==========================================================================
Popup mian product
========================================================================== 
*/
.popup-main-product {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 100%;
  z-index: 2;
  width: 100%;
  overflow-y: scroll;
  overflow-x: hidden;
  text-align: left;
  background-color: #F3EFEC;
  transition: left 0.5s ease-in-out;
}
.products__main-product.show .popup-main-product {
  left: 0;
}
.popup-main-product:focus {
  background-color: transparent;
}
.popup-main-product .inner {
  position: relative;
  padding: 0 20px;
  padding-top: 15px;
  background-color: #fff;
}
@media screen and (min-width: 37.51em) {
  .popup-main-product .inner {
    padding: 0 35px;
    padding-top: 18px;
  }
}
@media screen and (min-width: 56.26em) {
  .popup-main-product .inner {
    padding: 0 40px;
    padding-top: 21px;
  }
}
@media screen and (min-width: 87.51em) {
  .popup-main-product .inner {
    padding: 0 46px;
    padding-top: 24px;
  }
}
@media screen and (min-width: 93.76em) {
  .popup-main-product .inner {
    padding-top: 29px;
  }
}
.popup-main-product p {
  font-size: 2.5rem;
  line-height: 1.074;
}
@media screen and (min-width: 21.885em) {
  .popup-main-product p {
    font-size: 2.7rem;
  }
}
.popup-main-product p strong {
  font-family: "ITC Avant Garde Gothic";
  font-size: 1.8rem;
  line-height: inherit;
}
@media screen and (min-width: 21.885em) {
  .popup-main-product p strong {
    font-size: 2.1rem;
  }
}
.popup-main-product h2 {
  margin-bottom: 40px;
  font-size: 2.8rem;
  line-height: 1.3;
  text-align: center;
}
@media screen and (min-width: 21.885em) {
  .popup-main-product h2 {
    font-size: 3rem;
  }
}
@media screen and (min-width: 37.51em) {
  .popup-main-product h2 {
    margin-bottom: 53px;
    font-size: 3.5rem;
  }
}
@media screen and (min-width: 56.26em) {
  .popup-main-product h2 {
    margin-bottom: 66px;
    font-size: 4rem;
  }
}
@media screen and (min-width: 87.51em) {
  .popup-main-product h2 {
    margin-bottom: 79px;
    font-size: 4.5rem;
  }
}
@media screen and (min-width: 93.76em) {
  .popup-main-product h2 {
    margin-bottom: 105px;
    font-size: 5.5rem;
  }
}
.popup-main-product .close-popup {
  position: absolute;
  top: 30px;
  right: 20px;
  height: 14px;
  width: 14px;
  background: url(images/icon-close-thick.svg) center no-repeat;
  background-size: contain;
  content: "";
  cursor: pointer;
  transition: transform 0.2s ease;
}
@media screen and (max-width: 37.5em) {
  .touch .popup-main-product .close-popup {
    top: 26px;
  }
}
@media screen and (min-width: 21.885em) {
  .popup-main-product .close-popup {
    font-size: 3rem;
  }
}
@media screen and (min-width: 37.51em) {
  .popup-main-product .close-popup {
    top: 34px;
    right: 35px;
    height: 20px;
    width: 20px;
  }
}
@media screen and (min-width: 56.26em) {
  .popup-main-product .close-popup {
    top: 39px;
    right: 40px;
    height: 22px;
    width: 22px;
    background: url(images/icon-close-thin.svg) center no-repeat;
  }
}
@media screen and (min-width: 87.51em) {
  .popup-main-product .close-popup {
    top: 44px;
    right: 46px;
    height: 24px;
    width: 24px;
  }
}
@media screen and (min-width: 93.76em) {
  .popup-main-product .close-popup {
    top: 53px;
    height: 26px;
    width: 26px;
  }
}
.no-touch .popup-main-product .close-popup:hover {
  transform: scale(1.2);
}
.popup-main-product__upper-text {
  max-width: 806px;
  margin: 0 auto;
  padding: 0 23px;
  padding-right: 21px;
}
@media screen and (min-width: 37.51em) {
  .popup-main-product__upper-text {
    padding: 0 6%;
  }
}
.popup-main-product h3 {
  width: 100%;
  margin: 0 auto;
  margin-bottom: 52px;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 4.2rem;
  line-height: 0.91;
  text-transform: none;
}
@media screen and (min-width: 21.885em) {
  .popup-main-product h3 {
    font-size: 4.6rem;
  }
}
@media screen and (min-width: 37.51em) {
  .popup-main-product h3 {
    margin-bottom: 58px;
    font-size: 5.3rem;
  }
}
@media screen and (min-width: 50.01em) {
  .popup-main-product h3 {
    margin-bottom: 64px;
    font-size: 6rem;
  }
}
@media screen and (min-width: 62.51em) {
  .popup-main-product h3 {
    margin-bottom: 70px;
    font-size: 6.7rem;
    padding: 0;
  }
}
@media screen and (min-width: 75.01em) {
  .popup-main-product h3 {
    margin-bottom: 78px;
    font-size: 7.4rem;
  }
}
@media screen and (min-width: 87.51em) {
  .popup-main-product h3 {
    margin-bottom: 84px;
    font-size: 8.2rem;
  }
}
@media screen and (min-width: 96.885em) {
  .popup-main-product h3 {
    margin-bottom: 89px;
    font-size: 8.9rem;
  }
}
.popup-main-product h3 strong {
  font-size: 3.2rem;
  line-height: inherit;
  font-family: "ITC Avant Garde Gothic";
}
@media screen and (min-width: 21.885em) {
  .popup-main-product h3 strong {
    font-size: 3.2rem;
  }
}
@media screen and (min-width: 37.51em) {
  .popup-main-product h3 strong {
    font-size: 3.6rem;
  }
}
@media screen and (min-width: 50.01em) {
  .popup-main-product h3 strong {
    font-size: 4.1rem;
  }
}
@media screen and (min-width: 62.51em) {
  .popup-main-product h3 strong {
    font-size: 4.6rem;
  }
}
@media screen and (min-width: 75.01em) {
  .popup-main-product h3 strong {
    font-size: 5.1rem;
  }
}
@media screen and (min-width: 87.51em) {
  .popup-main-product h3 strong {
    font-size: 5.7rem;
  }
}
@media screen and (min-width: 96.885em) {
  .popup-main-product h3 strong {
    font-size: 6.1rem;
  }
}
.popup-main-product__text-container {
  margin-bottom: 53px;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
  text-transform: none;
  transition: height 0.4s ease-in-out;
}
.popup-main-product__text-container p:not(:last-child) {
  margin-bottom: 20px;
}
.popup-main-product__sliding-text-container {
  display: none;
}
@media screen and (min-width: 46.885em) {
  .popup-main-product__sliding-text-container {
    display: block;
  }
}
.popup-main-product .text-container-arrow {
  width: 43px;
  height: 24px;
  margin: 0 auto;
  margin-bottom: 80px;
  background: url(images/arrow-down.svg) center no-repeat;
  background-size: contain;
  transition: all 0.3s ease-in-out;
}
@media screen and (min-width: 46.885em) {
  .popup-main-product .text-container-arrow {
    display: none;
  }
}
.popup-main-product .text-container-arrow.opened-text-container {
  transform: rotateX(180deg);
}
.popup-main-product .text-container-arrow.hide-btn {
  display: none;
}
.popup-main-product__cards {
  margin-top: 96px;
  list-style: none;
}
@media screen and (min-width: 46.885em) {
  .popup-main-product__cards {
    display: table-cell;
    display: -webkit-flexbox;
    display: -moz-flex;
    display: flex;
    -o-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
@media screen and (min-width: 56.25em) {
  .popup-main-product__cards {
    margin-top: 110px;
  }
}
@media screen and (min-width: 68.75em) {
  .popup-main-product__cards {
    margin-top: 125px;
  }
}
@media screen and (min-width: 87.5em) {
  .popup-main-product__cards {
    margin-top: 140px;
  }
}
@media screen and (min-width: 100em) {
  .popup-main-product__cards {
    max-width: 1508px;
    margin: 0 auto;
    margin-top: 157px;
  }
}
.popup-main-product__cards li {
  min-height: -moz-fit-content;
  min-height: fit-content;
}
.popup-main-product__cards > li:not(:last-child) {
  margin-bottom: 17px;
}
@media screen and (min-width: 37.51em) {
  .popup-main-product__cards > li:not(:last-child) {
    margin-bottom: 35px;
  }
}
@media screen and (min-width: 68.76em) {
  .popup-main-product__cards > li:not(:last-child) {
    margin-bottom: 40px;
  }
}
@media screen and (min-width: 87.51em) {
  .popup-main-product__cards > li:not(:last-child) {
    margin-bottom: 46px;
  }
}
@media screen and (min-width: 46.885em) {
  .popup-main-product__cards > li:last-child {
    margin-bottom: 30px;
  }
}
@media screen and (min-width: 68.76em) {
  .popup-main-product__cards > li:last-child {
    margin-bottom: 40px;
  }
}
@media screen and (min-width: 87.51em) {
  .popup-main-product__cards > li:last-child {
    margin-bottom: 46px;
  }
}
.popup-main-product__cards-item {
  min-height: 100vw;
}
@media screen and (min-width: 46.885em) {
  .popup-main-product__cards-item {
    width: calc(50% - 17.5px);
    min-height: calc(50vw - 35px - 17.5px);
  }
}
@media screen and (min-width: 68.76em) {
  .popup-main-product__cards-item {
    width: calc(33.3333333333% - 26.6666666667px);
    min-height: calc(33.3333333333vw - 26.6666666667px - 26.6666666667px);
    margin-right: 40px;
  }
}
@media screen and (min-width: 87.51em) {
  .popup-main-product__cards-item {
    width: calc(33.3333333333% - 30.6666666667px);
    min-height: calc(33.3333333333vw - 30.6666666667px - 30.6666666667px);
    margin-right: 46px;
  }
}
@media screen and (min-width: 100em) {
  .popup-main-product__cards-item {
    min-height: 472px;
  }
}
@media screen and (min-width: 46.885em) {
  .popup-main-product__cards-item:nth-child(odd) {
    margin-right: 35px;
  }
}
@media screen and (min-width: 68.76em) {
  .popup-main-product__cards-item:nth-child(odd) {
    margin-right: 40px;
  }
}
@media screen and (min-width: 87.51em) {
  .popup-main-product__cards-item:nth-child(odd) {
    margin-right: 46px;
  }
}
@media screen and (min-width: 68.76em) {
  .popup-main-product__cards-item:nth-child(3n+0) {
    margin-right: 0;
  }
}
.popup-main-product__cards-item.text {
  background-color: #F3EFEC;
  box-shadow: 0 0 0 100vmax #F3EFEC;
  -webkit-clip-path: inset(0 -100vmax);
  -moz-clip-path: inset(0 -100vmax);
  -ms-clip-path: inset(0 -100vmax);
  -o-clip-path: inset(0 -100vmax);
  clip-path: inset(0 -100vmax);
}
@media screen and (min-width: 46.885em) {
  .popup-main-product__cards-item.text {
    box-shadow: none;
  }
}
@media screen and (min-width: 100em) {
  .popup-main-product__cards-item.text {
    min-height: auto;
  }
}
.popup-main-product__cards-item.image {
  height: calc(100vw - 40px);
  min-height: auto;
}
@media screen and (min-width: 37.51em) {
  .popup-main-product__cards-item.image {
    height: calc(100vw - 70px);
  }
}
@media screen and (min-width: 46.885em) {
  .popup-main-product__cards-item.image {
    height: auto;
  }
}
@media screen and (min-width: 100em) {
  .popup-main-product__cards-item.image {
    width: 472px;
    height: 472px;
  }
}
.popup-main-product__cards-item .text-container {
  position: relative;
  height: 100%;
}
.popup-main-product__cards-item .text-container p {
  padding: 31px 11px;
}
@media screen and (min-width: 46.885em) {
  .popup-main-product__cards-item .text-container p {
    font-size: 1.9rem;
    padding: 31px;
  }
}
@media screen and (min-width: 50.01em) {
  .popup-main-product__cards-item .text-container p {
    font-size: 2.1rem;
  }
}
@media screen and (min-width: 56.26em) {
  .popup-main-product__cards-item .text-container p {
    font-size: 2.4rem;
  }
}
@media screen and (min-width: 62.51em) {
  .popup-main-product__cards-item .text-container p {
    font-size: 2.5rem;
  }
}
@media screen and (min-width: 68.76em) {
  .popup-main-product__cards-item .text-container p {
    font-size: 1.9rem;
  }
}
@media screen and (min-width: 75.01em) {
  .popup-main-product__cards-item .text-container p {
    font-size: 2.1rem;
  }
}
@media screen and (min-width: 81.26em) {
  .popup-main-product__cards-item .text-container p {
    font-size: 2.4rem;
  }
}
@media screen and (min-width: 87.51em) {
  .popup-main-product__cards-item .text-container p {
    font-size: 2.5rem;
  }
}
@media screen and (min-width: 93.76em) {
  .popup-main-product__cards-item .text-container p {
    font-size: 2.7rem;
  }
}
@media screen and (min-width: 46.885em) {
  .popup-main-product__cards-item .text-container p strong {
    font-size: 1.3rem;
  }
}
@media screen and (min-width: 50.01em) {
  .popup-main-product__cards-item .text-container p strong {
    font-size: 1.5rem;
  }
}
@media screen and (min-width: 56.26em) {
  .popup-main-product__cards-item .text-container p strong {
    font-size: 1.8rem;
  }
}
@media screen and (min-width: 62.51em) {
  .popup-main-product__cards-item .text-container p strong {
    font-size: 1.9rem;
  }
}
@media screen and (min-width: 68.76em) {
  .popup-main-product__cards-item .text-container p strong {
    font-size: 1.3rem;
  }
}
@media screen and (min-width: 75.01em) {
  .popup-main-product__cards-item .text-container p strong {
    font-size: 1.5rem;
  }
}
@media screen and (min-width: 81.26em) {
  .popup-main-product__cards-item .text-container p strong {
    font-size: 1.8rem;
  }
}
@media screen and (min-width: 87.51em) {
  .popup-main-product__cards-item .text-container p strong {
    font-size: 1.9rem;
  }
}
@media screen and (min-width: 93.76em) {
  .popup-main-product__cards-item .text-container p strong {
    font-size: 2.1rem;
  }
}
.popup-main-product__cards-item .image-container {
  display: block;
  width: 100%;
  height: 100%;
}
@media screen and (min-width: 46.885em) {
  .popup-main-product__cards-item .image-container {
    position: relative;
    position: relative;
  }
  .popup-main-product__cards-item .image-container:before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 100%;
  }
}
.popup-main-product__cards-item .image-container img {
  width: 100%;
  height: 100%;
}
@media screen and (min-width: 46.885em) {
  .popup-main-product__cards-item .image-container img {
    position: absolute;
    top: 0;
    left: 0;
    -o-object-fit: cover;
       object-fit: cover;
  }
}

/* 
==========================================================================
Popup product
========================================================================== 
*/
.popup-product {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 100%;
  z-index: 2;
  width: 100%;
  overflow-y: scroll;
  overflow-x: hidden;
  background-color: #F3EFEC;
  transition: left 0.5s ease-in-out;
}
.products__list-item.show .popup-product {
  left: 0;
}
.popup-product .popup-product-slider {
  box-shadow: none;
}
.popup-product__content {
  position: relative;
  max-width: 1600px;
  margin: 0 auto;
  background-color: #F3EFEC;
}
.popup-product__content .popup-product__title {
  width: auto;
  padding-left: 40px;
  padding-right: 40px;
  padding-top: 19px;
  padding-bottom: 16px;
  font-family: "Granjon", "serif";
  font-size: 4rem;
  font-weight: 400;
  line-height: 1.2;
  text-align: center;
  background-color: #fff;
}
@media screen and (min-width: 37.51em) {
  .popup-product__content .popup-product__title {
    padding-bottom: 17px;
    font-size: 4.8rem;
  }
}
@media screen and (min-width: 56.26em) {
  .popup-product__content .popup-product__title {
    padding-bottom: 19px;
    font-size: 5.6rem;
  }
}
@media screen and (min-width: 87.51em) {
  .popup-product__content .popup-product__title {
    font-size: 6.5rem;
  }
}
@media screen and (min-width: 93.76em) {
  .popup-product__content .popup-product__title {
    padding: 20px 0;
    font-size: 7.5rem;
  }
}
.popup-product .close-popup {
  position: absolute;
  top: 39px;
  right: 20px;
  height: 14px;
  width: 14px;
  background: url(images/icon-close-thick.svg) center no-repeat;
  background-size: contain;
  content: "";
  cursor: pointer;
  transition: transform 0.2s ease;
}
@media screen and (max-width: 37.5em) {
  .touch .popup-product .close-popup {
    top: 35px;
  }
}
@media screen and (min-width: 37.51em) {
  .popup-product .close-popup {
    top: 38px;
    right: 35px;
    height: 20px;
    width: 20px;
  }
}
@media screen and (min-width: 56.26em) {
  .popup-product .close-popup {
    top: 42px;
    right: 40px;
    height: 22px;
    width: 22px;
    background: url(images/icon-close-thin.svg) center no-repeat;
  }
}
@media screen and (min-width: 87.51em) {
  .popup-product .close-popup {
    top: 44px;
    right: 46px;
    height: 24px;
    width: 24px;
  }
}
@media screen and (min-width: 93.76em) {
  .popup-product .close-popup {
    top: 53px;
    height: 26px;
    width: 26px;
  }
}
.no-touch .popup-product .close-popup:hover {
  transform: scale(1.2);
}
.popup-product__list-items {
  display: table-cell;
  display: -webkit-flexbox;
  display: -moz-flex;
  display: flex;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 75px;
  list-style: none;
  padding-bottom: 180px;
}
@media screen and (min-width: 25.01em) {
  .popup-product__list-items {
    padding: 0 30px;
    padding-bottom: 170px;
  }
}
@media screen and (min-width: 31.26em) {
  .popup-product__list-items {
    padding: 0 55px;
    padding-bottom: 160px;
  }
}
@media screen and (min-width: 37.51em) {
  .popup-product__list-items {
    margin-top: 70px;
    padding: 0 35px;
    padding-bottom: 150px;
  }
}
@media screen and (min-width: 56.26em) {
  .popup-product__list-items {
    margin-top: 63px;
    padding: 0 40px;
    padding-bottom: 140px;
  }
}
@media screen and (min-width: 68.76em) {
  .popup-product__list-items {
    padding: 0 46px;
    padding-bottom: 132px;
  }
}
.popup-product__list-item {
  width: 100%;
  margin-bottom: 100px;
}
@media screen and (min-width: 37.51em) {
  .popup-product__list-item {
    width: 46%;
    margin-right: 8%;
    margin-bottom: 0;
  }
  .popup-product__list-item:nth-child(even) {
    margin-right: 0;
    margin-bottom: 80px;
  }
}
@media screen and (min-width: 56.26em) {
  .popup-product__list-item {
    width: 30%;
    margin-right: 5%;
  }
  .popup-product__list-item:nth-child(even) {
    margin-right: 5%;
    margin-bottom: 0;
  }
  .popup-product__list-item:nth-child(3n+0) {
    margin-right: 0;
    margin-bottom: 80px;
  }
}
@media screen and (min-width: 68.76em) {
  .popup-product__list-item:nth-child(3n+0) {
    margin-bottom: 120px;
  }
}
@media screen and (min-width: 87.51em) {
  .popup-product__list-item:nth-child(3n+0) {
    margin-bottom: 140px;
  }
}
@media screen and (min-width: 100.01em) {
  .popup-product__list-item {
    width: 472px;
    margin-right: 46px;
  }
  .popup-product__list-item:nth-child(even) {
    margin-right: 46px;
  }
  .popup-product__list-item:nth-child(3n+0) {
    margin-right: 0;
    margin-bottom: 180px;
  }
}
.popup-product__list-item:last-child {
  margin-bottom: 0;
}
.popup-product__list-item .image-container {
  position: relative;
  display: block;
  position: relative;
  margin-bottom: 38px;
}
.popup-product__list-item .image-container:before {
  display: block;
  content: "";
  width: 100%;
  padding-top: 88.7711864407%;
}
.popup-product__list-item .image-container img {
  position: absolute;
  top: 50%;
  left: 50%;
  height: 100%;
  width: 100%;
  transform: translate(-50%, -50%);
  -o-object-fit: cover;
     object-fit: cover;
}
.popup-product__list-item h4 {
  font-family: "ITC Avant Garde Gothic", "sans-serif";
  font-size: 2.1rem;
  line-height: 1.38;
  text-transform: none;
}
@media screen and (min-width: 37.51em) {
  .popup-product__list-item h4 {
    font-size: 1.8rem;
  }
}
@media screen and (min-width: 37.51em) {
  .popup-product__list-item h4 {
    font-size: 2rem;
  }
}
@media screen and (min-width: 56.26em) {
  .popup-product__list-item h4 {
    font-size: 1.7rem;
  }
}
@media screen and (min-width: 62.51em) {
  .popup-product__list-item h4 {
    font-size: 1.8rem;
  }
}
@media screen and (min-width: 68.76em) {
  .popup-product__list-item h4 {
    font-size: 1.9rem;
  }
}
@media screen and (min-width: 75.01em) {
  .popup-product__list-item h4 {
    font-size: 2rem;
  }
}
@media screen and (min-width: 81.26em) {
  .popup-product__list-item h4 {
    font-size: 2.1rem;
  }
}
.popup-product__list-item .text-container p {
  font-size: 2.8rem;
}
@media screen and (min-width: 37.51em) {
  .popup-product__list-item .text-container p {
    font-size: 2.5rem;
  }
}
@media screen and (min-width: 43.76em) {
  .popup-product__list-item .text-container p {
    font-size: 2.7rem;
  }
}
@media screen and (min-width: 56.26em) {
  .popup-product__list-item .text-container p {
    font-size: 2.4rem;
  }
}
@media screen and (min-width: 62.51em) {
  .popup-product__list-item .text-container p {
    font-size: 2.5rem;
  }
}
@media screen and (min-width: 68.76em) {
  .popup-product__list-item .text-container p {
    font-size: 2.6rem;
  }
}
@media screen and (min-width: 75.01em) {
  .popup-product__list-item .text-container p {
    font-size: 2.7rem;
  }
}
@media screen and (min-width: 81.26em) {
  .popup-product__list-item .text-container p {
    font-size: 2.8rem;
  }
}

/* ------------------------ 404 -------------------------- */
.error404 {
  position: relative;
  height: 100%;
  text-align: center;
}
.error404 .footer {
  position: absolute;
  bottom: 0;
  width: 100%;
}
.error404 h1 {
  margin-top: 144px;
  margin-bottom: 15px;
  font-family: "ITC Avant Garde Gothic", "sans-serif";
  font-size: 2.4rem;
  font-weight: 600;
  line-height: 27px;
}
@media screen and (min-width: 25.01em) {
  .error404 h1 {
    font-size: 2.9rem;
    line-height: 32px;
  }
}
@media screen and (min-width: 31.26em) {
  .error404 h1 {
    font-size: 3.6rem;
    line-height: 39px;
  }
}
@media screen and (min-width: 37.51em) {
  .error404 h1 {
    margin-top: 180px;
    font-size: 4.5rem;
    line-height: 48px;
  }
}
@media screen and (min-width: 81.26em) {
  .error404 h1 {
    margin-top: 220px;
    font-size: 4.6rem;
    line-height: 49px;
  }
}
@media screen and (min-width: 87.51em) {
  .error404 h1 {
    font-size: 4.9rem;
    line-height: 52px;
  }
}
@media screen and (min-width: 93.76em) {
  .error404 h1 {
    font-size: 5.3rem;
    line-height: 57px;
  }
}
.error404__text {
  margin-bottom: 150px;
  padding: 0 20px;
  font-family: "Granjon", "serif";
  font-size: 2.2rem;
}
.error404__text a {
  font-weight: 600;
  text-decoration: underline;
}
.no-touch .error404__text a:hover {
  text-decoration: none;
}
.error404.menu-open .icon-hamburger .icon {
  background-color: #F3EFEC;
}
.menu-open .error404 .icon-hamburger .icon {
  background: white;
}
.menu-open .error404 .icon-hamburger .icon:before, .menu-open .error404 .icon-hamburger .icon:after {
  background: #433C32;
}
.error404 .icon-hamburger .icon {
  background: #433C32;
}
.error404 .icon-hamburger .icon:before, .error404 .icon-hamburger .icon:after {
  background: #433C32;
}

/* 
==========================================================================
Pages
========================================================================== 
*/
.page .header {
  height: 120px;
}
@media screen and (min-width: 25.01em) {
  .page .header {
    height: 120px;
  }
}
@media screen and (min-width: 31.26em) {
  .page .header {
    height: 140px;
  }
}
@media screen and (min-width: 43.76em) {
  .page .header {
    height: 150px;
  }
}
@media screen and (min-width: 87.51em) {
  .page .header {
    height: 160px;
  }
}
@media screen and (min-width: 93.76em) {
  .page .header {
    height: 182px;
  }
}
@media screen and (min-width: 96.885em) {
  .page .header {
    height: 200px;
  }
}
.page .header .logo {
  background: url(images/logo-brown.svg) center no-repeat;
  background-size: contain;
}
@media screen and (min-width: 25.01em) {
  .page .header .logo {
    width: 220px;
    height: 51px;
  }
}
@media screen and (min-width: 31.26em) {
  .page .header .logo {
    width: 250px;
    height: 58px;
  }
}
@media screen and (min-width: 43.76em) {
  .page .header .logo {
    width: 300px;
    height: 70px;
  }
}
@media screen and (min-width: 87.51em) {
  .page .header .logo {
    top: 48px;
    width: 320px;
    height: 75px;
  }
}
@media screen and (min-width: 93.76em) {
  .page .header .logo {
    width: 350px;
    height: 82px;
  }
}
@media screen and (min-width: 96.885em) {
  .page .header .logo {
    top: 58px;
    width: 371px;
    height: 87px;
  }
}
.page .header .icon-hamburger .icon {
  background: #433C32;
}
.page .header .icon-hamburger .icon::after, .page .header .icon-hamburger .icon::before {
  background: #433C32;
}
.page h1 {
  margin-bottom: 25px;
  font-family: "Granjon", "serif";
  font-size: 4rem;
  font-weight: 400;
  line-height: 1.2;
  text-align: center;
}
@media screen and (min-width: 37.51em) {
  .page h1 {
    margin-bottom: 30px;
    font-size: 4.8rem;
  }
}
@media screen and (min-width: 56.26em) {
  .page h1 {
    font-size: 5.6rem;
  }
}
@media screen and (min-width: 87.51em) {
  .page h1 {
    margin-bottom: 35px;
    font-size: 6.5rem;
  }
}
@media screen and (min-width: 93.76em) {
  .page h1 {
    margin-bottom: 40px;
    font-size: 7.5rem;
  }
}
.page .content {
  max-width: 800px;
  margin: 0 auto;
  padding: 0 25px;
  padding-bottom: 60px;
}
.page .content h2, .page .content h3, .page .content h4, .page .content h5, .page .content h6 {
  font-family: "Granjon", "serif";
  font-weight: 400;
  line-height: 0.9;
}
.page .content h2 {
  font-size: 2.8rem;
  margin-bottom: 16px;
}
@media screen and (min-width: 37.51em) {
  .page .content h2 {
    font-size: 3.6rem;
  }
}
.page .content h3 {
  font-size: 2.3rem;
  margin-bottom: 15px;
}
@media screen and (min-width: 37.51em) {
  .page .content h3 {
    font-size: 3.1rem;
  }
}
.page .content p, .page .content li {
  font-family: "Granjon", "serif";
}
@media screen and (min-width: 75.01em) {
  .page .content p, .page .content li {
    font-size: 1.8rem;
  }
}
.page .content p {
  margin-bottom: 14px;
}
.page .content a {
  text-decoration: underline;
}
.no-touch .page .content a:hover {
  text-decoration: none;
}
.page .content p + h3, .page .content h2 {
  margin-top: 24px;
}
.page .content ul {
  list-style: none;
}
.page .content ul li::before {
  display: inline-block;
  margin-right: 6px;
  content: "•";
}
.page.menu-open .header .icon {
  background: none;
}

.error404 .logo {
  background: url(images/logo-brown.svg) no-repeat center;
  background-size: contain;
}/*# sourceMappingURL=style.css.map */