/*
Theme Name: CPRN
Author: Flavien LOCHE
Description: Centre Photographique Rouen Normandie
Version: 1.0
*/

/* Reset CSS */
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
font,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    background: 0 0;
    /* Préfixes vendeurs */
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    list-style: none;
    -webkit-letter-spacing: normal;
    -moz-letter-spacing: normal;
    -ms-letter-spacing: normal;
    letter-spacing: normal;
    -webkit-text-align: left;
    -moz-text-align: left;
    -ms-text-align: left;
    text-align: left;
}
p {
	margin-top: 0;
	padding-top: 0;
    border: 0;
    outline: 0;
    background: 0 0;
    /* Préfixes vendeurs */
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    list-style: none;
    -webkit-letter-spacing: normal;
    -moz-letter-spacing: normal;
    -ms-letter-spacing: normal;
    letter-spacing: normal;
    -webkit-text-align: left;
    -moz-text-align: left;
    -ms-text-align: left;
    text-align: left;
}
html,
html a {
    -webkit-font-smoothing: antialiased !important;
}

html,
body {
    overflow-x: hidden !important;
}
html {
    overflow-y: scroll;
}
/* cache le footer de wpml */
.otgs-development-site-front-end, .wpml-ls-statics-footer {
    display: none;
}
.mbm20 { margin-top: -20px; }

/* Body styles */
body {
    color: #000;
    background-color: #fff;
	font-size: 16px;
	line-height: 1.3;
    margin: 0;
    padding: 0;
	-moz-text-size-adjust: none;
    -webkit-text-size-adjust: none;
    -ms-text-size-adjust: none;
	text-size-adjust: none;
	font-family: "Times New Roman", Times, serif;
	font-weight: 400;
	font-style: normal;
}
h1, h2, h3, h4, h5, h6 {
	font-family: 'Nobel';
}

a{
	color: #000;
	text-decoration: none;
}
.right a {
	text-align: right;
}

.yellow {
	background-color: #ffe200;
}

/* header */
.main-header {
    position: fixed;
    top: 0;
    left: 0; 
    width: 220px;
	height: 100%;
    z-index: 1000;
    display: flex;
    flex-direction: column;
    justify-content:flex-start;
	background-color: #ffe200;
	grid-gap: 30px;
	transition: all 1s;
	padding: 20px;
}

.main-header__logo{
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	font-family: 'Nobel';
	font-weight: normal;
	font-size: 30px;
	line-height: 1.05;
	letter-spacing: 0.01em;
	transition: all 1s;
    margin-top: 20px;
}
.main-header__menu{
	position: relative;
	display: flex;
	flex-direction: column;
	font-family: 'Nobel';
	font-weight: normal;
	font-size: 20px;
	line-height: 22px;
	letter-spacing: 0.05em;
	transition: all 1s;
	text-transform: uppercase;
}
.menu {
	position: relative;
	list-style: none;
	display: flex;
	flex-direction: column;
	padding: 0;
	margin: 0;
}
.menu ul.sub-menu {
	list-style: none;
	display: flex;
	flex-direction: column;
	padding: 0;
	margin: 0;
	max-height: 0;
	opacity: 0;
	overflow: hidden;
	transition: all .5s;
}
.menu li:hover > ul.sub-menu {
	max-height: 500px;
	opacity: 1;
}

.menu li {
	position: relative;
}
.menu > li > a {
	font-family: 'Nobel';
	font-weight: normal;
	color: #000;
	text-transform: uppercase;
	font-size: 24px;
	line-height: 28px;
	letter-spacing: 0.05em;
	display: block;
}
.menu > li.mini > a {
    font-family: 'Nobel';
    font-weight: normal;
    color: #000;
    text-transform: uppercase;
    font-size: 16px;
    line-height: 20px;
    letter-spacing: 0.05em;
    display: block;
}
.menu > li:not(.mini) + li.mini {
    margin-top:15px;
}
.menu > li.mini + li:not(.mini) {
    margin-top:10px;
}
.menu > li.wpml-ls-item > a {
	font-family: 'Nobel';
	font-weight: normal;
	color: #000;
	text-transform: uppercase;
	font-size: 16px;
	line-height: 20px;
	letter-spacing: 0.05em;
	display: block;
	padding: 3px 5px;
	border: 2px solid #000;
	display: inline-block;
	margin-top: 10px;
}
.menu ul.sub-menu > li > a {
	font-family: 'Nobel';
	font-weight: normal;
	color: #000;
	text-transform: uppercase;
	font-size: 20px;
	line-height: 24px;
	letter-spacing: 0.05em;
	display: block;
	padding-left: 30px;
}


/* footer */
.main-footer {
    position: fixed;
    bottom: 0;
    left: 0; 
    width: 100%;
	height: 87px;
    z-index: 991;
    display: flex;
    flex-direction: row;
    justify-content:space-between;
	background-color: #fff;
	padding-bottom: 5px;
}

/* Conteneur général */

.main-container {
	position: relative;
	margin: 0 0 0 260px;
	background-color: #fff;
	width: calc( 100% - 260px);
	min-height: 100%;
}
.two-cols {
	display: grid;
	grid-template-columns: 1fr 1fr;
	align-items: start;
	position: relative;
}
.two-cols > * {
  position: relative;
}
.col-inner {
  position: relative;
  min-height: 100vh;
}
.wrapper-descritpion {
	position: relative;
	background-size: 100%;
	padding: 1px;
}
.wrapper-gallery {
	position: relative;
	width: 100%;
	padding: 40px 0;
	display: flex;
	flex-direction: column;
	min-height: 0;
}
.wrapper-image {
	position: relative;
	width: 100%;
	margin: 0 auto;
}
.wrapper-image img {
	width: 100%;
}
.wrapper-image .img-caption {
	position: relative;
	margin: 0;
	padding: 0;
	font-size: 12px;
	line-height: 15px;
	text-align: right;
	min-height: 20px;
	padding-bottom: 5px;
	padding-right: 3px;
}
.wrapper-right {
	position: relative;
    width: 100%;
    display: flex;
    flex-direction: column;
	min-height: 0;
}
.sticky-inner {
  position: sticky;
  top: 0;
  width: 100%;
  align-self: flex-start;
  background: red;
}
.is-sticky {
  position: sticky;
  top: 0;
}
.wrapper-description {
	position: relative;
	width: 100%;
	background-position: top center;
	background-repeat: repeat-y;
}
.wrapper-texte {
	position: relative;
	margin: 40px;
	padding: 20px;
	background-color: #fff;
}
.wrapper-texte h1, .wrapper-texte h2 {
	font-family: "Times New Roman", "serif";
	letter-spacing: 0;
	font-weight: 500;
	line-height: 1.1;
	margin-bottom: 0;
	padding: 0 !important;
}
.wrapper-texte h4 {
	font-weight: 500;
	margin: 20px 0;
    font-size: 24px;
}
.wrapper-texte h5 {
	font-weight: 500;
	margin: 0;
    font-size: 20px;
}
.wrapper-texte img {
	max-width:100%;
}
.wrapper-texte .img-caption {
	position: relative;
    margin: 0;
    padding: 0;
    font-size: 12px;
    line-height: 15px;
    text-align: right;
    min-height: 20px;
    padding-bottom: 5px;
    padding-right: 3px;
	margin-bottom: 50px;
}
.date {
	position: relative;
	font-style: italic;
	margin-top: 30px;
}
.wrapper-texte > p:first-of-type {
	margin-top: 30px;
}

.wrapper-ressources {
	position: relative;
	width: 100%;
}
.wrapper-agenda {
	position: relative;
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 30px;
	padding: 50px;
}

.wrapper-pedagogie {
	position: relative;
	display: grid;
	grid-template-columns: 1fr 1fr;
	padding: 50px 50px 0;
}
.wrapper-texte .wrapper-agenda, .wrapper-texte .content__grid-medias {
	padding: 50px 0;
}
.wrapper-texte .wrapper-pedagogie {
	padding: 50px 0 0;
}
.titre-agenda {
	position: relative;
	grid-column: span 2;
}
.titre-agenda span, .titre-documents span, h3 {
	font-family: 'Nobel';
	font-size: 20px;
	letter-spacing: .01em;
	border: 2px solid #000;
	display: inline-block;
	padding: 2px 4px;
    font-weight: 400;
}
.titre-agenda span {
	text-transform: uppercase;
}
h3 {
	margin: 30px 0 35px;
}
.item-agenda {
	position: relative;
	display: block;
	width: 100%;
    background-color: #ffe200;
}
.item-frutescens {
	position: relative;
	display: block;
	width: 100%;
	margin-bottom: 60px;
}
.frutescens .item-frutescens {
	position: relative;
	display: block;
	width: 100%;
	margin-bottom: 0px;
}
.img-item {
	position: relative;
	display: block;
	width: 100%;
	padding-bottom: 56.25%;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}
.item-bourse .img-item {
	padding-bottom: 100%;
}
.txt-item {
	position: relative;
	/*bottom: 0;*/
	width: 100%;
	background-color: #ffe200;
	color: #000;
	padding: 5px 10px;
	font-size: 14px;
	font-style: italic;
}
.item-frutescens .txt-item {
	background-color: transparent;
}
.txt-item .type-eve {
	display: inline-block;
	font-family: 'Nobel';
	font-size: 16px;
	font-style: normal;
	text-transform: uppercase;
	margin-bottom: 5px;
	margin-top: 5px;
	position: relative;
	float: left;
	max-width:calc(100% - 60px);
}
.item-frutescens .txt-item .type-eve {
	border: 2px solid #000;
	padding: 2px 4px;
}
.txt-item .annee-eve {
	display: inline-block;
	font-family: 'Nobel';
	font-size: 16px;
	/*border: 1px solid #000;
	padding: 2px 4px;*/
	font-style: normal;
	text-transform: uppercase;
	margin-bottom: 5px;
	margin-top: 5px;
	position: relative;
	float: right;
	width: 60px;
	text-align: right;
}
.txt-item h4 {
	font-family: "Times New Roman", "serif";
	font-weight: 400;
	font-size: 14px;
	font-style: normal;
	display: block;
	clear: both;
}
.home .txt-item .type-eve {
	margin-bottom: 0px;
}
.home .txt-item h4 {
    margin: 0px 0;
}
.home .txt-item {
    padding: 5px 3px;
}
.date {
    position: relative;
    font-style: italic;
    margin-top: 0px;
}
.item-frutescens .txt-item h4 {
	font-family: 'Nobel';
	font-size: 16px;
	font-weight: 400;
	font-style: normal;
	display: block;
	clear: both;
	text-transform: uppercase;
}
.wrapper-documents {
	position: relative;
	display: flex;
	flex-direction: column;
	padding: 50px;
}
.titre-documents {
	position: relative;
	padding-bottom: 30px;
	margin-top: 30px;
}

/* PROJETS */
.content-fixed {
	position: fixed;
	top: 85px;
	left: 0;
	width: 100%;
	height: calc(100% - 172px);
	padding: 0 15px;
	z-index:500;
}
.content__main-image {
	position: relative;
	width: 100%;
	height: 100%;
}
.content__main-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.content__main-image__header {
	position: absolute;
	display: flex;
	top: 0;
	left: 54px;
	width: calc(100% - 108px);
	height: 100%;
	justify-content: center;
}
.content__main-image__header__center {
	position: relative;
	display: flex;
	justify-content: center;
	flex-direction: column;
	text-align: center;
	max-width: 960px;
}
.content__main-image__header__center h1, .content__main-image__header__center .lieu {
	font-weight: bold;
	font-size: 53px;
	letter-spacing: .05em;
	line-height: 51px;
	text-align: center;
	text-transform: uppercase;
	display: inline-block;
}
.content__main-image__header__center h1 p, .content__main-image__header__center .lieu p {
	margin-bottom: 0;
    text-align: center;
    display: inline;
    padding: 2px 0px;
}
.content__main-image__header__center h2 {
	font-weight: bold;
	font-size: 22px;
	line-height: 27px;
	margin-top: 30px;
	text-align: center;
}
.content__main-image__header__center h2 p {
	background-color: #fff;
	display: inline;
	text-align: center;
	padding: 2px 0;
	margin-bottom: 0;
}
.content__main-image__header__center h2 p:first-child {
	background-color: #fff;
	display: inline;
	text-align: center;
	padding: 2px 0;
	margin-bottom: 0;
}
.content__main-image__header__center__cat {
	position: relative;
	display: flex;
	grid-gap: 30px;
	margin-top: 30px;
	justify-content: center;
}
.content__main-image__header__center__cat .catBtn {
	position: relative;
	display: block;
	background-color: #fff;
	padding: 1px 10px;
	font-size: 13px;
	line-height: 25px;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.content-projet {
	position: relative;
	width: calc(100% - 30px);
	margin: auto;
	margin-top: calc(100vh - 85px);
	padding-bottom: 0px;
	padding-top: 40px;
	background-color: #fff;
	z-index: 800;
}
.content__wrapper {
	position: relative;
	width: calc(100% - 68px);
	margin: auto;
}
.content__wrapper__texte {
	position: relative;
	width: 100%;
	text-align: center;
	font-family:"minion-pro";
	font-size: 31px;
	line-height: 38px;
	margin-bottom: 76px;
	max-width: 1350px;
	margin: auto;
}
.content__wrapper__texte p {
	text-align: center;
}
.content__wrapper__image {
	position: relative;
	width: 100%;
	text-align: center;
	padding-top: 40px;
	margin-bottom: 76px;
	display: flex;
	justify-content: center;
}
.content__wrapper__image.vertical img {
	max-height: calc(100vh - 266px);
	max-width: 100%;
}
.content__wrapper__image.horizontal img {
	max-width: 100%;
}
.content__wrapper__2cols {
	position: relative;
	width: 100%;
	padding-top: 40px;
	margin-bottom: 76px;
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 40px 25px;
}
.content__wrapper__2cols__image__back {
	position: relative;
	width: 100%;
	padding-bottom: 63%;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}
.content__wrapper__2cols__image__legende, .content__wrapper__2cols__image__legende {
	font-size: 20px;
	line-height: 28px;
}

.content__grid-expos {
	position: relative;
	width: 100%;
	display: grid;
	grid-template-columns: 1fr;
	grid-gap: 50px;
}
.content__grid-expos__list-item {
	position: relative;
}
.content__grid-expos__list-item__item-content {
	position: relative;
	padding-bottom: 41.7333333333%;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
.home .content__grid-expos__list-item__item-content {
	position: relative;
	padding-bottom: 125%;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
.content__grid-expos__list-item__item-content__infos {
	position: absolute;
	top: 30px;
	left: 30px;
	margin-right: 30px;
	border: 2px solid #000;
	color: #000;
	padding: 5px 10px;
	font-family:'Nobel';
	font-size: 22px;
	line-height: 1.1;
}
.content__grid-expos__list-item__item-content__infos .date {
	font-family:'Times New Roman';
	font-size: 16px;
}
.main-container h1 {
	position: relative;
	display: block;
	font-family:'Times New Roman';
	font-weight: bold;
	font-size: 30px;
	padding: 50px 50px 0;
}
.content__grid-filters {
	position: relative;
	padding: 50px 50px 0;
}
.content__grid-filters__list {
	position: relative;
	display: flex; 
	flex-wrap: wrap;
	grid-gap: 0 20px;
}
.content__grid-filters__list__item, .content__grid-filters__list__form, .content__grid-filters__list__input {
	position: relative;
	display: inline-block; 
	color: #000;
	padding: 3px 5px 1px;
	font-family:'Nobel';
	text-transform: uppercase;
	font-size: 16px;
	border: 2px solid #000;
	line-height: 1.2;
	margin-bottom: 20px;
	cursor: pointer;
	background-color: transparent;
	transition: all 300ms;
}
.content__grid-filters__list__item.active, .content__grid-filters__list__item:hover , .content__grid-filters__list__form:hover {
	color: #fff;
	background-color: #000;
	transition: all 300ms;
}
.content__grid-filters__list__separator {
	position: relative;
	display: block;
	flex-basis: 100%;
}

.content__grid-medias {
	position: relative;
	padding: 50px;
	display: grid;
	grid-template-columns: repeat(3,1fr);
	grid-gap: 30px 50px;
}
.content__grid-medias.pedagogie {
	grid-template-columns: repeat(2,1fr);
	grid-gap: 30px;
}
.wrapper-ressources .content__grid-medias.pedagogie {
	grid-column: span 2;
	padding: 0;
	grid-template-columns: repeat(2,1fr);
	grid-gap: 30px;
}
.content__grid-medias__list-item {
	position: relative;
	height: auto;
	background-color: #ffe200;
}
.content__grid-medias__list-item__item-content {
	position: relative;
}
.pdf .content__grid-medias__list-item__item-content {
	position: relative;
	display: grid;
	grid-template-columns: 1fr 1fr;
}
.content__grid-medias__list-item__item-content__image {
	position: relative;
	padding-bottom: 56.25%;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
.pdf .content__grid-medias__list-item__item-content__image {
	position: relative;
	padding-bottom: 0;
}
.pdf .content__grid-medias__list-item__item-content__image canvas {
	position: relative;
	width: 100%;
}
.content__grid-medias__list-item__item-content__infos {
	position: relative;
	color: #000;
	padding: 10px;
	font-family:'Nobel';
	font-size: 20px;
	line-height: 1.2;
}
.content__grid-medias__list-item__item-content__infos .type {
	position: relative;
	display: inline-block;
	color: #000;
	padding: 3px 5px 1px;
	font-family:'Nobel';
	text-transform: uppercase;
	font-size: 16px;
	border: 2px solid #000;
	line-height: 1.2;
	margin-bottom: 2px;
	float: left;
}
.content__grid-medias__list-item__item-content__infos .date {
	font-family:'Times New Roman';
	font-size: 16px;
	margin-top: 2px;
	display: block;
	float: right;
	position: relative;
}
.content__grid-medias__list-item__item-content__infos .titre {
	display: block;
	clear:both;
	position: relative;
}







.content-page {
	position: relative;
	width: 100%;
	background-image: url(/wp-content/uploads/2024/12/trame-barfry.svg);
	background-repeat: repeat;
}
.content__container {
	position: relative;
	padding-top: 102px;
	background-color: #fff;
	width: calc(100% - 48px);
	margin: 0 auto;
	min-height: 100vh;
}
.page-template-page_bio .content__container {
	position: relative;
	padding-top: 132px;
	background-color: #fff;
	width: calc(100% - 48px);
	margin: 0 auto;
	min-height: 100vh;
	padding-bottom: 100px;
}
.content__container__chapo h3 {
	font-family:"minion-pro";
	font-size: 31px;
	line-height: 38px;
	margin: 15px auto 32px;
	text-align: center;
	font-weight: normal;
	width: calc(100% - 40px);
	max-width: 1350px;
}
.content__container__chapo, .content__container__chapo p {
	font-size: 18px;
	line-height: 22px;
	margin-bottom: 56px;
	text-align: center;
	position: relative;
}
.content__container__chapo p {
	width: calc(100% - 40px);
	max-width: 1350px;
	margin: 0 auto 56px;
}
.content__container__chapo .titre {
	font-size: 18px;
	line-height: 22px;
	margin-bottom: 24px;
	text-align: center;
	position: relative;
	border-bottom: 1px solid #000;
	display: inline-block;
	letter-spacing: .05em;
}
.content__container__chapo img {
	width: calc(100% - 40px);
    max-width: 1310px;
}
.content__container__chapo__2cols {
	position: relative;
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 30px;
	width: calc(100% - 40px);
	max-width: 1350px;
	margin: 0 auto 56px;
}
.content__container__chapo__2cols p {
	font-size: 18px;
	line-height: 24px;
	margin-bottom: 20px;
	text-align: left;
	position: relative;
}
.content__container__chapo__2cols p.confiance {
	font-size: 13px;
	line-height: 17px;
	letter-spacing: 0.05em;
	margin-bottom: 56px;
	text-align: left;
	position: relative;
    columns: 2;
	column-gap: 30px;
}
.content__grid {
	position: relative;
	width: calc(100% - 68px);
	margin: 0 auto ;
	padding-bottom: 200px;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-gap: 52px;
}
.content__grid__list-item {
	position: relative;
	display: none;
	width: 100%;
}
.content__grid__list-item__item-content {
	position: relative;
	display: block;
	width: 100%;
}
.content__grid__list-item__item-content__image {
	position: relative;
	display: block;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	padding-bottom: 56.25%;
}
.content__grid__list-item__item-content__infos {
	position: relative;
	margin-top: 6px;
	font-size: 18px;
	line-height: 22px;
}
.content__grid__list-item__item-content__infos .accroche{
	display: inline-block;
}
.content__grid__list-item__item-content__infos .accroche:first-letter {
	text-transform: uppercase;
}
.content__grid__list-item__item-content__infos .cat {
	position: relative;
	display: inline-block;
	font-size: 12px;
	line-height: 17px;
	letter-spacing: 0.1em;
	margin-right: 30px;
	text-transform: uppercase;
}
.content-home {
	position: relative;
	width: 100%;
	margin: auto;
	height: 100vh;
	transition: all 1s
}
.content-home.goprojets {
	background-color: #fff;
	transition: all 1s;
}
.content-home__container {
	position: relative;
	margin: 0 auto;
	padding-top: 145px;
	width: calc(100% - 160px);
	height: calc(100vh - 104px);
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 160px;
}
.content-home__container__item{
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
}
.accroche-mobile, .hamburger, .mobile-menu { display: none; }

.menu-mobile-container .menu li a:hover, .menu-mobile-container .menu li.current-menu-item a, .menu-mobile-container .menu li.filter.current-menu-item a.active {
    border-bottom: 1px dotted #000;
}

canvas, .affiche {
	width: 100%;
	max-width: 350px;
}

.dossier {
	font-family: 'Nobel';
    font-size: 20px;
    letter-spacing: .01em;
    display: block;
	margin-top: 10px;
}
.wrapper-texte.back-yellow  {
    position: relative;
    margin: 0px;
    padding: 60px;
    background-color: #ffe200;
}
.frutescens .wrapper-texte.back-yellow  {
    padding: 60px 60px 0px;
	margin: 0;
}
.frutescens .wrapper-texte  {
    padding: 20px 20px 0px;
	margin: 40px 40px 0;
}
.wp-block-separator {
    border: none;
    border-top: 1px solid #000;
    margin: 34px 0 30px;
}
.seeall {
    position: absolute;
    right: 90px;
    top: 4px;
    font-family: 'Nobel';
    font-size: 20px;
    letter-spacing: .01em;
    font-weight: 400;
    text-transform: uppercase;
}
.home .wrapper-texte.back-yellow {
    padding: 30px 60px 60px;
}
.nodate { display: none; }

.video-thumbnail-wrapper {
    position: relative;
    display: inline-block;
    cursor: pointer;
    width: 100%;
}

.video-thumbnail-wrapper img {
    display: block;
    width: 100%;
    height: auto;
}

/* Wrapper pour ratio 16/9 une fois la vidéo chargée */
.video-embed-wrapper {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
}

.video-embed-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.hamburger {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	width: 43px;
    height: 25px;
    cursor: pointer;
    padding: 0px;
	border-radius: 6px;
	transition: background 0.3s;
	background: transparent;
	border: 0;
}

.hamburger span {
	display: block;
	width: 100%;
	height: 3px;
	background: #000;
	border-radius: 3px;
	transform-origin: center;
	transition: transform 0.4s ease, opacity 0.3s ease;
}

/* ── État OUVERT (croix) ── */
.hamburger.is-open span:nth-child(1) {
	transform: translateY(10.5px) rotate(45deg);
}

.hamburger.is-open span:nth-child(2) {
	opacity: 0;
	transform: scaleX(0);
}

.hamburger.is-open span:nth-child(3) {
	transform: translateY(-10.5px) rotate(-45deg);
}
.main-header__menu-mobile { display: none; }
.menu-mobile { display: none; }

/*FORM NEWSLETTER*/
label {
	cursor: pointer;
}
input[type=checkbox]{
    display: none;
}
input[type=checkbox] + label:before {
    background: #ffe200;
    border: 0px solid #000;
    margin-top: -3px;
    margin-right: 6px;
    display: inline-block;
    vertical-align: middle;
    content: '';
    width: 40px;
    height: 40px;
}
input[type=checkbox]:checked + label:before {
    /*background: url(//www.recoltecoop.com/cooprec/uploads/2018/02/croix6.gif) no-repeat;
	background-size:cover;*/
    background: #000;
    box-shadow: inset 0px 0px 0px 10px #ffe200;
}
label { font-family:'Nobel'; font-size:16px; text-transform:uppercase; padding-bottom:5px; text-decoration:none; display:block; }
label .min { font-family:"Times New Roman", Times, serif; text-transform:lowercase; font-size:16px; text-align:left; margin-bottom:15px;  display: block;}
label .tt { display: block; margin-left: 48px; margin-top: -43px; }
label.tt-champ { font-family:"Times New Roman", Times, serif; font-size:16px; text-transform:capitalize; }
#wrap-input { 
	display: table; 
	width: 100%; 
	max-width: 1200px; 
	list-style-type: none;
	padding-left:0 !important;
}
 
#wrap-input label { 
	display: table-cell;
	white-space: nowrap;
	vertical-align: middle;
}
 
#wrap-input span {
	display: table-cell; 
	width: 100%; 
	padding-left: 8px; 
}
 
#wrap-input input { 
	width: 100%;
	box-sizing: border-box;
	border:0; background-color:#ffe200 !important; font-family:"Times New Roman", Times, serif; font-size:16px;
}
.validnews { border:3px solid #000 !important; background-color:#fff !important; font-family:'Nobel'; font-size:16px; text-transform:uppercase; padding:2px 5px; text-decoration:none; display:block;}
html input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 1000px #ffe200 inset;
    box-shadow: 0 0 0 1000px #ffe200 inset;
}

.lazy,
.lazy-bg {
  opacity: 0;
  transition: opacity 0.3s ease;
}

.lazy.loaded,
.lazy-bg.loaded {
  opacity: 1;
}

#backtotop{ position: fixed; display: none; right: 30px; bottom: 134px; width: 59px; height: 59px; cursor:pointer; background-color: transparent; background-image: url(/wp-content/uploads/2024/11/backtotop.svg); background-position: center; background-size: contain; background-repeat: no-repeat; transition: all .3s; z-index:992; box-shadow: 1px 1px 5px rgba(0, 0, 0, .4); border-radius: 30px; }
@media (max-width: 1400px) {
	body {
		font-size: 15px;
	}
	.main-header {
		width: 150px;
	}
	.menu > li > a {
		font-size: 17px;
		line-height: 21px;
	}
	.menu ul.sub-menu > li > a {
		font-size: 15px;
		line-height: 19px;
	}
	.main-container {
		margin: 0 0 0 190px;
		width: calc(100% - 190px);
	}
	.content__grid-medias__list-item__item-content__infos {
		font-size: 16px;
	}
	.wrapper-texte {
		margin: 20px;
	}
	.wrapper-pedagogie {
		padding: 40px 40px 0;
	}
	.wrapper-agenda {
		padding: 40px;
	}
	.content__grid-medias {
		padding: 40px;
	}

}
@media (max-width: 1350px) {
	
}
@media (max-width: 1140px) {
	.content__grid-medias.pedagogie {
		grid-template-columns: 1fr;
	}
	.wrapper-agenda {
		grid-template-columns: 1fr;
	}
	.titre-agenda {
		position: relative;
		grid-column: span 1;
	}
	.content__grid-medias {
		grid-template-columns: repeat(2, 1fr);
	}
}
@media (max-width: 1024px) {
	
}
@media (max-width: 996px) {
	.content__grid {
		width: calc(100% - 60px);
		grid-template-columns: repeat(2, 1fr);
	}
	.two-cols {
		grid-template-columns: 1fr;
	}
	.wrapper-gallery {
		order: 2;
	}
	.content__grid-medias.pedagogie {
		grid-template-columns: 1fr 1fr;
	}
	.wrapper-agenda {
		grid-template-columns: 1fr 1fr;
	}
	.titre-agenda {
		position: relative;
		grid-column: span 2;
	}
	.col-inner {
		min-height: 0;
	}
}
@media (max-width: 768px) {
	.content__grid {
		width: 100%;
		grid-template-columns: 1fr;
	}
	
}
@media (max-width: 500px) {
	.content__grid {
		grid-gap: 35px;
	}
	.content__grid__list-item__item-content__infos .cat {
		letter-spacing: 0.05em;
		margin-right: 13px;
	}
	.content__grid__list-item__item-content__infos {
		font-size: 16px;
		line-height: 20px;
	}
	.content__grid-medias.pedagogie {
		grid-template-columns: 1fr;
	}
	.wrapper-agenda {
		grid-template-columns: 1fr;
	}
	.content__grid-medias {
		grid-template-columns: 1fr;
	}
	.titre-agenda {
		position: relative;
		grid-column: span 1;
	}
	.main-header {
        width: calc(100% - 40px);
        height: 60px;
        padding: 10px 20px;
		flex-direction: row;
		justify-content: space-between;
    }
	.main-header__logo {
		margin-top: 0px;
		width: 80px;
	}
	.main-header__logo img {
		height: 100%;
	}
	.main-container {
        margin: 80px 0 0 0;
        width: 100%;
    }
	.home .wrapper-texte.back-yellow {
		padding: 30px 20px 60px;
		/*width: calc(100% - 31px);*/
	}
	.wrapper-agenda {
        padding: 20px;
		/*width: calc(100% - 31px);*/
    }
	.seeall {
		right: 70px;
	}
	.main-header__menu-mobile {
		position: relative;
		display: flex;
		flex-direction: column;
		justify-content: center;
	}
	.main-header__menu { display: none; }
	.menu-mobile {
		position: fixed;
		display: block;
		background-color: #ffe200;
		width: 100%;
		height: calc(100vh - 80px);
		padding: 20px;
		left: 0;
		top:-100vh;
		transition: all .3s;
		z-index: 999;
	}
	.menu-mobile.active {
		top: 80px;
	}
	.menu li > ul.sub-menu {
		max-height: 500px;
		opacity: 1;
	}
	.wrapper-texte {
		padding: 0px;
	}
	.wrapper-texte.back-yellow {
		padding: 20px;
	}
	.content__grid-expos {
		grid-gap: 20px;
	}
	.content__grid-expos__list-item__item-content__infos {
		top: 20px;
		left: 20px;
		margin-right: 20px;
		font-size: 18px;
	}
	.wrapper-documents {
		padding: 20px;
	}
	.wrapper-pedagogie {
        padding: 20px 20px 0;
    }
	.content__grid-medias {
        padding: 20px;
    }
	.content__grid-medias.pedagogie {
		grid-gap: 20px;
	}
	.frutescens .wrapper-texte.back-yellow {
		padding: 20px 20px 0px;
	}
	.frutescens .wrapper-texte {
		margin: 0px 0px 0;
	}
}
