@import url('https://fonts.googleapis.com/css?family=Cormorant:regular,300italic&display=swap');

@import url('https://fonts.googleapis.com/css?family=Open+Sans:300,regular,500,300italic&display=swap');

@import url('https://fonts.googleapis.com/css?family=IM+Fell+Great+Primer+SC:regular&display=swap');

[class*='-ibg'] {
  position: relative;
}

[class*='-ibg'] img {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  -o-object-fit: cover;
  object-fit: cover;
}

[class*='-ibg_contain'] img {
  -o-object-fit: contain;
  object-fit: contain;
}

* {
  padding: 0px;
  margin: 0px;
  border: 0px;
}

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

html,
body {
  height: 100%;
  min-width: 320px;
}

body {
  color: #000;
  line-height: 1;
  font-family: 'Open Sans';
  font-size: 0.875rem;
  -ms-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

input,
button,
textarea {
  font-family: 'Open Sans';
  font-size: inherit;
}

button {
  cursor: pointer;
  color: inherit;
  background-color: inherit;
}

a {
  color: inherit;
}

a:link,
a:visited {
  text-decoration: none;
}

a:hover {
  text-decoration: none;
}

ul li {
  list-style: none;
}

img {
  vertical-align: top;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: inherit;
  font-size: inherit;
}

body {
  font-family: 'Open Sans';
  color: #151618;
  font-size: 1.25rem;
  font-weight: 300;
  line-height: 1.5;
}

.lock body {
  overflow: hidden;
  touch-action: none;
}

.wrapper {
  min-height: 100%;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.wrapper > main {
  flex: 1 1 auto;
}

.wrapper > * {
  min-width: 0;
}

[class*='__container'] {
  max-width: 77.5rem;
  box-sizing: content-box;
  margin: 0 auto;
  padding: 0 0.9375rem;
}

.header__container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 100px;
}

@supports (padding-bottom: clamp(0.625rem, -0.625rem 6.25vw, 4.0625rem)) {
  .header__container {
    /* padding-bottom: clamp(0.625rem, -0.625rem 6.25vw, 4.0625rem); */
  }
}

@supports not (padding-bottom: clamp(0.625rem, -0.625rem 6.25vw, 4.0625rem)) {
  .header__container {
    /* padding-bottom: calc(0.625rem + 0.0625 * (100vw - 20rem)); */
  }
}

@supports (padding-top: clamp(0.625rem, -0.625rem 6.25vw, 4.0625rem)) {
  .header__container {
    /* padding-top: clamp(0.625rem, -0.625rem 6.25vw, 4.0625rem); */
  }
}

@supports not (padding-top: clamp(0.625rem, -0.625rem 6.25vw, 4.0625rem)) {
  .header__container {
    /* padding-top: calc(0.625rem + 0.0625 * (100vw - 20rem)); */
  }
}

.header__logo {
  margin-right: 5rem;
}

.icon-menu {
  display: none;
}

.menu__items {
  display: flex;
  align-items: center;
  -moz-column-gap: 4.375rem;
  column-gap: 4.375rem;
  row-gap: 1.25rem;
  margin-left: 5.3125rem;
}

.menu__link {
  font-weight: 400;
  font-size: 1.125rem;
}

.user__actions {
  display: flex;
  align-items: center;
  -moz-column-gap: 1.25rem;
  column-gap: 1.25rem;
  row-gap: 1.25rem;
}

.user__action--search {
  margin-left: 5rem;
}

.hero {
  position: relative;
}

.hero__container {
  position: relative;
  z-index: 2;
  padding-top: 15.875rem;
  padding-bottom: 3rem;
  color: #fff;
}

.hero__title {
  font-size: 3.75rem;
  font-family: 'Cormorant';
  font-weight: 400;
  line-height: 100%;
  /* 60/60 */
  max-width: 49.375rem;
}

.hero__title:not(:last-child) {
  margin-bottom: 1.25rem;
}

.hero__sub-title {
  font-size: 1.5rem;
  font-family: 'Cormorant';
  font-weight: 400;
  max-width: 34.875rem;
}

.hero__bg {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.hero__bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.hero__bg::after {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 40%, #000000 97%);
}

.blockquote__container {
  text-align: center;
  padding-top: 9.375rem;
  padding-bottom: 9.375rem;
}

.blockquote__text {
  max-width: 44rem;
  margin: 0 auto;
  font-family: 'Cormorant', serif;
  color: #151618;
  font-size: 2.5rem;
  font-style: italic;
  font-weight: 300;
}

.assourtment {
  margin-top: 9.375rem;
  margin-bottom: 7.5rem;
}

.assourtment__title {
  color: #151618;
  font-size: 2.5rem;
  font-family: 'Cormorant', serif;
  font-weight: 400;
  text-align: center;
}

.assourtment__title:not(:last-child) {
  margin-bottom: 3.75rem;
}

.assourtment__items {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1.25rem;
  flex-wrap: wrap;
}

.assourtment__item {
  text-align: center;
}

.item-assourtment__text p {
  margin-top: 1.25rem;
  color: #151618;
  font-size: 1.5rem;
  font-family: 'Cormorant', serif;
  font-weight: 400;
}

.reviews {
  padding: 3.75rem 0;
  background-color: #f7f2ea;
}

.reviews__title {
  text-align: center;
  color: #151618;
  font-size: 2.5rem;
  font-family: 'Cormorant', serif;
  font-weight: 400;
}

.reviews__title:not(:last-child) {
  margin-bottom: 3.75rem;
}

.reviews__items {
  display: flex;
  justify-content: center;
  align-items: start;
  flex-wrap: wrap;
  gap: 1.625rem;
}

.item-reviews {
  max-width: 17.5rem;
}

.item-reviews__text {
  color: #151618;
  font-size: 1rem;
  font-style: italic;
  font-family: 'Open Sans', sans-serif;
  font-weight: 300;
}

.item-reviews__text:not(:last-child) {
  margin-bottom: 0.625rem;
}

.item-reviews__autor {
  color: #151618;
  font-size: 1.25rem;
  font-family: 'Open Sans', sans-serif;
  font-weight: 600;
}

.blog {
  padding: 9.375rem 0;
}

.blog__container {
  text-align: center;
}

.blog__title {
  text-align: center;
  color: #151618;
  font-size: 2.5rem;
  font-family: 'Cormorant', serif;
  font-weight: 400;
}

.blog__title:not(:last-child) {
  margin-bottom: 3.75rem;
}

.blog__items {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  -moz-column-gap: 3.625rem;
  column-gap: 3.625rem;
  row-gap: 2.5rem;
  margin-bottom: 3.75rem;
}

.blog__item {
  display: flex;
  justify-content: center;
  max-width: 33.875rem;
  gap: 1.25rem;
}

.blog__more-items {
  padding: 0.75rem 2.5625rem;
  border: 1px solid #151618;
  color: #151618;
  font-size: 1.25rem;
  font-family: 'Open Sans', sans-serif;
  font-weight: 300;
}

.item-blog__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.item-blog__content {
  max-height: 100%;
}

.item-blog__text {
  color: #151618;
  font-size: 1.5rem;
  font-family: 'Cormorant', serif;
  font-weight: 400;
}

.item-blog__autor {
  color: #151618;
  font-size: 0.8125rem;
  font-family: 'Open Sans', sans-serif;
  font-weight: 300;
  margin-bottom: 1.5625rem;
}

.subscribe {
  padding: 6.25rem 0;
  position: relative;
  background-color: #f7f2ea;
}

.no-webp .subscribe::after {
  background: url('../img/form/bg.jpg') 0 0 no-repeat;
}

.subscribe::after {
  content: '';
  position: absolute;
  width: 42.125rem;
  height: 26.125rem;
  top: 0;
  right: 0;
  opacity: 5%;
}

.subscribe__title {
  color: #151618;
  font-size: 2.5rem;
  font-family: 'Cormorant', serif;
  font-weight: 400;
}

.subscribe__title:not(:last-child) {
  margin-bottom: 3.125rem;
}

.subscribe__content {
  display: flex;
  justify-content: center;
  gap: 2.5rem;
  position: relative;
  z-index: 3;
  flex-wrap: wrap;
}

.subscribe__text {
  color: #151618;
  font-size: 1.25rem;
  font-family: 'Open Sans', sans-serif;
  font-weight: 300;
  line-height: 150%;
  max-width: 36.25rem;
  text-align: center;
  /* 30/20 */
}

.form-subscribe {
  max-width: 36.25rem;
}

.form-subscribe__input {
  display: flex;
  justify-content: space-between;
}

.form-subscribe__input input {
  max-width: 27.4375rem;
  width: 100%;
  background: transparent;
  border-bottom: 0.0625rem solid #000;
  margin-right: 1.5625rem;
  padding-left: 0.9375rem;
}

.form-subscribe__input input::-moz-placeholder {
  color: #b8b58b;
  font-size: 1.25rem;
  font-family: 'Open Sans', sans-serif;
  font-weight: 300;
  line-height: 150%;
  /* 30/20 */
}

.form-subscribe__input input::placeholder {
  color: #b8b58b;
  font-size: 1.25rem;
  font-family: 'Open Sans', sans-serif;
  font-weight: 300;
  line-height: 150%;
  /* 30/20 */
}

.form-subscribe__input button {
  padding: 0.75rem 2.5625rem;
  border: 0.0625rem solid #151618;
  background-color: #fff;
}

.checkbox-form-subscribe {
  display: flex;
  justify-content: center;
  align-items: start;
  gap: 0.625rem;
  margin-top: 0.9375rem;
}

.checkbox-form-subscribe__text {
  color: #151618;
  font-size: 0.8125rem;
  font-family: 'Open Sans', sans-serif;
  font-weight: 300;
}

.prioritise {
  padding-top: 9.375rem;
  padding-bottom: 9.375rem;
}

.prioritise__title {
  text-align: center;
  color: #151618;
  font-size: 2.5rem;
  font-family: 'Cormorant', serif;
  font-weight: 400;
}

.prioritise__title:not(:last-child) {
  margin-bottom: 3.75rem;
}

.prioritise__items {
  display: flex;
  justify-content: center;
  align-items: start;
  gap: 3.0625rem;
  flex-wrap: wrap;
}

.prioritise__item {
  text-align: center;
  flex: 1 0 248px;
}

.item-prioritise__title {
  color: #151618;
  font-size: 1.875rem;
  font-weight: 300;
}

.item-prioritise__title {
  margin-bottom: 40px;
  margin-top: 60px;
}

.item-prioritise__sub-title {
  color: #151618;
  font-size: 1.25rem;
  font-weight: 600;
}

.item-prioritise__sub-title:not(:last-child) {
  margin-bottom: 2.5rem;
}

.item-prioritise__img {
  text-align: center;
}

.footer {
  background-color: #f7f2ea;
  padding-top: 6.25rem;
}

.footer__content {
  display: flex;
  justify-content: space-between;
  align-items: start;
  gap: 6.25rem;
  flex-wrap: wrap;
}

.content-footer__blockquote {
  flex: 0 0 269px;
}

.content-footer__contacts {
  flex: 0 0 270px;
}

.products-content-footer__title {
  text-align: center;
  color: #151618;
  font-size: 1.5rem;
  font-family: 'Cormorant', serif;
  font-weight: 400;
}

.products-content-footer__title:not(:last-child) {
  margin-bottom: 3.125rem;
}

.item-products-content-footer__link {
  color: #151618;
  font-size: 1rem;
  font-weight: 300;
}

.item-products-content-footer__link:not(:last-child) {
  margin-bottom: 1.25rem;
}

.company-content-footer__title {
  text-align: center;
  color: #151618;
  font-size: 1.5rem;
  font-family: 'Cormorant', serif;
  font-weight: 400;
}

.company-content-footer__title:not(:last-child) {
  margin-bottom: 3.125rem;
}

.item-company-content-footer__link {
  color: #151618;
  font-size: 1rem;
  font-weight: 300;
}

.item-company-content-footer__link:not(:last-child) {
  margin-bottom: 1.25rem;
}

.blockquote-content-footer__text {
  color: #151618;
  font-size: 1rem;
  font-style: italic;
  font-weight: 300;
}

.blockquote-content-footer__text:not(:last-child) {
  margin-bottom: 1.25rem;
}

.blockquote-content-footer__autor {
  color: #151618;
  font-size: 0.75rem;
  font-weight: 300;
  max-width: 8.0625rem;
}

.contacts-content-footer__title {
  text-align: center;
  color: #151618;
  font-size: 1.5rem;
  font-family: 'Cormorant', serif;
  font-weight: 400;
}

.contacts-content-footer__title:not(:last-child) {
  margin-bottom: 3.125rem;
}

.contacts-content-footer__text {
  color: #151618;
  font-size: 0.8125rem;
  font-weight: 300;
}

.contacts-content-footer__text:not(:last-child) {
  margin-bottom: 1.25rem;
}

.contact-contacts-content-footer {
  display: flex;
  align-items: center;
  gap: 2.5rem;
}

.contact-contacts-content-footer__item {
  margin-bottom: 1.25rem;
}

.contact-contacts-content-footer:not(:last-child) {
  margin-bottom: 1.8125rem;
}

.social-contacts-content-footer__items {
  display: flex;
  align-items: center;
  justify-content: end;
  gap: 1.25rem;
}

.social-contacts-content-footer__link {
  display: flex;
  align-items: center;
}

.bottom-footer {
  padding-top: 6.25rem;
  display: flex;
  align-items: center;
}

.bottom-footer__items {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 1.25rem;
}

.item-bottom-footer__img {
  display: flex;
  align-items: center;
}

@media (min-width: 61.99875em) {
  .bottom-footer {
    -moz-column-gap: 12rem;
    column-gap: 12rem;
  }
}

@media (max-width: 124.99875em) {
  .subscribe__title {
    text-align: center;
  }

  .subscribe__text {
    max-width: 48.75rem;
  }
}

@media (max-width: 79.375em) {
  .menu {
    margin-right: auto;
  }

  .menu__items {
    margin-left: 3.75rem;
  }

  .user__action--search {
    margin-left: 1.875rem;
  }

  .blockquote__container {
    padding-top: 7.5rem;
    padding-bottom: 8.4375rem;
  }
}

@media (max-width: 61.99875em) {
  .footer__content {
    justify-content: center;
  }

  .bottom-footer {
    gap: 1.25rem;
  }
}

@media (max-width: 57.43625em) {
  .header__container {
    justify-content: flex-end;
  }

  .icon-menu {
    display: block;
    position: relative;
    width: 1.875rem;
    height: 1.125rem;
    cursor: pointer;
    z-index: 5;
    margin-right: auto;
  }

  .icon-menu span,
  .icon-menu::before,
  .icon-menu::after {
    content: '';
    transition: all 0.3s ease 0s;
    right: 0;
    position: absolute;
    width: 100%;
    height: 0.125rem;
    background-color: #000;
  }

  .icon-menu::before {
    top: 0;
  }

  .icon-menu::after {
    bottom: 0;
  }

  .icon-menu span {
    top: calc(50% - 0.0625rem);
  }

  .menu-open .icon-menu span {
    width: 0;
  }

  .menu-open .icon-menu::before {
    top: calc(50% - 0.0625rem);
    transform: rotate(-45deg);
  }

  .menu-open .icon-menu::after {
    bottom: calc(50% - 0.0625rem);
    transform: rotate(45deg);
  }

  .menu {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 165px;
    left: -100%;
    z-index: 2;
    background-color: #fff;
    transition: all 0.5s ease 0s;
  }

  @supports (top: clamp(4.375rem, 1.4204545455rem 14.7727272727vw, 12.5rem)) {
    .menu {
      top: clamp(4.375rem, 1.4204545455rem 14.7727272727vw, 12.5rem);
    }
  }

  @supports not (top: clamp(4.375rem, 1.4204545455rem 14.7727272727vw, 12.5rem)) {
    .menu {
      top: calc(4.375rem + 0.1477272727 * (100vw - 20rem));
    }
  }

  .menu-open .menu {
    left: 0;
  }

  .menu__items {
    flex-direction: column;
    height: 100%;
    margin-left: 0;
  }

  .user__action--search {
    margin-left: 0;
  }
}

@media (max-width: 47.99875em) {
  .hero__title {
    font-size: 2.5rem;
  }

  .hero__sub-title {
    font-size: 1rem;
  }

  .blockquote__container {
    padding-top: 4.375rem;
    padding-bottom: 5rem;
  }

  .blockquote__text {
    font-size: 1.875rem;
  }
}

@media (max-width: 42.31125em) {
  .blog__item {
    flex-direction: column;
  }
}

@media (max-width: 29.99875em) {
  .header__logo {
    margin-right: 3.125rem;
  }

  .hero__title {
    font-size: 1.5rem;
  }

  .hero__sub-title {
    font-size: 1rem;
  }

  .blockquote__text {
    font-size: 1.5rem;
  }
}

@media (max-width: 29.24875em) {
  .assourtment__title:not(:last-child) {
    margin-bottom: 1.5625rem;
  }

  .assourtment__title {
    font-size: 1.5625rem;
  }

  .reviews__title {
    font-size: 1.875rem;
  }
}

.webp .subscribe::after {
  background: url(../img/form/bg.webp) 0 0 no-repeat;
}

.menu__items {
  z-index: 100;
}
.menu {
  z-index: 100;
}

/* Winners Section */
.winners-section {
  padding: 6rem 0 6rem 0;
  background: #f7f2ea;
}
.winners__container {
  max-width: 77.5rem;
  margin: 0 auto;
  padding: 0 0.9375rem;
}
.winners__title {
  text-align: center;
  color: #151618;
  font-size: 2.5rem;
  font-family: 'Cormorant', serif;
  font-weight: 400;
  margin-bottom: 3.75rem;
}
.winners__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.5rem;
}
.winner-card {
  background: #fff;
  border-radius: 1.25rem;
  box-shadow: 0 2px 16px rgba(0,0,0,0.07);
  padding: 1.5rem 1rem 2rem 1rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  transition: box-shadow 0.2s;
}
.winner-card img {
  width: 100%;
  max-width: 260px;
  height: auto;
  object-fit: cover;
  border-radius: 0.75rem;
  margin-bottom: 1.25rem;
}
.winner-card__award {
  font-size: 1.1rem;
  font-weight: 600;
  color: #b08d57;
  margin-bottom: 0.5rem;
  font-family: 'Cormorant', serif;
}
.winner-card__name {
  font-size: 1.1rem;
  color: #151618;
  font-family: 'Open Sans', sans-serif;
}
@media (max-width: 991px) {
  .winners__grid {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 600px) {
  .winners__grid {
    grid-template-columns: 1fr;
  }
  .winner-card img {
    /* height: 220px; */
  }
  .winners-section {
    padding: 2.5rem 0 2.5rem 0;
  }
  .winners__title {
    font-size: 1.5rem;
    margin-bottom: 2rem;
  }
}
