/*
* Prefixed by https://autoprefixer.github.io
* PostCSS: v8.4.14,
* Autoprefixer: v10.4.7
* Browsers: last 4 version
*/

/* =========== 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-footline, 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-footline, 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;
}
p strong, span strong{
	font-weight: 700;
}

/* =========== 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

Note : classes in plural form refers to the container of said elements
*/

/* =========== BASE STYLING & UTILITY CLASSES =========== */

/* Document styling */
html{
  scroll-behavior: smooth;
	scroll-padding-top: 4.5rem;
}
body{
  scrollbar-color: #8EB1B8 #101719;
	font-family: 'assistant', sans-serif;
	line-height: 1.7;
	font-size: 1.1rem;
	color: rgba(0,0,0,0.6);
}
::-webkit-scrollbar{
  background: #101719;
	width: 1rem;
}
::-webkit-scrollbar-thumb{
  background-color: #8EB1B8;
}
::-moz-selection{
	background: #101719;
	color: #fff;
}
::selection{
	background: #101719;
	color: #fff;
}

/* --- Désamiantage */
.c-doc2 body{
	scrollbar-color: #2BB747 #101719;
}
.c-doc2::-webkit-scrollbar-thumb{
  background-color: #2BB747;
}

/* --- Peinture */
.c-doc3 body{
	scrollbar-color: #FF9C9C #101719;
}
.c-doc3::-webkit-scrollbar-thumb{
  background-color: #FF9C9C;
}

/* --- Peinture */
.c-doc4 body{
	scrollbar-color: #FFBD8A #101719;
}
.c-doc4::-webkit-scrollbar-thumb{
  background-color: #FFBD8A;
}

/* --- Peinture */
.c-doc5 body{
	scrollbar-color: #1DD7C2 #101719;
}
.c-doc5::-webkit-scrollbar-thumb{
  background-color: #1DD7C2;
}

/* --- Peinture */
.c-doc6 body{
	scrollbar-color: #EFAD43 #101719;
}
.c-doc6::-webkit-scrollbar-thumb{
  background-color: #EFAD43;
}

/* --- Peinture */
.c-doc7 body{
	scrollbar-color: #FF6767 #101719;
}
.c-doc7::-webkit-scrollbar-thumb{
  background-color: #FF6767;
}

@media all and (max-width: 500px){
	body{
		font-size: 1rem;
	}
}

.c-blocpage{
	min-height: 100vh;
  max-width: 120rem;
  margin: 0 auto;
	position: relative;
	overflow-x: hidden;
}

/* Typography */
@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: 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 + p:not([class]){
	margin-top: 1rem;
}
p:not([class]){
	max-width: 45rem;
}
.u-nowrap{
	white-space: nowrap;
}
h1, h2, h3, h4{
	line-height: 1.2;
	font-weight: 900;
	max-width: 45rem;
	color: #101719;
}
b{
	font-weight: 700;
}
.o-h1{
	margin-bottom: 2rem;
	font-size: 2.7rem;
}
.o-h2, h1.o-h2{
	margin-bottom: 1.5rem;
	font-size: 2.2rem;
}
h1.o-h2{
	margin-bottom: 2rem;
}
.o-hn-sub{
	text-transform: uppercase;
	font-weight: 900;
	font-size: 1.25rem;
	margin-bottom: 0.75rem;
	line-height: 1.2;
}
.o-icon-txt.o-hn-sub{
	font-weight: 900;
}
.o-hn-sub + .o-h1{
	margin-top: 1.5rem;
}
.o-h3{
	font-size: 1.6rem;
	margin-bottom: 1.2rem;
}
p + .o-h3, p + .o-h4{
	margin-top: 2rem;
}
.o-h4{
	font-size: 1.4rem;
	margin-bottom: 1rem;
}

.o-a{
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	font-weight: 600;
	color: #004E64;
	text-decoration: underline;
}
.o-a:hover{
	color: #8EB1B8;
}
.u-lgt-thm .o-a{
	color: #fff;
}
.u-lgt-thm .o-a:hover{
	color: #CAF3FB;
}
.u-target-bk{
	position: relative;
	white-space: nowrap;
}
.u-target-bk::after{
	content:'';
	position: absolute;
	background-image: url('/medias/icons/base/lien-externe.svg');
	width: 0.9rem;
	height: 0.9rem;
	display: block;
	top: -0.25rem;
	opacity: 0.5;
	right: -1.15rem;
}

/* --- Colors --- */
.u-col0{
	color: #31494E;
}
.u-col0 svg path{
	fill: #31494E;
}
.u-dk{
	color: #101719;
}
.u-fff{
	color: #ffffff;
}

/* --- Accueil */
.c-doc1 .u-col, .u-col1, a.u-a-col1:hover, .c-doc1 .c-nav__logo .u-col{
	color: #6897A1;
}
.u-lgt-thm .u-col1, .u-lcol1,
.c-doc1 .u-lgt-thm .u-col,
.c-doc1 .u-lgt-thm .u-lcol,
.u-lgt-thm a.u-a-col1:hover{
	color: #CAF3FB;
}
svg.u-col1 path, .c-doc1 svg.u-col path,
svg.u-col1 rect, .c-doc1 svg.u-col rect{
	fill: #6897A1;
}
.u-lgt-thm svg.u-col1 path, svg.u-lcol1 path,
.c-doc1 .u-lgt-thm svg.u-col path,
.c-doc1 svg.u-lcol path,
.u-lgt-thm svg.u-col1 rect, svg.u-lcol1 rect,
.c-doc1 .u-lgt-thm svg.u-col rect,
.c-doc1 svg.u-lcol rect{
	fill: #CAF3FB;
}

/* --- Désamiantage */
.u-col2, .c-doc2 .u-col, a.u-a-col2:hover{
	color: #2BB747;
}
.u-lgt-thm .u-col2, .u-lcol2,
.c-doc2 .u-lgt-thm .u-col,
.c-doc2 .u-lgt-thm .u-lcol,
.u-lgt-thm a.u-a-col2:hover{
	color: #68DF7F;
}
svg.u-col2 path, .c-doc2 svg.u-col path{
	fill: #2BB747;
}
.u-lgt-thm svg.u-col2 path, svg.u-lcol2 path,
.c-doc2 .u-lgt-thm svg.u-col path,
.c-doc2 svg.u-lcol path{
	fill: #68DF7F;
}

/* --- Peinture */
.u-col3, .c-doc3 .u-col, a.u-a-col3:hover{
	color: #EB5160;
}
.u-lgt-thm .u-col3, .u-lcol3,
.c-doc3 .u-lgt-thm .u-col,
.c-doc3 .u-lgt-thm .u-lcol,
.u-lgt-thm a.u-a-col3:hover{
	color: #FF9C9C;
}
svg.u-col3 path, .c-doc3 svg.u-col path,
svg.u-col3 rect, .c-doc3 svg.u-col rect{
	fill: #EB5160;
}
.u-lgt-thm svg.u-col3 path, svg.u-lcol3 path,
.c-doc3 .u-lgt-thm svg.u-col path,
.c-doc3 svg.u-lcol path,
.u-lgt-thm svg.u-col3 rect, svg.u-lcol3 rect,
.c-doc3 .u-lgt-thm svg.u-col rect,
.c-doc3 svg.u-lcol rect{
	fill: #FF9C9C;
}

/* --- Couverture */
.u-col4, .c-doc4 .u-col, a.u-a-col4:hover{
	color: #EE8434;
}
.u-lgt-thm .u-col4, .u-lcol4,
.c-doc4 .u-lgt-thm .u-col,
.c-doc4 .u-lgt-thm .u-lcol,
.u-lgt-thm a.u-a-col4:hover{
	color: #FFBD8A;
}
svg.u-col4 path, .c-doc4 svg.u-col path{
	fill: #EE8434;
}
.u-lgt-thm svg.u-col4 path, svg.u-lcol4 path,
.c-doc4 .u-lgt-thm svg.u-col path,
.c-doc4 svg.u-lcol path,
.u-lgt-thm svg.u-col4 rect, svg.u-lcol4 rect,
.c-doc4 .u-lgt-thm svg.u-col rect,
.c-doc4 svg.u-lcol rect{
	fill: #FFBD8A;
}

/* --- Placo */
.u-col5, .c-doc5 .u-col, a.u-a-col5:hover{
	color: #17A695;
}
.u-lgt-thm .u-col5, .u-lcol5,
.c-doc5 .u-lgt-thm .u-col,
.c-doc5 .u-lgt-thm .u-lcol,
.u-lgt-thm a.u-a-col5:hover{
	color: #1DD7C2;
}
svg.u-col5 path, .c-doc5 svg.u-col path{
	fill: #17A695;
}
.u-lgt-thm svg.u-col5 path, svg.u-lcol5 path,
.c-doc5 .u-lgt-thm svg.u-col path,
.c-doc5 svg.u-lcol path,
.u-lgt-thm svg.u-col5 rect, svg.u-lcol5 rect,
.c-doc5 .u-lgt-thm svg.u-col rect,
.c-doc5 svg.u-lcol rect{
	fill: #1DD7C2;
}

/* --- Revêtements */
.u-col6, .c-doc6 .u-col, a.u-a-col6:hover{
	color: #B1740F;
}
.u-lgt-thm .u-col6, .u-lcol6,
.c-doc6 .u-lgt-thm .u-col,
.c-doc6 .u-lgt-thm .u-lcol,
.u-lgt-thm a.u-a-col6:hover{
	color: #EFAD43;
}
svg.u-col6 path, .c-doc6 svg.u-col path,
svg.u-col6 rect, .c-doc6 svg.u-col rect{
	fill: #B1740F;
}
.u-lgt-thm svg.u-col6 path, svg.u-lcol6 path,
.c-doc6 .u-lgt-thm svg.u-col path,
.c-doc6 svg.u-lcol path,
.u-lgt-thm svg.u-col1 rect, svg.u-lcol6 rect,
.c-doc6 .u-lgt-thm svg.u-col rect,
.c-doc6 svg.u-lcol rect{
	fill: #EFAD43;
}

/* --- Démolition */
.u-col7, .c-doc7 .u-col, a.u-a-col7:hover{
	color: #CC0000;
}
.u-lgt-thm .u-col7, .u-lcol7,
.c-doc7 .u-lgt-thm .u-col,
.c-doc7 .u-lgt-thm .u-lcol,
.u-lgt-thm a.u-a-col7:hover{
	color: #FF6767;
}
svg.u-col7 path, .c-doc7 svg.u-col path{
	fill: #CC0000;
}
.u-lgt-thm svg.u-col7 path, svg.u-lcol7 path,
.c-doc7 .u-lgt-thm svg.u-col path,
.c-doc7 svg.u-lcol path,
.u-lgt-thm svg.u-col7 rect, svg.u-lcol7 rect,
.c-doc7 .u-lgt-thm svg.u-col rect,
.c-doc7 svg.u-lcol rect{
	fill: #FF6767;
}

/* Backgrounds */
.u-fbg{
	background-color: #FFFFFF;
}
.u-lbg{
	background-color: #F2F6F7;
}
.u-dbg{
	background-color: #1F2F33;
}
.u-mdbg{
	background: #182326;
}
.u-vdbg{
	background-color: #101719;
}

/* Light theme*/
.u-lgt-thm, .u-lgt-thm h1, .u-lgt-thm h2, .u-lgt-thm h3, .u-lgt-thm h4{
	color: #fff;
}
.u-lgt-thm p:not([class]){
	color: rgba(255,255,255,0.8);
}

/* =========== HELPER CLASSES =========== */

/* --- Flexbox */
.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;
}

/* --- Equivalent SEO pour photo background */
.o-photo, .o-photo--full{
  overflow: hidden;
	position: relative;
	background: #000;
}
.o-photo--full{
	min-height: 20rem;
	width: 100%;
}
.o-photo__cover, .o-photo__contain{
	position: absolute;
	top: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
	-o-object-position: center;
	   object-position: center;
}
.o-photo__contain{
	-o-object-fit: contain;
	   object-fit: contain;
}

/* =========== GENERIC COMPONENTS =========== */

/* --- Icon + small text, side to side --- */
.o-icon-txts, .o-icon-txts--fw, .o-icon-txts--sq{
	margin: 2.5rem 0 0 0;
	gap: 1rem 2rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}
.o-icon-txts + p, .o-icon-txts--sq + p{
	margin-top: 2.5rem;
}
.o-icon-txts--sq{
	max-width: 40rem;
	padding: 2rem;
	border: 1px solid rgba(0, 0, 0, 0.2);
}
.o-icon-txts--fw{
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
}
.u-lgt-thm .o-icon-txts{
	color: #fff;
}
.u-lgt-thm .o-icon-txts--sq{
	border: 1px solid rgba(255, 255, 255, 0.2);
	border-left: 3px solid #CAF3FB;
}
.o-icon-txt, .o-icon-txt--subd{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	font-weight: 700;
	text-align: left;
	line-height: 1.2;
}
.o-icon-txt img, .o-icon-txt svg{
	width: 1.5rem;
	height: 1.5rem;
	margin-right: 0.75rem;
}
.o-icon-txt img.u-unsq{
	width: auto;
}
.o-icon-txt svg path{
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}
.o-icon-txt img + span:last-child{
	 -webkit-box-flex: 2;
	     -ms-flex: 2;
	         flex: 2;
}
.o-icon-txt__sep{
	display: block;
 	height: 1px;
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	min-width: 2.5rem;
 	background: #777a7f;
 	opacity: 0.5;
	margin: 0 1.5rem;
}
.o-icon-txt--subd{
	 font-weight: 400;
	 min-width: 100%;
}
.o-icon-txt--subd span span{
	font-weight: 700;
}
a.o-icon-txt{
	text-decoration: underline;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}
.o-icon-txts a.o-icon-txt:hover{
	color: #CAF3FB;
}

/* --- Buttons --- */
.o-btns, .o-btns--r, .o-btns--prv-nxt{
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	gap: 1rem;
	margin-top: 3.5rem;
}
.o-btns--r{
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
}
.o-btns--prv-nxt{
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}
.o-btns a{
	-webkit-box-flex: 1;
	    -ms-flex-positive: 1;
	        flex-grow: 1;
	max-width: 16rem;
}
.o-btn, .o-btn--titled, .o-btn--dv, .o-btn--gh, .o-btn--input{
	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;
	padding: 2px 2rem 0 2rem; /* Correction 2px mauvaise perception de l'oeil */
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #31494E), color-stop(50%, #101719));
	background-image: -o-linear-gradient(top, #31494E 50%, #101719 50%);
	background-image: linear-gradient(to bottom, #31494E 50%, #101719 50%);
	background-size: 100% 200%;
	background-position: center top;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	line-height: 1.2;
	height: 4.25rem;
  font-weight: 700;
	-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-radius: 0.25rem;
	color: #fff;
}
@media all and (max-width: 500px){
	.o-btn, .o-btn--titled, .o-btn--dv, .o-btn--gh, .o-btn--input{
		height: 4rem;
		padding: 2px 1.5rem 0 1.5rem; /* Correction 2px mauvaise perception de l'oeil */
	}
}
.o-btn--titled{
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}
.o-btn__sub{
	font-size: 0.9rem;
	opacity: 0.75;
	margin-top: -2px;
}
.o-btn__sub + span{
	font-weight: 900;
	font-size: 1.2rem;
}
.o-btn:hover, .o-btn--titled:hover, .o-btn--dv:hover, .o-btn--gh:hover, .o-btn--input:hover{
	background-position: center bottom;
}
.o-btn img, .o-btn--dv img, .o-btn--gh img, .o-btn--input img{
	margin-left: 0.75rem;
	width: 1.25rem;
	height: 1.25rem;
}
.o-btn img:first-child, .o-btn--dv img:first-child, .o-btn--gh img:first-child, .o-btn--input img:first-child{
	margin-left: 0;
	margin-right: 0.75rem;
}
img.u-big-icbtn{
	margin-left: 1rem;
	width: 1.6rem;
	height: 1.6rem;
	margin-right: -0.5rem;
}
.o-btn--dv img{
	position: relative;
	top: 1px;
}
.o-btn span, .o-btn--dv span, .o-btn--gh span, .o-btn--input span{
	margin: 0 0 0 0.35rem;
	position: relative;
	top: -1px; /* Correction mauvaise perception de l'oeil */
}
.o-btn img + span, .o-btn--dv img + span, .o-btn--gh img + span, .o-btn--input img + span{
	margin: 0 0.35rem 0 0;
}

/* Bouton en fin de partie multi-objets (réas, domains etc) */
a.o-more{
	max-width: 17rem;
	margin: 4rem auto 0 auto;
}

/* Bouton de type input - lien couvrant tout le bouton */
.o-btn--input{
	position: relative;
	padding: 0;
}
.o-btn--input input{
	height: 100%;
	cursor: pointer;
	padding: 0 4rem 0 2.5rem;
	background: none;
	color: inherit;
	position: relative;
	z-index: 1;
}
.o-btn--input::before{
	position: absolute;
	display: block;
	width: 1.25rem;
	height: 1.25rem;
	right: 2rem;
}

/* --- Variantes de couleur --- */
.u-btn-col0{
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #31494E), color-stop(50%, #101719));
	background-image: -o-linear-gradient(top, #31494E 50%, #101719 50%);
	background-image: linear-gradient(to bottom, #31494E 50%, #101719 50%);
}
.u-btn-dk{
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #101719), color-stop(50%, #1F2F33));
	background-image: -o-linear-gradient(top, #101719 50%, #1F2F33 50%);
	background-image: linear-gradient(to bottom, #101719 50%, #1F2F33 50%);
}
.o-btn--gh{
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(50%, transparent));
	background-image: -o-linear-gradient(top, transparent 50%, transparent 50%);
	background-image: linear-gradient(to bottom, transparent 50%, transparent 50%);
	color: #000000;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	border: 1px solid #000000;
	opacity: 0.4;
}
.o-btn--gh:hover{
	opacity: 1;
}

@media all and (max-width: 1200px){
	.c-header.u-lgt-thm .u-btn-col0, .c-header--fh.u-lgt-thm .u-btn-col0{
		background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #101719), color-stop(50%, #1F2F33));
		background-image: -o-linear-gradient(top, #101719 50%, #1F2F33 50%);
		background-image: linear-gradient(to bottom, #101719 50%, #1F2F33 50%);
	}
}
@media all and (max-width: 450px){
	.c-header.u-lgt-thm .u-btn-col0, .c-header--fh.u-lgt-thm .u-btn-col0{
		background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #1F2F33), color-stop(50%, #101719));
		background-image: -o-linear-gradient(top, #1F2F33 50%, #101719 50%);
		background-image: linear-gradient(to bottom, #1F2F33 50%, #101719 50%);
	}
}

/* --- Accueil */
.u-btn-col1{
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #6897A1), color-stop(50%, #101719));
	background-image: -o-linear-gradient(top, #6897A1 50%, #101719 50%);
	background-image: linear-gradient(to bottom, #6897A1 50%, #101719 50%);
}
.u-btn-lcol1{
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #8EB1B8), color-stop(50%, #CAF3FB));
	background-image: -o-linear-gradient(top, #8EB1B8 50%, #CAF3FB 50%);
	background-image: linear-gradient(to bottom, #8EB1B8 50%, #CAF3FB 50%);
}
/* --- Désamiantage */
.u-btn-col2{
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #2BB747), color-stop(50%, #101719));
	background-image: -o-linear-gradient(top, #2BB747 50%, #101719 50%);
	background-image: linear-gradient(to bottom, #2BB747 50%, #101719 50%);
}
.u-btn-lcol2{
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #68DF7F), color-stop(50%, #CAF3FB));
	background-image: -o-linear-gradient(top, #68DF7F 50%, #CAF3FB 50%);
	background-image: linear-gradient(to bottom, #68DF7F 50%, #CAF3FB 50%);
}
/* --- Peinture */
.u-btn-col3{
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #EB5160), color-stop(50%, #101719));
	background-image: -o-linear-gradient(top, #EB5160 50%, #101719 50%);
	background-image: linear-gradient(to bottom, #EB5160 50%, #101719 50%);
}
.u-btn-lcol3{
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #FF9C9C), color-stop(50%, #CAF3FB));
	background-image: -o-linear-gradient(top, #FF9C9C 50%, #CAF3FB 50%);
	background-image: linear-gradient(to bottom, #FF9C9C 50%, #CAF3FB 50%);
}
/* --- Peinture */
.u-btn-col4{
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #EE8434), color-stop(50%, #101719));
	background-image: -o-linear-gradient(top, #EE8434 50%, #101719 50%);
	background-image: linear-gradient(to bottom, #EE8434 50%, #101719 50%);
}
.u-btn-lcol4{
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #FFBD8A), color-stop(50%, #CAF3FB));
	background-image: -o-linear-gradient(top, #FFBD8A 50%, #CAF3FB 50%);
	background-image: linear-gradient(to bottom, #FFBD8A 50%, #CAF3FB 50%);
}
/* --- Peinture */
.u-btn-col5{
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #17A695), color-stop(50%, #101719));
	background-image: -o-linear-gradient(top, #17A695 50%, #101719 50%);
	background-image: linear-gradient(to bottom, #17A695 50%, #101719 50%);
}
.u-btn-lcol5{
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #1DD7C2), color-stop(50%, #CAF3FB));
	background-image: -o-linear-gradient(top, #1DD7C2 50%, #CAF3FB 50%);
	background-image: linear-gradient(to bottom, #1DD7C2 50%, #CAF3FB 50%);
}
/* --- Peinture */
.u-btn-col6{
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #B1740F), color-stop(50%, #101719));
	background-image: -o-linear-gradient(top, #B1740F 50%, #101719 50%);
	background-image: linear-gradient(to bottom, #B1740F 50%, #101719 50%);
}
.u-btn-lcol6{
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #EFAD43), color-stop(50%, #CAF3FB));
	background-image: -o-linear-gradient(top, #EFAD43 50%, #CAF3FB 50%);
	background-image: linear-gradient(to bottom, #EFAD43 50%, #CAF3FB 50%);
}
/* --- Peinture */
.u-btn-col7{
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #CC0000), color-stop(50%, #101719));
	background-image: -o-linear-gradient(top, #CC0000 50%, #101719 50%);
	background-image: linear-gradient(to bottom, #CC0000 50%, #101719 50%);
}
.u-btn-lcol7{
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #FF6767), color-stop(50%, #CAF3FB));
	background-image: -o-linear-gradient(top, #FF6767 50%, #CAF3FB 50%);
	background-image: linear-gradient(to bottom, #FF6767 50%, #CAF3FB 50%);
}

/* --- Lists --- */
.o-ul, .o-ol, .o-ol--2, .o-ol--4, .o-ol--3{
	position: relative;
	list-style: none;
	margin: 1.5rem 0;
}
.o-h3 + .o-ul{
	margin-top: 2rem;
}
.o-ul:first-child, .o-ol:first-child, .o-ol--2:first-child, .o-ol--3:first-child, .o-ol--4:first-child{
	margin-top: 0;
}
.o-ul:last-child, .o-ol:last-child, .o-ol--2:last-child, .o-ol--3:last-child, .o-ol--4:last-child{
	margin-bottom: 0;
}
.o-ul::before{
	content: '';
	height: 100%;
	position: absolute;
	width: 1px;
	background: #777a7f;
	opacity: 0.5;
	left: 0;
	top: 0;
}
.u-lgt-thm .o-ul::before{
	background: #f4f4f4;
}
.o-ul__li{
	margin: 0 0 1.5rem 1.5rem;
	line-height: 1.4;
}
.o-faq .o-ul__li{
	line-height: 1.7;
}
.o-ul__title{
	margin-bottom: 0.25rem;
	font-weight: 600;
	color: #101719;
	display: block;
}

.o-ol, .o-ol--2, .o-ol--3, .o-ol--4{
	list-style-position: outside;
	counter-reset: number;
	max-width: 60rem;
	text-align: left;
}
.o-ol--2{
	counter-reset: number 1;
}
.o-ol--3{
	counter-reset: number 2;
}
.o-ol--4{
	counter-reset: number 3;
}
.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;
}
.o-ol__li:last-child,
.o-ul__li:last-child{
	margin-bottom: 0;
}
.o-ol__p{
	margin: 1.5rem 0 0 0;
}
.o-ol__title{
	font-size: 1.2rem;
	margin-bottom: 0.5rem;
	font-weight: 900;
}
.o-ol__li::before{
	content: counter(number)'.';
	position: absolute;
	left: 0;
	top: 2px;
	font-size: 1.5rem;
	line-height: 1.5rem;
	font-weight: 900;
}

/* Encadrés */
.o-sq-txt{
	padding: 2rem;
	display: inline-block;
	margin: 1rem 0;
	border: 1px solid rgba(0, 0, 0, 0.2);
}
.u-lgt-thm .o-sq-txt{
	border: 1px solid rgba(255, 255, 255, 0.2);
	border-left: 3px solid #CAF3FB;
}

/* =========== GENERIC SECTIONS =========== */

/* --- Fullwidth sections content */
.o-fullsec, .o-fullsec--bar, .o-cta, .o-args{
	padding: 6rem 4%;
	max-width: 101rem;
	margin: 0 auto;
	position: relative;
}
.o-cta, .o-args{
	max-width: 81rem;
}

/* Bar titled sec */
.o-fullsec--bar::before{
	width: 100%;
	display: block;
	content:'';
	height: 1px;
	background: #777a7f;
	opacity: 0.5;
}
.o-fullsec--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: #8EB1B8;
}
.c-doc2 .o-fullsec--bar::after{
	background: #2BB747;
}
.c-doc2 .u-lgt-thm .o-fullsec--bar::after{
	background: #68DF7F;
}
.c-doc3 .o-fullsec--bar::after{
	background: #EB5160;
}
.c-doc3 .u-lgt-thm .o-fullsec--bar::after{
	background: #FF9C9C;
}
.c-doc4 .o-fullsec--bar::after{
	background: #EE8434;
}
.c-doc4 .u-lgt-thm .o-fullsec--bar::after{
	background: #FFBD8A;
}
.c-doc5 .o-fullsec--bar::after{
	background: #17A695;
}
.c-doc5 .u-lgt-thm .o-fullsec--bar::after{
	background: #1DD7C2;
}
.c-doc6 .o-fullsec--bar::after{
	background: #B1740F;
}
.c-doc6 .u-lgt-thm .o-fullsec--bar::after{
	background: #EFAD43;
}
.c-doc7 .o-fullsec--bar::after{
	background: #CC0000;
}
.c-doc7 .u-lgt-thm .o-fullsec--bar::after{
	background: #FF6767;
}
.u-lgt-thm .o-fullsec--bar::before{
	background: #777a7f;
}
.u-lgt-thm .o-fullsec--bar::after{
	background: #CAF3FB;
}
.o-fullsec--bar .o-h2{
	margin-top: 2rem;
	max-width: none;
}
@media all and (max-width: 1200px){
	.o-fullsec, .o-fullsec--bar{
		padding: 5rem 4%;
	}
	.o-fullsec--bar::after{
		top: 5rem;
	}
}

/* --- Bipart sections */
.o-bipart, .o-bipart--reverse, .o-bipart--2thd{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	position: relative;
	width: 100%;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.o-bipart__txt, .o-bipart__txt--br, .o-bipart__txt--2thd{
	padding: 6rem 5%;
	width: 50%;
	-ms-flex-item-align: stretch;
	    -ms-grid-row-align: stretch;
	    align-self: stretch;
	position: relative;
}
.o-bipart__img, .o-bipart__img--2thd{
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	-ms-flex-item-align: stretch;
	    -ms-grid-row-align: stretch;
	    align-self: stretch;
	min-height: 25rem;
}

/* Partie en 2/3 */
.o-bipart__txt--2thd{
	width: 45%;
}
.o-bipart__img--2thd + .o-bipart__txt{
	width: 55%;
}

@media all and (max-width: 1200px){
	.o-bipart{
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}
	.o-bipart--reverse{
		-webkit-box-orient: vertical;
		-webkit-box-direction: reverse;
		    -ms-flex-direction: column-reverse;
		        flex-direction: column-reverse;
	}
	.o-bipart__txt, .o-bipart__txt--br, .o-bipart__txt--2thd{
		width: 100%;
		max-width: 900px;
		padding: 5rem 6%;
		-ms-flex-item-align: auto;
		    -ms-grid-row-align: auto;
		    align-self: auto;
	}
}
@media all and (max-width: 600px){
	.o-bipart__txt, .o-bipart__txt--br, .o-bipart__txt--2thd{
		padding: 4rem 7%;
	}
}

/* Partie avec boutons absolus */
@media all and (min-width: 1201px){
	div.o-bipart__txt--br{
		padding-bottom: 8.5rem;
	}
	.o-bipart__txt--br .o-btns{
		position: absolute;
		bottom: 0;
		gap: 0;
		right: 0;
	}
	.o-bipart__txt--br .o-btns a{
		border-radius: 0;
	}
}

/* Bipart imbriqué dans un fullsec */
.o-fullsec .o-bipart__txt,
.o-fullsec--bar .o-bipart__txt{
	padding: 0;
	width: 47.5%;
}
.o-fullsec .o-bipart,
.o-fullsec--bar .o-bipart,
.o-fullsec .o-bipart--reverse,
.o-fullsec--bar .o-bipart--reverse{
	padding: 5rem 0 0 0;
	gap: 5%;
}
@media all and (min-width: 1201px){
	.o-fullsec .o-bipart__img,
	.o-fullsec--bar .o-bipart__img{
	  min-height: 0;
	}
}
@media all and (max-width: 1200px){
	.o-fullsec .o-bipart__txt, .o-fullsec--bar .o-bipart__txt{
		width: 100%;
		max-width: 900px;
		-ms-flex-item-align: auto;
		    -ms-grid-row-align: auto;
		    align-self: auto;
		padding-bottom: 4rem;
	}
}

/* =========== HEADER(s) =========== */

/* Header with dark band */
.c-header, .c-header--fh{
	padding-top: 5rem;
	background-image: -o-linear-gradient(left, #EEFAFC 16rem, #ffffff 1px, #ffffff);
	background-image: linear-gradient(to right, #EEFAFC 16rem, #ffffff 1px, #ffffff);
}
.c-header.u-lgt-thm, .c-header--fh.u-lgt-thm{
	background-image: -o-linear-gradient(left, #1F2F33 16rem, #31494E 1px, #31494E);
	background-image: linear-gradient(to right, #1F2F33 16rem, #31494E 1px, #31494E);
}
@media all and (max-width: 1620px){
	.c-header, .c-header--fh{
		padding-top: 4.5rem;
	}
}
@media all and (max-width: 450px){
	.c-header, .c-header--fh{
		padding-top: 4rem;
		background: #F2F6F7;
	}
	.c-header.u-lgt-thm{
		background: #31494E;
	}
}

/* Header pleine page pour les pages secondaires */
.c-header--fh{
	min-height: calc(50vh - 80px); /* Hauteur du footer déduite du header */
}
.c-header--fh .o-bipart__txt--2thd,
.c-header--fh .o-bipart__txt--br,
.c-header--fh .o-bipart__txt{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}
.c-header .o-btns.c-header__btns{
	right: -24rem; /* Décalage équivalent à la longueur de x bouton(s) */
}
.c-header__btns .o-btn--titled{
	width: 12rem;
}
.c-header__btns a{
	height: 4.5rem;
}
.c-header .o-bipart__txt, .c-header .o-bipart__txt--br{
	z-index: 1;
	max-width: 60rem;
	padding-top: 5rem;
}

/*Responsive header*/
@media all and (max-width: 1350px){
	.c-header{
		padding-top: 4.5rem;
	}
}

/* =========== INTRO POST-HEADER =========== */

@media all and (min-width: 1201px){
	.c-intro{
		background-image: -o-linear-gradient(left, #F2F6F7 16rem, #ffffff 1px, #ffffff);
		background-image: linear-gradient(to right, #F2F6F7 16rem, #ffffff 1px, #ffffff);
	}
	.c-intro .o-bipart__txt{
		padding-left: 0;
	}
}
.c-intro .o-bipart__txt:first-child{
	padding-bottom: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-item-align: stretch;
	    -ms-grid-row-align: stretch;
	    align-self: stretch;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-align: end;
	    -ms-flex-align: end;
	        align-items: flex-end;
}
.c-intro__titles{
	width: 30rem;
}
.c-intro__h2{
	font-size: 1.75rem;
	font-weight: 900;
	margin: 0 0 2rem auto;
	text-align: right;
}
.c-intro__sub{
	position: relative;
	width: 18rem; /*A ajuster selon texte*/
	font-weight: 700;
	font-size: 1.2rem;
	text-align: right;
	margin: 0 0 2rem auto;
}
.c-intro__sub::before{
	content: '';
	width: 5rem;
	height: 1px;
	background: #777a7f;
	opacity: 0.5;
	position: absolute;
	left: -6rem;
	top: 50%;
}
.c-intro__img:not(.o-photo--full){
	margin-top: 2rem;
	width: 100%;
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
}
.c-intro__img.o-photo--full{
	display: none;
}

@media all and (max-width: 1200px){
	.c-intro .o-bipart__txt:not(:first-child){
		padding-top: 0;
	}
	.c-intro .o-bipart__txt:first-child{
		-ms-flex-item-align: auto;
		    -ms-grid-row-align: auto;
		    align-self: auto;
	}
	.c-intro__titles{
		width: 100%;
	}
	.c-intro p:not([class]){
		text-align: right;
	}
	.c-intro .o-icon-txts{
		-webkit-box-pack: end;
		    -ms-flex-pack: end;
		        justify-content: flex-end;
	}
	.c-intro .o-rappel{
	 	margin-left: auto;
	}
	.c-intro__img:not(.o-photo--full){
		display: none;
	}
	.c-intro__img.o-photo--full{
		display: block;
	}
	.c-intro .o-bipart__txt{
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		-webkit-box-align: end;
		    -ms-flex-align: end;
		        align-items: flex-end;
	}
}
@media all and (max-width: 600px){
	.c-intro__sub::before{
		left: -3.5rem;
		width: 2rem;
	}
	.c-intro__sub{
		width: auto;
	}
	.c-intro__h2{
		font-size: 1.6rem;
	}
}
@media all and (max-width: 479px){
	.c-intro__h2{
		font-size: 1.4rem;
	}
}

/* =========== BANDEAU CTAs =========== */

/* Pitch icons */
.o-args{
	gap: 2rem 3rem;
	text-align: center;
}
.o-args h3{
	min-width: 100%;
	margin-bottom: 1rem;
}
.o-arg{
	width: 15rem;
	opacity: 1;
	font-size: 1.15rem;
	-webkit-transition: all 0.5s ease-in-out;
	-o-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
	font-weight: 900;
	text-transform: uppercase;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-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;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.o-arg img, .o-arg svg{
	width: 2.5rem;
	height: 2.5rem;
	margin: 0 0 1rem 0;
}
.o-arg.js-notinview{
	opacity: 0;
	-webkit-transform: translateY(-50%);
	    -ms-transform: translateY(-50%);
	        transform: translateY(-50%);
}
.o-arg:nth-child(1){
	-webkit-transition-delay: 0.2s;
	     -o-transition-delay: 0.2s;
	        transition-delay: 0.2s;
}
.o-arg:nth-child(2){
	-webkit-transition-delay: 0.4s;
	     -o-transition-delay: 0.4s;
	        transition-delay: 0.4s;
}
.o-arg:nth-child(3){
	-webkit-transition-delay: 0.6s;
	     -o-transition-delay: 0.6s;
	        transition-delay: 0.6s;
}
.u-lgt-thm .o-arg{
	color: #fff;
}

/* CTA */
.o-cta.o-flexbox{
	gap: 0 5%;
	-ms-flex-wrap: nowrap;
	    flex-wrap: nowrap;
}
.o-cta__col{
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
}
.o-cta__col:first-child{
	max-width: 40rem;
}
.o-cta h3{
	line-height: 1.2;
	font-weight: 900;
	margin-bottom: 2rem;
}
.o-cta p.u-hidden{
	display: none;
	color: rgba(255,255,255,0.8);
}

@media all and (max-width: 970px){
	.o-cta__col:first-child{
		max-width: none;
	}
	.o-cta__col + .o-cta__col{
		display: none;
	}
	.o-cta p.u-hidden{
		display: block;
	}
	.o-cta p:not(.u-hidden){
		display: none;
	}
}

/* =========== FAQ =========== */

.o-faq{
	margin-top: 3rem;
	gap: 6rem 5%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
}
.o-faq__col{
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	max-width: 50rem;
	min-width: 40%;
}
h3 + .o-faq__quest, h4 + .o-faq__quest{
	margin-top: 2rem;
}
.o-faq__quest{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	position: relative;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	margin-bottom: 1.25rem;
	cursor: pointer;
	padding-right: 2.5rem;
	line-height: 1.2;
	font-size: 1.2rem;
	font-weight: 900;
	color: #1F2F33;
}
.o-faq__quest::before{
	content: '';
	display: block;
	position: absolute;
	right: 0;
	border-bottom: 2px solid #004E64;
	border-right: 2px solid #004E64;
	width: 0.65rem;
	height: 0.65rem;
	-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;
}
.o-faq__answer + .o-faq__quest{
	margin-top: 3rem;
}
.o-faq__quest.is-active::before{
	-webkit-transform: rotate(225deg);
	    -ms-transform: rotate(225deg);
	        transform: rotate(225deg);
}
.o-faq__answer{
	max-height: 0;
	border-bottom: 1px solid rgba(119, 122, 127, 0.5);
	-webkit-transition: all 1s;
	-o-transition: all 1s;
	transition: all 1s;
	overflow-y: hidden;
}
.o-faq__answer *:last-child{
	margin-bottom: 2rem;
}
.o-faq__answer .o-ul p:last-child,
.o-faq__answer .o-ol p:last-child{
	margin-bottom: 1.5rem;
}
.o-faq__quest.is-active + .o-faq__answer{
	max-height: 50rem;
}
.o-faq__quest.is-active + .o-faq__answer--long{
	max-height: 70rem;
}
@media all and (max-width: 970px){
	.o-faq{
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		gap: 4rem 5%;
	}
}
@media all and (max-width: 400px){
	.o-faq__quest.is-active + .o-faq__answer{
		max-height: 60rem;
	}
	.o-faq__quest.is-active + .o-faq__answer--long{
		max-height: 80rem;
	}
}

/* =========== PRESTATIONS =========== */

.c-domains__icon, .c-domains__icon--pt,
.c-domains__icon--py{
	height: 2.5rem;
	width: 2.5rem;
	margin-bottom: 1.5rem;
}
.c-domains__icon--pt{
	height: 3.5rem;
}
.c-domains__icon--py{
	width: 3.5rem;
}
.c-domains__h3{
	margin-bottom: 1.5rem;
	font-weight: 600;
	font-size: 1.4rem;
}
.c-domains{
	margin: 3rem 0;
	gap: 3.5rem 5%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}
.c-domains__el a {
    position: absolute;
    bottom: -1.5rem;
    right: 0;
		color: #31494E;
    display: inline-block;
    font-weight: 700;
    -webkit-transition: color 0.3s;
    -o-transition: color 0.3s;
    transition: color 0.3s;
}
.c-domains__el p:not(:last-child){
	margin-bottom: 2.5rem;
}
.c-domains__el a::before {
    content: '';
    width: 5rem;
    position: absolute;
    top: 55%;
    left: -1.5rem;
    height: 1px;
    background: #31494E;
		-webkit-transition: all 0.3s;
		-o-transition: all 0.3s;
		transition: all 0.3s;
    -webkit-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    transform: translateX(-100%);
}
.c-domains__el a:hover {
    color: #004E64;
}
.u-lgt-thm .c-domains__el a {
		color: #fff;
}
.u-lgt-thm .c-domains__el a::before {
  background: #fff;
}
.u-lgt-thm .c-domains__el a:hover {
    color: #CAF3FB;
}
.c-domains__el a:hover::before{
	background: #CAF3FB;
}
.c-domains__el a.u-col2:hover::before{
	background: #68DF7F;
}
.u-lgt-thm .c-domains__el a.u-col2:hover {
    color: #68DF7F;
}
.c-domains__el a.u-col3:hover::before{
	background: #FF9C9C;
}
.u-lgt-thm .c-domains__el a.u-col3:hover {
    color: #FF9C9C;
}
.c-domains__el a.u-col4:hover::before{
	background: #FFBD8A;
}
.u-lgt-thm .c-domains__el a.u-col4:hover {
    color: #FFBD8A;
}
.c-domains__el a.u-col5:hover::before{
	background: #1DD7C2;
}
.u-lgt-thm .c-domains__el a.u-col5:hover {
    color: #1DD7C2;
}
.c-domains__el a.u-col6:hover::before{
	background: #B1740F;
}
.u-lgt-thm .c-domains__el a.u-col6:hover {
    color: #B1740F;
}
.c-domains__el a.u-col7:hover::before{
	background: #FF6767;
}
.u-lgt-thm .c-domains__el a.u-col7:hover {
    color: #FF6767;
}

.c-domains__el{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-item-align: stretch;
	    -ms-grid-row-align: stretch;
	    align-self: stretch;
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	max-width: 40rem;
	min-width: 22rem;
	opacity: 1;
	-webkit-transition: all 0.5s ease-in-out;
	-o-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
	-webkit-transform: translateY(0);
	    -ms-transform: translateY(0);
	        transform: translateY(0);
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
}
.c-domains__el .o-icon-txts{
	margin-bottom: 0;
}
.c-domains__el .o-icon-txt{
	min-width: 15rem;
}
.c-domains__el.u-center{
	text-align: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.c-domains__el.js-notinview{
	opacity: 0;
	-webkit-transform: translateY(-50%);
	    -ms-transform: translateY(-50%);
	        transform: translateY(-50%);
}
.c-domains__el:nth-child(1){
	-webkit-transition-delay: 0.2s;
	     -o-transition-delay: 0.2s;
	        transition-delay: 0.2s;
}
.c-domains__el:nth-child(2){
	-webkit-transition-delay: 0.4s;
	     -o-transition-delay: 0.4s;
	        transition-delay: 0.4s;
}
.c-domains__el:nth-child(3){
	-webkit-transition-delay: 0.6s;
	     -o-transition-delay: 0.6s;
	        transition-delay: 0.6s;
}
.c-domains__el:nth-child(4){
	-webkit-transition-delay: 0.8s;
	     -o-transition-delay: 0.8s;
	        transition-delay: 0.8s;
}
.c-domains__el:nth-child(5){
	-webkit-transition-delay: 1s;
	     -o-transition-delay: 1s;
	        transition-delay: 1s;
}
.c-domains__el:nth-child(6){
	-webkit-transition-delay: 1.2s;
	     -o-transition-delay: 1.2s;
	        transition-delay: 1.2s;
}
@media all and (max-width: 570px){
	.c-domains__el{
		min-width: 15rem;
	}
}

/* =========== REALISATIONS =========== */

.c-reas{
	gap: 2rem;
}
.c-reas:not(:first-child){
	margin-top: 3rem;
}
.c-rea{
	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-rea__loc{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	background: #002B3A;
	border-radius: 2.5rem;
	height: 3rem;
	color: #CAF3FB;
	padding: 0 2rem;
	min-width: 3rem;
	font-size: 1.2rem;
}
.c-rea__overlay{
	background-color: rgba(0,0,0,0.3);
	opacity: 1;
	-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;
	bottom: 0;
	color: #fff;
	padding: 2rem;
	font-weight: 700;
}
.c-rea:hover .c-rea__overlay{
	background-color: rgba(0,0,0,0.5);
}
.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;
	z-index: 2;
}
.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{
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
	opacity: 1;
}
.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-rea__txt{
	margin: 0 1rem 1rem 0;
	font-size: 1.3rem;
	line-height: 1.2;
	text-shadow: 1px 1px 0 #000;
}
.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: #FFC300;
	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: #001E29;
}
.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: #fff;
}
.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;
	}
}

/* =========== INNER CONTENT =========== */

/* Slideshow with 2-4 thumbnails and controls */
.o-slideshow{
	min-height: 40rem;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
}
.o-slideshow__imgs{
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	position: relative;
	width: 100%;
	background: #101719;
}
.o-slideshow__img{
	bottom: 0;
	left: 0;
	opacity: 0;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}
.o-slideshow__img.is-shown{
	opacity: 1;
}
.o-slideshow__vigs{
	height: 6rem;
	width: 100%;
	background: #101719;
	position: relative;
}
.o-slideshow__vig{
	margin: 0 0.75rem;
	width: 6rem;
	height: 4.5rem;
	border-radius: 0.75rem;
	cursor: pointer;
}
.o-slideshow__filter{
	min-width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.5);
	position: absolute;
	-webkit-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
}
.o-slideshow__vig.is-shown .o-slideshow__filter,
.o-slideshow__vig:hover .o-slideshow__filter{
	opacity: 0;
}
.o-slideshow__ctrl{
	position: absolute;
	width: 3rem;
	height: 3rem;
	border-radius: 50%;
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #6897A1), color-stop(50%, #8EB1B8));
	background-image: -o-linear-gradient(top, #6897A1 50%, #8EB1B8 50%);
	background-image: linear-gradient(to bottom, #6897A1 50%, #8EB1B8 50%);
	background-size: 100% 200%;
	background-position: center top;
	cursor: pointer;
	z-index: 2;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}
.o-slideshow__ctrl:first-of-type{
	left: 1.5rem;
}
.o-slideshow__ctrl:last-of-type{
	right: 1.5rem;
}
.o-slideshow__ctrl path{
	fill: #fff;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}
.o-slideshow__ctrl svg{
	position: relative;
	width: 1rem;
	height: 1rem;
}
.o-slideshow__ctrl:first-of-type svg{
	right: 0.1rem;
}
.o-slideshow__ctrl:last-of-type svg{
	left: 0.1rem;
}
.o-slideshow__ctrl:hover{
	background-position: center bottom;
}
@media all and (max-width: 1330px){
	.o-slideshow{
		 -webkit-box-flex: 1;
		     -ms-flex: auto;
		         flex: auto;
	}
	.o-slideshow__img.o-photo__cover{
		  -o-object-fit: contain;
		     object-fit: contain;
	}
}
@media all and (max-width: 660px){
	.o-slideshow__vigs{
		height: 5rem;
	}
	.o-slideshow__vig{
		width: 3rem;
		height: 3rem;
		margin: 0 0.5rem;
		border-radius: 0.25rem;
	}
	.o-slideshow__ctrl{
		border-radius: 0 0.5rem 0.5rem 0;
		width: 1.75rem;
		height: 3.75rem;
	}
	.o-slideshow__ctrl:first-of-type{
		left: 0;
	}
	.o-slideshow__ctrl:last-of-type{
		border-radius: 0.5rem 0 0 0.5rem;
		right: 0;
	}
}

/* =========== FORMULAIRES =========== */

/* --- Encadré de rappel --- */
.o-rappel{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	padding: 2rem 2rem 1rem 2rem;
	width: 100%;
	max-width: 35rem;
	border: 1px solid rgba(119, 122, 127, 0.5);
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}
* + .o-rappel, .o-rappel + *:not([class]){
	margin-top: 3rem;
}
.o-rappel__input{
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	padding: 1rem 1.5rem;
	background: #F2F6F7;
	height: 4rem;
}
.o-rappel__input--fff{
	background: #fff;
	color: #31494E;
}
.o-rappel .o-btn{
	height: 4rem;
	border-radius: 0;
}
.o-rappel .o-btn::before{
	content: url('/medias/icons/base/tel-fff.svg');
}
.o-rappel p{
	font-size: 0.9rem;
	font-style: italic;
	min-width: 100%;
	line-height: 1.2;
	margin-top: 0.7rem;
}

@media all and (max-width: 350px){
	.o-rappel{
		padding: 2rem 1rem 1rem 1rem;
	}
	.o-rappel .o-btn{
		width: 100%;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
	}
	.o-rappel .o-btn::before{
		right: 18%;
	}
}

/* --- Inner labeled form */
.o-form-bk{
	padding: 6rem 5%;
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
}
@media all and (max-width: 1200px){
	.o-form-bk{
		padding: 5rem 6%;
		width: 100%;
	}
}
@media all and (max-width: 600px){
	.o-form-bk{
		padding: 4rem 7%;
	}
}
.o-form{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
	gap: 1rem 2rem;
	position: relative;
	max-width: 900px;
}
.o-form__radios{
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	width: 100%;
	margin-bottom: 1rem;
	gap: 0.5rem 1.5rem;
}
.o-form__range{
	min-width: 100%;
	font-weight: 700;
	margin: 0.5rem 0 1.5rem 0;
	gap: 0.25rem 1rem;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
}
.o-form__range input{
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	max-width: 20rem;
	cursor: pointer;
	background-color: #fff;
}
.o-form__range p:first-child{
	min-width: 100%;
}
.o-form__range p:last-child{
	margin: 0;
	min-width: 4rem;
	line-height: 1.2;
}
.o-form__p{
	min-width: 100%;
	font-weight: 700;
	margin: 0.5rem 0 -0.5rem 0;
}
.o-form__h3{
	font-size: 1.8rem;
	margin-bottom: 1.5rem;
	position: relative;
	font-weight: 900;
	min-width: 100%;
	text-align: center;
}
.o-form__h3:after{
	content: "";
	position: absolute;
	width: 4rem;
	height: 1px;
	background: #22333B;
	bottom: -0.5rem;
	left: 50%;
	-webkit-transform: translateX(-50%);
	    -ms-transform: translateX(-50%);
	        transform: translateX(-50%);
}
.o-form .o-btn{
	margin-top: 2rem;
}
.o-form .o-btn::before{
	content: url('/medias/icons/base/mail-fff.svg');
}
.o-form__legend{
	margin-bottom: 1rem;
	min-width: 100%;
	text-align: center;
}
.o-form__legend p{
	position: relative;
	display: inline-block;
}
.o-form__legend p::before{
	content: '*';
	left: -0.75rem;
	top: 0;
	color: #31494E;
	font-weight: 700;
	position: absolute;
}
.o-form__lb{
	position: relative;
	border-bottom: 1px solid #22333B;
	margin-bottom: 1rem;
	min-width: 47%;
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	background: transparent;
}
.o-form__lb input{
	background: none;
	position: relative;
	z-index: 1;
}
.o-form__lb span, .o-form__lb .o-form__input:focus + span,
input:-webkit-autofill + span,
input:-webkit-autofill:hover + span,
input:-webkit-autofill:focus + span,
input:-webkit-autofill:active + span{
	display: block;
	position: absolute;
	top: 0;
	-webkit-transform: translate(-0.5rem, -50%) scale(0.9);
	        transform: translate(-0.5rem, -50%) scale(0.9);
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	-webkit-transform-origin: left;
	        transform-origin: left;
}
.o-form__input{
	width: 100%;
	padding: 1rem 0;
	line-height: 1.2;
	border-radius: 0.35rem;
}
.o-form__input--txt{
	min-width: 100%;
	min-height: 10rem;
	resize: none;
	padding: 1rem;
	line-height: 1.7;
}
.o-form__input:-moz-placeholder-shown + span{
	transform: translateY(-50%);
	top: 50%;
	color: #6a7f84;
}
.o-form__input:-ms-input-placeholder + span{
	-ms-transform: translateY(-50%);
	    transform: translateY(-50%);
	top: 50%;
	color: #6a7f84;
}
.o-form__input:placeholder-shown + span{
	-webkit-transform: translateY(-50%);
	    -ms-transform: translateY(-50%);
	        transform: translateY(-50%);
	top: 50%;
	color: #6a7f84;
}

/* Useful if input has background to let the label take its new place before changing the background.*/
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
    -webkit-transition: background-color 5000s ease-in-out 0s;
    transition: background-color 5000s ease-in-out 0s;
}

/* Disclaimer to check */
.o-form__lcheck{
	margin-top: 1.5rem;
	padding-left: 1.75rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	position: relative;
	cursor: pointer;
	line-height: 1.4;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}
.o-form__lcheck:hover{
	color: #627477;
}
.o-form__lcheck span{
	line-height: 1.4;
	position: relative;
	font-size: 1rem;
}
.o-form__lcheck:hover .o-form__check + span:before,
.o-form__lcheck:focus .o-form__check + span:before{
	background: rgba(255,255,255,0.3);
}

.o-form__check:not(:checked),
.o-form__check:checked {
	position: absolute;
	left: 0.45rem;
	top: 0.4rem;
	opacity: 0.01;
}
.o-form__check + span:before{
	content: '';
	position: absolute;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
	left: -1.75rem;
	top: -1px; /* Ajustement pour centrage visuel sur 1ère ligne typo */
	width: 18px;
	height: 18px;
	border-radius: 0.2rem;
	margin: 0.2rem 1rem 0 0;
	background: transparent;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	border: 1px solid #22333B;
	-webkit-transition: all 250ms cubic-bezier(.4,.0,.23,1);
	-o-transition: all 250ms cubic-bezier(.4,.0,.23,1);
	transition: all 250ms cubic-bezier(.4,.0,.23,1);
}
.o-form__check:checked + span:before{
	-webkit-animation: shrink-bounce 200ms cubic-bezier(.4,.0,.23,1);
	        animation: shrink-bounce 200ms cubic-bezier(.4,.0,.23,1);
	border: 9px solid #31494E;
}
.o-form__check:checked + span::after{
	content: '';
	position: absolute;
  left: -1.5rem;
	top: 9px;
	width: 0.2rem;
	height: 0.6rem;
	border-right: 2px solid transparent;
	border-bottom: 2px solid transparent;
	-webkit-transform: rotate(45deg);
	    -ms-transform: rotate(45deg);
	        transform: rotate(45deg);
	-webkit-transform-origin: 0% 100%;
	    -ms-transform-origin: 0% 100%;
	        transform-origin: 0% 100%;
	-webkit-animation: checkbox-check 125ms 250ms cubic-bezier(.4,.0,.23,1) forwards;
	        animation: checkbox-check 125ms 250ms cubic-bezier(.4,.0,.23,1) forwards;
}

@-webkit-keyframes shrink-bounce{
  0%{
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  33%{
    -webkit-transform: scale(.85);
            transform: scale(.85);
  }
  100%{
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

@keyframes shrink-bounce{
  0%{
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  33%{
    -webkit-transform: scale(.85);
            transform: scale(.85);
  }
  100%{
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@-webkit-keyframes checkbox-check{
  0%{
    max-width: 0;
    max-height: 0;
    border-color: #fff;
    -webkit-transform: translate3d(0,0,0) rotate(45deg);
            transform: translate3d(0,0,0) rotate(45deg);
  }
  33%{
		max-width: 0.2rem;
    max-height: 0;
    -webkit-transform: translate3d(0,0,0) rotate(45deg);
            transform: translate3d(0,0,0) rotate(45deg);
  }
  100%{
		max-width: 0.2rem;
    max-height: 0.5rem;
    border-color: #fff;
    -webkit-transform: translate3d(0,-0.5rem,0) rotate(45deg);
            transform: translate3d(0,-0.5rem,0) rotate(45deg);
  }
}
@keyframes checkbox-check{
  0%{
    max-width: 0;
    max-height: 0;
    border-color: #fff;
    -webkit-transform: translate3d(0,0,0) rotate(45deg);
            transform: translate3d(0,0,0) rotate(45deg);
  }
  33%{
		max-width: 0.2rem;
    max-height: 0;
    -webkit-transform: translate3d(0,0,0) rotate(45deg);
            transform: translate3d(0,0,0) rotate(45deg);
  }
  100%{
		max-width: 0.2rem;
    max-height: 0.5rem;
    border-color: #fff;
    -webkit-transform: translate3d(0,-0.5rem,0) rotate(45deg);
            transform: translate3d(0,-0.5rem,0) rotate(45deg);
  }
}

/* =========== INCLUDE PARTS =========== */

/* Loader */
.c-loader__section--left, .c-loader__section--right{
	width: 52%;
	height: 100%;
	position: fixed;
	background: #101719;
	-webkit-transition: -webkit-transform 1s 0.2s;
	transition: -webkit-transform 1s 0.2s;
	-o-transition: transform 1s 0.2s;
	transition: transform 1s 0.2s;
	transition: transform 1s 0.2s, -webkit-transform 1s 0.2s;
	z-index: 20;
	top: 0;
}
.c-loader__section--left{
	left: -1%;
}
.c-loader__section--right{
	right: -1%;
}
.c-loader__section--left.is-loaded{
	-webkit-transform: translateX(-100%);
	    -ms-transform: translateX(-100%);
	        transform: translateX(-100%);
}
.c-loader__section--right.is-loaded{
	-webkit-transform: translateX(100%);
	    -ms-transform: translateX(100%);
	        transform: translateX(100%);
}
.c-loader{
	width: 100vw;
	height: 100%;
	max-height: 100vh;
	top: 0;
	left: 0;
	position: fixed;
	z-index: 21;
}
.c-loader__logo{
  width: 12rem;
  height: 12rem;
	opacity: 0;
  -webkit-animation: loader 1.25s infinite 0.5s alternate ease-in-out;
          animation: loader 1.25s infinite 0.5s alternate ease-in-out;
}
.c-loader.is-loaded{
	-webkit-transition: opacity 0.3s, -webkit-transform 0s 0.4s;
	transition: opacity 0.3s, -webkit-transform 0s 0.4s;
	-o-transition: opacity 0.3s, transform 0s 0.4s;
	transition: opacity 0.3s, transform 0s 0.4s;
	transition: opacity 0.3s, transform 0s 0.4s, -webkit-transform 0s 0.4s;
	opacity: 0;
	-webkit-transform: translateX(-100vw);
	    -ms-transform: translateX(-100vw);
	        transform: translateX(-100vw);
}
@-webkit-keyframes loader {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes loader {
	0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@media all and (max-width: 600px){
	.c-loader__logo{
	  width: 9rem;
	  height: 9rem;
	}
}
@media all and (max-width: 400px){
	.c-loader__logo{
	  width: 6rem;
	  height: 6rem;
	}
}

/* Cookies */
.c-cks{
	z-index: 16;
	right: 1rem;
	bottom: -30rem;
	height: auto;
	max-width: 28rem;
	margin-left: 1rem;
	position: fixed;
	background-color: #fff;
	line-height: 1.4;
	opacity: 0;
	padding: 3rem;
	border-radius: 1rem;
	-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-cks.has-appeared{
	-webkit-transform: translateY(-31rem);
	    -ms-transform: translateY(-31rem);
	        transform: translateY(-31rem);
	opacity: 1;
	-webkit-transition: all 1s, opacity 0s;
	-o-transition: all 1s, opacity 0s;
	transition: all 1s, opacity 0s;
}
.c-cks__h2{
	font-size: 1.8rem;
	margin: 0 0 2rem 0;
	width: 65%;
}
.c-cks__p{
	margin: 0 0 1.5rem 0;
}
.c-cks__p + .c-cks__p{
	margin: 0;
}
.c-cks .o-btn, .c-cks .o-btn--gh{
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	height: 3.5rem;
	margin: 0;
	padding: 0 0 0 0.5rem;
	-ms-flex-wrap: nowrap;
	    flex-wrap: nowrap;
	line-height: 1;
	min-width: 8.5rem;
}
.c-cks .o-btn img, .c-cks .o-btn--gh img{
	width: 1rem;
	height: 1rem;
}
.c-cks .o-btns{
	margin-top: 2.5rem;
	gap: 1rem;
}
.c-cks__icon{
	position: absolute;
	top: 1.8rem;
	right: 1.8rem;
	width: 5rem;
	height: 5rem;
}
.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.2);
	-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: 500px), all and (max-height: 550px){
	.c-cks{
		padding: 2rem 1.5rem 1.5rem 1.5rem;
		font-size: 1rem;
		right: 0.25rem;
		bottom: -30.75rem;
		margin-left: 0.25rem;
	}
	.c-cks__h2{
		font-size: 1.4rem;
		margin: 0 0 1rem 0;
		width: 65%;
	}
	.c-cks__p{
		margin: 0 0 0.5rem 0;
		width: 80%;
	}
	.c-cks__p + .c-cks__p{
		width: auto;
	}
	.c-cks .o-btn, .c-cks .o-btn--gh{
		height: 3rem;
	}
	.c-cks .o-btns{
		margin-top: 1.5rem;
		gap: 0.5rem;
	}
	.c-cks__icon{
		position: absolute;
		top: 1.25rem;
		right: 1.25rem;
		width: 4rem;
		height: 4rem;
	}
}
@media all and (max-width: 410px){
	.c-cks__p{
		width: 100%;
	}
}

/* =========== NAVIGATION =========== */

/* Main Navigation */
.c-nav{
	width: 100%;
	position: fixed;
	top: 0;
	-webkit-box-shadow: 1px 1px 3px rgba(0,0,0,0.1);
	        box-shadow: 1px 1px 3px rgba(0,0,0,0.1);
	background-color: rgba(255,255,255,1);
	max-width: 120rem;
	height: 5rem;
	margin: 0 auto;
	z-index: 6;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}
.c-nav__menu{
	padding: 0 3rem;
	gap: 1rem 1.6rem;
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
}
.c-nav__a{
	font-size: 1rem;
	position: relative;
	font-weight: 900;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	text-transform: uppercase;
	position: relative;
}
.c-nav__a:not(:last-child)::before{
	content: '';
	background: rgba(0, 0, 0, 0.2);
	height: 1rem;
	width: 1px;
	position: absolute;
	right: -0.8rem;
	top: 50%;
	-webkit-transform: translateY(-50%);
	    -ms-transform: translateY(-50%);
	        transform: translateY(-50%);
}
.c-nav__a:not(.is-selected, :hover){
	color: #101719;
}
.c-nav__a:last-child:hover{
	color: #6897A1;
}
.c-nav__a::after{
	content: '';
	background: #6897A1;
	height: 3px;
	width: 4rem;
	max-width: 0;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	position: absolute;
	bottom: -0.25rem;
	left: 50%;
	-webkit-transform: translateX(-50%);
	    -ms-transform: translateX(-50%);
	        transform: translateX(-50%);
}
.c-nav__a.u-col2::after{
	background: #2BB747;
}
.c-nav__a.u-col3::after{
	background: #EB5160;
}
.c-nav__a.u-col4::after{
	background: #EE8434;
}
.c-nav__a.u-col5::after{
	background: #17A695;
}
.c-nav__a.u-col6::after{
	background: #B1740F;
}
.c-nav__a.u-col7::after{
	background: #CC0000;
}
.c-nav__a.is-active{
	color: #8EB1B8;
}
.c-nav__a.is-active::after{
	background: #8EB1B8;
}
.c-nav__a:hover::after, .c-nav__a.is-selected::after{
	max-width: 4rem;
}

.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-nav__logo{
	height: 100%;
	width: 16rem;
	padding: 0 1rem 0 0.5rem;
	color: #101719;
	background: #E3EFF2;
	-ms-flex-wrap: nowrap;
	    flex-wrap: nowrap;
}
.c-nav__logo img{
	height: 2.5rem;
	width: 2.5rem;
	margin-right: 0.75rem;
}
.c-nav__logo span{
	font-size: 1.5rem;
	text-transform: uppercase;
	font-weight: 900;
	line-height: 1.2;
}
.c-nav__num{
	margin-left: 2rem;
	font-weight: 900;
	font-size: 1.25rem;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	color: #31494E;
	min-width: 0;
}
.c-nav__num:hover{
	color: #6897A1;
}
.c-nav__num:hover svg path{
	fill: #6897A1;
}

/* Btn burger animé */
.c-menu-btn{
	width: 2.5rem;
  height: 2.5rem;
	right: 1.5rem;
	top: 1rem;
	cursor: pointer;
	position: absolute;
	z-index: 6;
	display: none;
}
.c-menu-btn span{
	font-weight: 900;
	display: inline-block;
	position: relative;
	text-transform: uppercase;
	color: #101719;
	right: 3rem;
	line-height: 2.5rem;
	font-size: 1rem;
	-webkit-transition: all 0.3s 0.2s;
	-o-transition: all 0.3s 0.2s;
	transition: all 0.3s 0.2s;
}
.c-menu-btn.is-switched .c-menu-btn span{
	color: #CAF3FB;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}
.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-color: #101719;
	-webkit-transition: all 0.2s 0.2s, top 0.3s, -webkit-transform 0.3s;
	transition: all 0.2s 0.2s, top 0.3s, -webkit-transform 0.3s;
	-o-transition: all 0.2s 0.2s, transform 0.3s, top 0.3s;
	transition: all 0.2s 0.2s, transform 0.3s, top 0.3s;
	transition: all 0.2s 0.2s, 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: #101719;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
	-webkit-transition: all 0.2s 0.2s, width 0.3s 0.6s, -webkit-transform 0.3s 0.3s;
	transition: all 0.2s 0.2s, width 0.3s 0.6s, -webkit-transform 0.3s 0.3s;
	-o-transition: all 0.2s 0.2s, transform 0.3s 0.3s, width 0.3s 0.6s;
	transition: all 0.2s 0.2s, transform 0.3s 0.3s, width 0.3s 0.6s;
	transition: all 0.2s 0.2s, 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;
	background: #CAF3FB;
  -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;
	background: #CAF3FB;
  -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;
	background: #CAF3FB;
  -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;
	background: #CAF3FB;
  -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;
	background: #CAF3FB;
	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;
}

@media all and (max-width: 1620px){
	.c-nav{
		height: 4.5rem;
		padding: 0 7rem 0 0;
		-webkit-box-pack: start;
		    -ms-flex-pack: start;
		        justify-content: flex-start;
	}
	.c-nav__menu{
		opacity: 0;
		position: fixed;
		background: #101719;
		top: 0;
		right: -20rem;
		height: 100%;
		max-height: 100vh;
		z-index: 5;
		width: 20rem;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-box-align: start;
		    -ms-flex-align: start;
		        align-items: flex-start;
		padding: 0 2rem;
		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-nav__a{
		font-size: 1.1rem;
	}
	.c-nav__a:not(.is-selected, :hover){
		color: #fff;
	}
	.c-nav__a::after{
		left: 0;
		-webkit-transform: none;
		    -ms-transform: none;
		        transform: none;
	}
	.c-nav__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-btn{
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
	.c-nav__logo{
		height: 4.5rem;
	}
}
@media all and (max-width: 800px){
	.c-nav__num{
		display: none;
	}
}
@media all and (max-width: 625px){
	.c-nav{
		padding: 0;
	}
}
@media all and (max-width: 450px){
	.c-menu-btn span{
		display: none;
	}
	.c-nav__logo{
		width: auto;
		margin-right: 0.25rem;
		padding-right: 1.5rem;
	}
	.c-nav__logo span{
		font-size: 1.25rem;
	}
}
@media all and (max-height: 479px){
	.c-nav__menu{
		gap: 0.75rem 1.6rem;
	}
}

/* Contacts latéraux */
.c-latnav__icons {
    position: fixed;
    right: -12rem;
    bottom: 40%;
    width: 16rem;
    z-index: 15;
    -webkit-transition: all 0.5s;
    -o-transition: all 0.5s;
    transition: all 0.5s;
		display: none;
}
.c-latnav__icons.is-hidden {
    -webkit-transform: translateX(4.5rem);
    -ms-transform: translateX(4.5rem);
    transform: translateX(4.5rem);
}
.c-latnav__el {
    height: 4rem;
    -webkit-transition: all 0.7s;
    -o-transition: all 0.7s;
    transition: all 0.7s;
    margin: 0.25rem 0;
    font-weight: 900;
    font-size: 1.15rem;
    -webkit-box-shadow: 2px 2px 5px 0 rgba(0, 0, 0, 0.75);
    box-shadow: 2px 2px 5px 0 rgba(0, 0, 0, 0.75);
}
.c-latnav__el svg {
    height: 1.7rem;
    padding: 1.15rem;
    display: block;
    background-color: #1F2F33;
}
.c-latnav__el svg path{
    fill: #CAF3FB;
}
.c-latnav__el:first-of-type svg {
    background-color: #CAF3FB;
}
.c-latnav__el:first-of-type svg path{
    fill: #101719;
}
.c-latnav__el:first-of-type,
.c-latnav__el:first-of-type svg {
    border-radius: 1rem 0 0 0;
    font-size: 1.05rem;
}
.c-latnav__el:last-of-type,
.c-latnav__el:last-of-type svg {
    border-radius: 0 0 0 1rem;
}
.c-latnav__el p {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    -ms-flex-item-align: stretch;
    -ms-grid-row-align: stretch;
    align-self: stretch;
    padding-left: 1.5rem;
    text-transform: uppercase;
    background-color: #F2F6F7;
    line-height: 4rem;
}
.c-latnav__el:hover {
    -webkit-transform: translateX(-12rem);
    -ms-transform: translateX(-12rem);
    transform: translateX(-12rem);
}
@media all and (max-width: 800px){
    .c-latnav__icons {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        right: auto;
        left: 0;
        bottom: 0;
        width: auto;
    }
    .c-latnav__el {
        margin: 0 0.25rem 0 0;
    }
    .c-latnav__el p {
        display: none;
    }
    .c-latnav__el:hover {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
    }
    .c-latnav__el:first-of-type,
    .c-latnav__el:first-of-type svg {
        border-radius: 0;
    }
    .c-latnav__el:last-of-type,
    .c-latnav__el:last-of-type svg {
        border-radius: 0 1rem 0 0;
    }
    .c-latnav__icons.is-hidden {
        -webkit-transform: translateX(-100%);
        -ms-transform: translateX(-100%);
        transform: translateX(-100%);
    }
}

/* Footer */
.c-footline{
	background-color: #101719;
	height: 5rem;
	text-align: center;
	color: #f7f3e3;
	font-size: 1rem;
  font-weight: 600;
  padding: 0 5%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-shadow: 0 0 3px rgba(0,0,0,0.1);
	        box-shadow: 0 0 3px rgba(0,0,0,0.1);
}
.c-footline .o-flexbox{
	gap: 0.8rem 1.5rem;
}

@media all and (max-width: 890px){
	.c-footline{
		height: auto;
		padding: 2rem;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		gap: 1rem;
	}
}
@media all and (max-width: 800px){
	.c-footline{
		padding-bottom: 5rem;
	}
}

/*Bouton Scroll*/
.c-scroll-btn{
	position: fixed;
	bottom: 2.5rem;
	left: 2.5rem;
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #31494E), color-stop(50%, #6897A1));
	background-image: -o-linear-gradient(top, #31494E 50%, #6897A1 50%);
	background-image: linear-gradient(to bottom, #31494E 50%, #6897A1 50%);
	background-size: 100% 200%;
	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: translate(-50%, 50%);
	    -ms-transform: translate(-50%, 50%);
	        transform: translate(-50%, 50%);
	cursor: pointer;
	z-index: 4;
}
.c-scroll-btn:hover{
	background-position: center bottom;
}
.c-scroll-btn__icon{
	width: 0.75rem;
	height: 0.75rem;
}
.c-scroll-btn__path{
	fill: #fff;
}

@media all and (max-width: 800px){
	.c-scroll-btn{
		display: none;
	}
}

/* Anchors navigation */
.js-anchor{
	scroll-padding-top: 3rem;
}

/* =========== FIL D'ARIANE =========== */
.o-breadcrumb{
	margin: 2rem auto;
	max-width: 101rem;
	padding: 0 4%;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
}
.o-breadcrumb ul{
	list-style-type: none;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
}
.o-breadcrumb li{
	position: relative;
	font-size: 1rem;
	font-weight: 700;
	opacity: 0.8;
}
.o-breadcrumb li:hover, .o-breadcrumb li:last-child{
	color: #6897A1;
	opacity: 1;
}
.o-breadcrumb li:not(:last-child){
	padding-right: 2rem;
}
.o-breadcrumb li:not(:last-child)::after{
	content: '\203a';
	position: absolute;
	right: 0.9rem;
	font-size: 1.2rem;
	line-height: 1.2;
}
.o-breadcrumb + .o-fullsec--bar{
	padding-top: 0;
}
.o-breadcrumb + .o-fullsec--bar::after{
	top: 0;
}
