/* Carte ICSS: fallback public pour le nouveau paragraphe de mission.
 * Les valeurs finales sont générées par map-core.php depuis les réglages sûrs.
 */
.gmp_map_opts .icss-map-popup__mission {
    color: #344957;
    font-size: 11.5px;
    line-height: 1.3;
    margin-top: 7px !important;
    hyphens: auto;
    text-align: justify !important;
    text-align-last: left;
}

/* Google Maps Easy may reinterpret <br> sequences after the marker has been
 * synchronized. A block per editorial line keeps every line distinct,
 * including project descriptions containing four lines or more. */
.gmp_map_opts .icss-map-popup__line {
    display: block;
}

/* Compatibility with descriptions synchronized before ICSS 1.4.51. The old
 * generator preserved a newline after <br>; Google Maps Easy converted that
 * newline into a second break when building its information window. */
.gmp_map_opts .icss-map-popup__installation br + br,
.gmp_map_opts .icss-map-popup__mission br + br {
    display: none;
}

/* Server-rendered counterpart to the JavaScript map. It remains deliberately
 * compact but visible and operable, avoiding hidden content created only for
 * search engines. */
.icss-map-project-index {
    max-width: 980px;
    margin: 34px auto 12px;
    padding-top: 24px;
    border-top: 1px solid #d9e6ec;
}

.icss-map-project-index > h2 {
    margin-top: 0 !important;
}

.icss-map-project-index__intro {
    margin-bottom: 12px !important;
    color: #5c707b !important;
    font-size: 14px !important;
}

.icss-map-project-index__details > summary {
    padding: 10px 13px;
    border: 1px solid #bfd9e5;
    border-radius: 4px;
    background: #f2f8fb;
    color: #24566d;
    cursor: pointer;
    font-size: 14px;
    font-weight: 650;
}

.icss-map-project-index__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-top: 14px;
}

.icss-map-project-index__item {
    padding: 13px 15px;
    border: 1px solid #dce8ed;
    border-left: 3px solid #31a3dd;
    border-radius: 3px;
    background: #fff;
}

.icss_page_content .entry-content .icss-map-project-index__item h3 {
    margin: 0 0 5px;
    font-size: 16px;
}

.icss_page_content .entry-content .icss-map-project-index__item p {
    margin: 0 0 7px;
    font-size: 13px;
    line-height: 1.48;
}

.icss-map-project-index__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 3px 10px;
    color: #5d717c !important;
}

.icss-map-project-index__meta span + span::before {
    margin-right: 10px;
    content: "·";
}

.icss-map-project-index__mission {
    text-align: justify !important;
    text-align-last: left;
}

.icss-map-project-index__case {
    margin-bottom: 0 !important;
}

@media (max-width: 767px) {
    .icss-map-project-index__grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .icss-map-project-index__meta {
        display: block;
    }

    .icss-map-project-index__meta span {
        display: block;
    }

    .icss-map-project-index__meta span + span::before {
        content: "";
        margin: 0;
    }
}
