.elementor-2993 .elementor-element.elementor-element-995c875{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}/* Start custom CSS for shortcode, class: .elementor-element-27ee326 *//* --- TEXTE INTRO (h2 sur-titre, h3 titre principal) --- */
#content-hotspot-3165 h2 {
    font-family: "Comfortaa", Sans-serif;
    font-size: 13px !important;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: #1a2b5e !important;
    margin-bottom: 5px !important;
}

#content-hotspot-3165 h3 {
    font-family: "Josefin Sans", Sans-serif;
    font-size: 42px !important;
    font-weight: 900 !important;
    color: #1a2b5e !important;
    position: relative;
    display: inline-block;
    z-index: 1;
    margin-bottom: 25px !important;
}

#content-hotspot-3165 h3::after {
    content: "";
    position: absolute;
    bottom: 6px;
    left: 0;
    width: 100%;
    height: 10px;
    background-color: #ff8da1;
    z-index: -1;
    opacity: 0.7;
}

/* --- BLOC INITIAL TRANSPARENT --- */
#content-hotspot-3165 .hotspot-initial {
    background: transparent !important;
    box-shadow: none !important;
    padding-left: 0 !important;
}

/* --- STRUCTURE GLOBALE --- */
#hotspot-3165 .hotspots-image-container,
#hotspot-3165 .leaflet-container {
    background-color: rgba(0, 0, 0, 0) !important;
}

#hotspot-3165 .hotspots-interaction {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    background: transparent !important;
    width: 100% !important;
    max-width: 1400px;
    margin: 0 auto;
    gap: 5%;
}

#hotspot-3165 .hotspots-placeholder {
    flex: 0 0 35% !important;
    max-width: 35% !important;
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 !important;
    display: flex;
    flex-direction: column;
}

#hotspot-3165 .hotspots-image-container {
    flex: 0 0 60% !important;
    max-width: 60% !important;
}

#hotspot-3165 .hotspots-image,
#hotspot-3165 .leaflet-container {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 1724 / 1294;
    background: transparent !important;
}

div#hotspot-hotspot-3165-0 {
    width: 100% !important;
}

div#content-hotspot-3165 {
    gap: 20px;
}

/* --- FICHE COMMUNE --- */
.hotspot-info .hotspot-thumb {
    height: 280px !important;
    overflow: hidden;
    border-radius: 8px;
}

.hotspot-info .hotspot-thumb img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center;
    border-radius: 8px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
}

.hotspot-info .hotspot-content {
    position: absolute !important;
    bottom: 10px;
    left: 10px;
    right: 10px;
    background: rgba(255, 255, 255, 0.65) !important;
    backdrop-filter: blur(10px) saturate(140%) !important;
    -webkit-backdrop-filter: blur(10px) saturate(140%) !important;
    border: 1px solid rgba(255, 255, 255, 0.8) !important;
    border-radius: 10px !important;
    padding: 16px 20px !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1) !important;
    z-index: 10;
}

.hotspot-info .hotspot-content p {
    font-family: 'Josefin Sans', sans-serif !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    color: #1a2b5e !important;
    line-height: 1.5 !important;
    margin: 5px 0 !important;
}

.hotspot-info .hotspot-content p strong {
    color: #ff8da1 !important;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 11px;
    letter-spacing: 0.5px;
    margin-right: 5px;
    display: inline-block;
}

.hotspot-info .hotspot-content a {
    color: #1a2b5e !important;
    text-decoration: underline;
}

.hotspot-info .hotspot-title {
    position: absolute !important;
    top: 15px;
    left: 20px;
    color: #ffffff !important;
    font-family: "Josefin Sans", Sans-serif;
    font-size: 24px !important;
    font-weight: 800 !important;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.5) !important;
    z-index: 11;
}

/* --- VIGNETTE PAR DÉFAUT --- */
#content-hotspot-3165 .hotspot-initial .hotspot-content::after {
    content: "";
    display: block;
    width: 380px;
    height: 220px;
    margin-top: 30px;
    border-radius: 8px;
    background-image: url('https://doubsbaumois.org/wp-content/uploads/2025/09/4486ad60921d99b0fa9c9d57e73ecd309fcac19a-1-scaled.jpg');
    background-size: cover;
    background-position: center;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
    transition: opacity 0.3s;
}

#content-hotspot-3165:has(.hotspot-info.visible) .hotspot-initial .hotspot-content::after {
    display: none !important;
}

/* --- MOBILE --- */
@media (max-width: 991px) {
    #hotspot-3165 .hotspots-interaction { flex-direction: column !important; }
    #hotspot-3165 .hotspots-placeholder,
    #hotspot-3165 .hotspots-image-container { flex: 0 0 100% !important; max-width: 100% !important; }
    .hotspot-info.visible,
    #content-hotspot-3165 .hotspot-initial .hotspot-content::after { width: 100% !important; }
}

.hotspot-info .hotspot-title {
    position: absolute !important;
    top: 15px;
    left: 15px;
    color: #1a2b5e !important;
    font-family: "Josefin Sans", Sans-serif;
    font-size: 13px !important;
    font-weight: 800 !important;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    background: rgba(255, 255, 255, 0.85) !important;
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    padding: 6px 14px !important;
    border-radius: 20px !important;
    z-index: 11;
    text-shadow: none !important;
}/* End custom CSS */