/**
 * Fiche avocat MultiVendorX v5 — layout template2 / mvx-theme03.
 */

body.tax-dc_vendor_shop,
body.mvx-avocat-store-page {
    .multivendorx-store-wrapper {
        display: block;
        max-width: 1080px;
        margin: 0 auto 60px;
        padding: 0 20px;
        gap: 0;
    }

    .multivendorx-store-wrapper .woocommerce {
        width: 100%;
        float: none;
    }

    .woocommerce-products-header {
        margin-bottom: 0;
        padding: 0;
    }

    /* --- Bandeau + profil (centré) --- */
    .mvx_bannersec_start.mvx-theme03 {
        margin-bottom: 0;
    }

    .woocommerce-products-header .mvx-banner-wrap > img.mvx-imgcls,
    .woocommerce-products-header .mvx-banner-wrap .banner-img-cls img.mvx-imgcls {
        width: 100%;
        max-height: 320px;
        object-fit: cover;
        display: block;
    }

    .woocommerce-products-header .mvx-banner-wrap .mvx-banner-below {
        position: relative;
        max-width: 1080px;
        margin: 0 auto;
        padding: 0 20px 40px;
        text-align: center;
    }

    .woocommerce-products-header .mvx-banner-wrap .mvx-profile-area {
        margin-top: -90px;
        margin-bottom: 18px;
        position: relative;
        z-index: 2;
    }

    /* Photo carrée comme avant */
    .woocommerce-products-header .mvx-banner-wrap .mvx-profile-imgcls {
        width: 180px;
        height: 180px;
        border-radius: 0;
        border: 4px solid #fff;
        object-fit: cover;
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.18);
        background: #fff;
    }

    .woocommerce-products-header .mvx-banner-wrap .mvx-heading {
        font-family: "Open Sans", Helvetica, Arial, Lucida, sans-serif;
        font-size: 28px;
        font-weight: 700;
        color: #1d1d1d;
        margin: 0 0 30px;
        line-height: 1.3;
        text-align: center;
    }

    .woocommerce-products-header .mvx-banner-wrap .description_data {
        max-width: 900px;
        margin: 30px auto 0;
        text-align: center;
        font-size: 15px;
        line-height: 1.7;
    }

    /* --- Bloc Contact | Infos supp (2 colonnes centrées) --- */
    .woocommerce-products-header .mvx-banner-wrap .mvx-contact-deatil {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: flex-start;
        gap: 4%;
        max-width: 1080px;
        margin: 0 auto;
    }

    .woocommerce-products-header .mvx-banner-wrap .mvx-contact-deatil > .info {
        width: 48%;
        box-sizing: border-box;
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        justify-content: flex-start;
        align-items: stretch;
        margin-bottom: 30px;
        text-align: center;
    }

    .woocommerce-products-header .mvx-banner-wrap .mvx-contact-deatil > .info.infos-contact,
    .woocommerce-products-header .mvx-banner-wrap .mvx-contact-deatil > .info.infos-supp {
        width: 100% !important;
        flex: 1 1 100%;
    }

    .woocommerce-products-header .mvx-banner-wrap .mvx-contact-deatil > .info.infos-supp {
        margin-top: 10px;
    }

    .woocommerce-products-header .mvx-banner-wrap .mvx-contact-deatil > .info > h3 {
        width: 100%;
        text-align: center;
        margin-bottom: 20px;
    }

    .woocommerce-products-header .mvx-banner-wrap .mvx-contact-deatil .info.infos-contact .contact-info h3 {
        text-align: left;
    }

    /* Contact : texte à gauche + map à droite */
    .woocommerce-products-header .mvx-banner-wrap .mvx-contact-deatil .info.infos-contact {
        flex-direction: row;
        flex-wrap: nowrap;
        align-items: flex-start;
        text-align: left;
    }

    .woocommerce-products-header .mvx-banner-wrap .mvx-contact-deatil .info.infos-contact .contact-info {
        width: 50%;
        flex: 1 1 50%;
        min-width: 0;
        padding-right: 3%;
        box-sizing: border-box;
    }

    .woocommerce-products-header .mvx-banner-wrap .mvx-contact-deatil .info.infos-contact .widget-map-avocat {
        width: 100% !important;
        flex: 1 1 100%;
        min-width: 0;
        padding-left: 0;
        box-sizing: border-box;
    }

    @media (min-width: 981px) {
        .woocommerce-products-header .mvx-banner-wrap .mvx-contact-deatil .info.infos-contact .widget-map-avocat {
            width: 47% !important;
            flex: 1 1 47%;
        }
    }

    .woocommerce-products-header .mvx-banner-wrap .mvx-contact-deatil .info.infos-contact .widget-map-avocat .store-maps,
    .woocommerce-products-header .mvx-banner-wrap .mvx-contact-deatil .info.infos-contact .widget-map-avocat #store-maps {
        width: 100%;
        max-width: 100%;
        height: auto !important;
        min-height: 200px;
        aspect-ratio: 16 / 9;
    }

    .woocommerce-products-header .mvx-banner-wrap .mvx-contact-deatil .info.infos-contact .store-maps-cookie-notice {
        display: none;
        width: 100%;
        max-width: 100%;
        min-height: 200px;
        padding: 20px;
        background: #f5f5f5;
        text-align: center;
        align-items: center;
        justify-content: center;
        aspect-ratio: 16 / 9;
    }

    .woocommerce-products-header .mvx-banner-wrap .mvx-contact-deatil .info.infos-contact .store-maps-cookie-notice p {
        margin: 0;
        font-size: 14px;
        line-height: 1.5;
    }

    .woocommerce-products-header .mvx-banner-wrap .mvx-contact-deatil .info.infos-contact .widget-map-avocat .store-maps-external-link {
        display: inline-block;
        margin-top: 10px;
        font-size: 14px;
        color: #e2204c;
        text-decoration: underline;
    }

    /* Lignes contact : icône ronde + texte espacé */
    .woocommerce-products-header .mvx-banner-wrap .mvx-contact-deatil .info .mvx-address {
        display: flex;
        align-items: center;
        gap: 14px;
        margin: 0 0 16px !important;
        padding-bottom: 0;
        text-align: left;
    }

    .woocommerce-products-header .mvx-banner-wrap .mvx-contact-deatil .info .mvx-address > span:first-child {
        flex-shrink: 0;
        line-height: 0;
    }

    .woocommerce-products-header .mvx-banner-wrap .mvx-contact-deatil .info .mvx-address a.mvx_vendor_detail {
        display: inline-flex;
        align-items: center;
        gap: 14px;
        color: #212529;
        text-decoration: none;
        word-break: break-word;
    }

    .woocommerce-products-header .mvx-banner-wrap .mvx-contact-deatil .info .mvx-address .label-page-avocat {
        font-weight: 700;
        display: inline-flex;
        align-items: center;
        gap: 10px;
    }

    .woocommerce-products-header .mvx-banner-wrap .mvx-contact-deatil .info .mvx-address i {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 34px;
        height: 34px;
        min-width: 34px;
        padding: 0;
        margin: 0;
        font-size: 16px;
        line-height: 1;
        border-radius: 50%;
        background-color: #e2204c;
        color: #fff;
        font-style: normal;
        box-sizing: border-box;
    }

    .woocommerce-products-header .mvx-banner-wrap .mvx-contact-deatil .info .mvx-address i::before {
        line-height: 1;
        width: 1em;
        height: 1em;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    /* Icônes mvx-font → dashicons */
    .woocommerce-products-header .mvx-font.ico-location-icon::before,
    .woocommerce-products-header i.ico-location-icon::before {
        font-family: dashicons;
        content: "\f230";
    }

    .woocommerce-products-header .mvx-font.ico-call-icon::before,
    .woocommerce-products-header i.ico-call-icon::before {
        font-family: dashicons;
        content: "\f525";
    }

    .woocommerce-products-header .mvx-font.ico-mail-icon::before,
    .woocommerce-products-header i.ico-mail-icon::before {
        font-family: dashicons;
        content: "\f465";
    }

    .woocommerce-products-header .mvx-font.ico-facebook-icon::before {
        font-family: dashicons;
        content: "\f304";
    }

    .woocommerce-products-header .mvx-font.ico-twitter-icon::before {
        font-family: dashicons;
        content: "\f301";
    }

    .woocommerce-products-header .mvx-font.ico-linkedin-icon::before {
        font-family: dashicons;
        content: "\f319";
    }

    .woocommerce-products-header .mvx-font.ico-youtube-icon::before {
        font-family: dashicons;
        content: "\f236";
    }

    .woocommerce-products-header .mvx-font.ico-instagram-icon::before {
        font-family: dashicons;
        content: "\f128";
    }

    .woocommerce-products-header .mvx-banner-wrap .mvx_social_profile {
        display: flex;
        flex-wrap: wrap;
        gap: 10px;
        margin-top: 15px;
        justify-content: flex-start;
    }

    .woocommerce-products-header .mvx-banner-wrap .mvx_social_profile a {
        color: #e2204c;
        font-size: 18px;
        text-decoration: none;
    }

    /* Infos supplémentaires — blocs empilés, plus aérés */
    .woocommerce-products-header .mvx-banner-wrap .mvx-banner-below .mvx-contact-deatil .info.infos-supp .mvx-address {
        flex-direction: column !important;
        align-items: center;
        justify-content: flex-start;
        gap: 10px;
        margin-bottom: 28px !important;
        line-height: 1.55;
        text-align: center;
    }

    .woocommerce-products-header .mvx-banner-wrap .mvx-banner-below .mvx-contact-deatil .info.infos-supp .mvx-address .label-page-avocat {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        font-weight: 700;
        line-height: 1.45;
    }

    .woocommerce-products-header .mvx-banner-wrap .mvx-banner-below .mvx-contact-deatil .info.infos-supp .specialite-competence {
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 32px;
        margin-top: 12px;
    }

    .woocommerce-products-header .mvx-banner-wrap .mvx-banner-below .mvx-contact-deatil .info.infos-supp .specialite-competence .specialité,
    .woocommerce-products-header .mvx-banner-wrap .mvx-banner-below .mvx-contact-deatil .info.infos-supp .specialite-competence .domaine-competence,
    .woocommerce-products-header .mvx-banner-wrap .mvx-banner-below .mvx-contact-deatil .info.infos-supp .specialite-competence .mission_particuliere {
        width: 100%;
        max-width: none;
        margin: 0 auto;
        text-align: center;
    }

    .woocommerce-products-header .mvx-banner-wrap .mvx-banner-below .mvx-contact-deatil .info.infos-supp .specialite-competence .label-page-avocat {
        display: block;
        margin-bottom: 12px;
        font-weight: 700;
        line-height: 1.5;
    }

    .woocommerce-products-header .mvx-banner-wrap .mvx-banner-below .mvx-contact-deatil .info.infos-supp .specialite-competence .label-page-avocat + br {
        display: none;
    }

    .woocommerce-products-header .mvx-banner-wrap .mvx-banner-below .mvx-contact-deatil .info.infos-supp .specialite-competence ul {
        margin: 0;
        padding: 0;
        list-style: none;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 10px;
    }

    .woocommerce-products-header .mvx-banner-wrap .mvx-banner-below .mvx-contact-deatil .info.infos-supp .specialite-competence ul li {
        position: relative;
        display: inline-flex;
        padding-left: 15px;
        margin: 0;
        line-height: 1.55;
    }

    .woocommerce-products-header .mvx-banner-wrap .mvx-banner-below .mvx-contact-deatil .info.infos-supp .specialite-competence ul li::before {
        content: '';
        position: absolute;
        top: 50%;
        left: 0;
        transform: translateY(-50%);
        width: 6px;
        height: 6px;
        border-radius: 50%;
        background-color: #000;
    }

    /* --- Onglets annonces --- */
    .woocommerce-tabs.wc-tabs-wrapper {
        margin-top: 20px;
    }

    .woocommerce-tabs .tabs.wc-tabs {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        list-style: none;
        margin: 0 0 25px;
        padding: 0;
        border-bottom: 2px solid #eaeaea;
    }

    .woocommerce-tabs .tabs.wc-tabs li {
        margin: 0 25px 0 0;
        padding: 0;
        border: none;
        background: none;
    }

    .woocommerce-tabs .tabs.wc-tabs li a {
        display: block;
        padding: 12px 0;
        font-family: "Open Sans", Helvetica, Arial, Lucida, sans-serif;
        font-size: 16px;
        font-weight: 600;
        color: #1d1d1d;
        text-decoration: none;
        border-bottom: 3px solid transparent;
        margin-bottom: -2px;
    }

    .woocommerce-tabs .tabs.wc-tabs li.active a,
    .woocommerce-tabs .tabs.wc-tabs li a:hover {
        color: #e2204c;
        border-bottom-color: #e2204c;
    }

    .store-product-search {
        display: none;
    }

    .woocommerce-info {
        text-align: center;
        padding: 30px 20px;
        font-size: 16px;
    }
}

@media (max-width: 980px) {
    body.tax-dc_vendor_shop .woocommerce-products-header .mvx-banner-wrap .mvx-contact-deatil > .info,
    body.mvx-avocat-store-page .woocommerce-products-header .mvx-banner-wrap .mvx-contact-deatil > .info {
        width: 100%;
    }

    body.tax-dc_vendor_shop .woocommerce-products-header .mvx-banner-wrap .mvx-contact-deatil .info.infos-contact,
    body.mvx-avocat-store-page .woocommerce-products-header .mvx-banner-wrap .mvx-contact-deatil .info.infos-contact {
        flex-direction: column;
    }

    body.tax-dc_vendor_shop .woocommerce-products-header .mvx-banner-wrap .mvx-contact-deatil .info.infos-contact .contact-info,
    body.mvx-avocat-store-page .woocommerce-products-header .mvx-banner-wrap .mvx-contact-deatil .info.infos-contact .contact-info,
    body.tax-dc_vendor_shop .woocommerce-products-header .mvx-banner-wrap .mvx-contact-deatil .info.infos-contact .widget-map-avocat,
    body.mvx-avocat-store-page .woocommerce-products-header .mvx-banner-wrap .mvx-contact-deatil .info.infos-contact .widget-map-avocat {
        width: 100% !important;
        flex: 1 1 100%;
        padding-right: 0;
    }

    body.tax-dc_vendor_shop .woocommerce-products-header .mvx-banner-wrap .mvx-contact-deatil .info.infos-contact .widget-map-avocat,
    body.mvx-avocat-store-page .woocommerce-products-header .mvx-banner-wrap .mvx-contact-deatil .info.infos-contact .widget-map-avocat {
        margin-top: 25px;
    }

    body.tax-dc_vendor_shop .woocommerce-products-header .mvx-banner-wrap .mvx-contact-deatil .info.infos-contact .widget-map-avocat .store-maps,
    body.mvx-avocat-store-page .woocommerce-products-header .mvx-banner-wrap .mvx-contact-deatil .info.infos-contact .widget-map-avocat .store-maps,
    body.tax-dc_vendor_shop .woocommerce-products-header .mvx-banner-wrap .mvx-contact-deatil .info.infos-contact .widget-map-avocat #store-maps,
    body.mvx-avocat-store-page .woocommerce-products-header .mvx-banner-wrap .mvx-contact-deatil .info.infos-contact .widget-map-avocat #store-maps {
        width: 100% !important;
        max-width: 100%;
    }
}

@media (max-width: 767px) {
    body.tax-dc_vendor_shop .woocommerce-products-header .mvx-banner-wrap .mvx-heading,
    body.mvx-avocat-store-page .woocommerce-products-header .mvx-banner-wrap .mvx-heading {
        font-size: 22px;
    }

    body.tax-dc_vendor_shop .woocommerce-products-header .mvx-banner-wrap .mvx-profile-imgcls,
    body.mvx-avocat-store-page .woocommerce-products-header .mvx-banner-wrap .mvx-profile-imgcls {
        width: 140px;
        height: 140px;
    }

    body.tax-dc_vendor_shop .woocommerce-products-header .mvx-banner-wrap .mvx-profile-area,
    body.mvx-avocat-store-page .woocommerce-products-header .mvx-banner-wrap .mvx-profile-area {
        margin-top: -70px;
    }
}
