#fd_contact_footer_banner-container {
    color: var(--fd_contact-banner-link-text-color, #fff);
    background: var(--fd_contact-banner-card-bg-color, #183157);
    border: 1px solid var(--fd_contact-banner-card-border-color, #fff);
    border-radius: var(--fd_contact-banner-card-border-radius, 4px);
    margin: auto;
    @media (min-width: 768px) {
        max-width:320px;
    }
    #contact-banner-title{
        font: var(--fd_contact-banner-card-title-font, normal normal 800 18px/22px inherit);
        color: var(--fd_contact-banner-card-title-color, inherit);
        margin: 0 0 15px 0
    }
    .contact-banner{
        display: flex;
        flex-direction: column;
        align-items: center;
        margin:0 auto;
        padding:15px;
        text-align:center;
        font-size:16px;

        .showroom-container {
            display: flex;
            align-items: center;
            gap: 12px;

            a {
                width: fit-content;

                &:hover {
                    text-decoration: none;

                    .text-container {
                        .subtitle {
                            color: var(--fd_contact-banner-card-subtitle-hover-text-color, inherit);

                            &:after {
                                border-color: var(--fd_contact-banner-card-subtitle-hover-text-color, transparent) var(--fd_contact-banner-card-subtitle-hover-text-color, transparent) transparent transparent;
                            }
                        }
                        .address-line {
                            color: var(--fd_contact-banner-adresses-hover-text-color, inherit);
                        }
                    }
                }
            }

            .text-container {
                display: flex;
                flex-direction: column;
                align-items: flex-start;
            }

            img,svg {
                width: 75px;
            }

            svg {
                overflow: visible;
                & > g {
                    animation: puce-bounce 0.8s ease-in-out infinite;
                    transform-box: fill-box;
                    transform-origin: center bottom;
                    animation-play-state: paused;
                }
                &:hover > g {
                    animation-play-state: running;
                }
            }

            .subtitle {
                font: var(--fd_contact-banner-card-subtitle-font, normal normal 700 14px/17px inherit);
                color: var(--fd_contact-banner-card-subtitle-color, inherit);
                display: flex;

                &:after {
                    content: "";
                    width: 10px;
                    height: 10px;
                    display: block;
                    border: 2px solid var(--fd_contact-banner-link-text-color, transparent);
                    border-color: var(--fd_contact-banner-link-text-color, transparent) var(--fd_contact-banner-link-text-color, transparent) transparent transparent;
                    transform: rotate(45deg);
                    scale: 0.7;
                    margin-top: 4px;
                }
            }
            .address-line {
                font: var(--fd_contact-banner-adresses-text-font, normal normal 300 14px/17px inherit);
                color: var(--fd_contact-banner-adresses-text-color, inherit)
            }
        }

        .links-container {
            display: flex;
            flex-direction: column;
            gap: 10px;
            margin: 16px 0 6px;
            font: var(--fd_contact-banner-link-text-font, normal normal 500 16px/20px inherit);
            a {
                margin:0 0;
                color:inherit;

                &:hover{
                    color: var(--fd_contact-banner-link-hover-text-color, inherit);
                    text-decoration: none;
                }

                &:not(:last-child)::after {
                    content: "";
                    display: block;
                    width: 20px;
                    height: 1px;
                    background: var(--fd_contact-banner-divider-color, inherit);
                    margin: 10px auto 0;
                }
            }
        }

        .phones-container {
            display:grid;
            justify-content: center;
            gap:10px;
            margin:16px 0 6px
        }

        .call-btn{
            display: block;
            border: 2px solid var(--fd_contact-banner-phone-button-border-color, #fff);
            border-radius: 999px;
            padding: 4px 35px;
            text-decoration: none;
            color: var(--fd_contact-banner-phone-button-text-color, inherit);
            transition: background .2s ease, border-color .2s ease, transform .06s ease;

            strong{
                display:block;
                font-size:14px;
                letter-spacing: 0;
                line-height: 21px;
                color: inherit;
            }

            span{
                display:block;
                font-weight:bold;
                font-size:19px;
                letter-spacing: 0;
                line-height: 21px;
                color: inherit;
            }

            &:hover{
                background: var(--fd_contact-banner-phone-button-hover-bg-color, transparent);
                color: var(--fd_contact-banner-phone-button-hover-text-color, inherit);
                transform: translateY(-1px)
            }
        }

        .schedule-link-popup {
            margin:14px 0 0 0;
            font: var(--fd_contact-banner-see-schedule-font ,normal normal 700 14px/17px inherit);
            &:before {
                content: "";
                display: block;
                width: 20px;
                height: 1px;
                background: var(--fd_contact-banner-divider-color, inherit);
                margin: 0 auto 10px auto;
            }

            a {
                display: inline-flex;
                align-items: center;
                color: var(--fd_contact-banner-link-text-color, inherit);
                padding: 0;
                border-radius: 4px;
                font-weight: 600;
                text-decoration: none;

                &:hover {
                    color: var(--fd_contact-banner-link-hover-text-color, inherit);
                    text-decoration: underline;
                    &:after{
                        text-decoration: none;
                        border-color: var(--fd_contact-banner-link-hover-text-color, transparent) var(--fd_contact-banner-link-hover-text-color, transparent) transparent transparent;
                    }
                }

                &:after {
                    content: "";
                    width: 10px;
                    height: 10px;
                    display: block;
                    border: 2px solid var(--fd_contact-banner-link-text-color, transparent);
                    border-color: var(--fd_contact-banner-link-text-color, transparent) var(--fd_contact-banner-link-text-color, transparent) transparent transparent;
                    transform: rotate(45deg);
                    scale: 0.7;
                }
            }
        }

        .shop-status-pill {
            display: inline-flex;
            align-items: center;
            padding: 1px 5px 1px 2px;
            border-radius: 999px;
            background-color: #ffffff;
            border: 1px solid #d0d6d9;
            font-size: 13px;
            font-weight: 600;
            color: #555;
            line-height: 1;
            gap: 6px;
        }

        .shop-status-pill__dot {
            width: 14px;
            height: 14px;
            border-radius: 50%;
            background-color: #c62828; /* fermé par défaut */
            flex-shrink: 0;
        }

        .shop-status-pill--open {
            border-color: #9bc53d;
            color: #555;
        }

        .shop-status-pill--open .shop-status-pill__dot {
            background-color: #9bc53d;
        }

        /* FERMÉ */
        .shop-status-pill--closed {
            border-color: #c62828;
        }

        .shop-status-pill--closed .shop-status-pill__dot {
            background-color: #c62828;
        }
    }

    /* =============== DIALOG GLOBAL =============== */
    .fd_contact_footer_banner-dialog {
        border: none;
        padding: 0;
        margin: 0;
        max-width: 700px;
        width: 90%;
        background: var(--fd_contact-banner-modal-bg-color, white);
        border-radius: 4px;
        position: fixed;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);

        .hours-dialog-inner {
            padding: 18px;
            position: relative;
        }

        .hours-dialog-content {
            background: var(--fd_contact-banner-modal-bg-color, white);
            border-radius: 4px;
            padding: 40px 30px 32px;
            text-align: center;
            font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI",
            Roboto, sans-serif;
            color: #255f64;
            position: relative;
        }

        .hours-dialog-close {
            position: absolute;
            top: 10px;
            right: 12px;
            border: none;
            background: transparent;
            font-size: 26px;
            line-height: 1;
            cursor: pointer;
            color: var(--fd_contact-banner-modal-title-color, black);
            opacity: 0.7;
            z-index: 1;
        }

        .hours-dialog-close:hover {
            opacity: 1;
        }

        .hours-dialog-content {
            h2 {
                font-size: 20px;
                letter-spacing: 0.08em;
                font-weight: 700;
                margin: 0 0 8px;
                text-transform: uppercase;
                color: var(--fd_contact-banner-modal-title-color, black) !important;
                display: flex;
                flex-direction: row;
                justify-content: center;
                align-items: center;
            }

            h3 {
                margin: 8px 0 6px;
                font-size: 18px;
                font-weight: 600;
                color: var(--fd_contact-banner-modal-text-color, black) !important;
            }

            p {
                margin: 0;
                font-size: 15px;
                line-height: 1.6;
                color: var(--fd_contact-banner-modal-text-color, black);
            }

            .hours-separator {
                display: block;
                width: 40px;
                height: 2px;
                background: var(--fd_contact-banner-modal-separator-color, #DFDFDF);
                margin: 10px auto 14px;
            }
        }
    }

    .fd_contact_footer_banner-dialog::backdrop {
        background: rgba(0, 0, 0, 0.45);
    }

    @media (max-width:360px){
        .contact-banner{padding:18px;}
        .contact-banner .call-btn span{font-size:13px;}
    }
    @media (max-width: 480px) {
        .hours-dialog-content {
            padding: 28px 18px 24px;
        }

        .hours-dialog-content h2 {
            font-size: 17px;
        }

        .hours-dialog-content h3 {
            font-size: 16px;
        }

        .hours-dialog-content p {
            font-size: 14px;
        }
    }
}
@keyframes puce-bounce {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-3px);
    }
}
