/*********************************************************************/
/* = Designed by Patrick Joly - patrickjoly@free.fr */
/*********************************************************************/

/*********************************************************************/
/* FEUILLE DE STYLE / MOBILE FIRST
/*********************************************************************/
/* variables */
:root {
  --blanc: #ffffff;
  --clair: #a9c4d1;
  --sombre: #445777;
}

body {
	background: var(--blanc);
	color: var(--sombre);	
	font-family: arial narrow, sans-serif;
	font-size: 1.2em;
	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-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: 20px 0 20px 0;
	padding: 0;
}

header a {
	text-decoration: none;
	text-align: center;
}

h1 {
	color: var(--clair);
	font-size: 3em;
	margin: 0;
	padding: 0;
}

h2 {
	color: var(--clair);	
	font-size: 2em;
	letter-spacing: 10px;
	margin: 0 0 20px 0;
	padding: 0;
}

/*********************************************************************/
/* navigation */
/*********************************************************************/
nav {
	background: var(--sombre);	
	margin: 0;
	padding: 0 !important;
	text-align: center;
}	

nav ul {
	margin: 0;
	padding: 0;	
}

nav li {
	border-bottom: 1px solid var(--blanc);
	display: block;
	margin: 0;
	padding: 10px;
	text-transform : uppercase;	
}

nav li:last-child {
	border-bottom: none;
}

nav a {
	color: var(--blanc);
	margin: 0;
	padding: 0;
	text-decoration: none;
}

nav a:hover {
	color: var(--clair);
}

/*********************************************************************/
/* contenu */
/*********************************************************************/
/* sections */
section {
	margin: 0;
	padding: 0;
}

/* titres */
h3 {
	background: var(--clair);	
	border: 1px solid var(--clair);
	border-radius: 5px;	
	font-size: 1.2em;
    margin: 5px 0 0 0;
	padding: 5px;
}

h4 {
	border-bottom: 1px solid var(--clair);
	color: var(--clair);
	font-size: 1.1em;
    margin: 20px 0 10px 0;
    padding: 0;
}

/* galerie */
.galerie {
	column-count: 1;
	column-gap: 10px;
	max-width: 100%;
	margin: 0 auto;
}


.galerie img {
	border-radius: 5px;
	display: block;	
	filter: grayscale(0);
	height: auto;
	margin: 0 0 10px 0;
	transition: 0.2s ease-in-out;
	width: 100%;
}

.img-container {
  position: relative;
  margin: 5px;
  overflow: hidden;
  border-radius: 5px;
}

.img-container img {
  display: block;
  width: 100%;
  height: auto;
}

.img-overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  background-color: rgba(255, 255, 255, 0.6); /* fond blanc avec 60% d’opacité */; 
  color: var(--sombre);
  text-align: center;
  padding: 10px;
  box-sizing: border-box;
}

/* images */
img {
	border-radius: 5px;	
    margin: 6px 0 0 0;
    max-width: 100%;
	padding: 0;
}

/* tableaux */
table {
	color: var(--sombre);	
	border-collapse: collapse;
	margin: 20px 0 20px 0;
	padding: 0;
	text-align: center;		
	width: 100%;
}

tr {
	border-bottom: 1px solid var(--clair);
}

td {
	margin: 0;
	padding: 0;
	vertical-align: top;	
	width: 12.5%;
}

/*********************************************************************/
/* footer */
/*********************************************************************/
footer {
	background: var(--sombre);
	color: var(--clair);
	margin: 0;
	padding: 0 !important;
}

footer a {
	color: var(--clair);
	text-decoration: underline
}

footer a:hover {
	color: var(--clair);	
	text-decoration: none
}

h5 {
	border-bottom: 1px solid var(--clair);
	font-size: 1em;	
    margin: 10px 0 10px 0;
	padding: 0;	
}

/*********************************************************************/
/* divers */
/*********************************************************************/
/* liens */
a {
	color: var(--sombre);
	text-decoration: underline
}

a:hover {
	color: var(--clair);	
	text-decoration: none
}

/* liste */
ul li {
	list-style: square;
}

.gauche {
	text-align: left;
}

/* divers */
.centre {
	text-align: center;
}

.droite {
	text-align: right;
}

.clair {
	color: var(--clair);	
}

.sombre {
	color: var(--sombre);	
}

/*********************************************************************/
/* 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 li {
	border-bottom: 0;
	display: inline-block;
}

.galerie {
	column-count: 3;
}

.listing {
	grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
}

footer {
	display: grid;
	grid-template-columns: repeat(8, 1fr);
	grid-column-gap: 10px;
}
}


/*********************************************************************/
/* FEUILLE DE STYLE / IMPRESSION
/*********************************************************************/
@media print {

body {
	color:  var(--sombre)
}

h1 {
	font-size: 2em;
}

h2 {
	font-size: 1.5em;
	letter-spacing: 0px;
}

h3 {
	font-size: 1em;
}

nav {
	display: none;
}

table {
	margin: 20px;
}

footer {
	display: none;
}
}