/*
Theme Name: Avada Child
Description: Child theme for Avada theme
Author: ThemeFusion
Author URI: https://theme-fusion.com
Template: Avada
Version: 1.0.0
Text Domain:  Avada
*/


/*------ TYPOGRAPHY ------------------------------------*/
h1 {
    margin-bottom: 1rem !important;
    line-height: 115% !important;
}

h2 {
    margin-bottom: 1rem !important;
}

h3:not(.cours-listing h3) {
    margin-bottom: 0.5rem !important;
}

.faq h3.fusion-title-heading {
    margin-top: 80px !important;
}

p:not(.credits p, .contact p, .nouvelles p, .cours-listing p, .fondement p), .post-content p:not(.cours-listing p, .fondement p) {
    margin-top: 0;
    margin-bottom: 1rem !important;
}

h1 em, h2 em {
    font-family: sanvito-pro, sans-serif !important;
    font-weight: 700;
    font-style: normal;
    color: #E16A03;
    font-size: 2.75rem;
}

h1 em {
    font-size: 3.75rem;
}

.gros-em h1 em {
    font-size: 80px!important;
}
.dark {
    color: #ffffff;
}

.dark h3 {
    color: #E4F4FB !important;
    text-transform: uppercase;
}

.dark a:not(.fusion-button, .fusion-social-network-icon) {
    color: #ffffff;
    text-decoration: underline;
}

.dark a:hover {
    color: #FBBA00
}

.blog-content h2 {
    margin-top: 2rem !important;
    --awb-margin-top: 2rem !important; 
}

.blog-content h3 {
    margin-top: 2rem !important;
    --awb-margin-top: 2rem !important;
    text-transform: none !important;
}

.blog-content p {
    line-height: 160% !important;
}

ol, ul {
    padding-left: 15px !important;
}
ol li, ul li {
    padding-left: 10px !important;
}

blockquote {
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 30px 40px 20px 30px !important;
    background-color: #EFF7F5 !important;
}



/*------ GENERAL ---------------------------------------*/

main {
    margin-top: -85px;
}

/*------ Bouton light ------------*/
.btn-continuer-lecture {
    position: relative;
    padding: 0 !important;
    background-color: rgba(0,0,0,0) !important;
    color: #1C2026 !important; 
    font-weight: 400 !important;
    display: inline-block;
}

.btn-continuer-lecture::after {
    background-color: #FBBA00;
    opacity: 0.5;
    content: " ";
    height: 30%;
    position: absolute;
    left: 0;
    margin-left: -0.2rem;
    top: 65%;
    width: calc(100% + 0.4rem);
    z-index: -1;
    transition: all .2s !important;
}
.btn-insertion {
    position: relative;
    padding: 0 !important;
    background-color: rgba(0,0,0,0) !important;
    color: #1C2026 !important; 
    font-weight: 700 !important;
    display: inline-block;
}

.btn-insertion::after {
    background-color: #FBBA00;
    opacity: 1;
    content: " ";
    height: 30%;
    position: absolute;
    left: 0;
    margin-left: -0.2rem;
    top: 50%; /* Bordure en haut par défaut */
    width: calc(100% + 0.4rem);
    z-index: -1;
    transition: all .2s !important;
}

.btn-insertion:hover::after {
    top: 65%; /* Bordure se déplace vers le bas au survol */
}

div:has(> .btn-continuer-lecture):hover .btn-continuer-lecture::after {
    top: 110%;
}

a.fusion-button {
    margin-top: 20px !important;
}

/*------ Highlight effect --------*/
.highlight-jaune { 
    background: url(//s2.svgbox.net/pen-brushes.svg?ic=brush-8&color=FBBA00);
	background-repeat: no-repeat;
    margin-top: -1px !important;
    padding: 8px 20px 6px 20px;
    margin-bottom: 1rem !important;
}
.highlight-jaune-2 {
    display: inline-flex;
    position: relative;
    line-height: 1; 
    padding: 8px 20px;
}

.highlight-jaune-2::before {
    content: "";
    background: url(http://centrenarive.pilondesign.com/wp-content/uploads/2024/10/highlight-jaune.svg) no-repeat center;
    background-size: cover;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
}
.highlight-turquoise-2 {
    display: inline-flex;
    position: relative;
    line-height: 1; 
    padding: 8px 20px;
}

.highlight-turquoise-2::before {
    content: "";
    background: url(http://centrenarive.pilondesign.com/wp-content/uploads/2024/04/highlight-vert.svg) no-repeat center;
    background-size: cover;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
}
.highlight-turquoise { 
    background: url(//s2.svgbox.net/pen-brushes.svg?ic=brush-9&color=00A68B);
    margin-top: -1px !important;
    padding: 8px 20px 6px 20px;
    margin-bottom: 1rem !important;
}

.highlight-orange {
    background: url(//s2.svgbox.net/pen-brushes.svg?ic=brush-1&color=E16A03);
    margin-top: -7px !important;
    padding: 12px 20px 0 20px;
    margin-bottom: 1rem !important;
}
.highlight-orange-2 {
    display: inline-flex;
    position: relative;
    line-height: 1; 
    padding: 8px 20px;
}

.highlight-orange-2::before {
    content: "";
    background: url(http://centrenarive.pilondesign.com/wp-content/uploads/2024/04/highlight-orange.svg) no-repeat center;
    background-size: cover;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
}
.parent-container {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.highlight-orange-3 {
    display: inline-flex;
    position: relative;
    line-height: 1; 
    padding: 8px 20px;
    flex-direction: column;
	margin: 0;
}


.highlight-orange-3::before {
    content: "";
    background: url(http://centrenarive.pilondesign.com/wp-content/uploads/2024/10/Group-495.svg) no-repeat center;
    background-size: cover;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
}
.highlight-orange-3:not(:last-child) {
    margin-bottom: -7px;
}

.highlight-vert-3 {
    display: inline-flex;
    position: relative;
    line-height: 1; 
    padding: 8px 20px;
    flex-direction: column;
	margin: 0;
}


.highlight-vert-3::before {
    content: "";
    background: url(http://centrenarive.pilondesign.com/wp-content/uploads/2024/10/highlight-vert.svg) no-repeat center;
    background-size: cover;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
}
.highlight-vert-3:not(:last-child) {
    margin-bottom: -7px;
}
.terms p {
    margin-bottom: 0 !important;
    display: inline-block !important;
    background-color: #ffffff;
    padding: 3px 9px;
}

.page-id-685 .terms p {
    background-color: #E4F4FB !important;
}



/*a.fusion-button.button-flat {
    margin-top: 1rem;
}*/

/*------ Accordion ---------------*/

.fusion-accordian .fusion-panel {
    padding: 0 !important;
}

.fusion-accordian .panel-group .panel-heading a {
    padding: 0 !important;
}

.fusion-accordian .panel-group .panel-heading {
    padding: 12px 0 30px 0 !important;
    padding-bottom: 0 !important;
    text-transform: uppercase !important;
}

.fusion-accordian .panel-group .panel-heading {
    margin-bottom: 8px;
}

.fusion-accordian .fusion-toggle-icon-wrapper i {
    border-radius: 20px;
}


.fusion-accordian .panel-group .panel-heading a:hover .fusion-toggle-icon-wrapper i   {
    color: #ffffff !important;
}

.fusion-accordian .panel-group .panel-heading a .fusion-toggle-icon-wrapper i.active-icon   {
    color: #ffffff !important;
}

/*------ Header ------------------*/
@media screen and (min-width: 1066px) {
    .menu-spacing  {
        display: none !important;
    }
}

/*------ Footer ------------------*/
@keyframes pulse {
    0% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.3);
    }
    100% {
        transform: scale(1);
    }
}

.fusion-image-element:has(span.heart) {
    display: inline-block !important;
    margin: 0 6px;
    animation: pulse 2s infinite;
}

.credits p {
    font-size: 0.8rem !important;
    line-height: 1.2 !important;
    margin: 0 !important;
}

.contact-address .fusion-column-wrapper {
    flex-wrap: nowrap !important;
}

.contact-address .fusion-column-wrapper .fusion-image-element {
    flex-shrink: 0 !important;
}


/*------ ACCUEIL ---------------------------------------*/

/*------ Carousel hero -----------*/
.nouvelles .swiper-wrapper {
    padding: 0 !important;
}

/*------ Nouvelles ---------------*/
.nouvelles .swiper-wrapper {
    margin-bottom: 40px !important;
}

/*------ Programmes éducatifs ----*/
.fusion-builder-row:has(.justify-center) {
    justify-content: center;
}

/*------ Nos activités -----------*/
.accordion .panel-group .panel-heading {
    padding: 20px 0 20px 25% !important;
    padding-bottom: 0 !important;
    text-transform: uppercase !important;
}

@media screen and (max-width: 1024px) {
    .accordion .panel-group .panel-heading {
        padding: 20px 0 20px 18% !important;
    }
}

.accordion .panel-group .panel-heading {
    margin-bottom: 8px;
}

.accordion .panel-group .panel-heading a {
    padding: 0 !important;
    margin-top: -15px;
}

.accordion .fusion-toggle-icon-wrapper i {
    border-radius: 20px;
    margin-top: -10px
}

.accordion .panel-group .panel-heading a:hover .fusion-toggle-icon-wrapper i   {
    color: #ffffff !important;
}

.accordion .panel-group .panel-heading a .fusion-toggle-icon-wrapper i.active-icon   {
    color: #ffffff !important;
}

.accordion .date {
    text-transform: lowercase !important;
}

.accordion .fusion-panel {
    padding: 0 !important;
}

/*------ CONTACTEZ-NOUS --------------------------------*/
.fondement-chiffre {
    font-family: sanvito-pro, sans-serif !important;
    color: #00A68B !important;
    font-size: 6.25rem !important;
}

.fondement p {
    margin-bottom: 0 !important;
}

.historique .annee h3 {
    font-size: 2.4rem !important;
}

.historique .annee h3:before {
    content: "–\00a0\00a0\00a0";
    margin-left: -65px;
    color: #E16A03;
    font-size: 2.6rem !important;
}

/*------ GABARITS --------------------------------------*/

@media screen and (min-width: 1275px) {
    .white-box .fusion-column-wrapper {
       padding-left: 0px !important;
    }
}

.image-box .fusion-column-wrapper.fusion-column-has-bg-image {
    justify-content: center;

}

.image-box .fusion-column-wrapper.fusion-column-has-bg-image .fusion-image-element {
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
    width: 100%;
}


/*------ FAQ --------------------------------------*/

.fusion-filters .fusion-filter a {
    color: #2f4159; 
    font-family: greycliff-cf; 
    font-weight: 700;
    font-size: 16px; 
    line-height: 50px;
    text-transform: uppercase; 
}


/*------  PROGRAMMES ÉDUCATIFS --------*/
.custom-button:hover {
	transition: border-bottom-width 0.3s ease-in-out, border-bottom-color 0.3s ease-in-out;
	}


/* Correction précise pour l'élément Contact */
#menu-item-898 a.awb-menu__main-a_button .menu-text {
    font-family: 'Lato', sans-serif !important;
    font-weight: 400 !important;
    font-size: 14px !important;
    color: #202224 !important;

	margin-top: -15px;
}


/* Style slides nouvelles en accueil */
.dernier-post-slide {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start; /* Important : tout est aligné en haut */
}

.dernier-post-texte {
    flex: 1;
    padding-right: 2rem;
}

.dernier-post-categorie-date {
    margin-bottom: 10px;
}

.dernier-post-categorie-date .categorie {
    background: white;
    padding: 5px 10px;
    color: #2F4159;
    margin-right: 10px;
}

.dernier-post-categorie-date .date {
    color: #e16a03;
}

h2 {
    font-size: 2rem;
    margin-bottom: 1rem;
	margin-top: 1rem;
}

.extrait {
    font-size: 1rem;
    margin-bottom: 1.5rem;
}

.dernier-post-slide {
    display: flex;
    flex-wrap: nowrap; 
    align-items: flex-start;
    gap: 2rem; 
}

.dernier-post-texte {
    flex: 0 0 50%;
    padding-right: 2rem;
}

.dernier-post-image {
    flex: 0 0 50%; 
    text-align: center;
}

.bouton-en-savoir-plus{
	font-family: 'greycliff-cf', Arial, Helvetica, sans-serif;
    font-weight: 600;
    font-size: 16px;
    line-height: 19px;
    color: #202224;
    background-color: #fbba00;
    padding: 10px 20px; /* Ajuste si besoin */
    border: none;
    text-align: center;
    cursor: pointer;
    text-decoration: none; /* Si c’est un lien */
    display: inline-block;
	border-radius:none;
	margin-top:5%;
}


.bouton-en-savoir-plus:hover {
    background-color: #f7a300;
    color: #202224;
}

.superposition-carte {
width: 30%;
margin: 0 20px;
  background-color: #ffffff;
  border-radius: 20px;
  padding: 0;
  box-shadow: 0 6px 10px rgba(0, 0, 0, 0.05);
  text-align: left;
  position: relative;
  box-sizing: border-box; 
}

@media screen and (max-width: 768px) {
  .superposition-carte {
    width: 100% !important;
    max-width: 90%;
    margin: 0 auto 20px auto !important;
    display: block;
    clear: both;
  }
}

.image-fond {
  display: block;
  width: 100%;
  height: auto;
  margin-bottom: 20px;
}

