/* CSS Production - Version optimisée */

/* Variables et réglages globaux */
html{scroll-behavior:smooth}

/* Typographie et texte */
a{text-decoration-thickness:1px!important;text-underline-offset:.1em}
h1,h2,h3,h4,h5,h6,blockquote,caption,figcaption,p{text-wrap:pretty}
h2::before{font-family:"Font Awesome 6 Free";content:"\f06c";font-weight:900;color:#226D68;margin-right:.5em;font-size:2em;vertical-align:middle}
body.page-id-33 h2::before{content:'';margin:0}
cite{font-size:.6em!important}

/* Focus et accessibilité */
:where(.wp-site-blocks *:focus){outline-width:2px;outline-style:solid}

/* Navigation et menu */
.wp-block-navigation .wp-block-navigation-submenu .wp-block-navigation-item:not(:last-child){margin-bottom:3px}
.wp-block-navigation .wp-block-navigation-item .wp-block-navigation-item__content{outline-offset:4px}
.wp-block-navigation .wp-block-navigation-item ul.wp-block-navigation__submenu-container .wp-block-navigation-item__content{outline-offset:0}
.topbar{box-shadow:0 4px 12px rgba(0,0,0,.25)}
#rs-scx-topbar,.wp-block-site-logo{z-index:2}
.prestations-sous-menu a{font-size:12px!important}

/* Menu responsive - Mobile */
@media (max-width:850px){
body .wp-block-navigation__responsive-container-open:not(.always-shown){display:block!important;background:none;border:none;font-size:24px;position:relative}
body .wp-block-navigation__responsive-container-open svg{display:none!important}
body .wp-block-navigation__responsive-container-open::before{content:"\f0c9";font-family:"Font Awesome 6 Free";font-size:35px}
body .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open){display:none!important}
.topbar{background-color:transparent!important;box-shadow:none!important}
#rs-scx-topbar{display:none}
.in-menu.rs-scx{display:block}
.wp-block-navigation__responsive-container .wp-block-navigation-item__label{font-size:2rem;padding:1rem 2rem;font-weight:500;display:inline-block}
.wp-block-navigation__responsive-container-close{width:60px;height:60px;padding:8px}
.wp-block-navigation__responsive-container .wp-block-navigation-item.rdv-link.wp-block-navigation-link::after{content:''}
.wp-block-navigation__responsive-container-close svg{width:60px;height:60px}
.wp-block-navigation__responsive-container .wp-block-social-link svg{width:50px;height:50px;margin-right:20px;margin-top:20px}
#mes-formations{margin-bottom:75px!important}
}

/* Menu responsive - Desktop */
@media (min-width:850px){
.in-menu.rs-scx{display:none}
}

/* Formations responsive */
@media (min-width:365px) and (max-width:600px){
#mes-formations figure{max-width:50%}
}
@media (min-width:600px) and (max-width:1000px){
#mes-formations{display:grid;grid-template-columns:35% auto!important}
}

/* Boutons et éléments interactifs */
.wp-element-button i{margin-right:15px}
.wp-block-button__link{position:relative;overflow:hidden;z-index:0;transition:color .3s ease}
.wp-block-button__link::before{content:"";position:absolute;top:0;left:0;width:0%;height:100%;background-color:#D6955B;transition:width .4s ease;z-index:-1}
.wp-block-button__link:hover::before{width:100%}
.wp-block-button__link:hover{color:white!important;background-color:#226D68!important}
.btn-rdv .wp-block-button__link:hover{background-color:#D6955B!important}
.btn-rdv .wp-block-button__link::before{background-color:#226D68!important}
.rdv-link::after{font-family:"Font Awesome 6 Free";content:"\f274";font-weight:900;margin-left:.4em;position:relative;color:#226D68;top:-1px}
.more-link{display:block}

/* FAQ et contenus accordéon */
.faq-toggle{padding:10px 15px 10px 30px;cursor:pointer;position:relative}
.faq-toggle::before{content:"▶";position:absolute;left:10px;top:50%;transform:translateY(-50%);font-size:14px;transition:transform .3s ease}
.faq-toggle[aria-expanded="true"]::before{content:"▼"}
.schema-faq-section{margin:12px 0}
strong.schema-faq-question.faq-toggle:focus,strong.schema-faq-question.faq-toggle:focus-visible{outline:none!important;box-shadow:none!important;border:none!important;background:none!important}

/* Carrousel témoignages */
.carrousel-temoignages{display:flex;overflow-x:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;gap:2rem;padding-bottom:1rem;position:relative}
.carrousel-temoignages>.wp-block-group{flex:0 0 100%;scroll-snap-align:start;box-sizing:border-box;transition:transform .5s ease}
.carrousel-temoignages img{border-radius:9999px;object-fit:cover}
.carrousel-temoignages blockquote{font-style:italic;padding-right:1rem}
.carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:10;background:transparent;border:none;padding:.5rem;cursor:pointer;color:#18534F}
.carousel-arrow:focus{outline:2px solid #000}
.carousel-arrow i{font-size:2rem}
.carousel-prev{left:6rem}
.carousel-next{right:6rem}

/* Carrousel responsive */
@media (max-width:1200px){
.carousel-arrow{top:250px}
}
@media (max-width:781px){
.carrousel-temoignages figure{width:150px!important;margin:auto!important}
.carousel-prev{left:0rem!important}
.carousel-next{right:0rem!important}
.carrousel-temoignages>div{padding:0 12%}
}
@media (max-width:420px){
.carousel-arrow{padding:0rem}
.carousel-arrow i{font-size:1.2rem!important}
}

/* Éléments décoratifs et images */
.calque-sup{z-index:9!important}
.mirror-effect-x{transform:scaleX(-1)}
.padding-0 .wp-block-media-text__content{padding:0}
li.encadre{background-color:#D6955B!important;border-radius:5px;padding:10px 5px!important}
.oiseau-gauche img{position:relative;left:-150px}
.oiseau-formation img{transform:scaleX(-1)}
.quisuisje-photo img{border-radius:25px}
.quisuisje-photo .wp-block-media-text__content{padding-right:3em}
.oiseau-gauche.presta,.oiseau-gauche.quisuisje{position:relative;top:-85px;height:65px}

/* Sources responsive */
@media (max-width:374px){
.mes-sources figure{max-width:50%!important;margin:25px auto 0!important}
}
@media (min-width:375px) and (max-width:600px){
.mes-sources figure{max-width:35%!important;margin:25px auto 0!important}
}
@media (max-width:465px){
.en-ligne-en-presence{padding:0!important}
.en-ligne-en-presence div{padding:0!important}
}

/* Arrière-plans et sections */
.bg-assombrie{position:relative}
.bg-assombrie::before{content:'';position:absolute;top:0;left:0;overflow:hidden;width:100%;height:100%;min-height:100vh;background:linear-gradient(to top,rgba(0,0,0,.6) 0%,rgba(0,0,0,.5) 10%,rgba(0,0,0,.3) 15%,rgba(0,0,0,.1) 25%,rgba(0,0,0,0) 30%);z-index:1;pointer-events:none}
.bg-assombrie .wp-block-group,.bg-assombrie h1{z-index:3}
#banniere-rdv,#a-propos{background-size:175px!important}
#a-propos{background-position:0% 125%!important}
.footer-deco{background-size:175px!important}
body.page-id-23 #contact{margin-top:-70px!important}

/* Responsive - Tablettes */
@media (max-width:1630px){
.oiseau-gauche img{left:0}
}
@media (max-width:1600px){
.footer-deco{background-size:110px!important}
}
@media (max-width:1280px){
#banniere-rdv{background-size:110px!important;background-position:95% 100%!important}
}
@media (max-width:950px){
.calque-sup{padding:0}
#rs-scx-topbar{font-size:30px;gap:.2em}
.bg-assombrie,.bg-assombrie::before{min-height:900px!important}
}

/* Responsive - Mobile */
@media (max-width:781px){
.oiseau-gauche{margin-top:-120px!important}
.oiseau-gauche img{height:110px!important;transform:scaleX(-1);left:calc(100% - 110px);top:25px}
.footer-deco{background-size:150px!important;background-position:85% 100%!important}
}
@media (max-width:500px){
#banniere-rdv{background-image:none!important}
}
@media (max-width:470px){
.footer-deco{background-image:none!important}
}
@media (max-width:465px){
.oiseau-gauche{margin-top:0!important}
.oiseau-gauche img{display:none}
}
@media (max-width:415px){
#titre-hp{margin-top:100px}
}
@media (max-width:305px){
#titre-hp{margin-top:150px}
}
