/* Desktop laptop / browser zoom support.
   Keep desktop proportions; only tighten header, homepage hero, and footer. */

@media (min-width: 992px) and (max-width: 1366px) {
    .site-nav__logo {
        flex-basis: 260px;
        width: 260px;
        height: 62px;
    }

    .site-nav__links,
    .site-nav__icons {
        gap: 32px;
    }

    .site-nav__links a,
    .site-nav__products-btn,
    .site-nav__links a[href$="/offers/"]::after,
    .site-nav__links a[href$="/about-us/"]::after,
    .site-nav__products-btn::after {
        font-size: 13px;
        letter-spacing: 0.39px;
    }

    .top-bar__center {
        max-width: 460px;
        font-size: 12px;
        letter-spacing: 0.72px;
    }

    .top-bar__signin,
    .top-bar__language,
    .top-bar__phone {
        font-size: 13px;
        letter-spacing: 0.39px;
    }

    .top-bar__right {
        gap: 24px;
    }

    /* Homepage first viewport: complete hero in one screen, desktop composition intact. */
    .home .hero-section {
        height: 100svh;
        min-height: 0;
        padding-bottom: 0;
    }

    .home .hero-slider,
    .home .hero-slider.slick-slider,
    .home .hero-slider .slick-list,
    .home .hero-slider .slick-track,
    .home .hero-slider .slick-slide,
    .home .hero-slider .slick-slide > div {
        height: 100%;
    }

    .home .hero-slide {
        height: 100%;
        min-height: 0;
    }

    .home .hero-slide__inner {
        padding-top: 112px;
        padding-bottom: 38px;
    }

    .home .hero-slide__content {
        max-width: 430px;
        gap: 24px;
    }

    .home .hero-slide__info,
    .home .hero-slide__pricing {
        gap: 14px;
    }

    .home .hero-slide__type,
    .home .hero-slide__from,
    .home .hero-slide__desc {
        font-size: 16px;
    }

    .home .hero-slide__name {
        font-size: 78px;
        letter-spacing: 0;
    }

    .home .hero-slide__strike {
        font-size: 22px;
    }

    .home .hero-slide__price {
        font-size: 34px;
    }

    .home .hero-slide__content .btn-primary-full {
        width: 300px;
        max-width: 300px;
        height: 42px;
        font-size: 13px;
        letter-spacing: 1.3px;
    }

    .home .hero-slide__sidebar {
        padding-top: 42px;
    }

    .home .hero-slide__num {
        font-size: 22px;
    }

    .home .hero-slide__progress {
        height: 150px;
    }

    .home .hero-slide__next {
        width: 230px;
        height: 140px;
    }

    .home .hero-slide__next-img {
        width: calc(100% - 16px);
        height: calc(100% - 16px);
    }

    .home .hero-slide__next-label {
        font-size: 18px;
    }

    .home .hero-dots-area,
    .home .hero-slider .slick-dots {
        bottom: 20px;
    }

    /* Footer keeps desktop alignment instead of stacking too early. */
    .site-footer__main {
        grid-template-columns: minmax(250px, 28fr) minmax(0, 72fr);
        padding: 48px 0;
        align-items: start;
    }

    .site-footer__newsletter {
        gap: 64px;
        max-width: none;
        padding-right: 48px;
        padding-bottom: 0;
        border-right: 1px solid var(--color-primary);
        border-bottom: 0;
    }

    .site-footer__logo {
        width: clamp(180px, 16vw, 260px);
    }

    .site-footer__form-group {
        gap: 36px;
    }

    .site-footer__form {
        gap: 18px;
    }

    .site-footer__form-title,
    .site-footer__field input,
    .site-footer__column h2 {
        font-size: 17px;
        letter-spacing: 0.45px;
    }

    .site-footer__field input {
        height: 38px;
    }

    .site-footer__field button {
        width: 28px;
        height: 28px;
        font-size: 20px;
    }

    .site-footer__form-note,
    .site-footer__links a,
    .site-footer__contact > a {
        font-size: 14px;
        letter-spacing: 0.35px;
        line-height: 1.35;
    }

    .site-footer__columns {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 56px;
        padding-top: 0;
        padding-left: 64px;
    }

    .site-footer__column h2 {
        margin-bottom: 52px;
    }

    .site-footer__links {
        gap: 26px;
    }

    .site-footer__column:nth-child(2) .site-footer__links {
        gap: 20px;
    }

    .site-footer__contact > a + a {
        margin-top: 26px;
    }

    .site-footer__socials {
        gap: 18px;
        margin-top: 64px;
    }

    .site-footer__socials a,
    .site-footer__socials img {
        width: 24px;
        height: 24px;
    }

    .site-footer__bottom {
        min-height: 42px;
    }

    .site-footer__bottom p {
        font-size: 14px;
    }
}

@media (min-width: 992px) and (max-width: 1366px) and (max-height: 650px) {
    .top-bar {
        height: 34px;
    }

    .site-nav__inner {
        height: 70px;
    }

    .site-nav__logo {
        flex-basis: 220px;
        width: 220px;
        height: 52px;
    }

    .site-nav__links,
    .site-nav__icons {
        gap: 26px;
    }

    .site-nav__links a,
    .site-nav__products-btn,
    .site-nav__links a[href$="/offers/"]::after,
    .site-nav__links a[href$="/about-us/"]::after,
    .site-nav__products-btn::after {
        font-size: 12px;
        letter-spacing: 0.33px;
    }

    .top-bar__signin,
    .top-bar__language,
    .top-bar__phone,
    .top-bar__center {
        font-size: 11px;
        letter-spacing: 0.33px;
    }

    .home .hero-slide__inner {
        padding-top: 104px;
        padding-bottom: 26px;
    }

    .home .hero-slide__content {
        max-width: 360px;
        gap: 16px;
    }

    .home .hero-slide__info,
    .home .hero-slide__pricing {
        gap: 9px;
    }

    .home .hero-slide__type,
    .home .hero-slide__from {
        font-size: 13px;
        letter-spacing: 0.39px;
    }

    .home .hero-slide__name {
        font-size: 56px;
    }

    .home .hero-slide__strike {
        font-size: 18px;
    }

    .home .hero-slide__price {
        font-size: 28px;
    }

    .home .hero-slide__desc {
        max-width: 340px;
        font-size: 13px;
        line-height: 1.3;
    }

    .home .hero-slide__content .btn-primary-full {
        width: 250px;
        max-width: 250px;
        height: 36px;
        font-size: 12px;
        letter-spacing: 1.1px;
    }

    .home .hero-slide__sidebar {
        padding-top: 24px;
    }

    .home .hero-slide__num {
        font-size: 18px;
        letter-spacing: 0.54px;
    }

    .home .hero-slide__progress {
        height: 86px;
    }

    .home .hero-slide__next {
        width: 180px;
        height: 110px;
    }

    .home .hero-slide__next-label {
        font-size: 15px;
        letter-spacing: 0.45px;
    }

    .home .hero-dots-area,
    .home .hero-slider .slick-dots {
        bottom: 16px;
    }

    .site-footer__main {
        grid-template-columns: minmax(220px, 28fr) minmax(0, 72fr);
        padding: 36px 0;
    }

    .site-footer__newsletter {
        gap: 40px;
        padding-right: 36px;
    }

    .site-footer__logo {
        width: clamp(160px, 14vw, 210px);
    }

    .site-footer__form-group {
        gap: 24px;
    }

    .site-footer__form {
        gap: 12px;
    }

    .site-footer__form-title,
    .site-footer__field input,
    .site-footer__column h2 {
        font-size: 15px;
        letter-spacing: 0.35px;
    }

    .site-footer__field input {
        height: 32px;
    }

    .site-footer__field button {
        width: 24px;
        height: 24px;
        font-size: 18px;
    }

    .site-footer__form-note,
    .site-footer__links a,
    .site-footer__contact > a {
        font-size: 13px;
        letter-spacing: 0.25px;
        line-height: 1.3;
    }

    .site-footer__columns {
        gap: 36px;
        padding-left: 44px;
    }

    .site-footer__column h2 {
        margin-bottom: 32px;
    }

    .site-footer__links,
    .site-footer__column:nth-child(2) .site-footer__links {
        gap: 14px;
    }

    .site-footer__contact > a + a {
        margin-top: 16px;
    }

    .site-footer__socials {
        gap: 12px;
        margin-top: 34px;
    }

    .site-footer__socials a,
    .site-footer__socials img {
        width: 20px;
        height: 20px;
    }

    .site-footer__bottom {
        min-height: 36px;
    }

    .site-footer__bottom p {
        font-size: 12px;
    }
}
