@import url("https://fonts.googleapis.com/css2?family=Zen+Dots&display=swap");
* {
  margin: 0;
  border: 0;
  padding: 0;
}

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

:focus,
:active {
  outline: none;
}

a:focus,
a:active {
  outline: none;
}

nav,
footer,
header,
aside {
  display: block;
}

html,
body {
  width: 100%;
  height: 100%;
  -webkit-text-size-adjust: 100%;
     -moz-text-size-adjust: 100%;
          text-size-adjust: 100%;
  font-size: 16px;
  scroll-behavior: smooth;
}

input,
button,
textarea {
  font-family: inherit;
}

input::-ms-clear {
  display: none;
}

button {
  cursor: pointer;
  background: transparent;
}

button::-moz-focus-inner {
  border: 0;
  padding: 0;
}

a,
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: "Zen Dots", sans-serif;
}

.lock {
  overflow: hidden;
}

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

[class*=__container] {
  max-width: 1230px;
  width: 100%;
  margin: 0 auto;
  padding: 0 15px;
}

[class*=__text] {
  color: #101010;
  font-size: 14px;
  font-weight: 400;
}

.main {
  flex: 1 1 auto;
}

section {
  scroll-margin-top: 100px;
}

.h2 {
  color: #FFF;
  font-size: clamp(34px, 7vw, 70px);
  font-weight: 400;
  text-transform: uppercase;
}
.h2_red {
  color: #CA2A37;
}

[class*=__text] {
  color: #101010;
  font-size: 14px;
  font-weight: 400;
}

.btn {
  color: #CA2A37;
  text-align: center;
  font-size: 14px;
  font-weight: 400;
  border-radius: 3px;
  border: 1px solid #CA2A37;
  background: #FFF;
  padding: 18px 30px;
  display: block;
}

.header {
  position: fixed;
  width: 100%;
  z-index: 60;
  background: #C8C8C8;
}
.header__content {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 20px 0;
}
@media (max-width: 575px) {
  .header__content {
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
  }
}
.header__logo {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #CA2A37;
  font-size: 24px;
  font-weight: 400;
  text-transform: uppercase;
}
.header__menu {
  display: flex;
  align-items: center;
  gap: 30px;
}
.header__menu a {
  color: #101010;
  font-size: 15px;
  font-weight: 400;
}

.footer {
  background: #C8C8C8;
  padding: 80px 0 20px;
}
.footer__content {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.footer__menu {
  display: flex;
  align-items: center;
  gap: 30px;
  flex-wrap: wrap;
}
.footer__menu a {
  color: #101010;
  font-size: 15px;
  font-weight: 400;
}
.footer__social {
  display: flex;
  align-items: center;
  gap: 20px;
}
.footer__address {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.footer__address p,
.footer__address a {
  color: #CA2A37;
  font-size: 15px;
  font-weight: 400;
}
.footer__txt {
  color: rgba(16, 16, 16, 0.5);
  font-size: 15px;
  font-weight: 400;
}

.cookies {
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 1000;
  padding: 20px;
  max-width: 500px;
  width: 100%;
  border-radius: 10px;
  background: #FFF;
}
.cookies__content {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.cookies__column {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.cookies__title {
  color: #CA2A37;
  font-size: 22px;
  font-weight: 400;
}
.cookies__btns {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.cookies__btn {
  border-radius: 3px;
  background: #CA2A37;
  color: #FFF;
  text-align: center;
  font-size: 14px;
  font-weight: 400;
  padding: 18px 0;
  width: 100%;
}
.cookies__btn_sub {
  color: #CA2A37;
  border-radius: 3px;
  border: 1px solid #CA2A37;
  background: #fff;
}

.hero {
  margin: 70px 0 0;
  background: #CA2A37;
  position: relative;
  z-index: 2;
}
@media (max-width: 575px) {
  .hero {
    margin: 108px 0 0;
  }
}
.hero__content {
  max-width: 871px;
  margin-left: auto;
  padding: 30px 0 60px;
}
@media (max-width: 767px) {
  .hero__content {
    display: flex;
    flex-direction: column;
    gap: 30px;
    padding: 100px 0 0;
  }
}
.hero__colunm {
  display: flex;
  flex-direction: column;
  gap: 142px;
}
@media (max-width: 767px) {
  .hero__colunm {
    gap: 30px;
  }
}
.hero__title {
  color: #FFF;
  font-size: clamp(40px, 9vw, 90px);
  font-weight: 400;
  text-transform: uppercase;
}
.hero__row {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
@media (max-width: 767px) {
  .hero__row {
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
  }
}
.hero__text {
  color: #FFF;
  text-align: justify;
  font-size: 14px;
  font-weight: 400;
  text-transform: uppercase;
  max-width: 287px;
}
.hero__link {
  color: #CA2A37;
  text-align: justify;
  font-size: 14px;
  font-weight: 400;
  border-radius: 3px;
  background: #FFF;
  padding: 26px 60px;
}
@media (max-width: 767px) {
  .hero__link {
    width: 100%;
    text-align: center;
    padding: 26px 0;
  }
}
.hero__img {
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: -1;
}
@media (max-width: 767px) {
  .hero__img {
    position: static;
    margin-left: -15px;
    width: -moz-fit-content;
    width: fit-content;
  }
  .hero__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}
.hero__subimg {
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1;
}
@media (max-width: 767px) {
  .hero__subimg {
    width: 110px;
  }
  .hero__subimg img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}

.about {
  margin: 80px 0;
  position: relative;
  z-index: 2;
}
.about__content {
  display: flex;
  gap: 20px;
}
@media (max-width: 991px) {
  .about__content {
    flex-direction: column;
    gap: 30px;
  }
}
.about__column {
  display: flex;
  flex-direction: column;
  gap: 30px;
  max-width: 500px;
  width: 100%;
}
@media (max-width: 991px) {
  .about__column {
    max-width: 100%;
  }
}
.about__text {
  max-width: 387px;
  width: 100%;
  text-align: justify;
}
@media (max-width: 991px) {
  .about__text {
    max-width: 100%;
  }
}
@media (max-width: 991px) {
  .about__img {
    width: -moz-fit-content;
    width: fit-content;
  }
  .about__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}
.about__subcolumn {
  display: flex;
  flex-direction: column;
}
@media (max-width: 991px) {
  .about__subcolumn {
    gap: 20px;
  }
}
.about__txt {
  color: #101010;
  text-align: justify;
  font-size: 14px;
  font-weight: 400;
  text-transform: uppercase;
  max-width: 275px;
  width: 100%;
  margin-top: auto;
  margin-bottom: 108px;
}
@media (max-width: 991px) {
  .about__txt {
    max-width: 100%;
    margin: 0;
  }
}
.about__icon {
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1;
}
@media (max-width: 991px) {
  .about__icon {
    position: static;
    width: -moz-fit-content;
    width: fit-content;
    margin-left: auto;
    margin-right: -15px;
  }
  .about__icon img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}

.reviews {
  margin: 80px 0;
  position: relative;
  z-index: 2;
}
@media (max-width: 575px) {
  .reviews__content {
    display: flex;
    flex-direction: column;
    gap: 30px;
  }
}
.reviews__img {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
@media (max-width: 575px) {
  .reviews__img {
    position: static;
    margin-left: -15px;
    width: -moz-fit-content;
    width: fit-content;
  }
  .reviews__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}
.reviews__column {
  max-width: 795px;
  margin-left: auto;
  display: flex;
  flex-direction: column;
  gap: 30px;
}
.reviews__row {
  display: flex;
  gap: 20px;
}
@media (max-width: 575px) {
  .reviews__row {
    flex-direction: column;
  }
}
.reviews__row_sub {
  margin-left: auto;
}
.reviews__card {
  padding: 20px;
  max-width: 285px;
  background: #FFF;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.reviews__name {
  color: #CA2A37;
  font-size: 20px;
  font-weight: 400;
  text-transform: uppercase;
}

.info {
  padding: 60px 0;
  background: #CA2A37;
  position: relative;
  z-index: 2;
}
.info__column {
  display: flex;
  flex-direction: column;
  gap: 30px;
  max-width: 875px;
}
.info__text {
  color: #FFF;
}
.info__address {
  padding: 20px;
  background: #FFF;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.info__address p,
.info__address a {
  color: #CA2A37;
  font-size: 20px;
  font-weight: 400;
}
.info__img {
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: -1;
  width: -moz-fit-content;
  width: fit-content;
}
.info__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.info__img img:last-child {
  display: none;
}
@media (max-width: 991px) {
  .info__img img:first-child {
    display: none;
  }
  .info__img img:last-child {
    display: block;
  }
}
@media (max-width: 991px) {
  .info__img {
    bottom: auto;
    top: 0;
  }
}

.catalog {
  margin: 70px 0 0;
  padding: 60px 0;
  background: #CA2A37;
  position: relative;
  z-index: 2;
}
.catalog_main {
  margin: 0;
}
@media (max-width: 575px) {
  .catalog {
    margin: 108px 0 0;
  }
}
.catalog__content {
  display: flex;
  flex-direction: column;
  gap: 30px;
}
.catalog__row {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}
@media (max-width: 991px) {
  .catalog__row {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 575px) {
  .catalog__row {
    grid-template-columns: repeat(1, 1fr);
  }
}
.catalog__card {
  border: 1px solid #FFF;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.catalog__img {
  padding: 20px;
  width: -moz-fit-content;
  width: fit-content;
}
.catalog__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.catalog__body {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 20px;
  background: #FFF;
  gap: 15px;
  height: 100%;
}
.catalog__item {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.catalog__name {
  color: #CA2A37;
  font-size: 20px;
  font-weight: 400;
  text-transform: uppercase;
}
.catalog__column {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.catalog__price {
  color: #CA2A37;
  font-size: 20px;
  font-weight: 400;
  text-transform: uppercase;
}
.catalog__icon {
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1;
}
@media (max-width: 575px) {
  .catalog__icon {
    width: 50%;
  }
  .catalog__icon img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}

.product {
  margin: 70px 0 0;
  padding: 60px 0;
  background: #CA2A37;
  position: relative;
  z-index: 2;
}
@media (max-width: 575px) {
  .product {
    margin: 108px 0 0;
  }
}
.product__content {
  display: flex;
  flex-direction: column;
  gap: 30px;
  max-width: 950px;
  width: 100%;
}
.product__card {
  display: flex;
  border: 1px solid #FFF;
}
@media (max-width: 767px) {
  .product__card {
    flex-direction: column;
  }
}
.product__img {
  padding: 20px;
}
.product__body {
  display: flex;
  flex-direction: column;
  gap: 15px;
  background: #FFF;
  padding: 20px;
}
.product__column {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.product__link {
  width: -moz-fit-content;
  width: fit-content;
}
.product__icon {
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: -1;
}
.product__icon img:last-child {
  display: none;
}
@media (max-width: 767px) {
  .product__icon img:first-child {
    display: none;
  }
  .product__icon img:last-child {
    display: block;
  }
}
@media (max-width: 767px) {
  .product__icon {
    bottom: auto;
    top: 0;
    width: -moz-fit-content;
    width: fit-content;
  }
  .product__icon img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}

.privacy {
  margin: 70px 0 0;
  padding: 30px 0 0;
}
@media (max-width: 575px) {
  .privacy {
    margin: 108px 0 0;
  }
}