/*
Theme Name: Hello Elementor Child
Theme URI: https://elementor.com/hello-theme/?utm_source=wp-themes&utm_campaign=theme-uri&utm_medium=wp-dash
Template: hello-elementor
Author: Elementor Team
Author URI: https://elementor.com/?utm_source=wp-themes&utm_campaign=author-uri&utm_medium=wp-dash
Description: Hello Elementor is a lightweight and minimalist WordPress theme that was built specifically to work seamlessly with the Elementor site builder plugin. The theme is free, open-source, and designed for users who want a flexible, easy-to-use, and customizable website. The theme, which is optimized for performance, provides a solid foundation for users to build their own unique designs using the Elementor drag-and-drop site builder. Its simplicity and flexibility make it a great choice for both beginners and experienced Web Creators.
Tags: accessibility-ready,flexible-header,custom-colors,custom-menu,custom-logo,featured-images,rtl-language-support,threaded-comments,translation-ready
Version: 3.1.1.1784908223
Updated: 2026-07-24 15:50:23

*/


.section-padding{
    padding: 100px;
}

/* Desktop large */
@media (min-width: 1600px){
    .section-padding{
        padding: 120px;
    }
}

/* Tablette */
@media (max-width: 1024px){
    .section-padding{
         padding: 80px;
    }
}

/* Mobile */
@media (max-width: 767px){
    .section-padding{
          padding: 40px;
    }
}


/* =========================================
   FAQ WEPERFORM
   ========================================= */

.weperform-faq {
    --faq-dark-blue: #101d62;
    --faq-accent: #3f72ff;
    --faq-text: #64709a;
    --faq-background: #ffffff;
    --faq-icon-background: #f1f4ff;

    display: flex;
    flex-direction: column;
    gap: 16px;

    width: 100%;
}

/* Élément de FAQ */

.weperform-faq__item {
    overflow: hidden;

    background: var(--faq-background);
    border-radius: 20px;

    transition:
        box-shadow 0.3s ease,
        transform 0.3s ease;
}

/* Question */

.weperform-faq__question {
    width: 100%;
    min-height: 76px;

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;

    padding: 22px 28px;

    appearance: none;
    background: transparent;
    border: 0;
    border-radius: 20px;

    text-align: left;
    cursor: pointer;
}

.weperform-faq__title {
    color: var(--faq-background);

    font-family: inherit;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.4;
}

/* Icône circulaire */

.weperform-faq__icon {
    position: relative;
    flex: 0 0 34px;

    width: 34px;
    height: 34px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: var(--faq-icon-background);
    border-radius: 50%;
}

.weperform-faq__icon-horizontal,
.weperform-faq__icon-vertical {
    position: absolute;

    width: 12px;
    height: 3px;

    background: var(--faq-accent);
    border-radius: 10px;

    transition:
        opacity 0.25s ease,
        transform 0.25s ease;
}

.weperform-faq__icon-vertical {
    transform: rotate(90deg);
}

/* Transformation du + en - */

.weperform-faq__item.is-open .weperform-faq__icon-vertical {
    opacity: 0;
    transform: rotate(90deg) scaleX(0);
}

/* Réponse */

.weperform-faq__answer {
    display: grid;
    grid-template-rows: 0fr;

    opacity: 0;

    transition:
        grid-template-rows 0.35s ease,
        opacity 0.25s ease;
}

.weperform-faq__answer:not([hidden]) {
    grid-template-rows: 1fr;
    opacity: 1;
}

.weperform-faq__answer-inner {
    min-height: 0;
    overflow: hidden;

    padding: 20px 28px 24px;

    color: var(--faq-text);

    font-size: 16px;
    font-weight: 400;
    line-height: 1.75;
}

.weperform-faq__answer-inner > *:first-child {
    margin-top: 0;
}

.weperform-faq__answer-inner > *:last-child {
    margin-bottom: 0;
}

.weperform-faq__answer-inner p {
    margin: 0 0 12px;
}

.weperform-faq__answer-inner a {
    color: var(--faq-accent);
    text-decoration: underline;
}

/* Focus clavier */

.weperform-faq__question:focus-visible {
    outline: 3px solid rgba(63, 114, 255, 0.3);
    outline-offset: -3px;
}

/* État vide */

.weperform-faq__empty {
    color: var(--faq-text);
}

/* =========================================
   TABLETTE
   ========================================= */

@media screen and (max-width: 1024px) {
    .weperform-faq {
        gap: 14px;
    }

    .weperform-faq__item,
    .weperform-faq__question {
        border-radius: 18px;
    }

    .weperform-faq__question {
        padding: 21px 24px;
    }

    .weperform-faq__answer-inner {
        padding: 0 24px 22px;
    }
}

/* =========================================
   MOBILE
   ========================================= */

@media screen and (max-width: 1024px) {
    .weperform-faq {
        gap: 12px;
    }

    .weperform-faq__item,
    .weperform-faq__question {
        border-radius: 16px;
    }

    .weperform-faq__question {
        min-height: 68px;
        gap: 16px;

        padding: 18px;
    }

    .weperform-faq__title {
        font-size: 16px;
        line-height: 1.35;
		white-space: normal;
    }

    .weperform-faq__icon {
        flex-basis: 30px;

        width: 30px;
        height: 30px;
    }

    .weperform-faq__icon-horizontal,
    .weperform-faq__icon-vertical {
        width: 10px;
        height: 2px;
    }

    .weperform-faq__answer-inner {
        padding: 0 18px 20px;

        font-size: 15px;
        line-height: 1.65;
    }
}

/** Fix sous item menu **/

@media screen and (max-width: 1024px) {
	
	h2.elementor-heading-title{
		font-size: 1.7em !important;
	}
	br {
        display: none;
    }

    /* Le sous-menu reste dans le flux du menu */
    .elementor-nav-menu--dropdown.sub-menu {
        position: static !important;
        top: auto !important;
        left: auto !important;
        right: auto !important;

        width: 100% !important;
        min-width: 0 !important;

        margin: 0 !important;
        transform: none !important;
    }

    /* Le parent prend toute la largeur */
    .elementor-nav-menu--dropdown .menu-item-has-children {
        display: flex !important;
        flex-direction: column !important;
        width: 100%;
    }

    /* Lien principal */
    .elementor-nav-menu--dropdown .menu-item-has-children > a {
        width: 100%;
    }

    /* Sous-menu vertical */
    .elementor-nav-menu--dropdown.sub-menu {
        flex-direction: column !important;
        align-items: stretch !important;
        padding: 8px 0 8px 18px !important;
    }

    /* Liens du sous-menu */
    .elementor-nav-menu--dropdown.sub-menu > li {
        width: 100% !important;
    }

    .elementor-nav-menu--dropdown.sub-menu > li > a {
        width: 100% !important;
        padding: 10px 16px !important;
    }
}

