/****************** BASE GÉNÉRALE ******************/
body,
html {
    max-width: 100% !important;
    overflow-x: hidden;
}

a:focus {
    outline: none !important;
}

img.emoji {
    display: inline !important;
    border: none !important;
    box-shadow: none !important;
    height: 1em !important;
    width: 1em !important;
    margin: 0 0.07em !important;
    vertical-align: -0.1em !important;
    background: none !important;
    padding: 0 !important;
}

blockquote {
    padding: 10px;
    margin: 0;
    font-size: 1.1em;
}

.small {
    font-size: 14px;
}

.h3 {
    font-size: 24px !important;
    line-height: 1;
    font-weight: 600;
    font-family:
        BasicSans Alt Narrow,
        Arial;
}

.dark-bg {
    color: #fff;
}

.white-icon .cls-1 {
    fill: #fff !important;
}

.mon-ombre-3 .elementor-widget-container {
    box-shadow: var(--mon-ombre-3);
}

.ast-right-sidebar #primary {
    border-right: 0px solid var(--ast-border-color) !important;
    border-left: 0px solid var(--ast-border-color) !important;
    margin-right: 0px;
    margin-left: 0px;
}

.ast-left-sidebar #primary {
    border-left: 0px solid var(--ast-border-color) !important;
    border-right: 0px solid var(--ast-border-color) !important;
    margin-right: 0px;
    margin-left: 0px;
}

.ast-right-sidebar #secondary {
    border-left: none !important;
    border-right: none !important;
    margin-left: 0px;
}

.ast-left-sidebar #secondary {
    border-right: none !important;
    border-left: none !important;
    margin-right: 0px;
}

/*widget*/
.full-width-div .primary-btn,
.full-width-div .secondary-btn,
.full-width-div .transparent-btn {
    display: block;
    text-align: center;
    margin-bottom: 20px;
}

.full-width-div .primary-btn {
    margin-bottom: 90px;
}

@media screen and (max-width: 1000px) {
    .fixed-bloc {
        display: none;
    }
}

/****************** UI : BLOCS & BOUTONS ******************/
.blue-bg-box {
    background-color: var(--ast-global-color-1);
    padding: 20px;
    border-radius: 16px;
    margin: 20px 0;
}

button:hover,
button:focus,
input[type='button']:hover,
input[type='button']:focus,
input[type='submit']:hover,
input[type='submit']:focus,
.elementor-button:hover,
.elementor-button:focus {
    color: var(--ast-global-color-5) !important;
}

.primary-btn,
.secondary-btn,
.secondary-dark-btn,
.tertiary-btn,
.transparent-btn {
    padding: 14px 36px;
    text-decoration: none;
    border-radius: 30px;
    transition: all 0.3s ease;
    line-height: 1;
    font-weight: 600;
}

.primary-btn {
    background-color: var(--ast-global-color-1);
    color: #fff;
    border: 2px solid var(--ast-global-color-1);
}

.primary-btn:hover,
.primary-btn:focus {
    background-color: var(--ast-global-color-0);
    color: #fff !important;
    border-color: var(--ast-global-color-0);
}

.transparent-btn {
    background-color: transparent;
    color: var(--ast-global-color-1);
    border: 2px solid var(--ast-global-color-1);
}

.transparent-btn:hover,
.transparent-btn:focus {
    background-color: #103a5a;
    color: #fff !important;
}

.secondary-btn,
.secondary-dark-btn {
    background-color: var(--ast-global-color-0) !important;
    border: 2px solid var(--ast-global-color-0) !important;
    color: #fff;
}

.secondary-btn:hover,
.secondary-btn:focus {
    background-color: var(--ast-global-color-1) !important;
    border-color: var(--ast-global-color-1) !important;
    color: #fff !important;
}

.secondary-dark-btn:hover,
.secondary-dark-btn:focus {
    background-color: var(--ast-global-color-5) !important;
    border-color: var(--ast-global-color-5) !important;
    color: var(--ast-global-color-1) !important;
}

.tertiary-btn {
    background-color: var(--ast-global-color-5) !important;
    border: 2px solid var(--ast-global-color-5) !important;
    color: var(--ast-global-color-1) !important;
}

.tertiary-btn:hover,
.tertiary-btn:focus {
    background-color: var(--ast-global-color-1) !important;
    border-color: var(--ast-global-color-1) !important;
    color: var(--ast-global-color-5) !important;
}

input[type='submit'],
input[type='submit']:hover,
input[type='submit']:focus,
.elementor-kit-41 input[type='submit'],
.elementor-kit-41 input[type='submit']:hover,
.elementor-kit-41 input[type='submit']:focus {
    border-width: 0px !important;
    border-style: solid !important;
    color: var(--ast-global-color-5) !important;
}

/****************** CONTAINERS & RESPONSIVE ******************/
@media (max-width: 767px) {
    .ast-narrow-container .ast-article-post,
    .ast-narrow-container .ast-article-single,
    .ast-narrow-container .comments-count-wrapper,
    .ast-narrow-container .ast-comment-list li.depth-1,
    .ast-narrow-container .comment-respond,
    .ast-narrow-container .related-posts-title-wrapper,
    .single.ast-narrow-container .about-author-title-wrapper,
    .ast-narrow-container .ast-related-posts-wrap,
    .ast-narrow-container .ast-woocommerce-container,
    .ast-narrow-container .ast-single-related-posts-container,
    .single.ast-narrow-container .ast-author-details {
        padding-right: 0;
        padding-left: 0;
    }
}

/****************** BLOCS AVEC IMAGE DE FOND 50% ******************/
.bloc-image-50 .elementor-background-overlay,
.bloc-image-50-left .elementor-background-overlay {
    background-size: cover;
}

.bloc-image-50 .elementor-background-overlay {
    width: 50%;
    height: 100%;
    left: 50%;
    position: absolute;
}

.bloc-image-50-left .elementor-background-overlay {
    width: 50%;
    height: 100%;
}

.cover-bg .elementor-column-wrap {
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    opacity: 1;
}

/****************** ADMIN BAR PERSONNALISÉ ******************/
.role-owner #wp-admin-bar-customize,
.role-owner #wp-admin-bar-new-content,
.role-owner #wp-admin-bar-comments,
.role-owner #wp-admin-bar-elementor_edit_page,
.role-owner #wp-admin-bar-assetcleanup-parent,
.elementor-document-handle,
#wp-admin-bar-elementor_edit_page,
#wp-admin-bar-elementor_notes,
#wp-admin-bar-assetcleanup-parent,
#wp-admin-bar-comments {
    display: none !important;
}

/****************** HEADER SITE******************/
.ast-logo-title-inline .ast-site-identity {
    padding: 0 !important;
}

.home .ast-below-header-wrap {
    display: none;
}

.ast-header-sticked .site-logo-img img {
    padding: 5px 0;
}

.ast-main-header-wrap .menu-text {
    font-weight: 600;
}

.menu-btn a:before {
    width: 0 !important;
}

.menu-btn .menu-text {
    border: 2px solid var(--ast-global-color-1);
    padding: 8px 18px;
    border-radius: 50px;
    background-color: var(--ast-global-color-1);
    color: #fff;
}

#ast-hf-menu-3 svg {
    height: 17px !important;
    margin-right: 10px;
    fill: var(--ast-global-color-1);
}

.ast-desktop .main-header-menu.ast-menu-shadow .sub-menu {
    box-shadow: var(--mon-ombre-2);
}

.ast-menu-toggle {
    background-color: transparent !important;
    border-radius: 0 !important;
    border: none !important;
}

.ast-mobile-popup-drawer .ast-mobile-popup-header .menu-toggle-close:focus,
input:focus,
input[type='text']:focus,
input[type='email']:focus,
input[type='url']:focus,
input[type='password']:focus,
input[type='reset']:focus,
input[type='search']:focus,
textarea:focus,
.wp-block-search__input:focus,
[data-section='section-header-mobile-trigger']
    .ast-button-wrap
    .ast-mobile-menu-trigger-minimal:focus,
.ast-mobile-popup-drawer.active .menu-toggle-close:focus,
.woocommerce-ordering select.orderby:focus,
#ast-scroll-top:focus,
.woocommerce a.add_to_cart_button:focus,
.woocommerce .button.single_add_to_cart_button:focus {
    outline: none !important;
    border: none !important;
}

.mini-menu a {
    font-size: 13px;
    color: #999 !important;
    display: block;
    text-align: center;
}

.btn-menu-mobile a .menu-text {
    margin-top: 20px;
    display: block;
    text-align: center;
    padding: 10px 40px;
    background-color: var(--ast-global-color-0);
    border-radius: 100px;
    color: #fff;
    line-height: 1.7;
}

.btn-menu-mobile-alt a .menu-text {
    margin-top: 10px;
    display: block;
    text-align: center;
    padding: 10px 40px;
    background-color: var(--ast-global-color-1);
    border-radius: 100px;
    color: #fff;
    line-height: 1.7;
}

.btn-menu-mobile-alt .ast-icon.icon-arrow {
    display: none;
}

.ast-menu-toggle:focus {
    outline: none !important;
}

.ast-header-break-point
    .ast-builder-menu-1
    .menu-item.menu-item-has-children
    > .ast-menu-toggle {
    top: 0.9em;
}

#ast-desktop-header
    .main-header-menu
    .sub-menu
    .menu-item.menu-item-has-children
    > .menu-link
    .ast-header-navigation-arrow {
    right: 15px;
}

.main-header-menu .sub-menu .menu-item {
    margin-right: -5px;
}

.main-header-bar .main-header-bar-navigation .menu-item-has-children > a:after {
    content: '' !important;
}

/**********************************Header pages / posts*************************/
/***************FULL WIDTH**************/
.up-header-wrap {
    max-width: 900px;
    margin: 0 auto;
}

body:not(.single-habitats-partages) .nouvelle-recherche {
    display: none !important;
}

/***************HERO*******************/
@media screen and (max-width: 768px) {
    .up-hero-wrapper {
        padding: 60px 20px !important;
    }
    .up-hero-container {
        gap: 40px !important;
    }

    .up-post-meta {
        gap: 10px !important;
    }
}

/*****************************SOMMAIRE************************/
.element-is-not-sticky .table-of-contents {
    margin-top: 0;
    transition: 0.5s all;
}

.element-is-sticky .table-of-contents {
    margin-top: 40px;
    transition: 0.5s all;
}

.table-of-contents .widget-title {
    margin-bottom: 0 !important;
}

/****************** FOOTER ******************/
.copyright {
    font-size: 14px;
}

footer a,
.entry-meta,
.entry-meta a,
.single .post-navigation a,
.widget_categories li a,
.nav-links a,
.ast-archive-title {
    color: var(--ast-global-color-1);
}

footer a:hover,
.entry-meta a:hover,
.single .post-navigation a:hover,
.widget_categories li a:hover,
.nav-links a:hover {
    color: var(--ast-global-color-0);
}

/****************** BLOG ARCHIVES ******************/
.blog-layout-1 {
    border-bottom: none !important;
}

.ast-article-post {
    margin-bottom: 0 !important;
}

.search-results .post-thumb img,
.archive .post-thumb img,
.ast-related-post-featured-section .post-thumb img,
.blog .post-thumb img {
    border-radius: var(--mon-radius);
    min-height: 215px;
    max-height: 215px;
    object-fit: cover;
    width: 100%;
}

a.ast-button:hover {
    color: #fff !important;
}

.read-more .ast-button {
    padding: 10px 14px;
    line-height: 1;
    display: inline-block;
    margin-top: 10px;
}

.uael-post__footer,
.uael-post__content-wrap .read-more .ast-button {
    display: none !important;
}

.articles-bloc .uael-post__thumbnail img {
    border-radius: var(--mon-radius);
}

/****************** TÉMOIGNAGES ******************/
@media screen and (min-width: 1024px) {
    .bloc-temoignages .uael-post__thumbnail {
        width: 20%;
    }

    .bloc-temoignages .uael-post__inner-wrap {
        display: flex;
        align-items: center;
    }

    .bloc-temoignages .uael-post__content-wrap {
        max-width: 80%;
        padding-top: 0px !important;
    }
}

.bloc-temoignages .uael-post__thumbnail img {
    width: 140px;
    height: 140px;
    object-fit: cover;
    border-radius: 100%;
    margin: 0 auto;
}

/****************** PAGES SPÉCIFIQUES ******************/
.single-trouver-clic-mdph .post-navigation,
.single-memos-aides-sociales .navigation.post-navigation,
.single-definitions .navigation.post-navigation,
.single-comite-ethique .navigation.post-navigation,
.single-sandbox .post-navigation {
    display: none;
}

.single-memos-aides-sociales #secondary,
.single-definitions #secondary {
    display: none;
}

.single-memos-aides-sociales #primary,
.single-definitions #primary {
    width: 100%;
    padding-right: 0;
    border-right: none;
}

@media screen and (min-width: 767px) {
    .single-comite-ethique .post-thumb-img-content img {
        width: 300px;
        float: left;
        margin: 2em 2em 1em 0 !important;
    }
}

/****************** PAGINATION ******************/
.page-numbers {
    margin: 0 12px;
}

.extended-pagination {
    text-align: center;
}

.bloc-pagination {
    margin-top: 10px;
    opacity: 0.6;
}

.prev.page-numbers,
.next.page-numbers {
    display: none !important;
}

a.page-numbers {
    color: var(--ast-global-color-1);
}

a.page-numbers:hover,
.page-numbers.current {
    color: var(--ast-global-color-0);
}

/***********************CARDS***********************/
.up_card {
    border-top: 1px solid #ddd;
    margin-bottom: 60px;
    padding: 0 20px 20px;
    border: 0px solid #ddd;
    border-radius: var(--mon-radius);
    box-shadow: var(--mon-ombre-2);
}

.up_card_header h2 {
    padding-top: 30px;
    margin-bottom: 30px;
}

.up_card svg {
    fill: var(--ast-global-color-1) !important;
    margin-bottom: 5px !important;
}

.up_card h2 svg {
    display: none;
}

h3.h4 {
    font-size: 20px;
}

.up_card .meta-item {
    margin-bottom: 10px;
}

/********************************FAQ************************/
.faq-section {
    /*border: 0px solid #ddd;*/
    background: #fff;
    padding: 0;
    margin-bottom: 0px;
    border-radius: var(--mon-radius);
    color: var(--ast-global-color-2);
}

.faq-intro {
    margin-bottom: 30px;
}

.faq-section .faq-item {
    margin-bottom: 30px;
    padding: 15px;
    background-color: var(--ast-global-color-4);
    border-radius: var(--mon-radius);
    transition: all 0.3s;
}

.faq-section .toggle-symbol {
    font-size: 26px;
    font-weight: 700;
    color: var(--ast-global-color-2);
    width: 20px;
    display: inline-block;
    text-align: center;
    margin-right: 10px;
}

.faq-question {
    gap: 20px;
}

.faq-question .h4 {
    font-weight: 600 !important;
    font-size: 17px;
}

/* Animation smooth (fade) */
.faq-answer {
    opacity: 0;
    display: none;
    transition: opacity 0.3s ease;
}

.faq-answer.visible {
    display: block;
    opacity: 1;
}

