/*********************************************************************/
/* = Designed by Patrick Joly - patrickjoly@free.fr */
/*********************************************************************/

/*********************************************************************/
/* FEUILLE DE STYLE / MOBILE FIRST
/*********************************************************************/
:root {
  --couleur1: #d8d1c7;
  --couleur2: #2f5f73;
}

body {
	background: var(--couleur1);
	color: var(--couleur2);	
	font-family: Arial Narrow, sans-serif;
	font-size: 1em;
	line-height: 1.5;
	margin: 0 auto;
	overflow: scroll;
	padding: 0;
}

/*********************************************************************/
/* page et module du grid layout */
/*********************************************************************/
.page {
	display: grid;
	grid-template-columns: 1fr;
	grid-gap: 10px;
	margin: 0;
	padding: 0;
}

.module-1-2,
.module-1-3,
.module-1-9,
.module-2-4,
.module-2-5,
.module-2-6,
.module-2-7,
.module-2-8,
.module-3-5,
.module-4-6,
.module-4-8,
.module-5-7,
.module-5-8,
.module-6-8,
.module-7-8,
.module-7-9 {
	margin: 0;
	padding: 10px;
}

/*********************************************************************/
/* header */
/*********************************************************************/
header {
	margin: 0;
	padding: 0;
}

header a {
	text-decoration: none;
}

h1 {
	font-size: 2.5em;
	margin: 0;
	padding: 0;
}

h2 {
	font-size: 1.25em;
	margin: 0;
	padding: 0;
}

/*********************************************************************/
/* navigation */
/*********************************************************************/
nav {
	background: var(--couleur2);
	color: var(--couleur1);
	margin: 0 !important;
	padding: 0 !important;
}	

nav ul {
	margin: 0;
	padding: 0;
	text-align: center;
}

nav li {
	border-bottom: 1px solid var(--couleur1);
	display: block;
	margin: 0;
	padding: 10px;
}

nav li:last-child {
	border-bottom: none;
}

nav a {
	color: var(--blanc);
	text-decoration: none;
}

/*********************************************************************/
/* contenu */
/*********************************************************************/

/* titres */
h3 {
	border-bottom: 1px solid var(--couleur2);
	font-size: 1.6em;
	margin: 10px 0 30px 0;
    padding: 0;
}

h4 {
	background: var(--couleur2);
	border-radius: 5px;
	color: var(--couleur1);
	font-weight: normal;
	font-size: 1.2em;
	margin: 20px 0 20px 0;
	padding: 10px;		
}

p {
	margin: 5px 0 5px 0;
	padding: 0;	
}

/* listing */
.listing {
	display: grid;	
	grid-gap: 10px;
	grid-template-columns: repeat(auto-fill, 1fr);
	list-style: none;
	margin: 20px 0 0 0;
	padding: 0;	
} 

.listing li {
	border: 1px solid var(--couleur2);
	border-radius: 10px;
	list-style: none;
	margin: 0;
	padding: 10px;
	text-align: center;
}

.listing .infos, .listing p {
	padding: 0;
	text-align: left;
}

/* images */
img {
	border-radius: 10px;		
	margin: 15px 0 0 0;
	padding: 0;	
    max-width: 100%;
}

/* liste */
ul li {
	list-style: square;
}

/* liens */
a {
	color: var(--couleur2);
	text-decoration: underline
}

a:hover {
	text-decoration: none
}

/* divers */
.bouton {
	background: var(--couleur2);
	border: 1px solid var(--couleur2);
	border-radius: 5px;
	color: var(--couleur1);	
	display: inline-block;
	margin: 10px 0 10px 0;	
	text-decoration: none;
	padding: 10px;
}

.bouton a {
	color: var(--couleur2);
	text-decoration: none;
}

/*********************************************************************/
/* footer */
/*********************************************************************/
footer {
	background: var(--couleur2);
	color: var(--couleur1);	
	display: grid;
	grid-template-columns: 1fr;	
	margin: 0;
	padding: 0;
}

footer a {
	color: var(--couleur1);
	text-decoration: none;
}

footer a:hover {
	text-decoration: underline
}

h5 {
	border-bottom: 1px solid var(--couleur1);
	color: var(--couleur1);
	font-size: 1em;
	margin: 0;
	padding: 0;	
}

footer p {
	margin: 20px 0 0 0;
	padding: 0;
}

footer img {
	margin: 0;
	width: 48px;
	padding: 0;
}

/* copyright */
.copyright {
	font-size: 0.9em;
	text-align: center;
}

.copyright p {
	margin: 0;
	padding: 0;
}


/*********************************************************************/
/* FEUILLE DE STYLE / TABLET, LAPTOP, DESKTOP
/* page et container sur une base de 8 colonnes et design des modules
/*********************************************************************/
@media (min-width:768px) {
.page {
	display: grid;
	grid-template-columns: repeat(8, 1fr);
	grid-column-gap: 10px;
}

.module-1-3 {
	grid-column: 1 / 3;
}

.module-1-9 {
	grid-column: 1 / 9;
}

.module-2-4 {
	grid-column: 2 / 4;
}

.module-2-5 {
	grid-column: 2 / 5;
}

.module-2-6 {
	grid-column: 2 / 6;
}

.module-2-7 {
	grid-column: 2 / 7;
}

.module-2-8 {
	grid-column: 2 / 8;	
}

.module-3-5 {
	grid-column: 3 / 5;
}

.module-4-6 {
	grid-column: 4 / 6;
}

.module-4-8 {
	grid-column: 4 / 8;
}

.module-5-7 {
	grid-column: 5 / 7;
}

.module-5-8 {
	grid-column: 5 / 8;
}

.module-6-8 {
	grid-column: 6 / 8;
}

.module-7-8 {
	grid-column: 7 / 8;
}

.module-7-9 {
	grid-column: 7 / 9;
}

/* nav */
nav li {
	border-bottom: 0;
	display: inline-block;	
}

/* listing */
.listing {
	grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
}

/* footer */
header, footer {
	display: grid;
	grid-template-columns: repeat(8, 1fr);
	grid-column-gap: 10px;
}