:root {
    --bs-body-color: #000;
    --bs-light2: #e8e9ea;
    --bs-light3: #d8d9da;
    --bs-primary: #e4c68b;
    --bs-primary-alt: #d4b67b;
    --bs-primary-rgb: 228, 198, 139;
    --bs-link-color: #c4a66b;
    --bs-link-color-rgb: 208, 168, 109;
    --bs-link-decoration: none;
    --bs-link-hover-color: #d4b67b;
    --bs-link-hover-color-rgb: 228, 198, 139;
    --submenu-pos: 63px;
}

html {
    font-size: 14px;
}

body {
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    max-width: 1920px;
    box-shadow: 0 0 0 10px rgba(245, 246, 248);
    margin: 0 auto;
    min-height: 100vh;
}

.bg-img {
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat;
}

.bg-img.contain {
    background-size: contain;
}

.product-interior-hero-image {
    object-fit: cover;
}

.product-interior-hero-overlay {
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0), rgba(0, 0, 0, .3), rgba(0, 0, 0, .8));
}

@media (max-width: 767.98px) {
    .product-interior-hero-container {
        padding-right: 0;
        padding-left: 0;
    }
}

.showroom-offers-banner-image {
    right: 0;
    bottom: 0;
    width: auto;
    max-width: none;
    height: 50%;
    mix-blend-mode: multiply;
    pointer-events: none;
}

.showroom-offers-banner-content {
    z-index: 1;
}

@media (min-width: 992px) {
    .showroom-offers-banner-image {
        top: 0;
        bottom: auto;
        height: 100%;
    }
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 400;
}

.btn-primary {
    --bs-btn-color: #fff;
    --bs-btn-bg: var(--bs-primary-alt);
    --bs-btn-border-color: var(--bs-primary-alt);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--bs-primary);
    --bs-btn-hover-border-color: var(--bs-primary);
    --bs-btn-focus-shadow-rgb: var(--bs-primary-rgb);
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--bs-primary);
    --bs-btn-active-border-color: var(--bs-primary);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #eee;
    --bs-btn-disabled-border-color: #eee;
}

a {
    text-decoration: none;
}

.fw-700 {
    font-weight: 700;
}

.fw-600 {
    font-weight: 600;
}

.fw-500 {
    font-weight: 500;
}

.fw-400 {
    font-weight: 400;
}

.fw-300 {
    font-weight: 300;
}

.z-5 {
    z-index: 5;
}

.z-10 {
    z-index: 10;
}

.bg-light2 {
    background-color: var(--bs-light2);
}

.bg-light3 {
    background-color: var(--bs-light3);
}

@media (min-width: 1600px) {
    .container {
        max-width: 1540px;
    }
}

@media (min-width: 1800px) {
    .container {
        max-width: 1740px;
    }
}

@media (min-width: 992px) {
    .ratio-lg-16x9 {
        --bs-aspect-ratio: 52.25%;
    }
}

#backToTop.hide {
    visibility: hidden;
    pointer-events: none;
    opacity: 0;
}

#backToTop {
    opacity: 1;
    transition: all .5s;
}

.price-editor-table tbody tr {
    transition: background-color .25s;
}

.price-editor-table tbody tr.price-editor-row-saving {
    --bs-table-bg: #f8f9fa;
    opacity: .72;
}

.price-editor-table tbody tr.price-editor-row-success {
    --bs-table-bg: #eef8ef;
}

.price-editor-table tbody tr.price-editor-row-error {
    --bs-table-bg: #fbeeee;
}

.price-editor-table .form-control {
    min-width: 120px;
}

@media (min-width: 1600px) {
    .row-cols-xxxl-3>* {
        flex: 0 0 auto;
        width: 33.33333333%;
    }
}

/* HEADER */
header {
    backdrop-filter: blur(10px);
    background-color: rgba(255, 255, 255, .75);
    z-index: 100;
}

body.customize-support header {
    top: 32px;
}

@media (max-width: 767px) {

    body.customize-support header {
        top: 46px;
    }

}

header .logo {
    max-width: 120px;
}

@media (min-width: 992px) {
    header .logo {
        max-width: 130px;
    }
}

@media (min-width: 1200px) {
    header .logo {
        max-width: 150px;
    }
}

@media (min-width: 1400px) {
    header .logo {
        max-width: 170px;
    }
}

#mainMenu>li {
    height: 63px;
    display: flex;
    align-items: center;
    padding: .75rem;
}

.greatSubMenu {
    position: absolute;
    top: 63px;
    left: 0;
    width: 100%;
    visibility: hidden;
    pointer-events: none;
    opacity: 0;
    transform: translateY(-8px);
    transition: opacity .2s ease, transform .2s ease, visibility .2s ease;
}

.catalog-menu-item:hover>.greatSubMenu,
.catalog-menu-item:focus-within>.greatSubMenu {
    visibility: visible;
    pointer-events: auto;
    opacity: 1;
    transform: translateY(0);
}

#mainMenu a,
#mainMenu span,
#mainMenu button,
#ocMenu a,
#ocMenu span {
    color: #111213;
    cursor: pointer;
}

#ocMenu>li {
    margin-bottom: .25rem;
}

#mainMenu a:hover,
#mainMenu span:hover,
#mainMenu button:hover,
#ocMenu a:hover,
#ocMenu span:hover,
#mainMenu li:hover>a,
#mainMenu li:hover>span,
#mainMenu li:hover>button {
    color: #b4965b;
}

.catalog-menu-chevron {
    transition: transform .2s ease;
}

.catalog-menu-item:hover>.catalog-menu-toggle .catalog-menu-chevron,
.catalog-menu-item:focus-within>.catalog-menu-toggle .catalog-menu-chevron,
[aria-expanded="true"]>.catalog-menu-chevron {
    transform: rotate(180deg);
}

.mega-menu-primary-link .bi-arrow-right {
    transition: transform .2s ease;
}

.mega-menu-primary-link:hover .bi-arrow-right,
.mega-menu-primary-link:focus .bi-arrow-right {
    transform: translateX(.25rem);
}

.catalog-search-offcanvas {
    --bs-offcanvas-height: min(85vh, 780px);
}

.catalog-search-offcanvas .offcanvas-body {
    overscroll-behavior: contain;
}

.catalog-search-form .input-group-text,
.catalog-search-form .form-control {
    border-color: var(--bs-gray-400);
}

.catalog-search-form .form-control:focus {
    border-color: var(--bs-gray-400);
    box-shadow: none;
}


/* FOOTER */
.site-footer-logo {
    filter: brightness(0) invert(1);
    width: 190px;
}

.site-footer-lead {
    max-width: 300px;
}

.site-footer-title {
    letter-spacing: .08rem;
}

.site-footer-social-link {
    height: 40px;
    width: 40px;
}

.rnx-icon-vk {
    background-color: currentColor;
    display: block;
    height: 1em;
    width: 1em;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 1000'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M-7.92 488.1c0-226.45 0-339.57 70.28-409.83C132.63 8.01 245.8 8 472.18 8h40.02c226.25 0 339.37 0 409.63 70.25 70.26 70.26 70.07 183.46 70.07 409.85v40.01c0 226.25 0 339.38-70.26 409.64C851.39 1008 738.2 1008 512.01 1008h-39.83c-226.25 0-339.38 0-409.64-70.25C-7.71 867.49-7.92 754.1-7.92 528.11V488.1zm532.02 240.2c-227.84 0-357.82-156.24-363.27-416.2l114.11.02c3.75 190.8 87.91 271.62 154.54 288.27V312.12h107.48v164.54c65.81-7.11 135.03-82.07 158.28-164.54h107.47c-17.78 86.42-70.8 161.67-146.24 207.43 84.27 41.81 146.66 117.87 171.23 208.67l-118.27.04c-22.3-79.82-90.31-138.45-172.49-148.76v148.74l-12.84.06z'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 1000'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M-7.92 488.1c0-226.45 0-339.57 70.28-409.83C132.63 8.01 245.8 8 472.18 8h40.02c226.25 0 339.37 0 409.63 70.25 70.26 70.26 70.07 183.46 70.07 409.85v40.01c0 226.25 0 339.38-70.26 409.64C851.39 1008 738.2 1008 512.01 1008h-39.83c-226.25 0-339.38 0-409.64-70.25C-7.71 867.49-7.92 754.1-7.92 528.11V488.1zm532.02 240.2c-227.84 0-357.82-156.24-363.27-416.2l114.11.02c3.75 190.8 87.91 271.62 154.54 288.27V312.12h107.48v164.54c65.81-7.11 135.03-82.07 158.28-164.54h107.47c-17.78 86.42-70.8 161.67-146.24 207.43 84.27 41.81 146.66 117.87 171.23 208.67l-118.27.04c-22.3-79.82-90.31-138.45-172.49-148.76v148.74l-12.84.06z'/%3E%3C/svg%3E") center / contain no-repeat;
}

.site-footer-categories li {
    break-inside: avoid;
}

@media (min-width: 768px) {
    .site-footer-categories {
        columns: 2;
        column-gap: 2rem;
    }
}

/* OTHER */
.bg-dark-grad {
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, .3), rgba(0, 0, 0, .8));
}

.cat-overlay {
    background-color: var(--bs-primary);
    opacity: 0;
    width: 0%;
    height: 100%;
    transition: all 1s ease-out;
}

.cat-card:hover .cat-overlay {
    width: 100%;
    opacity: 1;
}

.link-animated-arrow {
    position: absolute;
    top: 50%;
    left: 100%;
    transform: translate(.75rem, -50%);
    transition: all 1s ease-out;
}

@media (max-width: 991px) {
    .cat-card .fs-4 {
        font-size: 1.25rem !important;
    }

    .cat-card .text-muted.small {
        font-size: .75rem !important;
    }
}


.cat-card:hover .link-animated-arrow {
    position: absolute;
    top: 50%;
    left: 100%;
    transform: translate(2rem, -50%);
}

/* ABOUT */
.about-hero {
    background-color: #f3f3f1;
}

.about-kicker {
    color: #9a7839;
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .12rem;
}

.about-media-placeholder {
    aspect-ratio: 4 / 3;
    background-color: #d5d6d4;
    color: rgba(0, 0, 0, .2);
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 260px;
    overflow: hidden;
}

.about-media-placeholder-hero {
    aspect-ratio: 16 / 10;
}

.about-media-placeholder .bi-image {
    font-size: clamp(3rem, 7vw, 6rem);
}

.about-facts {
    border-top: 1px solid rgba(0, 0, 0, .15);
}

.about-fact {
    border-bottom: 1px solid rgba(0, 0, 0, .15);
}

.about-feature {
    border-top: 1px solid rgba(0, 0, 0, .18);
    padding: 2rem 0;
}

.about-feature-icon {
    color: #a98747;
    font-size: 2.5rem;
}

.about-contact-list i {
    color: #a98747;
    flex: 0 0 auto;
}

.about-order {
    background-color: #20211f;
}

.about-order .about-kicker,
.about-step-number {
    color: var(--bs-primary);
}

.about-order-intro {
    color: rgba(255, 255, 255, .7);
}

.about-step {
    border-top: 1px solid rgba(255, 255, 255, .25);
}

.about-step-number {
    font-size: .75rem;
    font-weight: 700;
}

.about-audience h3 {
    line-height: 1.45;
}

.about-cta {
    background-color: var(--bs-primary);
}

/* SHOWROOM OFFERS */
.showroom-hero {
    background-color: #f3f3f1;
}

.showroom-hero-image {
    aspect-ratio: 3 / 2;
    object-fit: cover;
}

.showroom-offer-badge {
    z-index: 1;
}

.showroom-special-price {
    color: var(--bs-dark);
}

.showroom-empty {
    border-bottom: 1px solid rgba(0, 0, 0, .15);
    border-top: 1px solid rgba(0, 0, 0, .15);
}

.showroom-empty-icon {
    color: #a98747;
    font-size: 2.5rem;
}

.showroom-contact {
    background-color: #20211f;
}

.showroom-contact .about-kicker {
    color: var(--bs-primary);
}

/* 3D MODELS FOR DESIGNERS */
.models3d-hero,
.models3d-request {
    background-color: #f3f3f1;
}

.models3d-hero-media {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(10, minmax(24px, 1fr));
    min-height: 430px;
}

.models3d-hero-image {
    background-color: #292929;
    height: 100%;
    object-fit: contain;
    width: 100%;
}

.models3d-hero-image-main {
    grid-column: 1 / 11;
    grid-row: 1 / 9;
}

.models3d-hero-image-detail {
    border: 8px solid #f3f3f1;
    grid-column: 6 / 13;
    grid-row: 6 / 11;
}

.models3d-category-nav a {
    border: 1px solid transparent;
}

.models3d-category-nav a:hover,
.models3d-category-nav a:focus {
    border-color: rgba(0, 0, 0, .2);
}

.models3d-card {
    border: 1px solid rgba(0, 0, 0, .1);
    scroll-margin-top: 6rem;
}

.models3d-card-images {
    background-color: #292929;
    display: grid;
    gap: 1px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.models3d-card-images img {
    aspect-ratio: 4 / 3;
    height: 100%;
    object-fit: contain;
    width: 100%;
}

.models3d-category-request {
    width: fit-content;
}

.models3d-step {
    border-top: 1px solid rgba(0, 0, 0, .15);
}

.models3d-step:last-child {
    border-bottom: 1px solid rgba(0, 0, 0, .15);
}

.models3d-step-number {
    color: #9a7839;
    flex: 0 0 2rem;
    font-size: .75rem;
    font-weight: 700;
    padding-top: .2rem;
}

.models3d-request-form {
    box-shadow: 0 1.5rem 4rem rgba(0, 0, 0, .08);
}

.models3d-request-points i {
    flex: 0 0 auto;
}

.models3d-page .accordion-button:not(.collapsed) {
    background-color: transparent;
    box-shadow: none;
    color: #000;
}

.models3d-page .accordion-button:focus {
    box-shadow: none;
}

@media (min-width: 768px) {
    .about-fact {
        border-bottom: 0;
    }

    .about-facts > div:not(:last-child) .about-fact {
        border-right: 1px solid rgba(0, 0, 0, .15);
    }
}

@media (max-width: 575px) {
    .about-page .display-5 {
        font-size: 2.25rem;
    }

    .about-media-placeholder {
        min-height: 220px;
    }

    .models3d-page .display-5 {
        font-size: 2.25rem;
    }

    .models3d-hero-media {
        grid-template-rows: repeat(10, minmax(18px, 1fr));
        min-height: 290px;
    }

    .models3d-hero-image-main {
        grid-column: 1 / 13;
    }

    .models3d-hero-image-detail {
        border-width: 5px;
        grid-column: 5 / 13;
    }
}

.tags-row {
    position: relative;
    max-height: 2.75rem;
    transition: all .5s;
    overflow: hidden;
}

.tags-toggle-btn {
    position: absolute;
    right: 0;
    top: 0;
    width: 32px;
    height: 32px;
    transition: all .5s;
}

.tags-toggle-btn.opened {
    transform: rotate(180deg);
}

.product-price ins {
    text-decoration: none;
}

.product-card a {
    color: #bd9036;
}

.product-card .ratio {
    transition: all .5s ease-out;
}

.product-card:hover .ratio {
    transform: scale(1.05);
}

.product-card-media {
    overflow: hidden;
}

.product-card-image {
    inset: 0;
    transition: opacity .35s ease-out;
}

.product-card-image--interior {
    opacity: 0;
}

.product-card--interior-preview:hover .product-card-image--primary,
.product-card--interior-preview.is-interior-preview .product-card-image--primary {
    opacity: 0;
}

.product-card--interior-preview:hover .product-card-image--interior,
.product-card--interior-preview.is-interior-preview .product-card-image--interior {
    opacity: 1;
}

.pods-pagination-advanced {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 1.5rem;
}

.pods-pagination-advanced .pods-pagination-number {
    font-size: 1.25rem;
    color: var(--bs-secondary);
    padding: .375rem;
}

.pods-pagination-advanced .pods-pagination-number.pods-pagination-current {
    font-size: 1.75rem;
    padding: .5rem;
    color: var(--bs-primary) !important;
}

.pods-pagination-advanced .pods-pagination-number:hover {
    color: var(--bs-dark);
}

.nav-pills {
    --bs-nav-pills-link-active-bg: var(--bs-primary-alt);
}

.nav-pills .nav-link {
    margin-right: 2px;
    background-color: var(--bs-light);
}

.tooltip-icon {
    opacity: .25;
}

.tooltip-icon:hover {
    opacity: .75;
}

.tooltip {
    --bs-tooltip-color: var(--bs-dark);
    --bs-tooltip-bg: var(--bs-light);
    --bs-tooltip-opacity: 1;
    box-shadow: 0 .25rem .75rem rgba(0, 0, 0, .1);
    border-radius: .25rem;
}

#schemesSlider:before,
#schemesSlider:after {
    content: '';
    position: absolute;
    height: 2rem;
    width: 2rem;
}

#schemesSlider:before {
    border-bottom: 1px solid var(--bs-gray-500);
    border-left: 1px solid var(--bs-gray-500);
    top: 0%;
    right: 0%;
}

#schemesSlider:after {
    border-top: 1px solid var(--bs-gray-500);
    border-right: 1px solid var(--bs-gray-500);
    bottom: 0%;
    left: 0%;
}

.accordion {
    --accordion-active-color: var(--bs-dark);
    --bs-accordion-active-bg: #fef8ec;
    --bs-accordion-btn-focus-box-shadow: 0 0 0 0.25rem rgba(212, 182, 123, 25%);
}

[id] {
    scroll-margin-top: 220px;
    /* высота шапки */
}

.accordion [id] {
    scroll-margin-top: 220px;
    /* высота шапки */
}

.variation-card:hover {
    transition: all .3s;
}

.variation-card:hover {
    box-shadow: 0 .125rem .5rem rgba(0, 0, 0, .05);
}

/* LEGAL DOCUMENTS */
.legal-document-content {
    font-size: 1rem;
    line-height: 1.7;
}

.legal-document-content h2 {
    margin-top: 2.5rem;
    margin-bottom: 1rem;
    font-size: 1.5rem;
}

.legal-document-content h3 {
    margin-top: 2rem;
    margin-bottom: .75rem;
    font-size: 1.2rem;
}

.legal-document-content p,
.legal-document-content ul,
.legal-document-content ol {
    margin-bottom: 1rem;
}

.legal-document-content table {
    width: 100%;
    margin-bottom: 1.5rem;
}

.legal-document-content th,
.legal-document-content td {
    padding: .75rem;
    border: 1px solid var(--bs-border-color);
    vertical-align: top;
}

/* COOKIE CONSENT */
.cookie-consent {
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1040;
    max-height: 80vh;
    overflow-y: auto;
}

.cookie-consent-options {
    min-width: 180px;
}

.cookie-consent-actions .btn {
    white-space: nowrap;
}

body.modal-open .cookie-consent {
    visibility: hidden;
}

@media (max-width: 575.98px) {
    .cookie-consent-actions .btn {
        flex: 1 1 100%;
    }

    .legal-document-content {
        overflow-wrap: anywhere;
    }
}
