/* *****************************************************************
GENERAL
***************************************************************** */
body * {
	box-sizing: border-box;
}

body {
	font-size: 1.6rem;
	margin:0;
}

html {
	font-size: 62.5%;
}

/* mali-600 - latin */
@font-face {
  font-family: 'Mali';
  font-style: normal;
  font-weight: 600;
  src: local(''),
       url('fonts/mali-v9-latin-600.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('fonts/mali-v9-latin-600.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* source-sans-pro-regular - latin */
@font-face {
  font-family: 'Source Sans Pro';
  font-style: normal;
  font-weight: 400;
  src: local(''),
       url('fonts/source-sans-pro-v21-latin-regular.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('fonts/source-sans-pro-v21-latin-regular.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* source-sans-pro-italic - latin */
@font-face {
  font-family: 'Source Sans Pro';
  font-style: italic;
  font-weight: 400;
  src: local(''),
       url('fonts/source-sans-pro-v21-latin-italic.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('fonts/source-sans-pro-v21-latin-italic.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* source-sans-pro-700 - latin */
@font-face {
  font-family: 'Source Sans Pro';
  font-style: normal;
  font-weight: 700;
  src: local(''),
       url('fonts/source-sans-pro-v21-latin-700.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('fonts/source-sans-pro-v21-latin-700.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

body {
	background-color: #ededed;
	font-family: 'Source Sans Pro', sans-serif;
	line-height: 1.5;
	color: #1d1e3d;
}

img {
	max-width: 100%;
	width: auto;
	height: auto;
}

header, main {
	background-color: #fff;
	padding: 3rem;
}

nav,
h1,
h2,
h3,
blockquote p {
	margin: 0;
	padding: 0;
	font-family: 'Mali', cursive;
}

ul {
	padding: 0;
}

p {
	margin: 0 0 1rem 0;
}

/* *****************************************************************
HEADER
***************************************************************** */

header {
	text-align: center;
	padding: 2rem 0;
}

nav ul {
	list-style: none;
}

nav a {
	font-size: 2.4rem;
	font-weight: 600;
	color: #1d1e3d;
	text-decoration: none;
	display: inline-block;
	padding: 1rem 2rem;
	border-left: 3px solid transparent;
	border-bottom: 3px solid transparent;
	margin-bottom: 1rem;
}

nav a:hover,
nav a:focus,
nav a.current {
	border-left: #037d9d solid 3px;
	border-bottom: #037d9d solid 3px;
	background-color: #ededed;
}

.banner-accueil, .banner-galerie {
	background: url(../img/banner1.jpg) no-repeat center center;
	background-size: cover;
	padding: 10rem 3rem;
	text-align: center;
}

h1 {
	color: #db0059;
	font-size: 3rem;
	font-weight: bold;
	line-height: 1.5;
	background-color: rgba(255,255,255,.8);
	display: inline-block;
	padding: 2rem;
}

/* *****************************************************************
BLOCKQUOTE
***************************************************************** */

blockquote {
	font-size: 2.5rem;
	font-weight: bold;
	text-align: center;
	margin: 3rem 0;
	padding: 3rem 2rem;
	border-left: 3px solid #037d9d;
	border-bottom: 3px solid #037d9d;
	background-color: #ededed;
}

blockquote p {
	font-style: italic;
	margin-bottom: 1rem;
}

cite {
	font-style: normal;
	font-size: 2rem;
	display: block;
}

/* *****************************************************************
ARTICLES
***************************************************************** */

h2 {
	margin-top: 5rem;
	font-size: 2.8rem;
	text-align: center;
}

.actu h2,
.interviews h2 {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.actu h2::before,
.interviews h2::before {
	font-size: 4rem;
	font-family: 'FontAwesome';
}

.actu h2::before {
	color: #037d9d;
	content:"\f073";
}

article {
	margin-top: 3rem;
	background-color: #ededed;
	padding: 2rem;
	overflow: hidden;
}

h3 {
	font-size: 2rem;
}

.actu h3 {
	color: #037d9d;
}

.date {
	font-size: 1.4rem;
	font-style: italic;
	margin-bottom: 1rem;
}

article img {
	margin-bottom: 2rem;
}

.interviews h2::before {
	color: #db0059;
	content:"\f130";
}

.interviews h3 {
	color: #db0059;
}

.suite {
	background-color: #1d1e3d;
	color: white;
	text-decoration: none;
	border-left: transparent 3px solid;
	border-bottom: transparent 3px solid;
	display: inline-block;
	padding: 1rem 2rem;
	float: right;
}

.suite:hover,
.suite:focus {
	color: #1d1e3d;
	background-color: white;
	border-left: #1d1e3d 3px solid;
	border-bottom: #1d1e3d 3px solid;
}

/* *****************************************************************
PAGE GALERIE
***************************************************************** */

.banner-galerie {
	background: url(../img/banner2.jpg) no-repeat center center;
	background-size: cover;
}

.galerie {
	display: grid;
	grid-template-columns: 100%;
	gap: 1rem;
	margin-top: 5rem;
	align-items: stretch;
	justify-items: stretch;
}

.galerie img {
	object-fit: cover;
}

.galerie .portrait {
	grid-row: span 2;
}

/************** aside  ************/

aside {
	margin-top: 5rem;
}

.list-blog,
.events {
	background-color: #ededed;
	padding: 2rem 3rem;
	margin-bottom: 2rem;
}

.list-blog h2,
.events h2 {
	margin-top: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.list-blog h2::before {
	font-family: "FontAwesome";
	font-weight: 600;
	font-size: 5rem;
	color: #db0059;
	content: "\f086";
}

.list-blog li {
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
	line-height: 2;
}

.list-blog li::before {
	font-family: "FontAwesome";
	font-weight: 600;
	content: "\f100";
	color: #db0059;
	margin-right: 1rem;
}

.events {
	padding-right: 1rem;
}

.events h2::before {
	font-family: "FontAwesome";
	font-weight: 600;
	font-size: 5rem;
	color: #037d9d;
	content: "\f073";
}

.events ul {
	height: 200px;
	overflow: auto;
	padding-right: 1rem
}

.events li {
	display: flex;
	margin-bottom: 1rem;
}

.events li::before {
	font-family: "FontAwesome";
	font-weight: 600;
	content: "\f00c";
	margin-right: 1rem;
	color: #037d9d;
}

/* *****************************************************************
FOOTER
***************************************************************** */

footer {
	color: white;
	background-color: #db0059;
	padding: 2rem;
}

.formulaire,
.social {
	padding: 2rem 0;
}

footer h3 {
	text-align: center;
	margin-bottom: 2rem;
	font-size: 2rem;
}

form {
	color: white;
	padding: 2rem 2rem 3rem 2rem;
	border-left: 2px solid white;
	border-bottom: 2px solid white;
}

input {
	border: 0;
	padding: 1rem;
	color: white;
	display: block;
}

label {
	display: block;
	margin-bottom: 1rem;
}

input[type="email"] {
	background-color: #f2d1de;
	margin-bottom: 2rem;
	color: #db0059;
	width: 80%;
}

input[type="submit"] {
	border:0;
	background-color: #fff;
	color: #db0059;
}

.pictos {
	text-align: center;
	margin-bottom: 2rem;
}

.pictos a {
	margin: 0 1.5rem;
	text-decoration: none;
}

.pictos a::before {
	font-family: 'FontAwesome';
	font-weight: 600;
	color: white;
	font-size: 3rem;
}

.facebook::before {
	content:"\f09a";
}

.twitter::before {
	content:"\f099";
}

.instagram::before {
	content:"\f16d";
}

.dribbble::before {
	content:"\f17d";
}

footer p {
	text-align: center;
	margin: 3rem 0;
}

/* *****************************************************************
LICENSE
***************************************************************** */

.license {
	padding: 2em;
	text-align: center;
	color: #fff;
	font-size: 1.4rem;
	background-color: #444;
}

.license img {
	width: 65px;
	height: auto;
}

.license a {
	text-decoration: underline;
	color: white;
}

/* *****************************************************************
MOBILE
***************************************************************** */

@media screen and (min-width: 480px) {
	blockquote {
		margin: 3rem 5rem;
	}
}


/* *****************************************************************
TABLETTE
***************************************************************** */

@media screen and (min-width: 780px) {
	nav ul {
		display: flex;
		justify-content: space-around;
	}

	input[type="email"] {
		display:  block;
	}

	input[type="submit"] {
		padding:  1rem 5rem;
	}

	.galerie {
		grid-template-columns: repeat(2, 1fr);
	}
}

/* *****************************************************************
DESKTOP
***************************************************************** */

@media screen and (min-width: 980px) {
	.container {
		max-width: 1100px;
		margin: auto;
	}
	header .container {
		display: flex;
		justify-content: space-between;
		align-items: center;
		padding: 2rem;
	}
	header img {
		width: 70%;
	}
	nav li {
		margin-left: 1rem;
	}
	blockquote {
		margin: 3rem 10rem;
	}
	.actu,
	.interviews,
	aside {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	article {
		width: 48%;
	}
	section h2 {
		flex: 1 0 100%;
	}
	footer .container {
		display: flex;
		justify-content: space-between;
	}
	.formulaire,
	.social{
		width: 48%;
	}
	.galerie {
		grid-template-columns: repeat(4, 1fr);
	}
}