html
{
	font-family: 'Raleway', sans-serif;
	font-weight: 500;
	font-size: 16px;
}

body {
	padding-top: 100px;
}

.container-fluid-entete {
	padding:0px !important;
}

.topbar
{
	position: fixed;
	top: 0px;
	left: 0px;
	right: 0px;
	z-index: 999;
	/* background-color: #40A0FF !important; */
	background-color: #75B8E2 !important;
	color: #000;
	font-weight: 300;
	font-size: .9em;
}

.topbar .name
{
	font-weight: 500;
}

.topbar a
{
	text-decoration: none;
	color: inherit;
}

.topbar a:hover
{
	text-decoration: underline;
}

/* CSS : Fix le margin-right / left : -15px qui créé un décalage non voulu sur les écrans inférieur à 991px */
.row {
	margin-right: 0px !important;
	margin-left: 0px !important;
}

.navbar
{
	/* position: inherit; */
	font-family: 'Raleway', sans-serif;
	font-weight: 500;
	top: 25px !important;
	z-index: 1000 !important;
}

.navbar .logo
{
	width: auto;
	height: 50px;
	border-radius: 10px;
}

.navbar .navbar-toggler
{
	position: absolute;
	top: 12px;
	right: 10px;
	filter: invert(1);
}

.navbar .navbar-collapse .navbar-nav
{
	text-align: center;
}

.navbar .nav-item i
{
	line-height: 1em;
	opacity: .6;
}

.navbar .nav-item .nav-link
{
	color: rgba(0, 0, 0, 0.6);
}

.navbar .nav-link:hover
{
	color: rgba(0, 0, 0, 0.99) !important;
}

.txt {
	color : #000;
}

.footer
{
	background-color: #111;
	color: #DDD;
}

.footer .lignebas
{
	font-size: .8em;
}

.footer .lignebas a
{
	color: inherit;
}

h1.titre
{
	font-weight: 300;
	font-size: 2.5rem;
	letter-spacing: .02em;
	color: #111;
	text-transform: uppercase;
}

h2.titre
{
	font-weight: 300;
	font-size: 2rem;
	text-transform: uppercase;
	letter-spacing: .1em;
	color: #111;
}

h3.titre
{
	color: #333;
}

h3.titrebleu
{
	color: #40A0FF;
}

.container-slide
{
	position: relative;
	margin: 0;
	padding: 0;
	background-color: unset;
	filter: drop-shadow(0 0 0.75rem grey);
}

.slideaccueil
{
	max-width: 1500px;
	margin: 0 auto;
}

.slideaccueil .item
{
	position: relative;
	width: 100%;
	margin: 0;
	padding: 0;
	background-size: cover;
	/* box-shadow: 8px 8px 8px 8px white inset; */
}

.slideaccueil .item .slogan
{
	position: relative;
	width: auto;
	display: flex;
	margin: 0 auto;
	flex-direction: column;
	justify-content: center;
	text-align: center;
	color: white;
	height: 500px;
	max-height: 40vh;
}

.slideaccueil .item .titre
{
	display: block;
	font-weight: 800;
	font-size: 4.5rem;
	line-height: 5.5rem;
	text-transform: uppercase;
	text-shadow: 0.02em 0.03em 0.05em rgba(0, 0, 0, 0.3);
}

.slideaccueil .item .add
{
	font-size: 1.8em;
	font-weight: 300;
	text-shadow: 0.1rem 0.2rem 0.3rem rgba(0, 0, 0, 0.35);
}

.slideaccueil .item_1
{
	background-image: url("../img/slide_1-min.jpg");
	background-position: center right;
}

.slideaccueil .item_2
{
	background-image: url("../img/slide_2-min.jpg");
	background-position: 10% center;
}

.slideaccueil::after, .entete::after, .entete2::after, .entete3::after
{
	content: "";
	width: 100%;
	height: 30px;
	position: absolute;
	top: 0;
	left: 0;
	background-image: url("../img/ombre.png");
	background-repeat: repeat-x;
	opacity: .5;
	background-blend-mode: multiply;
}

.slidetemoignages .temoignage
{
	display: block !important;
	width: 90% !important;
	margin: 0 auto;
	border-radius: 2em;
}

.slidetemoignages .card-body
{
	padding: 2rem 1.25rem;
}

.slidetemoignages .texte
{
	margin-bottom: 2em;
}

.slidetemoignages .ident
{
	opacity: .65;
}

.slidetemoignages .logo
{
	display: inline-block;
	padding: 2em 3em;
	background-color: rgba(0, 0, 0, 0.25);
	margin-bottom: 1em;
}

.entete-container
{
	position: relative;
	margin: 0;
	padding: 0;
	background-color: unset;
	filter: drop-shadow(0 0 0.75rem grey);
}

.entete
{
	max-width: 1500px;
	margin: 0 auto;
	position: relative;
	background-size: cover;
	background-position: center center;
	background-color: #000;
	padding-top: 200px;
}

.entete .row
{
    margin-right: 0px !important;
    margin-left: 0px !important;
	background-color: rgba(0, 0, 0, 0.85);
}

.entete h1.titre
{
	color: white;
	text-transform: none;
}

.entete h3.titre
{
	color: #40A0FF;
	font-weight: 300;
}

.entete_service
{
	background-image: url("../img/entete_1-min.jpg");
	background-position: center center;
}

.entete_hebergement
{
	background-image: url("../img/entete_2-min.jpg");
	background-position: center center;
}

.entete_infos
{
	background-image: url("../img/entete_3-min.jpg");
	background-position: center center;
}

.entete_editeur
{
	background-image: url("../img/entete_4-min.jpg");
	background-position: center bottom;
}

.intro
{
	font-size: 1.2em;
}

.card .shadow
{
	box-shadow: 0 0.2rem 0.3rem rgba(0, 0, 0, 0.4) !important;
}

.liste_titre
{
	background-color: #40A0FF;
	padding: .3em .6em;
	border-radius: .5em;
	font-size: 1.3rem;
	text-align: center;
	margin-bottom: 1em;
}

.liste_titre_plus
{
	background-color: royalblue;
	color: white;
}

.liste
{
	list-style: none;
}

.liste li i
{
	color: #40A0FF;
	margin-right: .5em;
}

.liste li ul
{
	list-style: none;
}

.liste_plus li i
{
	color: royalblue;
}

.isi_card
{
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
	padding: 1em;
	width: 100%;
	max-width: 600px;
	margin: 0 auto;
}

.isi_card img.isi
{
	float: left;
	width: 140px;
	height: auto;
	margin: 0 1em 0 0;
	border: 1px solid #333;
	z-index: 10;
}

.isi_card .texte
{
	z-index: 10;
}

.isi_card .fx
{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 50%;
	z-index: 5;
	background: linear-gradient(0deg, rgba(255, 255, 255, 0.25) 0%, rgba(255, 255, 255, 0) 100%);
}

.image
{
	width: 100%;
	height: auto;
}

.btn-bleu
{
	color: #222;
	background-color: #40A0FF;
	border-color: #40A0FF;
}

.btn-bleu:hover
{
	color: #000;
	background-color: #28A0FF;
	border-color: #28A0FF;
}

.btn-bleu:focus, .btn-bleu.focus
{
	color: #000;
	background-color: #40A0FF;
	border-color: #28A0FF;
    box-shadow: 0 0 0 0.2rem rgb(23 162 184 / 50%);
}

.btn-bleu:not(:disabled):not(.disabled):active, .btn-bleu:not(:disabled):not(.disabled).active, .show > .btn-bleu.dropdown-toggle
{
	color: #000;
	background-color: #40A0FF;
	border-color: #28A0FF;
}

.btn-bleu:not(:disabled):not(.disabled):active:focus, .btn-bleu:not(:disabled):not(.disabled).active:focus, .show > .btn-bleu.dropdown-toggle:focus
{
	box-shadow: 0 0 0 0.2rem rgb(24 117 255 / 50%);
}

.slick-slider .slick-dots
{
	bottom: -50px;
}

.slick-slider .slick-dots li button:before
{
	font-size: 30px;
}

.slick-slider .slick-dots li.slick-active button:before
{
	color: #40A0FF;
}

.slideaccueil .item_1 .slogan .ombre
{
	color : #000;
}

.navbar .logo
{
	width: auto;
	height : 50px;
}

.navbar .logo_lien
{
	outline: none;
	text-decoration: none;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	padding-right: 10px !important;
	color : #40A0FF;
	transition: background 1s;
}

.logo_G9 {
    max-height: 90px;
}

.btn-outline-info {
	border-color : #28A0FF;
	color : #40A0FF;
}

.btn-outline-info:hover, .btn-outline-info:active {
    color: #FFF;
    background-color: #40A0FF !important;
    border-color: #28A0FF !important;
}

.btn:focus, .btn.focus {
    outline: 0;
    box-shadow: unset;
}

/**/
@media (min-width: 768px)
{
	.slideaccueil .item .slogan
	{
		max-width: 720px;
		height: 420px;
		padding: 1em;
	}
}

@media (max-width: 991.99px)
{	
	.topbar .name
	{
		font-size: 1.4em;
		letter-spacing: .04em;
	}
	
	.topbar {
	    padding-bottom: 0.5rem !important;
		padding-top: 0.5rem !important;
	}

	.navbar {
	    padding: 0px;
		top: 0px !important;
	  	/* background-color: unset !important;
		display:block !important;
		text-align: center; */
	}

	.navbar .nav-item
	{
		text-align: left;
	}
	
	.accueil
	{
		text-align: center !important;
	}

	.navbar .nav-item i
	{
		font-size: 1.2em;
		display: inline;
		margin: 0 .5em 0 0;
		color: #40A0FF;
		opacity: 1;
	}

	.navbar .nav-link
	{
		line-height: 1.85em;
		padding: 0.5rem 1rem .25rem;
	}

	.navbar .navbar-nav
	{
		display: inline-block;
		margin-left: calc(50% - 90px) !important;
		margin: 1em 0;
	}

	.slideaccueil .item .slogan
	{
		max-width: 720px;
		height: 420px;
		padding: 1em;
	}

	.slideaccueil .item .slogan .titre
	{
		font-size: 3.5rem;
		line-height: 4rem;
	}

	.slideaccueil .item .slogan .add
	{
		font-size: 1.5em;
	}
}

@media (min-width: 992px)
{
	.navbar {
		height:75px;
		padding:5px !important;
	}
	
	.topbar {
		/* display: none; */
		height: 50px;
	}

	.navbar .nav-item
	{
		line-height: 1em;
		margin-left: .5em;
	}
	
	.navbar .logo_lien:hover {
		background: #333A82;
		transition: background 1s;
		transition: color 0.5s;
		color: #FFF !important;
	}
	
	.navbar .logo_lien:focus {
		background: #333A82;
		transition: background 1s;
		transition: color 0.5s;
		color: #FFF !important;
	}
	
	.navbar .logo_lien:active {
		background: #333A82;
		transition: background 1s;
		transition: color 0.5s;
		color: #FFF !important;
	}
	
 	.centrer {
		position: absolute;
	    top: 50%;
	    left: 50%;
	    transform: translate(-50%, -50%);	
	}

	.navbar .nav-item i
	{
		font-size: 1.4em;
		display: block;
		margin: 0 0 .3em 0;
	}
	
	.navbar .active i
	{
		color: #40A0FF;
		opacity: 1;
	}

	.slideaccueil .item .slogan
	{
		max-width: 960px;
		height: 475px;
	}

	.slideaccueil .item .slogan .titre
	{
		font-size: 4rem;
		line-height: 5rem;
	}
}

@media (min-width: 1200px)
{
	.navbar .nav-item
	{
		margin-left: .75em;
	}

	.slideaccueil .item .slogan
	{
		max-width: 1140px;
		height: 500px;
	}

	.slideaccueil .item .slogan .titre
	{
		font-size: 4.5rem;
		line-height: 5.5rem;
	}
}

@media (min-width: 1400px)
{
	.slideaccueil .item .slogan
	{
		height: 550px;
	}
}

@media (min-width: 1600px)
{
	.slideaccueil .item .slogan
	{
		height: 600px;
	}
}

@media (max-height: 700px)
{
	.slideaccueil .item .slogan .titre
	{
		font-size: 3.4rem;
		line-height: 3.6rem;
	}

	.slideaccueil .item .slogan .add
	{
		line-height: 2rem;
	}
}

@media (max-height: 940px)
{
	.slideaccueil .item .slogan .titre
	{
		font-size: 4rem;
		line-height: 4.5rem;
	}

	.slideaccueil .item .slogan .add
	{
		line-height: 2rem;
	}
}

/**/
@media (max-height: 700px) and (max-width: 576px)
{
	.slideaccueil .item .slogan .titre
	{
		font-size: 3.4rem;
		line-height: 3.6rem;
	}

	.slideaccueil .item .slogan .add
	{
		line-height: 2rem;
	}
}

@media (max-height: 940px) and (max-width: 576px)
{
	.slideaccueil .item .slogan .titre
	{
		font-size: 3rem;
		line-height: 3.25rem;
	}

	.slideaccueil .item .slogan .add
	{
		line-height: 1.5rem;
	}

	.slideaccueil .item_3
	{
		background-position: center center;
	}
}