/* =========== CSS RESET =========== */

html, body, button, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, input, textarea, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, c-footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	text-decoration: none;
	color: inherit;
}
img, article, aside, details, figcaption, figure,
c-footer, header, hgroup, menu, nav, section {
	display: block;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	txt: '';
	txt: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
button{
	background-color: transparent;
	cursor: pointer;
}
*:focus{
	outline: 0;
}
strong{
	font-weight: 600;
}

/* =========== NAMING CONVENTIONS ===========

u- for utility classes (single purposed styling classes)
o- for object classes (used in unrelated contexts, modify with caution)
c- for component (specific piece of UI, can be changed safely)
js- for JavaScript hooks (therefore never used for css styling)
is- & has- for applied temporary statuses

A class with an ending in the plural form refers to the container of said elements
*/

/* =========== BASE RULES & ATOMIC CSS ELEMENTS =========== */

/*Layout and background*/
html{
  scroll-behavior: smooth;
}
.c-blocpage{
	min-height: 100vh;
  max-width: 120rem;
  margin: 0 auto;
	position: relative;
	font-family: 'assistant';
	line-height: 1.7;
	font-size: 1.1rem;
	color: #777a7f;
	overflow-x: hidden;
}
.o-100rem{
	max-width: 100rem;
	margin: 0 auto;
}
.o-section{
	position: relative;
	padding: 6rem 0;
}
.o-flexbox{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
 	-webkit-box-align: center;
 	    -ms-flex-align: center;
 	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}

.o-alone-txt{
	padding: 5.5rem 5.5rem 4rem 5.5rem;
}
.o-alone-txt--nopad{
	padding: 0 2.5rem 0 0;
}
.o-alone-txt--vsmall{
	padding: 3.5rem 5.5rem 4.5rem 5.5rem;
}
@media all and (max-width: 900px){
	.o-alone-txt{
		padding: 4.5rem 2.5rem 3rem 2.5rem;
	}
	.o-alone-txt--nopad{
		padding: 4.5rem 2.5rem 0 2.5rem;
	}
	.o-alone-txt--vsmall{
		padding: 3.5rem 2.5rem;
	}
}
@media all and (max-width: 380px){
	.o-alone-txt{
		padding: 3.5rem 1.75rem 2rem 1.75rem;
	}
	.o-alone-txt--nopad{
		padding: 3.5rem 1.75rem 0 1.75rem;
	}
	.o-alone-txt--vsmall{
		padding: 3.5rem 1.75rem;
	}
}

.o-section--bar{
	padding: 6rem 4.5rem;
	max-width: 101rem;
	margin: 0 auto;
}
.o-section--bar::before{
	width: 100%;
	display: block;
	content:'';
	height: 1px;
	background: #777a7f;
	opacity: 0.5;
}
.o-section--bar::after{
	width: 7.5rem;
	position: absolute;
	top: 6rem;
	-webkit-transform: translateY(-50%);
	    -ms-transform: translateY(-50%);
	        transform: translateY(-50%);
	display: block;
	content:'';
	height: 0.25rem;
	background: #c11902;
}

@media all and (max-width: 800px){
	.o-section--bar{
		padding: 6rem 2.5rem;
		max-width: 101rem;
		margin: 0 auto;
	}
}
@media all and (max-width: 380px){
	.o-section--bar{
		padding: 6rem 1.75rem;
	}
}

.o-section--small{
	margin: 0 0 7.5rem auto;
	max-width: 100rem;
}
.o-section--vsmall{
		margin: 0 0 0 auto;
}

@media all and (max-width: 1740px){
	.o-section--small{
		margin: 0 0 7.5rem 7.5rem;
	}
}
@media all and (max-width: 900px){
	.o-section--small{
		margin: 0;
	}
}

/*Typos*/
@font-face{
    font-family: 'assistant';
    src: url('/fonts/assistant/Assistant-Regular.eot');
    src: url('/fonts/assistant/Assistant-Regular?#iefix') format('embedded-closetype'),
         url('/fonts/assistant/Assistant-Regular.woff2') format('woff2'),
         url('/fonts/assistant/Assistant-Regular.woff') format('woff'),
         url('/fonts/assistant/Assistant-Regular.ttf') format('truetype'),
         url('/fonts/assistant/Assistant-Regular.svg#Assistant-Regular') format('svg');
    font-weight: 400;
}
@font-face{
    font-family: 'assistant';
    src: url('/fonts/assistant/Assistant-SemiBold.eot');
    src: url('/fonts/assistant/Assistant-SemiBold?#iefix') format('embedded-closetype'),
         url('/fonts/assistant/Assistant-SemiBold.woff2') format('woff2'),
         url('/fonts/assistant/Assistant-SemiBold.woff') format('woff'),
         url('/fonts/assistant/Assistant-SemiBold.ttf') format('truetype'),
         url('/fonts/assistant/Assistant-SemiBold.svg#Assistant-SemiBold') format('svg');
    font-weight: 600;
}
@font-face{
    font-family: 'assistant';
    src: url('/fonts/assistant/Assistant-Bold.eot');
    src: url('/fonts/assistant/Assistant-Bold?#iefix') format('embedded-closetype'),
         url('/fonts/assistant/Assistant-Bold.woff2') format('woff2'),
         url('/fonts/assistant/Assistant-Bold.woff') format('woff'),
         url('/fonts/assistant/Assistant-Bold.ttf') format('truetype'),
         url('/fonts/assistant/Assistant-Bold.svg#Assistant-Bold') format('svg');
    font-weight: 700;
}
@font-face{
    font-family: 'assistant';
    src: url('/fonts/assistant/Assistant-ExtraBold.eot');
    src: url('/fonts/assistant/Assistant-ExtraBold?#iefix') format('embedded-closetype'),
         url('/fonts/assistant/Assistant-ExtraBold.woff2') format('woff2'),
         url('/fonts/assistant/Assistant-ExtraBold.woff') format('woff'),
         url('/fonts/assistant/Assistant-ExtraBold.ttf') format('truetype'),
         url('/fonts/assistant/Assistant-ExtraBold.svg#Assistant-ExtraBold') format('svg');
    font-weight: 900;
}
p{
	margin: 0 0 1.5rem 0;
	max-width: 40rem;
}
.o-p--large{
	max-width: 60rem;
}
.u-nowrap{
	white-space: nowrap;
}
.u-bot-marg{
	margin-bottom: 0;
}

h1, h2, h3{
	color: #143153;
	line-height: 1.2;
}
.u-red{
	color: #c11902;
}
.u-fff{
	color: #fff;
}
.u-dkblue{
	color: #143153;
}
.u-blue{
	color: #214c86;
}

.o-h2{
	font-weight: 700;
	font-size: 1.7rem;
	margin-bottom: 1.5rem;
}
.o-h2--big{
	font-weight: 900;
	font-size: 2.2rem;
	margin-top: 4.5rem;
}

.o-inline-a{
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	font-weight: 600;
	color: #214c86;
}
.o-inline-a:hover{
	color: #c11902;
}

/*Lists*/
.o-ul{
	position: relative;
	margin-bottom: 1.5rem;
	list-style: none;
}
.o-ul::before{
	content: '';
	height: 100%;
	position: absolute;
	width: 1px;
	background: #143153;
	opacity: 0.5;
	left: 0;
	top: 0;
}
.o-ul__li{
	margin: 0 0 1.5rem 1.5rem;
}
.o-ul__p{
	margin: 1.5rem 0 0 0;
}
.o-ul__title{
	margin-bottom: 0.5rem;
	font-weight: 700;
}

.o-ol{
	list-style-position: outside;
	list-style: none;
	margin: 1.5rem 0;
	counter-reset: number;
	position: relative;
	max-width: 60rem;
	text-align: left;
}
.o-ol--topmarg{
	margin-top: 0;
}
.o-ol--2{
	counter-reset: number 1;
}
.o-ol--flex{
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
}
.o-ol__li{
	margin: 0 0 1.5rem 0;
	padding-left: 2.5rem;
	counter-increment: number;
	position: relative;
	-webkit-transition: all 1s 0.5s;
	-o-transition: all 1s 0.5s;
	transition: all 1s 0.5s;
	max-width: 60rem;
	font-size: 1.1rem;
}
.o-ol__li:last-child,
.o-ul__li:last-child,
.o-ol:last-child,
.o-ul:last-child{
	margin-bottom: 0;
}
.o-ol__p{
	margin: 1.5rem 0 0 0;
}
.o-ol__title{
	font-size: 1.1rem;
	margin-bottom: 0.5rem;
	font-weight: 700;
}
.o-ol__li::before{
	content: counter(number)'.';
	position: absolute;
	left: 0;
	font-size: 1.5rem;
	line-height: 1.5rem;
	font-weight: 700;
}
@media all and (min-width: 700px){
	.o-ol__li--flex{
		-webkit-box-flex: 1;
		    -ms-flex: 1;
		        flex: 1;
	}
	.o-ol__li--flex:first-child{
		margin: 0 1.5rem 1.5rem 0;
	}
	.o-ol--flex{
		-ms-flex-wrap: nowrap;
		    flex-wrap: nowrap;
	}
}

/*Backgrounds*/
.u-bg--grey{
	background-color: #f6f8fa;
}
.u-bg--dkblue{
	background-color: #143153;
}

/*Décalade et superposition photos*/
.u--topped{
	margin-top: -5.5rem;
}
.u-downed{
	margin-bottom: -6rem;
}
.o-section--sup{
	z-index: 1;
}

/* =========== GENERIC ELEMENTS =========== */

/* Buttons */
.o-btn{
	padding: 1.25rem;
	background-image: -o-linear-gradient(top, #214c86 50%, #143153 50%);
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #214c86), color-stop(50%, #143153));
	background-image: linear-gradient(to bottom, #214c86 50%, #143153 50%);
	background-size: 100% 200%;
	min-width: 14rem;
	background-position: center top;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	display: inline-block;
	line-height: 1.2;
	text-align: center;
  font-weight: 600;
	-webkit-box-shadow: 0 2px 4px 0 rgba(33,38,44,.1);
	        box-shadow: 0 2px 4px 0 rgba(33,38,44,.1);
	cursor: pointer;
	border: 1px solid #214c86;
	color: #fff;
	margin: 1.5rem 2rem 0 0;
}
.o-btns{
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
}
.o-btn--flex{
	-webkit-box-flex: 1;
	    -ms-flex-positive: 1;
	        flex-grow: 1;
	max-width: 17rem;
}
.o-btn--big{
	max-width: 20rem;
}
.o-btn:hover{
	background-position: center bottom;
	border: 1px solid #143153;
}
.o-btn--round{
	border-radius: 2.5rem;
}
.o-btn--red{
	background-image: -o-linear-gradient(top, #c11902 50%, #991908 50%);
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #c11902), color-stop(50%, #991908));
	background-image: linear-gradient(to bottom, #c11902 50%, #991908 50%);
	border: 1px solid #c11902;
}
.o-btn--red:hover{
	border: 1px solid #991908;
}
.o-btn--grey{
	background-image: -o-linear-gradient(top, #991908 50%, #222222 50%);
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #991908), color-stop(50%, #222222));
	background-image: linear-gradient(to bottom, #991908 50%, #222222 50%);
	border: 1px solid #991908;
}
.o-btn--grey:hover{
	border: 1px solid #222222;
}
.o-btn--ghost{
	background-image: -o-linear-gradient(top, transparent 50%, #143153 50%);
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(50%, #143153));
	background-image: linear-gradient(to bottom, transparent 50%, #143153 50%);
	color: #143153;
}
.o-btn--fff{
	background-image: -o-linear-gradient(top, transparent 50%, #214c86 50%);
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(50%, #214c86));
	background-image: linear-gradient(to bottom, transparent 50%, #214c86 50%);
	border: 1px solid #fff;
}
.o-btn--fff:hover{
	border: 1px solid #214c86;
}
.o-btn--ffb{
	background-image: -o-linear-gradient(top, transparent 50%, #143153 50%);
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(50%, #143153));
	background-image: linear-gradient(to bottom, transparent 50%, #143153 50%);
	border: 1px solid #fff;
}
.o-btn--ffb:hover{
	border: 1px solid #143153;
}
.o-btn--ghost:hover{
	color: #fff;
}
.o-btn__icon{
	height: 2.5rem;
	width: 2.5rem;
	position: absolute;
	left: 1rem;
	top: 0.7rem;
}
.o-btn__path{
	fill: #f6f8f9;
}
.o-btn--alone{
	margin-right: 0;
}
.o-btn--accordions{
	margin-bottom: 2rem;
}

/* Equivalent SEO pour système de background cover*/
.o-photo{
  overflow: hidden;
	position: relative;
}
.o-photo__cover{
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
	background: #333;
	position: absolute;
	top: 0;
}
.c-header .o-photo__cover,
.c-reas__el .o-photo__cover{
	position: relative;
}

/* =========== NAVIGATION =========== */

/*Cookies Pop-up */
.c-cookies{
	z-index: 10;
	left: 0;
	right: 0;
	bottom: -30rem;
	height: auto;
	position: fixed;
	background-color: #fff;
	line-height: 1.4;
	opacity: 0;
	-webkit-transition: all 0.5s, opacity 0s 0.8s;
	-o-transition: all 0.5s, opacity 0s 0.8s;
	transition: all 0.5s, opacity 0s 0.8s;
 	-webkit-box-shadow: 1px 0 2rem rgba(0,0,0,0.25);
 	        box-shadow: 1px 0 2rem rgba(0,0,0,0.25);
}
.c-cookies.has-appeared{
	-webkit-transform: translateY(-30rem);
	    -ms-transform: translateY(-30rem);
	        transform: translateY(-30rem);
	opacity: 1;
	-webkit-transition: all 1s, opacity 0s;
	-o-transition: all 1s, opacity 0s;
	transition: all 1s, opacity 0s;
}
.c-cookies__txt{
	padding: 3rem 2rem;
	margin: auto 1rem;
	background: #ffffff;
}
.c-cookies__h2{
	font-size: 1.7rem;
	max-width: 9rem;
	margin: 0 1rem;
}
.c-cookies__p{
	margin: 1rem 0;
}
.c-cookies__ps{
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	margin: 0 4rem;
	max-width: 30rem;
}
.c-cookies__btn{
	min-width: 15rem;
	margin: 1rem;
	display: block;
}
.c-dark-scr{
	z-index: 9;
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	opacity: 0;
	-webkit-transition: opacity 0.5s, -webkit-transform 0s 0.6s;
	transition: opacity 0.5s, -webkit-transform 0s 0.6s;
	-o-transition: opacity 0.5s, transform 0s 0.6s;
	transition: opacity 0.5s, transform 0s 0.6s;
	transition: opacity 0.5s, transform 0s 0.6s, -webkit-transform 0s 0.6s;
	background: rgba(0,0,0,0.5);
	-webkit-transform: translateX(-100%);
	    -ms-transform: translateX(-100%);
	        transform: translateX(-100%);
}
.c-dark-scr.has-appeared{
	opacity: 1;
	-webkit-transform: translateX(0);
	    -ms-transform: translateX(0);
	        transform: translateX(0);
	-webkit-transition: opacity 0.5s, -webkit-transform 0s;
	transition: opacity 0.5s, -webkit-transform 0s;
	-o-transition: opacity 0.5s, transform 0s;
	transition: opacity 0.5s, transform 0s;
	transition: opacity 0.5s, transform 0s, -webkit-transform 0s;
}

@media all and (max-width: 1030px){
	.c-cookies__txt{
		padding: 2rem 0;
	}
	.c-cookies__ps{
		margin: 0 2rem;
	}
}
@media all and (max-width: 800px){
	.c-cookies__h2{
		display: none;
	}
}
@media all and (max-width: 700px){
	.c-cookies__txt{
		text-align: center;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		margin: 0 auto;
		padding: 1.5rem 0 2.5rem 0;
	}
	.c-cookies__ps{
		margin: 0 1.5rem 0.5rem 1.5rem;
	}
	.c-cookies__btn{
		display: inline-block;
		padding: 1rem;
		font-size: 1rem;
		margin: 0.75rem 0.75rem 0 0.75rem;
		min-width: 12rem;
	}
}
@media all and (max-width: 410px){
	.c-cookies__ps{
		margin: 0 1rem;
	}
	.c-cookies__txt{
		padding: 1rem 0 2rem 0;
	}
}
@media all and (max-height: 479px){
	.c-cookies__p{
		margin: 0.5rem 0;
	}
	.c-cookies__btn{
		margin: 0.5rem 0.75rem 0 0.75rem;
	}
	.c-cookies__txt{
		padding: 1rem 0 1.5rem 0;
	}
}

/*Footer*/
.c-footer{
	margin: 0 auto;
	bottom: 0;
	width: 100%;
	max-width: 120rem;
	z-index: 1;
	color: #f2f1ec;
	background: #214c86;
}
.c-footer__content{
	padding: 1.5rem 4.5rem;
	width: 100%;
	max-width: 101rem;
	font-weight: 400;
	margin: 0 auto;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}
.c-footer__p{
	margin: 0;
	text-align: center;
}
.c-footer__a{
	font-weight: 700;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	color: #fff;
}
.c-footer__a:hover{
	color: #c11902;
}

@media all and (max-width: 870px){
	.c-footer__content{
		padding: 2.5rem 1.5rem;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}
	.c-footer__p:first-child{
		margin-bottom: 1rem;
	}
}
@media all and (max-width: 470px){
	.c-footer__bar{
		display: none;
	}
	.c-footer__a--legal{
		display: block;
	}
}

/*Bouton Scroll*/
.c-scroll-btn{
	position: fixed;
	bottom: 2rem;
	right: 2rem;
	background: #151515;
	border-radius: 50%;
	width: 2.5rem;
	height: 2.5rem;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	-webkit-transform: scale(0);
	    -ms-transform: scale(0);
	        transform: scale(0);
	cursor: pointer;
	z-index: 4;
}
.c-scroll-btn__icon{
	width: 0.75rem;
	height: 0.75rem;
}
.c-scroll-btn__path{
	fill: #fff;
}
.c-scroll-btn.has-appeared{
	-webkit-transform: scale(1);
	    -ms-transform: scale(1);
	        transform: scale(1);
}

/*Main nav*/
.o-logo{
	font-size: 1.65rem;
	font-weight: 900;
	text-transform: uppercase;
	color: #143153;
}
@media all and (max-width: 345px){
	.o-logo{
		font-size: 1.5rem;
	}
}

.c-menu-btn{
	width: 2.5rem;
  height: 2.5rem;
	right: 2.5rem;
	top: 1.3rem;
	cursor: pointer;
	position: absolute;
	z-index: 6;
}
.c-menu-btn__bar1::before,
.c-menu-btn__bar1::after,
.c-menu-btn__bar3::before,
.c-menu-btn__bar3:after{
  content: '';
  left: 0.5rem;
  top: 0.5rem;
  position: absolute;
  width: 0.75rem;
	-webkit-transform-origin: left bottom;
	    -ms-transform-origin: left bottom;
	        transform-origin: left bottom;
  height: 0.25rem;
  background: #143153;
	-webkit-transition: top 0.3s, -webkit-transform 0.3s;
	transition: top 0.3s, -webkit-transform 0.3s;
	-o-transition: transform 0.3s, top 0.3s;
	transition: transform 0.3s, top 0.3s;
	transition: transform 0.3s, top 0.3s, -webkit-transform 0.3s;
}
.c-menu-btn__bar1::after{
  right: 0.5rem;
  left: auto;
  -webkit-transform-origin: right bottom;
      -ms-transform-origin: right bottom;
          transform-origin: right bottom;
}
.c-menu-btn__bar2{
  position: absolute;
  width: 1.5rem;
  top: 50%;
  left: 50%;
  height: 0.25rem;
  background: #143153;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
	-webkit-transition: width 0.3s 0.6s, -webkit-transform 0.3s 0.3s;
	transition: width 0.3s 0.6s, -webkit-transform 0.3s 0.3s;
	-o-transition: transform 0.3s 0.3s, width 0.3s 0.6s;
	transition: transform 0.3s 0.3s, width 0.3s 0.6s;
	transition: transform 0.3s 0.3s, width 0.3s 0.6s, -webkit-transform 0.3s 0.3s;
}
.c-menu-btn__bar3::before, .c-menu-btn__bar3:after{
  top: auto;
  bottom: 0.5rem;
	-webkit-transform-origin: left top;
	    -ms-transform-origin: left top;
	        transform-origin: left top;
}
.c-menu-btn__bar3::after {
  right: 0.5rem;
  left: auto;
  -webkit-transform-origin: right top;
      -ms-transform-origin: right top;
          transform-origin: right top;
}
.c-menu-btn.is-switched .c-menu-btn__bar1:before{
  left: 0.6rem;
	top: 0.55rem;
  width: 0.9rem;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-transform-origin: left bottom;
      -ms-transform-origin: left bottom;
          transform-origin: left bottom;
	-webkit-transition: width 0.3s 0.3s, top 0.3s 0.3s, left 0.3s 0.3s, -webkit-transform 0.3s 0.3s;
	transition: width 0.3s 0.3s, top 0.3s 0.3s, left 0.3s 0.3s, -webkit-transform 0.3s 0.3s;
	-o-transition: transform 0.3s 0.3s, width 0.3s 0.3s, top 0.3s 0.3s, left 0.3s 0.3s;
	transition: transform 0.3s 0.3s, width 0.3s 0.3s, top 0.3s 0.3s, left 0.3s 0.3s;
	transition: transform 0.3s 0.3s, width 0.3s 0.3s, top 0.3s 0.3s, left 0.3s 0.3s, -webkit-transform 0.3s 0.3s;
}
.c-menu-btn.is-switched .c-menu-btn__bar1:after{
  right: 0.6rem;
  width: 0.9rem;
	top: 0.55rem;
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
  -webkit-transform-origin: right bottom;
      -ms-transform-origin: right bottom;
          transform-origin: right bottom;
	-webkit-transition: width 0.3s 0.3s, top 0.3s 0.3s, right 0.3s 0.3s, -webkit-transform 0.3s 0.3s;
	transition: width 0.3s 0.3s, top 0.3s 0.3s, right 0.3s 0.3s, -webkit-transform 0.3s 0.3s;
	-o-transition: transform 0.3s 0.3s, width 0.3s 0.3s, top 0.3s 0.3s, right 0.3s 0.3s;
	transition: transform 0.3s 0.3s, width 0.3s 0.3s, top 0.3s 0.3s, right 0.3s 0.3s;
	transition: transform 0.3s 0.3s, width 0.3s 0.3s, top 0.3s 0.3s, right 0.3s 0.3s, -webkit-transform 0.3s 0.3s;
}
.c-menu-btn.is-switched .c-menu-btn__bar2 {
  width: 0.2rem;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
	-webkit-transition: width 0.5s, -webkit-transform 0.3s 0.3s;
	transition: width 0.5s, -webkit-transform 0.3s 0.3s;
	-o-transition: transform 0.3s 0.3s, width 0.5s;
	transition: transform 0.3s 0.3s, width 0.5s;
	transition: transform 0.3s 0.3s, width 0.5s, -webkit-transform 0.3s 0.3s;
}
.c-menu-btn.is-switched .c-menu-btn__bar3:before{
  left: 0.6rem;
	bottom: 0.55rem;
  width: 0.9rem;
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
  -webkit-transform-origin: left top;
      -ms-transform-origin: left top;
          transform-origin: left top;
	-webkit-transition: width 0.3s 0.3s, bottom 0.3s 0.3s, left 0.3s 0.3s, -webkit-transform 0.3s 0.3s;
	transition: width 0.3s 0.3s, bottom 0.3s 0.3s, left 0.3s 0.3s, -webkit-transform 0.3s 0.3s;
	-o-transition: transform 0.3s 0.3s, width 0.3s 0.3s, bottom 0.3s 0.3s, left 0.3s 0.3s;
	transition: transform 0.3s 0.3s, width 0.3s 0.3s, bottom 0.3s 0.3s, left 0.3s 0.3s;
	transition: transform 0.3s 0.3s, width 0.3s 0.3s, bottom 0.3s 0.3s, left 0.3s 0.3s, -webkit-transform 0.3s 0.3s;
}
.c-menu-btn.is-switched .c-menu-btn__bar3:after{
  right: 0.6rem;
  width: 0.9rem;
	bottom: 0.55rem;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-transform-origin: right top;
      -ms-transform-origin: right top;
          transform-origin: right top;
	-webkit-transition: width 0.3s 0.3s, right 0.3s 0.3s, bottom 0.3s 0.3s, -webkit-transform 0.3s 0.3s;
	transition: width 0.3s 0.3s, right 0.3s 0.3s, bottom 0.3s 0.3s, -webkit-transform 0.3s 0.3s;
	-o-transition: transform 0.3s 0.3s, width 0.3s 0.3s, right 0.3s 0.3s, bottom 0.3s 0.3s;
	transition: transform 0.3s 0.3s, width 0.3s 0.3s, right 0.3s 0.3s, bottom 0.3s 0.3s;
	transition: transform 0.3s 0.3s, width 0.3s 0.3s, right 0.3s 0.3s, bottom 0.3s 0.3s, -webkit-transform 0.3s 0.3s;
}

.c-nav{
	width: 100%;
	position: absolute;
	top: 0;
	max-width: 120rem;
	height: 5rem;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	margin: 0 auto;
	z-index: 6;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	padding: 0 2.5rem;
}
.c-nav__menu{
	margin-right: 5rem;
}
.c-nav--fixed.has-appeared{
	-webkit-transform: translateY(5.5rem);
	    -ms-transform: translateY(5.5rem);
	        transform: translateY(5.5rem);
	-webkit-transition: all 0.75s;
	-o-transition: all 0.75s;
	transition: all 0.75s;
}
.c-nav--fixed{
	position: fixed;
	top: -5.5rem;
	height: 5rem;
	background: #fff;
	-webkit-box-shadow: 0 1px 3px 0 rgba(0,0,0,.05);
	        box-shadow: 0 1px 3px 0 rgba(0,0,0,.05);
}

.c-nav__a{
	margin: 0 1.25rem;
	position: relative;
	font-weight: 600;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	color: #6e95b7;
}
.c-nav__a:hover{
	color: #c11902;
}
.c-nav__a.c-nav__a--active{
	color: #143153;
}
.c-nav__a:last-child{
	margin-right: 0;
}

.c-menu{
	opacity: 0;
	position: fixed;
	background: #fff;
	top: 0;
	right: -29rem;
	height: 100vh;
	z-index: 5;
	width: 29rem;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	padding: 2rem 1rem 2rem 3rem;
	text-align: left;
	-webkit-box-shadow: -1px 0 0.4rem rgba(0,0,0,0.2);
	        box-shadow: -1px 0 0.4rem rgba(0,0,0,0.2);
	-webkit-transition: all 0.7s, opacity 0s 0.8s;
	-o-transition: all 0.7s, opacity 0s 0.8s;
	transition: all 0.7s, opacity 0s 0.8s;
}
.c-menu-scr{
	z-index: 4;
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	opacity: 0;
	-webkit-transition: opacity 0.5s, -webkit-transform 0s 0.6s;
	transition: opacity 0.5s, -webkit-transform 0s 0.6s;
	-o-transition: opacity 0.5s, transform 0s 0.6s;
	transition: opacity 0.5s, transform 0s 0.6s;
	transition: opacity 0.5s, transform 0s 0.6s, -webkit-transform 0s 0.6s;
	background: rgba(0,0,0,0.5);
	-webkit-transform: translateX(-100%);
	    -ms-transform: translateX(-100%);
	        transform: translateX(-100%);
}
.c-menu-scr.has-appeared{
	opacity: 1;
	-webkit-transform: translateX(0);
	    -ms-transform: translateX(0);
	        transform: translateX(0);
	-webkit-transition: opacity 0.5s, -webkit-transform 0s;
	transition: opacity 0.5s, -webkit-transform 0s;
	-o-transition: opacity 0.5s, transform 0s;
	transition: opacity 0.5s, transform 0s;
	transition: opacity 0.5s, transform 0s, -webkit-transform 0s;
}
.c-menu.has-appeared{
	opacity: 1;
	-webkit-transition: all 0.7s, opacity 0s;
	-o-transition: all 0.7s, opacity 0s;
	transition: all 0.7s, opacity 0s;
	-webkit-transform: translateX(-100%);
	    -ms-transform: translateX(-100%);
	        transform: translateX(-100%);
}
.c-menu__a{
	margin: 1.5rem 0;
	position: relative;
	display: block;
	font-size: 1.2rem;
	line-height: 1.2;
	font-weight: 600;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}
.c-menu__a--active{
	color: #143153;
}
.c-menu__a:hover{
	color: #c11902;
}
.c-menu__a:first-child{
	margin-top: 0;
}
.c-menu__a:last-child{
	margin-bottom: 0;
}

.c-menu::before, .c-menu::after{
	content:'';
	position: absolute;
	background: rgba(33,76,134,0.075);
}
.c-menu::before{
	top: 0;
	left: 0;
	width: 21rem;
	height: 20%;
	min-height: 7.5rem;
}
.c-menu::after{
	top: 5rem;
	right: 0;
	width: 40%;
	height: 100%;
	background: rgba(246,248,250,0.5);
}

.c-menu__content{
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	-webkit-box-align: end;
	    -ms-flex-align: end;
	        align-items: flex-end;
	position: relative;
	z-index: 2;
}
.c-menu__column:first-child{
	margin-right: 4rem;
}
.c-menu__column + .c-menu__column{
	text-align: right;
}

@media all and (max-width: 925px){
	.c-nav__menu{
		display: none;
	}
}
@media all and (max-width: 475px){
	.c-menu__column:first-child{
		margin-right: 0;
	}
	.c-menu{
		width: 18rem;
		right: -18rem;
		padding-top: 3.5rem;
	}
	.c-menu__a{
		margin: 1rem 0;
		font-size: 1.1rem;
	}
	.c-menu__column + .c-menu__column{
		text-align: left;
		margin-top: 1rem;
	}
	.c-menu::before{
		width: 60%;
	}
}
@media all and (max-height: 420px){
	.c-menu__a{
		margin: 1.1rem 0;
		font-size: 1.1rem;
	}
	.c-menu{
		padding-top: 3.5rem;
	}
}
@media all and (max-width: 380px){
	.c-nav{
		padding: 0 1.25rem;
	}
	.c-menu-btn{
		right: 1.25rem;
	}
}

/* =========== HEADER =========== */
.c-header{
	height: 100vh;
	max-height: 55rem;
	width: 100%;
	position: relative;
	-ms-flex-wrap: nowrap;
	    flex-wrap: nowrap;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
}
.c-header--small{
	max-height: 40rem;
}
.c-header::before, .c-header::after{
	position: absolute;
	content: '';
	background: #f6f8fa;
}
.c-header::before{
	top: 0;
	left: 0;
	width: 45%;
	height: 90%;
}
.c-header::after{
	top: 5rem;
	right: 0;
	width: 30%;
	height: 40%;
}

.c-header__column{
	padding: 5rem 0;
	position: relative;
	height: 90%;
	z-index: 1;
}
.c-header__column--1{
	width: 35%;
}
.c-header__column--2{
	-webkit-box-flex: 2;
	    -ms-flex: 2;
	        flex: 2;
	min-width: 32rem;
	max-width: 45rem;
}
.c-header__column--3{
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	height: 100%;
	padding: 10rem 0 0 0;
}
.c-header__btns{
	position: absolute;
	bottom: 0;
	left: -25rem;
}
.c-header__btn{
	padding: 0 3rem 0 6rem;
	margin: 0;
	bottom: 0;
	left: 0;
	height: 5rem;
	line-height: 5rem;
	position: absolute;
	max-width: none;
}
.o-btn--tel{
	min-width: 12.5rem;
}
.c-header__btn--rel{
	position: relative;
}
.o-btn--devis{
	padding: 0 2.25rem 0 5rem;
	line-height: 4rem;
	height: 4rem;
	position: relative;
}
.c-header__btn--small{
	padding: 0 2rem;
}
.c-header__content{
	height: 100%;
	padding: 0 4.5rem;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
}
.c-header__icon{
	width: 2.5rem;
	height: 2.5rem;
	display: inline-block;
	margin-right: 2rem;
}
.c-header__h1{
	font-size: 3rem;
	font-weight: 900;
	margin-bottom: 2rem;
}
.c-header__devicon{
	height: 3rem;
	width: 3rem;
	left: 1.5rem;
	top: 0.9rem;
}
.c-header__path{
	fill: #214c86;
}
.c-header__quality{
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	color: #214c86;
	font-weight: 600;
	margin-bottom: 0.5rem;
}
.c-header__qualities{
	margin-top: 1.5rem;
}

@media all and (max-width: 1200px), all and (max-height: 800px){
	.c-header__column--1, .c-header__column--2{
		height: 100%;
	}
	.c-header{
		margin-bottom: 7.5rem;
	}
	.c-header--small{
		margin-bottom: 0;
	}
	.c-header__column--3{
		width: 20%;
		height: 100%;
		padding: 2.5rem 0 0 0;
		top: 7.5rem;
	}
	.c-header::before{
		height: 100%;
	}
}
@media all and (max-width: 1145px){
	.c-header__btns{
		left: -12.5rem;
	}
	.c-header__column--3{
		display: none;
	}
}
@media all and (max-height: 750px){
	.c-header__qualities{
		margin-top: 0;
	}
	.c-header__quality{
		margin-bottom: 0.25rem;
	}
	.c-header__h1{
		font-size: 2.5rem;
		margin-bottom: 1.5rem;
	}
}
@media all and (max-width: 750px){
	.c-header__content{
		padding: 0 2.5rem;
	}
	.c-header__column--2{
		min-width: 28rem;
	}
	.o-btn--tel{
		min-width: 11rem;
	}
	.c-header__btn--go{
		display: none;
	}
	.c-header__btns{
		left: -11rem;
	}
}
@media all and (max-width: 650px){
	.c-header__column--1{
		display: none;
	}
	.c-header__column--2{
		min-width: 20rem;
	}
	.c-header__btns{
		left: 0;
	}
}
@media all and (max-height: 575px), all and (max-width: 475px){
	.c-header__h1{
		font-size: 2rem;
		margin-bottom: 1rem;
	}
	.c-header__p{
		margin-bottom: 1rem;
	}
	.c-header__btn{
		padding: 0 1.5rem 0 5rem;
		height: 4rem;
		line-height: 4rem;
	}
	.c-header__devicon{
		height: 2.5rem;
		width: 2.5rem;
		left: 1rem;
		top: 0.75rem;
	}
	.c-header__column{
		padding-bottom: 4rem;
	}
	.c-header__quality{
		font-size: 1rem;
		margin-bottom: 0.25rem;
	}
	.c-header__icon{
		width: 2rem;
		height: 2rem;
		margin-right: 1rem;
	}
	.c-header::before{
		height: 105%;
	}
	.o-btn--tel{
		padding: 0 2rem;
	}
}
@media all and (max-width: 475px){
	.c-header__btns{
		-webkit-box-orient: vertical;
		-webkit-box-direction: reverse;
		    -ms-flex-direction: column-reverse;
		        flex-direction: column-reverse;
	}
	.c-header__btns .c-header__btn{
		-ms-flex-item-align: stretch;
		    -ms-grid-row-align: stretch;
		    align-self: stretch;
	}
	.c-header__column--2{
		padding-bottom: 8rem;
	}
}
@media all and (max-height: 510px), all and (max-width: 380px),
all and (max-height: 600px) and (max-width: 479px){
	.c-header__qualities{
		display: none;
	}
	.c-header__content{
		padding: 0 1.75rem;
	}
}
@media all and (max-height: 360px){
	.c-header__p{
		font-size: 1rem;
	}
	.c-header__h1{
		font-size: 1.75rem;
		margin-bottom: 1rem;
	}
	.c-header__btn{
		padding: 0 1.5rem 0 4.5rem;
		height: 3.5rem;
		line-height: 3.5rem;
		font-size: 1rem;
	}
	.c-header__devicon{
		height: 2rem;
		width: 2rem;
		left: 1rem;
		top: 0.75rem;
	}
	.c-header__column{
		padding-bottom: 3.5rem;
	}
}

/* =========== 1ST PARAGRAPH =========== */
.c-intro{
	margin: 0 auto;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	-ms-flex-wrap: nowrap;
	    flex-wrap: nowrap;
	padding: 5.5rem 0;
	position: relative;
}
.c-intro__titles{
	width: 45%;
	-webkit-box-align: end;
	    -ms-flex-align: end;
	        align-items: flex-end;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	position: relative;
	z-index: 1;
}
.c-intro__h2{
	font-size: 2rem;
	width: 30rem;
}
.c-intro__sub{
	position: relative;
	color: #214c86;
	font-weight: 600;
	font-size: 1.2rem;
	margin-left: 6.5rem;
	width: 23.5rem;
}
.c-intro__sub::before{
	content: '';
	width: 5rem;
	height: 1px;
	background: #777a7f;
	opacity: 0.5;
	position: absolute;
	left: -6.5rem;
	top: 1rem;
}
.c-intro__txt{
	padding: 0 5.5rem;
	width: 55%;
}
.c-intro__txt p:last-child{
	margin-bottom: 0;
}

.c-intro__filigrane{
	position: absolute;
	bottom: 9rem;
	left: 0;
	max-width: 45%;
	max-height: 60%;
	width: 100%;
}
.c-intro__filigrane--bot{
	bottom: 0;
}
.c-intro__fili--reverse{
	-webkit-transform: scaleX(-1);
	    -ms-transform: scaleX(-1);
	        transform: scaleX(-1);
}
.c-intro__path{
	fill: #f6f8fa;
}

@media all and (max-width: 1200px){
	.c-intro__titles{
		padding: 0 0 0 3.5rem;
		-webkit-box-align: start;
		    -ms-flex-align: start;
		        align-items: flex-start;
	}
	.c-intro__h2, .c-intro__sub{
		width: auto;
	}
	.c-intro__txt{
		padding: 0 3.5rem;
	}
	.c-intro{
		padding: 4.5rem 0;
	}
}
@media all and (max-width: 980px){
	.c-intro{
		padding-top: 0;
	}
}
@media all and (max-width: 900px){
	.c-intro__titles{
		margin-bottom: 0.5rem;
		padding: 0 2.5rem;
		width: 80%;
	}
	.c-intro__txt{
		padding: 0 2.5rem;
		width: 100%;
	}
	.c-intro__txt p{
		max-width: 100%;
	}
	.c-intro{
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}
	.c-intro__filigrane{
		bottom: auto;
		left: 40%;
		top: -3rem;
		-webkit-transform: scaleX(-1);
		    -ms-transform: scaleX(-1);
		        transform: scaleX(-1);
		max-width: none;
		height: 11rem;
	}
}
@media all and (max-width: 550px){
	.c-intro__sub::before{
		left: -3.5rem;
		width: 2rem;
	}
	.c-intro__sub{
		margin-left: 3.5rem;
	}
	.c-intro__h2{
		font-size: 1.75rem;
	}
	.c-intro__titles{
		width: 100%;
	}
}
@media all and (max-width: 380px){
	.c-intro__txt{
		padding: 0 1.75rem;
	}
	.c-intro__titles{
		padding: 0 1.75rem;
	}
}

.c-rappel{
	margin-top: 4rem;
	padding: 2rem;
	width: 100%;
	max-width: 40rem;
	border: 1px solid rgba(119, 122, 127, 0.5);
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}
.c-rappel__input{
	-ms-flex-item-align: stretch;
	    -ms-grid-row-align: stretch;
	    align-self: stretch;
	-webkit-box-flex: 2;
	    -ms-flex: 2;
	        flex: 2;
	padding: 1rem;
	background: #f6f8fa;
	position: relative;
}
.c-rappel__input--fff{
	background: #fff;
}
.c-btn--rappel{
	margin: 0;
	-ms-flex-item-align: stretch;
	    -ms-grid-row-align: stretch;
	    align-self: stretch;
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
}
.c-rappel__input--bts{
	position: absolute;
	opacity: 0;
}
@media all and (max-width: 575px){
	.c-btn--rappel{
		width: 100%;
	}
	.c-rappel{
		padding: 1rem;
	}
}

/* =========== Partie Photo + Texte =========== */

.o-section--sup{
	z-index: 1;
	padding: 0;
}
.c-bipart__h2{
	font-size: 1.6rem;
}
.c-bipart__txt, .o-bicols__txt{
	padding: 5.5rem;
	width: 55%;
}
.c-bipart__img{
	width: 45%;
	-ms-flex-item-align: stretch;
	    -ms-grid-row-align: stretch;
	    align-self: stretch;
}
.c-bipart{
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
}
.c-bipart--reverse{
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
}
.c-bipart__txt p:last-child,
.o-bicols__txt p:last-child{
	margin-bottom: 0;
}
.o-bicols{
	-ms-flex-wrap: nowrap;
	    flex-wrap: nowrap;
}
.o-bicols__img{
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	-ms-flex-item-align: stretch;
	    -ms-grid-row-align: stretch;
	    align-self: stretch;
}
.o-bicols__img--tall{
	min-height: 40rem;
}
.o-bicols__img--right{
	margin-left: 4.5rem;
}
.o-bicols__img.u-topped{
	margin-top: -11rem;
	z-index: 1;
}
.o-bicols__col{
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	-ms-flex-item-align: stretch;
	    -ms-grid-row-align: stretch;
	    align-self: stretch;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	width: 55%;
}
.o-bicols__col--img{
	width: 45%;
}
.o-bicols__imgs-col{
	width: 35%;
}

.o-bicols__cta{
	background: #143153;
	-ms-flex-item-align: stretch;
	    -ms-grid-row-align: stretch;
	    align-self: stretch;
	padding: 3.5rem 2.5rem;
	color: #fff;
	text-align: center;
}
.o-bicols__cta--blue{
	background: #214c86;
}
.o-imgs-col__img{

}
.o-bicols__txt{
	padding: 5.5rem;
	width: auto;
}
.o-bicols__col--img .o-bicols__txt{
	 padding-right: 0;
 }
.o-bicols__h3{
 font-size: 1.5rem;
 font-weight: 700;
 margin-bottom: 1.5rem;
}
p + .o-bicols__h3,
a + .o-bicols__h3,
ol + .o-bicols__h3{
	margin-top: 3.5rem;
}
.u-el--tocome{
	display: none;
}
.u-el--togo{
	display: block;
}
.o-bicols__txt--toppad{
	padding-top: 0;
}
.o-bicols__txt--botpad{
 padding-bottom: 0;
}
.o-bicols__txt--nopad{
	padding: 0 3.5rem 0 0;
}
._grey-patch{
	position: relative;
}
._grey-patch::before{
	content: '';
	position: absolute;
	width: 20rem;
	z-index: -1;
	right: -20rem;
	top: 0;
	height: 100%;
	background: #f6f8fa;
 }
.o-bicols__cta--faitage{
	margin-top: 2.5rem;
}
.o-bicols__img--faitage.u-topped{
	margin-top: -7rem;
}

@media all and (max-width: 1200px){
	.o-bicols__txt{
		padding: 4.5rem 3.5rem;
	}
	.o-bicols__txt--nopad{
		padding: 0 3.5rem 0 0;
	}
	.o-bicols__txt--toppad{
		padding-top: 0;
	}
	.o-bicols__txt--botpad{
	 padding-bottom: 0;
	}
}
@media all and (max-width: 900px){
	.c-bipart__txt, .o-bicols__txt{
		width: 100%;
		max-width: none;
		padding: 4.5rem 2.5rem;
	}
	.c-bipart__img, .o-bicols__img{
		width: 100%;
		margin-top: 0;
		margin-bottom: 0;
		min-height: 20rem;
	}
	.c-bipart{
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		margin-top: 0;
	}
	.c-bipart--reverse, .o-bicols{
		-webkit-box-orient: vertical;
		-webkit-box-direction: reverse;
		    -ms-flex-direction: column-reverse;
		        flex-direction: column-reverse;
	}
	.o-bicols--reverse{
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}
	.o-bicols__col{
		width: 100%;
	}
	.o-bicols__col--reverse{
		-webkit-box-orient: vertical;
		-webkit-box-direction: reverse;
		    -ms-flex-direction: column-reverse;
		        flex-direction: column-reverse;
	}
	.o-bicols__col--img{
		width: 100%;
	}
	.o-bicols__col--cta{
		background: #143153;
		color: #fff;
	}
	.o-bicols__col--cta .o-bicols__h3{
		color: #fff;
	}
	.o-bicols__col--cta .o-btn{
		background-image: -o-linear-gradient(top, transparent 50%, #214c86 50%);
		background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(50%, #214c86));
		background-image: linear-gradient(to bottom, transparent 50%, #214c86 50%);
		border: 1px solid #fff;
		color: #fff;
	}
	.o-bicols__col--cta .o-btn:hover{
		border: 1px solid #214c86;
	}
	.u-el--tocome{
		display: block;
	}
	.u-el--togo{
		display: none;
	}
	.o-bicols__cta{
		text-align: left;
	}
	.o-bicols__txt--double{
		padding-top: 0;
	}
	.o-bicols__img--right{
		margin-left: 0;
	}
	.o-bicols__txt--nopad{
		padding: 0 2.5rem 3rem 2.5rem;
	}
}
@media all and (max-width: 380px){
	.c-bipart__txt, .o-bicols__txt{
		padding: 3.5rem 1.75rem;
	}
	.o-bicols__txt--nopad{
		padding: 0 1.75rem 3rem 1.75rem;
	}
}

/* =========== BANDEAU CTA =========== */
.c-cta{
	padding: 4.5rem;
	color: #fff;
}
.c-cta__content{
	max-width: 75rem;
	margin: 0 auto;
	-ms-flex-wrap: nowrap;
	    flex-wrap: nowrap;
}
.c-cta__col{
	max-width: 40rem;
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
}
.c-cta__txtcol{
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	margin-left: 4.5rem;
}
.c-cta__txtcol p:last-child{
	margin-bottom: 0;
}
.c-cta__title{
	font-size: 3rem;
	line-height: 1.2;
	font-weight: 900;
	margin-bottom: 2rem;
}

@media all and (max-width: 900px){
	.c-cta__col{
		max-width: none;
	}
}
@media all and (max-width: 500px){
	.c-cta{
		padding: 3rem 2.5rem;
	}
	.c-cta__title{
		font-size: 2.25rem;
	}
}
@media all and (max-width: 380px){
	.c-cta{
		padding: 3rem 1.75rem;
	}
}

/* =========== CITATION =========== */
.o-citation{
	position: relative;
	padding: 7.5rem 5.5rem 6.5rem 5.5rem;
}
.o-citation__p{
	font-size: 1.3rem;
	font-weight: 700;
	margin-left: 8rem;
}
.o-citation__quote{
	position: absolute;
	top: 5.5rem;
	left: 6.5rem;
	width: 4.5rem;
}
.o-citation__path{
	fill: #777a7f;
}
.o-citation__btn{
	margin-left: 8rem;
	color: #fff;
}

@media all and (max-width: 900px){
	.o-citation__quote{
		top: -1rem;
		left: 2.5rem;
		width: 3.5rem;
	}
	.o-citation{
		padding: 1rem 2.5rem 4.5rem 2.5rem;
	}
	.o-citation__p{
		margin-left: 5rem;
		font-size: 1.2rem;
		position: relative;
	}
	.o-citation__btn{
		margin-left: 5rem;
	}
}
@media all and (max-width: 450px){
	.o-citation__quote{
		width: 80%;
		top: -4rem;
		left: 0;
		opacity: 0.1;
	}
	.o-citation__p, .o-citation__btn{
		margin-left: 0;
	}
}
@media all and (max-width: 380px){
	.o-citation{
		padding: 0 1.75rem 4.5rem 1.75rem;
	}
}

/* =========== CONTACT PART =========== */
.c-endsec{
	background-image: -o-linear-gradient(top, #143153 60%, #214c86 40%);
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(60%, #143153), color-stop(40%, #214c86));
	background-image: linear-gradient(to bottom, #143153 60%, #214c86 40%);
	padding-top: 4.5rem;
}
.c-endsec__content{
	max-width: 92rem;
	margin: 0 auto;
}

.c-endsec__intro{
	padding: 2.5rem 4.5rem 0 4.5rem;
}
.c-endsec__h2{
	color: #fff;
	font-weight: 900;
	font-size: 3.2rem;
	display: inline-block;
	margin: 0 5.5rem;
	max-width: 30rem;
}
.c-endsec__p{
	display: inline-block;
	color: #fff;
	max-width: 28rem;
	position: relative;
	top: 2rem;
}
.c-endsec__qualities{
	margin-left: 40rem;
	max-width: 45rem;
	padding: 5.5rem 0;
	font-size: 1.2rem;
}
.c-endsec__quality{
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	-ms-flex-wrap: nowrap;
	    flex-wrap: nowrap;
	color: #fff;
	font-weight: 600;
	margin: 0 3rem 1.5rem 0;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
}
.c-endsec__path{
	fill: #fff;
}
.c-endsec__icon{
	width: 2.5rem;
	height: 2.5rem;
	display: inline-block;
	margin-right: 1.5rem;
	min-width: 2rem;
}

.c-contact__map{
	height: 50rem;
	position: absolute;
	top: -16rem;
	left: -12rem;
}

.c-contact{
	margin: 0 0 0 auto;
	max-width: 80rem;
	position: relative;
	-webkit-box-shadow: -0.5rem -0.5rem 2rem rgba(0,0,0,0.2);
	        box-shadow: -0.5rem -0.5rem 2rem rgba(0,0,0,0.2);
}
.c-contact__pt{
	padding: 4.5rem 3rem 2.5rem 4.5rem;
	-ms-flex-item-align: stretch;
	    -ms-grid-row-align: stretch;
	    align-self: stretch;
	position: relative;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	overflow: hidden;
}
.c-contact__pt--fff{
	width: 30rem;
	padding: 4.5rem 4.5rem 2.5rem 3rem;
	background: #fff;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
}
.c-contact__pt--grey{
	background: #f6f8fa;
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
}
.c-contact__h2{
	font-size: 2.1rem;
	font-weight: 900;
	margin-bottom: 1rem;
}

.c-contact__logo{
	margin-bottom: 2rem;
}
.c-contact__icon{
	width: 2.5rem;
	margin-right: 1rem;
}
.c-contact__iconpath{
	fill: #c11902;
}
.c-contact__info{
	margin-bottom: 1.5rem;
	position: relative;
	z-index: 1;
	-ms-flex-wrap: nowrap;
	    flex-wrap: nowrap;
}
.c-contact__a{
	font-weight: 700;
	display: block;
	font-size: 1.2rem;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}
.c-contact__a:hover{
	color: #143153;
}
.c-contact__fili{
	width: 35rem;
	right: -8.5rem;
	bottom: -4rem;
	position: absolute;
}
.c-contact__filipath{
	fill: #f6f8fa;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.c-contact__form{
	width: 100%;
	padding-bottom: 2rem;
}
.c-contact__label{
	color: #777;
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	min-width: 18rem;
	max-width: 20rem;
	position: relative;
	margin: 2rem 2rem 0 0;
	display: block;
}
.c-contact__label--bts{
	position: absolute;
	opacity: 0;
}
.c-contact__inputs{
	width: 100%;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
}
.c-contact__input--bts{
	position: absolute;
}
.c-contact__input, .c-contact__textarea{
	color: #487479;
	display: block;
	border-bottom: 1px solid #6e95b7;
	margin-top: 0.5rem;
	width: 100%;
	padding: 0.5rem 0;
	background: none;
	font-weight: 600;
}
.c-contact__btn{
	width: 12rem;
	float: right;
	margin-right: 0;
}
.c-contact__textarea{
	resize: none;
	min-height: 10rem;
	width: 100%;
}
.c-contact__label--textarea{
	 width: 100%;
 }

 @media all and (max-width: 1450px){
 	.c-endsec__h2{
 		margin: 0 5.5rem 0 0;
 	}
 	.c-endsec__qualities{
 		margin-left: 30rem;
 	}
	.c-contact{
		max-width: 90%;
	}
 }
 @media all and (max-width: 1285px){
	 .c-endsec__h2{
  		margin: 0 3.5rem 0 0;
			font-size: 2.8rem;
  	}
 }
 @media all and (max-width: 1170px){
	 .c-endsec__p{
	 	max-width: 40rem;
	 	top: 0;
		margin-left: 25rem;
		margin-top: 4.5rem;
	 }
	 .c-endsec__h2{
 		margin-right: 0;
 	}
	 .c-endsec__qualities{
  		padding-top: 2.5rem;
  	}
		.c-contact__map{
			top: -25rem;
		}
 }

@media all and (max-width: 1023px){
	.c-contact__map{
		height: 40rem;
		position: absolute;
		left: -2rem;
	}
	.c-endsec__qualities{
		 margin-left: 25rem;
		 font-size: 1.1rem;
	 }
	 .c-endsec__p{
		margin-left: 18rem;
	 }
	.c-contact{
		max-width: 100%;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}
	.c-endsec__quality{
		margin: 0 0 1.5rem 0;
	}
	.c-contact__pt{
		padding: 3.5rem 2rem 2.5rem 2rem;
	}
	.c-contact__pt--fff{
		width: 100%;
	}
	.c-contacts{
		padding-bottom: 0;
	}
	.c-contactsec{
		padding-bottom: 0;
	}
}
@media all and (max-width: 750px){
	.c-contact__map{
		left: auto;
		right: -15rem;
	}
	.c-endsec__p, .c-endsec__qualities{
	 margin-left: 0;
	 margin-right: 8rem;
	}
}
@media all and (max-width: 585px){
	.c-contact__map{
		height: 30rem;
		top: -20rem;
		right: -12.5rem;
	}
	.c-endsec__qualities{
	 margin-right: 6rem;
	 padding: 2.5rem 0;
	}
	.c-endsec__p{
	 margin-right: 0;
	 margin-top: 2.5rem;
	}
	.c-endsec__intro{
		padding: 2.5rem 2.5rem 0 2.5rem;
	}
	.c-endsec__h2{
		font-size: 2.2rem;
	}
	.c-endsec{
		padding-top: 2rem;
	}
}
@media all and (max-width: 420px){
	.c-contact__label{
		min-width: 100%;
		max-width: none;
		margin: 2rem 0 0 0;
	}
	.c-contact__pt{
		padding: 2.5rem 1.5rem;
	}
	.c-contact__btn{
		right: 2.25rem;
	}
	.c-endsec__intro{
		padding: 2.5rem 1.5rem 0 1.5rem;
	}
}

/* =========== FAQ =========== */
.c-accordions__btn{
	border-bottom: 2px solid #c11902;
	border-right: 2px solid #c11902;
	width: 0.75rem;
	height: 0.75rem;

	-webkit-transform: rotate(45deg);
	    -ms-transform: rotate(45deg);
	        transform: rotate(45deg);
	-webkit-transition: -webkit-transform 0.6s;
	transition: -webkit-transform 0.6s;
	-o-transition: transform 0.6s;
	transition: transform 0.6s;
	transition: transform 0.6s, -webkit-transform 0.6s;
}
.c-accordions__question{
	margin-bottom: 2rem;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	max-width: 45rem;
	cursor: pointer;
}
.c-accordions__answer + .c-accordions__question{
	margin-top: 3rem;
}
.c-accordions__question.is-active .c-accordions__btn{
	-webkit-transform: rotate(225deg);
	    -ms-transform: rotate(225deg);
	        transform: rotate(225deg);
}
.c-accordions__answer{
	max-height: 0;
	border-bottom: 1px solid rgba(119, 122, 127, 0.5);
	max-width: 45rem;
	-webkit-transition: all 1s;
	-o-transition: all 1s;
	transition: all 1s;
	overflow-y: hidden;
	text-align: left;
}
.c-accordions__answer .o-ul:last-child{
	margin-bottom: 1.5rem;
}
.c-accordions__question.is-active + .c-accordions__answer{
	max-height: 50rem;
}
.c-accordions__question.is-active + .c-accordions__answer--long{
	max-height: 70rem;
}
.c-accordions__h3{
	font-weight: 700;
	font-size: 1.2rem;
	max-width: 85%;
}
.c-accordions__h3--big{
	 font-size: 1.7rem;
 }
.c-accordions__column{
	width: 47.5%;
}
.c-accordions{
	margin-top: 4.5rem;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
}

@media all and (max-width: 940px){
	.c-accordions__h3--big{
		 font-size: 1.5rem;
	 }
}
@media all and (max-width: 800px){
	.c-accordions__column{
		width: 100%;
	}
	.c-accordions__column + .c-accordions__column{
		margin-top: 3rem;
	}
}
@media all and (max-width: 400px){
	.c-accordions__column{
		width: 100%;
	}
	.c-accordions__question.is-active + .c-accordions__answer{
		max-height: 60rem;
	}
	.c-accordions__question.is-active + .c-accordions__answer--long{
		max-height: 80rem;
	}
}

/* =========== PRESTATIONS =========== */
.c-domains__h2{
	margin-bottom: 3.5rem;
}
.c-domain{
	border: 2px solid #143153;
	padding: 3rem 3rem 3rem 5rem;
	position: relative;
	margin: 2rem;
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	max-width: 30rem;
	min-width: 23.25rem;
	cursor: pointer;
	-ms-flex-wrap: nowrap;
	    flex-wrap: nowrap;
}
.c-domain::before, .c-domain::after{
	content: '';
	background: #fff;
	position: absolute;
}
.c-domain::before{
	top: -1%;
	right: -1%;
	height: 100%;
	width: 25%;
}
.c-domain::after{
	bottom: -3%;
	right: -1%;
	height: 50%;
	width: 85%;
}
.c-domain__txt{
	position: relative;
	z-index: 1;
}
.c-domain__p{
	margin: 0;
}
.c-domain__h3{
	font-weight: 700;
	font-size: 1.5rem;
	margin-bottom: 0.75rem;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}
.c-domain__arrow{
	position: absolute;
	z-index: 1;
	bottom: 0;
	right: 24%;
	max-width: 3rem;
	width: 100%;
	height: 2px;
	background: #143153;
	-webkit-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
}
.c-domain__arrow::before{
	content: '';
	width: 0.5rem;
	height: 0.5rem;
	position: absolute;
	right: -0.25rem;
	top: 50%;
	-webkit-transform: translateY(-50%) rotate(45deg);
	    -ms-transform: translateY(-50%) rotate(45deg);
	        transform: translateY(-50%) rotate(45deg);
	border-right: 2px solid #143153;
	border-top: 2px solid #143153;
	-webkit-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
}
.c-domain__bubble{
	border-radius: 50%;
	background-image: -o-linear-gradient(top, #fff 50%, #151515 50%);
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #fff), color-stop(50%, #151515));
	background-image: linear-gradient(to bottom, #fff 50%, #151515 50%);
	border: 2px solid #143153;
	background-size: 100% 200%;
	background-position: center top;
	-webkit-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
	width: 6rem;
	height: 6rem;
	padding: 1rem;
	position: absolute;
	left: 0;
	-webkit-transform: translateX(-50%);
	    -ms-transform: translateX(-50%);
	        transform: translateX(-50%);
	z-index: 1;
}
.c-domain:hover .c-domain__bubble{
	background-position: center bottom;
	border: 2px solid #151515;
}
.c-domain:hover .c-domain__h3{
	color: #c11902;
}
.c-domain:hover .c-domain__arrow{
	max-width: 5rem;
	background: #c11902;
}
.c-domain:hover .c-domain__arrow::before{
	border-right: 2px solid #c11902;
	border-top: 2px solid #c11902;
}
.c-domain__icon, .c-rules__icon{
	height: 3rem;
}
.c-domain__path, .c-rules__path{
	fill: #143153;
	-webkit-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
}
.c-domain:hover .c-domain__path{
	fill: #fff;
}

@media all and (max-width: 1023px){
	.c-domain__bubble{
		width: 5rem;
		height: 5rem;
	}
	.c-domain__icon{
		height: 2.5rem;
	}
	.c-domain{
		padding: 2.5rem 0 2.5rem 4.5rem;
		min-width: 18rem;
	}
	.c-domains__h2{
		margin-bottom: 2.5rem;
	}
}
@media all and (max-width: 450px){
	.c-domain{
		padding: 2.5rem 0 2.5rem 4rem;
		min-width: 15rem;
		margin: 2rem 0;
	}
	.c-domains{
		padding-right: 1.5rem;
	}
}
@media all and (max-width: 380px){
	.c-domain{
		margin: 2rem 0 2rem 0.75rem;
	}
}

/*Alternative Traitement Charpente*/
.c-rules{
	padding-top: 0;
	padding-bottom: 2.5rem;
}
.c-rules__h2{
	margin: 3.5rem 0 2.5rem 0;
}
.c-rules__h3{
	margin-bottom: 1rem;
	font-weight: 700;
	font-size: 1.4rem;
}
.c-rules::after{
	top: 0;
}
.c-rules__content{
	margin: 0 auto;
	max-width: 80rem;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
}
.c-rules__el{
	-ms-flex-wrap: nowrap;
	    flex-wrap: nowrap;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	padding-left: 8rem;
	position: relative;
	margin: 2rem;
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	min-width: 23.5rem;
	max-width: 40rem;
}
.c-rules__bubble{
	border-radius: 50%;
	border: 2px solid #143153;
	width: 6rem;
	height: 6rem;
	padding: 1rem;
	position: absolute;
	left: 0;
	z-index: 1;
}
@media all and (max-width: 1023px){
	.c-rules__el{
		margin: 1rem;
	}
}
@media all and (max-width: 570px){
	.c-rules__el{
		min-width: 15rem;
		margin: 1rem 0;
		padding-left: 7rem;
	}
	.c-rules__bubble{
		width: 5rem;
		height: 5rem;
	}
	.c-rules__icon{
		height: 2.5rem;
	}
}
@media all and (max-width: 450px){
	.c-rules__el{
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		text-align: center;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		padding-left: 0;
	}
	.c-rules__bubble{
		position: relative;
		margin-bottom: 1.5rem;
	}
}

/* =========== REALISATIONS =========== */
.c-reas{
	padding: 5.5rem 4.5rem;
}
.c-intro__titles--reas{
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	padding-left: 1rem;
}
.c-reas__els{
	margin: 1.5rem 0 4.5rem 0;
}
.c-reas__el{
	margin: 1rem;
	position: relative;
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	min-width: 17rem;
	max-width: 25rem;
	height: 25rem;
	background: #fff;
	-webkit-box-shadow: 0.5rem 0.5rem 2rem rgba(0,0,0,0.2);
	        box-shadow: 0.5rem 0.5rem 2rem rgba(0,0,0,0.2);
	cursor: pointer;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}
.c-reas__loc{
	background: #214c86;
	border-radius: 2.5rem;
	height: 3.5rem;
	line-height: 3.5rem;
	padding: 0 3.5rem;
	text-transform: uppercase;
	margin: 0;
}
.c-reas__txt{

}
.c-reas__overlay{
	background-color: rgba(0,0,0,0.5);
	opacity: 0;
	-webkit-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
	width: 100%;
	height: 100%;
	position: absolute;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
	top: 0;
	color: #fff;
	padding: 2.5rem;
	font-weight: 600;
}
.c-reas__el:hover .c-reas__overlay{
	opacity: 1;
}
.c-reas__slideshow{
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	-webkit-transform: translateX(-100%);
	    -ms-transform: translateX(-100%);
	        transform: translateX(-100%);
	-webkit-transition: opacity 0.5s, -webkit-transform 0s 0.6s;
	transition: opacity 0.5s, -webkit-transform 0s 0.6s;
	-o-transition: transform 0s 0.6s, opacity 0.5s;
	transition: transform 0s 0.6s, opacity 0.5s;
	transition: transform 0s 0.6s, opacity 0.5s, -webkit-transform 0s 0.6s;
	opacity: 0;
	z-index: 11;
	padding: 0 5.5rem 0 0;
}
.c-reas__slides{
	height: 100%;
	margin: 0 auto;
	position: relative;
	overflow: hidden;
}
.c-reas__slide{
	height: 100%;
	max-width: 100%;
	position: absolute;
	opacity: 0;
	-webkit-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}
.c-reas__slideshow.is-shown{
	-webkit-transform: translateX(0);
	    -ms-transform: translateX(0);
	        transform: translateX(0);
	-webkit-transition: opacity 0.5s, -webkit-transform 0s;
	transition: opacity 0.5s, -webkit-transform 0s;
	-o-transition: transform 0s, opacity 0.5s;
	transition: transform 0s, opacity 0.5s;
	transition: transform 0s, opacity 0.5s, -webkit-transform 0s;
	opacity: 1;
}
.c-reas__slide.is-shown{
	opacity: 1;
	position: relative;
}
.c-reas__img{
	height: 100%;
	width: auto;
}
.c-reas__desc{
	position: absolute;
	bottom: 0;
	width: 100%;
	max-width: 100vw;
	background-color: rgba(0,0,0,0.5);
	color: #fff;
	padding: 2rem;
	z-index: 1;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}
.c-desc__txt{
	margin: 1.5rem 2rem 1.5rem 0;
	font-size: 1.2rem;
}
.c-reas__close-scr{
	position: absolute;
	width: 100%;
	height: 100%;
	background: #3E3A39;
	opacity: 0.8;
	top: 0;
	left: 0;
}
.c-reas__slideshow::before{
	content: '';
	width: 5.5rem;
	position: absolute;
	background: #232323;
	height: 100%;
	top: 0;
	right: 0;
	z-index: 1;
}
.c-reas__ctrls{
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	z-index: 1;
	position: absolute;
	right: 0;
	bottom: 0;
}
.c-reas__ctrl{
	padding: 0;
	width: 5.5rem;
	height: 7.25rem;
	background-color: #EEFBF9;
	cursor: pointer;
}
.c-reas__ctrl:hover .c-reas__icon{
	-webkit-transform: scale(1.5);
	    -ms-transform: scale(1.5);
	        transform: scale(1.5);
}
.c-reas__ctrl:last-of-type{
	background-color: #143153;
}
.c-reas__cross{
	position: absolute;
	width: 1.5rem;
	top: 2rem;
	right: 2rem;
	cursor: pointer;
	z-index: 1;
}
.c-reas__path{
	fill: #fff;
}
.c-reas__path--dk{
	fill: #143153;
}
.c-reas__icon{
	width: 1rem;
	height: 1rem;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}

@media all and (max-width: 479px){
	.c-reas__ctrl{
		width: 3.5rem;
	}
	.c-reas__cross{
		right: 1rem;
	}
	.c-reas__slideshow::before{
		width: 3.5rem;
	}
	.c-reas__slideshow{
		padding: 0 3.5rem 0 0;
	}
}
@media all and (max-height: 350px){
	.c-reas__ctrl{
		height: 5.5rem;
	}
}
