@charset "utf-8";
/* CSS Document */

@font-face {
  font-family: 'Matrix'; /*a name to be used later*/
  src: url(../fonts/Emigre-MatrixIIOT-Reg.otf); /*URL to font*/
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: 'Matrix'; /*a name to be used later*/
  src: url(../fonts/Emigre-MatrixIIOT-ExtraBold.otf); /*URL to font*/
  font-weight: 800;
}

@font-face {
  font-family: 'Proxima-Nova'; /*a name to be used later*/
  src: url(../fonts/MarkSimonson-ProximaNovaA.otf); /*URL to font*/
  font-weight: 400;
}

@font-face {
  font-family: 'Proxima-Nova'; /*a name to be used later*/
  src: url(../fonts/MarkSimonson-ProximaNovaABold.otf); /*URL to font*/
  font-weight: 700;
  font-style: normal;
}

@font-face {
  font-family: 'Proxima-Nova'; /*a name to be used later*/
  src: url(../fonts/MarkSimonson-ProximaNovaAExtrabold.otf); /*URL to font*/
  font-weight: 800;
}

:root {
  --main-color-jaune: #fdbf28;
  --main-color-vert: #0b3a2d;
  --main-color-beige: #ede9da;
  --main-color-beige-pale: #f6f4ec;

  --main-font-body: 'Proxima-Nova', sans-serif;;
  --main-font-cursive: 'Matrix', serif;
}


* {margin: 0; padding: 0; border: 0;}

body { font-family: var(--main-font-body); color: var(--main-color-vert);}


/* MENU */

.menu-toggle {display: none !important;}


header .menu { position: fixed; width: 406px; color: var(--main-color-vert); z-index: 99; top: 0; right: 0; height: 100%;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

[data-aos="anim-menu"] {
  margin-right: -480px;
}
[data-aos="anim-menu"].aos-animate {
  margin-right: -345px;
  transition-duration: 400ms !important;
  transition-timing-function: ease-in-out !important;
}

#sub { list-style: none; z-index: 0; padding: 100px 40px 40px 40px; overflow: hidden; background: var(--main-color-beige); height: calc(100% - 80px);}
#sub ul { list-style: none;}
#sub ul a {text-decoration: none; display: block;}

#menu-2 > li { font-family: var(--main-font-cursive); }
#menu-2 > li span {padding-bottom: 10px; display: block; font-size: 25px;letter-spacing: 2px; text-transform: uppercase;}
#menu-2 > li ul {margin-bottom: 30px;}
#menu-2 > li ul li {}
#menu-2 > li ul li a {padding: 5px 0; font-family: var(--main-font-body); color: var(--main-color-vert); font-size: 18px;}
#menu-2 > li ul li a:hover {font-weight: bold;}
#menu-2 > li:last-child {border: 0; }
#menu-2 .menu-item-has-children {position: relative;}
#menu-2 .menu-item-has-children:after {content: "+"; position: absolute; right: 15px; top: 11px;}
#menu-2 .menu-item-has-children.focus:after {content: "-";}
#menu-2 .menu-item-has-children .sub-menu {}
#menu-2 .menu-item-has-children.focus .sub-menu {display: block;}

header .checked { margin-right: 0 !important;}

.hamburger { position: relative; z-index: 99;
  list-style: none;
  float: left;
  margin: 0;
  cursor: pointer;
  padding: 15px 15px 20px 15px;
  width: 30px;
  overflow: hidden;
  height: calc(100% - 35px);
  background-color: var(--main-color-beige);
}

.hamburger:after {content: "menu"; position: absolute; z-index: 1; color: var(--main-color-vert); font-size: 30px; text-transform: uppercase; letter-spacing: 3px; transform: rotate(-90deg); top: 90px; margin-left: -32px; font-family: var(--main-font-cursive);}
.checked .hamburger:after {font-size: 18px; margin-left: -12px; opacity: 0;}

.hamburger:hover {}

.hamburger li {
  width: 28px;
  height: 3px;
  background: var(--main-color-vert);
  margin: 5px 0 0;
  padding: 0;
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  -moz-transition: all 333ms cubic-bezier(0.5, 0, 0, 1);
  -o-transition: all 333ms cubic-bezier(0.5, 0, 0, 1);
  -webkit-transition: all 333ms cubic-bezier(0.5, 0, 0, 1);
  transition: all 333ms cubic-bezier(0.5, 0, 0, 1);
}

.checked .hamburger li.first {
  -moz-transform: rotate(-135deg) translateY(-11px);
  -ms-transform: rotate(-135deg) translateY(-11px);
  -webkit-transform: rotate(-135deg) translateY(-11px);
  transform: rotate(-135deg) translateY(-11px);
  margin-left: 4px;
  width: 35px
}
.checked .hamburger li.second {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
}
.checked .hamburger li.third {
  -moz-transform: rotate(135deg) translateY(11px);
  -ms-transform: rotate(135deg) translateY(11px);
  -webkit-transform: rotate(135deg) translateY(11px);
  transform: rotate(135deg) translateY(11px);
  margin-left: 4px;
  width: 35px
}

#menu-connexion {color: var(--main-color-beige) !important; padding-left: 40px !important; padding-right: 10px !important; background: url("../images/icons/connexion.svg") left 10px center no-repeat var(--main-color-vert); background-size: 20px auto; display: inline-block !important; font-weight: bold; margin-top: 5px;}

#menu-social { list-style: none; bottom: 10px; left: 11px; position: absolute; z-index: 99;}
#menu-social li {}
#menu-social a { display: block; width: 35px; height: 35px; margin: 0 0 15px 2px;}
#menu-social a:hover img { width: 100%; height: auto;}

header {z-index: 2; position: relative;}
#header-branding {display: flex; align-items: center; padding: 1.5vw 2vw;}
#logo-main { padding-right: 40px; border-right: 1px solid var(--main-color-vert);}
#logo-main img {width: 250px; height: auto;}
#header-titre {padding-left: 40px; text-transform: uppercase; font-size: 28px;}
#header-titre span {font-weight: bold;}

.header-branding-pale { color: var(--main-color-vert); position: absolute;}
.header-branding-pale #logo-main {border-right: 1px solid var(--main-color-vert);}
.header-branding-pale img:last-child {display: none;}

.header-branding-fonce { color: #fff; position: relative; background-color: var(--main-color-vert);}
.header-branding-fonce #logo-main {border-right: 1px solid #fff;}
.header-branding-fonce img:first-child {display: none;}

#bandeau-top {height: 90vh; overflow: hidden; margin-bottom: 80px; position: relative; z-index: 0;}
#bandeau-top h1 { color: var(--main-color-vert); font-family: var(--main-font-cursive); position: absolute; top: 30%; left: 50%; transform: translate(-50%, -50%); font-size: 100px; text-transform: uppercase; font-weight: bold; z-index: 1;}
#bandeau-top-image {height: 100%; width: 100%;}
#bandeau-top-image img {object-fit: cover; height: 100%; width: 100%;}
#bandeau-top-credit {position: absolute; top: 90vh; padding: 5px 0 0 40px; font-size: 14px;}
#bandeau-top-credit span {font-weight: bold;}


#bandeau-top-image::before, #bandeau-top-image::after {position: absolute; content: ""; aspect-ratio: 1 / 1; background-size: cover;}
#bandeau-top-image::before  {width: 20%; background: url("../images/textures/ronds2.svg") no-repeat; left: 0; bottom: 50px; margin-left: -8%;
-webkit-animation: rotating 50s linear infinite;
  -moz-animation: rotating 50s linear infinite;
  -ms-animation: rotating 50s linear infinite;
  -o-animation: rotating 50s linear infinite;
  animation: rotating 50s linear infinite;}
#bandeau-top-image::after { width: 30%; background: url("../images/textures/ronds1.svg") no-repeat; right: 0; top: 20%; margin-right: -10%;
-webkit-animation: rotating 100s linear infinite;
  -moz-animation: rotating 100s linear infinite;
  -ms-animation: rotating 100s linear infinite;
  -o-animation: rotating 100s linear infinite;
  animation: rotating 100s linear infinite;}


#contenu {width: 80%; margin: 0 auto;}


.cols {display: flex;}
.col {width: 50%;}
.col:first-child {padding-right: 5%;}
.col:last-child {padding-left: 5%;}

.lien-carre {display: inline-block; padding: 30px 40px; font-size: 25px; text-transform: uppercase; font-weight: bold; text-decoration: none; letter-spacing: 2px;}
.lien-carre-vert { background-color: var(--main-color-vert); color: var(--main-color-beige);}
.lien-carre-vert:hover { background-color: var(--main-color-beige); color: var(--main-color-vert);}
.lien-carre-beige { background-color: var(--main-color-beige); color: var(--main-color-vert);}
.lien-carre-beige:hover { background-color: var(--main-color-vert); color: var(--main-color-beige);}

.rep-cta {background-size: cover; background-position: center center; background-attachment: fixed; background-repeat: no-repeat; padding: 4vw 0; text-align: center; color: var(--main-color-vert); position: relative; width: 100vw; left: 50%; margin-left: -50vw; margin-bottom: 5vw; overflow: hidden;}
.rep-cta:after {position: absolute; content: ""; background-color: var(--main-color-beige); opacity: 0.7; width: 100%; height: 100%; top: 0; left: 0; z-index: 0;}
.rep-cta a {z-index: 1; position: relative; background-color: var(--main-color-beige); text-decoration: none; color: var(--main-color-vert); font-weight: bold; font-size: 20px; letter-spacing: 1px; display: inline-block; padding: 30px 40px;}
.rep-cta a:hover {background-color: var(--main-color-vert); color: var(--main-color-beige);}
.rep-cta-titre1, .rep-cta-titre2 {font-family: var(--main-font-cursive);}
.rep-cta-titre1, .rep-cta-titre2, .rep-cta p {padding: 0 30%; z-index: 1; position: relative;}
.rep-cta-titre1 { font-size: 30px; margin-bottom: 50px;}
.rep-cta-titre2 { font-size: 45px; font-weight: bold; margin-bottom: 30px; line-height: 1.5;}
.rep-cta p {font-size: 26px; text-align: center; font-weight: bold;}
.rep-cta p:last-child {padding-bottom: 0;}

.rep-cta-fonce {color: #fff;}
.rep-cta-fonce::after {background-color: #000; opacity: 0.4;}

.rep-cta-fonce a {background-color: var(--main-color-vert); color: var(--main-color-beige);}
.rep-cta-fonce a:hover {background-color: var(--main-color-beige); color: var(--main-color-vert);}

.rep-cta::before {position: absolute; content: ""; aspect-ratio: 1 / 1; background-size: cover; width: 25%; background: url("../images/textures/ronds2.svg") no-repeat; left: 0; bottom: 0; margin-left: -10%; margin-bottom: -10%; z-index: 1;
-webkit-animation: rotating 50s linear infinite;
  -moz-animation: rotating 50s linear infinite;
  -ms-animation: rotating 50s linear infinite;
  -o-animation: rotating 50s linear infinite;
  animation: rotating 50s linear infinite;}


#portail-infolettre {}
#portail-infolettre h2 {font-family: var(--main-font-cursive); font-size: 80px; font-weight: bold; text-transform: uppercase; margin-bottom: 40px;}
#portail-infolettre p {font-size: 30px; padding-bottom: 30px;}


.form-pc {}
.form-pc input {display: block; font-size: 24px; padding: 20px;}
.form-pc input::placeholder {color: var(--main-color-vert); opacity: 1;}
.form-pc input[type=text], .form-pc input[type=email] {background-color: var(--main-color-beige); color: var(--main-color-vert); margin-bottom: 30px; width: 70%; border: 0;}
.form-pc input[type=text]:focus, .form-pc input[type=email]:focus {outline: none;}
.form-pc input[type=text]:focus::placeholder, .form-pc input[type=email]:focus::placeholder {opacity: 0.2;}
.form-pc input[type=text]:first-of-type {width: 30%;}
.form-pc input[type=submit] {background-color: var(--main-color-vert); background-image: none; color: var(--main-color-beige); font-weight: bold; padding-left: 100px; padding-right: 100px; text-transform: uppercase; border: 0; border-radius: 0;}
.form-pc input[type=submit]:hover {background-color: var(--main-color-beige); color: var(--main-color-vert); cursor: pointer;}



.video-youtube {
    position: relative;
    width: 100%;
    margin: 3vw 0;
    height: 0;
    padding-bottom: 56.25%;
}
.video-youtube iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}



p, #contenu ul, #contenu-fiche ul, .contenu-fiche ul {font-size: 22px; padding-bottom: 30px; line-height: 1.5; text-align: justify;}
#contenu ul, #contenu-fiche ul, .contenu-fiche ul {padding-left: 20px; list-style: none;}
#contenu ul li:before, #contenu-fiche ul li:before, .contenu-fiche ul li:before {content: "-"; text-indent: -5px; margin-right: 7px;}
p a, #contenu ul a, #contenu-fiche ul a, .contenu-fiche ul a {font-weight: bold; text-decoration: none; color: var(--main-color-vert);}
p a:hover, #contenu ul a:hover, #contenu-fiche ul a:hover, .contenu-fiche ul a:hover {text-decoration: underline;}

h1, h2 {font-family: var(--main-font-cursive); line-height: 1.1;}
h1 {font-size: 120px; margin-bottom: 20px; margin-top: 0; font-weight: normal;}
.page-node-type-article-culture h1 {font-size: 60px; font-weight: bold; margin-bottom: 30px;}
h2 {font-size: 40px; font-weight: normal; margin-bottom: 30px; margin-top: 40px;}
h2:first-child {margin-top: 0;}
h3 {font-size: 28px; font-weight: bold; margin-bottom: 15px;}


/* Customize the label (the container) */
.form-pc .js-form-type-checkbox label {
  display: block;
  position: relative;
  padding-left: 35px;
  margin-bottom: 40px;
  cursor: pointer;
  font-size: 16px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* Hide the browser's default checkbox */
.form-pc .js-form-type-checkbox input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

/* Create a custom checkbox */
.form-pc .js-form-type-checkbox label:before {
    content:"";
  position: absolute;
  top: 0;
  left: 0;
  height: 25px;
  width: 25px;
  background-color: var(--main-color-beige);
}

/* On mouse-over, add a grey background color */
.form-pc .js-form-type-checkbox:hover label:before {
  background-color: #cdc6ac;
}

/* When the checkbox is checked, add a blue background */
.form-pc .js-form-type-checkbox input:checked ~ label:before {
  background-color: var(--main-color-vert);
}

/* Create the checkmark/indicator (hidden when not checked) */
.form-pc .js-form-type-checkbox label:after {
  content: "";
  position: absolute;
  display: none;
}

/* Show the checkmark when checked */
.form-pc .js-form-type-checkbox input:checked ~ label:after {
  display: block;
}

/* Style the checkmark/indicator */
.form-pc .js-form-type-checkbox label:after {
  left: 9px;
  top: 5px;
  width: 5px;
  height: 10px;
  border: solid white;
  border-width: 0 3px 3px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}


.accordion {}
.ui-accordion .ui-accordion-header .ui-icon { display: none;}
.ui-accordion .ui-accordion-header a { padding-left: 0 !important; padding-right: 30px !important; text-decoration: none; font-size: 40px;}
.accordion .ui-accordion-header:after { position: absolute; content: "+"; right: 0; top: 16px; font-weight: bold !important; color: var(--main-color-orange); font-size: 35px;}
.accordion .ui-accordion-header.ui-state-active:after { content: "-";}
.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default, .c-accordion__item { border-bottom: 0 !important; border-top: 1px solid var(--main-color-vert);}
.accordion h2 { margin: 0; padding: 20px 0 !important; position: relative;}
.accordion h2:first-child {border-top: 0;}
.accordion .ui-state-default a, .accordion .ui-state-default a:link, .accordion .ui-state-default a:visited { color: var(--main-color-vert); display: block;}
.accordion .ui-state-active a { font-weight: bold;}
.ui-accordion .ui-accordion-content { padding: 0 0 40px 0;}


footer {padding: 5vw 10%; background: url("../images/textures/taches1-blanc.svg") left 20% center no-repeat var(--main-color-beige-pale); background-size: auto 110%; align-items: center; position: relative; z-index: 1;}
#footer-menu {}
#footer-menu a {display: block; text-decoration: none; letter-spacing: 1px; text-transform: uppercase; margin-bottom: 40px; font-size: 30px; color: var(--main-color-vert); font-family: var(--main-font-cursive);}
#footer-menu a:last-child {margin-bottom: 0;}
#footer-infos {text-align: right;}
#footer-infos p { text-align: right;}
#footer-infos p a {font-weight: bold; color: var(--main-color-vert); text-decoration: none;}
#footer-infos-logos {margin-top: 40px;}
#footer-infos-logos img {width: 100%; height: auto; display: block;}


/*------------------------- RÉPERTOIRE --------------------------*/


#zone-repertoire {}
#zone-repertoire-tri {display: flex; flex-wrap: wrap; justify-content: center; background-color: var(--main-color-beige); padding: 50px 30px; border-radius: 20px; margin: 0 20px 80px 20px;}
.zone-repertoire-select { font-family: var(--main-font-cursive); font-size: 28px; letter-spacing: 1px; text-transform: uppercase;}
.zone-repertoire-select-inner {display: inline-block; position: relative; padding-right: 50px;}
/*.zone-repertoire-select-inner:after {content: ""; position: absolute; right: 0; top: 50%; transform: translateY(-50%); width: 0; height: 0; border-left: 10px solid transparent; border-right: 10px solid transparent; border-top: 10px solid var(--main-color-vert); opacity: 0.5;}*/
.zone-repertoire-select-inner:hover { cursor: pointer;}
.zone-repertoire-select-inner:hover:after {opacity: 1;}

#zone-repertoire-liste {}
.views-infinite-scroll-content-wrapper {width: 100%; display: flex; flex-wrap: wrap; justify-content: center;}
.zone-repertoire-element {width: calc(25% - 40px); padding: 20px; text-decoration: none; position: relative;}
.zone-repertoire-element-photo {aspect-ratio: 1 / 1; background-color: var(--main-color-beige);}
.zone-repertoire-element-photo img {object-fit: cover; width: 100%; height: 100%; display: block;}
.zone-repertoire-element-texte {background-color: var(--main-color-vert); color: var(--main-color-beige); text-align: center; padding: 20px; font-size: 22px;}
.zone-repertoire-element-texte-cat {font-weight: bold;}
.zone-repertoire-element-texte-nom {}

.zone-repertoire-element:hover .zone-repertoire-element-photo img {opacity: 0.5;}
.zone-repertoire-element:hover .zone-repertoire-element-texte {color: var(--main-color-vert); background-color: var(--main-color-beige);}

.path-portailculture #content .prettydropdown > ul {border-radius: 10px; padding: 10px 0;}
.path-portailculture #content .prettydropdown > ul.active > li:first-child {background-color: rgba(255,255,255,0.9); color: var(--main-color-vert);}
.path-portailculture #content .prettydropdown > ul > li.selected {font-size: 22px; color: var(--main-color-vert);}
.path-portailculture #content .prettydropdown > ul > li {background-color: rgba(255,255,255,0.9); color: var(--main-color-vert); text-align: center; padding-left: 0; min-width: 250px;}
.path-portailculture #content .prettydropdown > ul > li:before {display: none;}
.path-portailculture #content .prettydropdown > ul.active > li:hover {background-color: var(--main-color-vert); color: #fff;}
.path-portailculture #content .prettydropdown.arrow > ul > li.selected::before {border-top-color:var(--main-color-vert); opacity: 0.5; border-width: 10px;}
.path-portailculture #content .prettydropdown.arrow > ul > li.selected::after {display: none;}

#zone-repertoire .view-empty {padding: 0 20px 100px 20px;}
#zone-repertoire .view-empty p {text-align: center;}

#zone-repertoire .view-filters .js-form-item {width: 25%; margin-right: 0;}

#zone-repertoire .view-filters #edit-actions::before {display: table; clear: both; content: "";}
#zone-repertoire .view-filters #edit-reset {background-color: transparent; border: 1px solid var(--main-color-vert); color: var(--main-color-vert); background-image: none;}



.zone-repertoire-element-anim {position: absolute; width: 100%; height: 100%; opacity: 0; z-index: 2; filter: blur(40px);}
.zone-repertoire-element-anim::after {position: absolute; content: ""; aspect-ratio: 1 / 1; background-size: cover; z-index: 2;}


.zone-repertoire-element:nth-child(4n+1) .zone-repertoire-element-anim::after { width: 130%; background: url("../images/textures/ronds1-vert.svg") no-repeat; bottom: 0; left: 0; margin: 0 0 -10% -20%;
-webkit-animation: rotating 50s linear infinite;
  -moz-animation: rotating 50s linear infinite;
  -ms-animation: rotating 50s linear infinite;
  -o-animation: rotating 50s linear infinite;
  animation: rotating 50s linear infinite;}

.zone-repertoire-element:nth-child(4n+2) .zone-repertoire-element-anim::after { width: 130%; background: url("../images/textures/lignes2-vert.svg") no-repeat; top: 20%; right: 0; clip-path: polygon(0 0, 0 0, 0 100%, 0 100%);}
.zone-repertoire-element:nth-child(4n+2):hover .zone-repertoire-element-anim::after { clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
-webkit-transition: 3s;
-moz-transition: 3s;
-o-transition: 3s;
-ms-transition: 3s;
transition: 3s;}

.zone-repertoire-element:nth-child(4n+3) .zone-repertoire-element-anim::after { width: 130%; background: url("../images/textures/points1-vert.svg") no-repeat; top: 20%; right: 0; margin-right: -100px;}
.zone-repertoire-element:nth-child(4n+3):hover .zone-repertoire-element-anim::after { margin-right: 50px;
-webkit-transition: 10s;
-moz-transition: 10s;
-o-transition: 10s;
-ms-transition: 10s;
transition: 10s;}

.zone-repertoire-element:nth-child(4n+4) .zone-repertoire-element-anim::after { width: 70%; background: url("../images/textures/lignes1-vert.svg") no-repeat; top: 50px; right: 50px;}
.zone-repertoire-element:nth-child(4n+4):hover .zone-repertoire-element-anim::after {top: 0; right: 0;
-webkit-transition: 10s;
-moz-transition: 10s;
-o-transition: 10s;
-ms-transition: 10s;
transition: 10s;}

.zone-repertoire-element:hover .zone-repertoire-element-anim {opacity: 1; filter: blur(0);}




/*------------------------- FICHE --------------------------*/

.contenu-fiche, #contenu-fiche {padding-left: 10%; display: flex; flex-direction: row-reverse;}

.fiche-acteur-gauche, #fiche-acteur-gauche {width: 60%; padding-right: 10%;}
.fiche-acteur-droit, #fiche-acteur-droit {width: 40%;}

#fiche-acteur-sous-titre {font-family: var(--main-font-cursive); letter-spacing: 1px; font-size: 25px;}

.fiche-acteur-liens, #fiche-acteur-liens {display: flex; align-items: center; margin-top: 80px;}
.fiche-acteur-liens a, #fiche-acteur-liens a {display: inline-block; margin-right: 30px;}
.fiche-acteur-liens a img, #fiche-acteur-liens a img {display: block; width: 50px; height: auto;}
.fiche-acteur-lien-web, #fiche-acteur-lien-web {background-color: var(--main-color-vert); color: #fff; font-weight: bold; padding: 10px 15px; font-size: 20px; text-decoration: none; text-transform: uppercase;}
.fiche-acteur-lien-web:hover, #fiche-acteur-lien-web:hover {background-color: var(--main-color-beige); color: var(--main-color-vert);}

#fiche-acteur-galerie {font-size: 0;}
.fiche-acteur-galerie-element {display: inline-block; margin: 10px; aspect-ratio: 4 / 3; width: calc(33% - 20px); background-color: var(--main-color-beige);}
.fiche-acteur-galerie-element img {object-fit: cover; width: 100%; height: 100%; display: block;}
.fiche-acteur-galerie-element:hover img {opacity: 0.5;}

.fiche-acteur-droit-img img, #fiche-acteur-droit-img img {width: calc(100% - 60px); margin-right: 60px; height: auto; display: block;}
.fiche-acteur-droit-copy, #fiche-acteur-droit-copy  {font-size: 12px;}
.fiche-acteur-droit-copy span, #fiche-acteur-droit-copy span {font-weight: bold;}


/*------------------------- BLOGUE --------------------------*/

.zone-repertoire-element-photo {position: relative;}
.zone-repertoire-element-texte-blogue-cat {position: absolute; bottom: 0; left: 0; width: 100%;}
.zone-repertoire-element-texte-blogue-cat span {position: relative; display: block; z-index: 1; color: var(--main-color-vert); text-transform: uppercase; font-weight: 800; letter-spacing: 2px; padding: 10px 20px 0 20px; font-size: 28px; margin-bottom: -8px;}
.zone-repertoire-element-texte-blogue-cat::before {content: ""; position: absolute; bottom: 0; left: 0; width: 100%; height: 100px; background-image: linear-gradient(to bottom, rgba(237,233,218,0), rgba(237,233,218,1)); z-index: 0;}
.zone-repertoire-blogue-element .zone-repertoire-element-texte-cat {text-align: left; margin-bottom: 10px;}
.zone-repertoire-element-texte-blogue-titre { text-align: left; font-family: var(--main-font-cursive); font-size: 26px; line-height: 1.3;}

.zone-repertoire-blogue-element .zone-repertoire-element-texte {position: relative;}
.zone-repertoire-blogue-element .zone-repertoire-element-texte::before {content: ""; position: absolute; top: 0; left: 20px; height: 2px; width: 0; background-color: var(--main-color-vert);}

.zone-repertoire-blogue-element:hover .zone-repertoire-element-texte::before {width: 150px;}
.zone-repertoire-blogue-element:hover .zone-repertoire-element-texte-blogue-cat span {margin-bottom: 15px;}
.zone-repertoire-blogue-element:hover .zone-repertoire-element-texte-blogue-cat::before {height: 200px;}

#fil-arianne {margin-bottom: 60px;}
#fil-arianne a, #fil-arianne span {color: var(--main-color-vert); text-decoration: none; font-size: 22px; display: inline-block; margin: 0 10px;}
#fil-arianne a:hover {text-decoration: underline;}

#article-sous-titre { font-family: var(--main-font-cursive); font-size: 20px;}

.field--name-field-intro p {font-size: 30px; padding-bottom: 60px;}

.contenu-fiche-auteur, #contenu-fiche-auteur {background-color: var(--main-color-vert); color: var(--main-color-beige);}
.contenu-fiche-auteur h2, #contenu-fiche-auteur h2 {margin-top: 0;}
.contenu-fiche-auteur .fiche-acteur-liens, #contenu-fiche-auteur #fiche-acteur-liens {margin-bottom: 0 !important;}
.contenu-fiche-auteur .fiche-acteur-lien-web, #contenu-fiche-auteur #fiche-acteur-lien-web {color: var(--main-color-vert); background-color: var(--main-color-beige);}
.contenu-fiche-auteur .fiche-acteur-lien-web:hover, #contenu-fiche-auteur #fiche-acteur-lien-web:hover {color: var(--main-color-beige); background-color: var(--main-color-vert);}

#apropos-auteur { font-family: var(--main-font-cursive); font-weight: bold; color: var(--main-color-beige); font-size: 40px; margin-bottom: 15px;}

.page-node-type-article-culture #zone-repertoire-liste {display: flex; flex-wrap: wrap; justify-content: center;}



/********************* CARTE INTERACTIVE *********************/

.body-carte #header-branding {margin-bottom: 0;}

.carte .header-branding-fonce {margin-bottom: 0;}

#zone-projets {}

#zone-projets-map {width: 75%; height: 100%; position: fixed; right: 0; top: 0;}
#zone-projets-map iframe {width: 100%; height: 100%;}

#zone-projets-liste { width: 25%; position: relative; padding: 80px 0; background-color: var(--main-color-beige);}
#zone-projets-liste h1, .zone-projets-element, #zone-projets-liste .view-filters {padding: 0 50px 0 0; margin-left: 50px;}
#zone-projets-liste h1 {text-align: left; font-size: 50px; font-weight: bold;}
.zone-projets-element { display: block; color: var(--main-color-vert); border-bottom: 2px solid rgba(255,255,255,0.8); padding-top: 20px; padding-bottom: 20px; padding-left: 20px; border-radius: 20px 0 0 20px; text-decoration: none; overflow: hidden;}
.zone-projets-element:hover {background-color: #fff; color: var(--main-color-vert); cursor: pointer;}
.zone-projets-element:hover .zone-projets-element-thematique {color: var(--main-color-vert);}
.view-carte-portail-culture.view-display-id-liste .views-row:last-child .zone-projets-element {border: 0;}
.zone-projets-element-photo { width: 100px; height: 100px; border-radius: 100%; overflow: hidden; float: left;}
.zone-projets-element-photo img { width: 100%; height: 100%; object-fit: cover; display: block;}
.zone-projets-element-contenu { width: auto; float: none; overflow: hidden; padding-left: 50px;}
.zone-projets-element-lieu {font-size: 16px;}
.zone-projets-element-titre {font-weight: bold; font-size: 26px;}
.zone-projets-element-thematique {font-weight: bold; font-size: 13px; text-transform: uppercase; letter-spacing: 1px;}
.zone-projets-element-thematique li {list-style: none;}

#zone-projets-map div.views-element-container,
#zone-projets-map div.view-carte-portail-culture,
#zone-projets-map div.geolocation-map-wrapper,
#zone-projets-map div.view-content {
  height: 100%;
}

#zone-projets-map .gm-style-iw-c h2 {margin-bottom: 5px; font-size: 24px;}
#zone-projets-map .gm-style-iw-c h2 a { color: var(--main-color-vert);}
#zone-projets-map .gm-style-iw-c ul li {font-size: 12px;}

.zone-projets-element.is-active {
  background-color: var(--main-color-vert);
    color: #fff;
}

.zone-projets-element.is-active:hover .zone-projets-element-thematique { color: #fff;}

.zone-projets-element-dropdown {
  display: none;
}

.zone-projets-element-dropdown a { background-color: #fff; color: var(--main-color-vert); border-radius: 20px; padding: 5px 10px; display: inline-block; margin-top: 10px; text-decoration: none;}

.zone-projets-element.is-active .zone-projets-element-dropdown {
  display: block;
}

#zone-projets-liste .view-filters .form-item {float: none !important; margin: 0 !important;}
.body-carte #content .prettydropdown > ul > li {text-align: left !important;}
#zone-projets-liste .zone-repertoire-select-inner {width: calc(100% - 50px);}
.body-carte #content .prettydropdown.arrow > ul > li.selected::before {border-width: 6px;}



/*------------------------- BIBLIOTHÈQUES --------------------------*/

#intro-biblio-photos {display: flex; flex-wrap: wrap; gap: 20px; margin-bottom: 40px;}
.intro-biblio-photo {width: calc(50% - 10px); aspect-ratio: 5 / 4; overflow: hidden; border-radius: 10px;}
.intro-biblio-photo img {width: 100%; height: 100%; object-fit: cover; object-position: center center;}

.accordion-biblio {margin-top: 80px;}
.accordion-biblio .fiche-acteur-lien-web {margin-bottom: 50px; display: inline-block;}

.biblio-elements {display: flex; flex-wrap: wrap; margin-top: 40px;}
.biblio-element {width: calc(50% - 100px); padding-left: 60px; padding-right: 40px; position: relative; font-size: 24px; margin-bottom: 20px;}
.biblio-element::before {position: absolute; content: ""; top: 0; left: 0; width: 40px; height: 40px; background-repeat: no-repeat; background-size: 80%;
  filter: brightness(0) saturate(100%) invert(14%) sepia(7%) saturate(7322%) hue-rotate(123deg) brightness(100%) contrast(91%);}
.biblio-resp::before {background-image: url("../images/biblios/icons/ressource.svg");}
.biblio-tel::before {background-image: url("../images/biblios/icons/phone.svg");}

.biblio-tel a,
.biblio-tel a:hover,
.biblio-tel a:focus,
.biblio-tel a:visited {
  color: var(--main-color-vert);
  text-decoration: none;
}

.biblio-mail::before {background-image: url("../images/biblios/icons/lettre.svg");}
.biblio-mail a {color: var(--main-color-vert);}
.biblio-heures::before {background-image: url("../images/biblios/icons/horloge.svg");}

.biblio-galerie {display: flex; flex-wrap: wrap; gap: 20px;}
.biblio-galerie-element {width: calc(25% - 20px); aspect-ratio: 1 / 1; overflow: hidden; border-radius: 10px;}
.biblio-galerie-element img {width: 100%; height: 100%; object-fit: cover; object-position: center center;}

/*------------------------- ESPACE BLOCS --------------------------*/

#fiche-acteur-sous-titre, .fiche-acteur-sous-titre, .contenu-fiche, #fiche-acteur-liens, .fiche-acteur-liens, #zone-repertoire-liste, .accordion, .header-branding-fonce, #portail-infolettre, #fiche-acteur-galerie, #article-sous-titre {margin-bottom: 5vw;}
.contenu-fiche-auteur {padding-top: 5vw; padding-bottom: 5vw;}


/* Transitions standard */

a, .hamburger, .hamburger:after, .zone-repertoire-element-photo img, .zone-repertoire-element-texte, .form-pc input[type=submit], .form-pc input::placeholder, .fiche-acteur-galerie-element img, .zone-repertoire-blogue-element .zone-repertoire-element-texte::before, .zone-repertoire-element-texte-blogue-cat span {
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  -o-transition: 0.3s;
  -ms-transition: 0.3s;
  transition: 0.3s;}


/* Transitions moyennes */

.classe {
  -webkit-transition: 0.5s;
  -moz-transition: 0.5s;
  -o-transition: 0.5s;
  -ms-transition: 0.5s;
  transition: 0.5s;}


/* Transitions lentes */

.zone-repertoire-element-anim {
-webkit-transition: 1s;
-moz-transition: 1s;
-o-transition: 1s;
-ms-transition: 1s;
transition: 1s;}




@media (min-width: 851px) {
  .layout-container {
    max-width: unset !important;
  }
}

#fiche-acteur-sous-titre {
  text-transform: uppercase;
}

#zone-repertoire-tri .form-item label {
  display: none;
}





@-webkit-keyframes rotating /* Safari and Chrome */ {
  from {
    -webkit-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes rotating {
  from {
    -ms-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -ms-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -webkit-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
