/*
Theme Name:   superfood child theme
Description:  Write here a brief description about your child-theme
Author:       Antoine
Author URL:   Write here the author's blog or website url
Template:     superfood
Version:      1.1
License:      GNU General Public License v2 or later
License URI:  http://www.gnu.org/licenses/gpl-2.0.html
Text Domain:  superfood-child
*/

html body {
    font-family: "Poppins";
    font-size: 14px;
}

html body p {
    text-align: left;
}

/* MIGRATED TO pranazen-blog-style.css: .eltdf-blog-single lists */


footer .eltdf-footer-top .widget .eltdf-testimonial-content table tbody tr {
    border: none;
}

.footer-propos {
    margin-bottom: 15px;
    overflow: auto;
}

.footer-propos img {
    float: left;
}

.footer-propos a {
    float: left;
    background: #fff;
    color: #438c8e;
    padding: 2px 10px;
    margin-left: 15px;
    text-transform: uppercase;
    margin-top: 7px;
    line-height: normal;
}

.footer-propos a:hover {
    background: #b4ce64;
    color: #fff !important;
}

footer .eltdf-footer-bottom-holder .widget {
    clear: both;
}

html body .eltdf-testimonial-content p {
    color: #fff;
}

body h1 {
    padding-bottom: 5px;
    line-height: normal;
}

/**
 * Blog Single :
 * 2025-11-10 : désactivation de ce margin qui met un trop grand espace en dessous de la ligne du nombre de commentaire dans le blog single.
*/

/*
body .eltdf-blog-single .eltdf-post-info-holder {
    margin-bottom: 45px;
}*/

.eltdf-page-header .eltdf-menu-area .eltdf-logo-wrapper a,
body .eltdf-mobile-header .eltdf-mobile-logo-wrapper a,
.eltdf-page-header .eltdf-sticky-header .eltdf-sticky-holder .eltdf-logo-wrapper a {
    height: auto !important;
}

body .eltdf-main-menu>ul>li.eltdf-active-item>a {
    color: #b4ce64;
}

body .eltdf-blog-list-holder.eltdf-standard .eltdf-item-text-holder {
    border: 1px solid #e6e6e6;
    padding: 10px 25px;
}

body .widget_search {
    border: 1px solid #a1a5a4;
}

body .vc_wp_search .widget.widget_search input {
    padding: 0 0 0 33px;
    font-size: 14px;
}

/* REMOVED: .page-id-93 styles - page now uses The Events Calendar */

body .eltdf-blog-list-holder .eltdf-bli-info>div a {
    color: #aa9788;
}

body .eltdf-blog-list-holder .eltdf-bli-read-more-holder {
    margin: 0;
    margin-bottom: 10px;
}


#home-slide-v2 h1 {
    text-transform: uppercase;
    line-height: 42px;
    margin-bottom: 35px;
}

#home-slide-v2 small {
    text-transform: none;
    font-size: 30px;
}

#home-slide-v2 p {
    font-size: 16px;
    color: #3e777e;
}

#home-slide-v2 em {
    font-size: 12px;
}

/* REMOVED: #partenaire-pied - no longer in footer */

.eltdf-footer-bottom-column-3:last-child {
    margin-top: 25px !important;
}

footer .eltdf-blog-list-holder .eltdf-bli-info>div a {
    color: #89b3b8;
}

footer .eltdf-blog-list-holder.eltdf-simple .eltdf-bli-image,
footer .eltdf-blog-list-holder.eltdf-simple .eltdf-bli-image img {
    width: 70px;
}

footer .eltdf-blog-list-normal-space .eltdf-blog-list>li {
    margin: 0;
}

footer .eltdf-blog-list-holder {
    margin-top: 13px;
}

body footer .eltdf-footer-inner a:hover {
    color: #b4ce64;
}

footer h5 {
    color: #a4cbd0;
}

/* REMOVED: #partenaire-pied a - no longer in footer */

/* REMOVED: #home-slide v1 styles - replaced by #home-slide-v2 */

body .eltdf-page-header .eltdf-fixed-wrapper.fixed {
    border: none;
}

.vc_btn3-block h3 {
    margin: 0;
    padding: 0;
    color: #fff;
}

body .vc_btn3-container.vc_btn3-center .vc_btn3-block.vc_btn3-size-xs {
    padding: 0;
}

html body .vc_btn3-container.vc_btn3-center .vc_btn3-block.vc_btn3-size-xs,
body .vc_btn3-container.vc_btn3-center .vc_btn3-block.vc_btn3-size-md {
    background-image: none;
}

body .vc_column_container>.vc_column-inner {
    padding-left: 15px;
    padding-right: 15px;
}

body footer .eltdf-footer-bottom-holder {
    background: #3e777e;


}

.eltdf-footer-bottom-holder .eltdf-social-icon-widget-holder .eltdf-social-icon-widget {
    color: #fff;
}

.eltdf-footer-bottom-holder .eltdf-social-icon-widget-holder .eltdf-social-icon-widget::before {
    font-size: 30px;
}

.eltdf-footer-bottom-holder p {
    color: #a4cbd0;
    font-size: 14px;
    margin-bottom: 15px;
}

.widget .eltdf-footer-bottom-widget-title {
    color: #fff;
    font-size: 22px;
    margin: 0;
    margin-bottom: 20px;
}

.eltdf-footer-bottom-holder .eltdf-social-icon-widget-holder {
    margin: 0 5px;
}

body footer .eltdf-footer-bottom:not(.eltdf-footer-bottom-full) .eltdf-container-inner {
    padding: 35px 0;
}

footer a {
    color: #fff;
}

footer a:hover {
    color: #b4ce64;
}


.eltdf-footer-top-holder .mc4wp-form {
    background: url(images/bg-mailing.jpg) no-repeat center center;
    background-size: cover;
    padding: 25px;
    text-align: center;
    height: 250px;
}

body aside.eltdf-sidebar {
    padding: 0 25px;
    color: #3e767d;
    border-left: 1px solid #dfe8e9;
    font-size: 13px;
}

body aside.eltdf-sidebar .eltdf-blog-list-holder.eltdf-simple .eltdf-bli-image {
    display: none;
}

body aside.eltdf-sidebar .eltdf-blog-list-holder.eltdf-simple .eltdf-bli-title .eltdf-bli-title-inner {
    font-family: "Poppins";
}

body .eltdf-blog-list-holder.eltdf-standard .eltdf-blog-list .eltdf-bli-image {
    height: 180px;
}

.eltdf-btn.eltdf-btn-solid.btn-cv {
    width: 100%;
    margin-top: 45px;
    border: none;
}

.eltdf-btn.eltdf-btn-solid.btn-cv .eltdf-icon-font-elegant {
    font-size: 25px;
}

body .eltdf-sidebar .widget h4 {
    margin: 0 0 25px 0 !important;
}

body .eltdf-sidebar .widget {
    margin-bottom: 45px !important;
}

body.eltdf-header-standard .eltdf-menu-area.eltdf-menu-center .eltdf-vertical-align-containers .eltdf-position-center-inner {
    float: right;
    margin-right: 45px;
}

body .eltdf-btn.eltdf-btn-simple .eltdf-btn-text {
    text-transform: none;
}

body .eltdf-page-header .eltdf-sticky-header .eltdf-sticky-holder {
    border: none;
}

.home .wpb_single_image img {
    margin-bottom: -1px;
}

body .vc_btn3.vc_btn3-size-md .vc_btn3-icon {
    font-size: 28px;
}

/* REMOVED: .evt-date - not used (Events Calendar uses its own date classes) */

/* MIGRATED TO pranazen-blog-style.css: .eltdf-blog-single-share social buttons */

/* REMOVED: .page-id-73 Twitter widget - deprecated Twitter API */

.widget.widget_eltdf_twitter_widget .eltdf-twitter-widget.eltdf-twitter-standard li .eltdf-tweet-text a.eltdf-tweet-time {
    font-size: 12px;
    color: #333;
    font-style: italic;
}

body .widget.widget_eltdf_twitter_widget .eltdf-twitter-widget.eltdf-twitter-standard li .eltdf-twitter-icon {
    color: #9ccf91;
}

#saviez-vous-grid .eltdf-blog-list-holder .eltdf-bli-inner {

    box-shadow: 0 1px 1px 0 #c1c1c1;
    border-radius: 5px;
}

#saviez-vous-grid a {
    cursor: default;
}

#saviez-vous-grid .rt-tpg-container .isotope1 .rt-holder .rt-detail h2 {
    font-size: 20px;
}

#saviez-vous-grid .rt-tpg-container .isotope1 .rt-holder .rt-detail {
    padding: 35px 40px 36px;
    box-shadow: 0 1px 1px 0 #c1c1c1;
    border-radius: 5px;
}

#saviez-vous-grid .rt-tpg-container .tpg-iso-filter {
    text-align: left;
}


body div.wpforms-container-full .wpforms-form textarea.wpforms-field-small {
    height: 60px;
}

body div.wpforms-container-full .wpforms-form button[type=submit] {
    background: #fff;
    border: none;
    padding: 5px 15px;
    border-radius: 0;
    color: #018c8f;
    text-transform: uppercase;
    font-size: 12px;
    font-family: Poppins;
}

body div.wpforms-container-full .wpforms-form .wpforms-field {
    clear: none;
    margin-right: 7px;
    padding: 0;
    position: relative;
}

body div.wpforms-container-full ::placeholder,
body .acym_module_form ::placeholder {
    color: #fff;
}


.eltdf-footer-inner {
    padding-bottom: 75px;
}


body div.wpforms-container-full .wpforms-form .wpforms-field input.wpforms-error,
body div.wpforms-container-full .wpforms-form .wpforms-field textarea.wpforms-error,
body div.wpforms-container-full .wpforms-form .wpforms-field select.wpforms-error {
    border: none;
}

.acym_module_form>table tbody tr,
.acym_module_form>table thead tr {
    border: none;
}


body .mc4wp-form input {
    background: none;
    border: 1px solid #fff;
    color: #fff;
    padding: 8px 15px;
    text-align: center;
    font-family: "Poppins";
    max-width: 100%;
    width: 100%;
}

body .mc4wp-formm input[type="button"] {
    background: #fff;
    color: #62ad6a;
    cursor: pointer;
}

body .mc4wp-form input[type="button"]:hover {
    background: #348354;
    color: #fff;

    border-color: #338354;
}


body .eltdf-fullscreen-search-holder .eltdf-search-field,
body .eltdf-fullscreen-search-holder ::placeholder {
    color: #3e777e;
}

body .eltdf-search-page-holder .eltdf-search-page-form .eltdf-search-title {
    color: #3e777e;
}

body .eltdf-search-page-holder .eltdf-search-page-form .eltdf-form-holder {
    border-width: 1px;
    border-radius: 0;
}

/*#home-slide-right:after {content:''; position:absolute;     bottom: -30px;    left: -70px; width:150px; height:225px; display:inline-block; background:url(images/alexia-jadot-profil.jpg) no-repeat center center;     box-shadow: 0px 0px 3px 0px #3e767d;}*/
.wpb_single_image.vc_align_center {
    overflow: hidden;
}

.wpb_single_image .vc_single_image-wrapper img {
    -webkit-transition: all .5s cubic-bezier(.17, .78, .38, .89);
    -moz-transition: all .5s cubic-bezier(.17, .78, .38, .89);
    transition: all .5s cubic-bezier(.17, .78, .38, .89);
}

.wpb_single_image .vc_single_image-wrapper {
    position: relative;
}

/* REMOVED: #home-actu, #home-event hover effects - sections no longer on homepage */

.eltdf-footer-bottom-holder .eltdf-social-icon-widget-holder .eltdf-social-icon-widget:hover,
#footer-copy a:hover {
    color: #aacf5b;
    -webkit-transition: color .6s;
    -moz-transition: color .6s;
    transition: color .6s;
}

/* REMOVED: #home-temoignages - section no longer on homepage (uses tss-wrapper now) */

body footer .eltdf-footer-top:not(.eltdf-footer-top-full) .eltdf-container-inner {
    padding-top: 45px;
}

body .eltdf-mobile-header .eltdf-mobile-nav .eltdf-grid>ul>li>a,
body .eltdf-mobile-header .eltdf-mobile-nav .eltdf-grid>ul>li>h5 {
    color: #3e767d;
    text-align: center;
}

body .eltdf-mobile-header .eltdf-mobile-header-inner .eltdf-mobile-header-holder {
    background-color: rgb(49 142 144);
}

.eltdf-btn.eltdf-btn-solid.home-button-evt-actu {
    font-family: Playfair Display;
    text-transform: uppercase;
    font-weight: 400;
    font-size: 24px;
    line-height: 28px;
    border: none;
    display: block;
}

body .owl-carousel .owl-stage {
    align-items: center;
    justify-content: center;
}

/* REMOVED: #home-bienv - section no longer on homepage */

#home-livre h3 {
    text-transform: uppercase;
    font-size: 20px;
    font-weight: bold;
}

#home-livre h3 small {
    font-family: "Open Sans", sans-serif;
    font-size: 16px;
    font-weight: normal;
}

body .eltdf-main-menu>ul>li>a {
    padding: 2px 12px;
}

.bloc-seance-offerte.vc_general.vc_cta3.vc_cta3-style-classic {
    background-color: #3e777e;
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
}

.bloc-seance-offerte .vc_btn3.vc_btn3-color-success.vc_btn3-style-modern {
    background: #b3cd76;
    text-transform: uppercase;
    font-weight: bold;
    border: none !important;
}

.bloc-seance-offerte .vc_btn3.vc_btn3-color-success.vc_btn3-style-modern:hover {
    background: #489294;
}

.bloc-seance-offerte.vc_general.vc_cta3 h2 {
    padding-top: 15px;
}

body .vc_separator h4 {
    font-size: 21px;
}

.bloc-seance-offerte.vc_general.vc_cta3 h2,
.bloc-seance-offerte.vc_general.vc_cta3 h4 {
    margin-bottom: 0;
    padding-top: 0;
    line-height: normal;
    font-family: Playfair Display;
    font-size: 22px;
}

.bloc-seance-offerte.vc_general.vc_cta3.vc_cta3-color-green.vc_cta3-style-classic .vc_cta3-content-header {
    color: #fff;
}


.bloc-seance-offerte p {
    color: #fff;
    text-align: center;
}


body .vc_btn3.vc_btn3-style-custom {
    background-color: #fff;
    color: #3e777e;
    background-image: none;

    border-bottom: 1px solid #3e777e;
    padding: 0;
    padding-bottom: 5px;
    text-transform: uppercase;
}


body .eltdf-search-page-holder article .eltdf-post-title-area {
    height: auto;
}

.eltdf-column1 .eltdf-blog-list-holder .eltdf-blog-list .eltdf-bli-image {
    height: 190px;
}

body .eltdf-blog-list-holder .eltdf-bli-excerpt-holder {
    margin-top: 0;
}

body .wpforms-confirmation-container-full {

    background: none;
    border: none;
    padding: 0;

}

body .wpforms-confirmation-container-full p {
    font-size: 14px;
    font-family: "Poppins";
}

.eltdf-mobile-header .eltdf-mobile-menu-opener a:hover {
    color: #b5dcde !important;
}

body .eltdf-mobile-header .eltdf-mobile-nav {
    border-bottom: none;
}

.btn-contact {
    background-color: #b4ce64;
    color: #fff;
    padding: 7px 15px;
    margin-top: 25px;
    display: inline-block;
}

.evenements .eltdf-blog-single .eltdf-post-info-holder .eltdf-post-info {
    display: none;
}

.evenements h1 {
    color: #dba983;
}

/* MIGRATED TO pranazen-blog-style.css: .eltdf-blog-single post-info-holder */

body .eltdf-blog-list-holder .eltdf-bli-info {
    margin-bottom: 15px;
    margin-top: 7px;
}

.eltdf-testimonial-text-holder a {
    color: #92b8be !important;
    margin-top: 25px;
    background: #fff;
    padding: 7px 15px;
    margin-top: 15px;
    display: inline-block;
}

.eltdf-testimonial-text-holder a:hover {
    background: #234045;
    color: #fff !important;
}

.eltdf-testimonial-text-holder i {
    margin-right: 10px;
}

html body .pp_pic_holder .pp_details {
    background-color: none;
    line-height: 37px;
}

html body .pp_overlay {
    background-color: #006c6f;
}

body .widget.widget_eltdf_twitter_widget .eltdf-twitter-widget {
    color: #a5a5a5;
}


.the_champ_sharing_container {
    margin-top: 45px;
}

.the_champ_sharing_title {
    color: #3e767d;
}

.eltdf-social-share-tags-holder {
    display: none;
}

body .eltdf-sidebar .eltdf-blog-list-holder .eltdf-bli-info {
    display: none;
}

body .eltdf-sidebar h3 {
    color: #a5a5a5;
    line-height: 0;
}

body aside.eltdf-sidebar .eltdf-blog-list-holder.eltdf-simple .eltdf-bli-title .eltdf-bli-title-inner {
    font-size: 13px;
}

body #acym__callout__container {

    top: 0;
    width: 100%;

    background: #aacf5c;
    color: #15373a;
    text-align: center;

}

body .eltdf-testimonials-holder.eltdf-testimonials-boxed .eltdf-testimonials {
    padding: 0;
}

body #temoignages-page .owl-carousel .owl-controls .owl-nav .owl-prev,
body .owl-carousel .owl-controls .owl-nav .owl-next {
    display: block !important;
    border: 1px solid #3e777e;
    border-radius: 100%;

    padding: 5px 16px;
}

body #temoignages-page .eltdf-testimonials-holder .owl-nav .eltdf-next-icon,
.eltdf-testimonials-holder .owl-nav .eltdf-prev-icon {
    color: #3e777e;
}

body #temoignages-page .owl-carousel .owl-controls .owl-nav .owl-prev {
    left: -75px;
}

body #temoignages-page .owl-carousel .owl-controls .owl-nav .owl-next {
    right: -75px;
}

body #temoignages-page #saviez-vous-grid {


    padding-top: 0;
}

#saviez-vous-grid .vc_gitem-zone {
    background: #fff !important;
}

#saviez-vous-grid .vc_grid-item-mini {
    box-shadow: 0 1px 1px 0 #c1c1c1;
    border-radius: 5px;
}

#saviez-vous-grid .vc_gitem_row .vc_gitem-col {
    padding: 25px;
}

#saviez-vous-grid .vc_btn3.vc_btn3-size-md {
    display: none;
}

#saviez-vous-grid .vc_gitem-zone {
    background-size: contain !important;
}

body .eltdf-mobile-header .eltdf-mobile-menu-opener a {
    color: #fff;
    text-transform: uppercase;
}

body .eltdf-mobile-header .eltdf-mobile-header-inner {
    border-bottom: none;
}

body .eltdf-mobile-logo-wrapper {
    margin-top: 6px;
}

#a-propos-right {
    padding-left: 25px;
}

body .eltdf-blog-list-holder .eltdf-bli-title {
    line-height: 16px;
    margin: 12px 0;
}

/**
@type: SEO
SHAROPS related-title h1
 */
h1 .eltdf-related-posts-title {
    width: auto;
}

h1 a {
    color: #aa9788 !important;
    font-size: 21px !important;
    line-height: normal !important;
}

/* REMOVED: #home-slide v1 styles (duplicate) - replaced by #home-slide-v2 */

/** END **/

/**
 * @description: adaptation en fonction de la taille de l'écran
 *
 * @author: unknown
 */

@media only screen and (max-width: 1200px) {

    body .eltdf-page-header .eltdf-vertical-align-containers .eltdf-position-center {
        position: absolute;
        display: block;
        width: 100%;
        margin: 0;
    }

    body .eltdf-btn.eltdf-btn-solid.btn-cv .eltdf-icon-font-elegant {
        display: block;
        margin-top: 10px;
    }

    body .eltdf-btn.eltdf-btn-solid.btn-cv {
        text-align: center;
        margin-bottom: 45px;
    }
}

@media (max-width: 1024px) {

    body aside.eltdf-sidebar {
        border-left: none;
        border-top: 1px solid #dfe8e9;
        padding: 25px 0;
    }

    #footer-copy p {
        width: 345px;

    }

    .eltdf-footer-top .eltdf-two-columns-50-50>.eltdf-two-columns-50-50-inner>.eltdf-column {
        width: 100%;
        float: none;
    }

}

#btn-filtre {
    display: none;
}

@media (max-width: 767px) {

    #temoignages-page .filter-button-group {
        display: none;
    }

    #btn-filtre {
        display: block;
    }

    #saviez-vous-grid #btn-filtre .vc_btn3.vc_btn3-size-md {
        display: block;
    }

    #partenaire-pied {
        text-align: center;
    }

    #home-slide-v2 em {
        margin-bottom: 45px;
        display: block;
    }

    .home #temoignages-page {
        margin-top: 45px;
    }

    .home #temoignages-page .owl-carousel .owl-item {
        width: 100% !important;
        float: none;
    }

    footer .eltdf-footer-bottom-holder .eltdf-column:last-child,
    body .eltdf-footer-bottom-holder p,
    body .widget .eltdf-footer-bottom-widget-title,
    footer .widget.widget_recent_entries ul li {
        text-align: center !important;
    }

    .footer-propos {
        width: 250px;
        margin: 0 auto;
    }

    body #footer-copy p {
        text-align: center;
        width: 100%;
    }

    body h1 {
        font-size: 28px;
        line-height: 1.25;
    }

    body footer .eltdf-footer-bottom-holder .eltdf-column:last-child {
        text-align: center;
    }

    .eltdf-btn.eltdf-btn-solid.home-button-evt-actu {
        margin-bottom: 45px;
    }

    body footer .eltdf-footer-bottom-holder {
        height: auto;
    }

    #footer-copy p {
        width: auto;
        float: none;
        text-align: center;
    }

    body.page-id-93 .eltdf-column1 .eltdf-blog-list-holder .eltdf-blog-list .eltdf-bli-image,
    .page-id-93 .eltdf-blog-list-holder.eltdf-standard .eltdf-item-text-holder {
        float: none;
        width: auto;
        height: auto;
    }

    body .eltdf-testimonials-holder-bis .owl-nav .owl-prev {
        left: -55px;
    }

    body .eltdf-testimonials-holder-bis .owl-nav .owl-next {
        right: -55px;
    }

    body .eltdf-footer-bottom .eltdf-two-columns-50-50 .eltdf-column:first-child .eltdf-column-inner {
        margin-left: 0;
        margin-right: 0;
    }

    #a-propos-right {
        padding-left: 0;
    }
}

/** END **/

/**
 * @description: modification diverses sur le thème
 * @URL: https://pranazen.eu/cours/atelier-daromatherapie-la-pediatrie-de-0-a-3ans/lecons/cas-pratiques/chapitres/croutes-de-lait/
 * @plugin: learndash
 *
 * @author: Renaud RAKOTOMALALA <renaud@sharops.dev>
 */

/* Cacher le titre du lecteur video  */
div.ld-tabs-content>*>p.fp-caption {
    display: none !important;
}

/* END */

/* Cacher le prix du cours sur la page du cours */
.learndash-wrapper .ld-course-status.ld-course-status-not-enrolled>.ld-course-status-seg-price {
    display: none !important;
}

/* END */

/* Cacher la date d'édition du cours */
body.sfwd-courses-template-default .eltdf-post-info {
    display: none !important;
}

/* END */

/* Correction courleur du bouton "terminé" */
div.ld-content-action:nth-child(3)>form:nth-child(1)>input:nth-child(4) {
    background-color: #3e777e !important;
}

/* END */

/** END **/




/* MIGRATED TO pranazen-blog-style.css: .eltdf-blog-holder, .single-post, h2.eltdf-bli-title */

/**
 * @description: gestion du pied de page global du site
 *
 * @author: Renaud RAKOTOMALALA <renaud@sharops.dev>
 **/

footer {
    padding-top: 5em;
}

#footer-copy {
    text-align: center;
    padding-bottom: 45px;
    margin-top: 25px;
    background: #fff;
}

#footer-copy p,
#footer-copy a {
    color: #3e767d;
    font-size: 12px;
    text-align: center;
}

#footer-copy p {
    width: 450px;
    float: right;
    position: relative;
    text-align: right;
    z-index: 100;
}

footer .eltdf-footer-bottom-holder .eltdf-column:last-child {
    text-align: right;
}

/** END **/

/**
 * @description: personalisation du slide-in "mon guide"
 * @plugin: mailoptin
 * @author: Renaud RAKOTOMALALA <renaud@sharops.dev>
 */

#IlCdWVOWAz_slidein .liatris_mini_headline {
    color: #3e767d !important;
}

#IlCdWVOWAz_slidein .liatris_description {
    font-weight: 500 !important;
}

/** END **/

/**
 * @description: permet d'éviter l'overflow entre le menu et le logo lorsque l'utilisateur est identifié.
 *
 * @TODO: à résoudre proprement par le webdesign !
 * @author: Renaud RAKOTOMALALA <renaud@sharops.dev>
 **/
body.eltdf-header-standard .eltdf-menu-area.eltdf-menu-center .eltdf-vertical-align-containers .eltdf-position-left {
    margin-left: -10px;
}

/** END **/


/* MIGRATED TO pranazen-blog-style.css: #blog-grid, .rt-tpg-container styles */

.eltdf-column2 {
    margin-top: 100px;
}

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

.home .btn-telecharger-livre {
    display: block !important;
    margin-top: -25px !important;
    margin-bottom: 45px !important;
}


#home-livre div.wpforms-container-full .wpforms-form input[type=text],
#home-livre div.wpforms-container-full .wpforms-form input[type=email] {
    max-width: 100%;
    border-color: #d5e2e4;
    display: block;
    width: 100%;
    margin-bottom: 7px;
    color: #3e777e;
    font-size: 14px;
}

#home-livre input[type=text]::placeholder,
#home-livre input[type=email]::placeholder {
    color: #3e777e !important;
}

body #home-livre div.wpforms-container-full .wpforms-form button[type=submit] {
    background: #b3cd76;
    color: #fff;
    display: block;
    width: 100%;
    font-size: 14px;
    -webkit-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
}

body #home-livre div.wpforms-container-full .wpforms-form button[type=submit]:hover {
    background: #3e777e;
    border: none;
}

body #home-livre div.wpforms-container-full .wpforms-form .wpforms-field {
    margin-right: 0;
}

body #home-livre .wpforms-confirmation-container-full p {
    color: #008e90;
}


/* REMOVED: .temoignages-blocs - uses .tss-wrapper now */

.home .bloc-seance-offerte {
    height: 270px;
}

.home .tss-wrapper .tss-layout1 .item-content-wrapper::before {
    top: 5px;
    right: 10px;
}

.home .eltdf-more-link-container {
    display: none;
}

.home .tss-wrapper .tss-layout1 .single-item-wrapper {
    margin-bottom: 0;
}

/* MIGRATED TO pranazen-blog-style.css: #blog-grid image styles */


.tss-wrapper .tss-layout1 .single-item-wrapper {
    display: block;
    padding: 10px;
    height: 100%;
    width: 100%;
}

.tss-layout1 h3.author-name,
.tss-carousel h3.author-name {
    text-align: left;
}

.rt-container-fluid {
    padding: 0;
}

.eltdf-more-link-container a {
    font-size: 10px !important;
    padding: 5px 15px !important;
}

.tss-wrapper .tss-layout1 .item-content-wrapper::before {
    top: 25px;
    right: 30px;
    color: #b4ce64;
    display: none;
}

body .rt-tpg-container .tpg-iso-filter {
    text-align: left;
}

body .rt-tpg-container .tpg-iso-filter>div {
    margin-left: 10px;
}

.eltdf-more-link-container .eltdf-btn.eltdf-btn-solid {
    background: none;
    color: #3e777e;
    padding-left: 0 !important;
    border: none !important;
    margin-bottom: 7px;
}


/**
 * tracker: http://gitlab.sharops.io/pranazen/website/-/issues/70
 * Ajout des formations dans le footer
 **/
#footer-mes-formations.widget ul li {
    margin: 0 0 5px !important;
}

#footer-mes-formations-more {
    margin-top: 35px;
}

/**
 * EOS GITLAT#70
 */

/** 20251014 - disabled for now because we don't see the banner, and I don't know why I've done that !!! **/

/** .eltdf-blog-holder article .eltdf-post-image { display:none !important; } **/

/**
 * SHAROPS : création d'un code CSS pour gérer tous les wpforms de la plateforme en mode inline
 *           les classes à définir dans les formulaires :
 *           - inline-fields
 *           - pranazen-embedded-fields
 */

/**
 * Styles personnalisés pour les formulaires d'inscription aux conférences
 * Format INLINE ultra-compact sur une seule ligne
 * Utilise la classe: pranazen-embedded-fields
 */

/* Conteneur principal du formulaire */
.pranazen-embedded-fields {
    background-color: #3e777e !important;
    padding: 12px 15px !important;
    border-radius: 8px !important;
    margin: 15px 0 !important;
    box-sizing: border-box !important;
}

/* Le FORMULAIRE lui-même doit être flex */
.pranazen-embedded-fields .wpforms-form {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex-wrap: nowrap !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Container des champs */
.pranazen-embedded-fields .wpforms-field-container {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;
    flex: 1 1 auto !important;
    align-items: center !important;
    margin: 0 !important;
}

/* Champs individuels */
.pranazen-embedded-fields .wpforms-field {
    flex: 1 1 auto !important;
    min-width: 120px !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Tous les inputs et selects */
.pranazen-embedded-fields input[type="text"],
.pranazen-embedded-fields input[type="email"],
.pranazen-embedded-fields textarea,
.pranazen-embedded-fields select {
    background-color: rgba(255, 255, 255, 0.1) !important;
    color: #fff !important;
    border: none !important;
    border-bottom: 1px solid #018c8f !important;
    padding: 8px 0 !important;
    font-size: 12px !important;
    font-family: "Poppins", sans-serif !important;
    margin: 0 !important;
    height: 32px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    transition: border-color 0.3s ease !important;
}

/* Placeholders visibles */
.pranazen-embedded-fields input::placeholder,
.pranazen-embedded-fields textarea::placeholder {
    color: rgba(255, 255, 255, 0.7) !important;
    opacity: 1 !important;
    font-size: 12px !important;
}

/* Focus state */
.pranazen-embedded-fields input[type="text"]:focus,
.pranazen-embedded-fields input[type="email"]:focus,
.pranazen-embedded-fields textarea:focus,
.pranazen-embedded-fields select:focus {
    border-bottom-color: #fff !important;
    background-color: rgba(255, 255, 255, 0.15) !important;
    outline: none !important;
}

/* Labels */
.pranazen-embedded-fields .wpforms-field-label {
    display: none !important;
}

/* Honeypot anti-spam */
.pranazen-embedded-fields .wpforms-field-hp {
    display: none !important;
}

/* Container du bouton */
.pranazen-embedded-fields .wpforms-submit-container {
    flex: 0 0 auto !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
}

/* Le bouton */
.pranazen-embedded-fields button.wpforms-submit {
    background-color: #018c8f !important;
    color: white !important;
    border: 1px solid #018c8f !important;
    padding: 8px 18px !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    border-radius: 3px !important;
    text-transform: uppercase !important;
    font-family: "Poppins", sans-serif !important;
    transition: all 0.3s ease !important;
    white-space: nowrap !important;
    height: 32px !important;
    width: auto !important;
    min-width: 100px !important;
}

.pranazen-embedded-fields button.wpforms-submit:hover {
    background-color: #fff !important;
    color: #018c8f !important;
}

.pranazen-embedded-fields button.wpforms-submit:disabled {
    opacity: 0.6 !important;
    cursor: not-allowed !important;
}

/* SPINNER - MASQUER en permanence */
.pranazen-embedded-fields .wpforms-submit-spinner {
    display: none !important;
}

/* Messages d'erreur */
.pranazen-embedded-fields .wpforms-error {
    color: #ff6b6b !important;
    font-size: 11px !important;
    margin-top: 3px !important;
}

.pranazen-embedded-fields .wpforms-field-error input,
.pranazen-embedded-fields .wpforms-field-error textarea {
    border-bottom-color: #ff6b6b !important;
}

/* Message de confirmation */
.pranazen-embedded-fields .wpforms-confirmation-container {
    text-align: center !important;
    color: white !important;
    padding: 10px !important;
    width: 100% !important;
}

.pranazen-embedded-fields .wpforms-confirmation-container p {
    color: white !important;
    margin: 0 !important;
    font-size: 12px !important;
}

/* Mobile responsive */
@media (max-width: 768px) {

    .pranazen-embedded-fields .wpforms-form {
        flex-wrap: wrap !important;
    }

    .pranazen-embedded-fields .wpforms-field-container {
        flex-wrap: wrap !important;
        flex: 1 1 100% !important;
    }

    .pranazen-embedded-fields .wpforms-field {
        flex: 1 1 calc(50% - 4px) !important;
        min-width: 100px !important;
    }

    .pranazen-embedded-fields .wpforms-submit-container {
        flex: 1 1 100% !important;
    }

    .pranazen-embedded-fields button.wpforms-submit {
        width: 100% !important;
    }
}

/* ============================================
   Design System - Variables (Global - Extensible)
   ============================================ */
:root {

    /* Colors */
    --tec-color-primary: #3e777e;
    --tec-color-primary-hover: #018c8f;
    --tec-color-accent: #b4ce64;
    --tec-color-text-primary: #808285;
    --tec-color-text-dark: #4a4a68;
    --tec-color-text-light: hsla(0, 0%, 100%, 0.9);
    --tec-color-border: #dfe8e9;

    /* Typography - Font Family */
    --tec-font-family: poppins, sans-serif;

    /* Typography - Font Sizes */
    --tec-font-size-base: 16px;
    --tec-font-size-sm: 14px;
    --tec-font-size-xs: 12px;
    --tec-font-size-h1: 2.5em;
    --tec-font-size-h2: 1.8em;
    --tec-font-size-h3: 1.4em;
    --tec-font-size-h4: 1.2em;

    /* Typography - Line Heights */
    --tec-line-height-base: 1.6;
    --tec-line-height-heading: 1.3;

    /* Typography - Font Weights */
    --tec-font-weight-normal: 400;
    --tec-font-weight-medium: 500;
    --tec-font-weight-semibold: 600;
    --tec-font-weight-bold: 700;

    /* Spacing - Base unit */
    --tec-spacing-xs: 0.5em;
    --tec-spacing-sm: 0.75em;
    --tec-spacing-md: 1em;
    --tec-spacing-lg: 1.5em;
    --tec-spacing-xl: 2em;
    --tec-spacing-xxl: 3em;

    /* Heading Margins */
    --tec-h1-margin-top: var(--tec-spacing-xxl);
    --tec-h1-margin-bottom: var(--tec-spacing-lg);
    --tec-h2-margin-top: var(--tec-spacing-xl);
    --tec-h2-margin-bottom: var(--tec-spacing-md);
    --tec-h3-margin-top: var(--tec-spacing-lg);
    --tec-h3-margin-bottom: var(--tec-spacing-sm);

    /* Border Radius */
    --tec-border-radius-sm: 3px;
    --tec-border-radius-md: 8px;
}

/* ============================================
   Global Heading Styles
   ============================================ */
h1,
h2,
h3 {
    color: var(--tec-color-primary) !important;
}

/* ============================================
   Base Typography Normalization
   ============================================ */
.single-tribe_events,
.tribe-events-single {
    font-family: var(--tec-font-family) !important;
    font-size: var(--tec-font-size-base) !important;
    line-height: var(--tec-line-height-base) !important;
}

.single-tribe_events p,
.tribe-events-single p {
    font-family: var(--tec-font-family) !important;
    font-size: var(--tec-font-size-base) !important;
}

.single-tribe_events h1,
.single-tribe_events h2,
.tribe-events-single h1,
.tribe-events-single h2 {
    font-family: var(--tec-font-family) !important;
}

/* ============================================
   Component-Specific Styles
   ============================================ */
.tribe-events-content h2,
.tribe-events-content h3,
.tribe-events-content h4,
.tribe-events-content h5,
.tribe-events-content h6 {
    color: var(--tec-color-primary);
}

@media (min-width: 768px) {

    .single-tribe_events .tribe-events-single-event-title {
        font-size: var(--tec-font-size-8);
    }
}

.tribe-events-schedule h2 {
    font-size: var(--tec-font-size-heading);
    font-weight: normal;
    line-height: var(--tec-line-height-heading);
}

.tribe-events-list-event-description>p {
    color: var(--tec-color-text-light) !important;
}

.single-tribe_events .tribe-events-event-meta {
    background-color: var(--tec-color-primary);
}

.single-tribe_events .tribe-events-event-meta,
.tribe-events-meta-group .tribe-events-single-section-title {
    color: white;
}

/* ============================================
   Visibility Toggles
   ============================================ */
.tribe-bar-disabled,
h1.tribe-events-page-title {
    display: none;
}

/* cache la date/heure dans la vue en liste car celle-ci n'est pas à l'heure */
.tribe-events-calendar-list__event-datetime-wrapper {
    display: none;
}

/* ============================================
   Typography - BLOG ONLY
   Portée : Pages de blog (.eltdf-blog-list et .eltdf-blog-single)
   ============================================ */

/* --- Conteneur blog listing --- */
body.blog h2,
body.blog h3,
.eltdf-blog-list h2,
.eltdf-blog-list h3 {
    color: var(--tec-color-primary);
    line-height: var(--tec-line-height-heading);
}

body.blog h2,
.eltdf-blog-list h2 {
    font-size: var(--tec-font-size-h2);
    margin-top: var(--tec-h2-margin-top);
    margin-bottom: var(--tec-h2-margin-bottom);
}

body.blog h3,
.eltdf-blog-list h3 {
    font-size: var(--tec-font-size-h3);
    margin-top: var(--tec-h3-margin-top);
    margin-bottom: var(--tec-h3-margin-bottom);
}

/* --- Conteneur blog single (article) --- */
.eltdf-blog-single h2,
.eltdf-blog-single h3 {
    color: var(--tec-color-primary);
    line-height: var(--tec-line-height-heading);
}

.eltdf-blog-single h2 {
    font-size: var(--tec-font-size-h2);
    margin-top: var(--tec-h2-margin-top);
    margin-bottom: var(--tec-h2-margin-bottom);
}

.eltdf-blog-single h3 {
    font-size: var(--tec-font-size-h3);
    margin-top: var(--tec-h3-margin-top);
    margin-bottom: var(--tec-h3-margin-bottom);
}

/* Contenu du post */
.eltdf-blog-single .eltdf-post-content h2,
.eltdf-blog-single .eltdf-post-content h3 {
    margin-top: var(--tec-h2-margin-top);
    margin-bottom: var(--tec-h2-margin-bottom);
}

/* Paragraphes après titres */
.eltdf-blog-single h2+p,
.eltdf-blog-single h3+p,
.eltdf-blog-list h2+p,
.eltdf-blog-list h3+p {
    margin-top: 0;
    margin-bottom: var(--tec-spacing-md);
}

/* Premier titre du blog single */
.eltdf-blog-single .eltdf-post-content>h2:first-child,
.eltdf-blog-single .eltdf-post-content>h3:first-child {
    margin-top: 0;
}

/* Dernier titre */
.eltdf-blog-single h2:last-child,
.eltdf-blog-single h3:last-child,
.eltdf-blog-list h2:last-child,
.eltdf-blog-list h3:last-child {
    margin-bottom: 0;
}

/* Listes dans le blog */
.eltdf-blog-single ul,
.eltdf-blog-single ol {
    margin-bottom: var(--tec-spacing-md);
}

.eltdf-blog-single li {
    margin-bottom: var(--tec-spacing-xs);
    line-height: var(--tec-line-height-base);
}

/* Strong dans le blog */
.eltdf-blog-single strong {
    font-weight: var(--tec-font-weight-bold);
}

/* Liens dans le blog */
.eltdf-blog-single a {
    color: var(--tec-color-primary-hover);
    transition: color 0.3s ease;
}

.eltdf-blog-single a:hover {
    color: var(--tec-color-accent);
}

/* =========================================
   FIX: Page d'accueil - Section pricing tables
   Corrige le problème de full-width sur la section des formations
   ========================================= */
body.home #local-formations {
    max-width: 1200px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    width: 100% !important;
}

body.home section[data-vc-stretch-content="true"]:has(#local-formations) {
    width: 100% !important;
    max-width: 100% !important;
    left: 0 !important;
    position: relative !important;
}

body.home section[data-vc-stretch-content="true"]:has(#local-formations)>#local-formations {
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
}

/**
 * @description: Rendre la barre MailOptin (Muscari) plus fine sur mobile
 * @plugin: mailoptin
 */
@media (max-width: 768px) {

    /* Main container : forcer largeur max 100% pour éviter le débordement horizontal */
    div[id*="qPawqJAitQ"].muscari-container,
    .mo-optin-form-wrapper.muscari-container {
        padding: 0 !important;
        /* On gère l'espace via les enfants pour plus de précision */
        min-height: 0 !important;
        width: 100% !important;
        min-width: 100% !important;
        max-width: 100vw !important;
        box-sizing: border-box !important;
    }


    /* Supprimer l'espace du titre sans masquer le bouton de fermeture qui est dedans */
    .mo-optin-form-wrapper.muscari-container .muscari-form-title-wrap {
        display: block !important;
        height: 0 !important;
        min-height: 0 !important;
        padding: 0 !important;
        margin: 0 !important;
        visibility: visible !important;
        /* Pour que les enfants puissent être visibles */
        overflow: visible !important;
        font-size: 0 !important;
        line-height: 0 !important;
    }

    /* Masquer le texte du titre spécifiquement s'il existe */
    .mo-optin-form-wrapper.muscari-container .mo-optin-form-headline {
        display: none !important;
    }

    /* Ajustement de la rangée du formulaire : centrage vertical */
    .mo-optin-form-wrapper.muscari-container .muscari-form-row {
        width: 100% !important;
        margin: 0 !important;
        padding: 6px 10px !important;
        /* Espace vertical équilibré ici */
    }

    /* Button group : supprimer toutes les marges par défaut de MailOptin */
    .mo-optin-form-wrapper.muscari-container .muscari-button-group {
        padding: 0 !important;
        margin: 0 !important;
    }

    /* Button CTA : rendu plus compact */
    .mo-optin-form-wrapper.muscari-container .mo-optin-form-cta-button {
        padding: 6px 15px !important;
        font-size: 13px !important;
        height: auto !important;
        line-height: 1 !important;
        width: auto !important;
        max-width: 90% !important;
        margin: 0 auto !important;
        display: block !important;
    }

    /* Bouton de fermeture (Croix) : le replacer, changer sa couleur et forcer une apparence de croix */
    .mo-optin-form-wrapper.muscari-container .muscari-close-form {
        display: block !important;
        visibility: visible !important;
        position: absolute !important;
        top: 10px !important;
        right: 15px !important;
        left: auto !important;
        font-size: 24px !important;
        color: #004684 !important;
        /* Bleu foncé pour visibilité sur fond clair */
        cursor: pointer !important;
        z-index: 9999 !important;
        width: 30px !important;
        height: 30px !important;
        text-align: center !important;
        line-height: 30px !important;
        text-shadow: none !important;
        opacity: 1 !important;
    }

    /* Forcer l'icône x au lieu de ^ si nécessaire via pseudo-élément */
    .mo-optin-form-wrapper.muscari-container .muscari-close-form::before {
        content: "\00d7" !important;
        /* Caractère multiplicateur pour une croix parfaite */
        font-family: Arial, sans-serif !important;
        font-weight: bold !important;
    }

    /* --- NOUVEAUX STYLES POUR LE FORMULAIRE DÉPLIÉ --- */

    /* Masquer le bouton CTA uniquement quand le formulaire est ouvert (classe mo-cta-button-flag retirée par MailOptin) */
    .moOptinForm:not(.mo-cta-button-flag) .mo-optin-form-cta-button {
        display: none !important;
    }

    /* Lisibilité des champs (Inputs) */
    .mo-optin-form-wrapper.muscari-container .muscari-form-control {
        color: #004684 !important;
        /* Texte saisi plus sombre */
        border: 1px solid #6899a0 !important;
        height: 35px !important;
        margin-bottom: 5px !important;
        background-color: #ffffff !important;
        box-shadow: none !important;
    }

    /* Style des placeholders (Gris très sombre pour lisibilité maximale) - Version ultra résiliente */
    .muscari-container input::-webkit-input-placeholder {
        color: #333333 !important;
        opacity: 1 !important;
    }

    .muscari-container input::-moz-placeholder {
        color: #333333 !important;
        opacity: 1 !important;
    }

    .muscari-container input:-ms-input-placeholder {
        color: #333333 !important;
        opacity: 1 !important;
    }

    .muscari-container input::placeholder {
        color: #333333 !important;
        opacity: 1 !important;
    }

    /* Bouton de validation (Submit) */
    .mo-optin-form-wrapper.muscari-container .mo-optin-form-submit-button.muscari-button {
        background-color: #6899a0 !important;
        border-color: #6899a0 !important;
        color: #ffffff !important;
        font-weight: bold !important;
        padding: 5px 15px !important;
        height: auto !important;
        margin-top: 5px !important;
        line-height: 1.5 !important;
    }

    /* Équilibrage de l'espace vertical global pour symétrie parfaite */
    .mo-optin-form-wrapper.muscari-container .muscari-button-group {
        margin-bottom: 0 !important;
        margin-top: 0 !important;
    }

    .mo-optin-form-wrapper.muscari-container .muscari-form-row {
        padding: 8px 10px !important;
        /* Symétrie Haut/Bas */
    }
}

/* ========================================================
   RESPONSIVE MOBILE — Corrections globales Pranazen.eu
   Auteur: Renaud RAKOTOMALALA / Claude Code
   Portée: page d'accueil + global (hors LMS)
   ======================================================== */

/* ----- 1. Container fluide sur mobile ----- */
/* Override du parent theme : 300px à ≤480px → fluid */
@media only screen and (max-width: 680px) {
    .eltdf-container-inner,
    .eltdf-grid,
    .eltdf-row-grid-section,
    .eltdf-slider .carousel-inner .eltdf-slider-content-outer {
        width: calc(100% - 30px) !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }
}

/* ----- 2. Corrections mobile générales (≤767px) ----- */
@media (max-width: 767px) {

    /* --- Typographie --- */
    /* Correction bug : h1 était à 45px sur mobile (supérieur au desktop 40px) */
    body h1 {
        font-size: 28px !important;
        line-height: 1.25 !important;
    }

    body h2 {
        font-size: 20px !important;
        line-height: 1.3 !important;
    }

    body h3 {
        font-size: 18px !important;
        line-height: 1.35 !important;
    }

    /* --- Layout général WPBakery --- */
    /* Colonnes full-width sur mobile, sans overflow */
    .wpb_column,
    .vc_column_container {
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    /* Rows sans débordement horizontal */
    .vc_row,
    .wpb_row,
    .vc_row-fluid {
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    /* --- Section Hero (page d'accueil) --- */
    /* Réduit les paddings verticaux excessifs du hero */
    .home .vc_section.vc_section-has-fill {
        padding-top: 30px !important;
        padding-bottom: 30px !important;
    }

    /* Vidéo responsive dans le hero */
    .home .vc_section-has-fill .flowplayer,
    .home .vc_section-has-fill .fv-player-container {
        width: 100% !important;
        max-width: 100% !important;
    }

    /* --- Pricing tables (section formations) --- */
    /* Supprime la largeur fixe héritée du parent theme */
    .eltdf-pricing-tables {
        width: 100% !important;
        display: block !important;
    }

    /* Le wrapper des cartes : annule les marges négatives Bootstrap */
    .eltdf-pt-wrapper {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    /* Chaque carte en pleine largeur, non-flottante */
    .eltdf-price-table {
        float: none !important;
        width: 100% !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-bottom: 20px !important;
        clear: both !important;
    }

    /* Inner de la carte : évite le débordement */
    .eltdf-pt-inner {
        max-width: 100% !important;
        width: 100% !important;
        display: block !important;
    }

    /* --- Section CTA "Réserver ma séance" --- */
    /* La règle WPBakery inline (sheet 66) a spécificité (0,4,0) avec !important.
       On utilise body.home + 3 classes = (0,4,1) pour gagner la cascade. */
    body.home .bloc-seance-offerte.vc_general.vc_cta3 {
        padding-top: 20px !important;
        padding-bottom: 20px !important;
    }

    /* Supprime aussi la marge excessive autour du bloc */
    body.home .pranazen-calcom-booking {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }

    /* Padding du vc_column-inner de la CTA */
    .home .vc_custom_1768088673520 {
        padding-bottom: 20px !important;
    }

    /* --- Images --- */
    /* Toutes les images restent dans leur conteneur */
    .vc_single_image-img,
    .wpb_single_image .vc_single_image-wrapper img,
    .attachment-full,
    .wp-post-image,
    .eltdf-blog-list-holder img {
        max-width: 100% !important;
        height: auto !important;
    }

    /* --- Boutons --- */
    .eltdf-btn {
        max-width: 100% !important;
        box-sizing: border-box !important;
        word-break: break-word !important;
    }

    /* --- Section Newsletter (#home-livre) --- */
    .home #home-livre .vc_col-sm-6 {
        float: none !important;
        width: 100% !important;
    }

    /* --- Footer --- */
    #footer-copy p {
        width: 100% !important;
        float: none !important;
        text-align: center !important;
    }
}

/* ----- 3. Très petits écrans (≤480px) ----- */
@media (max-width: 480px) {

    body h1 {
        font-size: 24px !important;
        line-height: 1.25 !important;
    }

    body h2 {
        font-size: 18px !important;
    }

    body h3 {
        font-size: 16px !important;
    }

    /* Container vraiment fluid sur tout petit écran */
    .eltdf-container-inner,
    .eltdf-grid {
        width: 100% !important;
        padding-left: 15px !important;
        padding-right: 15px !important;
        box-sizing: border-box !important;
    }

    /* Pricing tables : padding interne réduit */
    .eltdf-pt-inner ul li {
        padding-top: 8px !important;
        padding-bottom: 8px !important;
    }

    /* CTA minimal sur très petit écran */
    .home .pranazen-calcom-booking,
    .home .bloc-seance-offerte.vc_cta3 {
        padding-top: 15px !important;
        padding-bottom: 15px !important;
    }

    /* Texte du mobile menu lisible */
    .eltdf-mobile-header .eltdf-mobile-nav .eltdf-grid > ul > li > a {
        font-size: 14px !important;
        padding: 12px 0 !important;
    }
}

/** END RESPONSIVE MOBILE **/

/* ─── WPBakery text separator : titre toujours sur une seule ligne ───
 * Réduit le font-size automatiquement sur petits écrans pour éviter
 * le passage à 2 lignes des titres de section.
 * @since 2026-04-13
 */
/* ─── Section titles h2 : effet « ligne — titre — ligne » ───
 * Remplace les vc_text_separator (h4) par des vc_custom_heading (h2)
 * sur la page d'accueil pour le SEO, en reproduisant le même rendu visuel.
 * @since 2026-04-13
 */
h2.pranazen-section-title {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    font-size: 21px !important;
    font-weight: 400 !important;
    white-space: nowrap;
}

h2.pranazen-section-title::before,
h2.pranazen-section-title::after {
    content: "";
    flex: 1;
    height: 0;
    border-top: 1px solid #3e777e;
}

@media (max-width: 767px) {
    h2.pranazen-section-title {
        font-size: 17px !important;
        gap: 10px;
    }
}

@media (max-width: 400px) {
    h2.pranazen-section-title {
        font-size: 14px !important;
    }
}

/* ─── Fluent Forms : Override couleurs par défaut (bleu → vert Pranazen) ───
 * Le CSS de Fluent Forms (fluentform-public-default.css) définit
 * --fluentform-primary: #1a7efb (bleu). On surcharge ici avec le teal Pranazen.
 * @since 2026-04-13
 */
:root {
    --fluentform-primary: #438c8e;
}

.fluentform .ff-btn-submit {
    background-color: #438c8e !important;
    border-color: #438c8e !important;
    color: #ffffff !important;
}

.fluentform .ff-btn-submit:hover,
.fluentform .ff-btn-submit:focus {
    background-color: #3a7a7c !important;
    border-color: #3a7a7c !important;
    opacity: 1 !important;
}

.fluentform .ff-el-form-control:focus {
    border-color: #438c8e !important;
    box-shadow: 0 0 0 0.2rem rgba(67, 140, 142, 0.25) !important;
}

.fluentform .ff-el-progress-bar {
    background-color: #438c8e !important;
}

/* ─── FAQ : style accordéon moderne (page d'accueil) ───
 * Restyling du vc_toggle WPBakery en accordéon épuré type Stripe/LiveMentor.
 * Bordures unifiées, chevrons, padding généreux, animation fluide.
 * @since 2026-04-13
 */

/* Conteneur : bordures unifiées type liste */
#q-and-a .vc_toggle {
    border: 1px solid #e0e0e0 !important;
    border-radius: 0 !important;
    margin-bottom: 0 !important;
    background: #fff;
}

#q-and-a .vc_toggle:first-child {
    border-radius: 12px 12px 0 0 !important;
}

#q-and-a .vc_toggle:last-child {
    border-radius: 0 0 12px 12px !important;
}

#q-and-a .vc_toggle + .vc_toggle {
    border-top: none !important;
}

/* Header de la question */
#q-and-a .vc_toggle_title {
    padding: 16px 20px !important;
    cursor: pointer;
    transition: background 0.15s ease;
}

#q-and-a .vc_toggle_title:hover {
    background: #f9fafb;
}

#q-and-a .vc_toggle_title h4 {
    font-size: 14.5px !important;
    font-weight: 500 !important;
    color: #333 !important;
    line-height: 1.45 !important;
    margin: 0 !important;
    padding: 0 !important;
    white-space: normal !important;
}

/* Icône : remplacer le style par défaut par un chevron */
#q-and-a .vc_toggle .vc_toggle_icon {
    display: none !important;
}

#q-and-a .vc_toggle_title::after {
    content: "";
    display: inline-block;
    width: 10px;
    height: 10px;
    border-right: 2px solid #3e777e;
    border-bottom: 2px solid #3e777e;
    transform: rotate(45deg);
    transition: transform 0.25s ease;
    flex-shrink: 0;
    margin-left: auto;
}

#q-and-a .vc_toggle_title {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
}

#q-and-a .vc_toggle_active .vc_toggle_title::after {
    transform: rotate(-135deg);
}

/* Contenu de la réponse */
#q-and-a .vc_toggle_content {
    padding: 0 20px 16px 20px !important;
    font-size: 13.5px !important;
    line-height: 1.65 !important;
    color: #666 !important;
}

#q-and-a .vc_toggle_content p {
    margin-bottom: 8px !important;
    font-size: 13.5px !important;
    line-height: 1.65 !important;
}

#q-and-a .vc_toggle_content p:last-child {
    margin-bottom: 0 !important;
}

/* Responsive mobile */
@media (max-width: 767px) {
    #q-and-a .vc_toggle_title {
        padding: 14px 16px !important;
    }

    #q-and-a .vc_toggle_title h4 {
        font-size: 13.5px !important;
    }

    #q-and-a .vc_toggle_content {
        padding: 0 16px 14px 16px !important;
        font-size: 13px !important;
    }
}

/* Bloc CTA en bas de la FAQ */
.pranazen-faq-cta {
    background: linear-gradient(135deg, #3e777e 0%, #438c8e 100%);
    border-radius: 12px;
    padding: 28px 30px !important;
    text-align: center;
}

.pranazen-faq-cta p {
    font-size: 15px;
    color: rgba(255, 255, 255, 0.85) !important;
    margin: 0 0 14px 0 !important;
    line-height: 1.5;
}

.pranazen-faq-cta-link {
    display: inline-block !important;
    background: #b4ce64 !important;
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    padding: 12px 32px !important;
    border-radius: 50px !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
    box-shadow: 0 3px 12px rgba(180, 206, 100, 0.35);
}

.pranazen-faq-cta-link:hover {
    background: #a0bc50 !important;
    color: #fff !important;
    transform: translateY(-1px);
    box-shadow: 0 5px 16px rgba(180, 206, 100, 0.45);
}

@media (max-width: 767px) {
    .pranazen-faq-cta {
        padding: 22px 20px !important;
    }

    .pranazen-faq-cta-link {
        display: block !important;
        width: 100%;
        box-sizing: border-box;
    }
}
 * Design attractif en mode popup avec titre + description + bouton.
 * Le popup Cal.com offre la meilleure UX mobile (plein écran modal).
 * Les deux colonnes (image + CTA) s'alignent en hauteur via flexbox.
 * @since 2026-04-13
 */

/* ─── Cal.com CTA Booking : bloc compact page d'accueil ───
 * Design attractif en mode popup avec titre + description + bouton.
 * Le popup Cal.com offre la meilleure UX mobile (plein écran modal).
 * Les deux colonnes (image + CTA) s'alignent en hauteur via flexbox.
 * @since 2026-04-13
 */

/* -- Section booking : alignement image + CTA en hauteur --
 * Flex stretch UNIQUEMENT sur desktop (≥1200px) pour aligner les colonnes.
 * Pas de flex-wrap pour éviter l'empilement causé par le padding Bootstrap.
 * Sur tablette/mobile : WPBakery gère seul, image cachée.
 * @since 2026-04-13
 */
@media (min-width: 1200px) {
    /* Neutraliser le flex-column de la section qui empêche table-cell */
    section.vc_section.vc_custom_1764860734274 {
        display: block !important;
    }

    section.vc_custom_1764860734274 > .vc_row {
        display: flex !important;
        align-items: stretch !important;
        flex-wrap: nowrap !important;
    }

    section.vc_custom_1764860734274 > .vc_row::before,
    section.vc_custom_1764860734274 > .vc_row::after {
        display: none !important;
    }

    section.vc_custom_1764860734274 > .vc_row > .vc_column_container {
        float: none !important;
        flex: 0 0 50% !important;
        max-width: 50% !important;
        box-sizing: border-box !important;
    }

    section.vc_custom_1764860734274 .vc_column-inner {
        display: flex !important;
        flex-direction: column !important;
        height: 100% !important;
    }

    section.vc_custom_1764860734274 .vc_column-inner > .wpb_wrapper {
        display: flex !important;
        flex-direction: column !important;
        flex: 1 !important;
    }
}

/* Le CTA remplit la colonne */
.home .vc_custom_1768088673520 {
    padding-bottom: 0 !important;
}

.home .pranazen-cta-booking {
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
}

/* -- Préserver le masquage WPBakery de la colonne image -- */
@media (max-width: 1199px) {
    .vc_custom_1764860734274 .vc_column_container.vc_hidden-md {
        display: none !important;
    }
}

.vc_custom_1764860734274 > .vc_row > .vc_column_container > .vc_column-inner {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 !important;
    width: 100% !important;
}

.vc_custom_1764860734274 > .vc_row > .vc_column_container > .vc_column-inner > .wpb_wrapper {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 !important;
}

/* -- Colonne CTA : supprimer le padding-bottom inline de WPBakery -- */
.home .vc_custom_1768088673520 {
    padding-bottom: 0 !important;
}

/* -- Image : remplit toute la hauteur de la colonne -- */
.home .vc_custom_1601643942689 .wpb_single_image,
.home .vc_custom_1601643942689 .vc_figure {
    flex: 1;
    display: flex;
}

.home .vc_custom_1601643942689 .vc_single_image-wrapper {
    border-radius: 16px;
    overflow: hidden;
    flex: 1;
    display: block;
}

.home .vc_custom_1601643942689 .vc_single_image-wrapper img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 0;
}

/* -- CTA : remplit toute la hauteur, contenu centré -- */
.home .pranazen-cta-booking {
    background: linear-gradient(135deg, #3e777e 0%, #438c8e 100%);
    border-radius: 16px;
    padding: 35px 30px;
    text-align: center;
    margin: 0;
    box-shadow: 0 4px 20px rgba(62, 119, 126, 0.25);
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 1 !important;
    box-sizing: border-box;
}

.home .pranazen-cta-booking .pranazen-calcom-booking__header {
    margin-bottom: 20px;
}

.home .pranazen-cta-booking .pranazen-calcom-booking__title {
    color: #fff !important;
    font-size: 24px;
    font-weight: 600;
    margin: 0 0 12px 0;
    line-height: 1.3;
    font-family: "Poppins", sans-serif;
}

.home .pranazen-cta-booking .pranazen-calcom-booking__description,
.home .pranazen-cta-booking .pranazen-calcom-booking__description p {
    color: rgba(255, 255, 255, 0.9) !important;
    font-size: 15px;
    line-height: 1.5;
    margin: 0;
}

.home .pranazen-cta-booking .pranazen-calcom-booking__button {
    background: #b4ce64 !important;
    color: #fff !important;
    font-size: 17px;
    font-weight: 600;
    padding: 14px 35px;
    border: none;
    border-radius: 50px;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 3px 12px rgba(180, 206, 100, 0.4);
    display: inline-block;
    width: auto;
    max-width: none;
    font-family: "Poppins", sans-serif;
    letter-spacing: 0.3px;
}

.home .pranazen-cta-booking .pranazen-calcom-booking__button:hover {
    background: #a0bc50 !important;
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(180, 206, 100, 0.5);
}

@media (max-width: 767px) {
    .home .pranazen-cta-booking {
        padding: 25px 20px;
        border-radius: 12px;
    }

    .home .pranazen-cta-booking .pranazen-calcom-booking__title {
        font-size: 19px;
    }

    .home .pranazen-cta-booking .pranazen-calcom-booking__description,
    .home .pranazen-cta-booking .pranazen-calcom-booking__description p {
        font-size: 14px;
    }

    .home .pranazen-cta-booking .pranazen-calcom-booking__button {
        font-size: 15px;
        padding: 12px 30px;
        width: 100%;
        display: block;
    }
}
