/*
Theme Name: LIZIWEB - Theme enfant Divi
Description: Theme enfant du theme Divi. Vous pouvez desormais le personnaliser sans risquer de perdre vos modifications
Author: LIZIWEB
Author URI: https://liziweb.com
Template: Divi
Version: 1.0
*/

/* ----------- Fonts ----------- */
h1, h2, h3 {
	text-transform: uppercase;
	font-weight: 500;
}

h1 {
	font-size: 35px;
	font-weight: 900;
	color: #99563A;
}

h1 span {
	font-weight: normal;
}

h2 {
	font-size: 28px;
}

@media (max-width: 980px) {
	h1 {
		font-size: 24px;
	}
	
	h2 {
		font-size: 17px;
	}
}

a {
	cursor: pointer;
}





/* ----------- Menu Header & Footer ----------- */

/* Header */
.et_pb_menu .et_pb_menu__wrap {
	align-items: flex-end; /* colle les éléments en bas */
}

#menu-header li a,
#menu-header-1 li a {
	padding: 0px 5px;
	transition: none;
}

#menu-header li a:hover,
#menu-header-1 li a:hover {
	font-weight: 900;
	opacity: 1;
}

#menu-header .devenir-membre,
#menu-header-1 .devenir-membre {
	border-radius: 5px;
	height: 30px;
	margin-left: 10px;
	padding: 5px 5px;
	transition: background-color 0.3s ease;
	background-color: #99563A;
}

#menu-header-1 .devenir-membre {
	margin-top: 0px;
	align-items: center;
}

#menu-header .devenir-membre:hover,
#menu-header-1 .devenir-membre:hover {
	background-color: #2CCACF;
}

#menu-header .devenir-membre a,
#menu-header-1 .devenir-membre a {
	font-size: 15px;
	font-weight: 500;
	text-transform: none;
}

#menu-header .devenir-membre a:hover,
#menu-header-1 .devenir-membre a:hover {
	font-weight: 500;
	opacity: 1;
}


.mobile_menu_bar::before {
    color: #99563A !important;
    font-size: 52px;
    font-weight: 900;
}

.et_mobile_menu li a {
	text-decoration: none;
}



/* Footer */
.icon-footer {
	justify-content: flex-end;
}

@media (max-width: 980px) {
	.icon-footer {
		justify-content: center;
	}
}

.texte-footer h3 {
	font-size: 15px;
	color: #B7846F;
	font-weight: 800;
	padding: 0;
	text-transform: uppercase;
}

.texte-footer a {
	text-decoration: underline;
}

.section-legale a {
	color: white;
}



#scroll-to-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 9999;
    
    /* Design du cercle */
    width: 50px;
    height: 50px;
    background-color: #99563A;
    border: none;
    border-radius: 50%;
    cursor: pointer;
    box-shadow: 4px 4px 0px #824931;
    
    /* Centrage de la flèche */
    display: flex;
    justify-content: center;
    align-items: center;
    transition: all 0.3s ease;
}


/* Dessin de la flèche */
.arrow-up {
    width: 0;
    height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-bottom: 12px solid white;
    margin-bottom: 3px;
}

#scroll-to-top:hover {
    transform: translate(2px, 2px);
    box-shadow: 2px 2px 0px #824931;
}










/* ----------- Components boutons ----------- */
/* Base commune */
.et_pb_button, .et_pb_button:hover, .et_pb_module .et_pb_button:hover  {
	border: 0px;
}

.et_pb_button {
	padding-right: 2.7em !important;
	padding-left: 20px !important;
}

.et_pb_button:after {
	margin-left: 0px !important;
	margin-top: -2px;
    font-weight: 900;
    font-size: 1.9em !important;
	opacity: 1 !important;
}


.blue-button,
.brown-button,
.brown-button-2 {
	font-size: 16px;
	border-radius: 5px;
	padding: 10px 20px;
	color: white;
	cursor: pointer;
	transition: all 0.3s ease;
	text-decoration: none;
	display: inline-block;
}

.blue-button:hover,
.brown-button:hover,
.brown-button-2:hover {
	padding: 10px 20px !important;
	padding-right: 2.7em !important;
}

/* Bleu */
.blue-button {
	background-color: #2CCACF;
}

.blue-button:hover {
	background-color: #99563A !important;
	text-decoration: none !important;
}


/* Marron */
.brown-button {
	background-color: #B7846F;
}

.brown-button:hover {
	background-color: #2CCACF !important;
	text-decoration: none !important;
}

.brown-button-2 {
	background-color: #99563A;
}

.brown-button-2:hover {
	background-color: #2CCACF !important;
	text-decoration: none !important;
}






/* Style spécifique pour le bouton Télécharger avec l'icône PDF */
.brochure-button {
    padding-right: 70px !important; 
}

.brochure-button:after {
    content: "" !important; 
    top: 50%;
    transform: translateY(-50%);
    width: 60px; 
    height: 120%;
    background-image: url('https://liziweb-dev.fr/amam/wp-content/uploads/2026/01/icon-pdf.svg');
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

.brochure-button:hover {
	padding-right: 70px !important; 
}






/* ----------- Autres Components ----------- */

/* Alignements des icônes ou images */
.icon-align-wrapper {
    display: flex;
    gap: 30px;
    align-items: center;
}

.icon-align {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
}



/* Style des titres */
.titre-blanc {
	border: solid 4px #B7846F;
	background-color: white;
	padding: 10px 15px;
	width: fit-content;
}

.titre-blanc h1,
.titre-blanc h2 {
	color: #B7846F;
	padding-bottom: 0px;
	font-weight: 500;
}

.titre-blanc span {
	background-color: #B7846F;
	color: white;
	font-weight: 500;
	padding: 10px 15px;
    margin-left: 10px;
    margin-right: 10px;
}



.titre-marron {
	border: solid 4px white;
	background-color: #B7846F;
	padding: 10px 15px;
	width: fit-content;
}

.titre-marron h1,
.titre-marron h2,
.titre-marron p {
	color: white;
	padding-bottom: 0px;
	font-weight: 500;
}

.titre-marron p {
	font-size: 17px;
}

.titre-marron span {
	background-color: white;
	color: #B7846F;
	font-weight: 500;
	padding: 10px 15px;
    margin-left: 5px;
    margin-right: 5px;
}


/* Alignements de plusieurs boutons */
.btn-wrapper {
	display: flex;
	gap: 20px;
	flex-wrap: wrap;
}

.btn-wrapper .et_pb_button {
	margin: 0;
}

@media (max-width: 980px) {
	.btn-wrapper {
		flex-direction: column;
		align-items: center;
		gap: 0px;
	}
}




/* Style global pour la description dans le hero */
.description-hero {
	font-size: 19px;
	font-weight: 600;
}



/* ----------- Components Module Blog ----------- */
.actus-blog .et_pb_post {
	padding: 0;
	border: none;
}

.actus-blog .et_pb_image_container,
.actus-blog .et_pb_post .entry-featured-image-url {
	margin-bottom: 0px;
	max-width: 320px;
    display: contents !important;
}

.actus-blog .et_pb_image_container img {
	border: solid 4px #B7846F;
}


.actus-blog .entry-title {
	font-size: 18px;
	font-weight: 900;
	color: white;
	background-color: #B7846F;
	padding: 15px;
}

.actus-blog .post-content {
	border: solid 4px #B7846F;
	border-top: none;
	padding: 15px;
	margin-left: 30px;
}

.actus-blog p {
	font-size: 15px !important;
	color: black !important;
}

.actus-blog .more-link {
	color: #B7846F !important;
	font-size: 15px !important;
	font-weight: 600;
}

.actus-blog .et_pb_post:hover .more-link {
	color: #2CCACF !important;
}










/* --------- Page Accueil ------------ */



/* DESKTOP UNIQUEMENT */
@media (min-width: 981px) {
	
.column-hero-homepage {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}

  /* Colonne : empile + bloc 650 collé à droite */
  .row-3cols-home .col1-contenu-650-droite{
    display: flex;
    flex-direction: column;
    align-items: flex-end;
  }

  /* Tous les modules dans le bloc 650 */
  .row-3cols-home .col1-contenu-650-droite > .et_pb_module{
    max-width: 650px;
    width: 100%;
    box-sizing: border-box;
    text-align: left;
  }

  /* IMPORTANT : le module titre-blanc reste "large" (650 max) */
  .row-3cols-home .col1-contenu-650-droite .titre-blanc{
    width: 100% !important;
    max-width: 650px;
    align-self: flex-end; /* reste dans le bloc aligné à droite */
    border: 0;            /* on met le style badge sur l'inner */
    background: transparent;
    padding: 0;
  }

  /* Le "badge" se fait sur le contenu interne du module */
  .row-3cols-home .col1-contenu-650-droite .titre-blanc .et_pb_text_inner{
    display: inline-block;
    border: solid 4px #B7846F;
    background-color: #fff;
    padding: 10px 15px;
  }

  /* Sécurité alignement titre */
  .row-3cols-home .col1-contenu-650-droite .titre-blanc h1,
  .row-3cols-home .col1-contenu-650-droite .titre-blanc h2{
    text-align: left;
    margin: 0;
  }
}



/* second module pour gérer le 50-50 sans marges*/

/* Ligne spécifique : 2 colonnes à 50/50 sans espace entre elles */
.section-2-home-page {
  display: flex;
  gap: 0 !important;           /* supprime l'espace entre colonnes si Divi l'applique */
}

.section-2-home-page > .et_pb_column {
  width: 50% !important;
  margin-right: 0 !important;
  margin-left: 0 !important;   /* neutralise les marges calculées par la gouttière */
}
/* Aligne correctement le H1 du bloc titre */
.row-3cols-home .col1-contenu-650-droite .titre-blanc h1{
  text-align: left;
  margin-left: 0;
  margin-right: 0;
  max-width: 100%;
}

/* Optionnel : évite que ça casse sur tablette/mobile */
@media (max-width: 980px) {
  .section-2-home-page {
    display: block;            /* laisse Divi gérer l'empilement */
  }
  .section-2-home-page > .et_pb_column {
    width: 100% !important;
  }
}


/* ----------- Page L'Association ---------- */
.conseil-administration {
    line-height: 1.2;
}

.conseil-administration span {
	color: #99563A;
	font-weight: bold;
	text-transform: uppercase;
}



.align-row-partenaires {
	align-items: center;
	display: flex;
}


.devenir-membre-container {
    background-color: #99563A;
    padding: 40px 30px;
    box-shadow: 15px 15px 0px #AB7B68; 
    max-width: 500px;
    margin: 20px;
}

.devenir-membre-item {
    display: flex;
    gap: 10px;
    margin-bottom: 30px;
}

.devenir-membre-item:last-child {
    margin-bottom: 0;
}

.devenir-membre-icon {
    width: 25px;
    height: 25px;
    background-image: url('https://liziweb-dev.fr/amam/wp-content/uploads/2026/01/coche-amam.svg');
    background-repeat: no-repeat;
    background-size: contain;
	flex-shrink: 0;
    margin-top: 5px;
}

.devenir-membre-text {
    color: white;
	line-height: 1.4;
    padding-top: 2px;
}

@media (max-width: 980px) {
    .devenir-membre-container {
        box-shadow: 8px 8px 0px #AB7B68;
        padding: 25px 20px;
    }
}






/* Page Programme & Rencontres */
.intervenant-box {
    text-align: right;
    color: white;
}

@media (max-width: 980px) {
	.intervenant-box {
		text-align: left;
		margin-bottom: 30px;
	}
}

.intervenant-box h3 {
    font-weight: bold;
    font-size: 23px;
    margin-bottom: 10px;
    color: white !important;
}

.conference-images img {
	box-shadow: 10px 10px 0px 0px #A67865; 
}

.conference-list {
    color: white;
    text-align: left;
}

@media (max-width: 980px) {
	.conference-list {
		margin-top: 30px;
	}
}

.conference-item {
    margin-bottom: 10px;
}

.conference-item h4 {
    font-weight: bold;
    font-size: 17px;
	text-transform: uppercase;
    padding-bottom: 0px;
    color: white !important;
    line-height: 1.2;
}

.conference-item p {
    font-size: 13px;
    font-weight: 300;
}




.sortie-voyage-list {
    margin-top: 20px;
}

.sortie-voyage-list-item {
    border-bottom: 4px solid #B7846F;
    padding: 20px 0;
}

.sortie-voyage-list-item:last-child {
    border-bottom: none;
}

.sortie-voyage-list-item h3 {
    color: #99563A;
    font-weight: 900;
    font-size: 19px;
    margin-bottom: 5px;
}

.sortie-voyage-list-item h3 span {
    font-weight: 300;
    font-size: 13px;
	color: black;
}


.alert-banner {
    background-color: #2CCACF;
    display: flex;
    align-items: center;
    padding: 20px 40px;
    box-shadow: 12px 12px 0px #F2F2F2;
    margin: auto;
	max-width: 550px;
}

.alert-icon {
    background-color: white;
    color: #2CCACF;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: bold;
    font-size: 24px;
    margin-right: 20px;
    flex-shrink: 0;
}

.alert-text {
    color: white;
    line-height: 1.4;
}





/* Page Le Mécénat */
.mecenat-slider-wrapper {
    position: relative;
    margin: 40px auto;
    padding: 0 50px;
}

.mecenat-slider-container {
    overflow: hidden;
}

.mecenat-slides {
    display: flex;
    gap: 48px;
    transition: transform 0.4s ease;
    justify-content: flex-start;
	align-items: center;
}

.mecenat-slide {
    flex: 0 0 calc((100% - (3 * 50px)) / 4); 
    min-width: calc((100% - (3 * 50px)) / 4);
    cursor: pointer;
    transition: all 0.3s ease;
}

.mecenat-slide img {
    width: 100%;
    height: auto;
    box-shadow: 10px 10px 0px 0px #E9DCDB; 
}

.mecenat-slide.active img {
    box-shadow: 10px 10px 0px 0px #29C5C5;
}


.legend-box {
    background-color: #29C5C5;
    color: white;
    padding: 30px;
    margin-top: 40px;
    position: absolute;
    font-size: 13px;
    line-height: 1.5;
    max-width: 400px;
    transition: transform 0.4s ease, opacity 0.3s ease, top 0.4s ease;
    left: 0;
    opacity: 0;
    pointer-events: none;
    box-sizing: border-box;
	z-index: 2;
}

.legend-box.visible {
    opacity: 1;
    pointer-events: auto;
}

.legend-box h4 {
    color: white !important;
    font-weight: bold;
	font-size: 15px;
    margin-bottom: 10px;
}


.legend-arrow {
    position: absolute;
    top: -15px;
    left: 50%;
    transform: translateX(-50%);
    width: 0; 
    height: 0; 
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
    border-bottom: 15px solid #29C5C5;
}


.slider-nav {
    position: absolute;
    top: 35%;
    font-size: 30px;
    color: #B7846F;
    cursor: pointer;
    user-select: none;
	border: 4px solid;
	padding: 5px 12px;
}
.slider-nav.prev { left: -50px; }
.slider-nav.next { right: -50px; }


@media (max-width: 980px) {
    .mecenat-slide {
        flex: 0 0 calc((100% - (1 * 50px)) / 2);
        min-width: calc((100% - (1 * 50px)) / 2);
    }
    .slider-nav {
        top: 30%;
    }
}

@media (max-width: 767px) {
    .mecenat-slider-wrapper {
        padding: 0 40px;
    }
    .mecenat-slides {
        gap: 20px;
    }
    .mecenat-slide {
        flex: 0 0 100%;
        min-width: 100%;
    }
    .slider-nav {
        font-size: 24px;
        padding: 5px 10px;
        top: 25%;
    }
    .slider-nav.prev { left: -35px; }
    .slider-nav.next { right: -35px; }
    
	.legend-box {
        padding: 20px;
        font-size: 12px;
        margin-top: 25px;
		left: 40px;
    }
    .legend-box h4 {
        font-size: 14px;
    }
}




.timeline {
	z-index: 1;
}

.timeline-row {
    display: flex;
    align-items: flex-start;
}

.timeline-year {
    flex: 0 0 100px; /* Largeur fixe pour les années */
    text-align: right;
    padding-right: 25px;
    color: #99563A;
    font-weight: 900;
    font-size: 18px;
    line-height: 1.2;
}

.timeline-content {
    line-height: 1.5;
}

@media (max-width: 767px) {
    .timeline-row {
        flex-direction: column;
        margin-bottom: 30px;
    }
    .timeline-year {
        text-align: left;
        flex: none;
        margin-bottom: 5px;
        padding-right: 0;
    }
}



/* Page La Gazette */
.gazette-card {
    display: flex;
    flex-direction: column;
}

.gazette-image img {
    width: 100%;
    height: auto;
    display: block;
}

.gazette-content h3 {
    color: #99563A;
	text-transform: none;
    font-size: 22px;
    font-weight: 900;
    margin-top: 15px;
    margin-bottom: 5px;
}

/* Style des liens */
.gazette-links a {
    color: #99563A;
    text-decoration: underline;
}

.gazette-links a:hover {
    text-decoration: none;
}

.gazette-links .separator {
    color: #99563A;
    text-decoration: none;
}








/* Page d'une actu */
.titre-actu h1 {
	font-size: 35px;
	text-transform: none;
}

.actu-image-principale img {
	box-shadow: 10px 10px 0px 0px #E9DCDB;
}

.actu-images img {
	box-shadow: 8px 8px 0px 0px #FFFFFF;
}


/* fond marron page rencontres*/
.fond-marron {background-color:b7846f!important}