* {
  box-sizing: border-box;
}

html,
body {
  margin: 0;
  padding: 0;
}

/* VARIABLES */
/* TEXTE */
/* COULEUR */
/* GENERIQUE */
html {
  font-size: 20px;
  background: #E5A32C;
}

body {
  font-family: "Roboto", sans-serif;
  font-size: 1rem;
  color: #000000;
  line-height: 1.35;
}

h1,
h2,
h3,
h4,
p,
ul,
ol {
  margin: 0;
  padding: 0;
}

h1 {
  margin: 0 0 3rem;
  text-transform: uppercase;
  font-weight: 900;
  font-size: 4rem;
  letter-spacing: 0.5px;
  line-height: 1.05;
  color: white;
}

h2 {
  margin: 0 0 2rem;
  text-transform: uppercase;
  font-weight: 700;
  font-size: 1.3rem;
  letter-spacing: 0.5px;
  line-height: 1.05;
  color: white;
}

h3 {
  margin: 0 0 2rem;
  text-transform: uppercase;
  font-weight: 700;
  font-size: 1.5rem;
  letter-spacing: 0.5px;
  line-height: 1.05;
  color: white;
}

h4 {
  margin: 0 0 2rem;
  font-weight: 700;
  font-size: 2.25rem;
  letter-spacing: 0.5px;
  line-height: 1.05;
  color: white;
}

p,
ul,
ol {
  margin: 0 0 2rem;
}

a {
  color: white;
}

/* HEADER */
header {
  position: sticky;
  z-index: 10;
  top: 0;
  left: 0;
  right: 0;
}

/* .home header {
  position: fixed;
  z-index: 2;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  margin: 0 0 0 auto;
} */

main ul {
  padding: 0 0 0 17px;
}

header .logo,
.sidebar_logo .logo {
  position: absolute;
  background: no-repeat top left/100% auto url(../images/virgule-logo.svg);
  width: 100%;
  aspect-ratio: 1/2;
}

.timetable-mobile {
  display: none;
}

@media (max-width: 1080px) {
  .timetable-mobile {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    background: white;
    display: flex;
    height: 40px;
    z-index: 99;
    align-items: center;
    justify-content: center;
  }

  .timetable {
    text-align: center;
    /* color: white !important; */
  }
}

.timetable {
  font-weight: bold;
}

@media (min-width: 1081px) {
  .timetable {
    position: absolute;
    top: 40%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 80%;
  }
}

@media (max-width: 1300px) {
  .timetable {
    font-size: 14px;
  }
}

@media (max-width: 1080px) {
  .sidebar_logo_wrapper .timetable {
    display: none;
  }

  header .logo img,
  .sidebar_logo .logo img {
    top: 25% !important;
  }

}

.timetable.closed {
  color: #c71910;
}

.timetable.open {
  color: #61cd80;
}

.timetable.open .hours {
  display: inline-block;
}

.timetable span {
  display: block;
  color: #E5A32C;
}


.timetable-hours {
  display: inline-block;
}

header .logo img,
.sidebar_logo .logo img {
  position: absolute;
  top: 15%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 80%;
}

.site_wrapper {
  display: flex;
  flex-direction: column-reverse;
}

.menu_mobile_wrapper {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  padding: 15px 10px;
  background: #E5A32C;
}

.menu_mobile_wrapper .logo_mobile {
  width: 27%;
}

.menu_mobile_wrapper .logo_mobile a {
  display: flex;
}

.menu_mobile_wrapper .logo_mobile img {
  width: 100%;
  height: auto;
}



.sidebar_logo_wrapper {
  position: sticky;
  top: 0;
  left: 0;
}

.sidebar_logo {
  position: relative;
}


header .liens-fixed,
.sidebar_logo .liens-fixed {
  position: absolute;
  z-index: 2;
  top: 70vh;
  left: 0;
}

header .liens-fixed ul,
.sidebar_logo .liens-fixed ul {
  margin: 0;
}

header .liens-fixed ul li,
.sidebar_logo .liens-fixed ul li {
  list-style: none;
}

header .liens-fixed ul li a,
.sidebar_logo .liens-fixed ul li a {
  background: #DB581D;
  color: white;
  font-weight: 700;
  display: inline-block;
  padding: 1rem 5rem 1rem 1rem;
  border-radius: 0 1rem 1rem 0;
  text-decoration: none;
  position: relative;
  transition: padding 0.3s ease;
}

.sidebar_logo .liens-fixed ul .catalogue_fixe a {
  background: #C71910;

}

.catalogue_link {
  display: none;
}

.le-reseau-des-mediatheques .catalogue_link {
  display: block;
}

/* .sidebar_logo .liens-fixed ul li a:hover {
  padding-right: 7rem;
} */

.sidebar_logo .liens-fixed ul li a:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 1rem;
  transform: rotate(-45deg) translateY(-50%);
  border: solid white;
  border-width: 0 3px 3px 0;
  padding: 5px;
}

header .menus {
  background: #E5A32C;
  padding-top: 2rem;
}

header .secondaire nav {
  display: flex;
  justify-content: flex-end;
}

header .secondaire nav ul {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  margin: 0 1rem 0 0;
}

header .secondaire nav ul li {
  list-style: none;
  font-size: 0.9rem;
  margin: 0 2rem;
}

header .secondaire nav ul li a:hover {
  color: #C71910;
}

header .secondaire nav a {
  color: white;
  text-decoration: none;
  font-weight: 500;
}

header .secondaire nav .accessibilite {
  margin: 0 2rem 0 0;
}

header .secondaire nav .accessibilite a {
  border: solid 1px white;
  border-radius: 10rem;
  padding: 0.25rem 1rem;
}

header .secondaire nav .accessibilite a:hover {
  background: #C71910;
  border-color: #C71910;
}

header .secondaire nav .adresse a {
  display: block;
  width: 100%;
  /* aspect-ratio: 1; */
}



header .principal {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

header .principal nav>ul {
  display: flex;
}

header .principal nav>ul>li {
  list-style: none;
  position: relative;
  margin: 0;
  height: 5rem;
  width: 15rem;
  display: flex;
  align-items: flex-end;
  text-align: center;
}

header .principal nav>ul>li:hover.bg-taupe ul {
  background: #6C5D40;
}

header .principal nav>ul>li:hover.bg-rouge ul {
  background: #C71910;
}

header .principal nav>ul>li:hover>a {
  background: transparent;
}

header .principal nav>ul>li:hover>a span:after {
  transform: translateX(-50%) translateY(4px);
}

header .principal nav>ul>li:hover ul {
  opacity: 1;
  pointer-events: initial;
}

header .principal nav>ul>li:hover ul li {
  transform: translateY(0);
}

header .principal nav>ul>li>a {
  font-size: 1.1rem;
  line-height: 1.2;
  font-weight: 700;
  text-decoration: none;
  padding: 0 1.5rem;
  display: flex;
  width: 100%;
  height: 100%;
  justify-content: center;
  align-items: flex-end;
  text-align: center;
  background: #E5A32C;
  overflow: hidden;
  transition: background 0.3s ease font-size 0.5s;
}

header .principal nav>ul>li>a span {
  position: relative;
  display: block;
  padding: 0 0 1rem;
}

header .principal nav>ul>li>a .menu_text:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 10rem;
  transform: translateX(-50%);
  border-bottom: solid 4px white;
  transition: transform 0.3s ease;
}

header .principal nav>ul>li ul {
  opacity: 0;
  pointer-events: none;
  position: absolute;
  top: 5rem;
  left: 0;
  right: 0;
  padding: 0.5rem 1.5rem 1.5rem;
  transition: background 0.3s ease, opacity 0.3s ease;
  display: flex;
  flex-direction: column;
  text-align: left;
  font-weight: 700;
  margin: 0;
  font-size: 0.9rem;
  line-height: 1.1;
}

header .principal nav .sub-menu li .sub-menu {
  position: relative;
  top: unset;
  left: unset;
  right: unset;
  padding: 0rem;
  opacity: 0;
  height: 0;
}


header .principal nav .sub-menu li .sub-menu.open_sub {
  opacity: 1;
  height: auto;
  padding: 0.5rem 0;
  margin: 0.5rem 0 0 0;
  filter: saturate(0.6);
}

header .principal nav .sub-menu li .sub-menu.open_sub {
  background: #6C5D40;
}

header .principal nav .sub-menu li .sub-menu.open_sub li {
  padding: 0 0.5rem;
  margin: 0 0 0.5rem 0;
}

header .principal nav .sub-menu li .sub-menu.open_sub li:last-of-type {
  margin: 0;
}

header .principal nav .sub-menu li.menu-item-has-children::after {
  content: "\f078";
  font-family: 'FontAwesome';
  display: flex;
  position: absolute;
  right: 0;
  top: 2px;
}

header .principal nav .sub-menu li.menu-item-has-children.openLi::after {
  transform: rotate(-90deg);
  transition-duration: 0.5s;
}

header .principal nav>ul>li ul li {
  list-style: none;
  transform: translateY(1rem);
  margin: 0 0 0.5rem;
  transition: transform 0.3s ease;
}

@media (max-width: 1279px) {
  header .principal nav .sub-menu li.menu-item-has-children {
    flex-direction: column;
  }
}

header .principal nav>ul>li ul li a {
  text-decoration: none;
}

header .principal .burger {
  cursor: pointer;
  width: 1.75rem;
  aspect-ratio: 1;
  -webkit-mask: no-repeat center/100% url(../images/menu-burger.svg);
  mask: no-repeat center/100% url(../images/menu-burger.svg);
  background: white;
}

header .principal .burger:hover {
  background: #C71910;
}

.menu-open {
  transform: translateY(-100%);
  /* pointer-events: none; */
  background: #C71910;
  position: fixed;
  z-index: 2;
  inset: 0;
  display: flex;
  align-items: center;
  transition: transform 0.3s ease, opacity 0.3s ease;
}

.menu-open.on {
  pointer-events: initial;
  transform: none;
}

.menu-open .close_menu_rouge {
  position: absolute;
  top: 5rem;
  right: 5rem;
  width: 10rem;
  aspect-ratio: 1;
  background: no-repeat top left/auto 100% url(../images/virgule-logo.svg);
  transform: rotateY(180deg);
}

.menu-open ul {
  margin: 0;
}

.menu-open ul li {
  list-style: none;
  font-size: 3rem;
  line-height: 1;
  margin: 2rem 0 2rem 5rem;
}

.menu-open ul li a {
  display: inline-block;
  color: white;
  text-decoration: none;
  font-weight: 700;
  padding: 0 4rem 0 0;
  position: relative;
}

header {
  box-shadow: 0px 0 0px rgba(0, 0, 0, 0.5);
  transition-duration: 0.5s;
}

header.OnScroll {
  box-shadow: 4px 0 7px rgba(0, 0, 0, 0.5);
  transition-duration: 0.5s;
}

header.OnScroll #menu-menu-principal {
  margin: 0 0 0rem;
  transition-duration: 0.5s;
}

header.OnScroll .menus {
  padding-top: 0.5rem;
  transition-duration: 0.5s;
}

header.OnScroll .principal nav>ul>li>a {
  font-size: 1rem;
  transition-duration: 0.5s;
}

.link-taille-texte,
.link-contrast {
  margin: 0 1rem !important;
}

.link-taille-texte {
  margin: 0 0 0 2rem !important;
}

.link-taille-texte a .text_link,
.link-contrast a .text_link {
  display: none;
}


.link-taille-texte .more_link:before {
  content: "\f031";
  font-family: 'FontAwesome';
  font-size: 25px;
  color: #fff;
}

.link-taille-texte .more_link:hover:before {
  color: #C71910;
}

.link-contrast .more_link:before {
  content: "\f042";
  font-family: 'FontAwesome';
  font-size: 25px;
  color: #fff;
}

.link-contrast .more_link:hover:before {
  color: #C71910;
}

.link-taille-texte:hover .more_link,
.link-contrast:hover .more_link {
  filter: brightness(1) invert(0);
}

/* .menu-open ul li a:before {
  content: "";
  position: absolute;
  top: 1rem;
  right: 0;
  width: 1.4rem;
  aspect-ratio: 1;
  background: no-repeat center/contain url(../images/menu-fleche.svg);
} */

#burger-icon {
  width: 40px;
  height: 20px;
  transform: rotate(0deg);
  transition: 0.5s ease-in-out;
  cursor: pointer;
  z-index: 99;
  margin: 0;
}

#burger-icon span {
  display: block;
  position: absolute;
  height: 4px;
  width: 100%;
  background: #fff;
  border-radius: 9px;
  opacity: 1;
  left: 0;
  transform: rotate(0deg);
  transition: 0.25s ease-in-out;
}

#burger-icon span:nth-child(1) {
  top: 0px;
}

#burger-icon span:nth-child(2) {
  top: 10px;
}

#burger-icon span:nth-child(3) {
  top: 20px;
}

#burger-icon.open {
  top: -10px;
  position: relative;
}

#burger-icon.open span:nth-child(1) {
  top: 18px;
  transform: rotate(135deg);
}

#burger-icon.open span:nth-child(2) {
  opacity: 0;
  left: -60px;
}

#burger-icon.open span:nth-child(3) {
  top: 18px;
  transform: rotate(-135deg);
}

footer {
  position: relative;
  z-index: 2;
  background: #6C5D40;
  color: white;
  font-weight: 300;
}

footer ul {
  margin: 0;
}

footer ul li {
  list-style: none;
  margin: 0 0 0.5rem;
}

footer address {
  font-style: normal;
}

footer p {
  margin: 0 0 0.5rem;
}

footer a {
  color: white;
  text-decoration: none;
}

footer .logo img {
  width: 80%;
  height: auto;
}

footer .footer_wrapper {
  display: grid;
  grid-template-columns: 100%;
}

footer .social ul li.instagram a {
  background: no-repeat center/100% url(../images/instagram.svg);
}

footer .social ul li.twitter a {
  background: no-repeat center/100% url(../images/twitter.svg);
}

footer .social ul li.linkedin a {
  background: no-repeat center/100% url(../images/linkedin.svg);
}

footer .social ul li.facebook a {
  background: no-repeat center/100% url(../images/facebook.svg);
}

footer .social ul li a {
  display: block;
  width: 1.5rem;
  aspect-ratio: 1;
}

#backToTop {
  border-radius: 50%;
  background: #6C5D40;
  color: #fff;
  border: 0;
  width: 40px;
  height: 40px;
  z-index: 999;
  opacity: 0;
  bottom: -100%;
  left: 20px;
  transition-duration: 0.5s;
  transform: rotate(0);
  position: fixed;
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.3);
}

#backToTop img {
  width: 20px;
}

#backToTop.show {
  position: fixed;
  bottom: 10px;
  left: 10px;
  opacity: 1;
  transition-duration: 0.5s;
}

#backToTop.show:hover {
  transform: rotate(360deg);
  cursor: pointer;
}



main {
  min-height: 100vh;
  z-index: 9;
  position: relative;
}

/* CLASSES */
/* MARGIN */
.ptb-1 {
  padding-top: 1rem;
  padding-bottom: 1rem;

}

.mt-0 {
  margin-top: 0rem;
}

.mb-0 {
  margin-bottom: 0rem;
}

.ml-0 {
  margin-left: 0rem;
}

.mr-0 {
  margin-right: 0rem;
}

/* PADDING */
.pt-0 {
  padding-top: 0vw;
}

.pb-0 {
  padding-bottom: 0vw;
}

.pl-0 {
  padding-left: 0vw;
}

.pr-0 {
  padding-right: 0vw;
}

.px-0 {
  padding-left: 0vw;
  padding-right: 0vw;
}

/* MARGIN */
.mt-1 {
  margin-top: 1rem;
}

.mb-1 {
  margin-bottom: 1rem;
}

.ml-1 {
  margin-left: 1rem;
}

.mr-1 {
  margin-right: 1rem;
}

/* PADDING */
.pt-1 {
  padding-top: 4.1666666667vw;
}

.pb-1 {
  padding-bottom: 4.1666666667vw;
}

.pl-1 {
  padding-left: 4.1666666667vw;
}

.pr-1 {
  padding-right: 4.1666666667vw;
}

.px-1 {
  padding-left: 4.1666666667vw;
  padding-right: 4.1666666667vw;
}

/* MARGIN */
.mt-2 {
  margin-top: 2rem;
}

.mb-2 {
  margin-bottom: 2rem;
}

.ml-2 {
  margin-left: 2rem;
}

.mr-2 {
  margin-right: 2rem;
}

/* PADDING */
.pt-2 {
  padding-top: 8.3333333333vw;
}

.pb-2 {
  padding-bottom: 8.3333333333vw;
}

.pl-2 {
  padding-left: 8.3333333333vw;
}

.pr-2 {
  padding-right: 8.3333333333vw;
}

.px-2 {
  padding-left: 8.3333333333vw;
  padding-right: 8.3333333333vw;
}

/* MARGIN */
.mt-3 {
  margin-top: 3rem;
}

.mb-3 {
  margin-bottom: 3rem;
}

.ml-3 {
  margin-left: 3rem;
}

.mr-3 {
  margin-right: 3rem;
}

/* PADDING */
.pt-3 {
  padding-top: 12.5vw;
}

.pb-3 {
  padding-bottom: 12.5vw;
}

.pl-3 {
  padding-left: 12.5vw;
}

.pr-3 {
  padding-right: 12.5vw;
}

.px-3 {
  padding-left: 12.5vw;
  padding-right: 12.5vw;
}

/* MARGIN */
.mt-4 {
  margin-top: 4rem;
}

.mb-4 {
  margin-bottom: 4rem;
}

.ml-4 {
  margin-left: 4rem;
}

.mr-4 {
  margin-right: 4rem;
}

/* PADDING */
.pt-4 {
  padding-top: 16.6666666667vw;
}

.pb-4 {
  padding-bottom: 16.6666666667vw;
}

.pl-4 {
  padding-left: 16.6666666667vw;
}

.pr-4 {
  padding-right: 16.6666666667vw;
}

.px-4 {
  padding-left: 16.6666666667vw;
  padding-right: 16.6666666667vw;
}

/* MARGIN */
.mt-5 {
  margin-top: 5rem;
}

.mb-5 {
  margin-bottom: 5rem;
}

.ml-5 {
  margin-left: 5rem;
}

.mr-5 {
  margin-right: 5rem;
}

/* PADDING */
.pt-5 {
  padding-top: 20.8333333333vw;
}

.pb-5 {
  padding-bottom: 20.8333333333vw;
}

.pl-5 {
  padding-left: 20.8333333333vw;
}

.pr-5 {
  padding-right: 20.8333333333vw;
}

.px-5 {
  padding-left: 20.8333333333vw;
  padding-right: 20.8333333333vw;
}

/* MARGIN */
.mt-6 {
  margin-top: 6rem;
}

.mb-6 {
  margin-bottom: 6rem;
}

.ml-6 {
  margin-left: 6rem;
}

.mr-6 {
  margin-right: 6rem;
}

/* PADDING */
.pt-6 {
  padding-top: 25vw;
}

.pb-6 {
  padding-bottom: 25vw;
}

.pl-6 {
  padding-left: 25vw;
}

.pr-6 {
  padding-right: 25vw;
}

.px-6 {
  padding-left: 25vw;
  padding-right: 25vw;
}

/* MARGIN */
.mt-7 {
  margin-top: 7rem;
}

.mb-7 {
  margin-bottom: 7rem;
}

.ml-7 {
  margin-left: 7rem;
}

.mr-7 {
  margin-right: 7rem;
}

/* PADDING */
.pt-7 {
  padding-top: 29.1666666667vw;
}

.pb-7 {
  padding-bottom: 29.1666666667vw;
}

.pl-7 {
  padding-left: 29.1666666667vw;
}

.pr-7 {
  padding-right: 29.1666666667vw;
}

.px-7 {
  padding-left: 29.1666666667vw;
  padding-right: 29.1666666667vw;
}

/* MARGIN */
.mt-8 {
  margin-top: 8rem;
}

.mb-8 {
  margin-bottom: 8rem;
}

.ml-8 {
  margin-left: 8rem;
}

.mr-8 {
  margin-right: 8rem;
}

/* PADDING */
.pt-8 {
  padding-top: 33.3333333333vw;
}

.pb-8 {
  padding-bottom: 33.3333333333vw;
}

.pl-8 {
  padding-left: 33.3333333333vw;
}

.pr-8 {
  padding-right: 33.3333333333vw;
}

.px-8 {
  padding-left: 33.3333333333vw;
  padding-right: 33.3333333333vw;
}

/* MARGIN */
.mt-9 {
  margin-top: 9rem;
}

.mb-9 {
  margin-bottom: 9rem;
}

.ml-9 {
  margin-left: 9rem;
}

.mr-9 {
  margin-right: 9rem;
}

/* PADDING */
.pt-9 {
  padding-top: 37.5vw;
}

.pb-9 {
  padding-bottom: 37.5vw;
}

.pl-9 {
  padding-left: 37.5vw;
}

.pr-9 {
  padding-right: 37.5vw;
}

.px-9 {
  padding-left: 37.5vw;
  padding-right: 37.5vw;
}

/* MARGIN */
.mt-10 {
  margin-top: 10rem;
}

.mb-10 {
  margin-bottom: 10rem;
}

.ml-10 {
  margin-left: 10rem;
}

.mr-10 {
  margin-right: 10rem;
}

/* PADDING */
.pt-10 {
  padding-top: 41.6666666667vw;
}

.pb-10 {
  padding-bottom: 41.6666666667vw;
}

.pl-10 {
  padding-left: 41.6666666667vw;
}

.pr-10 {
  padding-right: 41.6666666667vw;
}

.px-10 {
  padding-left: 41.6666666667vw;
  padding-right: 41.6666666667vw;
}

/* MARGIN */
.mt-11 {
  margin-top: 11rem;
}

.mb-11 {
  margin-bottom: 11rem;
}

.ml-11 {
  margin-left: 11rem;
}

.mr-11 {
  margin-right: 11rem;
}

/* PADDING */
.pt-11 {
  padding-top: 45.8333333333vw;
}

.pb-11 {
  padding-bottom: 45.8333333333vw;
}

.pl-11 {
  padding-left: 45.8333333333vw;
}

.pr-11 {
  padding-right: 45.8333333333vw;
}

.px-11 {
  padding-left: 45.8333333333vw;
  padding-right: 45.8333333333vw;
}

/* MARGIN */
.mt-12 {
  margin-top: 12rem;
}

.mb-12 {
  margin-bottom: 12rem;
}

.ml-12 {
  margin-left: 12rem;
}

.mr-12 {
  margin-right: 12rem;
}

/* PADDING */
.pt-12 {
  padding-top: 50vw;
}

.pb-12 {
  padding-bottom: 50vw;
}

.pl-12 {
  padding-left: 50vw;
}

.pr-12 {
  padding-right: 50vw;
}

.px-12 {
  padding-left: 50vw;
  padding-right: 50vw;
}

/* MARGIN */
.mt-13 {
  margin-top: 13rem;
}

.mb-13 {
  margin-bottom: 13rem;
}

.ml-13 {
  margin-left: 13rem;
}

.mr-13 {
  margin-right: 13rem;
}

/* PADDING */
.pt-13 {
  padding-top: 54.1666666667vw;
}

.pb-13 {
  padding-bottom: 54.1666666667vw;
}

.pl-13 {
  padding-left: 54.1666666667vw;
}

.pr-13 {
  padding-right: 54.1666666667vw;
}

.px-13 {
  padding-left: 54.1666666667vw;
  padding-right: 54.1666666667vw;
}

/* MARGIN */
.mt-14 {
  margin-top: 14rem;
}

.mb-14 {
  margin-bottom: 14rem;
}

.ml-14 {
  margin-left: 14rem;
}

.mr-14 {
  margin-right: 14rem;
}

/* PADDING */
.pt-14 {
  padding-top: 58.3333333333vw;
}

.pb-14 {
  padding-bottom: 58.3333333333vw;
}

.pl-14 {
  padding-left: 58.3333333333vw;
}

.pr-14 {
  padding-right: 58.3333333333vw;
}

.px-14 {
  padding-left: 58.3333333333vw;
  padding-right: 58.3333333333vw;
}

/* MARGIN */
.mt-15 {
  margin-top: 15rem;
}

.mb-15 {
  margin-bottom: 15rem;
}

.ml-15 {
  margin-left: 15rem;
}

.mr-15 {
  margin-right: 15rem;
}

/* PADDING */
.pt-15 {
  padding-top: 62.5vw;
}

.pb-15 {
  padding-bottom: 62.5vw;
}

.pl-15 {
  padding-left: 62.5vw;
}

.pr-15 {
  padding-right: 62.5vw;
}

.px-15 {
  padding-left: 62.5vw;
  padding-right: 62.5vw;
}

/* MARGIN */
.mt-16 {
  margin-top: 16rem;
}

.mb-16 {
  margin-bottom: 16rem;
}

.ml-16 {
  margin-left: 16rem;
}

.mr-16 {
  margin-right: 16rem;
}

/* PADDING */
.pt-16 {
  padding-top: 66.6666666667vw;
}

.pb-16 {
  padding-bottom: 66.6666666667vw;
}

.pl-16 {
  padding-left: 66.6666666667vw;
}

.pr-16 {
  padding-right: 66.6666666667vw;
}

.px-16 {
  padding-left: 66.6666666667vw;
  padding-right: 66.6666666667vw;
}

/* MARGIN */
.mt-17 {
  margin-top: 17rem;
}

.mb-17 {
  margin-bottom: 17rem;
}

.ml-17 {
  margin-left: 17rem;
}

.mr-17 {
  margin-right: 17rem;
}

/* PADDING */
.pt-17 {
  padding-top: 70.8333333333vw;
}

.pb-17 {
  padding-bottom: 70.8333333333vw;
}

.pl-17 {
  padding-left: 70.8333333333vw;
}

.pr-17 {
  padding-right: 70.8333333333vw;
}

.px-17 {
  padding-left: 70.8333333333vw;
  padding-right: 70.8333333333vw;
}

/* MARGIN */
.mt-18 {
  margin-top: 18rem;
}

.mb-18 {
  margin-bottom: 18rem;
}

.ml-18 {
  margin-left: 18rem;
}

.mr-18 {
  margin-right: 18rem;
}

/* PADDING */
.pt-18 {
  padding-top: 75vw;
}

.pb-18 {
  padding-bottom: 75vw;
}

.pl-18 {
  padding-left: 75vw;
}

.pr-18 {
  padding-right: 75vw;
}

.px-18 {
  padding-left: 75vw;
  padding-right: 75vw;
}

/* MARGIN */
.mt-19 {
  margin-top: 19rem;
}

.mb-19 {
  margin-bottom: 19rem;
}

.ml-19 {
  margin-left: 19rem;
}

.mr-19 {
  margin-right: 19rem;
}

/* PADDING */
.pt-19 {
  padding-top: 79.1666666667vw;
}

.pb-19 {
  padding-bottom: 79.1666666667vw;
}

.pl-19 {
  padding-left: 79.1666666667vw;
}

.pr-19 {
  padding-right: 79.1666666667vw;
}

.px-19 {
  padding-left: 79.1666666667vw;
  padding-right: 79.1666666667vw;
}

/* MARGIN */
.mt-20 {
  margin-top: 20rem;
}

.mb-20 {
  margin-bottom: 20rem;
}

.ml-20 {
  margin-left: 20rem;
}

.mr-20 {
  margin-right: 20rem;
}

/* PADDING */
.pt-20 {
  padding-top: 83.3333333333vw;
}

.pb-20 {
  padding-bottom: 83.3333333333vw;
}

.pl-20 {
  padding-left: 83.3333333333vw;
}

.pr-20 {
  padding-right: 83.3333333333vw;
}

.px-20 {
  padding-left: 83.3333333333vw;
  padding-right: 83.3333333333vw;
}

/* MARGIN */
.mt-21 {
  margin-top: 21rem;
}

.mb-21 {
  margin-bottom: 21rem;
}

.ml-21 {
  margin-left: 21rem;
}

.mr-21 {
  margin-right: 21rem;
}

/* PADDING */
.pt-21 {
  padding-top: 87.5vw;
}

.pb-21 {
  padding-bottom: 87.5vw;
}

.pl-21 {
  padding-left: 87.5vw;
}

.pr-21 {
  padding-right: 87.5vw;
}

.px-21 {
  padding-left: 87.5vw;
  padding-right: 87.5vw;
}

/* MARGIN */
.mt-22 {
  margin-top: 22rem;
}

.mb-22 {
  margin-bottom: 22rem;
}

.ml-22 {
  margin-left: 22rem;
}

.mr-22 {
  margin-right: 22rem;
}

/* PADDING */
.pt-22 {
  padding-top: 91.6666666667vw;
}

.pb-22 {
  padding-bottom: 91.6666666667vw;
}

.pl-22 {
  padding-left: 91.6666666667vw;
}

.pr-22 {
  padding-right: 91.6666666667vw;
}

.px-22 {
  padding-left: 91.6666666667vw;
  padding-right: 91.6666666667vw;
}

/* MARGIN */
.mt-23 {
  margin-top: 23rem;
}

.mb-23 {
  margin-bottom: 23rem;
}

.ml-23 {
  margin-left: 23rem;
}

.mr-23 {
  margin-right: 23rem;
}

/* PADDING */
.pt-23 {
  padding-top: 95.8333333333vw;
}

.pb-23 {
  padding-bottom: 95.8333333333vw;
}

.pl-23 {
  padding-left: 95.8333333333vw;
}

.pr-23 {
  padding-right: 95.8333333333vw;
}

.px-23 {
  padding-left: 95.8333333333vw;
  padding-right: 95.8333333333vw;
}

/* MARGIN */
.mt-24 {
  margin-top: 24rem;
}

.mb-24 {
  margin-bottom: 24rem;
}

.ml-24 {
  margin-left: 24rem;
}

.mr-24 {
  margin-right: 24rem;
}

/* PADDING */
.pt-24 {
  padding-top: 100vw;
}

.pb-24 {
  padding-bottom: 100vw;
}

.pl-24 {
  padding-left: 100vw;
}

.pr-24 {
  padding-right: 100vw;
}

.px-24 {
  padding-left: 100vw;
  padding-right: 100vw;
}

/* PADDING AUTO */
.pt-auto {
  padding-top: 3.5714285714vw;
}

.pb-auto {
  padding-bottom: 3.5714285714vw;
}

.px-auto {
  padding-left: 3.5714285714vw;
  padding-right: 3.5714285714vw;
}

.py-auto {
  padding-top: 3.5714285714vw;
  padding-bottom: 3.5714285714vw;
}

.p-auto {
  padding: 3.5714285714vw;
}

@media (max-width: 1680px) {
  .pt-auto {
    padding-top: 2rem;
  }

  .pb-auto {
    padding-bottom: 2rem;
  }

  .px-auto {
    padding-left: 2rem;
    padding-right: 2rem;
  }

  .py-auto {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }

  .p-auto {
    padding: 2rem;
  }
}

/* TEXTE */
.h1,
.h2,
.h3,
.h4 {
  line-height: 1.05;
}

.h1 {
  font-size: 1.5rem;
  font-weight: 700;
}

.h2 {
  font-size: 1.3rem;
  font-weight: 700;
}

.h3 {
  font-size: 2.5rem;
  font-weight: 700;
}

.h4 {
  font-size: 2.25rem;
  font-weight: 700;
}

.h5 {
  font-size: 1.1rem;
  font-weight: 700;
}

.h6 {
  font-size: 1.2rem;
}

.h7 {
  font-size: 0.9rem;
}

.small {
  font-size: 0.8rem;
}

.small p {
  margin: 0 0 1rem;
}

/* COULEUR TEXTE */
.text-noir {
  color: #000000;
}

.text-rouge {
  color: #C71910;
}

.text-taupe {
  color: #6C5D40;
}

.text-marron {
  color: #BC7724;
}

.text-orange {
  color: #DB581D;
}

.text-blanc {
  color: #FFF;
}

.text-bold {
  font-weight: 700;

}

/* ALIGNEMENT */
.text-left {
  text-align: left;
}

.text-center {
  text-align: center;
}

.text-right {
  text-align: right;
}

/* POSITIONNEMENT */
.d-flex {
  gap: 2rem;
}

.d-flex>* {
  width: 100%;
}

.p-relative {
  position: relative;
}

/* TRANSFORM */
.text-uppercase {
  text-transform: uppercase;
}

.text-normal {
  text-transform: none;
}

/* COULEUR BG */
.bg-rouge {
  background: #C71910;
  color: white;
}

.bg-rouge .bg-blanc:not(.text-noir) {
  color: #C71910;
}

.bg-taupe {
  background: #6C5D40;
  color: white;
}

.bg-taupe .bg-blanc:not(.text-noir) {
  color: #6C5D40;
}

.bg-marron {
  background: #BC7724;
  color: white;
}

.bg-marron .bg-blanc:not(.text-noir) {
  color: #BC7724;
}

.bg-orange {
  background: #DB581D;
  color: white;
}

.bg-orange .bg-blanc:not(.text-noir) {
  color: #DB581D;
}

.bg-blanc {
  background: #FFF;
}

/* LAST P */
.last-p *:last-child {
  margin: 0;
}

/* HAUTEUR */
.h-100 {
  height: 100%;
}

/* TITRE AVEC BORDER */
.has-border span {
  position: relative;
}

.has-border span:before {
  content: "";
  position: absolute;
  bottom: -1rem;
  left: 0;
  width: 3rem;
  border-bottom: solid 1px #E5A32C;
}

/* VERTICALS */
.verticals {
  height: 100%;
}

.verticals.overlay ul li {
  cursor: pointer;
}

.verticals.overlay ul li:hover:after {
  opacity: 0;
  top: 2rem;
}

.verticals.overlay ul li:after {
  content: "";
  position: absolute;
  inset: 0;
  background: #000000;
  mix-blend-mode: color;
  transition: opacity 0.3s ease, top 0.3s ease;
}

.verticals.bg-orange ul li:before {
  border-bottom-color: #DB581D;
}

.verticals.bg-taupe ul li:before {
  border-bottom-color: #6C5D40;
}

.verticals.hover ul li:hover:before {
  border-bottom-width: 2rem;
  /* transform: rotate(180deg) translate(20px, 0px) scale(1.2); */
}

.verticals ul {
  display: flex;
  justify-content: space-between;
  list-style: none;
  height: 100%;
  margin: 0;
}

.verticals ul li {
  width: 100%;
  padding: 3rem 1rem;
  color: white;
  text-transform: uppercase;
  writing-mode: vertical-rl;
  text-orientation: mixed;
  transform: rotate(180deg);
  display: flex;
  align-items: center;
  position: relative;
  overflow: hidden;
}

.verticals ul li:before {
  content: "";
  position: absolute;
  inset: 0;
  background: no-repeat center/cover var(--bg);
  transform: rotate(-180deg);
  border-bottom: solid 0px transparent;
  transition: border 0.3s ease;
}

.verticals ul li:after {
  content: "";
  display: flex;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  position: absolute;
  transition-duration: 0.5s;
  top: 0;
  left: 0;
}

.verticals ul li:hover {
  cursor: pointer;
}

.verticals ul li:hover:after {
  background: rgba(0, 0, 0, 0);
  transition-duration: 0.5s;
}

.verticals ul li a {
  text-shadow: 0 0 15px rgba(0, 0, 0, 0.5);
  position: relative;
  z-index: 2;
  text-decoration: none;
  display: block;
}

/* IMAGES */
.image.s1x1,
.video.s1x1 {
  aspect-ratio: 1;
}

.image.s1x1 img,
.video.s1x1 img {
  -o-object-fit: cover;
  object-fit: cover;
  height: 100%;
}

.image.s16x9,
.video.s16x9 {
  aspect-ratio: 16/9;
}

.image.s16x9 img,
.video.s16x9 img {
  -o-object-fit: cover;
  object-fit: cover;
  height: 100%;
}

.image.alone,
.video.alone {
  transform: translateX(-25vw);
  width: 100vw;
  height: 26rem;
  display: flex;
  align-items: center;
  justify-content: center;
}

.image.alone a,
.video.alone a {
  background: #C71910;
  color: white;
  text-transform: uppercase;
  padding: 1rem 2rem;
  font-size: 1.5rem;
  display: inline-block;
  font-weight: 700;
  text-decoration: none;
}

.image img,
.video img {
  display: block;
  width: 100%;
  height: auto;
}

.full_image {
  overflow: hidden;
}

.full_image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.fit {
  background: no-repeat center/cover var(--bg);
}

/* BTN & GROUP */
.btn {
  display: inline-block;
  background: #C71910;
  color: white;
  padding: 1rem 1.5rem;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  font-size: 1.4rem;
  line-height: 1.1;
  text-align: center;
  font-weight: 700;
  border: solid 0.5rem #C71910;
  text-decoration: none;
  transition: background 0.3s ease, border 0.3s ease, color 0.3s ease;
}

.btn:hover {
  background: white;
  border-color: transparent;
  color: #C71910;
}

.btn-secondary {
  background: white;
  color: #C71910;
}

.btn-secondary.transparent {
  background: none;
  border-color: white;
  color: white;
}

.btn-secondary:hover {
  border-color: transparent;
}

.btn-tertiary {
  background: none;
  border-color: white;
  color: white;
}

.btn-marron {
  border-color: #BC7724;
  color: #BC7724;
  background: white;
}

.btn-rouge {
  border-color: #C71910;
  color: #C71910;
  background: white;
}

.btn-rouge-full {
  background: #C71910;
  color: #fff;
  border: 0;
  padding: 20px 30px;
  font-weight: bold;
  font-size: 28px;
  text-transform: uppercase;
  text-decoration: none;
  transition-duration: 0.5s;
}

.btn-rouge-empty {
  background: transparent;
  color: #C71910;
  border: solid 0.5rem #C71910;
  padding: 20px 30px;
  font-weight: bold;
  font-size: 28px;
  text-transform: uppercase;
  text-decoration: none;
  transition-duration: 0.5s;
}

.btn-rouge-full.with-border {
  border: solid 0.5rem #C71910;
}

.btn-rouge-empty:hover {
  transition-duration: 0.5s;
  background: #fff;
  color: #C71910;
  border: solid 0.5rem #fff;
}

.btn-rouge-full.with-border:hover {
  border: solid 0.5rem #fff;
}

.btn-rouge-full:hover {
  transition-duration: 0.5s;
  background: #fff;
  color: #C71910;
}

.btn-orange {
  border-color: #DB581D;
  color: #DB581D;
  background: white;
}

.btns p {
  margin: 0 0 0.5rem;
}

.btns .inline {
  display: flex;
}

.btns .inline.sticky .btn+.btn {
  margin: 0;
}

.btns .inline .btn+.btn {
  margin: 0 0 0 2rem;
}

/* ARIANE */
.ariane {
  color: #6C5D40;
  font-size: 0.85rem;
}

.ariane p {
  margin: 0 0 0.5rem;
}

.ariane p a {
  color: #6C5D40;
  text-decoration: none;
}

/* ACCORDEON */
.accordeon .accordeon .onglets .onglet {
  position: relative;
}

.accordeon .accordeon .onglets .onglet>p {
  width: calc(100% - 8.3333333333vw);
  height: 5rem;
  margin: 0 0 0 4.1666666667vw;
  display: flex;
  align-items: center;
  border-bottom: solid 2px white;
}

.accordeon .accordeon .onglets .onglet>p span {
  margin: 0;
  width: 100%;
}

.accordeon .accordeon .onglets .onglet>p span:after {
  width: 2rem;
}

.accordeon .accordeon .onglets .onglet .contenu {
  position: absolute;
  z-index: 3;
  top: 5rem;
  left: 0;
  right: 0;
}

.accordeon .onglets .onglet {
  display: block;
  color: white;
}

.accordeon .onglets .onglet:not([class*=bg]) {
  background: #BC7724;
}

.accordeon .onglets .onglet:not([class*=bg]):nth-child(odd) {
  background: #6C5D40;
}

.accordeon .onglets .onglet.on>p span:after {
  transform: translateY(-50%);
}

.accordeon .onglets .onglet.on>.contenu {
  pointer-events: initial;
  max-height: var(--h);
  opacity: 1;
  /*overflow: auto;*/
  transition: max-height 0.3s ease, opacity 0.3s ease 0.1s;
}



.accordeon .onglets .onglet>p,
.accordeon .onglets .onglet>h2,
.accordeon .onglets .onglet>h3 {
  letter-spacing: 1px;
  text-transform: uppercase;
  cursor: pointer;
  margin: 0;
}

.accordeon .onglets .onglet>p span,
.accordeon .onglets .onglet>h3 span,
.accordeon .onglets .onglet>h2 span {
  display: block;
  width: 100%;
  width: calc(100% - 8.3333333333vw);
  margin: 0 4.1666666667vw;
  padding: 1.25rem 2.75rem 1.25rem 0;
  position: relative;
}

.accordeon .onglets .onglet>p span:after,
.accordeon .onglets .onglet>h3 span:after,
.accordeon .onglets .onglet>h2 span:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%) rotate(-90deg);
  width: 1.85rem;
  aspect-ratio: 1;
  background: no-repeat center/100% url(../images/fleche.svg);
  transition: transform 0.3s ease;
}

.accordeon .onglets .onglet .contenu {
  pointer-events: none;
  /* opacity: 0;
  max-height: 0; */
  display: none;
  transition: max-height 0.3s ease 0.1s, opacity 0.3s ease;
}

.accordeon .onglets .onglet.on .contenu {
  display: block;
}

.accordeon-secondary .onglets .onglet>p,
.accordeon-secondary .onglets .onglet>h3,
.accordeon-secondary .onglets .onglet>h2 {
  background: no-repeat center/cover var(--bg);
}

.accordeon-secondary .onglets .onglet>p span,
.accordeon-secondary .onglets .onglet>h3 span,
.accordeon-secondary .onglets .onglet>h2 span {
  padding: 2rem 2.75rem 2rem 0;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
}

.accordeon-secondary .onglets .onglet>p span:after,
.accordeon-secondary .onglets .onglet>h3 span:after,
.accordeon-secondary .onglets .onglet>h2 span:after {
  transform: translateY(-50%) rotate(-90deg);
}

/* ONGLETS */
.tabs>ul {
  display: flex;
  margin: 0;
}

.tabs>ul li {
  width: auto;
  list-style: none;
  background: white;
  color: #C71910;
  text-transform: uppercase;
  font-size: 1.5rem;
  font-weight: 700;
  padding: 1.5rem 4.1666666667vw;
  cursor: pointer;
  display: flex;
  align-items: center;
}

.tabs>ul li.active {
  background: #C71910;
  color: white;
}

.tabs .tab {
  padding: 1rem;
  grid-template-columns: repeat(2, 1fr);
  display: none;
}

.tabs .tab.on {
  display: flex;
  flex-wrap: wrap;
}

.tabs .tab .anim_popin_link:nth-child(3n+1) {
  width: 100%;
}

.tabs .tab .anim_popin_link:nth-child(3n+2),
.tabs .tab .anim_popin_link:nth-child(3n+3) {
  width: 100%;
}

/* .tabs .tab.on {
  display: grid;
}

.tabs .tab>div:nth-child(3n+1),
.tabs .tab .anim_popin_link:nth-child(3n+1) {
  grid-column: 1/3;
}

.tabs .tab>div:nth-child(3n+2),
.tabs .tab .anim_popin_link:nth-child(3n+2) {
  grid-column: 1/2;
}

.tabs .tab>div:nth-child(3n+3),
.tabs .tab .anim_popin_link:nth-child(3n+3) {
  grid-column: 2/3;
} */

.tabs .tab>div p,
.tabs .tab .anim_popin_link,
.offres_items .offre_item_link {
  margin: 0;
  height: 13rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  background: no-repeat center/cover var(--bg);
  position: relative;
  text-shadow: 2px 2px 8px rgba(0, 0, 0, 0.5);
  cursor: pointer;
}

.tabs .tab .anim_popin_link,
.offres_items .offre_item_link {
  text-decoration: none;
}

.tabs .tab>div p:hover:before,
.tabs .tab .anim_popin_link:hover:before,
.offres_items .offre_item_link:hover:before {
  /*opacity: 0;*/
  /*background: rgba(199, 25, 16, 0.8)*/
}

#notre_offre .offres_items .offre_item_link:hover:before {
  opacity: 0;
  /* background: rgba(199, 25, 16, 0.8) */
}

.tabs .tab>div p:before,
.tabs .tab .anim_popin_link:before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(199, 25, 16, 0.0);
  mix-blend-mode: multiply;
  transition: opacity 0.3s ease;
}

.offres_items .offre_item_link:before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(129, 104, 55, 0.8);
  mix-blend-mode: color;
  transition: opacity 0.3s ease;
}

.tabs .tab>div p:after,
.tabs .tab .anim_popin_link:after,
.offres_items .offre_item_link:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 4.1666666667vw;
  transform: translateY(-50%);
  width: 3rem;
  aspect-ratio: 1;
  background: no-repeat center/100% url(../images/fleche.svg);
}

.tabs .tab>div p span,
.tabs .tab .anim_popin_link span,
.tabs .tab .anim_popin_link small,
.tabs .tab>div p small,
.offres_items .offre_item_link span,
.offres_items .offre_item_link small {
  position: relative;
  z-index: 2;
}

.tabs .tab>div p span,
.tabs .tab .anim_popin_link span,
.offres_items .offre_item_link span {
  text-transform: uppercase;
  display: block;
  padding: 0 0 0.25rem;
}

.tabs .tab>div p small,
.tabs .tab .anim_popin_link small,
.offres_items .offre_item_link small {
  font-size: 1.2rem;
  font-weight: 400;
}

.les-animations .mfp-content {
  background: transparent;
  width: 100% !important;
  margin: 60px 0;
  padding: 0;
}

.animation_popin {
  background: #C71910;
  padding: 10px;
  margin: 0 0 20% 0;
}

.animation_popin_text {
  display: flex;
  flex-direction: column;
  /* grid-template-columns: repeat(4, 1fr);
  grid-template-rows: repeat(3, 1fr);
  grid-column-gap: 10px;
  grid-row-gap: 10px; */
  margin: 10px 0 0 0;
}

.animation_popin_text_1 {
  grid-area: 1 / 1 / 2 / 3;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding: 30px;
  margin: 0 0 10px 0;
}

.animation_popin_text_2 {
  grid-area: 2 / 1 / 4 / 3;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0;
}

.animation_popin_text_2 p {
  text-align: center;
  margin: 0;
}

.animation_popin_text_4 {
  position: absolute;
  right: 0;
  padding: 30px 50px 30px 50px;
  width: 100%;
  display: flex;
  flex-direction: column;
}

.text_inscription {
  text-align: center;
  margin: 0 0 20px 0;
  font-size: 22px;
}

.coor_inscription {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  font-size: 16px;
}

.coor_inscription p {
  margin: 0;

}

.horaires_item {
  justify-content: center;
  align-items: flex-start;
  width: calc(50% - 5px);
  margin: 0 0 10px 0;
  padding: 30px;
}

.flexCol {
  display: flex;
  flex-direction: column;
}

.flexRow {
  display: flex;
  flex-direction: row;
}

.flexRow.center {
  align-items: center;
}

.flexRow.middle {
  justify-content: center;
}

.animation_popin_text_3 {
  grid-area: 1 / 3 / 4 / 5;
  padding: 30px;
  text-align: left;
}

.animation_popin_text_3 p:last-of-type {
  margin: 0;
}

/* INFOS PRATIQUES */
.infos-pratiques a:not(.btn) {
  color: #C71910;
}

.infos-pratiques h2 {
  color: #C71910;
}

.infos-pratiques .btns {
  margin-left: 4rem;
}

/* PICTO */
.horaires,
.adresse,
.telephone,
.courriel {
  padding: 0 0 0 1rem;
  position: relative;
}

.horaires.blanc:before,
.adresse.blanc:before,
.telephone.blanc:before,
.courriel.blanc:before {
  background: white;
}

.horaires:before,
.adresse:before:not(header .adresse:before),
.telephone:before,
.courriel:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 1.75rem;
  aspect-ratio: 1;
  background: #C71910;
}

.horaires:before {
  -webkit-mask: no-repeat center/100% url(../images/horaires.svg);
  mask: no-repeat center/100% url(../images/horaires.svg);
}

.adresse:before {
  -webkit-mask: no-repeat center/100% url(../images/adresse.svg);
  mask: no-repeat center/100% url(../images/adresse.svg);
}

.telephone:before {
  -webkit-mask: no-repeat center/100% url(../images/telephone.svg);
  mask: no-repeat center/100% url(../images/telephone.svg);
}

.courriel:before {
  -webkit-mask: no-repeat center/100% url(../images/courriel.svg);
  mask: no-repeat center/100% url(../images/courriel.svg);
}

.cycle_titre_danse {
  padding: 0 !important;
}

/* GRID / TABLE */
.grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-areas: "head-1 head-2 head-3" "td-1 td-2 td-3";
  gap: 0.5rem;
  padding: 1rem;
  align-items: center;
  position: relative;
  z-index: 1;
}

.grid .head-1 {
  grid-area: head-1;
  height: 100%;
}

.grid .head-2 {
  grid-area: head-2;
  height: 100%;
}

.grid .head-3 {
  grid-area: head-3;
  height: 100%;
}

.grid .td-1 {
  grid-area: td-1;
  height: 100%;
}

.grid .td-2 {
  grid-area: td-2;
  height: 100%;
}

.grid .td-3 {
  grid-area: td-3;
  height: 100%;
}

.grid .td-4 {
  grid-area: td-4;
  height: 100%;
}

.grid+.btns {
  margin-top: -0.5rem;
}

.grid-secondary {
  grid-template-areas: "head-1 head-2" "td-1 td-1";
}

.grid-secondary .td-1 {
  display: flex;
}

.grid-secondary .td-1 span {
  width: 20%;
}

.grid-tertiary {
  grid-template-columns: 0.6fr 1.4fr;
  grid-template-areas: "head-1 head-1" "td-1 td-4" "td-2 td-4" "td-3 td-4";
}

.grid-quarternary {
  padding: 0.5rem;
  grid-template-columns: 1.4fr 0.6fr;
  grid-template-areas: "td-1 td-2" "td-1 td-3";
}



.grid-quinary {
  display: grid;
  align-items: flex-start;
  grid-template-columns: repeat(9, 1fr);
  grid-gap: 0;
  padding: 0;
}

.grid-quinary .head-1 {
  grid-area: 1/1/2/10;
  height: auto;
}

.grid-quinary .td-1 {
  grid-area: 2/1/3/4;
  height: auto;
}

.grid-quinary .td-2 {
  grid-area: 2/4/3/7;
  height: auto;
}

.grid-quinary .td-3 {
  grid-area: 2/7/4/10;
  height: auto;
}

.grid-quinary .foot-1 {
  grid-area: 3/1/4/3;
  height: 100%;
  min-height: 15rem;
}

.grid-quinary .foot-2 {
  grid-area: 3/3/4/5;
  height: 100%;
  min-height: 15rem;
}

.grid-quinary .foot-3 {
  grid-area: 3/5/4/7;
  height: 100%;
  min-height: 15rem;
}

.grid-quinary ul {
  list-style: none;
}

.grid-quinary ul li {
  position: relative;
  padding: 0 0 0 3rem;
  margin: 0 0 2rem;
}

.grid-quinary ul li:before {
  background: white;
}

.grid-quinary ul li a {
  text-decoration: none;
}

.grid-quinary .btn {
  text-align: left;
}

.grid-senary {
  grid-template-columns: 0.5fr 0.75fr 1fr;
  grid-template-areas: "head-1 head-1 head-2" "td-1 td-2 td-3";
}

.danse_cycle_items.grid-senary {
  grid-template-columns: 1fr;
  grid-template-areas:
    "head-1"
    "head-2"
    "td-1"
    "td-2"
    "td-3";
}

.grid-octonary {
  grid-template-columns: repeat(2, 0.5fr) 1fr;
  font-size: 1.2rem;
}

.grid-octonary .head-1 {
  grid-area: 1/1/2/4;
  height: 26rem;
  background: no-repeat center/cover var(--bg);
}

.grid-octonary .td-1 {
  grid-area: 2/1/3/3;
  height: 100%;
}

.grid-octonary .td-1 span {
  text-transform: uppercase;
  display: block;
}

.grid-octonary .td-1 small {
  font-size: 1.2rem;
  font-weight: 400;
}

.grid-octonary .td-2 {
  grid-area: 3/1/4/2;
  height: 100%;
}

.grid-octonary .td-3 {
  grid-area: 3/2/4/3;
  height: 100%;
}

.grid-octonary .td-4 {
  grid-area: 4/1/5/2;
  height: 100%;
}

.grid-octonary .td-5 {
  grid-area: 4/2/5/3;
  height: 100%;
}

.grid-octonary .td-6 {
  grid-area: 2/3/5/4;
  height: 100%;
  font-size: 1rem;
}

.grid-octonary .foot-1 {
  grid-area: 5/3/6/4;
}

.grid-ninary {
  gap: 0;
  padding: 0;
  grid-template-columns: repeat(2, 1fr);
}

.grid-ninary .td-1 {
  grid-area: 1/1/2/2;
}

.grid-ninary .td-2 {
  grid-area: 1/2/2/3;
}

/* FILTRES */
.filtres ul {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem 0.5rem;
}

.filtres ul li {
  list-style: none;
  font-weight: 700;
}

.filtres ul li a {
  color: #000;
  text-decoration: none;
  transition-duration: 0.5s;
  border: solid 1px #000000;
  padding: 0.5rem 2rem;
}

.filtres ul li a:hover {
  color: #fff;
  background: #000;
  transition-duration: 0.5s;
}

/* ACTUALITES */


/* .actualites {
  grid-template-columns: 1fr;
  grid-template-rows: auto;
  grid-template-areas: "large" ".";
} */

/* .actualites {
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: 2rem;
} */
.actualites {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  flex-wrap: wrap;
}

.actualites .large {
  margin-bottom: 1.5rem;
}

.actualites .item_1 {
  width: 100%;
}

.actualites .item_2 {
  width: calc(100%/2 - 1rem);
}

.actualites .item_3 {
  width: calc(100%/3 - 1rem);
}

.actualites .item_4 {
  width: calc(100%/4 - 1rem);
}

.actualites .actualite .image {
  aspect-ratio: 457/240;
}

.actualites .actualite .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;

}

.couriel_txt {
  font-size: 0.9rem;
  -webkit-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;
  word-break: break-all;
}

.actualites .large {
  /* grid-area: large; */
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background: no-repeat center/cover var(--bg);
  color: white;
  width: 100%;
}

/* POPIN */
.popin-back {
  display: none;
  position: fixed;
  z-index: 2;
  inset: 0;
  background: rgba(0, 0, 0, 0.5);
}

.popin-back.on {
  display: block;
}

.popin {
  display: none;
  width: 75%;
  position: absolute;
  z-index: 2;
  top: 5rem;
  left: 50%;
  transform: translateX(-50%);
}

.popin.on {
  display: block;
}

.popin .close {
  position: absolute;
  top: 0;
  right: 0;
  width: 3.5rem;
  aspect-ratio: 1;
  -webkit-mask: no-repeat center/100% url(../images/close.svg);
  mask: no-repeat center/100% url(../images/close.svg);
  background: white;
  cursor: pointer;
}

.popin .close:hover {
  background: #C71910;
}

/* OUTILS */
.outils {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}

.outils .outil {
  width: 50%;
  text-align: center;
  color: white;
  position: relative;
}

.outils .outil img {
  height: 80px;
  margin-bottom: 30px;
}

.outils .outil:hover .infobulle {
  opacity: 1;
  pointer-events: initial;
  width: 90vw;
  padding: 1rem;
  height: 50vh;
}

.outils .outil:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 0.75rem;
  aspect-ratio: 1;
  background: no-repeat center/cover url(../images/info.svg);
}




.outils .outil .infobulle {
  position: absolute;
  z-index: 2;
  top: 100%;
  left: 0;
  bottom: 0;
  background: white;
  width: 0;
  border-radius: 1rem;
  padding: 0rem;
  color: #E5A32C;
  pointer-events: none;
  opacity: 0;
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  overflow: auto;
}

/*# sourceMappingURL=styles.css.map */

/* body {
  overflow-x: hidden;
} */

/***** HOMEPAGE *****/

.entree_home .entree_home_lien {
  position: relative;
  overflow: hidden;
}

.master_home {
  margin: 0 0 30px 0;
}

.master_home img {
  width: 100%;
}

.master_home video {
  max-width: 100%;
}

.entree_home {
  margin: 0 0 30px 0;
}

.entree_home .entree_home_img {
  display: block;
  width: 100%;
  height: auto;
}

.entree_home .entree_home_img {
  transform: scale(1);
  transition-duration: 0.8s;
}

.entree_home a:hover .entree_home_img {
  transform: scale(1.1);
  transition-duration: 0.8s;
}

.entree_home a:hover .bouton_entracte span {
  color: #C71910;
}

.entree_home a .bouton_entracte .btn_arrow_ico {
  transform: rotate(0deg);
  transition-duration: 0.5s;
}

.entree_home a:hover .bouton_entracte .btn_arrow_ico path {
  fill: #C71910;
}

.entree_home a:hover .bouton_entracte .btn_arrow_ico {
  transform: rotate(360deg);
  transition-duration: 0.5s;
}

.entree_home a:hover .nom_reseau .fleche,
.entree_home a:hover .nom_reseau .fleche.mediatheque {
  top: -110% !important;
  /* right: -70%; */
  left: 70%;
  transition-duration: 0.35s;
}

@media (min-width: 1024px) and (max-width: 1280px) {

  #inscription .flex_demi_item,
  #le_reseau .flex_demi_item {
    width: 100%;
  }
}

@media (min-width: 1024px) and (max-width: 1439px) {
  .pratiques_num_item .flex_demi_item {
    width: 100%;
  }
}

.entree_home .nom_reseau {
  position: absolute;
  top: 30px;
  left: 30px;
}

.entree_home figure {
  margin: 0;
}

.entree_home img {
  display: block;
  width: 50%;
}

.entree_home .nom_reseau .fleche {
  position: absolute;
  top: 7px;
  right: 37%;
  transition-duration: 0.35s;
  width: 30px;
}

.entree_home .nom_reseau .fleche.mediatheque {
  position: absolute;
  top: 70px;
  right: -20%;
  transition-duration: 0.35s;
}



.titre_conservatoire {
  font: 900 20px / 25px 'Roboto', sans-serif;
  background-color: #6C5D40;
  color: #FFF;
  padding: 20px 30px;
  margin: 0;
}

.entree_home h3 {
  position: absolute;
  top: 50%;
  left: 20px;
  margin: 0;
  transform: translate(0, -50%);
  text-transform: initial;
  font-size: 18px;
  text-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5);
}

.parcours_container {
  display: flex;
  flex-wrap: wrap;
}

.parcours_container .parcours_lien {
  position: relative;
  text-decoration: none;
  width: calc(100% / 2);
  min-height: 60px;
}

.parcours_container .parcours_lien:first-child {
  width: 100%;
}

.parcours_container .parcours_lien figure {
  overflow: hidden;
  height: 100%;
  position: relative;
}

.parcours_container .parcours_lien:hover figure::after {
  background: rgba(0, 0, 0, 0);
  transition-duration: 0.5s;
}

.parcours_container .parcours_lien figure::after {
  content: "";
  display: flex;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  transition-duration: 0.5s;
  position: absolute;
  top: 0;
  left: 0;
}

.parcours_container .parcours_lien figure img {
  width: 100%;
  transform: scale(1);
  transition-duration: 0.5s;
  height: 100%;
  object-fit: cover;
}

.parcours_container .parcours_lien:hover figure img {
  transform: scale(1.1);
  transition-duration: 0.5s;
}

.fablab_container {
  display: flex;
  flex-direction: column;
}

.fablab_container .fabText {
  background: #C71910;
  display: flex;
  padding: 20px;
  width: 100%;
}

.fablab_container .fabText span {
  color: #E5A32C;
}



.fablab_container .fabLien {
  width: 100%;
  min-height: 290px;
  background-size: cover !important;
  padding: 50px 50px 15px 50px;
  text-decoration: none;
  align-items: flex-end;
  display: flex;
}

.fablab_container .fabLien:hover .fauxLien span {
  color: #C71910;
}

.fablab_container .fabLien.fauxLien .btn_arrow_ico {
  transform: rotate(0);
  transition-duration: 0.5s;
}

.fablab_container .fabLien:hover .fauxLien .btn_arrow_ico {
  transform: rotate(360deg);
  transition-duration: 0.5s;
}

.fablab_container .fabLien:hover .fauxLien .btn_arrow_ico path {
  fill: #C71910;
}

.fablab_container .fabLien .fauxLien {
  display: flex;
  flex-direction: row;
  width: 100%;
  align-items: center;
}

.fablab_container .fabLien .fauxLien span {
  color: #fff;
  font-size: 40px;
  font-weight: 900;
}

.fablab_container .fabLien .fauxLien figure {
  margin-left: 30px;
}

.fablab_container .fabLien .fauxLien .btn_arrow_ico {
  width: 40px;
}

.fablab_container .fabItem .fabLienImage {
  display: block;
  width: 100%;
  height: 100%;
}

.fablab_container .fabItem .fabLienImage img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.fablab_container .fabText h2 {
  display: flex;
  align-items: flex-end;
  flex-direction: row;
  text-transform: initial;
  margin: 0;
}

.fablab_container .fabText h2 span:first-child {
  color: #C71910;
  text-shadow:
    -1px -1px 0 #E5A32C,
    1px -1px 0 #E5A32C,
    -1px 1px 0 #E5A32C,
    1px 1px 0 #E5A32C;
  font-size: 60px;
  line-height: 60px;
  text-transform: uppercase;

}

.fablab_container .fabText h2 span:nth-child(2) {
  color: #E5A32C;
  font-size: 34px;
  line-height: 39px;
  text-transform: initial;
  margin-left: 25px;
}

.les_horaires {
  background: #C71910;
  margin: 30px 0;
}

.les_horaires h2 {
  color: #fff;
  margin: 0;
  text-align: center;
  font-size: 1.2rem;
  padding: 30px 0;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
}

.les_horaires h2:hover {
  cursor: pointer;
}

.les_horaires h2:hover figure {
  transform: rotate(-180deg);
}

.les_horaires h2 figure {
  margin: 0 0 0 30px;
  display: flex;
  transform: rotate(180deg);
}

.les_horaires .horaires_container {
  display: flex;
  flex-direction: column;
  background: #C71910;
  padding: 50px;
}

.les_horaires .horaires_container .horaires_logo {
  width: 100%;
  margin: 0 0 40px 0;
}

.les_horaires .horaires_container .horaires_logo img {
  margin: 0 auto;
  display: flex;
  width: 100%;
}

.les_horaires .horaires_container .horaires_txt {
  width: 100%;
  color: #fff;
}

.info_btn {
  background-color: #fff;
  padding: 10px 20px;
  color: #C71910;
  text-transform: uppercase;
  text-decoration: none;
  font-weight: bold;
  border: solid 1px transparent;
  transition-duration: 0.5s;
}

.info_btn:hover {
  border: solid 1px #fff;
  background: transparent;
  color: #fff;
  transition-duration: 0.5s;
}

.bouton_entracte {
  display: flex;
  flex-direction: row;
  width: 100%;
  align-items: center;
  position: absolute;
  z-index: 999;
  bottom: 0px;
  left: 30px;
}

.bouton_entracte span {
  color: #fff;
  font-size: 20px;
  font-weight: 900;
}

.bouton_entracte figure {
  margin-left: 20px;
}

.les_plaquettes {
  display: flex;
  flex-direction: column;
}

.presentation_plaquette {
  background: #BC7724;
  padding: 30px;
  height: fit-content;
  width: 100%;
}

@media (max-width: 767px) {
  .presentation_plaquette h2 {
    font-size: 40px;
  }

  .bouton_entracte .btn_arrow_ico {
    width: 40px;
  }
}

.presentation_plaquette p {
  color: #fff;
}

.plaquette_items .logo_plaquette {
  width: 50%;
}

.plaquette_items .open_plaquettes {
  width: 40px;
}

.documents_plaquette {
  width: 100%;
}

.documents_plaquette .plaquette_items_accordeon {
  background-color: #fff;
}


.plaquette_items {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding: 10px 50px;
  min-height: 120px;
}

.plaquette_items_accordeon a {
  padding: 10px 30px;
  display: flex;
  flex-direction: row;
  align-items: center;
}

.plaquette_items_accordeon a figure svg {
  width: 20px;
}

.plaquette_items_accordeon h3,
.plaquette_items_accordeon figure {
  margin: 0;
}

.plaquette_items_accordeon figure {
  margin: 0 30px 0 0;
}

.plaquette_items_accordeon h3 {
  text-transform: initial;
  font-size: 15px;
}

.apostrophe_doc .plaquette_items {
  background-color: #6C5D40;
}

.apostrophe_doc .plaquette_items:hover {
  background-color: #594B34;
  /* Une couleur plus foncée */
  cursor: pointer;
}

.mediatheques_doc .plaquette_items {
  background-color: #DB581D;
}

.mediatheques_doc .plaquette_items:hover {
  background-color: #B84716;
  /* Une couleur plus foncée */
  cursor: pointer;
}

.conservatoire_doc .plaquette_items {
  background-color: #C71910;
}

.conservatoire_doc .plaquette_items:hover {
  background-color: #A9160D;
  /* Une couleur plus foncée */
  cursor: pointer;
}

.apostrophe_doc .plaquette_items_accordeon h3 {
  color: #6C5D40;
}

.conservatoire_doc .plaquette_items_accordeon h3 {
  color: #C71910;
}

.mediatheques_doc .plaquette_items_accordeon h3 {
  color: #DB581D;
}

.apostrophe_doc .download_icon path {
  stroke: #6C5D40;
}

.conservatoire_doc .download_icon path {
  stroke: #C71910;
}

.mediatheques_doc .download_icon path {
  stroke: #DB581D;
}

.videotheques {
  padding: 70px 0;
}

.videotheques h2 {
  color: #C71910;
  font-size: 40px;

}

.videotheques_wrapper {
  display: flex;
}

.videotheque_item {
  position: relative;
}

.videotheque_item.nb_1 {
  width: calc(100%);
}

.videotheque_item.nb_2 {
  width: calc(100%/2);
}

.videotheque_item.nb_3 {
  width: calc(100%/3);
}

.videotheque_item.nb_4 {
  width: calc(100%/4);
}

.videotheque_item.nb_5 {
  width: calc(100%/5);
}

.videotheque_item.nb_6 {
  width: calc(100%/6);
}

.videotheque_item.nb_7 {
  width: calc(100%/7);
}

.videotheque_item.nb_8 {
  width: calc(100%/8);
}

.videotheque_item.nb_9 {
  width: calc(100%/9);
}


.videotheque_item:hover img {
  transform: scale(1.7);
  filter: brightness(0.8);
  transition-duration: 0.5s;
}

.videotheque_item :after {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.videotheque_item:hover :after {
  content: url(../images/picto_player.svg);
}

.videotheque_item figure {
  margin: 0;
  overflow: hidden;
}

.videotheque_item figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.0);
  transition-duration: 0.5s;
  display: block;
}

.mfp-content iframe {
  max-width: 100%;
}

.mfp-content {
  position: relative;
  margin: 0 auto;
  background: #DB581D;
  width: 100% !important;
  padding: 50px;
  text-align: center;
}

.mfp-close-btn-in .mfp-close {
  color: #fff;
}

.les_breves h2 {
  color: #C71910;
}



.breves_container {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
}

.breve_item:nth-of-type(1),
.breve_item:nth-of-type(2),
.breve_item:nth-of-type(3),
.breve_item:nth-of-type(4) {
  grid-area: unset;
}

/* .div1 { grid-area: 1 / 1 / 2 / 2; } */
.breve_item {
  min-height: 380px;
  position: relative;
  padding: 50px;
  margin: 5px 10px 5px 10px;
}

.breve_item:nth-of-type(1) h3,
.breve_item:nth-of-type(4) h3 {
  color: #C71910;
}

.breve_item:nth-of-type(2) h3,
.breve_item:nth-of-type(3) h3 {
  color: #6C5D40;
}

.breve_item:nth-of-type(1) .breve_item_content,
.breve_item:nth-of-type(4) .breve_item_content {
  background-color: #C71910;
}

.breve_item:nth-of-type(2) .breve_item_content,
.breve_item:nth-of-type(3) .breve_item_content {
  background-color: #6C5D40;
}

.breve_item .breve_item_content {
  position: absolute;
  bottom: 30px;
  left: 30px;
  padding: 30px;
  opacity: 0;
  transform-origin: bottom left;
  transform: scaleX(0) scaleY(0);
  opacity: 1;
  transition: transform 0.3s ease-out opacity 1s;
  overflow: scroll;
  scrollbar-color: white transparent;
  /* Pour Firefox */
}

.breve_item .breve_item_content::-webkit-scrollbar {
  width: 10px;
}

.breve_item .breve_item_content::-webkit-scrollbar-thumb {
  background-color: white;
  border-radius: 10px;
}

.breve_item .breve_item_content::-webkit-scrollbar-track {
  background-color: transparent;
}

.breve_item.active .breve_item_content {
  transform: scaleX(1) scaleY(1);
  max-width: calc(100% - 60px);
  max-height: calc(100% - 60px);
  transition: transform 0.3s ease-out;
}

.breve_item_content .titre,
.breve_item_content p {
  color: #fff;
  margin: 0;
}

.breve_item_content .titre {
  font-size: 25px;
  font-weight: bold;
  margin: 0 0 10px 0;
}

.breve_item h3 {
  font: 900 25px/30px 'Roboto', sans-serif;
  background: #fff;
  padding: 10px 30px;
  margin: 0;
  position: absolute;
  bottom: 30px;
  left: 30px;
}


.conservatoire_intro,
.parcours_libre,
.classe_horaires_amenages_items,
.flex_row_items {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.conservatoire_intro .conservatoire_intro_item,
.classe_horaires_amenages_item,
.flex_demi_item,
.flex_half {
  width: 100%;
}

.parcours_libre {
  margin: 60px 0;
}

.parcours_eveil {
  display: flex;
  flex-direction: column;
  margin: 60px 0;
}

.parcours_eveil .parcours_eveil_item {
  width: 100%;
}

.parcours_eveil .parcours_eveil_item h2,
.parcours_diplomants_text_items .parcours_diplomants_text_item h2 {
  font-size: 1.3rem;
}


.horaire_bg_blanc {
  display: flex;
  flex-direction: column;
}

.parcours_eveil .parcours_eveil_item figure {
  margin: 0;
  width: 100%;
  height: 100%;
}


.parcours_eveil .parcours_eveil_item figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.parcours_diplomants_text_items {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.parcours_diplomants_text_items .parcours_diplomants_text_item {
  width: 100%;
}

.parcours_diplomants_text_items .parcours_diplomants_text_item h3 {
  font: bold 30px/35px 'Roboto', sans-serif;
  margin-bottom: 0;
}

.parcours_libre_text {
  width: 100%;
}

.parcours_libre_links {
  width: 100%;
}

.intervention_scolaire {
  margin-bottom: 60px;
}

.infos_pratiques {
  margin: 60px 10px;
}

.infos_pratiques .h1 {
  font-size: 1.6rem;
}

.infos_pratiques h2 {
  color: #C71910;
}

.item_with_ico {
  display: flex;
  flex-direction: row;
  margin-bottom: 40px;
}

.item_with_ico figure {
  margin: 0 30px 0 0;
}

.item_with_ico .item_txt h3 {
  font: bold 20px/32px 'Roboto', sans-serif;
  color: #000;
  margin-bottom: 0;
}

.link_items {
  margin-top: 40px;
}

.link_items .item_btn {
  background-color: #C71910;
  border: solid 5px #C71910;
  text-transform: uppercase;
  padding: 15px;
  text-decoration: none;
  margin: 0 0 20px 0;
  font-weight: bold;
  text-align: center;
}

.link_items .item_btn:hover {
  background-color: transparent;
  color: #C71910;
  transition-duration: 0.5s;
}

.item_btn:nth-of-type(2) {
  background-color: transparent;
  border: solid 5px #C71910;
  color: #C71910;
  order: 3;
}

.item_btn:nth-of-type(2):hover {
  background-color: #C71910;
  color: #fff;
  transition-duration: 0.5s;
}

.link {
  margin-top: 30px;
  padding: 0 30px 0 0;
  text-transform: uppercase;
  color: #C71910;
  width: fit-content;
  display: block;
}

.link:hover {
  text-decoration: none;
}

main h1 {
  font-size: 1.5rem;
  margin-bottom: 2.5rem;
}

.accordeon p.h4 {
  font-size: 0.65rem;
}

.video_container {
  display: flex;
  flex-direction: column-reverse;
}

.video_container .video_item {
  width: 100%;
}

.video_container .video_item iframe {
  width: 100%;
  height: 210px;
  display: block;
}

.video_container .texte_item {
  width: 100%;
  background-color: #594B34;
  color: #594B34;
  text-shadow:
    -1px -1px 0 #fff,
    1px -1px 0 #fff,
    -1px 1px 0 #fff,
    1px 1px 0 #fff;
  font-size: 50px;
  line-height: 55px;
  text-transform: uppercase;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding: 20px;
}

.video_container .texte_item p {
  margin: 0;
}

.temoin_item {
  display: flex;
  flex-direction: column;
}

.temoin_item .texte_item {
  color: #fff;
  width: 100%;
}

.temoin_item figure {
  margin: 0;
}

.temoin_item figure img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}

.temoignages .owl-dots {
  display: flex;
  justify-content: center;
  margin: 10px 0;
}

.temoignages .owl-dots .owl-dot {
  width: 15px;
  height: 15px;
  border-radius: 50%;
  margin: 10px;
  background-color: #fff;
}

.temoignages .owl-dots .owl-dot.active {
  background-color: #DB581D;
}

.temoin_item:nth-of-type(1) .texte_item {
  background-color: #DB581D;
}

.temoin_item:nth-of-type(2) .texte_item {
  background-color: #C71910;
}

.temoin_item:nth-of-type(3) .texte_item {
  background-color: #6C5D40;
}

.temoin_item .texte_item .nom {
  margin: 0;
  font-style: italic;
  text-align: right;
}

/* INSTRUMENTS */

.page_instrument {
  padding: 0 10px;
}

.instruments_container {
  display: flex;
  flex-direction: row;
  margin: 0 0 5rem 0;
  /* justify-content: space-between; */
  flex-wrap: wrap;
}

.instrument_item {
  width: 100%;
  aspect-ratio: 1/1;
  list-style: none;
  margin: 0 0 10px 0;
}

.instrument_item a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  padding: 30px;
  height: 100%;
}

.instrument_item figure {
  margin: 0 0 10px 0;
  width: fit-content !important;
  height: 150px;

}

.instrument_item figure img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.instrument_item:hover figure.contour {
  display: none;
}

.instrument_item:hover figure.blanc {
  display: block;

}

.instrument_item figure.blanc {
  display: none;
}

.instrument_item h3 {
  font: bold 30px/35px 'Roboto', sans-serif;
  text-transform: uppercase;
  color: #fff;
  text-align: center;
  margin: 30px 0 0 0;
}

/* SINGLE INSTRUMENTS */

.presentation {
  display: flex;
  flex-direction: column;
}

.presentation_texte {
  width: 100%;
}

.presentation_texte img {
  width: 230px;
  margin: 0 auto 40px auto;
}

.presentation_galerie {
  width: 100%;
  display: flex;
  flex-direction: row;
}

.presentation_galerie figure {
  width: calc(100% / 4);
  margin: 0;
}

.presentation_galerie .nb_item_1 {
  width: 100%;
}

.presentation_galerie .nb_item_2 {
  width: 50%;
}

.presentation_galerie .nb_item_3 {
  width: 33.33%;
}

.presentation_galerie .nb_item_4 {
  width: 25%;
}

.presentation_galerie figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.info_instrument {
  margin: 60px 0;
}

.cours_collectif {
  margin: 60px 0;
  display: flex;
  flex-direction: column-reverse;
}

.cours_collectif figure {
  margin: 0;
  width: 100%;
}

.cours_collectif figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.cours_collectif_texte {
  width: 100%;
}

.cours_Collectif_items {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.cours_Collectif_items .cours_collectif_item {
  width: 100%;

}

.info_instrument {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 20px;
}

.entete_info {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  padding: 10px 0;
}

.entete_info_item {
  width: 100%;
  text-align: center;
}

.body_info_instrument {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.body_info_item {
  width: 100%;
  padding: 30px;
  margin: 0 0 10px 0;
}

/* FORMATION MUSICALE */
.cycle_formation {
  display: flex;
  flex-direction: column;
}

.cycle_item.open {
  width: 100%;
  transition: 0.5s;
}

.cycle_item {
  width: 100%;
  transition: 0.5s;
  display: flex;
  flex-direction: column;
}

.cycle_item.open .cycle_item_details {
  width: 100%;
  height: auto;
  opacity: 1;
  transition: width 0.5s ease-out, opacity 0.25s ease-out 0.25s;
}

.cycle_item .cycle_item_details {
  width: 0;
  height: 0;
  opacity: 0;
  /* max-height: 300px; */
  overflow: hidden;
}


.cycle_item.rouge {
  background-color: rgb(199, 25, 16);
}

.cycle_item.marron {
  background-color: #B84716;
}

.cycle_item.taupe {
  background-color: #6C5D40;
}

.cycle_titre {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding: 40px;
  height: 100%;
  width: 100%;
}

.cycle_item.open .cycle_titre {
  width: 0;
  height: 0;
  padding: 0;
  overflow: hidden;
}

.cycle_titre:hover {
  cursor: pointer;
}

.cycle_titre .icon_cycle {
  margin: 0 0 auto 0;
}

.cycle_titre h3 {
  writing-mode: horizontal-tb;
  text-orientation: mixed;
  transform: rotate(0deg);
  margin: 0;
}

.cycle_titre figure {
  margin: 0;
}

.cursus_header {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  margin: 0 10px;
}

.cycle_item_demi,
.cycle_item_full {
  background-color: #fff;
}

.cycle_item_demi {
  width: calc(50% - 5px);
  padding: 0;
  margin: 0;
}

.cursus_cycle .cursus_item {
  display: flex;
  flex-direction: row;
  width: calc(100% - 20px);
  margin: 10px;
}

.cursus_cycle .cursus_item:nth-of-type(1) {
  margin: 0px 10px 10px 10px;
}



.cursus_cycle .cursus_item .cycle_item_full:nth-of-type(3) {
  width: calc(100%/2);
  /* padding: 30px 30px 30px 0; */
}

.cursus_cycle .cursus_item .cycle_item_full:nth-of-type(1),
.cursus_cycle .cursus_item .cycle_item_full:nth-of-type(2) {
  width: calc(50%/2);
  /* padding: 30px; */
}

.cycle_item.open .cycle_item_demi {
  margin: 10px 0;
  padding: 30px;
}

.cycle_item.open .cursus_cycle .cursus_item .cycle_item_full {
  padding: 0;
}

.cycle_item.open .cursus_cycle .cursus_item .cycle_item_full {
  padding: 30px;
}

.ensemble_titre {
  margin: 2rem 0;
}

/* THEATRE */
.theatre_cours_collectif {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
}

.theatre_cours_collectif_items {
  width: 100%;
}

.p-30 {
  padding: 30px;
}



.theatre_item {
  display: flex;
  flex-direction: column;
  padding: 15px 10px;
}

.theatre_item_1,
.theatre_item_2,
.theatre_item_3,
.theatre_item_4,
.theatre_item_5,
.theatre_item_6,
.theatre_item_libre .theatre_item_1,
.theatre_item_libre .theatre_item_2,
.theatre_item_libre .theatre_item_3,
.theatre_item_libre .theatre_item_4,
.theatre_item_libre .theatre_item_5,
.theatre_item_libre .theatre_item_6 {
  margin: 0 0 10px 0;
}

.theatre_item_libre {
  display: flex;
  flex-direction: column;
  padding: 15px 10px;
}

.theatre_item_titre {
  margin: 0;
  line-height: 1.45rem;
}

.theatre_item_titre small {
  font-size: 20px;
}

.theatre_item_2 p,
.theatre_item_3 p,
.theatre_item_4 p {
  margin: 0;
}

.theatre_parcours_libre {
  margin: 50px 0;
}

/* DANSE */

.video_header {
  max-width: 100%;
  display: block;
}

.dans_col_contenu {
  display: flex;
  flex-direction: column;
}

.dans_col_item {
  width: 100%;
  padding: 20px
}

.dans_col_item p {
  margin: 0;
}

.marge-bas p {
  margin-bottom: 30px;
}

/* PARTENAIRES */
.partenaires_item {
  display: flex;
  flex-direction: column;
}

.partenaires_item h2 {
  padding: 30px 30px 30px 30px;
  margin: 0;
}

.partenaires_item_texte,
.partenaires_visuel {
  width: 100%;
}

.partenaires_item_texte_wrapper {
  display: flex;
  flex-direction: column;
}

.partenaires_item_texte_wrapper .col_texte {
  padding: 0 30px;
}

.partenaires_visuel img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.link_item_info {
  text-align: center;
  width: fit-content;
  margin: 40px 0 0 0;
  color: #C71910;
}

.les_sites_du_conservatoire {
  display: flex;
  flex-direction: column;
}

.sites_item {
  width: 100%;
}

.sites_item_image img {
  display: block;
  width: 100%;
}

html.fontSize {
  font-size: 150% !important
}

html.contrast {
  filter: invert(1) hue-rotate(180deg);
}

html.contrast div,
html.contrast body,
html.contrast header,
html.contrast section,
html.contrast a,
html.contrast p,
html.contrast span {
  background: #000;
  color: #fff;
}

.danse_cycle_items .cursus_cycle .cursus_item {
  margin: 10px;
}

.danse_cycle_items .cycle_item_demi {
  padding: 10px;
}

.onglet_switch {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  border-bottom: solid 2px #fff;
  margin: 0 1rem;
  padding: 20px 0;
}

.onglet_switch:hover {
  cursor: pointer;

}

.onglet_switch .icon_cycle {
  margin: 0 60px 0 0;
}

.onglet_switch .icon_cycle img {
  width: 50px;
  height: 50px;
}

.onglet_switch .icon_arrow {
  margin: 0 0 0 auto;
}

.onglet_switch .icon_arrow img {
  width: 40px;
  height: 40px;
  transform: rotate(90deg);
  transition: transform 0.3s ease;
}

.onglet_switch .icon_arrow.ouvert img {
  transform: rotate(180deg);
  transition: transform 0.3s ease;
}

.onglet_switch h3 {
  margin: 0;
  font-size: 35px;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
}

.onglet_contenu {
  margin: 0 2rem;
}

.onglet_contenu .cycle_items {
  background: #fff;
}

.onglet_contenu .cycle_header {
  display: flex;
  flex-direction: column;
}

.onglet_contenu .cycle_header .cycle_header_item {
  width: 100%;
  padding: 20px 40px;
}

.onglet_contenu .cycle_body .cycle_body_items {
  flex-direction: column;

}

.onglet_contenu .cycle_body .cycle_body_items .cycle_annes,
.onglet_contenu .cycle_body .cycle_body_items .cycle_horaires {
  width: 100%;
  padding: 20px 40px;
}

.onglet_contenu.bg-taupe .cycle_body .cycle_body_items .cycle_annes,
.onglet_contenu.bg-taupe .cycle_body .cycle_body_items .cycle_horaires,
.onglet_contenu.bg-taupe .cycle_body .cycle_body_items .cycle_adresse,
.onglet_contenu.bg-taupe .cycle_header .cycle_header_item {
  border: solid 2.5px #6C5D40;
}

.onglet_contenu.bg-taupe .cycle_body .cycle_body_items {
  border-bottom: solid 9px #6C5D40;
}

.onglet_contenu.bg-orange .cycle_body .cycle_body_items .cycle_annes,
.onglet_contenu.bg-orange .cycle_body .cycle_body_items .cycle_horaires,
.onglet_contenu.bg-orange .cycle_body .cycle_body_items .cycle_adresse,
.onglet_contenu.bg-orange .cycle_header .cycle_header_item {
  border: solid 2.5px #DB581D;
}

.onglet_contenu.bg-orange .cycle_body .cycle_body_items {
  border-bottom: solid 9px #DB581D;
}

.onglet_contenu.bg-rouge .cycle_body .cycle_body_items .cycle_annes,
.onglet_contenu.bg-rouge .cycle_body .cycle_body_items .cycle_horaires,
.onglet_contenu.bg-rouge .cycle_body .cycle_body_items .cycle_adresse,
.onglet_contenu.bg-rouge .cycle_header .cycle_header_item {
  border: solid 2.5px #C71910;
}

.onglet_contenu.bg-rouge .cycle_body .cycle_body_items {
  border-bottom: solid 9px #C71910;
}

.onglet_contenu.bg-marron .cycle_body .cycle_body_items .cycle_annes,
.onglet_contenu.bg-marron .cycle_body .cycle_body_items .cycle_horaires,
.onglet_contenu.bg-marron .cycle_body .cycle_body_items .cycle_adresse,
.onglet_contenu.bg-marron .cycle_header .cycle_header_item {
  border: solid 2.5px #BC7724;
}

.onglet_contenu.bg-marron .cycle_body .cycle_body_items {
  border-bottom: solid 9px #BC7724;
}

.onglets_container {
  position: relative;
  z-index: 999;
}

.onglet_contenu .cycle_body .cycle_body_items .cycle_annes {
  display: flex;
  align-items: center;
}

.onglet_contenu .cycle_body .cycle_body_items .cycle_adresse {
  width: 100%;
  padding: 20px 40px;
}

.onglet_contenu {
  height: 0;
  transform: scaleY(0);
  transform-origin: top;
  transition: transform 0.5s ease-in-out;
  opacity: 0;
  transition: opacity 0.5s ease-in-out;
}

.onglet_contenu.ouvert {
  transform: scaleY(1);
  opacity: 1;
  height: fit-content;
}

.tableau_cour_langue .h3,
.tableau_cour_langue p {
  margin: 0;
}

.tableau_cour_langue .body_info_item {
  display: flex;
  align-items: center;
}

.langue_cours_container {
  margin: 0;
}

.modalite_container {
  justify-content: flex-start !important;
}

.modalite_container p {
  margin: 0 80px 0 0;
}

.link_modalites_pdf {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  height: 100%;
  text-decoration: none;
  background: transparent;
  transition-duration: 0.5s;
}

.link_modalites_pdf .texte_pdf_link {
  margin: 0 20px 0 0;
  font-size: 30px;
  font-weight: bold;
}

.link_modalites_pdf:hover {
  background: #C71910;
  color: #fff;
  transition-duration: 0.5s;
}

.link_modalites_pdf:hover img {
  filter: brightness(0) invert(1);
}

.menu_rouge {
  display: flex;
}

.menu_rouge button {
  border: 0;
  background: transparent;
  margin-right: 20px;
}

.menu_rouge button:hover svg path {
  fill: #C71910;
  cursor: pointer;
}

.menu_rouge button svg:hover {
  cursor: pointer;
}

.search-form {
  padding: 0 15px 0 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

form#searchform {
  width: 0;
  overflow: hidden;
}

.search-form input[type="submit"] {
  background: url(../images/ico-loupe.svg) no-repeat center center transparent;
  width: 34px;
  height: 34px;
  border: 0;
  text-indent: -9999px;
}

.search-form input[type="submit"]:hover {
  cursor: pointer;
}

.search-form input[type="text"] {
  background: transparent;
  height: 40px;
  border: 0;
  width: calc(100% - 34px);
  appearance: none;
  color: #fff;
}

.search-form input[type="text"]:focus {
  outline: none;
}

.search-form form div {
  border: solid 3px #fff;
  border-radius: 50px;
  padding: 2px 10px;
  width: 300px;
  display: flex;
  align-items: center;
}


/* .search-form .open_search{

}*/
.search-form #close_search {
  transform: translate(0px, 5px);
  width: 28px;
  height: 28px;
  display: none;
  margin-right: 0;
}

.search-form #close_search svg path {
  fill: #fff;
}

.search-form #close_search:hover svg path {
  fill: #C71910;
}

.secondaire li.text-rouge a {
  color: #C71910 !important;
}

.secondaire .adresse {
  padding: 0;
  margin: 0;
}

/* PLAN DU SITE */
.plan-du-site ul {
  padding-left: 4.1666666667vw;
}

.plan-du-site ul .children {
  padding-left: 1rem;
}

.plan-du-site ul li {
  list-style-type: none;
}

.plan-du-site ul li a {
  text-decoration: none;
}

.plan-du-site ul li a:hover {
  color: #C71910;
}

/* CONTACT */
.contact .contact_container form {
  display: flex;
  flex-direction: column;
  width: 60%;
  padding: 0 60px;
}

.contact .contact_container form label {
  display: flex;
  flex-direction: column;
  margin: 10px 0;
}

.contact .contact_container form label {
  color: #fff;
  font-weight: bold;
}

.contact .contact_container form input[type='text'],
.contact .contact_container form input[type='tel'],
.contact .contact_container form input[type='email'] {
  background: transparent;
  height: 60px;
  border: solid 3px #fff;
  padding: 0 10px;
  color: #fff;
  appearance: none;
  width: 100%;
}

select {
  background: transparent;
  height: 60px;
  border: solid 3px #fff;
  padding: 0 10px;
  color: #fff;
  appearance: none;
  width: 100%;
}

select option {
  background-color: #6C5D40;
  color: #fff;
}

.label_select select {
  position: relative;
  z-index: 2;
}

.label_select .wpcf7-form-control-wrap {
  position: relative;
}

.label_select .wpcf7-form-control-wrap::after {
  content: "\f107";
  font-family: "Font Awesome 5 Free";
  font-size: 50px;
  color: #fff;
  position: absolute;
  right: 10px;
  top: 0;
  z-index: 1;
}

.contact .contact_container form input::placeholder {
  color: #fff;
}

.contact .contact_container form input:focus {
  border: solid 3px #C71910;
}

.contact .contact_container form textarea {
  background: transparent;
  border: solid 3px #fff;
  padding: 10px;
  color: #fff;
  appearance: none;
  width: 100%;
}

.wpcf7-list-item-label {
  color: #fff;
  font-size: 12px;
}

.wpcf7-acceptance .wpcf7-list-item label {
  display: flex;
  flex-direction: row !important;
}

.wpcf7-acceptance .wpcf7-list-item {
  margin: 0;
}

.wpcf7-acceptance .wpcf7-list-item input[type='checkbox'] {
  margin: 0 10px 0 0;
}


.btn_send_mail {
  margin: 0;
  width: 100%;
}

.banner_page {
  position: relative;
}

.banner_page .banner_page_float {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.pratiques_num_item_left,
.pratiques_num_item_right {
  width: 100%;
}

.pratiques_num_item_right {
  padding: 0 20px 20px 20px;
}

/* PRATIQUE NUMÉRIQUE */
.pratique_num_galerie {
  display: flex;
  flex-direction: column;
  padding: 20px;
}

.pratique_num_galerie .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.galerie_3 .image {
  width: 100%;
}

.galerie_2 .image {
  width: 100%;
}

.galerie_1 .image {
  width: 100%;
}

.pratiques_num_item h2 {
  margin: 0;
  padding: 30px 0 30px 20px;
}

.bouton {
  background-color: #fff;
  border: 0;
  text-transform: uppercase;
  padding: 20px 40px;
  text-decoration: none;
  font-weight: bold;
  font-size: 28px;
  line-height: 32px;
  margin: 0px 0 0 30px;
  display: inline-block;
  width: 82%;
}

.bouton:hover img {
  opacity: 0;
}

.bouton.marron:hover {
  color: #C71910;
  transition-duration: 0.5s;
}

.bouton.rouge:hover {
  color: #BC7724;
  transition-duration: 0.5s;
}

.bouton.marron {
  color: #BC7724;
  transition-duration: 0.5s;
}

.bouton.rouge {
  color: #C71910;
  transition-duration: 0.5s;
}

.pratiques_num_item_left_text {
  padding: 0 20px;
}

.pratiques_num_item_right .pratiques_num_coordonnees .pratiques_num_coordonnees_item {
  display: flex;
  flex-direction: row;
  margin: 0 0 50px 0;
}

.pratiques_num_item_right .pratiques_num_coordonnees .pratiques_num_coordonnees_item .image {
  margin-right: 20px;
}

.pratiques_num_item_right .pratiques_num_coordonnees .pratiques_num_coordonnees_item .image img {
  width: 36px;
  height: 36px;
}

.animation_chapo h2 {
  font-size: 30px;
  line-height: 35px;
  text-transform: initial;
  margin: 0 0 20px 0;
}

.animation_chapo .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.animation_chapo .text-blanc {
  padding: 30px;
}

/* MEDIATHEQUES HOME */
.mediatheques_home h1 {
  color: #6C5D40;
}

.les_espaces_container {
  display: flex;
  flex-direction: column;
}

.espace_item {
  width: 100%;
  padding: 50px 20px 20px 20px;
}

.espace_item h3 {
  margin: 0 0 15px 0;
}

.espace_item:nth-of-type(1) {
  background-color: #C71910;
}

.espace_item:nth-of-type(2) {
  background-color: #6C5D40;
}

.espace_item:nth-of-type(3) {
  background-color: #BC7724;
}

.espace_item:nth-of-type(4) {
  background-color: #DB581D;
}

.espace_item:nth-of-type(1) .visuel_espace {
  border: solid 5px #C71910;
}

.espace_item:nth-of-type(2) .visuel_espace {
  border: solid 5px #6C5D40;
}

.espace_item:nth-of-type(3) .visuel_espace {
  border: solid 5px #BC7724;
}

.espace_item:nth-of-type(4) .visuel_espace {
  border: solid 5px #DB581D;
}

.espace_item .espace_item_body {
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, 1) 10%);
  height: 100%;
}

.espace_item .espace_item_body a {
  text-decoration: none;
}

.espace_item_body .visuel_espace {
  width: fit-content;
}

.espace_item_body .visuel_espace img {
  display: block;
}

.espace_item_body_chapo {
  align-items: flex-end;
  margin: 0 0 40px 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.media_item {
  margin-top: 20px;
}

.media_item img {
  width: 35px;
  margin: 0 30px 0 0;
}

.offres_items {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}

.offre_item_link.full {
  width: 100%;
}

.offre_item_link.demi {
  width: 100%;
}

.inscription_mediatheque p,
.reseau_mediatheque p {
  margin: 0 0 20px 0;
}

.inscription_mediatheque ul,
.reseau_mediatheque ul {
  padding-left: 30px;
}

.reseau_mediatheque h3 {
  color: #C71910;
  font-size: 25px;
  text-transform: initial;
  margin: 0 0 20px 0;
}

.inscription_mediatheque .btn {
  margin: 20px;
}

.inscription_mediatheque .link {
  text-align: center;
}

/* PAGE ÉQUIPE */
.equipe_container {
  display: grid;
  grid-template-columns: 50% 50%;
}

.equipe_container .image img {
  aspect-ratio: 480/341;
}

.equipe_container .equipe_item_desc {
  height: 100%;
  padding: 1rem 1rem 1.6rem 1rem;
}

.equipe_container .equipe_item_desc a {
  margin-top: auto;
}

.parcours_eveil.no-mt {
  margin: 0 0 60px 0;
}

/* PAGE KIOSQUE */
.kisoque_container {
  display: grid;
  grid-template-columns: 100%;
  /* gap: 5rem; */
}

.kisoque_container .image {
  aspect-ratio: 1/1;
  overflow: hidden;
  max-width: 30%;
}

.kisoque_container .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1);
  transition-duration: 0.5s;
}

.kisoque_container a {
  margin: 0 0px 20px 0;
  text-decoration: none;
}

.text-underline {
  text-decoration: underline;
}

.kisoque_container .kisoque_info {
  width: 70%;
  padding: 1.5rem 3rem;
  display: flex;
  flex-direction: column;
}

.kisoque_container .kisoque_info h2 {
  margin: 0 0 10px 0;
}

.kisoque_container a:hover img {
  transform: scale(1.2);
  transition-duration: 0.5s;
}

.kisoque_container a:hover .text-underline {
  text-decoration: none;
}

.infos_pratiques.no_mb {
  margin-bottom: 0;
}

.les-pratiques-numeriques .mfp-content {
  background: #fff;
  color: #BC7724;
}

.bulle_link {
  text-decoration: none;
}

.bulle_link img {
  transform: scale(1);
  transition-duration: 0.5s;
}

.bulle_link:hover img {
  transform: scale(0.8);
  transition-duration: 0.5s;

}

.agenda_item_desc {
  /* height: calc(100% - 337px) !important; */
  flex-grow: 1;
}

.agenda_lieu {
  margin: auto 0 0 0;
}

.evenement_item_link {
  text-decoration: none;
  display: flex;
  flex-direction: column;
  height: 100%;
}

.event_image {
  overflow: hidden;
  /* aspect-ratio: 480/341; */
  position: relative;
  min-height: 341px;
}

.evenement_item_link h2 {
  border-bottom: solid 1px #E5A32C;
  margin: 0 0 20px 0;
  padding: 20px 0;
  border-top: solid 1px #E5A32C;
  line-height: 1.8rem;
}

.evenement_item_link .event_image img {
  transform: scale(1);
  transition-duration: 0.5s;
  width: 100%;
  height: 100%;
  object-fit: cover;
  /* height: 341px; */
}

.evenement_item_link:hover .event_image img {
  transform: scale(1.2);
  transition-duration: 0.5s;
}

.genre_evenement {
  position: absolute;
  top: 0;
  left: 0;
  padding: 10px;
  color: #fff;
  font-weight: bold;
}

.evenement_item_link .agenda_item_desc {
  padding: 2rem !important;
}

.date_horaires {
  margin: 0 0 20px 0;
  font-weight: bold;
}

.filter_container {
  margin: 20px 0;
  width: 100%;
}

.filter_container label {
  font-weight: bold;
  color: #fff;
  margin: 0 30px 30px 30px;
  width: 300px;
  position: relative;
}

.filter_container label select {
  appearance: none;
  border: solid 3px #fff;
  padding: 10px;
  background: url();
  margin: 10px 0 0 0;
  color: #fff;
  background: no-repeat 96%/60% url(../images/fleche.svg) #E5A32C;
  background-size: 25px;
}

/* .filter_container label:after {
  font-family: 'FontAwesome';
  content: "\f078";
  font-size: 25px;
  color: #fff;
  position: absolute;
  bottom: 5px;
  right: 11px;
} */

.event-images:not(.one_image) {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, minmax(0, 1fr));
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  max-height: 60vh;
  overflow: hidden;
}


.event-images a:not(.one_image a) {
  display: block;
  height: 100%;
}

.event-images a img:not(.one_image a img) {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.event-images a:nth-of-type(1) {
  grid-area: 1 / 1 / 3 / 3;
}

.event-images a:nth-of-type(2) {
  grid-area: 1 / 3 / 2 / 4;
}

.event-images a:nth-of-type(3) {
  grid-area: 2 / 3 / 3 / 4;
}


.one_image {
  max-height: 60vh;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.one_image a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  position: relative;
  overflow: hidden;
}

.one_image a::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-size: cover;
  background-position: center;
  filter: blur(5px);
  z-index: 1;
  transform: scale(1.1);
}

.one_image img {
  max-height: 60vh;
  width: auto;
  object-fit: contain;
  position: relative;
  z-index: 2;
}

.one_image a::before {
  background-image: var(--bg);
  /* autres propriétés */
}

.evenement.agenda .mfp-figure:after {
  background: transparent !important;
  box-shadow: unset !important;
}

.evenement.agenda .mfp-image-holder .mfp-close {
  right: 4px;
}

.evenement.agenda .mfp-counter {
  display: none;
}

.event-details {
  padding: 1.5rem;
  margin: 10px 0 2rem 0;
}

.information_event_container {
  display: flex;
  flex-direction: column;
}

.information_event_container .information_event_text {
  padding: 0 1rem 0 0;
}

.information_event_container .information_event_text p {
  margin: 0 0 1rem 0;
  display: flex;
  align-items: center;
}

.information_event_container .information_event_text i {
  margin-right: 1rem;
}

.information_event_container .information_event_map,
.information_event_container .information_event_text {
  width: 100%;
}

.information_event_container .information_event_map a.text-noir {
  color: #000 !important;
}

.event-images,
.event_image {
  position: relative;
}

.event-images.annule::before,
.annule .event_image::before {
  content: "ANNULÉ";
  position: absolute;
  left: -55px;
  top: 55px;
  width: 250px;
  background: #C71910;
  padding: 10px;
  font-weight: bold;
  color: #fff;
  box-shadow: 0 0 10px rgba(0, 0, 0, .2), inset 0 5px 30px hsla(0, 0%, 100%, .2);
  padding: 3px 10px;
  transform: rotate(-45deg);
  text-align: center;
}

.annule .event_image::before {
  z-index: 9;
  right: -55px;
  bottom: 55px;
  top: unset;
  left: unset;
}

.btn_billet {
  background: transparent;
  color: #fff;
  border: solid 3px #fff;
  text-decoration: none;
  padding: 0.4rem 1rem;
  transition-duration: 0.5s;
}

.btn_billet:hover {
  background: #fff;
  color: #594B34;
  transition-duration: 0.5s;
}

.accessibilite i {
  margin: 10px 30px 10px 0 !important;
  font-size: 30px;
}

/* .event-description {
  font-weight: bold;
} */
.onglet.on span::after {
  transform: translateY(-50%) rotate(0deg) !important;
}

.linkToInfo a {
  display: block;
  background-color: #C71910;
  border: solid 5px #C71910;
  text-transform: uppercase;
  padding: 15px;
  text-decoration: none;
  margin: 0 0 20px 0;
  font-weight: bold;
  width: fit-content;
}

.linkToInfo a:hover {

  background-color: transparent;
  color: #C71910;
  transition-duration: 0.5s;
}

.animation_popin .image {
  max-height: 500px;
  height: 500px;
}


.animation_popin .image img {
  height: 100%;
  object-fit: cover;
}

.la-formation-musicale .accordeon .onglet h4 {
  margin: 0 0 1rem 0;
  font-size: 1.4rem;
}

.entree_home_lien .nom_reseau {
  width: 100%;
}

.entree_home_lien .nom_reseau .logo {
  width: 240px;
  height: fit-content;
}

.entree_home .nom_reseau .fleche {
  right: unset;
  left: 270px;
}

.entree_home .nom_reseau .fleche.mediatheque {
  right: unset !important;
  left: 260px;
  top: 28px;
}

.grecaptcha-badge {
  display: none;
}

@media (min-width: 768px) {
  .entree_home_lien .nom_reseau .logo {
    width: 360px;
  }

  .entree_home .nom_reseau .fleche {
    right: unset;
    left: 380px;
  }

  .entree_home .nom_reseau .fleche.mediatheque {
    right: unset !important;
    left: 380px;
    top: 40px;
  }
}

@media (min-width: 1024px) {
  .entree_home_lien .nom_reseau .logo {
    width: 390px;
  }

  .entree_home .nom_reseau .fleche {
    right: unset;
    left: 410px;
    top: 19px;
  }

  .entree_home .nom_reseau .fleche.mediatheque {
    right: unset !important;
    left: 410px;
    top: 44px !important;
  }
}

@media (min-width: 1280px) {
  .entree_home_lien .nom_reseau .logo {
    width: 460px;
  }

  .entree_home .nom_reseau .fleche {
    right: unset;
    left: 480px;
    top: 19px;
  }

  .entree_home .nom_reseau .fleche.mediatheque {
    right: unset !important;
    left: 480px;
    top: 44px !important;
  }
}

@media (min-width: 1440px) {
  .entree_home_lien .nom_reseau .logo {
    width: 470px;
  }

  .entree_home .nom_reseau .fleche {
    right: unset;
    left: 500px;
    top: 19px;
  }

  .entree_home .nom_reseau .fleche.mediatheque {
    right: unset !important;
    left: 500px;
    top: 44px !important;
  }
}

@media (min-width: 1680px) {
  .entree_home_lien .nom_reseau .logo {
    width: 610px;
  }

  .entree_home .nom_reseau .fleche {
    right: unset;
    left: 630px;
    top: 19px;
  }

  .entree_home .nom_reseau .fleche.mediatheque {
    right: unset !important;
    left: 630px;
    top: 67px !important;
  }
}


.accordeon .cycle_items .cycle_header .cycle_header_item.h3 {
  font-size: 1.1rem;
}

.onglet_switch h4 {
  font-size: 0.9rem;
}

.onglet_switch .icon_cycle {
  margin: 0 20px 0 0;
}

.theatre_item_titre {
  line-height: 2rem;
  font-size: 1.8rem;
}

.modalites_inscription+.btns .inline {
  flex-wrap: wrap;
}

.modalites_inscription+.btns .inline .btn {
  width: 50%;
}

.accordeon .onglets .onglet.on>.contenu {
  min-height: unset;
}

@media (max-width: 767px) {

  .accordeon .onglets .onglet>p span,
  .accordeon .onglets .onglet>h3 span,
  .accordeon .onglets .onglet>h2 span {
    font-size: 1.5rem;
  }

  .home h1 {
    margin: 1rem;
  }

  .onglet_switch h3 {
    font-size: 1.1rem;
  }
}

@media (max-width: 1279px) {
  .accordeon .onglets .contenu .d-flex {
    flex-direction: column;
  }
}

@media (min-width: 768px) {
  .onglet_switch h4 {
    font-size: 2rem;
  }
}

@media (min-width: 1024px) {
  .accordeon .cycle_items .cycle_header .cycle_header_item.h3 {
    font-size: 1.5rem;
  }
}

@media (min-width: 1440px) {
  .accordeon .cycle_items .cycle_header .cycle_header_item.h3 {
    font-size: 2rem;
  }
}

@media (min-width: 1680px) {
  .modalites_inscription+.btns .inline .btn {
    width: fit-content;
  }
}

.videotheque_item a figure {
  position: relative;
}

.videotheque_item a:hover figure::before {
  background: rgba(0, 0, 0, 0);
  transition-duration: 0.5s;

}

.videotheque_item a figure::before {
  z-index: 9;
  content: "";
  display: flex;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  transition-duration: 0.5s;
  position: absolute;
  top: 0;
  left: 0;
}

.accueil .fabLien.fabItem {
  position: relative;
}

.accueil .fabLien.fabItem .fauxLien {
  z-index: 9;
}

.accueil .fabLien.fabItem:hover::after {
  transition-duration: 0.5s;
  background: rgba(0, 0, 0, 0);
}

.accueil .fabLien.fabItem::after {
  content: "";
  display: flex;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  position: absolute;
  transition-duration: 0.5s;
  top: 0;
  left: 0;
}

.dark_hover .onglets .h2 {
  position: relative;
}

.dark_hover .onglets .h2:hover::after {
  opacity: 0;
}

.dark_hover .onglets .h2 span {
  position: relative;
  z-index: 2;
}

.dark_hover .onglets .h2::after {
  content: "";
  display: flex;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  transition-duration: 0.5s;
  position: absolute;
  top: 0;
  left: 0;
}