.lre-map {
    background: #ffffff;
    color: var(--lre-color-ink);
    padding-block: clamp(70px, 7vw, 120px);
    padding-top: 10px;
}

.lre-map__inner {
    max-width: 1250px;
    margin-inline: auto;
    padding-inline: 20px;
}



.lre-map__inner--head {
    text-align: center;
    margin-bottom: clamp(20px, 3vw, 36px);
}

.lre-map__title {
    margin: 0;
    font-family: var(--lre-font-serif);
    font-weight: 600;
    font-size: clamp(26px, 3vw, 40px);
    letter-spacing: 0.12em;
    text-transform: uppercase;
    line-height: 1.15;
}

/* Mapa — pełna szerokość (bleed), obraz skalowany proporcjonalnie */
.lre-map__map {
    width: 100%;
    margin-block: clamp(8px, 2vw, 24px);
}

.lre-map__image {
    width: 100%;
    height: auto;
}

/* Punkty */
.lre-map__points {
    list-style: none;
    margin: clamp(24px, 3vw, 48px) 0 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: clamp(16px, 2vw, 32px);
}

.lre-map__point {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.lre-map__point-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    @media (max-width: 1000px){
        width: 25px;
        height: 25px;
    }
}

@media (max-width: 1000px){

}

.lre-map__point-icon-img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.lre-map__point-title {
    font-family: var(--lre-font-serif);

    /*font-size: clamp(16px, 1.3vw, 19px);*/

    text-transform: uppercase;
    color: #1F1A14;
    font-family: Georgia;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin: 36px 0 18px!important;
    @media (max-width: 1000px){
        color: #1F1A14;
        font-family: Georgia;
        font-size: 16px;
        font-style: normal;
        font-weight: 400;
        line-height: normal;
    }
}

.lre-map__point-text {
    margin: 0;
    max-width: 24ch;
    font-family: var(--lre-font-sans);
    color: #1F1A14;
    text-align: center;
    font-family: Lato;
    font-size: 15px;
    font-style: normal;
    font-weight: 300;
    line-height: 1.4;
    color: #1F1A14;
    @media (max-width: 1000px){
        color: #1F1A14;
        text-align: center;
        font-family: Lato;
        font-size: 12.675px;
        font-style: normal;
        font-weight: 300;
        line-height: 16.9px;
    }
}

/* Tablet: 3 kolumny */
@media (max-width: 1024px) {
    .lre-map__points {
        grid-template-columns: repeat(3, 1fr);
        row-gap: clamp(28px, 4vw, 40px);
    }
}

/* Mobile: 2 kolumny */
@media (max-width: 560px) {
    .lre-map__points {
        grid-template-columns: repeat(2, 1fr);
        column-gap: 16px;
    }

    .lre-map__title {
        letter-spacing: 0.08em;
    }
}
