.iti-congress-locations {
    background: #f5f5f5;
    font-family: "PP Neue Montreal", sans-serif;
}

.iti-congress-locations__title {
    margin: 0;
    color: var(--gray-100);
    font-family: "PP Neue Montreal", sans-serif;
    font-size: clamp(32px, 2.92vw, 56px);
    font-weight: 500;
    line-height: 130%;
    text-transform: uppercase;
}

.iti-congress-locations__content {
    display: flex;
    gap: clamp(32px, 5.42vw, 104px);
    align-items: center;
    justify-content: center;
}

.iti-congress-locations__map,
.iti-congress-locations__map-item {
    width: clamp(400px, 42.6vw, 818px);
    height: clamp(260px, 20.3vw, 390px);
}

.iti-congress-locations__map {
    flex: 0 1 clamp(400px, 42.6vw, 818px);
}

.iti-congress-locations__map-item {
    position: relative;
    height: 100%;
    overflow: hidden;
}

.iti-congress-locations__map-item iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
}

.iti-congress-locations__route {
    position: absolute;
    bottom: 32px;
    left: 50%;
    white-space: nowrap;
    transform: translateX(-50%);
}

.iti-congress-locations__details {
    display: flex;
    flex: 0 0 auto;
    flex-direction: column;
    gap: clamp(24px, 2.5vw, 48px);
}

.iti-congress-locations__location {
    display: flex;
    width: clamp(220px, 15.625vw, 300px);
    gap: 12px;
}

.iti-congress-locations__pin {
    flex: 0 0 auto;
    width: 16px;
    height: 22px;
    margin-top: 2px;
    background: var(--gray-100);
    clip-path: path("M7.735 0C12.007 0 15.471 3.463 15.471 7.735C15.471 14.854 7.756 21.981 7.735 22C7.735 22 0 14.864 0 7.735C0 3.463 3.463 0 7.735 0ZM7.735 3.381A4.354 4.354 0 1 0 7.735 12.09A4.354 4.354 0 0 0 7.735 3.381Z");
}

.iti-congress-locations__info {
    display: flex;
    flex-direction: column;
}

.iti-congress-locations__city {
    margin: 0 0 4px;
    color: var(--gray-100);
    font-size: clamp(16px, 1.04vw, 20px);
    font-weight: 400;
    line-height: 1.3;
}

.iti-congress-locations__address {
    margin: 0 0 clamp(12px, 1.04vw, 20px);
    color: var(--gray-60);
    font-size: 14px;
    line-height: 1.4;
}

.iti-congress-locations__schedule,
.iti-congress-locations__phone {
    color: var(--gray-100);
    font-size: 14px;
    line-height: 1.4;
}

.iti-congress-locations__phone {
    width: fit-content;
    margin-top: 4px;
    text-decoration: none;
}

@media (max-width: 900px) {
    .iti-congress-locations__content {
        flex-direction: column;
        gap: 40px;
        align-items: flex-start;
    }

    .iti-congress-locations__map,
    .iti-congress-locations__map-item {
        width: 100%;
        height: 390px;
    }

    .iti-congress-locations__map {
        flex-basis: auto;
    }
}

@media (max-width: 600px) {
    .iti-congress-locations__title {
        font-size: 36px;
    }

    .iti-congress-locations__map,
    .iti-congress-locations__map-item {
        height: 320px;
    }

    .iti-congress-locations__route {
        bottom: 20px;
    }

    .iti-congress-locations__location {
        width: 100%;
    }
}
