@media (max-width: 1450px) {
    h2:not(.why-h2, .not) {
        font-size: 2.4rem;
    }

    h2:not(.why-h2, .not)::after,
    h2:not(.why-h2, .not)::before {
        width: 124px;
    }

    h2::before {
        right: -160px;
    }

    h2::after {
        left: -160px;
    }

    .images {
        padding-left: 40px;
        justify-content: center;
    }

    .images img {
        max-width: 55%;
    }

    .text-content p {
        line-height: 1.4;
    }

    .offer-section {
        margin-top: 10px;
        margin-bottom: 0;
        padding-bottom: 20px;
    }

    .why .textPart {
        padding: 10px !important;
        padding-left: 34px !important;
        margin-bottom: 20px;
    }

    footer {
        padding: 36px 40px;
    }

    h1 {
        font-size: 3.2rem;
    }
}

@media (max-width: 1065px) {
    .hamburger-menu {
        display: flex;
    }

    nav:has(input:checked) ul {
        right: 0%;
    }

    nav ul {
        padding-left: 0 !important;
        z-index: 999990;
        position: fixed;
        right: -100%;
        display: flex;
        flex-direction: column;
        top: 0;
        width: 100%;
        background-color: white;
        justify-content: center;
        align-items: center;
        height: 100%;
    }

    nav ul a.link {
        margin-right: 0;
    }

    h2 {
        max-width: 390px;
    }

    .section.first {
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }

    .images img {
        max-width: 75%;
    }

    .text-content {
        max-width: 90%;
    }

    a.cta-link {
        margin-bottom: 80px;
    }
}

@media (max-width: 868px) {
    .offer-content.section {
        flex-direction: column;
    }
    .offer-description {
        max-width: 90%;
    }

    .offer-specialization {
        margin-top: 40px;
    }

    .section.why {
        margin-top: 20px;
    }

    .end-section h2 {
        font-size: 2.2rem !important;
        max-width: unset;
    }

    .textPart *:not(h2) {
        font-size: 20px;
    }
    .images img {
        max-width: 100%;
    }
    .section {
        margin-top: 40px;
    }

    h2:not(.why-h2, .not) {
        font-size: 2.2rem;
    }

    h2:not(.why-h2, .not)::after,
    h2:not(.why-h2, .not)::before {
        width: 84px;
    }
    h2::before {
        right: -120px;
    }

    h2::after {
        left: -120px;
    }

    header .name {
        font-size: 2rem;
    }

    header img {
        height: 64px;
    }

    h1 {
        font-size: 2.6rem;
        line-height: 1.4;
    }

    header p {
        font-size: 1.4rem;
    }

    .header-card {
        padding: 32px 24px;
    }

    header {
        min-height: 580px;
        padding-top: 140px;
    }
    footer h1 {
        font-size: 2.2rem;
    }
    footer .name {
        font-size: 2rem;
    }

    h2:not(.why-h2, .not)::after,
    h2:not(.why-h2, .not)::before {
        width: 0;
    }

    .images {
        max-width: 60%;
    }
}
@media (max-width: 600px) {
    .header-card {
        padding: 24px;
    }

    header p {
        margin-bottom: 18px;
        font-weight: 400;
    }
    header {
        min-height: 660px;
        padding-top: 140px;
    }
    h1 {
        font-size: 2.4rem;
        line-height: 1.3;
    }
    header h1 {
        max-width: 340px;
    }
    header .buttons {
        margin-top: 18px;
        gap: 16px;
    }

    h2.first-h2 {
        margin-top: 12px !important;
    }
    .text-content {
        width: 100%;
    }
    .section {
        padding: 0 !important;
    }
    .images {
        padding-left: 10px;
        padding-right: 28px;
    }
    h2.first-h2,
    .why-h2,
    .end-section h2,
    h2:not(.why-h2, .not) {
        font-size: 1.6rem !important;
    }

    h3,
    .offer-description h3 {
        font-size: 24px;
    }
    .offer-description {
        width: 100%;
        max-width: unset;
    }
    .textPart *:not(h2) {
        font-size: 18px;
    }
    .mini-gallery {
        margin-top: 20px;
        gap: 28px;
    }

    .footer-links {
        width: 100%;
        flex-direction: column;
        gap: 24px;
    }

    footer h1 {
        font-size: 1.6rem !important;
    }
    footer {
        padding: 18px;
    }

    .offer-specialization img {
        width: 240px;
    }

    .offer-specialization p {
        font-size: 20px;
    }
    h1 {
        line-height: 1.1;
        margin-top: 14px;
        margin-bottom: 14px;
    }

    p.subtile {
        font-size: 16px !important;
    }

    .single-city {
        font-size: 18px;
    }

    .textPart {
        margin-top: 16px;
    }

    header {
        min-height: 680px;
        padding-top: 100px;
    }
    .header-card {
        margin-left: 14px;
        margin-right: 14px;
    }
    .images {
        max-width: 60%;
    }

    .images img {
        border: 6px solid white;
    }

    footer img {
        height: 52px;
    }

    section.why li {
        margin-bottom: 8px;
    }
}
