/* MAIN WRAPPER — leave unchanged unless needed */
.proximity-wrap {
    display: flex;
    margin: 0 160px;
    padding: 80px 0;
    justify-content: center;
    align-items: center;
    gap: 80px;
}

.prox-right {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 20px;
}

.prox-head {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 20px;

    font-family: var(--font-henry);
    font-size: 24px;
    font-weight: 300;
}


/* ✅ GRID LAYOUT */
.prox-list {
    display: grid;
    grid-template-columns: 1fr 1fr;   /* 2 columns */
    grid-auto-rows: auto;     /* FILL VERTICALLY FIRST */
    gap: 20px 60px;                   /* row-gap column-gap */
    width: 100%;
}


/* Prevent breaking */
.prox-detail,
.prx-detail {
    break-inside: avoid;
    -webkit-column-break-inside: avoid;
    margin-bottom: 0;
}


/* LIST STYLES */
.prox-list-wrap ul {
    list-style-type: disc;
    list-style-position: outside;
    padding-left: 20px;
    margin: 0;
}

.prox-list-wrap li {
    text-align: left;
    font-size: 18px;
    font-weight: 300;
    font-family: var(--font-henry);
}

.map-btn {
    margin-top: 20px;
}


.map-side iframe, 
.map-side img{
    height: 100%;
    width: 900px;
    max-height: 800px;
}

.map-side img{
    object-fit: cover;
    object-position: center;
    border-radius: 8px;
}

/* ✅ TABLET — below 1024px */
@media (max-width: 1024px) {
    .proximity-wrap {
        margin: 0 60px;
        padding: 60px 0;
        gap: 40px;
        flex-direction: column;
    }

    /* Reduce map width */
    .map-side iframe,
    .map-side img {
        width: 100%;
        max-height: 600px;
    }

    /* Make proximity into 2 columns but tighter */
    .prox-list {
        grid-template-columns: 1fr 1fr;
        gap: 20px 30px;
    }
}


/* ✅ MOBILE — below 768px */
@media (max-width: 768px) {
    .proximity-wrap {
        flex-direction: column;
        margin: 0 20px;
        padding: 40px 0;
        gap: 40px;
    }

    /* Prox text full width */
    .prox-right {
        width: 100%;
        align-items: flex-start;
    }

    .prox-head {
        text-align: center;
        font-size: 20px;
    }

    /* Switch list to 1 column */
    .prox-list {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .map-side iframe,
    .map-side img {
        width: 100%;
        height: auto;
        max-height: 450px;
    }

    .map-btn {
        width: 100%;
        text-align: center;
    }
}

/* ✅ SMALL MOBILE — below 480px */
@media (max-width: 480px) {
    .prox-head {
        font-size: 18px;
    }

    .prox-list-wrap li {
        font-size: 16px;
    }
}
