/* Theme Name: starter_aeb
   Theme URI: http://www.starter_aeb.fr/
   Description: starter_aeb
   Version: 1.2.1
   Author: A l'Encre bleue
   Author URI: https://alencrebleue.com
*/
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 400;
  src: local("Montserrat Regular"), local("Montserrat-Regular"), url("/wp-content/themes/starter_aeb/assets/fonts/Montserrat-Regular.woff2") format("woff2");
  font-display: swap;
}
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 600;
  src: local("Montserrat SemiBold"), local("Montserrat-SemiBold"), url("/wp-content/themes/starter_aeb/assets/fonts/Montserrat-SemiBold.woff2") format("woff2");
  font-display: swap;
}
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 700;
  src: local("Montserrat Bold"), local("Montserrat-Bold"), url("/wp-content/themes/starter_aeb/assets/fonts/Montserrat-Bold.woff2") format("woff2");
  font-display: swap;
}
:root {
    /* Couleurs de base */
    --color-primary: #283B1D;
    --color-secondary: #E8D0AE;

    /* Variantes primaires */
    --color-primary-light: #3D5A2C;
    --color-primary-lighter: #547841;
    --color-primary-dark: #1A2612;
    --color-primary-darker: #0F1409;

    /* Variantes secondaires */
    --color-secondary-light: #F0DFC5;
    --color-secondary-lighter: #F6EAD9;
    --color-secondary-dark: #D4B896;
    --color-secondary-darker: #B89B73;

    /* Couleurs neutres */
    --color-white: #FFFFFF;
    --color-gray-50: #FAFAFA;
    --color-gray-100: #F5F5F5;
    --color-gray-200: #E5E5E5;
    --color-gray-300: #D4D4D4;
    --color-gray-400: #A3A3A3;
    --color-gray-500: #737373;
    --color-gray-600: #525252;
    --color-gray-700: #404040;
    --color-gray-800: #262626;
    --color-gray-900: #171717;
    --color-black: #000000;

    /* Couleurs d'état */
    --color-success: #22543D;
    --color-success-light: #38A169;
    --color-warning: #744210;
    --color-warning-light: #DD6B20;
    --color-error: #742A2A;
    --color-error-light: #E53E3E;
    --color-info: #2C5282;
    --color-info-light: #3182CE;

    /* Couleurs de focus (accessibilité) */
    --color-focus: #005FCC;
    --color-focus-outline: rgba(0, 95, 204, 0.4);        

    /* Border-radius */
    --radius-12: 12px;
    --radius-16: 16px;
    --radius-20: 20px;
    /* Fonts */
    --font-family: 'Montserrat', sans-serif;
    /* TYPOGRAPHIE */
    --p-font-size: 16px;
    --li-font-size: 16px;
    /* Desktop */
    --h1-desktop-font-size: 40px;
    --h2-desktop-font-size: 30px;
    --h3-desktop-font-size: 22px;
    --h4-desktop-font-size: 16px;
    /* Tablet */
    --h1-tablet-font-size: 36px;
    --h2-tablet-font-size: 32px;
    --h3-tablet-font-size: 20px;
    --h4-tablet-font-size: 16px;
    /* Mobile */
    --h1-mobile-font-size: 30px;
    --h2-mobile-font-size: 24px;
    --h3-mobile-font-size: 20px;
    --h4-mobile-font-size: 16px;
    /* Arrow et puce */
    --puce-menu: url('/wp-content/themes/starter_aeb/images/puce-menu.svg');
    --fleche-marine: url('/wp-content/themes/starter_aeb/images/fleche-marine.svg');
    --fleche-grise: url('/wp-content/themes/starter_aeb/images/fleche-grise.svg');
    /* Picto coordonnées */
    --email: url('/wp-content/themes/starter_aeb/images/mail.svg');
    --telephone: url('/wp-content/themes/starter_aeb/images/telephone.svg');
    --localisation: url('/wp-content/themes/starter_aeb/images/map.svg');
    --social: url('/wp-content/themes/starter_aeb/images/social.svg');
	
}

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: var(--font-family), sans-serif;
  font-style: normal;
  color: var(--color-primary);
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}
html{
    overflow-x: hidden;	
}
body {
	background: var(--color-white);
	font-smooth: always;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;	
}
main {
    padding-top: 95px;
}

/* Skip link pour l'accessibilité */
.skip-link {
    position: absolute;
    top: -40px;
    left: 0;
    background: var(--color-primary);
    color: var(--color-white);
    padding: 8px 16px;
    text-decoration: none;
    border-radius: 0 0 8px 0;
    z-index: 1000;
    font-weight: 600;
}

.skip-link:focus {
    top: 0;
}

/* Button */
input.gform_button, form input {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
}
form textarea {
  border: none;
}
form .ginput_container_consent input {
  -webkit-appearance: auto;
  -moz-appearance: auto;
  appearance: auto;
  border-radius: initial;
}
/* Grid */
* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.container {
  margin: 0 auto;
  padding-left: 0;
  padding-right: 0;
}
.row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.row > * {
  float: left;
  width: 100%;
  padding-left: .9375em;
  padding-right: .9375em;
}
.row::after {
  content: "";
  display: block;
  clear: both;
}
@media screen and (min-width: 1200px) {
.container {
	max-width: 1170px;
}
}
@media screen and (min-width: 1100px) and (max-width: 1199px) {
.container {
	max-width: 1060px;
}
}
@media screen and (max-width: 1099px) {
.container {
	width: 90%;
}
}
@media screen and (max-width:800px) {
.row > * {
	padding-left: 0;
	padding-right: 0;
}
}
/* Main */
a { 
	color: var(--color-primary);
	text-decoration: none;
	cursor: pointer;
}
a:hover {
	color: var(--color-primary-light);
}

/* Focus amélioré pour l'accessibilité */
/*a:focus,
button:focus,
input:focus,
select:focus,
textarea:focus,
.btn:focus {
    outline: 3px solid var(--color-focus);
    outline-offset: 2px;
}*/

img {
	height: auto;
	max-width: 100%;
}
.btn {
	color: var(--color-secondary);
    padding:10px 22px;
    font-weight: 700;
    font-size: 18px;
	line-height: 20px;
    border-radius: 8px;
    display: block;
    position: relative;
    width: 100%;	
    max-width: max-content;
    transition: background-color 0.5s cubic-bezier(0.25, 0.1, 0.25, 1), color 0.5s cubic-bezier(0.25, 0.1, 0.25, 1);
    border: 2px solid;
    cursor: pointer;
}
.btn-primary{
	border-color: var(--color-secondary);
	background: var(--color-secondary);
	color: var(--color-primary);
	
}
.btn-primary:hover{
	border-color: var(--color-secondary-light);
	background: var(--color-secondary-light);
	color: var(--color-primary);
}
.btn-secondary{
	background: var(--color-primary);
	border-color: var(--color-primary);
	color: var(--color-white);
}
.btn-secondary:hover{
	background: var(--color-primary-light);
	border-color: var(--color-primary-light);
	color: var(--color-white);
}
@media only screen and (min-width: 801px) {
.bloc-1 {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 100%;
	flex: 0 0 100%;
	max-width: 100%;
}
.bloc-2 {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 50%;
	flex: 0 0 50%;
	max-width: 50%;
}
.bloc-3 {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 33.3%;
	flex: 0 0 33.3%;
	max-width: 33.3%;
}
.bloc-4 {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 25%;
	flex: 0 0 25%;
	max-width: 25%;
}
.bloc-5 {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 20%;
	flex: 0 0 20%;
	max-width: 20%;
}
.bloc-2-3 {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 66.66%;
	flex: 0 0 66.66%;
	max-width: 66.66%;
}
.bloc-3-4 {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 75%;
	flex: 0 0 75%;
	max-width: 75%;
}
.bloc-2-5 {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 40%;
	flex: 0 0 40%;
	max-width: 40%;
}
.bloc-3-5 {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 60%;
	flex: 0 0 60%;
	max-width: 60%;
}
.bloc-4-5 {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 80%;
	flex: 0 0 80%;
	max-width: 80%;
}
}
hr {
  border: none;
}
@media only screen and (min-width: 1024px) {
hr.small {
	margin: 0.5em 0;
}
hr.medium {
	margin: 1em 0;
}
hr.large {
	margin: 2em 0;
}
}
@media only screen and (min-width: 481px) and (max-width: 1023px) {
hr.small {
	margin: 0.25em 0;
}
hr.medium {
	margin: .75em 0;
}
hr.large {
	margin: 1em 0;
}
}
@media only screen and (max-width: 480px) {
hr.small {
	margin: 0.125em 0;
}
hr.medium {
	margin: .5em 0;
}
hr.large {
	margin: .75em 0;
}
}
/* Misc */
::selection {
  background: var(--color-primary);
  color: var(--color-white);
  text-shadow: none;
}
::-webkit-selection {
  background: var(--color-primary);
  color: var(--color-white);
  text-shadow: none;
}
::-moz-selection {
  background: var(--color-primary);
  color: var(--color-white);
  text-shadow: none;
}
/* Typography */
h1 {
  font-weight: 700;
  line-height: 1.2;
  color: var(--color-primary);	
}
h2 {
  font-weight: 600;
  line-height: 1.2;
  color: var(--color-primary);
}
h3 {
  font-weight: 600;
  line-height: 1.2;
  color: var(--color-primary);
}
h4 {
  font-weight: 700;
  line-height: 1.2;
  color: var(--color-primary);
}
p {
  font-weight: 400;
  line-height: 1.6; /* Amélioré pour la lisibilité */
  margin: .5em 0;
  font-size: var(--p-font-size);
}
small, small strong{
	font-size:14px;
	font-style: italic;
}
ul {
  list-style-type: disc;
  margin-left: 2em;
  margin-top: 1em;
  margin-bottom: 1em;
}
li {
  font-size: var(--li-font-size);
  line-height: 1.6; /* Amélioré pour la lisibilité */
}
@media screen and (min-width: 1200px) {
section {
  padding: 70px 0;
}
/*
.home h1 {
  font-size: var(--h2-desktop-font-size);
}
*/
h1 {
  font-size: var(--h1-desktop-font-size);
}
h2 {
  font-size: var(--h2-desktop-font-size);
}
h3, h2.h3 {
  font-size: var(--h3-desktop-font-size);
}
h4 {
  font-size: var(--h4-desktop-font-size);
}
}
@media screen and (min-width: 1024px) and (max-width: 1199px) {
section {
  padding: 4em 0;
}
h1 {
  font-size: var(--h1-tablet-font-size);
}
h2 {
  font-size: var(--h2-tablet-font-size);
}
h3, h2.h3 {
  font-size: var(--h3-tablet-font-size);
}
h4 {
  font-size: var(--h4-tablet-font-size);
}
}
@media screen and (min-width: 481px) and (max-width: 1023px) {
section {
  padding: 3em 0;
}
h1 {
  font-size: var(--h1-tablet-font-size);
}
h2 {
  font-size: var(--h2-tablet-font-size);
}
h3, h2.h3 {
  font-size: var(--h3-tablet-font-size);
}
h4 {
  font-size: var(--h4-tablet-font-size);
}
}
@media screen and (max-width: 480px) {
section {
  padding: 2em 0;
}
h1 {
  font-size: var(--h1-mobile-font-size);
}
h2 {
  font-size: var(--h2-mobile-font-size);
}
h3, h2.h3 {
  font-size: var(--h3-mobile-font-size);
}
h4 {
  font-size: var(--h4-mobile-font-size);
}
/* Zone de clic augmentée sur mobile */
.btn {
    min-height: 44px;
}
}
/* ============================
========= HEADER ==============
=============================*/
header {
	position: fixed;
	transition: transform 0.8s ease-in-out;
	z-index: 99;
	width: 100%;
    background: 
        repeating-linear-gradient(
            90deg,
            transparent,
            transparent 40px,
            rgba(232, 208, 174, 0.08) 40px,
            rgba(232, 208, 174, 0.08) 68px
        ),
        var(--color-white);	
}
body, section.hero {
    background: 
        repeating-linear-gradient(
            90deg,
            transparent,
            transparent 40px,
            rgba(232, 208, 174, 0.08) 40px,
            rgba(232, 208, 174, 0.08) 68px
        ),
        var(--color-white);
}
.navbar-hidden {
  transform: translateY(-100%);
}
#menu-aeb.smallogo {
	box-shadow: 0 0px 5px #8d8d8d69;
    background: var(--color-white);	
}
#menu-aeb .contain {
  height: 100%;
  max-width: 1140px;
  margin: auto;
  display: flex;
  position: relative;
  justify-content: space-around;
  align-items: center;
  flex-direction: row;
  padding: 15px 0;
}
header .wrap {
    display: flex;
    justify-content: flex-end;
}
header .wrap-nav a,
.itemnolink {
  font-size:20px;
  font-style: normal;
  font-weight: 400;
  -webkit-transition: all 0.25s ease-in-out;
  -moz-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
  color: var(--color-primary);
	cursor:pointer;
}
header .wrap-nav .current-page a{
	position: relative;
	font-weight: 700;
}
header .wrap-nav a:hover {
    color: var(--color-primary-light);
}
.menu {
  width: 90%;
}
.logo-header {
  width: max-content;
}
/* footer */
footer {
    padding-top: 40px;
    background: repeating-linear-gradient(90deg, var(--color-primary), var(--color-primary) 40px, #49583F 40px, #49583F 68px);
    background: var(--color-primary);
}
footer *{
  color: var(--color-secondary);
}
footer a:hover{
  color: var(--color-secondary-light);
}
footer .bloc-3 {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}
footer .coordonnees p {
    margin:0;
}
footer .bloc-3 .rejoindreh4 {
    margin:0 0 10px;
	font-weight: 700;
    line-height: 1.2;	
}
footer img{
    width: max-content;
}
footer .coordonnees{
    display: flex;
    flex-direction: column;
}
footer .telephon a,
footer .emai a,
footer .footer-service a {
	color: var(--color-white);
}
footer .telephon a:hover,
footer .emai a:hover,
footer .footer-service a:hover {
	color: var(--color-secondary-light);
}
footer p {
	color: var(--color-white);
}
footer .btn-primary{
    margin-top: 15px;
}
footer .coordonnees p {
    margin:10px 0;
}
footer p.adress,
footer .coordonnees p.emai,
footer .coordonnees p.telephon {
    position:relative;
	padding-left:2em;
	font-weight:600;
	line-height:24px;
}
footer p.adress {
	font-weight:400;
}
footer p.adress {
    margin-top: 1em;
}
footer p.adress:before {
    position: absolute;
    top: 0;
    left: 0;
    transform: translate(0, 0);
}
footer .coordonnees p.emai:before, footer .coordonnees p.telephon:before {
    position: absolute;
    top: 60%;
    left: 0;
    transform: translate(0%, -50%);
}
footer p.adress:before {
    content: var(--localisation);
}
footer .coordonnees p.emai:before {
    content: var(--email);
}
footer .coordonnees p.telephon:before {
    content: var(--telephone);
}
.footer-service a{
	font-weight:600;
}
.footer-section p{
	margin: 0;
}
.footer-section p:last-of-type{
	margin: 0 0 1em;
}
/* mention legal, politique de conf */
.mbp {
    text-align: center;
    padding: .5em 0;
    border-top:1px solid #ffffff47;
    margin-top: 1em;
}
.mbp p,
.mbp a {
  color: var(--color-secondary);
  font-size: 14px;
}
.mbp a:hover {
	color: var(--color-secondary-light);
}

/* FOOTER RESPONSIVE */
@media screen and (min-width: 801px) and (max-width: 1199px) {
}
@media screen and (min-width: 801px) {
}
@media screen and (max-width: 800px) {
}
@media screen and (min-width: 481px) and (max-width: 800px) {
}
@media screen and (max-width: 480px) {
.mbp p,
.mbp a {
    font-size: 12px;
    padding-bottom: 5px;
}
}

/* HEADER RESPONSIVE */
@media screen and (min-width: 1200px) {
.hamb {
  display: none;
}
header .wrap-nav {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    gap: 28px;
    padding-right: 28px;
}
header ul{
    list-style-type: none;
    margin: 0;
}
}
@media screen and (max-width: 1199px) {
#menu-aeb .contain {
  justify-content: space-between;
}
#menu-aeb.smallogo .contain {
  padding:10px 0;
}	
.hamb {
  display: block;
  cursor: pointer;
  overflow: hidden;
}
.menu {
  position: fixed;
  background: var(--pattern-left);
  height: 100%;
  width: 100%;
  z-index: 100;
  left: -100%;
  transform: scale(0.5);
  opacity: 0;
  transition: transform 0.4s ease-out, opacity 0.4s ease-out;
}
.menu.active {
	right: 0%;
	left: inherit;
	margin-top: 80px;
	width: 100%;
	background: var(--color-primary);	
	top: 0%;
	overflow: scroll;
	padding-top: 2em;
	transform: scale(1);
	opacity: 1;
	transition: transform 0.4s ease-out, opacity 0.4s ease-out;
}
.menu .wrap .mara {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 2;
  display: flex;
  flex-wrap: nowrap;
  flex-direction: column;
}
#top.fixe {
  overflow: hidden;
  position: initial;
}
.menu.active .wrap-nav a {
  color: var(--color-secondary);
  text-align: center;
}
.menu.active .wrap-nav a:hover {
  color: var(--color-secondary-light);
}
header .wrap-nav {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-content: center;
	margin: 3% auto;
    max-width: 260px;
    width: 95%;
}
.menu .wrap {
    display: flex;
    flex-direction: column;
}
.menu-rs {
    margin: 1em auto;
	list-style-type: none;
}
.menu-mob.active .btn{
	margin: auto;
}
header .wrap-nav > li {
    text-align: center;
    padding: 15px 0;	
	border-bottom: 1px solid rgba(255, 255, 255, 0.50);
    width: 100%;	
}
.logo-header a {
  display: flex;
}
.logo-header img {
  height: 60px;
}
#menu-aeb {
  height: 80px;
}
.content_aeb {
  padding-top: 80px;
}
/* menu hamburger */
.allelement {
  width: 40px;
  height: 40px;
  position: relative;
}
.element {
  width: 40px;
  height: 4px;
  background-color: var(--color-primary);
  border-radius: 20px;
  position: absolute;
  transition-property: transform, opacity;
  transition-timing-function: ease;
  transition-duration: 0.5s;
  top: 50%;
  transform: translate(0, -50%);
  opacity: 1;
}
.element::before,
.element::after {
  width: 40px;
  height: 4px;
  background-color: var(--color-primary);
  border-radius: 20px;
  position: absolute;
  transition-property: transform, opacity;
  transition-timing-function: ease;
  transition-duration: 0.5s;
  content: "";
  opacity: 1;
  right: 0;
}
.element::before {
  top: -14px;
}
.element::after {
  top: 14px;
}
.element1 {
  width: 40px;
  height: 4px;
  opacity: 0;
  background-color: var(--color-primary);
  border-radius: 20px;
  position: absolute;
  transition-property: transform, opacity;
  transition-timing-function: ease;
  transition-duration: 0.5s;
  top: 50%;
  transform: translate(51px, -50%);
}
.element1::before,
.element1::after {
  width: 40px;
  height: 4px;
  background-color: var(--color-primary);
  border-radius: 20px;
  position: absolute;
  transition-property: transform, opacity;
  transition-timing-function: ease;
  transition-duration: 0.5s;
  content: "";
  transform: translate(102px, 0);
}
.element1::before {
  top: -14px;
}
.element1::after {
  top: 14px;
}
.hamb:hover .element {
  transform: translate(-51px, 50%);
  opacity: 0;
}
.hamb:hover .element::before,
.hamb:hover .element::after {
  transform: translate(102px, 0);
  opacity: 0;
}
.hamb:hover .element1 {
	opacity: 1;
	transform: translate(0, 2px);
}
.hamb:hover .element1::before,
.hamb:hover .element1::after {
  opacity: 1;
  transform: translate(0%, 0);
}
.hamb.is-active .element {
  display: none;
}
.hamb.is-active .element1 {
  opacity: 1;
  transform: rotate(45deg);
}
.hamb.is-active .element1::before {
  transform: translate(0, 14px) rotate(90deg);
  transform-origin: center;
}
.hamb.is-active .element1::after {
  opacity: 0;
}
}
@media screen and (min-width: 1100px) and (max-width: 1199px) {
#menu-aeb .contain {
	max-width: 1030px;
}
}
@media screen and (min-width: 800px) and (max-width: 1099px) {
#menu-aeb .contain {
	width: calc(90% - 30px);
}
}

@media screen and (max-width: 800px) {
#menu-aeb .contain {
	width: 90%;
}
}


#blog{
	position:relative;
	
}

#blog h2{
	text-align:center;
	margin-bottom: 30px;
}
#actualites #blog .bloc-3 {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 1em 0;
}
#blog .bloc-3{
    position: relative;
    z-index: 1;
}
#blog .bloc-article{
	background: var(--color-white);
    border-radius:var(--radius-16);	
	height:100%;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}
#blog .bloc-article a{
    display: flex;
    flex-direction: column;	
}
.bloc-article .image-container img {
    border-radius: 16px 16px 0 0;
    width: 100%;
    max-height: 250px;
    object-fit: cover;
}
#blog .article{
	padding:20px;
}
#blog .article h3 {
    letter-spacing: -1px;
    margin: .5em 0;
}
#blog .article a:hover h3 {
    color: var(--color-primary-light);
}
#blog .article .last-date {
    margin:  0;
}
#blog .btn{ 
	color: var(--color-primary);
	border:none;
	margin: 2em auto 0;
}
.image-container {
    position: relative;
    /*display: flex;*/
}
.image-container a.last-cat{
	padding:10px 20px;
	position:absolute;
	bottom:0;
	right:0;
	color: var(--color-secondary);
	background: var(--color-primary);
	font-weight:600;
}
.bloc-titre h2{
	text-align: center;
}
@media screen and (max-width: 1100px) {
#blog .bloc-article a.last-cat {
    font-size: 14px;
    padding: 7px 15px;
}
}
@media screen and (max-width: 1023px) {
#blog.section-formation:after {
    zoom:0.5;
}
#blog.sectionactu .item-3, #blog.section-formation .item-3 , #blog.sectionservices .item-3 {
    display: none;
}	
}
@media screen and (min-width: 481px) and (max-width: 1023px) {
#blog .bloc-3 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
}
}
@media screen and (min-width: 481px) and (max-width: 800px) {
#blog:not(.display-services) .item-1 {
	padding-right:7px;
}
#blog:not(.display-services) .item-2 {
	padding-left:7px;
}
#blog.sectionservices .item-1 {
	padding-right:7px;
}
#blog.sectionservices .item-2 {
	padding-left:7px;
}
}
@media screen and (min-width: 481px) and (max-width:599px) {
#blog .article h3 {
    font-size: 16px;
}
}
@media screen and (max-width: 599px) {
#blog .article {
    padding: 15px;
}
}
@media screen and (max-width: 480px) {
#blog h2 {
    margin-bottom: 15px;
}
#blog:not(.display-services) .item-1 {
	margin-bottom: 1.5em;
}
#blog.sectionservices .item-1 {
	margin-bottom: 1.5em;
}
#blog .btn {
    margin: 1em auto 0;
}
}


/* Réseaux sociaux */
.menu-rs {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: center;
	list-style-type: none;
}
.menu-rs li {
	margin-left: 10px;
	transition: transform 0.3s ease;	
}
.menu-rs li:hover {
  transform: translateY(-2px);
}
.menu-rs a{
    display: flex;
}

/*.menu-rs li:first-of-type {
  margin: 0;
}*/
footer .menu-rs {
    margin: .5em 0;
}
.sprites,
.sprites:hover {
  width: 45px;
  height: 44px;
  display: inline-block;
  transition: transform 0.4s ease-out, opacity 0.4s ease-out;
	
}
header .sprites {
  background: url(/wp-content/themes/starter_aeb/images/RS-beige-light.svg) no-repeat center center;
}
header .sprites:hover {
  background: url(/wp-content/themes/starter_aeb/images/RS-beige.svg) no-repeat center center;
}
footer .sprites {
  background: url(/wp-content/themes/starter_aeb/images/RS-white.svg) no-repeat center center;
}
footer .sprites:hover {
  background: url(/wp-content/themes/starter_aeb/images/RS-beige-light.svg) no-repeat center center;
}
/*.sprites:hover {
  background: url(/wp-content/themes/starter_aeb/images/sprite-hover.svg) no-repeat center center;
}*/
header .sprites.rs-instagram,
header .sprites.rs-instagram:hover,
footer .sprites.rs-instagram,
footer .sprites.rs-instagram:hover {
  background-position: -55px 0;
}

header .sprites.rs-facebook,
header .sprites.rs-facebook:hover,
footer .sprites.rs-facebook,
footer .sprites.rs-facebook:hover {
  background-position: 0 0;
}
/* Personnalisation du theme */
/*section.hero {
    background: var(--color-white);
}*/
section.hero .bloc-2{
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 30px;
}
section.hero .bloc-2 img{
    width: max-content;
	max-width: 100%;
	border-radius: 12px;
}
section.hero .bloc-2 .btn{
    margin-top: 10px;
}

section.intro{
    background: var(--color-secondary-lighter);
    padding: 60px 0;
}
section.intro *{
	text-align: center;	
    margin: 0 auto;	
}
section.intro .intro-presentation{
    display: flex;
    flex-direction: column;
    gap: 16px;	
}
section.intro .intro-presentation a{
    font-weight: 600;
    text-decoration: underline;
}
section.ia-simulation {
    padding-top:50px;
}
section.ia-simulation .row{
    background: var(--color-primary);
    padding: 36px 20px;
    border-radius: 12px;
}
section.ia-simulation .row *{
    color: var(--color-white);
}
section.ia-simulation .row h2, section.ia-simulation .row h3{
    color: var(--color-secondary);
}
section.ia-simulation .bloc-2 {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
section.ia-simulation img {
	border-radius:12px;
}
section.ia-simulation ul {
    list-style-type: none;
}
section.ia-simulation li {
    position: relative;
}
section.ia-simulation li::before {
    content: '→';
    position: absolute;
    left: -1em; 
	top:-4px;
    color: var(--color-white);
    font-weight: bold;
	font-size: 20px;
}
section#bandeau-contact {
    padding:50px 0;
    background: var(--color-secondary-lighter);
}
section#bandeau-contact .cta-text p{
	margin:0;
}
section#bandeau-contact h2, section#bandeau-contact .cta-text strong{
/*
    color: var(--color-primary);
*/
}
section#bandeau-contact .bloc-content {
    display: flex;
    align-items: center;
    gap: 4px;
}
section#bandeau-contact .bloc-content .cta-text {
    display: flex;
    gap: 16px;
    flex-direction: column;
}
section#bandeau-contact .grp-btn{
    width: max-content;
    min-width: 240px;
}
section#bandeau-contact .styleinline{
    display: flex;
    gap: 16px;
    flex-direction: row;
}
section.about .bloc-2{
    display: flex;
    flex-direction: column;
    gap: 30px;
    justify-content: center;
}
section.about img{
    border-radius: 16px;
}
section.about ul {
    list-style-type: none;
    margin-top: 0;
    margin-bottom: 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
}
section.about li {
    position: relative;
}
section.about li::before {
    content: '→';
    position: absolute;
    left: -1em;
	top:-4px;
    color: var(--color-primary);
    font-weight: bold;
	font-size: 20px;
}


section.projects{
	padding-bottom:0;
}
section.projects .container{
    display: flex;
    flex-direction: column;
    gap: 30px;
}
section.projects h2, section.projects .bloc-1.text-center p, section.projects .bloc-1.text-center p strong{
    color: var(--color-primary);
	text-align: center;
}
section.projects p.intro-services{
    text-align: center;
    margin: 1em 0 0;
}
section.projects .bloc-1.text-center p{
    margin: 0 auto 1.5em;
	font-weight:600;
}
section.projects .bloc-1.text-center .btn-secondary {
    margin: auto;
}
section.projects .project-card {
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    background: var(--color-white);
	border-radius: 12px;
    height: 100%;
    display: flex;
    flex-direction: column;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
section.projects .goup-resta {
    padding: 36px 20px;
    border-radius: 12px;
    background: var(--color-secondary-lighter);	
}
section.projects .row.projects-grid {
    row-gap: 2em;
}
section.projects .project-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.15);
}
section.projects .project-card img{
	border-radius: 12px 12px 0 0;
	width:100%;
}
section.projects .project-card .project-details {
    padding: 15px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    flex-wrap: nowrap;
    justify-content: space-between;
    max-height: 325px;
    height: 100%;
}
section.projects .project-card .amount .price{
	font-size: 30px;
	font-weight:700;
	margin: 0;
}

section.partners {
    background: var(--color-secondary-lighter);
	padding:50px 0;
}
section.partners li.bloc-4 {
    list-style-type: none;
}
section.partners p {
    text-align: center;
	font-weight:700;
	margin-top: 10px;	
	margin-bottom: 0;
}
section.partners .intro-section{
    text-align: center;
	margin-bottom: 30px;
}
section.partners .bloc-donateur {
    background: var(--color-white);
	border-radius: 16px;
	padding: 20px;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}
section.partners img {
    margin: auto;
    display: block;
	border-radius: 12px;
}




@media screen and (min-width: 1024px) {
section.mission .contactdonateur{
    display: flex;
    align-items: center;
}
}
@media screen and (max-width: 1024px) {
section.hero .bloc-2-3 img.img-fluid {
    display: none;
}
}
@media screen and (max-width: 1023px) {
section.mission .contactdonateur .btn {
	margin-bottom:24px;
}
}
@media screen and (min-width: 600px) and (max-width: 1023px) {
section.reasons .bloc-4{
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
    justify-content: flex-start;
    margin: 0 0 1em;
    height: 100%;
    padding: 0 1em;
}
section.mission .bloc-2 {
    gap: 15px;
}
}
@media screen and (max-width: 800px) {
section.hero .bloc-3 {
    display: none;
}
section.hero {
    padding: 40px 0;
}
section.hero h1{
    text-align: center;
}
section.hero .bloc-2-3 .btn {
    margin-top: 10px;
    margin: auto;
}
section.about .bloc-2:nth-child(2) {
    gap: 15px;
}
section.about .bloc-2 .description p:first-of-type {
    margin-top:0;
}
section.about .bloc-2 .description p:last-of-type {
    margin-bottom:0;
}
section.about img, section.mission img {
    max-width: 432px;
    margin: auto;
	width: 100%;	
}	
section.projects .bloc-3{
    max-width: 432px;	
    margin: 0.75em auto;
}
section.projects .bloc-3:first-of-type{
    margin: 0 auto 0.75em;
}
section.projects .bloc-3:last-of-type{
    margin: 0.75em auto 0;
}
section.mission img{
    margin-top:20px;
}
section.mission .bloc-2 {
    align-items: center;
}	
section.mission .bloc-2 *{
	text-align: center;
}	
section.stats p {
    max-width: 230px;
}
section.partners .bloc-4{
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
    justify-content: flex-start;
    margin: 0 0 1em;
    height: 100%;
    padding: 0 1em;
}
footer .row .bloc-4 {
    text-align: center;
	margin:.5em auto;
} 
footer .row .bloc-4 * {
    display: flex;
    gap: 8px;
    justify-content: center;
}
footer .row .bloc-4 .btn {
    margin: auto;
}
footer img{
    margin-bottom: 1em;
}
}
@media screen and (min-width: 481px) and (max-width: 800px) {
section.about .bloc-2:nth-child(1) {
    order:2;
}
section.about .bloc-2:nth-child(2) {
    order:1;
}
section.about .bloc-2:nth-child(2) {
    margin-bottom: 30px;
}
section.mission .bloc-2 {
    gap: 15px;
}
section.stats .bloc-5 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
    justify-content: flex-start;
    margin: 0 0 1em;
    height: 100%;
    padding: 0 1em;
}
section.stats .bloc-5:last-of-type {
    display: none;
}
section.mission .contactdonateur{
    display: flex;
    align-items: center;
}
section.mission .contactdonateur .btn {
	margin-bottom:0;
}
}
@media screen and (min-width: 481px) and (max-width:599px) {

}
@media screen and (max-width: 599px) {
section.reasons .bloc-4 {
    margin: 0 0 2em;
    padding: 0 1em;
}
section.reasons .bloc-4:last-of-type {
    margin: 0;
}
}
@media screen and (max-width: 480px) {
section.about .bloc-2:nth-child(2) {
    margin-top: 20px;
}
section.stats .bloc-5 {
    gap: 5px;
    margin-bottom: 1.5em;
}
section.mission .bloc-2 {
    gap: 15px;
}
section.mission .bloc-2 p {
    margin:0;
}
section.mission .contactdonateur .btn {
    margin-bottom: 15px;
    margin-right: auto;
}
section.mission .contactdonateur .telephon {
    width: max-content;
    margin: auto;
}
section.partners h2 {
    margin-bottom: 10px;
}
section.partners .bloc-4 {
    padding: .5em 0;
    margin: 0;
}
section.partners .bloc-4:nth-child(odd) {
    padding-right: .5em;
}
section.partners .bloc-4:nth-child(even) {
    padding-left: .5em;
}
}

/* ==============================================
   AMÉLIORATIONS D'ACCESSIBILITÉ SUPPLÉMENTAIRES
   ============================================== */

/* Amélioration des formulaires */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="number"],
input[type="password"],
textarea,
select {
    border: 2px solid var(--color-gray-300);
    padding: 10px 15px;
    font-size: 16px;
    border-radius: 4px;
    transition: border-color 0.3s ease;
    background: var(--color-white);
    color: var(--color-primary);
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
input[type="number"]:focus,
input[type="password"]:focus,
textarea:focus,
select:focus {
    border-color: var(--color-focus);
}

label {
    display: block;
    margin-bottom: 5px;
    font-weight: 600;
    color: var(--color-primary-dark);
}

/* États désactivés */
.btn:disabled,
.btn[aria-disabled="true"] {
    opacity: 0.6;
    cursor: not-allowed;
}

/* Amélioration du contraste des petits textes */
small {
    color: var(--color-gray-600);
}

p {
    color: var(--color-gray-700);
}

li {
    color: var(--color-gray-700);
}

/* Styles d'impression */
@media print {
    * {
        background: white !important;
        color: black !important;
    }
    
    header,
    footer,
    .btn,
    .hamb {
        display: none !important;
    }
    
    a {
        text-decoration: underline !important;
    }
}



/* ========================================
   DÉFINITION DES ANIMATIONS
   ======================================== */
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}
@keyframes fadeInScale {
  from {
    opacity: 0;
    transform: scale(0.95);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes fadeInLeft {
  from {
    opacity: 0;
    transform: translateX(-50px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes fadeInRight {
  from {
    opacity: 0;
    transform: translateX(50px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

/* ========================================
   HERO - Rythme équilibré
   ======================================== */
.hero h1 {
  animation: fadeInUp 1s ease-out;
}
.hero h2 {
  opacity: 0;
  animation: fadeInUp 0.8s ease-out 0.2s forwards; 
}
.hero .btn-secondary {
  opacity: 0;
  animation: fadeInUp 0.8s ease-out .3s forwards; 
}
.hero img {
  opacity: 0;
  animation: fadeInLeft 1s ease-out 0.2s forwards; 
}

/* ========================================
   SECTION INTRO - Suit naturellement
   ======================================== */
/*
.intro-presentation {
  opacity: 0;
  animation: fadeInScale 0.8s ease-out 1.4s forwards;
}
*/
/* ========================================
   SECTION PROJECTS - Équilibré
   ======================================== */
/*.projects .bloc-1 h2 {
  opacity: 0;
  transform: translateY(20px);
}
.projects .bloc-1 p {
  opacity: 0;
  transform: translateY(20px);
}
.projects.animate .bloc-1 h2 {
  animation: fadeInUp 1s ease-out forwards;
}
.projects.animate .bloc-1 p {
  animation: fadeInUp 1s ease-out 0.4s forwards;
}*/

/* Cards avec cascade modérée 
.projects .project-card {
  opacity: 0;
  transform: translateY(20px);
}
.projects.animate .project-card {
  animation: fadeInUp 0.7s ease-out forwards;
}
.projects.animate .projects-grid .bloc-2:nth-child(1) .project-card {
  animation-delay: 0.6s;
}
.projects.animate .projects-grid .bloc-2:nth-child(2) .project-card {
  animation-delay: 0.9s;
}
.projects.animate .projects-grid .bloc-2:nth-child(3) .project-card {
  animation-delay: 1.2s;
}
.projects.animate .projects-grid .bloc-2:nth-child(4) .project-card {
  animation-delay: 1.5s;
}

/* ========================================
   SECTION IA
   ======================================== */
.ia-simulation {
  opacity: 0;
}
.ia-simulation.animate {
  animation: fadeInUp 1.2s ease-out forwards;
}

/* ========================================
   SECTION ABOUT
   ======================================== */
.about .bloc-2:first-child {
  opacity: 0;
}
.about .bloc-2:last-child {
  opacity: 0;
}
.about.animate .bloc-2:first-child {
  animation: fadeInLeft 1.2s ease-out forwards;
}
.about.animate .bloc-2:last-child {
  animation: fadeInRight 1.2s ease-out 0.4s forwards;
}

/* === SWITCH DE THÈME CLAIR/SOMBRE === */
.theme-switcher {
    position: fixed;
    top: 20px;
    right: 20px;
    z-index: 9999;
    background: var(--color-secondary-lighter);
    border: 2px solid var(--color-secondary-lighter);
    border-radius: 50px;
    padding: 5px;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}

.theme-switcher:hover {
    transform: scale(1.05);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
}

.theme-switcher-icon {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--color-secondary-lighter);
    color: var(--color-primary);
}

.theme-switcher-icon svg {
    width: 24px;
    height: 24px;
    transition: transform 0.3s ease;
}

.theme-switcher:hover .theme-switcher-icon svg {
    transform: rotate(180deg);
}

/* Mode sombre - styles de base */
body.dark-mode .theme-switcher {
    background: var(--color-primary-dark);
    border-color: var(--color-primary-dark);
}

body.dark-mode .theme-switcher:hover {
    background: var(--color-primary-dark);
}

body.dark-mode .theme-switcher-icon {
    background: var(--color-primary-dark);
    color: var(--color-secondary);
}