@media screen and (min-width: 1850px) {
    html {
        font-size: 21px !important;
    }
}
@media screen and (max-width: 1850px) and (min-width: 1750px) {
    html {
        font-size: 19px!important;
    }
}
@media screen and (max-width: 1750px) and (min-width: 1650px) {
    html {
        font-size: 18px !important;
    }
}
@media screen and (max-width: 1650px) and (min-width: 1550px) {
    html {
        font-size: 17px !important;
    }
}
@media screen and (max-width: 1550px) and (min-width: 1400px) {
    html {
        font-size: 16px !important;
    }
}
@media screen and (max-width: 1400px) and (min-width: 1350px) {
    html {
        font-size: 15px !important;
    }
}


@media screen and (max-width: 1350px) and (min-width: 1250px) {
    html {
        font-size: 14px !important;
    }
}
@media screen and (max-width: 1250px) and (min-width: 1150px) {
    html {
        font-size: 13px !important;
    }
}
@media screen and (max-width: 1150px) and (min-width: 1050px) {
    html {
        font-size: 12px !important;
    }
}
@media screen and (max-width: 1050px) and (min-width: 992px) {
    html {
        font-size: 11px !important;
    }
}
@media screen and (min-width: 992px) {
    .language-dropdown {
        right: -1rem;
        text-align: center;
    }
}

@media screen and (max-width: 992px) {
    body {
        padding-top: 4.125rem;
    }

    .site-header {
        top: 0;
        left: 0;
        width: 100%;
        height: 4.125rem;
        margin-top: 0;
        padding: 0 1.25rem;
    }

    .header-logo {
        top: 1.125rem;
        width: 8.375rem;
        height: 1.9375rem;
    }

    .header-logo img {
        width: 8.375rem;
        height: 1.9375rem;
    }

    .header-tools {
        display: flex;
        gap: 0;
    }

    .header-actions {
        display: none;
    }

    .header-menu-toggle {
        display: flex;
        align-items: center;
        justify-content: center;
        margin-left: auto;
        padding: 0;
        width: 1.25rem;
        height: 1.5rem;
        background: transparent;
    }

    .header-nav {
        position: absolute;
        display: none;
        top: 100%;
        right: 0;
        width: 15.25rem;
        padding: 1.25rem;
        background: #fff;
        box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.1);
    }

    .site-header.is-menu-open .header-nav {
        display: flex;
        flex-direction: column;
        align-items: stretch;
    }

    .header-nav a {
        padding: 0.875rem 1rem;
        font-size: 1.25rem;
    }

    .header-search {
        width: 100%;
    }
}

@media screen and (max-width: 992px) {
    .hero {
        height: 23.75rem;
        margin-top: 0;
    }

    .hero-content {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 0.75rem;
        padding-top: 8.75rem;
    }

    .hero-title {
        font-size: 2rem;
        letter-spacing: -0.02em;
    }

    .hero-description {
        width: 19.8125rem;
        max-width: 100%;
        font-size: 1rem;
        font-weight: 500;
        line-height: 1.2;
    }

    .hero-link {
        position: absolute;
        top: 17.0625rem;
        right: 1.25rem;
        margin-top: 0;
        font-size: 1rem;
        font-weight: 500;
    }


}

@media screen and (max-width: 992px) {
    .categories {
        display: flex;
        align-items: center;
        overflow-x: auto;
        width: 100%;
        margin-top: 1.5rem;
        padding: 0 1.25rem;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
    }

    .categories::-webkit-scrollbar {
        display: none;
    }

    .category-card, .category-card:first-child {
        flex: 0 0 16.25rem;
        height: 8.75rem;
        scroll-snap-align: start;
        scroll-margin-left: 1.25rem;
    }

    .category-title {
        margin: 0.6875rem 0.75rem;
        font-size: 1.1rem;
    }
    .category-number {
        top: 0.8rem;
    }
    .category-card--oils .category-title {
        max-width: 8.75rem;
    }

    .category-number {
        gap: 0.25rem;
        font-weight: 500;
    }

    .category-number img {
        width: 0.625rem;
        height: 1.5px;
    }

    .category-card--bottles {
        --art-left: 0.9375rem;
        --art-top: 0;
        --art-width: 13.8829375rem;
        --art-height: 13.8356875rem;
        --crop-width: 9.605375rem;
        --crop-height: 10.0500625rem;
    }

    .category-card--atomizers {
        --art-left: -0.875rem;
        --art-top: 1.375rem;
        --art-width: 15.5061875rem;
        --art-height: 15.488rem;
        --crop-width: 6.886625rem;
        --crop-height: 15.0295625rem;
    }

    .category-card--oils {
        --art-left: 0.75rem;
        --art-top: 0.6875rem;
        --art-width: 14.5361875rem;
        --art-height: 14.9384375rem;
        --crop-width: 9.861625rem;
        --crop-height: 11.364rem;
    }
}

@media screen and (max-width: 992px) {
    .products-section {
        margin-top: 3.75rem;
    }

    .section-title {
        font-size: 1.5rem;
        margin-bottom: 1.5rem;
    }

    .product-slider:not(.slick-initialized) {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .product-slider:not(.slick-initialized) .product-slide:nth-child(n+3) {
        display: none;
    }

    .product-visual {
        height: 9.375rem;
    }

    .product-image {
        padding-top: 0.5rem;
    }

    /*.product-image img {*/
    /*    width: 44.12%;*/
    /*    margin-left: 28.82%;*/
    /*}*/

    .product-colors {
        bottom: 0.5rem;
        left: 0.5rem;
        width: 3.5rem;
        height: 1rem;
    }

    .product-favorite {
        top: 0.5rem;
        right: 0.5rem;
    }

    .product-info {
        gap: 0.625rem;
        padding: 0.25rem 0.375rem 0.375rem;
    }

    .product-quantities {
        order: 0;
        margin: 0;
        gap: 0.25rem;
    }

    .product-quantity {
        flex: 1;
        min-width: 0;
        padding: 0.4375rem 0.375rem;
        font-size: 0.75rem;
    }

    .quantity-unit, .product-discount {
        display: none;
    }

    .product-details {
        order: 1;
        gap: 0.375rem;
        margin: 0;
    }

    .product-title {
        font-family: 'Onest', sans-serif;
        font-size: 1.1rem;
        font-weight: 700;
        letter-spacing: -0.04em;
        text-box-trim: none;
    }

    .product-price {
        font-size: 1.25rem;
        text-box-trim: none;
    }

    .product-cart {
        order: 2;
        height: 2.75rem;
        padding: 0.5rem;
    }

    .product-cart-desktop {
        display: none;
    }

    .product-cart-mobile {
        display: inline;
    }

    .slider-controls {
        gap: 0.625rem;
        margin-top: 1.5rem;
    }
}


@media screen and (max-width: 992px) {
    .product-colors {
        width: auto;
    }

    .product-colors button {
        width: 1rem;
        height: 1rem;
    }
}

@media screen and (max-width: 992px) {
    .about-section {
        grid-template-columns: minmax(0, 1fr);
        gap: 1.875rem;
        margin-top: 3.75rem;
    }

    .about-intro {
        justify-content: flex-start;
        gap: 1.5rem;
    }

    .about-copy {
        max-width: none;
    }

    .about-heading {
        font-size: 1.5rem;
        line-height: 1.2;
        text-box-trim: trim-both;
    }

    .about-lead {
        font-size: 1rem;
        font-weight: 500;
        text-box-trim: trim-both;
        text-box-edge: cap alphabetic;
    }

    .about-mobile-break {
        display: initial;
    }

    .about-image {
        height: 8.125rem;
    }

    .about-logo, .about-logo img {
        width: 10.75rem;
        height: 2.5rem;
    }

    .advantage:first-child {
        padding-top: 0;
    }

    .advantage:first-child::before {
        display: none;
    }

    .advantage-heading {
        margin-bottom: 1rem;
    }

    .advantage-heading span {
        font-size: 1rem;
        font-weight: 500;
        text-box-trim: trim-both;
        text-box-edge: cap alphabetic;
    }

    .about-description {
        letter-spacing: -0.05em;
    }

    .about-description p + p {
        margin-top: 1.2em;
    }
}

@media screen and (max-width: 992px) {
    .arrivals-layout {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .btn-catalog {
        flex-direction: column;
        gap: 1rem;
        padding: 1rem 0;
        font-size: 1rem;
    }

    .catalog-label-desktop {
        display: none;
    }

    .catalog-label-mobile {
        display: inline;
    }

    .product-counter {
        order: 2;
        height: 2.6875rem;
    }
}

@media screen and (max-width: 992px) {
    .conditions-section {
        margin-top: 3.75rem;
        padding: 1.875rem 0;
    }

    .conditions-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.9375rem;
    }

    .conditions-heading {
        max-width: none;
        margin: 0;
    }

    .conditions-lead {
        width: 20rem;
        max-width: 100%;
        font-size: 1rem;
        font-weight: 500;
        text-box-trim: trim-both;
        text-box-edge: cap alphabetic;
    }

    .conditions-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .condition-card {
        height: 10.5rem;
    }

    .condition-copy h3 {
        font-size: 1.5rem;
    }
}

@media screen and (max-width: 992px) {
    .reviews-section {
        margin-top: 3.75rem;
    }

    .reviews-section > .section-title {
        margin-bottom: 2rem;
    }

    .reviews-window {
        height: 34.875rem;
    }

    .reviews-columns {
        grid-template-columns: minmax(0, 1fr);
    }

    .review-column:nth-child(n+2) {
        display: none;
    }

    .review-card {
        gap: 1.1413125rem;
        padding: 0.760875rem;
    }

    .review-rating, .review-rating img {
        width: 5.9443125rem;
        height: 1.188875rem;
    }

    .review-date {
        font-size: 0.875rem;
    }

    .reviews-button {
        width: 100%;
        height: 2.75rem;
    }
}

@media screen and (max-width: 992px) {
    .faq-section {
        margin-top: 3.75rem;
    }

    .faq-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .faq-grid .faq-item {
        order: 0;
    }

    .faq-question {
        min-height: 4.25rem;
        padding: 1rem 1.25rem;
        font-size: 1.125rem;
        font-weight: 500;
    }

    .faq-question > span:first-child {
        text-box-trim: trim-both;
        text-box-edge: cap alphabetic;
    }

    .faq-answer-inner {
        padding: 0 1.25rem 1.25rem;
    }
}

@media screen and (max-width: 992px) {
    .blog-section {
        margin-top: 3.75rem;
    }

    .blog-section > .section-title {
        margin-bottom: 2rem;
    }

    .blog-slider, .blog-slider:not(.slick-initialized) {
        display: flex;
        flex-direction: column;
        gap: 1.875rem;
        overflow: visible;
    }

    .blog-slide, .blog-slide.slick-current, .blog-slider:not(.slick-initialized) .blog-slide:first-child {
        width: 100%;
        margin: 0;
    }

    .blog-card {
        gap: 0.7906875rem;
    }

    .blog-image {
        height: 9.375rem;
    }

    .blog-card-title {
        font-size: 1.125rem;
    }

    .blog-card--1 .blog-card-title {
        max-width: none;
    }

    .blog-card--1 .blog-image > img {
        position: absolute;
        top: -10.47%;
        left: -0.04%;
        height: 175%;
    }

    .blog-card--1 .blog-image::after {
        background: rgba(0, 0, 0, 0.05);
    }

    .blog-card--3 .blog-image > img {
        position: absolute;
        top: -122.04%;
        height: 291.67%;
    }

    .blog-read {
        top: 0.65rem;
        right: 0.625rem;
        height: 2.25rem;
        padding: 0.527125rem 1.0541875rem;
        gap: 0.7906875rem;
    }

    .blog-read picture, .blog-read img {
        width: 1.186rem;
        height: 1.186rem;
    }

    .blog-controls {
        display: none;
    }

    .blog-all {
        display: flex;
        width: 100%;
        height: 2.75rem;
        margin-top: 2rem;
        font-size: 1rem;
        font-weight: 500;
        letter-spacing: -0.04em;
    }
}

@media screen and (max-width: 992px) {
    .site-footer {
        margin-top: 3.75rem;
        padding: 0 0 1.875rem;
    }

    .footer-inner {
        display: grid;
        grid-template-columns: minmax(0, 1fr) 9.75rem;
        grid-template-areas: 'form form' 'logo logo' 'navigation categories' 'clients clients' 'contacts contacts';
    }

    .footer-main {
        display: contents;
    }

    .footer-inquiry {
        grid-area: form;
        min-height: 20.375rem;
        margin: 0 -1.25rem;
        padding: 1.875rem 1.25rem;
        isolation: isolate;
    }

    .footer-inquiry-background {
        position: absolute;
        z-index: -1;
        inset: 0;
        display: block;
        overflow: hidden;
        opacity: 0.3;
    }

    .footer-inquiry-background img {
        position: absolute;
        top: -30.47%;
        left: -8.72%;
        width: 111.52%;
        height: 177.6%;
    }

    .footer-form-title {
        display: block;
        margin: 0 0 1.125rem;
        color: #fff;
    }

    .footer-form-text {
        margin-bottom: 1.875rem;
        letter-spacing: -0.05em;
        text-align: center;
    }

    .footer-request-prefix {
        display: none;
    }

    .footer-request-description {
        display: block;
    }

    .footer-request-description::first-letter {
        text-transform: uppercase;
    }

    .footer-form {
        gap: 0.75rem;
    }

    .footer-form input {
        height: 3.125rem;
    }

    .footer-form-row {
        flex-direction: column;
    }

    .footer-form-row input {
        flex: auto;
    }

    .footer-submit {
        width: 100%;
    }

    .footer-logo {
        grid-area: logo;
        margin: 2.5rem auto 2rem;
    }

    .footer-navigation {
        grid-area: navigation;
    }

    .footer-categories {
        grid-area: categories;
    }

    .footer-clients {
        grid-area: clients;
        margin-top: 3rem;
    }

    .footer-contacts {
        grid-area: contacts;
        flex-direction: column;
        gap: 1.5rem;
        margin-top: 3rem;
    }

    .footer-contact-value {
        font-size: 1.4rem;
    }

    .footer-address .footer-contact-value {
        white-space: normal;
    }
}


@media screen and (max-width: 992px) {
    html.is-mobile-menu-open, body.is-mobile-menu-open {
        overflow: hidden;
    }

    .header-tools {
        display: none;
    }

    .header-menu-toggle {
        position: relative;
        z-index: 3;
        width: 2.75rem;
        height: 2.75rem;
        margin-right: -0.75rem;
        color: #070707;
        font-size: 1.25rem;
        line-height: 1;
    }

    .header-menu-toggle .fa-times {
        display: none;
    }

    .is-menu-open .header-menu-toggle .fa-bars {
        display: none;
    }

    .is-menu-open .header-menu-toggle .fa-times {
        display: inline-block;
    }

    .header-menu-backdrop {
        position: fixed;
        z-index: 1;
        inset: 0;
        display: block;
        width: 100%;
        height: 100%;
        padding: 0;
        background: rgba(7, 7, 7, 0.5);
        opacity: 0;
        visibility: hidden;
        transition: opacity 0.25s ease, visibility 0.25s ease;
    }

    .is-menu-open .header-menu-backdrop {
        opacity: 1;
        visibility: visible;
    }

    .site-header .header-nav, .site-header.is-menu-open .header-nav {
        position: fixed;
        z-index: 2;
        top: 0;
        right: 0;
        display: flex;
        flex-direction: column;
        align-items: stretch;
        width: 15.25rem;
        max-width: 100%;
        height: 100%;
        padding: 3.75rem 1.25rem 3.125rem;
        overflow-y: auto;
        overscroll-behavior: contain;
        background: #fff;
        box-shadow: none;
        transform: translateX(100%);
        visibility: hidden;
        transition: transform 0.25s ease, visibility 0.25s ease;
    }

    .site-header.is-menu-open .header-nav {
        transform: translateX(0);
        visibility: visible;
    }

    .header-nav-links {
        flex: none;
        flex-direction: column;
        align-items: stretch;
        justify-content: flex-start;
    }

    .header-nav-links .header-home {
        display: block;
    }

    .header-nav-links a {
        display: block;
        padding: 0.875rem 1rem;
        font-size: 1.25rem;
        font-weight: 400;
        line-height: 1.2;
        letter-spacing: -0.04em;
    }

    .header-nav-links a[aria-current="page"] {
        background: #f8f8f8;
        color: #8da5b7;
        font-weight: 700;
    }

    .header-nav .header-language {
        flex: none;
        width: 4.8125rem;
        margin: 1.25rem 0 0 1rem;
        font-size: 1.25rem;
        font-weight: 400;
    }

    .header-nav .header-language summary {
        gap: 0.5rem;
    }

    .header-nav .language-icon {
        width: 1.375rem;
        height: 1.375rem;
    }

    .header-nav .language-dropdown {
        right: auto;
        left: 0;
    }

    .header-nav .language-dropdown a {
        padding: 0.625rem 0.75rem;
        font-size: 1.1rem;
        text-align: center;
    }

    .header-mobile-footer {
        display: block;
        flex: none;
        width: 11.75rem;
        max-width: 100%;
        margin-top: auto;
        margin-left: 1rem;
        padding-top: 2rem;
    }

    .header-mobile-social {
        display: flex;
        align-items: center;
        gap: 1.0625rem;
        margin-bottom: 1.25rem;
    }

    .header-mobile-social a {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 1.75rem;
        height: 1.75rem;
        padding: 0;
        font-size: 1.75rem;
    }

    .header-nav .header-mobile-privacy {
        display: block;
        padding: 0;
        font-size: 1.125rem;
        font-weight: 500;
        line-height: 1.2;
        letter-spacing: -0.04em;
        text-decoration: underline;
        text-underline-position: under;
    }
}

@media screen and (max-width: 992px) {
    .inner-page {
        padding-top: 2rem;
    }

    .page-breadcrumbs {
        margin-bottom: 2.5rem;
    }

    .page-title {
        font-size: 1.5rem;
        line-height: 1.1;
        text-box-trim: trim-both;
        text-box-edge: cap alphabetic;
    }

    .intro-text {
        font-size: 1rem;
        font-weight: 500;
        text-box-trim: trim-both;
        text-box-edge: cap alphabetic;
    }

    .about-page-intro {
        padding: 0;
    }

    .about-title-mobile-break {
        display: initial;
    }

    .about-page-banner {
        width: calc(100% - 2.5rem);
        height: 8.125rem;
        margin: 1.5rem auto 0;
    }

    .about-page-banner::after {
        background: rgba(0, 0, 0, 0.3);
    }

    .about-page-banner-logo {
        width: 10.75rem;
        height: 2.5rem;
    }
}

@media screen and (max-width: 992px) {
    .about-page-advantages {
        grid-template-columns: minmax(0, 1fr);
        gap: 2rem;
        margin-top: 3.75rem;
    }

    .about-page-advantages-title {
        margin: 0;
        font-size: 1.5rem;
        line-height: 1.2;
        text-box-trim: trim-both;
    }
}

@media screen and (max-width: 992px) {
    .approach-section {
        min-height: 40.125rem;
        margin-top: 3.75rem;
    }

    .approach-decoration {
        top: 7.5625rem;
        left: 0.6875rem;
        width: 11.125rem;
        height: 20rem;
    }

    .approach-top {
        margin-left: 6.875rem;
        padding-top: 0;
    }

    .approach-top .section-title {
        margin: 0 0 2rem;
    }

    .approach-top-row {
        flex-direction: column;
        align-items: stretch;
        justify-content: space-between;
        gap: 1.5rem;
        min-height: 7.625rem;
    }

    .approach-link {
        align-self: flex-end;
    }

    .approach-gallery {
        width: 100%;
        margin: 4.8125rem 0 0;
    }

    .approach-gallery-photo {
        height: 7.625rem;
        margin-right: 0.625rem;
    }

    .approach-gallery-photo-1 {
        width: 5.0625rem;
    }

    .approach-gallery-photo-2 {
        width: 11.4375rem;
    }

    .approach-gallery-photo-3 {
        width: 7.625rem;
    }

    .approach-gallery-photo-4 {
        width: 9.8125rem;
    }

    .approach-gallery-photo-5 {
        width: 6.3125rem;
    }

    .approach-gallery-photo-6 {
        width: 6.25rem;
    }

    .approach-bottom {
        max-width: none;
        margin: 4.6875rem 1.25rem 0 6.875rem;
    }
}


@media screen and (max-width: 992px) {
    .order-steps-section {
        margin-top: 3.75rem;
    }

    .order-steps-title {
        margin: 0 0 1.5rem;
        font-size: 1.5rem;
        line-height: 1.2;
        text-box-trim: trim-both;
    }

    .order-steps-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .order-step {
        min-height: 10.25rem;
    }

    .order-step-number {
        font-weight: 500;
        text-box-trim: trim-both;
        text-box-edge: cap alphabetic;
    }

    .order-step-number img {
        height: 1.5px;
    }

    .order-step-copy h3 {
        font-size: 1.5rem;
    }
}


@media screen and (max-width: 992px) {
    .supplier-section {
        min-height: 42.9375rem;
        margin-top: 3.75rem;
        padding: 1.875rem 1.25rem 20.125rem;
    }

    .supplier-background {
        top: 12.6875rem;
        left: -3.875rem;
        right: auto;
        bottom: auto;
        width: 90rem;
        height: 30.625rem;
        background-size: 90rem 30.625rem;
    }

    .supplier-inquiry {
        min-height: 20.9375rem;
        padding: 1.25rem;
    }

    .supplier-title {
        margin: 0 0 1.5rem;
        font-size: 1.5rem;
        line-height: 1.2;
        text-box-trim: trim-both;
    }

    .supplier-mobile-break {
        display: initial;
    }

    .supplier-actions {
        flex-direction: column;
        gap: 0.625rem;
    }

    .supplier-button {
        flex: none;
        width: 100%;
        min-height: 2.875rem;
    }

    .certificates {
        bottom: 1.875rem;
    }
}


@media screen and (max-width: 992px) {
    .catalog-page > .categories {
        margin-top: 1.5rem;
    }

    .catalog-results {
        margin-top: 2.5rem;
    }

    .catalog-toolbar {
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 1.5rem;
    }

    .catalog-filter-toggle {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 2.8125rem;
        height: 2.8125rem;
        padding: 0.625rem;
        border: 1.5px solid #070707;
        background: #fff;
    }

    .catalog-filter-toggle img {
        display: block;
        width: 1.5rem;
        height: 1.5rem;
    }

    .catalog-filter-toggle[aria-expanded="true"] {
        border-color: #8da5b7;
        background: #f4f4f4;
    }

    .catalog-search {
        width: 16.25rem;
        margin: 0;
    }

    .catalog-filter-panel {
        order: 3;
        display: none;
        width: 100%;
    }

    .catalog-filter-group {
        flex-direction: column;
        gap: 0.625rem;
        margin: 0 0 0.625rem;
    }

    .catalog-filter, .catalog-sort {
        width: 100%;
    }

    .catalog-filter-dropdown {
        position: static;
        width: 100%;
        min-width: 0;
        margin-top: 0.5rem;
        box-shadow: none;
    }

    .catalog-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 1rem 0.625rem;
    }

    .catalog-item:nth-child(n+7):nth-child(-n+10) {
        display: none;
    }

    .product-stock-notice {
        top: 3.8125rem;
        padding: 0.875rem 0.25rem;
        font-size: 1rem;
    }

    .catalog-bottom {
        margin-top: 1rem;
    }

    .catalog-count {
        display: none;
    }

    .catalog-pagination {
        justify-content: center;
        gap: 1rem;
        width: 100%;
    }

    .catalog-pagination-end {
        margin-left: 0;
    }
}


@media screen and (max-width: 992px) {
    .product-page .page-breadcrumbs {
        margin-bottom: 2.5rem;
    }

    .product-page .page-breadcrumbs ol {
        flex-wrap: wrap;
        row-gap: 0.625rem;
    }

    .pdp-top {
        grid-template-columns: minmax(0, 1fr);
        gap: 2rem;
    }

    .pdp-gallery {
        height: 23.625rem;
        border: 1px solid rgba(0, 0, 0, 0.1);
    }

    .pdp-gallery-main {
        height: 17.125rem;
        margin: 0 0.5rem;
        border-bottom: 1px solid #ddd;
    }

    .pdp-gallery-slide {
        padding-top: 1.0625rem;
    }



    .pdp-gallery-thumbs {
        top: 18.3125rem;
        left: 0.4375rem;
        width: calc(100% - 0.375rem);
    }

    .pdp-gallery-thumbs .pdp-thumb-slide {
        height: 4.75rem;
        padding-right: 0.625rem;
    }

    .pdp-thumb {
        width: 100%;
        height: 4.75rem;
    }



    .pdp-heading .page-title {
        font-size: 1.5rem;
        line-height: 1.2;
    }

    .pdp-availability {
        text-box-trim: trim-both;
        text-box-edge: cap alphabetic;
    }

    .pdp-lead {
        font-size: 1rem;
        font-weight: 500;
        text-box-trim: trim-both;
        text-box-edge: cap alphabetic;
    }

    .pdp-purchase {
        gap: 1.5rem;
        margin-top: 1.5rem;
        padding: 0;
    }

    .pdp-purchase .product-quantities {
        gap: 0.375rem;
    }

    .pdp-purchase .product-quantity {
        flex: 1;
        min-height: 2.25rem;
        padding: 0.625rem 0.6875rem;
        font-size: 1.125rem;
        font-weight: 500;
    }

    .pdp-purchase .product-quantity > span:first-child {
        text-box-trim: trim-both;
        text-box-edge: cap alphabetic;
    }

    .pdp-purchase .product-discount {
        display: block;
    }

    .pdp-purchase-row {
        justify-content: space-between;
        gap: 1rem;
    }

    .pdp-price {
        font-size: 2rem;
        line-height: 1.2;
        text-box-trim: trim-both;
        text-box-edge: cap alphabetic;
    }

    .pdp-actions {
        justify-content: flex-end;
        flex: none;
        gap: 0.75rem;
    }

    .pdp-cart {
        display: none;
    }

    .pdp-icon-button {
        width: 2.875rem;
        height: 2.875rem;
    }

    .pdp-details {
        grid-template-columns: minmax(0, 1fr);
        gap: 1rem;
        margin-top: 2rem;
        padding-top: 2rem;
        border-top: 1px solid #ddd;
    }

    .pdp-tab-list {
        grid-column: 1;
        grid-row: 1;
        justify-content: flex-start;
        gap: 2rem;
    }

    .pdp-tab {
        padding-bottom: 0.375rem;
        font-family: 'Onest', sans-serif;
        font-size: 1.25rem;
        font-weight: 600;
        letter-spacing: -0.04em;
        text-box-trim: none;
    }

    .pdp-tab--description {
        display: block;
    }

    .pdp-description {
        grid-column: 1;
        grid-row: 2;
    }

    .pdp-description-heading {
        display: none;
    }

    .pdp-tab-panels {
        grid-column: 1;
        grid-row: 2;
    }

    .pdp-benefits {
        flex-direction: column;
        align-items: flex-start;
        gap: 1rem;
        margin-top: 3.75rem;
        padding: 1.25rem 2.5rem;
    }

    .pdp-mobile-cart {
        position: fixed;
        z-index: 8;
        bottom: 0;
        left: 0;
        display: block;
        width: 100%;
        padding: 1.25rem 1.25rem 1.5rem;
        border-top: 1px solid #eee;
        background: #fff;
    }

    .pdp-mobile-cart .btn {
        width: 100%;
        height: 3.5rem;
        padding: 1rem;
        font-size: 1.1rem;
        line-height: 1.2;
        letter-spacing: -0.04em;
    }

    body:has(.product-page) {
        padding-bottom: 6.25rem;
    }

    body.is-menu-open .pdp-mobile-cart, body.fancybox-active .pdp-mobile-cart {
        visibility: hidden;
    }
}


@media screen and (max-width: 992px) {
    .blog-mobile-break {
        display: initial;
    }

    .blog-mobile-copy {
        display: inline;
    }

    .blog-desktop-copy {
        display: none;
    }

    .blog-featured {
        grid-template-columns: minmax(0, 1fr);
        gap: 1.875rem;
    }

    .blog-featured .blog-card--1 .blog-image > img {
        top: -10.47%;
        left: -0.04%;
        width: 100%;
        height: 175%;
    }

    .blog-editorial {
        grid-template-columns: minmax(0, 1fr);
        gap: 3.75rem;
        margin-top: 3.75rem;
    }

    .content-heading {
        margin-bottom: 1.5rem;
        padding-bottom: 0.5rem;
        font-size: 1rem;
        font-weight: 600;
        line-height: 1.2;
        text-box-trim: trim-both;
        text-box-edge: cap alphabetic;
    }

    .content-heading > span {
        padding: 0;
    }

    .content-heading > span::after {
        bottom: -0.59375rem;
    }

    .blog-articles-heading {
        margin-bottom: 1.5rem;
    }

    .blog-articles-heading .content-heading {
        margin: 0 0 1.5rem;
        padding: 0;
        border: 0;
        font-family: 'Coolvetica', sans-serif;
        font-size: 1.5rem;
        font-weight: 400;
        line-height: 1.2;
    }

    .blog-articles-heading .content-heading > span::after {
        display: none;
    }

    .blog-article-filters {
        position: relative;
        right: auto;
        bottom: auto;
        justify-content: flex-start;
        width: 100%;
        padding-bottom: 0.5rem;
        border-bottom: 1.5px solid #eee;
    }

    .blog-article-filters button {
        position: relative;
    }

    .blog-article-filters button[aria-pressed="true"]::after {
        position: absolute;
        bottom: -0.59375rem;
        left: 0;
        width: 100%;
        height: 1.5px;
        content: '';
        background: #8da5b7;
    }

    .blog-articles-layout {
        grid-template-columns: minmax(0, 1fr);
        gap: 1.5rem;
    }

    .blog-article-list {
        padding-top: 1.5rem;
        border-top: 1px solid #ddd;
    }

    .blog-card--compact {
        grid-template-columns: minmax(0, 110fr) minmax(0, 230fr);
        gap: 0.75rem 0.625rem;
    }

    .blog-card--compact .blog-card-title {
        font-size: 1rem;
        line-height: 1.2;
        text-box-trim: trim-both;
        text-box-edge: cap alphabetic;
    }

    .blog-card--compact .blog-description {
        font-size: 0.875rem;
    }

    .blog-card--compact .blog-read {
        top: auto;
        right: auto;
        gap: 0.75rem;
        padding: 0.5rem 1rem;
    }

    .blog-card--compact .blog-read picture, .blog-card--compact .blog-read img {
        width: 1.125rem;
        height: 1.125rem;
    }

    .blog-page-faq .faq-question {
        min-height: 4.25rem;
        font-size: 1.125rem;
        font-weight: 400;
    }

    .blog-page-recommended .blog-slide:nth-child(n+4) {
        display: none;
    }

    .blog-page-recommended.is-expanded .blog-slide {
        display: block;
    }

    .blog-page-recommended .blog-all[hidden] {
        display: none;
    }
}


@media screen and (max-width: 992px) {
    .article-page .page-breadcrumbs {
        margin-bottom: 2.5rem;
    }

    .article-page .page-breadcrumbs ol {
        overflow: hidden;
        white-space: nowrap;
    }

    .article-page .page-breadcrumbs li {
        flex-shrink: 0;
    }

    .article-page .page-breadcrumbs li:last-child {
        flex-shrink: 1;
        min-width: 0;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .article-layout {
        width: calc(100% - 2.5rem);
        max-width: none;
    }

    .article-hero {
        grid-template-columns: minmax(0, 1fr);
        gap: 1rem;
    }

    .article-hero-copy {
        justify-content: flex-start;
        gap: 2rem;
        min-height: 0;
    }

    .article-hero-text {
        gap: 1.5rem;
    }

    .article-meta {
        padding-right: 0;
    }

    .article-share-toggle picture, .article-share-toggle img {
        height: 1.25rem;
    }

    .article-hero-photo {
        height: 9.375rem;
    }

    .article-mobile-break {
        display: initial;
    }

    .article-body {
        gap: 1.25rem;
        margin-top: 1.5rem;
    }

    .article-row {
        grid-template-columns: minmax(0, 1fr);
        gap: 0.5rem;
    }

    .article-conclusion {
        grid-template-columns: minmax(0, 1fr);
        gap: 1rem;
        padding-top: 1.25rem;
    }

    .article-conclusion .section-title {
        max-width: none;
    }

    .article-conclusion-copy {
        grid-column: 1;
        grid-row: 2;
    }

    .article-catalog-link {
        grid-column: 1;
        grid-row: 3;
        justify-self: end;
    }

    .article-related {
        margin-top: 3.75rem;
    }

    .article-related > .section-title {
        margin-bottom: 1.5rem;
    }
}


@media screen and (max-width: 992px) {
    .contacts-top {
        grid-template-columns: minmax(0, 1fr);
        gap: 2rem;
        padding: 0;
    }

    .contacts-mobile-break {
        display: initial;
    }

    .contacts-details {
        gap: 1.5rem;
        margin-top: 2rem;
    }

    .contacts-address {
        width: 100%;
    }

    .contacts-link {
        justify-content: space-between;
        gap: 0.75rem;
        width: 100%;
        font-size: 1.75rem;
    }

    .contacts-address-link {
        align-items: flex-end;
    }

    .contacts-form {
        min-height: 30.125rem;
        padding: 1.25rem;
    }

    .contacts-consent {
        align-items: flex-start;
    }

    .contacts-location {
        margin-top: 3.75rem;
    }

    .contacts-location > .page-title {
        line-height: 1.2;
    }

    .contacts-photos {
        grid-template-columns: minmax(0, 1fr);
    }

    .contacts-photo {
        height: 12.375rem;
    }
}


@media screen and (max-width: 992px) {
    .contacts-page + .site-footer {
        margin-top: 3.75rem;
    }
}

@media screen and (max-width: 992px) {
    .cart-layout {
        grid-template-columns: minmax(0, 1fr);
        gap: 1.5rem;
        margin-top: 1.5rem;
    }

    .cart-item {
        grid-template-columns: 7.5rem minmax(0, 1fr);
        grid-template-rows: 7rem auto;
        column-gap: 0.5rem;
        row-gap: 1rem;
        height: auto;
        padding: 0 1.125rem 1.125rem 0;
    }

    .cart-item-image {
        grid-row: 1;
    }

    .cart-item-image img {
        width: 100%;
        max-height: 90%;
    }

    .cart-item-details {
        padding: 0.875rem 0 0.1875rem;
        border-bottom: 1px solid #ddd;
    }

    .cart-item-heading h2 {
        font-size: 1.1rem;
        /*white-space: nowrap;*/
    }

    .cart-remove {
        color: #070707;
    }

    .cart-remove span {
        display: none;
    }

    .cart-remove i {
        display: block;
        font-size: 1rem;
    }

    .cart-item-options {
        gap: 0.625rem;
        margin-top: 0.875rem;
    }

    .cart-color-row {
        gap: 0.875rem;
    }

    .cart-color-toggle img {
        width: 1.125rem;
        height: 1.125rem;
    }

    .cart-color-options {
        left: auto;
        right: 0;
    }

    .cart-item-bottom {
        grid-column: 1 / 3;
        flex-direction: column;
        align-items: stretch;
        gap: 0.625rem;
        margin: 0 0 0 1.125rem;
        padding: 0;
        border: 0;
    }

    .cart-item-prices {
        gap: 0.625rem;
    }

    .cart-item-prices p:last-child {
        font-size: 1.25rem;
        font-weight: 600;
    }

    .cart-counter {
        flex-basis: auto;
    }

    .cart-counter output {
        font-size: 1.125rem;
    }

    .cart-summary {
        min-height: 25rem;
        padding: 1.25rem;
        gap: 1.5rem;
    }

    .cart-delivery {
        align-items: start !important;
    }

    .cart-delivery span:last-child {
        max-width: 10rem;
    }

    .cart-total {
        padding-top: 1.5rem;
        font-size: 1.5rem;
    }

    .cart-total-label {
        font-size: 0;
    }

    .cart-total-label::after {
        content: 'Сумма:';
        font-size: 1.7rem;
    }
    .order-radio {
        font-size: 1.15rem;
    }

    .cart-checkout {
        white-space: nowrap;
    }

    .cart-page .products-section {
        margin-top: 3.75rem;
    }
}

@media screen and (max-width: 992px) {
    .order-layout {
        grid-template-columns: minmax(0, 1fr);
        gap: 1.5rem;
        margin-top: 1.5rem;
    }

    .order-form {
        gap: 1rem;
    }

    .order-heading {
        font-size: 1.5rem;
    }

    .order-pickup {
        gap: 1rem;
    }

    .order-pickup-details {
        flex-direction: column;
        gap: 0.75rem;
    }

    .order-payment-options {
        grid-template-columns: minmax(0, 1fr);
        gap: 0.625rem;
    }

    .order-payment-option {
        height: 4.375rem;
    }

    .order-summary {
        padding: 1.25rem;
        gap: 1.5rem;
    }

    .order-summary-heading {
        padding-bottom: 1.5rem;
        border-bottom: 1px solid #ddd;
    }

    .order-items {
        gap: 0.625rem;
    }

    .order-item {
        grid-template-columns: 6.625rem minmax(0, 1fr);
        grid-template-rows: auto auto auto;
        gap: 0 0.5rem;
        min-height: 0;
        padding: 0 0.75rem 0.75rem 0;
    }

    .order-item-image {
        grid-row: 1 / 3;
        height: 7rem;
    }

    .order-item-image img {
        width: 100%;
    }

    .order-item-details {
        align-self: start;
        gap: 1rem;
        padding-top: 0.625rem;
    }

    .order-item-details h3 {
        padding-right: 1.5rem;
        font-size: 1rem;
    }

    .order-item-meta {
        gap: 0.5rem;
        flex-direction: row;
    }

    .whatsapp {
        right: 15px;
        bottom: 9rem;
        height: 3rem;
        width: 3rem;
    }
    .whatsapp.call {
        bottom: 4rem;
    }

    .order-item-color {
        grid-column: 2;
        align-self: end;
        width: 1.125rem;
        height: 1.125rem;
        margin-bottom: 0.5rem;
    }

    .order-item-price {
        grid-column: 1 / 3;
        justify-content: space-between;
        margin: 1rem 0 0 0.75rem !important;
        padding: 0;
        border: 0;
        font-weight: 600;
    }

    .order-item-price > span {
        display: initial;
    }

    .order-item-price strong {
        font-weight: 600;
    }

    .order-remove {
        position: absolute;
        top: 0.625rem;
        right: 0.75rem;
    }

    .order-remove img {
        width: 1rem;
        height: 1rem;
    }

    .order-totals {
        gap: 1.5rem;
        padding-top: 1.5rem;
    }

    .order-totals > .order-heading {
        font-size: 2rem;
    }

    .order-totals .cart-delivery {
        align-items: start;
    }

    .order-totals .cart-delivery span:last-child {
        max-width: 10rem;
    }

    .order-totals .cart-total {
        padding-top: 1.5rem;
    }

    .order-totals .cart-total-label {
        font-size: 0;
    }

    .order-totals .cart-total-label::after {
        content: 'Сумма:';
        font-size: 2rem;
    }
}

@media screen and (max-width: 992px) {
    .order-item-image img {
        width: 100%;
        height: 90%;
    }
}

@media screen and (max-width: 992px) {
    .account-breadcrumb-desktop {
        display: none !important;
    }

    .account-page .account-breadcrumb-mobile {
        display: list-item !important;
    }

    .account-layout {
        grid-template-columns: minmax(0, 1fr);
        gap: 0;
        margin-top: 1.5rem;
        padding: 0;
    }

    .account-sidebar {
        display: none;
    }

    .account-order-meta {
        flex-direction: column;
        gap: 1.25rem;
    }

    .account-order-meta > div {
        flex-direction: row;
        align-items: start;
        justify-content: space-between;
        gap: 0.75rem;
    }

    .account-order-meta dt {
        flex-shrink: 0;
    }

    .account-order-meta dd {
        max-width: 10.125rem;
        text-align: right;
    }

    .account-order-products {
        gap: 0.625rem;
    }

    .account-order-product, [data-order-status="cancelled"] .account-order-product {
        grid-template-columns: 6.625rem minmax(0, 1fr);
        min-height: 0;
        padding-right: 0.75rem;
    }

    .account-order-product .order-item-image img {
        width: 3.079rem;
        height: 5.467rem;
    }

    .account-order-product .order-item-details {
        gap: 1rem;
    }

    .account-order-product .order-item-details h3 {
        padding-right: 0;
    }

    .account-order-product .order-item-price {
        align-self: auto;
        margin: 1rem 0 0 0.75rem;
        padding: 0;
    }

    .account-order-footer {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 1rem 0.5rem;
    }

    .account-order-total {
        grid-column: 1 / 3;
        justify-content: space-between;
    }

    .account-order-details {
        grid-column: 2;
    }
}

@media screen and (max-width: 992px) {
    .account-detail-content {
        padding: 1.25rem;
        border: 1px solid #00000026;
    }

    .account-detail-heading {
        margin-bottom: 1.25rem;
        font-family: 'Onest', sans-serif;
        font-size: 1.25rem;
        font-weight: 700;
        letter-spacing: -0.04em;
        text-box-trim: none;
    }

    .account-detail-card {
        padding: 0;
        border: 0;
    }

    .account-detail-meta {
        gap: 1.25rem;
    }

    .account-detail-prices .cart-delivery {
        align-items: start;
    }

    .account-detail-prices .cart-delivery span:last-child {
        max-width: 10rem;
    }

    .account-detail-total-label {
        font-size: 0;
    }

    .account-detail-total-label::after {
        content: 'Итого:';
        font-size: 1.25rem;
    }

    .account-detail-total > div {
        gap: 0.5rem;
    }

    .account-detail-products {
        gap: 0.625rem;
    }
}

@media screen and (max-width: 992px) {
    .account-support-content {
        gap: 2rem;
    }

    .account-support-faq .faq-question {
        min-height: 3.75rem;
        padding: 0.625rem 1.25rem;
        font-size: 1.125rem;
        font-weight: 500;
    }

    .account-support-copy p {
        font-size: 1rem;
        font-weight: 500;
        text-box-trim: trim-both;
        text-box-edge: cap alphabetic;
    }

    .account-support-actions {
        grid-template-columns: minmax(0, 1fr);
        gap: 0.625rem;
    }
}

@media screen and (max-width: 992px) {
    .auth-page {
        padding-top: 2rem;
    }

    .auth-breadcrumbs {
        display: block;
        margin-bottom: 2rem;
    }

    .auth-layout {
        grid-template-columns: minmax(0, 1fr);
        gap: 0.625rem;
        width: calc(100% - 2.5rem);
    }

    .auth-visual {
        height: 11.0625rem;
    }

    .auth-visual-copy {
        right: 1.25rem;
        bottom: 1.25rem;
        left: 1.25rem;
        gap: 1.25rem;
    }

    .auth-visual-copy > h2 {
        font-size: 1.5rem;
        line-height: 1.2;
    }

    .auth-panel {
        gap: 1.5rem;
        min-height: 0;
        padding: 1.875rem 1.25rem;
    }

    .auth-form > .order-heading {
        font-size: 2rem;
    }

    .auth-switch {
        font-size: 1rem;
    }

    .auth-password-hint {
        letter-spacing: -0.05em;
    }

    .auth-legal-desktop {
        display: none;
    }

    .auth-legal-mobile {
        display: initial;
    }
}

@media screen and (max-width: 992px) {
    .auth-mobile-break {
        display: initial;
    }
}
