@charset "utf-8";

:root {
    --tekst-vinnyy: #482a1f;
    --tekst-zelenyy: #5b611f;
    --tekst-slonovyy: #e9e3be;
    --tekst-krasnyy: #c50000;
    --osnovnye-vinnyy: #482a1f;
    --osnovnye-slonovyy: #e9e3be;
    --osnovnye-krasnyy: #c50000;
    --osnovnye-belyy-600: rgba(255, 255, 255, 0.6);
}

body {
    font-family: "Inter", sans-serif;
    font-weight: normal;
    overflow-x: hidden;
    color: #482A1F;
    background-color: #E9E3BE;
    font-size: 16px;
    line-height: 1.2;
    margin: 0;
    text-rendering: optimizeSpeed;
    min-width: 320px;
    min-height: 100vh;
    -webkit-font-smoothing: antialiased;
    -moz-font-smoothing: antialiased;
    -o-font-smoothing: antialiased;
}
html {
    scroll-behavior: smooth;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    font-family: sans-serif;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
}

a, a:active, a:focus, a:hover {
    color: var(--tekst-vinnyy);
    outline: none;
    text-decoration: none;
    cursor: pointer;
}

h1 {
    font-family: "FreeSerif", sans-serif;
    font-size: 44px;
    font-weight: normal;
    line-height: 127%;
    margin: 0 0 30px;
}
h2 {
    font-family: "FreeSerif", sans-serif;
    font-size: 50px;
    font-weight: normal;
    margin: 0 0 40px;
}


.search-block {
    display: none;
}
header {
    border-bottom: 1px solid var(--tekst-vinnyy);
}
.header__in {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    height: 104px;
}
.header__actions {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 39px;
}
.fs {
    -ms-flex-negative: 0;
        flex-shrink: 0;
}
.js-search {
    color: var(--tekst-vinnyy);
}
.js-search svg {
    -ms-flex-negative: 0;
        flex-shrink: 0;
}
.js-search {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 5px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}
.header__lang {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 9px;
}
.header__lang li a {
    font-weight: 400;
    font-size: 16px;
    color: var(--tekst-vinnyy);
}
.header__lang li a.active {
    opacity: .5;
}
.header__nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 40px;
}
.header__nav li a {
    display: inline-block;
    font-style: italic;
    font-weight: 400;
    font-size: 20px;
    color: var(--tekst-vinnyy);
    transition: .4s;
}
footer a:hover {
    color: var(--tekst-slonovyy);
    opacity: .8;
    transition: .4s;
}
.header__nav li a:hover {
    opacity: .8;
    transition: .4s;
}
.front__top {
    padding-top: 120px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    max-width: 1010px;
    margin: 0 auto 50px;
}
.front__logo img {
    max-width: 1010px;
    margin: 0 auto;
}
.front__nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 38px;
    margin-bottom: 40px;
}
.front__nav li:not(:last-child):after {
    content: '/';
    display: inline-block;
    font-style: italic;
    font-weight: 400;
    font-size: 20px;
    color: var(--tekst-vinnyy);
    margin-left: 38px;
}
.front__nav li a {
    text-transform: uppercase;
    font-style: italic;
    font-weight: 400;
    font-size: 20px;
    color: var(--tekst-vinnyy);
}
.front__logo {
    margin-bottom: 30px;
}
.front__sub {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 10px;
    font-weight: 400;
    font-size: 30px;
    text-transform: uppercase;
    color: var(--tekst-vinnyy);
    margin-bottom: 40px;
}
.front__sub span {
    display: block;
}
.front__sub span:not(:last-child):after {
    content: '|';
    display: inline-block;
    font-size: 30px;
    text-transform: uppercase;
    color: var(--tekst-vinnyy);
    margin-left: 10px;
}
.front__text {
    text-align: center;
    max-width: 690px;
}
.front-gallery img {
    width: 100%;
    height: auto;
    -o-object-fit: contain;
       object-fit: contain;
}
.front {
    overflow: hidden;
}
.front-gallery.swiper {
    overflow: visible;
}
.front-gallery .swiper-wrapper {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}
.front-gallery__more {
    text-align: center;
}
.m-120 {
    margin-bottom: 120px;
}
.m-40 {
    margin-bottom: 40px;
}
.btn {
    font-weight: 400;
    font-size: 14px;
    text-transform: uppercase;
    color: var(--tekst-vinnyy);
    height: 57px;
    line-height: 55px;
    display: inline-block;
    white-space: nowrap;
    padding: 0 35px;
    border: 1px solid var(--tekst-vinnyy);
    -webkit-transition: .4s;
    transition: .4s;
    text-align: center;
}
.btn:hover {
    color: var(--tekst-slonovyy);
    background: var(--tekst-vinnyy);
    -webkit-transition: .4s;
    transition: .4s;
}
footer {
    padding: 40px 0;
    color: var(--tekst-slonovyy);
    background: var(--tekst-vinnyy);
}
footer a {
    color: var(--tekst-slonovyy);
}
.footer__in {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
}
.footer__first-col {
    max-width: 400px;
}
.footer__logo-sub {
    width: 345px;
    margin-bottom: 37px;
}
.footer__logo {
    margin-bottom: 10px;
}
.footer__logo-sub img {
    width: 100%;
}
.footer__sub {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 10px;
    font-weight: 400;
    font-size: 20px;
    text-transform: uppercase;
    color: var(--tekst-slonovyy);
    margin-bottom: 40px;
    margin: 0 auto;
}
.footer__sub span {
    display: block;
}
.footer__sub span:not(:last-child):after {
    content: '|';
    display: inline-block;
    font-size: 20px;
    text-transform: uppercase;
    color: var(--tekst-slonovyy);
    margin-left: 10px;
}
.footer__nav li {
    margin-bottom: 5px;
}
.footer__nav {
    margin-bottom: 40px;
}
.footer__contacts li {
    margin-bottom: 5px;
}
.footer__policy a {
    display: inline-block;
    border-bottom: 1px solid;
}
.footer__policy {
    margin-top: 40px;
}
.front-cats {
    text-align: center;
}
.cat-item {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    height: 380px;
    background: #f0ebd1;
    margin-bottom: 20px;
}
.cat-item__img img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 360px;
    -o-object-fit: contain;
       object-fit: contain;
}
.cat-item__title {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    background: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    text-align: center;
    padding: 20px;
    font-weight: 600;
    font-size: 30px;
    text-align: center;
    color: var(--tekst-vinnyy);
    background: rgba(255, 255, 255, .6);
    opacity: 0;
    -webkit-transition: .4s;
    transition: .4s;
}
.cat-item:hover .cat-item__title {
    opacity: 1;
    -webkit-transition: .4s;
    transition: .4s;
}
.front-contacts {
    max-width: 940px;
    margin: 0 auto 120px;
}
.front-contacts a {
    color: var(--tekst-vinnyy);
}
.front-contacts iframe {
    width: 100% !important;
}
.front-contacts__text {
    margin-bottom: 30px;
}
.front-contacts__address {
    margin-bottom: 14px;
}
.form input {
    width: 100%;
    height: 43px;
    padding: 0 16px;
    background: transparent;
    outline: none;
    -webkit-box-shadow: none;
            box-shadow: none;
    border: 1px solid #482a1f6b;
}
.form .btn {
    width: 100%;
}
.cat-tabs {
    margin: 50px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 40px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding-bottom: 20px;
    border-bottom: 1px solid #482a1f6e;
}
.cat-tabs li a {
    display: inline-block;
    font-size: 20px;
    color: var(--tekst-vinnyy);
    opacity: .5;
}
.cat-tabs li a.active {
    opacity: 1;
}
.product-item {
    position: relative;
    margin-bottom: 60px;
}
.product-item__img {
    margin-bottom: 20px;
}
.product-item__img img {
    width: 100%;
    height: auto;
    -o-object-fit: contain;
       object-fit: contain;
}
.product-item__author a {
    font-family: "FreeSerif", sans-serif;
    font-weight: 500;
    font-size: 35px;
    color: var(--tekst-vinnyy);
}
.product-item__title a {
    font-style: italic;
    font-weight: 400;
    font-size: 16px;
    color: var(--tekst-vinnyy);
}
/* Основные стили для Masonry */
.masonry-grid {
    width: 100%;
}

/* Элемент размера сетки для 3 колонок */
.masonry-grid-sizer,
.masonry-item {
    width: calc(33.333% - 20px);
}

/* Размер промежутка между элементами */
.masonry-gutter-sizer {
    width: 30px;
}

.masonry-item {
    margin-bottom: 30px;
    /* Анимация плавного появления */
    opacity: 0;
    -webkit-transform: translateY(20px);
        -ms-transform: translateY(20px);
            transform: translateY(20px);
    -webkit-transition: opacity 0.4s ease, -webkit-transform 0.4s ease;
    transition: opacity 0.4s ease, -webkit-transform 0.4s ease;
    transition: opacity 0.4s ease, transform 0.4s ease;
    transition: opacity 0.4s ease, transform 0.4s ease, -webkit-transform 0.4s ease;
}

.masonry-item.is-visible {
    opacity: 1;
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0);
}

/* Адаптивный дизайн */
@media screen and (max-width: 992px) {
    .masonry-grid-sizer,
    .masonry-item {
        width: calc(50% - 15px);
    }
}

@media screen and (max-width: 576px) {
    .masonry-grid-sizer,
    .masonry-item {
        width: 100%;
    }
}
/* Back button */
.product__back {
    margin: 40px 0;
}

.product__back-link {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 14px;
  text-decoration: none;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}

.product__back-link svg {
  margin-right: 10px;
}

.product__back-link:hover {
  color: #666;
}

/* Product gallery */
.product__gallery {
  margin-bottom: 30px;
}

.product__main-image {
  margin-bottom: 20px;
  overflow: hidden;
}

.product__image {
  width: 100%;
  height: auto;
  display: block;
}
.product__image img {
    max-width: 100%;
    height: auto;
}

.product__thumbnails {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
}

.product__thumbnail {
  width: 60px;
  height: 60px;
  overflow: hidden;
  cursor: pointer;
  opacity: 0.7;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

.product__thumbnail:hover,
.product__thumbnail--active {
  opacity: 1;
}

.product__thumbnail-image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

/* Product details */
.product__header {
  margin-bottom: 30px;
}

/* Product meta information */
.product__meta {
  margin-bottom: 40px;
}

.product__meta-item {
  margin-bottom: 20px;
}

.product__meta-item:last-child {
  margin-bottom: 0;
}

.product__meta-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 20px;
}
.product__meta-label {
    opacity: .6;
    width: 120px;
    -ms-flex-negative: 0;
        flex-shrink: 0;
}

.product__meta-value--text p {
  margin: 0 0 10px;
}

.product__meta-value--text p:last-child {
  margin-bottom: 0;
}

/* Action buttons */
.product__actions {
    margin-left: 140px;
    margin-top: 50px;
}

/* Responsive styles */
@media (max-width: 768px) {
  .product__details {
    margin-top: 30px;
  }
}
.product__content .row {
    margin: 0 -60px;
}
.product__content .row .col-6 {
    padding: 0 60px;
}
h1.product__title {
    font-style: italic;
    font-weight: 400;
    font-size: 25px;
    margin: 0;
}
h2.product__author {
    font-family: "FreeSerif", sans-serif;
    font-size: 50px;
    margin: 0;
}
.product__meta {
    margin-top: 50px;
}
.similar h2 {
    text-align: center;
}
.panel-list li {
    margin-bottom: 12px;
}
.header__search-form {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    background-color: #E9E3BE;
    padding: 27px 0;
    z-index: 100;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.search-form__inner {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.header__search-form input[type="text"] {
    width: 100%;
    height: 50px;
    padding: 0 60px 0 20px;
    background: #E9E3BE;
    border: 1px solid var(--tekst-vinnyy);
    border-radius: 0;
    font-size: 16px;
    outline: none;
}

.header__search-form input[type="text"]:focus {
    border-color: #482A1F;
}

.header__search-form button[type="submit"] {
    position: absolute;
    right: 50px;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

.js-search-close {
    position: absolute;
    right: 20px;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

/* Animation for showing/hiding the search form */
.header__search-form.show {
    display: block !important;
    -webkit-animation: slideDown 0.3s ease forwards;
            animation: slideDown 0.3s ease forwards;
}

.header__search-form.hide {
    -webkit-animation: slideUp 0.3s ease forwards;
            animation: slideUp 0.3s ease forwards;
}

/* Search Page Styles */
.search-page-form {
    margin-bottom: 30px;
}

.search-page-form .search-form {
    width: 100%;
    position: relative;
}

.search-page-form .search-form-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
}

.search-page-form .search-field {
    width: 100%;
    height: 50px;
    padding: 0 60px 0 20px;
    border: 1px solid var(--tekst-vinnyy);
    border-radius: 0;
    font-size: 16px;
    background: transparent;
    outline: none;
    -webkit-transition: border-color 0.3s ease;
    transition: border-color 0.3s ease;
}

.search-page-form .search-field:focus {
    border-color: #482A1F;
}

.search-page-form .search-submit {
    position: absolute;
    right: 15px;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

.search-results-heading {
    margin-bottom: 25px;
}

.search-results-heading h2 {
    font-size: 20px;
    color: #333;
}

.search-results-heading span {
    font-weight: bold;
    color: #482A1F;
}

.no-results {
    text-align: center;
    padding: 40px 0;
}

.no-results p {
    margin-bottom: 10px;
    font-size: 18px;
}

.no-results .search-suggestions {
    color: #666;
    font-size: 14px;
}
.contacts-page {
    padding-top: 60px;
}

@-webkit-keyframes slideDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-10px);
                transform: translateY(-10px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
                transform: translateY(0);
    }
}

@keyframes slideDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-10px);
                transform: translateY(-10px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
                transform: translateY(0);
    }
}

@-webkit-keyframes slideUp {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
                transform: translateY(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(-10px);
                transform: translateY(-10px);
    }
}

@keyframes slideUp {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
                transform: translateY(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(-10px);
                transform: translateY(-10px);
    }
}
.front-gallery {
    opacity: 0;
    -webkit-transition: opacity 0.5s ease;
    transition: opacity 0.5s ease;
    height: 280px;
}

.front-gallery.swiper-initialized {
    opacity: 1;
    height: auto;
}
/* 33524 */

/* text block */
.content {
    min-height: calc(100vh - 672px);
    padding-bottom: 60px;
}
.block {
    margin-bottom: 80px;
}
.card h2 {
    margin-bottom: 40px;
}
.text-block table {
    width: 100%;
    border: 1px solid #dedcde;
    margin-bottom: 40px;
    caption-side: bottom;
    border-collapse: collapse;
}
.text-block table {
    width: 100%;
    border: 1px solid #dedcde;
    margin-bottom: 40px;
}
.text-block table thead tr th {
    text-transform: uppercase;
    color: #fff;
    background: #343a40;
    font-weight: 500;
    border-color: #343a40;
}
.text-block table tr td,
.text-block table tr th {
    font-weight: normal;
    padding: 12px;
    border-bottom: 1px solid #dedcde;
    border-right: 1px solid #dedcde;
    text-align: left;
    font-size: 16px;
}
.block__numb {
    color: #E08439;
    font-size: 90px;
    font-weight: 800;
    line-height: 110%;
    margin-bottom: 16px;
}
.text-block {
    color: #3D3D3D;
    font-size: 18px;
    line-height: 1.4;
}
.text-block a {
    color: #343a40;
    font-weight: bold;
}
.text-block a.btn {
    color: #fff;
}
.text-block a:hover {
    border-bottom: 1px solid;
}
.text-block h2 {
    font-size: 32px;
    text-transform: none;
    text-align: left;
    margin-bottom: 20px;
}
.text-block h3 {
    font-size: 24px;
    line-height: 1.3;
    text-transform: none;
    color: #222;
    font-weight: bold;
    margin: 0 0 20px;
}
.text-block p + h3,
.text-block ol + h3,
.text-block ul + h3 {
    margin-top: 40px;
}
.text-block p {
    margin-bottom: 20px;
}
.text-block ul li {
    padding-left: 20px;
    position: relative;
    margin-bottom: 12px;
    font-size: 18px;
}
.text-block ul ol {
    padding-left: 20px;
    position: relative;
    margin-bottom: 4px;
    font-size: 18px;
}

.text-block ol {
    padding-left: 20px;
    position: relative;
    margin-bottom: 4px;
    font-size: 18px;
    list-style-type: none; /* Remove default numbers */
    counter-reset: item; /* Reset counter */
}

.text-block ol li {
    counter-increment: item; /* Increment counter for each item */
    position: relative;
    padding-left: 36px; /* Make space for the circle */
    margin-bottom: 14px;
}

.text-block ol li:before {
    content: counter(item); /* Display the counter value */
    width: 22px;
    height: 22px;
    background-color: var(--main); /* Circle background color */
    color: white; /* Number color */
    border-radius: 50%; /* Make it circular */
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: absolute;
    left: 0px;
    top: 2px;
    font-size: 12px; /* Adjust size for the number */
}

.text-block ul li:before {
    border-radius: 50%;
    position: absolute;
    width: 5px;
    height: 5px;
    content: '';
    top: 10px;
    left: 0;
    background: var(--main);
}
.text-block ul, .text-block ol {
    padding-left: 15px;
    margin-bottom: 20px;
}
.text-block img {
    max-width: 100%;
}
.blue-bold {
    color: var(--dark-blue);
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: 30px; /* 125% */
}
.blue-bold-sm {
    color: var(--dark-blue);
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: 30px; /* 125% */
}
.about__img img {
    width: 100%;
}

/* .text block */

.modal {
    display: none; 
    -webkit-box-align: center; 
    -ms-flex-align: center; 
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: fixed; 
    z-index: 999; 
    left: 0;
    top: 0;
    width: 100%; 
    height: 100%; 
    overflow: auto; 
    background: rgba(0, 0, 0, 0.50);
    padding: 20px;
}
.modal-content {
    position: relative;
    width: 100%;
    max-width: 450px;
    max-height: 100%;
    margin: 0 auto;
    overflow-y: auto;
    background: var(--tekst-slonovyy);
    padding: 30px;
    -webkit-animation: slideIn .3s;
    animation: slideIn .3s;
    border-radius: 0;
    -webkit-box-shadow: 0px 10px 30px 0px rgba(0, 0, 0, 0.10);
    box-shadow: 0px 10px 30px 0px rgba(0, 0, 0, 0.10);
}
.modal-title {
    color: var(--tekst-vinnyy);
    font-family: "FreeSerif", sans-serif;
    font-size: 34px;
    margin: 0 0 30px;
    text-align: center;
}
.modal .form label, 
.modal .form__terms, 
.modal .form__terms a {
    color: #222;
}
.modal .form__terms {
    margin-left: 0;
}
.modal .btn-main {
    width: 100%;
}
.content {
    padding-bottom: 100px;
}
.modal .close {
    display: inline-block;
    position: absolute;
    top: 0;
    right: 0;
    width: 50px;
    height: 50px;
}
.modal .close::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
    -ms-transform: translate(-50%, -50%) rotate(45deg);
    transform: translate(-50%, -50%) rotate(45deg);
    width: 22px;
    height: 2px;
    background: #222;
}
.modal .close::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
    -ms-transform: translate(-50%, -50%) rotate(-45deg);
    transform: translate(-50%, -50%) rotate(-45deg);
    width: 22px;
    height: 2px;
    background: #222;
}
.form textarea {
    width: 100%;
    padding: 18px;
    border: 1px solid #ccc;
}
.form-group {
    margin-bottom: 12px;
}
.modal .form input[type="text"],
.modal .form input[type="email"],
.modal .form .btn_red {
    width: 100%;
}

.panel-adaptive {
    position: fixed;
    top: 65px;
    right: 0;
    left: 100%;
    bottom: 0;
    z-index: 100;
    width: 100%;
    height: 100%;
    padding-bottom: 55px;
    overflow-y: auto;
    background: var(--tekst-vinnyy);
    display: none;
    -webkit-transition: -webkit-transform .35s cubic-bezier(.55,.085,.68,.53);
    transition: -webkit-transform .35s cubic-bezier(.55,.085,.68,.53);
    transition: transform .35s cubic-bezier(.55,.085,.68,.53);
    transition: transform .35s cubic-bezier(.55,.085,.68,.53), -webkit-transform .35s cubic-bezier(.55,.085,.68,.53);
    transition: transform .35s cubic-bezier(.55,.085,.68,.53),-webkit-transform .35s cubic-bezier(.55,.085,.68,.53);
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    overflow: scroll;
    -webkit-overflow-scrolling: touch;
    -webkit-transform: translateZ(0);
}
.panel-adaptive.panel-right {
    -webkit-transform: translateX(-100%) translateZ(0);
    transform: translateX(-100%) translateZ(0);
    -webkit-transition-duration: .63s;
            transition-duration: .63s;
    -webkit-transition-timing-function: cubic-bezier(.23,1,.32,1);
            transition-timing-function: cubic-bezier(.23,1,.32,1); 
}
.panel-adaptive ul li {
    list-style: none;
    padding: 0 20px;
}
.panel-adaptive ul {
    padding-top: 40px;
}
.panel-adaptive ul li a {
    display: block;
    font-style: italic;
    font-weight: 400;
    font-size: 18px;
    color: var(--tekst-slonovyy);
}

@-webkit-keyframes slideIn {
  0% {
    opacity: .7;
    -webkit-transform: scale(0.97);
    transform: scale(0.97);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@keyframes slideIn {
  0% {
    opacity: .7;
    -webkit-transform: scale(0.97);
    transform: scale(0.97);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

.hamburger {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    cursor: pointer;
    -webkit-transition-property: opacity, -webkit-filter;
    transition-property: opacity, -webkit-filter;
    transition-property: opacity, filter;
    transition-property: opacity, filter, -webkit-filter;
    -webkit-transition-duration: 0.15s;
            transition-duration: 0.15s;
    -webkit-transition-timing-function: linear;
            transition-timing-function: linear;
    font-weight: bold;
    text-transform: uppercase;
    color: var(--purple);
    background-color: transparent;
    border: 0;
    margin: 0;
    overflow: visible; 
}
.hamburger-box {
    width: 30px;
    height: 27px;
    display: inline-block;
    position: relative;
}

.hamburger-inner {
    display: block;
    top: 50%;
    margin-top: -2px; 
}
.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
    width: 30px;
    height: 2px;
    background-color: #482A1F;
    border-radius: 4px;
    position: absolute;
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    -webkit-transition-duration: 0.15s;
            transition-duration: 0.15s;
    -webkit-transition-timing-function: ease;
            transition-timing-function: ease; 
}
.hamburger-inner::before, .hamburger-inner::after {
    content: "";
    display: block; 
}
.hamburger-inner::before {
    top: -10px; 
}
.hamburger-inner::after {
    bottom: -10px; 
}

/* Elastic Reverse */
.hamburger--elastic-r .hamburger-inner {
    top: 5px;
    -webkit-transition-duration: 0.275s;
            transition-duration: 0.275s;
    -webkit-transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
            transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55); 
}
.hamburger--elastic-r .hamburger-inner::before {
    top: 10px;
    -webkit-transition: opacity 0.125s 0.275s ease;
    transition: opacity 0.125s 0.275s ease; 
}
  .hamburger--elastic-r .hamburger-inner::after {
    top: 20px;
    -webkit-transition: -webkit-transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55);
    transition: -webkit-transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55);
    transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55);
    transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55), -webkit-transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55); 
}

.hamburger--elastic-r.is-active .hamburger-inner {
    -webkit-transform: translate3d(0, 10px, 0) rotate(-135deg);
            transform: translate3d(0, 10px, 0) rotate(-135deg);
    -webkit-transition-delay: 0.075s;
            transition-delay: 0.075s; 
}
.hamburger--elastic-r.is-active .hamburger-inner::before {
    -webkit-transition-delay: 0s;
            transition-delay: 0s;
    opacity: 0; 
}
.hamburger--elastic-r.is-active .hamburger-inner::after {
    -webkit-transform: translate3d(0, -20px, 0) rotate(270deg);
            transform: translate3d(0, -20px, 0) rotate(270deg);
    -webkit-transition-delay: 0.075s;
            transition-delay: 0.075s; 
}

.top-btn {
    position: fixed;
    font-size: 1.5em;
    width: 50px;
    height: 50px;
    padding-top: 7px;
    background-color: var(--e60002);
    color: #fff;
    border-radius: 50%;
    margin-left: 0.4em;
    cursor: pointer;
    right: 3.8%;
    bottom: 3.8%;
    z-index: 99;
    text-align: center;
    display: none;
}
.top-btn svg {
    display: inline-block;
    color: var(--black);
}

.swiper-pagination-bullet {
    opacity: .12;
    background: var(--e60002);
    width: 13px;
    height: 13px;
    vertical-align: middle;
    margin: 0 5px;
}
.swiper-pagination-bullet-active {
    opacity: 1;
    width: 13px;
    height: 13px;
    vertical-align: middle;
    -webkit-transition: .3s;
    transition: .3s;
}
.swiper-pagination-bullets.swiper-pagination-horizontal {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin: 0;
    top: 0;
    left: 0;
    bottom: inherit;
}
.swiper-pagination {
    margin-top: 40px;
    display: block;
    position: relative;
}
.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet, 
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 5px;
    vertical-align: baseline;
}
.header__menu {
    display: none;
}
.mobile-menu__right {
    margin-left: auto;
    display: none;
}
.footer__copy-mobile {
    display: none;
}
.h1__title {
    margin-top: 30px;
}
.front-gallery .swiper-wrapper {
    -webkit-transition-timing-function: linear!important;
    transition-timing-function: linear!important;
}
.modal-text {
    text-align: center;
}

@media (max-width: 991px) {
    .header__menu {
        display: block;
    }
    .panel-adaptive {
        display: block;
    }
    .product__back {
        margin: 20px 0;
    }
    body {
        padding-top: 65px;
    }
    header {
        top: 0;
        left: 0;
        right: 0;
        position: fixed;
        background: var(--tekst-slonovyy);
        z-index: 2;
    }
    .header__actions .header__lang {
        display: none;
    }
    header .header__nav {
        display: none;
    }
    .header__in {
        height: 65px;
    }
    .product__content .row .col-6 {
        padding: 0;
    }
    .product__content .row {
        margin: 0;
    }
    .footer__in {
        display: block;
    }
    .footer__first-col {
        max-width: 100%;
    }
    .footer__logo-sub {
        width: 100%;
    }
    .product__actions {
        margin: 0;
    }
    .product__actions .btn {
        width: 100%;
    }
    .btn {
        width: 100%;
    }
    h2 {
        font-size: 34px;
        margin-bottom: 12px;
    }
    h2.product__author {
        font-size: 32px;
        line-height: 1.2;
        margin-bottom: 0;
    }
    .product__meta-item {
        font-size: 14px;
    }
    .header__menu {
        width: 65px;
    }
    .header__search {
        width: 65px;
        text-align: right;
    }
    .js-search {
        font-size: 14px;
    }
    .panel-adaptive ul.header__lang {
        margin-top: 40px;
        padding: 0 20px;
    }
    .panel-adaptive ul.header__lang li {
        padding: 0;
    }
    .product__details {
        margin-top: 0;
    }
    .product__meta {
        margin-top: 30px;
    }
    .product__meta-label {
        width: 90px;
    }
    .front__nav {
        display: none;
    }
    .front__logo img {
        max-width: 100%;
    }
    .front__sub {
        font-size: 14px;
    }
    .front__text {
        width: 100%;
        font-size: 14px;
    }
    .front__top {
        padding-top: 30px;
        margin-bottom: 30px;
    }
    .front__sub span:not(:last-child):after {
        font-size: 14px;
    }
    .m-120 {
        margin-bottom: 60px;
    }
    .cat-item {
        height: 120px;
        position: relative;
        overflow: hidden;
        margin-bottom: 10px;
    }
    .cat-item__title {
        opacity: 1;
        font-size: 30px;
        color: var(--tekst-slonovyy);
        background: rgba(0, 0, 0, 0.2)
    }
    .cat-item__img img {
        max-height: 140px;
    }
    .front-contacts__text {
        font-size: 14px;
    }
    .front-contacts__list {
        margin-bottom: 14px;
    }
    .front-contacts__text-list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
    }
    .front-contacts__text-list .front-contacts__text {
        -webkit-box-ordinal-group: 2;
            -ms-flex-order: 1;
                order: 1;
    }
    .form__terms {
        font-size: 12px;
    }
    .product-item__img {
        margin-bottom: 12px;
    }
    .cat-tabs {
        margin: 25px 0;
        overflow-y: auto;
        white-space: nowrap;
    }
    .cat-tabs li a {
        font-size: 16px;
    }
    .product-item__author a {
        font-size: 24px;
    }
    .product-item__title a {
        font-size: 14px;
    }
    .footer__logo-sub {
        margin-bottom: 14px;
    }
    .footer__text {
        font-size: 14px;
        margin-bottom: 20px;
    }
    .footer__copy {
        display: none;
    }
    .footer__copy-mobile {
        display: block;
        margin-top: 10px;
        font-size: 12px;
    }
    .footer__logo-sub img {
        max-width: 80%;
        display: block;
        margin: 0 auto;
    }
    .front-contacts iframe {
        height: 380px !important;
    }
    .contacts-page {
        padding-top: 30px;
    }
    .header__search-form {
        position: fixed;
    }
}
@media (max-width: 768px) {
    
}
/* 267 */