/*
Theme Name: Musée des mômes 2026
Theme URI: 
Author: Maxime Lorentz
Author URI: 
Description: Premiere version du thème Musée des mômes
Requires at least: 6.8
Tested up to: 6.8
Requires PHP: 5.7
Version: 
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: musee-des-momes
Tags: 
*/

:root {
    --arrow-down: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='33' viewBox='0 0 32 33' fill='none'%3E%3Cpath d='M8.88374 11.5645C8.79828 11.479 8.66631 11.4681 8.56929 11.5322L8.53023 11.5645L8.17671 11.918C8.09129 12.0034 8.08043 12.1354 8.14449 12.2324L8.17671 12.2715L15.8232 19.918C15.9086 20.0034 16.0406 20.0143 16.1376 19.9502L16.1767 19.918L23.8232 12.2715C23.9086 12.186 23.9195 12.0541 23.8554 11.957L23.8232 11.918L23.4697 11.5645C23.3843 11.479 23.2523 11.4682 23.1552 11.5322L23.1162 11.5645L16 18.6807L8.88374 11.5645Z' fill='%23303030' stroke='%23303030'/%3E%3C/svg%3E");
  }

main {
  z-index: 100;
}

.wp-block-navigation {
  z-index: 1000;
}

.bloc-artiste {
    max-width: var(--wp--style--global--wide-size);
  margin: auto;
  margin-bottom: 1rem;
}

body {
    margin: 0 1.25rem 1.25rem;
    overflow-x: hidden;
}

:where(.wp-site-blocks) header + div {
    margin-block-start: 0;
  }


.has-texture-papier {
    position: relative;
}


.has-texture-papier > *{
    z-index: 1;
    position: relative;
}


.has-texture-papier:after {
    content:"";
    position: absolute;
    background-image: url(assets/img/texture/texture-papier.webp);
    background-blend-mode: darken, normal;
    background-size: 600px 600px;
    background-position: 0 0;
    z-index: 0;
    opacity: 0.4;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.has-texture-tache {
    position: relative;
}

.has-texture-tache > *{
    z-index: 1;
    position: relative;
}


.has-texture-tache:after {
    content:"";
    position: absolute;
    background-image: url(assets/img/texture/texture-tache.webp);
    background-blend-mode: luminosity;
    background-position: 50% 50%, 0% 0%;
    opacity: 0.2;
    z-index: 0;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.has-multiple-bg-img-visite {
    background-image: url(assets/img/bg/visiter/Vector.png);
    background-position: 100% 100%;
    background-repeat: no-repeat;
}

.has-gribouille-musee {
      background-image: url(assets/img/bg/musee/26.png),url(assets/img/bg/musee/Vector-1.png),url(assets/img/bg/musee/Vector-2.png),url(assets/img/bg/musee/Vector-3.png),url(assets/img/bg/musee/Vector-4.png), url(assets/img/bg/musee/Vector.png);
    background-position: 100% 100%, 100% 0%, 0% 100%, 0% 0%, 0% 0%, 30% 0%;
    background-repeat: no-repeat;
}

.has-bloc-musee {
      background-image: url(assets/img/bg/bloc-musee/Rough.png), url(assets/img/bg/bloc-musee/26.png),url(assets/img/bg/bloc-musee/Vector-1.png),url(assets/img/bg/bloc-musee/Vector.png), url(assets/img/bg/bloc-musee/Vector-2.png);
    background-position: 0% 0%, 0% 0%, 100% 0%, 100% 100%, 0% 100%;
    background-repeat: no-repeat;
}


.has-multiple-bg-img-anniversaire {
    background-image: url(assets/img/bg/anniversaire/Vector.png), url(assets/img/bg/anniversaire/Vector-1.png), url(assets/img/bg/anniversaire/Vector-2.png);
    background-position: 100% 100%, 0% 0%, 85% 100%;
    background-repeat: no-repeat;
}

.has-multiple-bg-img-atelier {
    background-image: url(assets/img/bg/atelier/Vector-1.png), url(assets/img/bg/atelier/Vector-2.png), url(assets/img/bg/atelier/Vector.png);
    background-position: 100% 0%, 100% 100%, 100% 0%;
    background-repeat: no-repeat;
}

.has-bg-citation {
    background-image:  url(assets/img/bg/citation/left.png), url(assets/img/bg/citation/courbe.png), url(assets/img/bg/citation/right.png),url(assets/img/bg/citation/Rough.png);
    background-position: 0% 0%, 0% 0%, 100% 100%, 100% 100%;
    background-repeat: no-repeat;
}

.has-bg-citation-2 {
     background-image:  url(assets/img/bg/citation-2/Vector.png), url(assets/img/bg/citation-2/Vector-1.png), url(assets/img/bg/citation-2/Vector-2.png), url(assets/img/bg/citation-2/Vector-3.png), url(assets/img/bg/citation-2/Vector-4.png);
    background-position: 0% 100%, 90% 0%, 100% 100%, 0% 0%, 0% 100%;
    background-repeat: no-repeat;
}


.has-bg-privatisation {
      background-image:  url(assets/img/bg/privatisation/path46-6.png), url(assets/img/bg/privatisation/Vector-1.png), url(assets/img/bg/privatisation/Vector.png);
    background-position: 100% 50%, 100% 0%, 100% 0%; 
    background-size: auto, contain, auto;
    background-repeat: no-repeat;
}

.has-multiple-bg-reservation {
    background-image: url(assets/img/bg/reservation/Rough.png), url(assets/img/bg/reservation/Vector-2.png), url(assets/img/bg/reservation/Ligne-jaune.png), url(assets/img/bg/reservation/Vector-1.png), url(assets/img/bg/reservation/Vector.png);
    background-position: 100% 100%, 100% 0%, 0% 0%, 50% 100%, 0 100%;
    background-repeat: no-repeat;
}

.has-multiple-bg-comment {
    background-image: url(assets/img/bg/bg-comment.svg), url(assets/img/bg/gribouille-comment.png);
    background-blend-mode:color-burn,screen;
    background-position: 100% 100%, 0% 0%;
    background-repeat: no-repeat;
}

.has-bg-multiple-1 {
    background-image: url(assets/img/bg//multiple/path01.svg), url(assets/img/bg//multiple/path02.svg), url(assets/img/bg//multiple/path03.svg), url(assets/img/bg//multiple/path04.svg);
    background-position: 100% 13%, 0% 17%, 0% 70%, 100% 66%;
    background-repeat: no-repeat;
}

.has-bg-multiple-2 {
   background-image: url(assets/img/bg/multiple/bg-2/Vector.png),url(assets/img/bg/multiple/bg-2/Vector-1.png);
    background-position: 0% 12%, 100% 25%;
    background-repeat: no-repeat;
}
.has-bg-multiple-3 {
    background-image: url(assets/img/bg//multiple/path06.svg), url(assets/img/bg//multiple/path07.svg), url(assets/img/bg//multiple/path08.svg);
    background-position: 0% 25%, 100% 36%, 0% 60%;
    background-repeat: no-repeat;
}
.has-bg-multiple-4, .post-template-single-category-artistes {
    background-image: url(assets/img/bg//multiple/path09.svg), url(assets/img/bg//multiple/path10.svg), url(assets/img/bg//multiple/path11.svg), url(assets/img/bg//multiple/path12.png);
    background-position: 0% 25%, 100% 36%, 100% 65%, 0% 55%;
    background-repeat: no-repeat;
}

.has-bg-createur {
    background-image: url(assets/img/bg/multiple/path13.svg), url(assets/img/bg/multiple/path14.png), url(assets/img/bg/multiple/path15.png);
    background-position: 100% 3%, 100% 100%, 0% 0%;
    background-size: cover, auto, auto;
    background-repeat: no-repeat;
}

.has-multiple-bg-salle-noire {
    background-image: url(assets/img/bg/multiple/salle-noire/Vector.png);
    background-position: 100% 0%;
    background-size: auto;
    background-repeat: no-repeat;
}


.has-multiple-bg-img-snoezelen {
    background-image: url(assets/img/bg/multiple//snoezelen/Vector.png);
    background-position: 100% 0%;
    background-size: auto;
    background-repeat: no-repeat;
}

.has-bg-espace-atelier {
    background-image: url(assets/img/bg/multiple/atelier/Vector.png);
    background-position: 100% 0%;
    background-size: auto;
    background-repeat: no-repeat;
}

.has-multiple-bg-img-bebe {
    background-image: url(assets/img/bg/multiple/bebe/bottom-left.png), url(assets/img/bg/multiple/bebe/bottom-right.png);
    background-position: 0% 100%, 100% 100%;
    background-size: auto;
    background-repeat: no-repeat;
}

.has-gribouille-1 {
  position: relative;
    background-image: url(assets/img/bg/anniversaire/gribouille-1/Frame.png), url(assets/img/bg/anniversaire/gribouille-1/Vector-1.png), url(assets/img/bg/anniversaire/gribouille-1/Vector.png);
    background-position: 0% 100%, 0% 100%, 100% 0%;
    background-size: auto;
    background-repeat: no-repeat;
}

.has-gribouille-2 {
  position: relative;
    background-image: url(assets/img/bg/anniversaire/gribouille-2/Vector.png), url(assets/img/bg/anniversaire/gribouille-2/Vector-1.png),url(assets/img/bg/anniversaire/gribouille-2/Vector-2.png), url(assets/img/bg/anniversaire/gribouille-2/Vector-3.png), url(assets/img/bg/anniversaire/gribouille-2/Vector-4.png);
    background-position:0% 0%, 100% 100%, 0% 0%, 100% 0%, 0% 0%;
    background-size: auto;
    background-repeat: no-repeat;
}

.has-gribouille-3 {
  position: relative;
    background-image: url(assets/img/bg/anniversaire/gribouille-3/Vector.png), url(assets/img/bg/anniversaire/gribouille-3/Vector-1.png),url(assets/img/bg/anniversaire/gribouille-3/Vector-2.png), url(assets/img/bg/anniversaire/gribouille-3/Vector-3.png);
    background-position:100% 100%, 0% 0%, 0% 100%, 100% 0%;
    background-size: auto;
    background-repeat: no-repeat;
}


.has-bg-valeur {
  position: relative;
}

.has-bg-valeur .wp-block-group {
  z-index: 100;
}

.has-bg-valeur:after{
  content: "";
  position: absolute;
  z-index: 1;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
    background-image: url(assets/img/bg/valeur/bottom-left.png), url(assets/img/bg/valeur/top-left.png), url(assets/img/bg/valeur/bottom-right.png), url(assets/img/bg/valeur/top-right.png);
    background-position: 0% 100%, 0% 0%, 100% 100%, 100% 0%;
    background-size: auto, auto;
    background-repeat: no-repeat;
}

.has-bg-concept{
  position: relative;
    background-image: url(assets/img/bg/concept/35-left.png),  url(assets/img/bg/concept/top-left.png), url(assets/img/bg/concept/bottom-right.png), url(assets/img/bg/concept/center-right.png);
    background-position: 0% 35%, 0% 0%, 100% 100%, 100% 50%;
    background-size: auto, auto;
    background-repeat: no-repeat;
}

.has-bg-services{
  position: relative;
    background-image: url(assets/img/bg/services/Vector-1.png),  url(assets/img/bg/services/Vector-2.png),  url(assets/img/bg/services/Vector-3.png), url(assets/img/bg/services/Vector.png);
    background-position: 70% 100%, 100% 100%, 97% 100%, 0% 0%;
    background-size: auto, auto, auto, auto;
    background-repeat: no-repeat;
}


.bloc-artiste {
  max-width: var(--wp--style--global--wide-size);
  margin: auto;
  margin-bottom: 1rem;
}


/* Styles pour les différents backgrounds */
.bg-blue {
    background-color: #e0f7ff;
}

.bg-green {
    background-color: #e9f9e9;
}

.bg-red {
    background-color: #ffeded;
}

.duree:before {
  content:"";
  width: 23px;
  height: 23px;
   background-image: url('data:image/svg+xml;utf8,<svg width="23" height="23" viewBox="0 0 23 23" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12.2193 7.18748V11.093L15.4644 13.0399C15.6279 13.1381 15.7457 13.2972 15.7918 13.4822C15.838 13.6672 15.8088 13.8629 15.7106 14.0264C15.6124 14.1898 15.4534 14.3076 15.2684 14.3538C15.0834 14.3999 14.8876 14.3707 14.7241 14.2726L11.1304 12.1163C11.024 12.0524 10.936 11.9621 10.8749 11.854C10.8138 11.746 10.7817 11.6241 10.7818 11.5V7.18748C10.7818 6.99685 10.8575 6.81404 10.9923 6.67924C11.1271 6.54445 11.3099 6.46873 11.5005 6.46873C11.6912 6.46873 11.874 6.54445 12.0088 6.67924C12.1436 6.81404 12.2193 6.99685 12.2193 7.18748ZM20.1255 5.03123C19.9349 5.03123 19.7521 5.10695 19.6173 5.24174C19.4825 5.37654 19.4068 5.55935 19.4068 5.74998V7.36716C18.8363 6.70591 18.2541 6.06892 17.5991 5.40588C16.4005 4.2071 14.8751 3.38813 13.2137 3.0513C11.5523 2.71447 9.82841 2.87472 8.25753 3.51203C6.68664 4.14934 5.3384 5.23543 4.38126 6.63462C3.42412 8.0338 2.90053 9.68402 2.87591 11.3791C2.85129 13.0741 3.32673 14.7389 4.24283 16.1653C5.15893 17.5916 6.47507 18.7164 8.02678 19.3991C9.57849 20.0818 11.297 20.292 12.9675 20.0036C14.638 19.7151 16.1865 18.9408 17.4194 17.7774C17.4881 17.7125 17.5433 17.6347 17.5819 17.5485C17.6205 17.4622 17.6418 17.3692 17.6445 17.2748C17.6471 17.1804 17.6312 17.0863 17.5975 16.998C17.5638 16.9098 17.5131 16.829 17.4482 16.7603C17.3833 16.6917 17.3055 16.6364 17.2193 16.5978C17.1331 16.5592 17.0401 16.538 16.9456 16.5353C16.8512 16.5326 16.7572 16.5486 16.6689 16.5823C16.5806 16.616 16.4998 16.6667 16.4312 16.7316C15.4034 17.7002 14.113 18.3445 12.7213 18.5841C11.3295 18.8238 9.89795 18.6481 8.60542 18.079C7.3129 17.5099 6.21666 16.5727 5.45362 15.3843C4.69057 14.1959 4.29452 12.8091 4.31494 11.397C4.33535 9.98486 4.77132 8.61005 5.5684 7.44423C6.36548 6.27841 7.48835 5.37324 8.79678 4.84176C10.1052 4.31028 11.5412 4.17604 12.9255 4.4558C14.3098 4.73556 15.581 5.41693 16.5803 6.41482C17.3116 7.15513 17.9522 7.86849 18.5982 8.62498H16.5318C16.3412 8.62498 16.1583 8.7007 16.0236 8.83549C15.8888 8.97029 15.813 9.1531 15.813 9.34373C15.813 9.53435 15.8888 9.71717 16.0236 9.85196C16.1583 9.98675 16.3412 10.0625 16.5318 10.0625H20.1255C20.3162 10.0625 20.499 9.98675 20.6338 9.85196C20.7686 9.71717 20.8443 9.53435 20.8443 9.34373V5.74998C20.8443 5.55935 20.7686 5.37654 20.6338 5.24174C20.499 5.10695 20.3162 5.03123 20.1255 5.03123Z" fill="%23444444"/></svg>');
  background-size: contain;
  background-repeat: no-repeat;
}

.cible:before {
  content:"";
  width: 23px;
  height: 23px;
  background-image: url('data:image/svg+xml;utf8,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8.625 13.125C8.4025 13.125 8.18499 13.059 7.99999 12.9354C7.81498 12.8118 7.67079 12.6361 7.58564 12.4305C7.50049 12.225 7.47821 11.9988 7.52162 11.7805C7.56503 11.5623 7.67217 11.3618 7.82951 11.2045C7.98684 11.0472 8.1873 10.94 8.40553 10.8966C8.62376 10.8532 8.84996 10.8755 9.05552 10.9606C9.26109 11.0458 9.43679 11.19 9.56041 11.375C9.68402 11.56 9.75 11.7775 9.75 12C9.75 12.2984 9.63148 12.5845 9.4205 12.7955C9.20952 13.0065 8.92337 13.125 8.625 13.125ZM15.375 10.875C15.1525 10.875 14.935 10.941 14.75 11.0646C14.565 11.1882 14.4208 11.3639 14.3356 11.5695C14.2505 11.775 14.2282 12.0012 14.2716 12.2195C14.315 12.4377 14.4222 12.6382 14.5795 12.7955C14.7368 12.9528 14.9373 13.06 15.1555 13.1034C15.3738 13.1468 15.6 13.1245 15.8055 13.0394C16.0111 12.9542 16.1868 12.81 16.3104 12.625C16.434 12.44 16.5 12.2225 16.5 12C16.5 11.7016 16.3815 11.4155 16.1705 11.2045C15.9595 10.9935 15.6734 10.875 15.375 10.875ZM14.2247 15.1153C13.5567 15.5299 12.7862 15.7496 12 15.7496C11.2138 15.7496 10.4433 15.5299 9.77532 15.1153C9.60699 15.0091 9.40338 14.9742 9.20928 15.0181C9.01518 15.0621 8.84649 15.1814 8.74032 15.3497C8.63415 15.518 8.5992 15.7216 8.64315 15.9157C8.6871 16.1098 8.80636 16.2785 8.97469 16.3847C9.88233 16.9505 10.9304 17.2504 12 17.2504C13.0696 17.2504 14.1177 16.9505 15.0253 16.3847C15.1936 16.2785 15.3129 16.1098 15.3569 15.9157C15.4008 15.7216 15.3659 15.518 15.2597 15.3497C15.1535 15.1814 14.9848 15.0621 14.7907 15.0181C14.5966 14.9742 14.393 15.0091 14.2247 15.1153ZM21.75 12C21.75 13.9284 21.1782 15.8134 20.1068 17.4168C19.0355 19.0202 17.5127 20.2699 15.7312 21.0078C13.9496 21.7458 11.9892 21.9389 10.0979 21.5627C8.20656 21.1865 6.46928 20.2579 5.10571 18.8943C3.74215 17.5307 2.81355 15.7934 2.43735 13.9021C2.06114 12.0108 2.25422 10.0504 2.99218 8.26884C3.73013 6.48726 4.97982 4.96451 6.58319 3.89317C8.18657 2.82183 10.0716 2.25 12 2.25C14.585 2.25273 17.0634 3.28084 18.8913 5.10872C20.7192 6.93661 21.7473 9.41498 21.75 12ZM20.25 12C20.2474 9.87623 19.4269 7.83506 17.9589 6.30036C16.4909 4.76565 14.4881 3.85533 12.3666 3.75844C11.28 5.28562 11.25 6.73875 11.25 6.75C11.25 6.94891 11.329 7.13968 11.4697 7.28033C11.6103 7.42098 11.8011 7.5 12 7.5C12.1989 7.5 12.3897 7.42098 12.5303 7.28033C12.671 7.13968 12.75 6.94891 12.75 6.75C12.75 6.55109 12.829 6.36032 12.9697 6.21967C13.1103 6.07902 13.3011 6 13.5 6C13.6989 6 13.8897 6.07902 14.0303 6.21967C14.171 6.36032 14.25 6.55109 14.25 6.75C14.25 7.34674 14.013 7.91903 13.591 8.34099C13.169 8.76295 12.5967 9 12 9C11.4033 9 10.831 8.76295 10.409 8.34099C9.98706 7.91903 9.75 7.34674 9.75 6.75C9.75 6.68156 9.76219 5.40937 10.5431 3.87844C8.99846 4.15557 7.56488 4.86752 6.41061 5.93074C5.25633 6.99396 4.42926 8.36435 4.02643 9.8811C3.6236 11.3978 3.66173 12.998 4.13635 14.4939C4.61097 15.9897 5.50238 17.3191 6.70599 18.3262C7.9096 19.3332 9.37546 19.9761 10.9316 20.1793C12.4877 20.3825 14.0695 20.1377 15.4914 19.4736C16.9132 18.8095 18.1162 17.7536 18.9591 16.4298C19.8019 15.106 20.2498 13.5693 20.25 12Z" fill="%23444444"/></svg>');
  background-size: contain;
  background-repeat: no-repeat;
}


.has-texture-white, .has-texture-white span{
    background-image: url(assets/img/texture/texture-white.png);
}


.wp-block-cover .wp-block-cover__inner-container, .wp-block-cover-image .wp-block-cover__inner-container {
    z-index: 1000;
}


.rotate-minus-5 {
    transform: rotate(-5deg);
}

.rotate-plus-5 {
    transform: rotate(5deg);
}

.rotate-plus-10 {
    transform: translate(50px,0px)rotate(10deg);
}

.img-top-right-atelier {
    position: relative;
    transform: rotate(-5deg);
    z-index: 1;
}


.img-middle-right-atelier {
    position: relative;
    transform: translate(45px,-65px) rotate(5deg);
}

.img-offset-right-40 {
    transform: translateX(40px) rotate(5deg);;
}

/* Navigation */
.wp-block-navigation:not(.menu-footer) .wp-block-navigation-item {
    display: flex;
    flex-direction: column;
    transition: all ease-in-out 150ms;
}

.wp-block-navigation:not(.menu-footer) .wp-block-navigation-item .wp-block-navigation__submenu-icon {
    display: none;
}

.wp-block-navigation:not(.menu-footer) > .wp-block-navigation-item:hover {
    color:var(--wp--preset--color--rouge-rose);
}



.wp-block-navigation:not(.menu-footer) > .wp-block-navigation-item:after {
    content:"";
    transition: all ease-in-out 150ms;
    margin-top: 0.5rem;
    width: 0;
    height: 5px;
    background-image:url(./assets/img/bg/underline.png);
    background-repeat: no-repeat;
    background-size: 100%;
    display: block;
}

.wp-block-navigation:not(.menu-footer) > .wp-block-navigation-item:hover:after,
.wp-block-navigation:not(.menu-footer) > .wp-block-navigation-item.current-menu-ancestor:after,
.wp-block-navigation:not(.menu-footer) > .wp-block-navigation-item.current-menu-item:after {
    width: 100%; 
}

.wp-block-navigation:not(.menu-footer) > .wp-block-navigation-item.current-menu-ancestor,
.wp-block-navigation:not(.menu-footer) > .wp-block-navigation-item.current-menu-item {
    color:var(--wp--preset--color--rouge-rose);
}


.wp-block-navigation:not(.menu-footer) .has-child .wp-block-navigation-submenu__toggle[aria-expanded="true"] ~ .wp-block-navigation__submenu-container, .wp-block-navigation:not(.menu-footer) .has-child:not(.open-on-click):hover > .wp-block-navigation__submenu-container, .wp-block-navigation:not(.menu-footer) .has-child:not(.open-on-click):not(.open-on-hover-click):focus-within > .wp-block-navigation__submenu-container {
    min-width: 300px;
}

.wp-block-navigation:not(.has-background):not(.menu-footer) .wp-block-navigation__submenu-container {
    background-color: var(--wp--preset--color--bg-creme-pale);
    border-radius: 1rem;
    padding: 1rem;
    box-shadow: 0px 32px 64px -12px rgba(0, 0, 0, 0.14);
    align-items: flex-start;
}

.wp-block-navigation:not(.has-background):not(.menu-footer) .wp-block-navigation__submenu-container .wp-block-navigation-item {

}

.wp-block-navigation:not(.has-background):not(.menu-footer) .wp-block-navigation__submenu-container .wp-block-navigation-item:hover {
    color:var(--wp--preset--color--vermillon);
    font-weight: bold;
}


.wp-block-navigation:not(.has-background):not(.menu-footer) .wp-block-navigation__submenu-container .wp-block-navigation-item a {
    transition: all ease-in-out 150ms;
}


.wp-block-navigation:not(.has-background):not(.menu-footer) .wp-block-navigation__submenu-container .wp-block-navigation-item:hover a {
   border-left: 3px solid var(--wp--preset--color--vermillon);
   padding-left: 15px;

}






/* FAQ */ 
.schema-faq > div.schema-faq-section {
    padding: 1.25rem 0;
    border-top:1px solid var(--wp--preset--color--text-color);
    cursor: pointer;
}

.schema-faq > div.schema-faq-section .schema-faq-question {
    display: block;
    position: relative;
}

.schema-faq > div.schema-faq-section .schema-faq-question:after {
    content:"";
    width: 32px;
    height: 32px;
    background-repeat: no-repeat;
    background-image: var(--arrow-down);
    background-repeat: no-repeat;
    background-position: center;
    display: block;
    position: absolute;
    right: 0;
    top: -4px;
    transition: all ease-in 200ms;
}

.schema-faq > div.schema-faq-section.open .schema-faq-question:after {
    transform: rotate(-180deg);
}


.schema-faq > div.schema-faq-section .schema-faq-answer {
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transition: max-height 0.3s ease-in-out, opacity 0.3s ease-in-out, padding 0.3s ease-in-out;
    padding-top: 0;
    padding-bottom: 0;
    margin: 0;
}

.schema-faq > div.schema-faq-section.open .schema-faq-answer {
    max-height: 1000px; /* Ajustez cette valeur selon la taille maximale possible de votre contenu */
    opacity: 1;
    padding-top: 10px;
    padding-bottom: 10px;
}


/* Table style */

.wp-block-table table {
    border-collapse:separate;
border:1px solid  var(--wp--preset--color--text-color)!important;
}

.wp-block-table table td {
border:none!important;
padding: 1rem 1rem ;
}

.wp-block-table table tr:not(:first-child) td{
    border-top: 1px solid var(--wp--preset--color--text-color)!important;
}

/* Form */
/* Styles pour formulaire Contact Form 7 */

/* Conteneur principal du formulaire */
.wpcf7-form {
    max-width: 800px;
    margin: 0 auto;
  }
  
  /* Style général pour tous les labels */
  .wpcf7-form label {
    display: block;
    margin-bottom: 10px;
    color: var(--wp--preset--color--neutral--dark);
  }
  
  /* Styles de base pour tous les champs */
  .wpcf7-form input[type="text"],
  .wpcf7-form input[type="email"],
  .wpcf7-form input[type="tel"],
  .wpcf7-form select,
  .wpcf7-form textarea {
    width: 100%;
    padding: 12px 15px;
    border: 1px solid var(--wp--preset--color--neutral);
    border-radius: 10px;
    background-color: transparent;
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.05);
    font-size: 16px;
    color: #444;
    transition: all 0.3s ease;
    box-sizing: border-box;
  }
  
  /* États au survol pour les champs */
  .wpcf7-form input[type="text"]:hover,
  .wpcf7-form input[type="email"]:hover,
  .wpcf7-form select:hover,
  .wpcf7-form input[type="tel"]:hover,
  .wpcf7-form textarea:hover {
    border-color: var(--wp--preset--color--neutral);
  }
  
  /* États au focus pour les champs */
  .wpcf7-form input[type="text"]:focus,
  .wpcf7-form input[type="email"]:focus,
  .wpcf7-form select:focus,
  .wpcf7-form input[type="tel"]:focus,
  .wpcf7-form textarea:focus {
    background-color: var(--wp--preset--color--bg-creme-pale);
    border-color: var(--wp--preset--color--neutral--dark);
    box-shadow: 0 0 0 2px rgba(0, 115, 170, 0.2);
    outline: none;
  }
  
  /* Style spécifique pour les champs textarea */
  .wpcf7-form textarea {
    height: 150px;
    resize: vertical;
    line-height: 1.5;
  }
  
  /* Style pour le champ select */
  .wpcf7-form select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="6" viewBox="0 0 12 6"><path fill="%23444" d="M0 0l6 6 6-6z"/></svg>');
    background-repeat: no-repeat;
    background-position: right 15px center;
    padding-right: 30px;
  }
  
  /* Style pour le champ de téléchargement de fichier */
  .wpcf7-form input[type="file"] {
    width: 100%;
    padding: 10px 0;
    font-size: 14px;
  }
  
  /* Conteneur personnalisé pour l'upload de fichier */
  .wpcf7-form .file-upload-wrapper {
    position: relative;
    padding: 12px;
    border: 1px dashed #ccc;
    border-radius: 4px;
    text-align: center;
    background-color: #f9f9f9;
    margin-top: 5px;
    cursor: pointer;
    transition: all 0.3s ease;
  }
  
  .wpcf7-form .file-upload-wrapper:hover {
    border-color: #0073aa;
    background-color: #f5f5f5;
  }
  
  /* Style pour la case à cocher */
  .wpcf7-checkbox {
    margin: 5px 0;
  }
  
  .wpcf7-checkbox .wpcf7-list-item {
    margin: 0;
    display: flex;
    align-items: flex-start;
  }
  
  .wpcf7-checkbox .wpcf7-list-item-label {
    font-size: 14px;
    padding-left: 8px;
    line-height: 1.4;
  }
  
  .wpcf7-checkbox input[type="checkbox"] {
    margin-top: 3px;
    appearance: none;
    -webkit-appearance: none;
    width: 18px;
    height: 18px;
    border: 1px solid #ccc;
    border-radius: 3px;
    position: relative;
    cursor: pointer;
  }
  
  .wpcf7-checkbox input[type="checkbox"]:checked {
    background-color: #0073aa;
    border-color: #0073aa;
  }
  
  .wpcf7-checkbox input[type="checkbox"]:checked::before {
    content: "✓";
    position: absolute;
    color: white;
    font-size: 14px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  
  /* Style pour le bouton d'envoi */
  .wpcf7-submit {
    background-image: url(assets/img/bg/send.svg);
    background-repeat: no-repeat;
    background-position: 15px 10px;
    background-color: var(--wp--preset--color--rouge-rose);
    color: white;
    border: none;
    border-radius: 25px;
    padding: 12px 30px 12px 45px;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.3s ease;
    display: inline-block;
    margin-top: 10px;
    text-align: center;
  }
  
  .wpcf7-submit:hover {
    background-color: var(--wp--preset--color--rouge-rose);
  }
  
  /* Disposition en deux colonnes (responsive) */
  .form-row {
    margin-bottom: 20px;
  }
  
  .form-row.two-columns {
    display: flex;
    gap: 20px;
  }
  
  .form-row.two-columns > div {
    flex: 1;
  }
  
  /* Message d'erreur et de validation */
  /* Message d'erreur sous les champs */
  .wpcf7-not-valid-tip {
    background-color: rgba(255, 255, 255, 0.7);
    color: #dc3545;
    font-size: 13px;
    padding: 8px 12px;
    margin-top: 5px;
    border-radius: 4px;
    display: flex;
    align-items: center;
    font-weight: 500;
    line-height: 1.4;
    border-left: 3px solid #dc3545;
  }
  
  /* Ajout de l'icône de croix */
  .wpcf7-not-valid-tip::before {
    content: '';
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23dc3545' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cline x1='15' y1='9' x2='9' y2='15'%3E%3C/line%3E%3Cline x1='9' y1='9' x2='15' y2='15'%3E%3C/line%3E%3C/svg%3E");
    width: 16px;
    height: 16px;
    margin-right: 8px;
    background-repeat: no-repeat;
    display: inline-block;
    flex-shrink: 0;
  }
  
  /* Style des champs avec erreur */
  .wpcf7-form .wpcf7-not-valid {
    border-color: #dc3545;
    background-color: rgba(255, 255, 255, 0.9);
  }
  
  /* Focus sur les champs avec erreur */
  .wpcf7-form .wpcf7-not-valid:focus {
    box-shadow: 0 0 0 2px rgba(220, 53, 69, 0.15);
  }
  
  /* Message d'erreur général */
  .wpcf7 form.invalid .wpcf7-response-output {
    background-color: rgba(255, 255, 255, 0.7);
    border: none !important;
    border-left: 4px solid #dc3545 !important;
    color: #dc3545;
    padding: 12px 15px 12px 40px !important;
    border-radius: 4px;
    position: relative;
    font-weight: 500;
    margin-top: 25px !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.03);
  }
  
  /* Ajout d'une icône plus grande pour le message général */
  .wpcf7 form.invalid .wpcf7-response-output::before {
    content: '';
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23dc3545' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cline x1='15' y1='9' x2='9' y2='15'%3E%3C/line%3E%3Cline x1='9' y1='9' x2='15' y2='15'%3E%3C/line%3E%3C/svg%3E");
    width: 20px;
    height: 20px;
    background-repeat: no-repeat;
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
  }
  
  /* Animation subtile pour les messages d'erreur */
  @keyframes errorShake {
    0%, 100% { transform: translateX(0); }
    25% { transform: translateX(-4px); }
    75% { transform: translateX(4px); }
  }
  
  .wpcf7-not-valid-tip, 
  .wpcf7 form.invalid .wpcf7-response-output {
    animation: errorShake 0.5s ease-in-out;
  }
  
  
  
  /* Section d'informations (RGPD et délai de réponse) */
  .form-info {
    margin-top: 25px;
    padding: 15px;
    background-color: rgba(255, 255, 255, 0.6); /* Votre couleur white-60% */
    border-left: 3px solid #0073aa;
    font-size: 14px;
    color: #666;
    line-height: 1.5;
  }
  
  .form-info .response-time {
    font-weight: 600;
    margin-bottom: 10px;
    color: #333;
  }
  
  /* Adaptation mobile */
  @media (max-width: 767px) {

     .hidden-mobile {
      display: none!important;
     }
.btn-view-mode span {
  display: none;
}


    .group-footer {
      padding: 1.5rem!important;
    }

    .footer-bottom {
      display: flex;
      flex-direction: column;
    }

    .menu-footer {
      flex-direction: column;
    }

    .mobile-hidden {
      display: none;
    }



    .form-row.two-columns {
      flex-direction: column;
      gap: 20px;
    }
    
    .wpcf7-form input[type="text"],
    .wpcf7-form input[type="email"],
    .wpcf7-form input[type="tel"],
    .wpcf7-form select,
    .wpcf7-form textarea {
      font-size: 15px;
      padding: 10px 12px;
    }
    
    .wpcf7-submit {
      width: 100%;
      padding: 1.5rem;
      font-size: 1.2rem;
    }
  }
  
  
  /* Styles améliorés pour l'input file dans Contact Form 7 */
  
  /* Cacher l'input file natif */
  .wpcf7-form input[type="file"] {
    width: 0.1px;
    height: 0.1px;
    opacity: 0;
    overflow: hidden;
    position: absolute;
    z-index: -1;
  }
  
  /* Conteneur personnalisé pour l'upload */
  .file-upload-container {
    position: relative;
    margin-top: 10px;
    margin-bottom: 20px;
  }
  
  /* Style du label qui servira de bouton visuel */
  .wpcf7-form .file-upload-label {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #f8f9fa;
    color: #495057;
    border: 2px dashed #ced4da;
    border-radius: 8px;
    padding: 18px 15px;
    cursor: pointer;
    transition: all 0.3s ease;
    font-weight: normal;
    text-align: center;
    position: relative;
    overflow: hidden;
  }
  
  /* Icône d'upload */
  .file-upload-label::before {
    content: '';
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23495057' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'%3E%3C/path%3E%3Cpolyline points='17 8 12 3 7 8'%3E%3C/polyline%3E%3Cline x1='12' y1='3' x2='12' y2='15'%3E%3C/line%3E%3C/svg%3E");
    width: 24px;
    height: 24px;
    margin-right: 10px;
    background-repeat: no-repeat;
    display: inline-block;
  }
  
  /* Effet au survol */
  .wpcf7-form .file-upload-label:hover {
    background-color: #e9ecef;
    border-color: #0073aa;
    color: #0073aa;
  }
  
  .wpcf7-form .file-upload-label:hover::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%230073aa' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'%3E%3C/path%3E%3Cpolyline points='17 8 12 3 7 8'%3E%3C/polyline%3E%3Cline x1='12' y1='3' x2='12' y2='15'%3E%3C/line%3E%3C/svg%3E");
  }
  
  /* Zone affichant le nom du fichier sélectionné */
  .file-name-display {
    margin-top: 8px;
    font-size: 14px;
    color: #495057;
    background-color: rgba(255, 255, 255, 0.6);
    padding: 5px 10px;
    border-radius: 4px;
    display: none;
    word-break: break-all;
  }
  
  /* Style pour les erreurs */
  .wpcf7-form .file-upload-container .wpcf7-not-valid-tip {
    margin-top: 8px;
  }
  
  /* Animation de l'état actif */
  .wpcf7-form .file-upload-label:active {
    transform: translateY(1px);
  }

  .text-center p {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .text-center p input {
    width: auto;
  }
  
  /* Script JavaScript à ajouter à la page */



  .banner-taxonomy {
    display: flex;
    align-items: center;
    background-position: 50%;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    min-height: 430px;
    overflow: hidden;
    overflow: clip;
    padding: 1em;
    position: relative;
    border-radius: 10px;
  }

  .banner-taxonomy .wp-block-cover__background {
    bottom: 0;
  left: 0;
  opacity: .5;
  position: absolute;
  right: 0;
  top: 0;
  }

  .banner-taxonomy .wp-block-cover__inner-container {
    z-index: 1000;
  }


  .gap-3 {
    gap:3rem;
  } 
  
.d-flex {
  display: flex;
}
.align-items-center {
  align-items: center;
}


.justify-content-between {
  justify-content: space-between;
}

  @media (max-width: 767px) {
    .gap-0-mobile{
      gap:0;
    }
  }


  .type-atelier-card-wrapper img {
    filter: grayscale(20%);
    transition: all ease-in 150ms;
  }

  .type-atelier-card-wrapper:hover img {
    filter: none;
  }



  .evenement-card {
    padding: 1rem;
    border-radius: 10px;
    background-color: transparent;
        transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  }

  .evenement-card .excerpt {
    max-height: 250px;
    height: 0;
    opacity: 0;
  }

  .evenement-card:hover {
    background-color: white;
    transform: translateY(-5px);
  }

 .evenement-card .excerpt {
    overflow: hidden;
    transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    max-height: 0;
    opacity: 0;
    margin-top: 0;
    line-height: 1.6;
    
    /* Troncature moderne (Firefox 68+) */
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    line-clamp: 4; /* ← Ajout de la propriété standard */
}





.evenement-card:hover .excerpt {
    height: 150px;
    opacity: 1;
    margin-top: 1rem;
}


   .evenement-card:hover .excerpt {
  max-height: 250px;
    opacity: 1;
    margin-top: 1rem;
   }

.evenement-card .wp-block-image > a {
  display: block;
}

  .evenement-card .wp-block-image img {
transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
 height: 240px;
  }

    .evenement-card:hover .wp-block-image img {
      height: 100px;
      width: 100%;
      aspect-ratio: auto!important;
    }

    @media (max-width: 768px) {
    .evenements-passes-grid {
        grid-template-columns: 1fr !important;
    }
}

@media (min-width: 769px) and (max-width: 1024px) {
    .evenements-passes-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

   


.bg-visite-support {
    position: relative;
    background-image: url(assets/img/bg/visite/support/Vector.png),url(assets/img/bg/visite/support/Vector-1.png);
    background-position: 100% 100%, 100% 0%;
    background-size: auto, auto;
    background-repeat: no-repeat;

}
.bg-visite-espaces {
      position: relative;
    background-image: url(assets/img/bg/visite/espaces/26.png), url(assets/img/bg/visite/espaces/27.png), url(assets/img/bg/visite/espaces/Rough.png);
    background-position: 100% 0%, 0% 100%, 0% 100%;
    background-size: auto, auto ,auto;
    background-repeat: no-repeat;
}
.bg-visite-outils {
   position: relative;
    background-image: url(assets/img/bg/visite/outils/Vector-1.png), url(assets/img/bg/visite/outils/Vector-2.png), url(assets/img/bg/visite/outils/Vector.png);
    background-position: 100% 0%, 0% 100%, 100% 100%;
    background-size: auto, auto ,auto;
    background-repeat: no-repeat;


}
.bg-visite-couleurs {

     position: relative;
    background-image: url(assets/img/bg/visite/couleurs/Vector-1.png), url(assets/img/bg/visite/couleurs/Vector.png);
    background-position: 100% 100%, 0% 100%;
    background-size: auto, auto ;
    background-repeat: no-repeat;
}
.bg-visite-formes {
     position: relative;
    background-image: url(assets/img/bg/visite/formes/Ellipse.png), url(assets/img/bg/visite/formes/Polygon.png), url(assets/img/bg/visite/formes/Rectangle.png);
    background-position: 95% 75%, 95% 15%, 95% 55%;
    background-size: auto, auto, auto  ;
    background-repeat: no-repeat;

}

.bg-autres-focus {
     position: relative;
    background-image: url(assets/img/bg/autre-focus/Vector.png), url(assets/img/bg/autre-focus/Vector-1.png),  url(assets/img/bg/autre-focus/Vector-2.png),  url(assets/img/bg/autre-focus/Vector-3.png), url(assets/img/bg/autre-focus/Vector-4.png);
    background-position: 100% 100%, 0% 0%, 0% 0%, 100% 98%, 100% 0%;
    background-size: auto, auto, auto, auto , auto   ;
    background-repeat: no-repeat;

}

.bg-reservation-2 {
     position: relative;
    background-image: url(assets/img/bg/reservation-2/26.png), url(assets/img/bg/reservation-2/Lignejaune.png), url(assets/img/bg/reservation-2/Rough2.png), url(assets/img/bg/reservation-2/Vector.png) ;
    background-position: 100% 100%, 0% 0%, 100% 100%, 0% 0%;
    background-size: auto, auto, auto, auto;
    background-repeat: no-repeat;

}

.bg-dossier-peda {
     position: relative;
      background-image: url(assets/img/bg/dossier-peda/26.png), url(assets/img/bg/dossier-peda/Lignejaune.png), url(assets/img/bg/dossier-peda/Rough2.png), url(assets/img/bg/dossier-peda/Vector.png) ;

    background-position: 100% 100%, 0% 0%, 100% 100%, 0% 0%;
    background-size: auto, auto, auto, auto;
    background-repeat: no-repeat;

}



.overflow-hidden {
  overflow: hidden;
}