﻿@media (min-width: 1200px) {
    .page-header .entry-title, .site-footer .footer-inner, .site-footer:not(.dynamic-footer), .site-header .header-inner, .site-header:not(.dynamic-header), body:not([class*=elementor-page-]) .site-main {
        max-width: 100%;
    }
}
@media (max-width: 1023px) {
    .section,
    .hero {
        padding: 64px 0;
    }

    .hero--home {
        min-height: auto;
    }

    .hero__grid {
        gap: 42px;
        grid-template-columns: 1fr;
        min-height: 0;
    }

    .hero__content {
        grid-template-rows: auto;
        min-height: 0;
        padding-top: 0;
    }

    .hero__dots {
        align-self: auto;
        margin-top: 48px;
    }

    .hero__controls {
        bottom: 36px;
        right: 24px;
    }

    .hero__images {
        gap: 24px;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hero__image-card--primary {
        height: auto;
        margin-top: 40px;
    }

    .hero__image-card--secondary {
        height: auto;
    }

    .page-hero,
    .page-hero__inner {
        min-height: 320px;
    }

    .page-hero::before {
        background: linear-gradient(90deg, rgba(255, 255, 255, 0.98) 0%, rgba(255, 255, 255, 0.9) 48%, rgba(255, 255, 255, 0.18) 100%);
    }

    .contact-content {
        padding: 64px 0;
    }

    .contact-content__grid {
        gap: 42px;
        grid-template-columns: 1fr;
    }

    .contact-content__title {
        text-align: left;
    }

    .contact-info-card {
        padding: 42px;
    }

    .blog-page {
        padding: 72px 0;
    }

    .blog-page__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        max-width: 760px;
    }

    .about-story {
        padding: 76px 0 46px;
    }

    .about-story__grid {
        gap: 42px;
        grid-template-columns: 1fr;
    }

    .about-story__content {
        max-width: 760px;
    }

    .about-values {
        padding: 42px 0 64px;
    }

    .about-values__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .about-cta {
        padding-bottom: 76px;
    }

    .about-cta__content {
        padding: 48px;
    }

    .shop-page {
        padding: 64px 0 76px;
    }

    .shop-page__layout {
        gap: 34px;
        grid-template-columns: 1fr;
    }

    .shop-products__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .section-compact {
        padding: 64px 0;
    }

    .product-showcase {
        padding: 56px 0 48px;
    }

    .product-showcase__header {
        margin-bottom: 36px;
    }

    .product-showcase__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .home-about {
        padding: 56px 0 72px;
    }

    .home-about__grid {
        gap: 36px;
        grid-template-columns: 1fr;
    }

    .home-about__content {
        max-width: 620px;
    }

    .home-blog {
        padding: 42px 0 72px;
    }

    .home-blog__header {
        gap: 24px;
        margin-bottom: 36px;
    }

    .home-blog__grid {
        gap: 24px;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .home-quality,
    .home-quality__inner {
        min-height: 460px;
    }

    .home-quality::before {
        background: linear-gradient(90deg, rgba(255, 255, 255, 0.98) 0%, rgba(255, 255, 255, 0.9) 48%, rgba(255, 255, 255, 0.36) 100%);
    }

    .home-quality__content {
        max-width: 500px;
    }

    .site-footer {
        padding: 0;
    }

    .site-footer__newsletter {
        gap: 28px;
        grid-template-columns: 1fr;
        padding-bottom: 38px;
        padding-top: 42px;
    }

    .site-footer__brand {
        border-right: 0;
        border-bottom: 1px solid #cbd8e8;
        min-height: 0;
        padding: 0 0 28px;
    }

    .site-footer__newsletter-form {
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .site-footer__main {
        gap: 36px;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        margin-bottom: 46px;
        margin-top: 0;
        padding-top: 42px;
    }

    .site-footer__bottom-inner {
        align-items: flex-start;
        display: grid;
        min-height: 0;
        padding-bottom: 28px;
        padding-top: 28px;
    }

    .site-footer__bottom-inner a:first-child {
        padding-left: 0;
    }
}


@media (max-width: 767px) {
    .site-topbar__inner {
        grid-template-columns: 1fr;
        justify-items: center;
        padding: 12px 0;
    }

    .site-social {
        justify-content: center;
    }

    .site-mainbar {
        grid-template-columns: 1fr;
        justify-items: center;
        gap: 16px;
        padding: 24px 0;
    }

    .site-nav {
        gap: 16px;
        justify-content: flex-start;
        overflow-x: auto;
        padding-bottom: 4px;
        width: 100%;
    }

    .site-brand--center {
        font-size: 38px;
        grid-row: 1;
    }

    .site-actions {
        justify-content: center;
    }

    .hero__title {
        font-size: clamp(48px, 16vw, 64px);
    }

    .hero__subtitle {
        font-size: 17px;
    }

    .hero__button {
        font-size: 16px;
        min-height: 52px;
        min-width: 184px;
        padding: 16px 28px;
    }

    .hero__dots {
        margin-top: 34px;
    }

    .hero__controls {
        bottom: 24px;
        right: 20px;
    }

    .hero__control {
        height: 46px;
        width: 46px;
    }

    .hero__images {
        grid-template-columns: 1fr;
    }

    .hero__image-card--primary,
    .hero__image-card--secondary {
        aspect-ratio: 4 / 5;
        height: auto;
        margin-top: 0;
    }

    .page-hero,
    .page-hero__inner {
        min-height: 280px;
    }

    .page-hero::before {
        background: rgba(255, 255, 255, 0.86);
    }

    .page-hero__image {
        object-position: 68% center;
    }

    .page-hero__title {
        font-size: 44px;
    }

    .page-hero__breadcrumb {
        font-size: 14px;
    }

    .contact-content {
        padding: 48px 0;
    }

    .contact-form__row {
        grid-template-columns: 1fr;
    }

    .contact-content__title,
    .contact-info-card h2 {
        font-size: 28px;
    }

    .contact-form textarea {
        min-height: 240px;
    }

    .contact-info-card {
        padding: 32px 24px;
    }

    .contact-info-card__follow {
        gap: 18px;
    }

    .contact-info-card__follow strong {
        flex: 1 0 100%;
    }

    .blog-page {
        padding: 56px 0;
    }

    .blog-page__grid {
        grid-template-columns: 1fr;
        max-width: 420px;
    }

    .blog-page__body {
        gap: 28px;
        padding: 26px 24px;
    }

    .blog-page__title {
        font-size: 22px;
    }

    .blog-page__meta {
        padding: 16px 24px;
    }

    .about-hero,
    .about-hero .page-hero__inner {
        min-height: 300px;
    }

    .about-hero__text {
        font-size: 15px;
    }

    .about-story {
        padding: 56px 0 34px;
    }

    .about-story__grid {
        gap: 32px;
    }

    .about-story__content h2,
    .about-values__header h2,
    .about-cta__content h2 {
        font-size: 34px;
    }

    .about-values {
        padding: 34px 0 52px;
    }

    .about-values__grid {
        grid-template-columns: 1fr;
    }

    .about-value-card {
        min-height: 0;
        padding: 30px 24px;
    }

    .about-cta {
        padding: 8px 0 56px;
    }

    .about-cta__panel {
        min-height: 360px;
    }

    .about-cta__panel::before {
        background: rgba(237, 249, 255, 0.86);
    }

    .about-cta__content {
        padding: 36px 26px;
    }

    .about-cta__content a {
        min-width: 156px;
    }

    .shop-page {
        padding: 48px 0 60px;
    }

    .shop-page__toolbar {
        align-items: stretch;
        display: grid;
        gap: 18px;
    }

    .shop-page__sort select {
        min-width: 0;
        width: 100%;
    }

    .shop-products__grid {
        grid-template-columns: 1fr;
    }

    .shop-product-card {
        min-height: 0;
    }

    .shop-filter__panel {
        padding: 18px;
    }

    .product-showcase {
        padding: 48px 0 44px;
    }

    .product-showcase__header {
        display: grid;
        gap: 20px;
    }

    .section-heading {
        font-size: 38px;
        margin-bottom: 12px;
    }

    .section-text {
        font-size: 16px;
    }

    .product-showcase__header-link {
        justify-self: start;
        margin-top: 0;
    }

    .product-showcase__grid {
        grid-template-columns: 1fr;
    }

    .product-showcase__footer {
        margin-top: 36px;
    }

    .home-about {
        padding: 44px 0 60px;
    }

    .home-about__media img {
        aspect-ratio: auto;
    }

    .home-blog {
        padding: 36px 0 60px;
    }

    .home-blog__header {
        display: grid;
        gap: 20px;
    }

    .home-blog__archive {
        justify-self: start;
    }

    .home-blog__grid {
        grid-template-columns: 1fr;
    }

    .home-blog__card {
        padding: 12px 12px 16px;
    }

    .home-blog__date {
        font-size: 12px;
        left: 14px;
        padding: 9px 11px;
        top: 14px;
    }

    .home-blog__post-title {
        font-size: 20px;
    }

    .home-quality {
        background-position: center right;
    }

    .home-quality,
    .home-quality__inner {
        min-height: 430px;
    }

    .home-quality::before {
        background: rgba(255, 255, 255, 0.9);
    }

    .home-quality__badge {
        font-size: 10px;
        margin-bottom: 24px;
        padding: 10px 14px;
    }

    .home-quality__button {
        min-height: 52px;
        min-width: 170px;
    }

    .site-footer {
        padding: 0;
    }

    .site-footer__newsletter {
        padding-bottom: 34px;
        padding-top: 32px;
    }

    .site-footer__brand-mark {
        flex-basis: 56px;
        font-size: 18px;
        height: 56px;
        width: 56px;
    }

    .site-footer__brand-text {
        font-size: 22px;
    }

    .site-footer__newsletter-copy h2 {
        font-size: 23px;
    }

    .site-footer__newsletter-copy p {
        font-size: 15px;
    }

    .site-footer__newsletter-form {
        grid-template-columns: 1fr;
    }

    .site-footer__newsletter-form input[type="email"],
    .site-footer__newsletter-form button {
        min-height: 54px;
        width: 100%;
    }

    .site-footer__newsletter-form button {
        min-width: 0;
    }

    .site-footer__main {
        gap: 34px;
        grid-template-columns: 1fr;
        margin-bottom: 36px;
        margin-top: 0;
        padding-top: 36px;
    }

    .site-footer h3 {
        font-size: 21px;
        margin-bottom: 18px;
    }

    .site-footer__contact {
        gap: 20px;
    }

    .site-footer__links a {
        min-height: 54px;
    }

    .site-footer__bottom-inner {
        padding-bottom: 26px;
        padding-top: 26px;
    }

    .site-footer__bottom-inner nav {
        display: grid;
        gap: 14px;
    }

    .site-footer__bottom-inner a,
    .site-footer__bottom-inner a:first-child,
    .site-footer__bottom-inner a:last-child {
        border-left: 0;
        padding: 0;
    }
}
