@font-face 
    {
    font-family: 'calamusdbonniniregular';
    src: url('../polices/calamusdbonnini-regular-webfont.eot');
    src: url('../polices/calamusdbonnini-regular-webfont.eot?#iefix') format('embedded-opentype'),
         url('../polices/calamusdbonnini-regular-webfont.woff2') format('woff2'),
         url('../polices/calamusdbonnini-regular-webfont.woff') format('woff'),
         url('../polices/calamusdbonnini-regular-webfont.svg#calamusdbonniniregular') format('svg');
    font-weight: normal;
    font-style: normal;
    }

@font-face {
    font-family: 'DINNextLTPro';
    font-weight: 500;
    font-style: bold;
    src: url("../polices/DINNextLTPro-Bold.woff") format('woff'); 
}

@font-face {
    font-family: 'DINNextLTPro';
    font-weight: 400;
    font-style: normal;
    src: url("../polices/DINNextLTPro-Regular.woff") format('woff');     
}

@font-face {
    font-family: 'DINNextLTPro';
    font-weight: 400;
    font-style: italic;
    src: url("../polices/DINNextLTPro-Italic.woff") format('woff');     
}

@font-face {
    font-family: 'DINNextLTPro';
    font-weight: 300;
    font-style: normal;
    src: url("../polices/DINNextLTPro-Light.woff") format('woff');     
}

@font-face {
    font-family: 'DINNextLTPro';
    font-weight: 300;
    font-style: italic;
    src: url("../polices/DINNextLTPro-LightItalic.woff") format('woff');     
}


html
   	{
	   scroll-behavior: smooth;
   	}

header
	{
	position: absolute;
	top: 0%;
	line-height: 6%;
	width: 82%;
	margin: auto;
	text-align: center;
	}

header h1
	{
	color: white;
	font-size: 3.7em;
	font-family: "calamusdbonniniregular",serif;
	font-weight: bold;
	text-align: center;
	text-shadow: 5px 5px 5px #242A44;
	}


		/* en-dessous de 812 px de large, le header n'est plus lisible : on réduit la taille de police selon la largeur dispo */

		@media (max-width: 945px)
	       
		{

		header h1
			{
			font-size: 2.8em;
			}

		}

		@media (max-width: 770px)
	       
		{

		header
			{
			line-height: 30px;
			}
		}

		@media (max-width: 713px)
	       
		{

		header
			{
			line-height: 40px;
			}

		header h1
			{
			font-size: 2.2em;
			}

		}

		@media (max-width: 354px)
	       
		{

		header
			{
			line-height: 55px;
			}

		header h1
			{
			font-size: 2.1em;
			}

		}
header a
	{
	color: white;
	text-decoration: none;
	transition: color 0.6s;
	}

header a:hover
	{
	color: #497AFC;
	}

.langue
	{
	position: relative;
	margin: 0 0 0 80%;
	}
	
		@media (max-width: 770px)
	       
		{
        .langue
	        {
	        margin: 0 0 0 76%;
	        }

		}

		@media (max-width: 466px)
	       
		{	
        .langue
	        {
	        margin: 0 0 0 78%;
	        }
	    }
	    	
		@media (max-width: 386px)
	       
		{	
        .langue
	        {
	        margin: 0 0 0 75%;
	        }
	    }
	    
ul.choix
	{
	list-style: none;
	}

li.choix
	{
	display: inline-block;
	line-height: 1em;
	background-color: rgba(255,209,142,0.5);
	border: 3px #FCAF3E outset;
	border-radius: 9px;
	margin: 5px 10px 5px 10px;
	padding: 4px 6px 0px 6px;
	font-family: 'DINNextLTPro',serif;
	color: black;
	font-size: 1em;
	}

ul.choix a
	{	
	text-decoration: none;
	}

li.choix:hover
	{
	background-color: rgba(30,63,109,0.8);
	border: 3px white outset;
	color: white;
	transition: 0.5s;
	}

body.retraite
     	{
     	width:  100%  !important;
     	max-width:  100%  !important;
     	margin: auto;
	background: white url(../images/cour-hotellerie.jpg) fixed;
	background-size: cover;
    	}

body.chant
	{
     	width:  100%  !important;
     	max-width:  100%  !important;
     	margin: auto;
	background: white url(../images/schola-depuis-nef.png) no-repeat fixed;
	background-size: cover;
    	}

@keyframes clignoter
       	{
	0% { opacity:1; }
    	50% { opacity:0; }
	100% { opacity:1; }	
	}
 

nav
	{
	position: fixed;
	right: 2%;
	width: 20%;
	height: 77%;
	padding: 8px 8px 8px 8px;
	}

nav ul.menu
	{
	display: block;
	list-style: none;
	color: white;
	font-size: 1.5em;
	word-spacing: 3px;
	font-family: "calamusdbonniniregular",serif;
	font-weight: bold;
	text-align: left;
	border: none;
	}

nav li.menu, li.menu-developpe
	{
	display: block;
	border: 3px white outset;
	border-radius: 10px;
	padding: 5px 5px 9px 9px;
	margin-top: 15px;
	margin-bottom: 15px;
	background-color: rgba(255,0,0,0.5);
	transition: color 0.8s;
	}

nav li.menu-developpe
	{
	display: none;
	}

nav li.menu-deroulant
	{
	display: block;
	border: 3px white outset;
	border-radius: 10px;
	padding: 5px 5px 9px 9px;
	margin-top: 15px;
	margin-bottom: 15px;
	background-color: rgba(255,0,0,0.5);
	}

nav li.important
	{
	display: block;
	margin: auto;
	color: black;
	text-align: center;
	border: 3px white outset;
	border-radius: 10px;
	padding: 5px 5px 5px 5px;
	margin-top: 15px;
	margin-bottom: 15px;
	background-color: rgba(242,201,13,0.8);
	animation: clignoter 0.7s steps(1, start) 5;
	}

	@media (hover: none)
	
	{
		nav li.menu-deroulant
			{
			display: none;
			}

		nav li.menu-developpe
			{
			display: block;
			}
	}

nav ul.sous-menu
	{
	height: 0;
	overflow: hidden;
	list-style: none;
	transition: .8s all .3s;
	}

nav li:hover ul.sous-menu 
	{
	height: 65px;
	display: block;
	padding: 0 0 0 0;
	}

nav ul.navigation
	{
	display: block;
	list-style: none;
	color: white;
	font-size: large;
	font-family: "calamusdbonniniregular",serif;
	font-weight: bold;
	text-align: left;
	border: none;
	}

nav li.navigation
	{
	display: block;
	border: 3px white outset;
	border-radius: 5px;
	padding: 3px 3px 6px 6px;
	margin-top: 10px;
	margin-bottom: 10px;
	background-color: rgba(255,0,0,0.5);
	transition: color 0.8s;
	}

nav li.picto-grand, li.picto-petit
	{
	display: none;
	border: 3px white outset;
	border-radius: 25px;
	padding: 3px 3px 3px 3px;
	margin-top: 15px;
	margin-bottom: 15px;
	background-color: rgba(255,0,0,0.5);
	transition: color 0.8s;
	}

nav li.picto-petit
	{
	display: none;
	border: 3px white solid;
	border-radius: 28px;
	}

		/* écrans étroits : en-dessous de 1050 px de large, on réduit les polices, puis en-dessous de 670, on passe en pictogrammes */

		@media (max-width: 1051px)
	       
		{

		nav
			{
			top: 65px;
			width: 20%;
			z-index: 10;
			padding: 4px 4px 4px 4px;
			}

		nav ul.menu
			{
			font-size: 1.2em;
			text-align: center;
			}

		nav li.menu
			{
			border: 2px white outset;
			padding: 3px 3px 6px 6px;
			margin-top: 10px;
			margin-bottom: 10px;
			}
		}

		@media (max-width: 851px)
	       
		{
	
		nav
			{	
			z-index: 10;
			right: 1%;
			width: 168px;
			height: 77%;
			padding: 8px 8px 8px 8px;
			}

		}

		@media (max-width: 670px)
	       
		{
	
		nav
			{
			top: 120px;
			width: 96px;
			}
			
		nav li.menu
			{
			display: none;
			}
	
		nav li.menu-deroulant
			{
			display: none;
			}
			
		nav li.picto-petit	
			{
			display: block;
			}	

		nav li.picto-grand	
			{
			display: none;
			}

		nav li.important
			{
			display: none;
			}

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

nav a:hover
	{
	color: black;
	}

li.menu:hover, li.navigation:hover
	{
	background-color: rgba(255,180,180,0.5);
	}

section
	{
	position: absolute;
	top: 30%;
	width: 65%;
	margin: 0% 2% 0% 10%;
	background-color: rgba(6,5,2,0.6);
	border-radius: 20px;
	padding: 1% 1% 1% 1%;
	color: white;
	font-size: 1.4em;
	font-family: "DINNextLTPro",serif;
	word-spacing: 3px;
	letter-spacing: 1px;
	font-weight: 300;
	text-align: center;
	text-indent: 4%;
	}

		/* écrans peu larges : le bloc section est réduit pour faire place au bloc nav*/

		@media (max-width: 1051px)
	       
		{

		section
			{
			width: 60%;
			margin: 5%;
			font-size: large;
			}
		}

		/* écrans étroits : le bloc section passe en pleine largeur et au centre */

		@media (max-width: 751px)
	       
		{

		section
			{
			width: 75%;
			font-size: large;
			}
		}

section.acces
	{
	position: relative;
	background: none;
	width: 80%;
	margin: 0 0 0 0%;
	padding: 1% 1% 1% 1%;
	}

section h3
	{
	line-height: 0.1em;
	font-family: "calamusdbonniniregular",serif;
	font-size: 1.8em;
	font-weight: bold;
	color: red;
	}

section a
	{
	color: #7DD3FC;
	}

section a:hover
	{
	color: #497AFC;
	font-weight: bold;
	transition: color 0.8s, font-weight 0.8s;
	}

section ul
	{
	font-family: DINNextLTPro,serif;
	text-align: center;
	list-style: none;
	}

section li
	{
	font-size: 0.9em;
	}

		/* en-dessous de 550 px de largeur, il faut afficher la section "retraite" plus bas */

		@media (max-width: 551px)
	       
		{
	
		section
			{
			font-size: 1em;
			}
		
		section h3
			{
			font-size: 1.5em;
			}
		}

		/* en-dessous de 500 px de largeur, réduction de police */

		@media (max-width: 501px)
	       
		{
	
		section h3
			{
			font-size: 1.5em;
			}
		}

		/* en-dessous de 411 px de largeur, on affiche encore plus bas la section */

		@media (max-width: 411px)
	       
		{
	
		section
			{
			position: absolute;
			}
		
		}
		
aside
	{
	position: relative;
	width: 80%;
	margin-top: 4%;
	}

aside ul.navigation
	{
	list-style: none;
	color: white;
	font-size: 1.8em;
	font-weight: bold;
	font-family: "calamusdbonniniregular",serif;
	word-spacing: 3px;
	text-align: center;
	}

aside li.sommaire
	{
	display: inline-block;
	border: 3px white outset;
	border-radius: 8px;
	padding: 6px 10px 6px 10px;
	margin: 0 4% 0 4%;
	background-color: rgba(73,122,252,0.7);
	transition: color 0.8s;
	}

		/* cas particulier des smartphones : réduction de police, etc. */

		@media (max-width: 1051px) 
		
		{
		
		aside
			{
			position: relative;
			width: 80%;
			}

		aside ul.navigation
			{
			font-size: 1.2em;
			text-align: center;
			}

		aside li.sommaire
			{
			border: 2px white outset;
			padding: 4px 6px 4px 6px;
			margin: 6px 6px 6px 6px;
			}

		}

		@media (max-width: 751px) 
		
		{
		
		aside
			{
			position: relative;
			width: 80%;
			}

		aside ul.navigation
			{
			font-size: 1.2em;
			text-align: center;
			}

		aside li.sommaire
			{
			border: 2px white outset;
			padding: 4px 6px 4px 6px;
			margin: 6px 6px 6px 6px;
			}

		}
aside a
	{
	color: white;
	text-decoration: none;
	transition: color 0.8s;
	}

aside a:hover
	{
	color: black;
	transition: color 0.8s;
	}

li.sommaire:hover
	{
	background-color: rgba(255,180,180,0.9);
	}

video
	{
	border-radius: 20px;
	}

footer
	{
	position: fixed;
	width: 22%;
	height: 10%;
	bottom: 0;
	right: 1%;
	}
		/* écrans étroits : le footer est centré */

		@media (max-width: 1051px)
	       
		{
		
		footer
			{
			width: 40%;
			}

		}

		/* écrans très étroits : le footer est supprimé  */

		@media (max-width: 751px)
	       
		{

		footer
			{
			display: none;
			}

		}

		/* cas particulier des écrans de moins de 450 px de haut: le footer est centré */

		@media (max-height: 450px)
	       
		{
	
		footer
			{
			display: none;
			}
		}

		
footer a
	{
	color: white;
	font-weight: normal;
	transition: color 0.8s, font-weight 1s;
	}

footer a:hover
	{
	font-weight: bold;
	color: #B4E9FC;
	}

footer p.mentions
	{
	display: inline-block;
	border: 1px grey inset;
	border-radius: 10px;
	padding: 5px 5px 7px 7px;
	margin-left: 6px;
	color: white;
	font-size: 0.8em;
	text-align: center;
	background-color: rgba(0,0,0,0.8);
	}

