/* ---------- */
/* Font sizes */
/* ---------- */

@media screen and (max-width: 992px)
{
	body
	{
		line-height: 1.7em;

		font-size: 1.55em;
	}
}

@media screen and (min-width: 992px)
{
	body
	{
		line-height: 1.85em;

		font-size: 1.7em;
	}
}

@media screen and (min-width: 1200px)
{
	body
	{
		line-height: 2em;

		font-size: 1.85em;
	}
}

/* -------------- */
/* General styles */
/* -------------- */

section
{
	background-image: url(../images/pattern.svg);
}

section.alternate,
section.colored-part
{
	background-image: none;
}

section header
{
	padding-bottom: 0;
}

section header h1
{
	font-size: 40px;
	color: #273A86;
}

#presentation header h1
{
	color: #9A9A9A;
}

section h3
{
	margin-top: 25px;
	margin-bottom: 15px;
}

section p
{
	margin-bottom: 20px !important;

	text-align: left;
}

.container.text-center
{
	padding: 0 30px 0 0;
	padding-right: 0;
}

.row
{
	line-height: 2em;

	margin-right: 0;
	margin-left: 0;
	padding: 0;
}

.alternate
{
	background-color: #F5F5F5;
}

.bs-callout
{
	background: none;
}

.flex-center
{
	display: flex;

	align-items: center;
}

.li-p-fix p
{
	font-weight: 100;
	font-size: .9em;
}

/* -------- Mobile -------- */
@media (max-width: 768px)
{
	#navbar-collapse
	{
		padding-top: 76px;
	}
	#header .nav.navbar-nav
	{
		padding-bottom: 0;
	}

	#header .navbar-inverse .navbar-nav > li > a
	{
		padding: 15px 4px !important;

		text-align: center;
	}
	section
	{
		background-image: none;
	}
}

.SliderAtl__main
{
	position: relative;
	display: flex;

	flex-direction: column;

	margin-top: 15%;

	align-items: center;
}

.SliderAtl__main h1,
.SliderAtl__main h2,
.SliderAtl__btn
{
	color: #FFF;

	z-index: 4;
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.SliderAtl__main
	{
		margin-top: 25%;
	}
}
/* -------------- Mobile, Tablet -------------- */
@media (max-width: 1200px)
{
	.SliderAtl__main
	{
		margin-top: 35%;
	}
}
/* ------ Tablet (portrait & landscape) ------- */
@media (min-width: 600px) and (max-width: 1200px)
{
	.SliderAtl__main
	{
		margin-top: 20%;
	}
}

/* -------------------- */
/* Numéros de téléphone */
/* -------------------- */

.lead
{
	font-size: 1.4em !important;

	border-bottom: 1px solid transparent;

	transition: all 400ms ease !important;

	webkit-transition: all 400ms ease !important;
}

.lead:hover
{
	text-decoration: none;

	border-color: #273A86;
}

/* -------- */
/* Parallax */
/* -------- */

.parallax .overlay
{
	background-color: rgba(0, 0, 0, .5);
}

.parallax .parallax-img
{
	position: absolute;

	height: 200%;
	width: 100%;

	top: 0;
	left: 0;

	background-size: cover;

	z-index: -1;
}

.parallax .parallax-img
{
	background-image: url(../images/parallax.jpg);
}

.parallax .text-center
{
	padding: 0 15px;
}

.parallax a:hover
{
	text-decoration: none;

	text-shadow: transparent 1px 1px 1px;
}

/* ------- */
/* Boutons */
/* ------- */

.btn-lg
{
	white-space: normal;
}

.goto,
.parallax .btn
{
	transition: all 600ms ease !important;
}

.goto:hover,
.parallax .btn:hover
{
	transition: all 300ms ease !important;
}

.btn-primary:hover
{
	background-color: #FFF;

	color: #273A86;

	border-color: #273A86;
}

.goto
{
	margin: 25px 0;
}

/* ----------------------------------- */
/* --------- Dropdown menu ----------- */
/* ----------------------------------- */
#header .navbar a.dropdown-toggle,
#header .navbar a.dropdown-toggle
{
	background: none;
}

.navbar-nav > li > .dropdown-menu
{
	right: initial;
	left: 0;
}

.dropdown-menu > li > a
{
	padding: 6px 15px;
}

/* -------- Mobile -------- */
@media (max-width: 768px)
{
	#header .navbar-nav .open .dropdown-menu > li > a
	{
		padding: 14px 15px !important;

		text-align: center;
	}
}

/* ------------------------------------------------------------------ */
/* ------------------------- Page d'accueil ------------------------- */
/* ------------------------------------------------------------------ */

#home .parallax-fullscreen
{
	z-index: 0;
}

#home .parallax-fullscreen:before
{
	position: absolute;
	opacity: .2;

	height: 100%;
	width: 100%;

	top: 0;
	left: 0;

	background-color: #FFF;

	content: "";

	z-index: 0;
}

/* ------------ */
/* Logo bandeau */
/* ------------ */

.navbar-header
{
	position: absolute;

	height: 67px;

	top: 0;
	left: 20px;
}

.navbar-brand
{
	padding: 0;
}

@media screen and (max-width: 992px)
{
	#header .navbar-inverse .navbar-nav > li > a
	{
		padding-right: 4px;
		padding-left: 4px;
	}

	#header .navbar-inverse .navbar-nav > li:after
	{
		top: -17px;
		left: -4px;
	}

	#header .navbar-inverse .navbar-nav > li > a
	{
		font-size: .75em;
	}

	.navbar-brand > img
	{
		width: 120px;
	}
}

@media screen and (max-width: 768px)
{
	.navbar-brand > img
	{
		width: 120px;
	}
}

@media screen and (min-width: 992px)
{
	#header .navbar-inverse .navbar-nav > li > a
	{
		padding-right: 10px;
		padding-left: 10px;
	}

	#header .navbar-inverse .navbar-nav > li:after
	{
		top: -17px;
	}

	.navbar-brand > img
	{
		width: 120px;
	}
}

@media screen and (min-width: 1200px)
{
	#header .navbar-inverse .navbar-nav > li > a
	{
		font-size: .8em;
	}
}

@media screen and (min-width: 1350px)
{
	.navbar-brand > img
	{
		width: 120px;
	}
}

@media screen and (min-width: 1500px)
{
	.navbar-brand > img
	{
		width: 120px;
	}
}


/* ----- */
/* Titre */
/* ----- */

#home h2
{
	font-size: 2.5em;
}

.text-slider
{
	list-style-type: none;
}

/* -------------- */
/* Bouton accueil */
/* -------------- */

#home .table-cell > a
{
	padding: 8px 28px;

	text-shadow: #000 1px 1px 1px;
}

#home .table-cell > a:hover
{
	text-shadow: transparent 1px 1px 1px;
}

/* ------------------- */
/* Retour haut de page */
/* ------------------- */

.back-to-top
{
	position: fixed;
	visibility: hidden;

	right: 25px;
	bottom: 25px;

	font-family: inherit;

	z-index: 8000;
}

.back-to-top:before
{
	padding-right: 10px;

	font-family: FontAwesome;
}

.back-to-top:hover
{
	text-decoration: none !important;
}

.back-to-top:focus
{
	color: #273A86;
	text-decoration: none !important;
}

@media screen and (max-width: 992px)
{
	.back-to-top
	{
		right: 10px;
		bottom: 20px;

		font-size: 26px;
	}

	.back-to-top > div
	{
		position: absolute;

		height: 40px;
		width: 40px;

		top: -4px;
		left: -7px;

		content: "";

		border-radius: 50%;
		border: 2px solid #273A86;

		box-sizing: border-box;
	}
}

.parallax p
{
	font-family: "Open Sans", sans-serif;
	font-weight: 100;
	font-size: 1.6em;

	text-align: center;
}

.navbar-nav
{
	margin: 0 -15px;
}

/* ------------------------------------------------------------------ */
/* -------------------------- Présentation -------------------------- */
/* ------------------------------------------------------------------ */
#presentation h3
{
	color: #273A86;
}

.team-avatar
{
	display: inline-block;

	height: 120px;
	width: 120px;

	vertical-align: top;

	border-radius: 50%;
	border: 3px solid #273A86;

	overflow: hidden;
}

.avatars > span
{
	display: inline-block;

	line-height: 120px;
	width: 100px;

	padding-left: 20px;

	font-size: 1.2em;
	color: #7E8998;
}

.avatars:nth-child(1) .team-avatar > img
{
	left: -50px;
}

.avatars:nth-child(2) .team-avatar > img
{
	left: -50px;
}

.avatars:nth-child(3) .team-avatar > img
{
	left: -30px;
}

.team-avatar > img
{
	position: relative;

	height: 100%;
}

@media screen and (max-width: 1200px)
{
	.team-avatar
	{
		border-width: 2px;
	}

	.team-avatar
	{
		height: 105px;
		width: 105px;
	}

	.avatars > span
	{
		line-height: 105px;
	}
}

@media screen and (max-width: 992px)
{
	.team-avatar
	{
		border-width: 1px;
	}

	.avatars:nth-child(n+2)
	{
		margin-top: 25px;
	}

	.team-avatar
	{
		height: 90px;
		width: 90px;
	}

	.avatars > span
	{
		line-height: 90px;
	}
}

#presentation .row
{
	margin-top: 45px;
}

#presentation .separator
{
	color: #273A86 !important;
}

/* ------- */
/* Callout */
/* ------- */

#presentation .bs-callout
{
	padding-right: 0 !important;
}

#presentation .bs-callout h3,
#presentation .bs-callout h3 + a
{
	display: inline-block;
}

#presentation .bs-callout h3
{
	line-height: 52px;
}

#presentation .bs-callout h3 + a
{
	margin-top: 0 !important;
}

@media screen and (max-width: 992px)
{
	.mobile-invisible
	{
		display: none !important;
	}

	#presentation .container > div.list
	{
		display: block;
	}

	#presentation div.list:nth-child(2)
	{
		margin-left: 0;
	}
}

/* ------------------------------------------------------------------ */
/* -------------------------- Partenaires --------------------------- */
/* ------------------------------------------------------------------ */
#presentation .partenaires p
{
	margin-bottom: 15px;
	padding-bottom: 8px;

	color: #444;

	text-align: center;

	border-bottom: 1px solid #AFAFAF;
}

#presentation .partenaires #logo-handibat
{
	max-width: 60%;
}

/* ------------------------------------------------------------------ */
/* --------------------------- Entreprise --------------------------- */
/* ------------------------------------------------------------------ */

#entreprise h2
{
	color: #FFF;
}

#entreprise h3
{
	color: #FFF;
}

#entreprise p
{
	color: #FFF;
}

#entreprise p span
{
	color: #FFF !important;
}

#team .fa-chevron-up
{
	background-color: #FBFBFB;
}

#area .fa-chevron-up
{
	background-color: #F5F5F5;
}

#offer .fa-chevron-up
{
	background-color: #273A86;

	color: #FAFAFA;
}

#offer .fa-chevron-up:hover
{
	color: #FFF;
}

#contact .fa-chevron-up
{
	background-color: #F5F5F5;

	color: #C1C1C1;
}

#contact .fa-chevron-up:hover
{
	color: #FFF;
}

#entreprise .fa-chevron-up
{
	background-color: #FBFBFB;

	color: #ADADAD;
}

#entreprise .fa-chevron-up:hover
{
	color: #909090;
}

/* ------------- */
/* Partie icônes */
/* ------------- */

#entreprise .services
{
	margin-top: 0;
	margin-bottom: 25px;
}

#entreprise h3
{
	margin-top: 15px;
}

#entreprise .services ul
{
	display: inline-block;

	text-align: left;
}

/* -------- Mobile -------- */
@media (max-width: 768px)
{
	#entreprise .services ul
	{
		display: block;
	}
}

#entreprise .services ul > li
{
	color: #FFF;
}

#entreprise .icons svg
{
	display: inline-block;

	height: 1em;
	width: 1em;

	background-image: url(../images/sprite/icons-entreprise.svg);
	background-size: contain;

	font-size: 65px;
	color: #FFF;

	fill: currentColor;
}

/* ------------------------------------------------------------------ */
/* -------------------------- Offre pavés --------------------------- */
/* ------------------------------------------------------------------ */
#offer p
{
	font-size: 32px;
	color: #444;

	text-align: center;
}

#offer .price
{
	display: inline-block;

	line-height: 42px;
	width: 175px;

	padding: 12px 0;

	font-size: 50px;
	color: #273A86;

	border: 2px solid #273A86;
}

#offer .unit
{
	display: inline-block;

	width: 175px;

	padding: 12px 0;

	background-color: #273A86;

	font-size: 42px;
	color: #FFF;
}

/* ------------------------------------------------------------------ */
/* ------------------------ Parties colorées ------------------------ */
/* ------------------------------------------------------------------ */

.colored-part
{
	background-color: #273A86 !important;
}

.colored-part h1,
.colored-part h2,
.colored-part h3,
.colored-part h4,
.colored-part h5,
.colored-part h6
{
	color: #FFF;
}

.colored-part p,
.colored-part ul > li
{
	color: #FFF;
}

.colored-part .btn
{
	background-color: #FFF !important;

	color: #273A86 !important;

	border-color: transparent;

	box-sizing: border-box;
}

.colored-part .btn:hover
{
	background-color: #273A86 !important;

	color: #FFF  !important;

	border-color: #FFF;
}

.colored-part .btn + a
{
	color: #FFF;
}

.colored-part .lead
{
	color: #FFF;
}

.colored-part .lead:hover
{
	border-color: #FFF;
}

/* ------------------------------------------------------------------ */
/* --------------------------- Carrelage ---------------------------- */
/* ------------------------------------------------------------------ */

#carrelage .fa-chevron-up
{
	background-color: #FBFBFB;
}

/* ------------------------------------------------------------------ */
/* -------------------------- Plaquisterie -------------------------- */
/* ------------------------------------------------------------------ */

#plaquiste .fa-chevron-up
{
	background-color: #273A86;

	color: #FFF;
}

#plaquiste .fa-chevron-up:hover
{
	color: #AAA;
}

/* ------------------------------------------------------------------ */
/* -------------------------- Réalisations -------------------------- */
/* ------------------------------------------------------------------ */

#realisations h4
{
	font-size: 1.1em;
}

#portfolio .nav-pills
{
	background: none;
}

.carousel-control
{
	background: none !important;
}

.carousel-inner > .item > img
{
	width: 100%;

	margin: auto;
}

.item-box figure
{
	height: 130px;
}

@media screen and (max-width: 992px)
{
	.arrow-carousel > span
	{
		font: normal normal normal 38px/1 FontAwesome;
	}

	.item-box figure
	{
		height: 200px;
	}
}

/* ------------------------------------------------------------------ */
/* ---------------------------- Contact ----------------------------- */
/* ------------------------------------------------------------------ */

#contact p
{
	font-size: 1.1em;

	text-align: center;
}

#contact header a
{
	font-size: 1.5em;

	border-bottom: 2px solid transparent;

	transition: all 400ms ease !important;

	webkit-transition: all 400ms ease !important;
}

#contact header a:hover
{
	text-decoration: none;

	border-color: #273A86;
}

#contact p:last-child
{
	margin-top: 20px;
}

#contact form
{
	margin-top: 35px;
}

select,
select option
{
	color: #999 !important;
}

select option[default]
{
	display: none;
}

#contact_submit
{
	padding: 8px 35px;
}

.error_field
{
	position: relative;

	top: -10px;
	left: 10px;

	color: #FF8484;
}

/* ------------------------------------------------------------------ */
/* ----------------------------- Footer ----------------------------- */
/* ------------------------------------------------------------------ */

.google-maps
{
	height: 500px;
	width: 100%;
}

#footer p
{
	padding: 5px 15px;

	font-size: 16px;
}

#credits-modal
{
	padding: 50px;
}

#credits-modal p
{
	font-size: 1.2em;
}

@media screen and (max-width: 992px)
{
	footer
	{
		padding-bottom: 40px;
	}
}
