
.editer { display: grid;}
span.obligatoire {color: #dc0b0b; font-size: 1.3em;}
/*figcaption.spip_doc_intitules {font-size: 0.8em;}*/

#spip-admin {
	/*display: none;*/
}
html, body {
	height: 100vh;
	margin: 0;
	padding: 0;
	font-size: 100%;
   scroll-behavior: smooth;
   color: var(--font-color);
}

/*Thème de couleurs et constantes*/
/*:root {
	--link-color: #fff;
	--underline-color: #667302;
	--hover-color: #acac9a;
	--background-color: #FFFA;
	--icon-color: #f2f3cc;
	--item-color: #FFF;
	--font-color: #656a5d;
	--frame-color: #EEEF;
	--auto-grid-min-size: 16rem;
	--menu-background: #949366;
	--Btn-color: #000;
}*/

:root {
	--link-color: #fff;
	--underline-color: #667302;
	--hover-color: #acac9a;
	--background-color: #dcdcd0AA;
	--icon-color: #f2f3cc;
	--item-color: #FFF;
	--font-color: #3d3e3c;
	--frame-color: #FFFA;
	--auto-grid-min-size: 16rem;
	--menu-background: #949366;
	--Btn-color: #000;
}

/*viewport en CSS*/
@-webkit-viewport { zoom: 1; width: device-width;}
@-moz-viewport { zoom: 1; width: device-width;}
@-ms-viewport { zoom: 1; width: device-width;}
@-o-viewport { zoom: 1; width: device-width;}
@viewport { zoom: 1; width: device-width;}
@font-face { 
font-family: 'angelina'; 
font-style: normal; 
font-weight: normal; 
src: url('font/angelina2-webfont.eot?#iefix') format('embedded-opentype'), 
url('font/angelina2-webfont.woff2') format('woff2'), 
url('font/angelina2-webfont.woff') format('woff');}

@font-face {
  font-family: 'louis_george_cafe';
  font-style: normal; font-weight: normal;
  src: url('font/louis_george_cafe-webfont.eot?#iefix') format('embedded-opentype'), 
  url('font/louis_george_cafe-webfont.woff2') format('woff2'),
  url('font/louis_george_cafe-webfont.woff') format('woff');
}

a, a:hover { 
   color: var(--texte-color);
	text-decoration: none;
}

a:hover { 
	filter: brightness(120%);
	-webkit-filter: brightness(120%);
	-moz-filter: brightness(120%);
	-o-filter: brightness(120%);
	-ms-filter: brightness(120%);
}
.accueil {
	background-color: #011c35;
	background-repeat: no-repeat;
	height: 100vh;
	width: 100vw ;
	background-position: center;
	-webkit-background-size: cover;
	background-size: cover;
	position: fixed;
	z-index: -1;
}

div.conteneur_haut > div {
	height: 100vh;
	text-align: center; 
	display: grid;
	grid-template-columns: 1fr;
	align-content: center;
}

.conteneur_haut {
	padding: 0;
	height: 100vh;
	overflow: hidden;
}

.conteneur_haut span {
	display: block;
}

.slogan {
	font-family: angelina,sans-serif;
	color: black;
}
.slogan::before{content: "\D";}

.titre_site {
	font-family:louis_george_cafe,sans-serif;
}

.titre_site span {
	font-size: 0.3em;
}


.titre_site, .slogan {
	font-size: 4em;
	color: var(--texte-color);
	text-shadow: 2px 2px 6px #d5d5d5;
	line-height: 1;
	margin: 0;
}
.slogan {
	font-size: 4em;
}

#splash {
	position: absolute;
	bottom: 0;
	width: 100%;
	cursor: pointer;
	height: 100vh;
}

section, .edito {	padding: 3em 10%;	width: auto;}

section {
	font-size: 1.2em;
}

article {
	display: grid;
	grid-template-columns: 1fr 3fr;
	grid-gap: 1em;
	margin-bottom: 1em;
	grid-template-areas: "one   two two two" "one four four four";
}
article > div:first-of-type {
	grid-area: one;
	border-right: 1px solid var(--font-color);
	padding-right: 1em;
	margin-bottom: 2em;
}

article > div + div {
	
	padding-left: 1em;
	align-self: start;
	height: 100%;
	grid-area: two;
}

article a {
	grid-area: four;
}
article h3 {
	grid-column: span 2;
	border: 0;
	margin: 0;	
	font-size: 1.2em;
}

article h4 {
	font-size: 1em;
}
article .afficher_suite {
	font-size: 0.8em;
}

.edito {
	height: 100vh;
	background-size: cover;
	box-sizing: border-box;
	margin-bottom: 2em;
	margin-top: calc(0px - 58px - 1em);
	font-size: 1.4em;
	display: grid;
  grid-template-columns: 1fr;
  align-content: center;
}

.edito > div, .conteneur_haut > div > div {
	background-color: var(--frame-color);
	padding: 2em;
	backdrop-filter: blur(10px);
}

.conteneur_haut > div > div {width: 75%; margin: auto;}


.afficher_suite {
	font-style: italic;
	font-weight: normal;
	text-align: right;
	display: block;
	background-color: var(--menu-background);
	margin: 0 0 0.2em auto;
	width: fit-content;
	padding: 0.1em 1em;
	border-radius: 0;
	cursor: pointer;
	color: var(--link-color);
}

.titre {
	display: flex;
	border-image: linear-gradient(to right, #4c4743 10%, #EEE9 90%) 1;
	border-bottom: 1px solid;
}
.titre span {
	height: fit-content;
}
.titre h2 {
	border: none;
	margin-bottom: 0;
}
.item {
	background-color: var(--item-color);
	padding: 2em;
	min-height: calc(100vh - 58px - 1em - 6em);
	overflow: hidden;
	text-overflow: ellipsis; 
	box-sizing: border-box;
	border: 1px solid #aa9e93;
}

.item li::before {
	content: ' - ';
}
.item li:first-of-type::before {
	content: '';
}
.item li {
	display: inline list-item;
	list-style: none;
	font-style: italic;
}

.item a {
	background-color: var(--background-color);
}

/*Mise en forme du plan*/
.rub > li {
	list-style: disclosure-closed;
	font-style: normal;
	font-weight: bold;
}
.rub a {
	background: no-repeat;
}

#pied, #pied a {
	background-color: #1f1e1d;
	color: #e0dcdc;
	text-align: center;
}


#pied a::before {
	content: ' | ';
}

#page .item {
	padding: 2em;
	margin-bottom: 5em;
	min-height: unset;
	max-width: 1800px;
	margin-left: auto;
	margin-right: auto;
}

#page > #pied {
	position: sticky;
	bottom: 0;
}

#page #fond {
	background-repeat: no-repeat;
	background-size: cover;
	height: 100%;
	width: 100%;
	z-index: -1;
	background-attachment: fixed;
}

.flou {
	backdrop-filter: blur(8px);
	min-height: calc( 100vh - 1.2em);
}

h2, .sous-titre2 {
	font-size: 2em;
	font-variant: small-caps;
	border-bottom: 1px solid;
	border-image: linear-gradient(to right, #4c4743 10%, #EEE9 90%) 1;
	font-weight: bold;
}

h3, .sous-titre3 {
	font-size: 1.6em;
	border-bottom: 1px solid;
	border-image: linear-gradient(to right, #4c4743 10%, #EEE9 90%) 1;
	font-weight: bold;
}

h4 {
	font-size: 1.2em;
	font-weight: bold;
	font-variant: small-caps;
}

h1, h2, h3, h4, h5, .sous-titre3, .sous-titre2 {clear: both;
margin-bottom: 0.5em;}


.intertitre {
   font-weight: bold;
   font-size: 1.1em;
}

div.lire {
    font-style: italic;
    font-weight: bold;
    margin-top:1em;
    line-height: 2em;
}
.texte_rubrique{font-size: 1.1em;}
a.separateur::before {content:"\0000A0- "}

.chapeau {
	font-style: italic;
	font-size: 1.1em;	
}

/*Gestion des images*/
#mediatheque {
	text-align: left;	
}
.un_media {
margin:0;
width: unset;
height: unset;
}

.un_media a span {
	position: absolute;
	bottom: 0;
	display: block;
	background-color: #FFF9;
	width: 100%;
}

.un_media img {
	width: 0;
	height: auto;
	min-width: 100%;
}

.galerie {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(var(--auto-grid-min-size), 1fr));
	grid-gap: 1rem;
	margin-bottom: 1rem;
}

.galerie img {
	max-height: 100%;
	min-width: 100%;
	object-fit: cover;
	vertical-align: bottom;
	max-width: 100%;
}

.galerie li {
	list-style: none;
}
.galerie li:last-child {
  flex-grow: 10;
}

.image1 {
	grid-column-start: 1;
	grid-column-end: span 2;
	grid-row-start: 1;
	grid-row-end: span 2;
	height: unset !important;
}

figure {
	position: relative;
	overflow: clip;
}


figcaption {
	position: absolute;
	bottom: 0;
	font-style: initial;
	color: var(--link-color);
	font-size: 0.8em;
	margin: 0.2em;
}


figcaption strong {
	font-weight: normal;
}

.un_media figcaption {
	width: 75%;
}

.un_media figcaption, .item figcaption {
	margin: 0 0 1em 0;
	line-height: 2em;
	font-style: initial;
	
}

.un_media a figcaption span, .item figcaption div {
	position: relative;
	display: initial;
	background-color: var(--background-color);
	padding: 0.15em 0.5em;
	color: var(--Btn-color);
}

figcaption.spip_doc_intitules.spip_doc_intitules_top {
	right: auto !important;
	left: 0 !important;
	position: absolute !important;	
}

.spip_doc_descriptif {
	display: none !important;
}

.spip_doc_inner {	margin: 0;}
.spip_documents_left {float: left;}
.spip_documents_right {float: right;}
.spip_documents_center {margin: auto;}

/*Gestion du menu et des outils de navigation*/
#conteneur_bas {
	position: sticky;
	top: 0px;
	width: 100%;
	z-index: 999;
}

#menu_bar {
	background-image: unset;
	background-repeat: no-repeat;
	background-position: bottom;
	background-size: contain;
	font-family: louis_george_cafe;
	font-weight: bold;
	font-size: 1.2em;
}
.home{
	position: absolute;
		}


#m0 a, #m00 a {
	font-family:louis_george_cafe,sans-serif;
	font-size: 3em;
}
#m00 a {
	color: var(--link-color);
	text-shadow: 2px 2px 8px var(--background-color);
}

#m0 a::before, #m00 a::before {
	height: unset;
}

li#m0 {
	justify-content: flex-start;
	min-width: 8em;
	margin-right: auto;
}

li#m0, #m00 {
	background-image: url(img/camellia.svg);
	background-repeat: no-repeat;
	background-size: contain;
	background-position-x: 100%;
}

#m00 {
	display: none;
	padding: 5px 10px;
	position: absolute;
	top: 0;
	left: 0;
	font-size: 1.2em;
	font-weight: bold;
	min-width: 8em;
}

.m6 > a::before {
	background-color: var(--icon-color);
	-webkit-mask-image: url(img/sprite-menu.svg);
	mask-image: url(img/sprite-menu.svg);
	mask-position: 0 -48px;	
	-webkit-mask-position: 0 -48px;
}

#m8 {
 	position: fixed;
   right: 10px;
   bottom: 10px;}

#m8 > a::before {
	background-color: var(--icon-color);
	-webkit-mask-image: url(img/sprite-menu.svg);
	mask-image: url(img/sprite-menu.svg);
	mask-position: 0 -96px;
	-webkit-mask-position: 0 -96px;
}
.barre_menu {
	min-height: 3em;
	height: calc(48px + 13px + 1em);
}

.switch.menuder {
	display: grid;
	grid-template-columns: 1fr auto;
	background: var(--menu-background);
}

.switch.menuder a::before {
	height: unset;
}

.menuder, .menuder ul {
	padding: 0;
	margin: 0;
	list-style: none;
	text-align: right;
}

.menuder li, .menuder a {
	color: #131313;
	color: var(--link-color);
}

.menuder li {
	display: inline-flex;
	padding: 0 10px;
	align-items: baseline;
	flex-wrap: wrap;
	justify-content: flex-end;
	align-content: baseline;
	gap: 1.5em;
}

.menuitem > a::before {
	content: "";
	margin: 0 auto;
	display: block;
	width: 48px;
	height: 48px;
	filter: drop-shadow(4px 4px 5px #CCC);
}

.fleche {
    width: 48px;
    height: 48px;
    display: block;
    transition: opacity 1s;
}

.cacher_fleche {
opacity: 0;
}

.suivant {
	margin-top: calc(0px - 4em - 48px);
	margin-bottom: 6em;
}

.ancre {
	margin-top: calc(0px - 48px - 10px - 6em);
	margin-bottom: calc(48px + 10px + 6em);
}

.menuder li:hover > a::before {
	transform: none;
	opacity: 1;
}

.menuder a:hover {
	border-bottom: 8px solid var(--underline-color);
	color: var(--hover-color);
}
#menu_bar > input {
	display: none;
	position: absolute;
	top: 0;
	left: -100px;
}
#menu_bar > label {
	z-index: 1;
	position: absolute;
	top: 0.5rem;
	width: 48px;
	height: 48px;
	padding: 0;
	border: 0 solid #333;
	outline: 0;
	-webkit-transition: -webkit-transform .2s;
	transition: transform .2s;
	cursor: pointer;
	filter: drop-shadow(4px 4px 5px #CCC);
	background-color: var(--icon-color);
	-webkit-mask-image: url(img/sprite-menu.svg);
	mask-image: url(img/sprite-menu.svg);
	mask-position: 0 0px;
	-webkit-mask-position: 0 0px;
}

/* Theming opened nav */
/* handling clic with CSS3 checked */
#menu_bar > input:checked ~ ul {position:relative; -webkit-transform: translateX(0) translateZ(0); -ms-transform: translateX(0) translateZ(0); transform: translateX(0) translateZ(0);}
/* Global styling nav button */
#menu_bar > label:hover { filter: brightness(120%); -webkit-filter: brightness(120%); -moz-filter: brightness(120%); -o-filter: brightness(120%); -ms-filter: brightness(120%);}
#menu_bar > input:checked + label { 
-webkit-transform: rotate(90deg) translateZ(0); 
-ms-transform: rotate(90deg) translateZ(0); 
transform: rotate(90deg) translateZ(0);}
 /* Hide alternate text except from screen readers */
.visually-hidden { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px,1px,1px,1px);}

/*adaptation fonds écran*/
@media screen and (min-width:2561px) {
	.accueil {background-image: url("img/fond_sommaire_1.jpg");}
	.edito {background-image: url("img/fond_edito_2.jpg");}
	#page #fond {background-image: url(img/fond_page_1.jpg);}
}

@media screen and (min-width:1921px) and (max-width: 2560px) {
	.accueil {background-image: url("img/fond_sommaire_2.jpg");}
	.edito {background-image: url("img/fond_edito_2.jpg");}
	#page #fond {background-image: url(img/fond_page_2.jpg);}
}

@media screen and (min-width:1281px) and (max-width: 1920px) {
	.accueil {background-image: url("img/fond_sommaire_3.jpg");}
	.edito {background-image: url("img/fond_edito_3.jpg");}
	#page #fond {background-image: url(img/fond_page_3.jpg);}
	}

@media screen and (min-width:949px) and (max-width: 1280px) {
	.accueil {background-image: url("img/fond_sommaire_4.jpg");}
	.edito {background-image: url("img/fond_edito_4.jpg");}
	#page #fond {background-image: url(img/fond_page_4.jpg);}
	}

@media screen and (min-width:721px) and (max-width: 948px) {
	.accueil {background-image: url("img/fond_sommaire_5.jpg");}
	.edito {background-image: url("img/fond_edito_5.jpg");}
	#page #fond {background-image: url(img/fond_page_5.jpg);}
	}

@media screen and (max-width: 720px) {
	.accueil {background-image: url("img/fond_sommaire_6.jpg");}
	.edito {background-image: url("img/fond_edito_6.jpg");}
	#page #fond {background-image: url(img/fond_page_6.jpg);}
	}

@media screen and (min-height: 961px) and (max-height: 1280px) and (orientation: portrait){
	.accueil {background-image: url("img/fond_sommaire_v1.jpg");}
	.edito {background-image: url("img/fond_edito_v1.jpg");}
	#page #fond {background-image: url(img/fond_page_v1.jpg);}
	}

@media screen and (min-height: 721px) and (max-height: 960px) and (orientation: portrait){
	.accueil {background-image: url("img/fond_sommaire_v2.jpg");}
	.edito {background-image: url("img/fond_edito_v2.jpg");}
	#page #fond {background-image: url(img/fond_page_v2.jpg);}
	}

@media screen and (max-height: 720px) and (orientation: portrait){
	.accueil {background-image: url("img/fond_sommaire_v3.jpg");}
	.edito {background-image: url("img/fond_edito_v3.jpg");}
	#page #fond {background-image: url(img/fond_page_v3.jpg);}
	}

/*Navigation responsive*/
@media screen and (min-width:948px) and (max-width:1426px) { 
	.splash div.conteneur_bas { position:absolute; bottom:0;}
}
@media screen and (min-width:948px)  { 
	#menu_bar > label {left: -9000px;}
}

@media screen and (max-width: 947px) {
	body {font-size: 0.9em;}
	h2, .sous-titre2 {font-size: 1.8em;}
	h3, .sous-titre3 {font-size: 1.5em;}
	h4 {font-size: 1.2em;}
	.conteneur_haut { font-size: 0.9em}
	#menu_bar > label {right: 0.5rem;}
	#m00 {display: block;}
	#menu_bar > input:checked ~#m00 {display: none;}
	.switch {
	padding-top: 20px;
	top: 0;
	left: 0;
	width: 100%;
	border: none;
	-webkit-transition: -webkit-transform .3s cubic-bezier(.72,.89,.28,1.39);
	transition: transform .3s cubic-bezier(.72,.89,.28,1.39);
	-webkit-transform: translateX(-100%) translateY(0%) translateZ(0);
	-ms-transform: translateX(-100%) translateY(0%) translateZ(0);
	transform: translateX(-100%) translateY(0%) translateZ(0);
	will-change: transform;
	}
}

@media screen and (max-width: 640px) {
	body {font-size: 0.8em;}
	.conteneur_haut { font-size: 0.7em}
	.edito {	height: auto;}
	.edito > div {	margin-top: 0;	padding: 2em;}
	h2, .sous-titre2 {font-size: 1.5em;}
	h3, .sous-titre3 {font-size: 1.3em;}
	h4 {font-size: 1.1em;}
	.image1 {
	grid-column-end: 1 !important;
	grid-row-end: 1 !important;
}
}

@media screen and (max-width: 480px) {
	.menuder li {flex-direction: column;
	gap:0.8em;
	}
	.menuder li div.menuitem {
	margin-left: auto;
}
}