@media (max-width: 1100px) {
    .hero__content,
    .visitor__grid,
    .case__layout,
    .adaptation__grid,
    .contact__grid,
    .venues__map {
        grid-template-columns: 1fr;
    }

    .pipeline {
        grid-template-columns: 1fr;
    }

    .pipeline__rule {
        width: 1px;
        height: 28px;
        margin-left: 22px;
        background: var(--gold);
    }

    .tg-phone {
        margin: 8px 0 0;
    }

    .journey {
        grid-template-columns: 1fr;
    }

    .journey__step {
        padding: 22px 0;
        border-left: 1px solid var(--light-line);
        padding-left: 20px;
    }

    .journey__step::before {
        top: 50%;
        width: 12px;
        left: -1px;
    }

    .adapt-modules ul {
        columns: 1;
    }

    .contact__portrait img,
    .portrait-placeholder {
        min-height: 380px;
    }
}

@media (max-width: 767px) {
    .wrap,
    .wrap--narrow {
        width: min(calc(100% - 32px), var(--wrap));
    }

    .section {
        padding: 88px 0;
    }

    .hero__content,
    .visitor__grid,
    .venues__content,
    .case__layout {
        padding-top: 96px;
        padding-bottom: 48px;
    }

    .hero__actions,
    .hero__actions .btn,
    .poster .btn,
    .case__copy .btn {
        width: 100%;
    }

    .section-head {
        margin-bottom: 40px;
    }

    .editorial-list__item {
        grid-template-columns: 3rem 1fr;
        gap: 12px;
    }

    .editorial-list__item p {
        max-height: 80px;
        opacity: 1;
    }

    .venues__map {
        grid-template-columns: 1fr;
    }

    .venues__join {
        height: 36px;
        grid-template-columns: 1fr;
        justify-items: start;
    }

    .venues__line {
        width: 1px;
        height: 12px;
        margin-left: 24px;
    }

    .tg-phone,
    .tg-stack,
    .tg-chat {
        max-width: 100%;
    }

    .site-header__link {
        display: none;
    }
}

@media (min-width: 1440px) {
    .hero {
        min-height: 100vh;
    }
}
