body,
h1,
h2,
h3,
h4,
h5
{
	font-family: 'Montserrat', sans-serif;
}

a
{
	color: #000;
	text-decoration: none;
}

a:hover
{
	color: currentColor;
	text-decoration: none;
}

header
{
	box-shadow: 1px 1px 4px 2px #F7F7F7;
}

.top-nav
{
	display: flex;

	flex-wrap: wrap;

	width: 100%;

	background-color: #80172B;

	color: #FFF;

	justify-content: space-around;
}

.top-link
{
	position: relative;

	padding: 20px 40px;

	color: #FFF;
	text-decoration: underline;
}

.top-link:before
{
	position: absolute;

	height: 100%;
	width: 1px;

	top: 0;
	left: 0;

	background-color: #FFF;

	content: '';
}

.top-link:last-child::after
{
	position: absolute;

	height: 100%;
	width: 1px;

	top: 0;
	right: 0;

	background-color: #FFF;

	content: '';
}

.logo
{
	height: 100px;

	font-family: 'object-fit: contain;';

	object-fit: contain;
}

.nav-link
{
	position: relative;

	padding: 0 20px!important;

	font-weight: 700;
	color: #000;

	text-transform: uppercase;
}

.nav-item.active .nav-link,
.nav-link:hover
{
	color: #80172B;
}

.nav-link:before
{
	position: absolute;

	height: 10px;
	width: 2px;

	top: 50%;
	right: 0;

	background-color: #80172B;

	content: '';

	transform: translateY(-50%);
}

.nav-item:last-child .nav-link::before,
.nav-item:nth-of-type(4) .nav-link::before
{
	display: none;
}

.home-presentation
{
	display: flex;

	height: 600px;
	width: 100%;

	background-image: url(/images/idc.jpeg);
	background-repeat: no-repeat;
	background-size: cover;

	object-fit: cover;
	align-items: flex-end;
}

.home-presentation-description
{
	position: relative;

	width: 30%;

	margin-left: 100px;
	padding: 20px;
	padding-top: 40px;

	background-color: rgb(255 255 255 / 90%);
}

.home-presentation-description .c-title
{
	margin-top: 20px;
}

.home-presentation-description:before
{
	position: absolute;

	height: 120px;
	width: 100%;

	top: -70px;
	left: 0;

	background-image: url(/images/frise-logos.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;

	content: '';
}

.c-title
{
	position: relative;

	margin-bottom: 20px;

	font-size: 2em;

	text-transform: uppercase;
}

.c-title::before
{
	position: absolute;

	height: 100%;
	width: 4px;

	top: 0;
	left: -22px;

	background-color: #80172B;

	content: '';
}

.home-presentation-txt
{
	margin-left: 20%;
}

.home-presentation-link
{
	position: relative;

	padding-left: 30px;

	font-weight: 700;
	color: #000;

	text-transform: uppercase;

	align-self: flex-start;
}

.home-presentation-link::before
{
	position: absolute;

	height: 20px;
	width: 20px;

	top: 50%;
	left: 0;

	background-image: url(/images/next.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;

	content: '';

	transform: translateY(-50%);
}

.a-propos
{
	position: relative;
	display: flex;

	margin: 20px 0;
	padding: 0 50px;

	justify-content: space-around;
}

.a-propos::before
{
	position: absolute;

	height: 50%;
	width: 30%;

	top: 0;
	right: 0;

	background-image: url(/images/fond-batiment.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;

	content: '';

	z-index: -1;
}

.a-propos-col-img
{
	display: flex;

	flex-direction: column;

	width: 30%;

	justify-content: center;
}

.a-propos-col-txt
{
	display: flex;

	flex-wrap: wrap;

	width: 60%;

	justify-content: space-between;
}

.a-propos__img
{
	width: 100%;
}

.title-container
{
	margin-bottom: 50px;
}

.title-container--center
{
	display: flex;

	flex-direction: column;

	width: 100%;

	text-align: center;

	align-items: center;
}

.title-container__subtitle
{
	letter-spacing: 2px;
	text-transform: uppercase;
}

.title-container__title
{
	position: relative;

	padding-bottom: 7px;

	font-weight: 700;

	text-transform: uppercase;
}

.title-container__title:before
{
	position: absolute;

	height: 3px;
	width: 45px;

	left: 0;
	bottom: 0;

	background-color: #80172B;

	content: '';
}

.title-container--center .title-container__title:before
{
	left: 50%;

	transform: translateX(-50%);
}

.title-container__title--without-underline
{
	margin-left: 50px;

	font-weight: 700;
}

.title-container__title--without-underline::before
{
	display: none;
}

.a-propos-col-txt-left
{
	width: 48%;
}

.a-propos-col-txt-right
{
	width: 48%;
}

.hr
{
	width: 85%;

	margin: 1em auto;

	border: 1px solid #E4D3D3;
}

.a-propos-images__col-img
{
	height: 190px;
	width: 100%;

	object-fit: cover;
}

.a-propos-images
{
	display: flex;

	width: 100%;

	justify-content: space-between;
}

.a-propos-images__col
{
	position: relative;

	width: 31%;

	box-shadow: 5px 5px #80172B;
}

.gic-chiffres
{
	width: 100%;

	margin: 30px 0;
}

.chiffres-col__highlight
{
	font-size: 7em;
	color: #FFF;

	text-shadow: 0 0 10px #E4D3D3, 0 0 15px #E4D3D3, 0 0 20px #E4D3D3, 0 0 25px #E4D3D3;
}

.chiffres-col
{
	display: flex;

	width: 33%;

	align-items: center;
	justify-content: center;
}

.chiffres
{
	display: flex;

	width: 100%;

	align-items: center;
	justify-content: center;
}

.chiffres-col__txt
{
	margin-left: -3em;

	font-weight: 700;
}

.gic-valeurs
{
	display: flex;

	flex-wrap: wrap;
}

.gic-valeurs__col
{
	display: flex;

	min-height: 280px;
	width: 50%;
}

.gic-valeurs__col-img
{
	position: relative;
	display: flex;

	flex-direction: column;

	width: 50%;

	background-image: url(/images/gic-photo3.jpg);
	background-size: cover;

	z-index: 0;

	justify-content: flex-end;
}

.gic-valeurs__col:nth-of-type(1) .gic-valeurs__col-img
{
	background-image: url(/images/idc-chantier.jpg);
}

.gic-valeurs__col:nth-of-type(3) .gic-valeurs__col-img
{
	background-image: url(/images/idc-grue.png);
}

.gic-valeurs__col:nth-of-type(4) .gic-valeurs__col-img
{
	background-image: url(/images/chantier.png);
}

.gic-valeurs__col-txt
{
	width: 50%;

	padding: 30px;

	text-align: center;
}

.gic-valeurs__col-img:before
{
	position: absolute;
	opacity: .7;

	height: 100%;
	width: 100%;

	top: 0;
	left: 0;

	background-color: #FFF;

	content: '';

	z-index: -1;
}

.gic-valeurs__col-img-title
{
	font-weight: 600;
	font-size: 3em;
	color: rgb(0 0 0 / 40%);

	text-transform: uppercase;
}

.gic-valeurs__col-txt-title
{
	position: relative;

	font-weight: 700;
	font-size: 1.5em;
	color: #80172B;

	text-align: center;
}

.gic-valeurs__col-txt-title:before
{
	position: absolute;

	height: 1px;
	width: 70px;

	top: 50%;
	left: -70px;

	background-color: #000;

	content: '';

	z-index: 1;
}

.gic-valeurs__col-txt-title--right::before
{
	right: -70px;
	left: unset;
}

.gic-vision
{
	display: flex;

	margin: 50px auto;
}

.black-title
{
	position: relative;

	padding-right: 100px;

	font-weight: 800;
}

.gic-vision p
{
	width: 70%;

	padding: 0 20px;
}

.black-title:before
{
	position: absolute;

	height: 1px;
	width: 80px;

	top: 17px;
	right: 0;

	background-color: #000;

	content: '';
}

.red-banner
{
	position: relative;

	width: 100%;

	padding: 50px 0;

	background-image: url(/images/gic-photo3.jpg);
	background-position: center;
	background-size: cover;

	font-size: 1.5em;
	color: #FFF;

	text-align: center;
	letter-spacing: 2px;
	text-transform: uppercase;

	z-index: 0;
}

.red-banner:before
{
	position: absolute;
	opacity: .6;

	height: 100%;
	width: 100%;

	top: 0;
	left: 0;

	background-color: #80172B;

	content: '';

	z-index: -1;
}

.gic-histoire
{
	display: flex;
}

.gic-histoire__col-img
{
	height: 600px;
	max-width: 100%;

	object-fit: contain;
}

.gic-histoire__col
{
	display: flex;

	flex-direction: column;
}

.gic-histoire__col--txt
{
	width: 40%;

	margin: 0 auto;
	padding: 20px;

	align-items: center;
	justify-content: space-evenly;
}

.gic-histoire__col--img
{
	width: 40%;
}

.timeline-slider__col
{
	display: flex;

	flex-direction: column;
}

.timeline-date
{
	position: relative;
	display: block;

	margin-bottom: 20px;

	font-weight: 800;
	font-size: 2.5em;

	text-align: center;
}

.timeline-description
{
	display: block;

	padding: 0 30px;

	text-align: center;
}

.gic-timeline
{
	margin: 60px 0;
}

.slick-next
{
	height: 40px;
	width: 40px;

	top: -40px;
	right: 100px;
	left: unset;

	z-index: 100;
}

.slick-prev
{
	height: 40px;
	width: 40px;

	top: -40px;
	right: 150px;
	left: unset;

	z-index: 100;
}

.slick-next:before
{
	position: absolute;
	opacity: 1;

	height: 100%;
	width: 100%;

	top: 0;
	left: 0;

	background-image: url(/images/arrow.svg);
	background-size: contain;

	content: '';
}

.slick-prev:before
{
	position: absolute;
	opacity: 1;

	height: 100%;
	width: 100%;

	top: 0;
	left: 0;

	background-image: url(/images/arrow.svg);
	background-size: contain;

	content: '';

	transform: rotate(180deg);
}

.timeline-date:before
{
	position: absolute;

	height: 1px;
	width: 50%;

	top: 50%;
	right: 0;

	content: '';

	border: 1px dashed #80172B;

	transform: translate(50%);
}

.timeline-slider__col:last-child .timeline-date:before
{
	display: none;
}

.gic-bureaux-etudes
{
	position: relative;

	width: 100%;

	padding-top: 90px;
}

.gic-bureaux-etudes:before
{
	position: absolute;

	height: 70px;
	width: 80%;

	top: 0;
	left: 50%;

	background-image: url(/images/sectionpoints.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 120%;

	content: '';

	transform: translateX(-50%);

	z-index: -1;
}

.gic-bureaux-etudes__container
{
	display: flex;

	margin: 0;
	padding: 50px;

	background-color: #F7F7F7;

	justify-content: space-around;
}

.gic-bureaux-etudes__col
{
	position: relative;
	display: flex;

	flex-direction: column;

	width: 22%;

	padding: 90px 30px;

	background-color: #FFF;

	text-align: center;

	justify-content: space-between;
	align-items: center;
}

.gic-bureaux-etudes__col-logo
{
	position: absolute;

	height: 90px;
	width: 90px;

	top: 0;
	left: 0;
}

.gic-bureaux-etudes__col-logo-img
{
	width: 100%;
}

.gic-bureaux-etudes__col--3ma-ic .gic-bureaux-etudes__col-logo
{
	height: 80px;
	width: 140px;
}

.gic-bureaux-etudes__col--cible .gic-bureaux-etudes__col-logo
{
	height: 80px;
	width: 140px;
}

.gic-bureaux-etudes__col-title
{
	position: relative;

	margin-top: 10px;
	padding-bottom: 10px;

	font-weight: 600;

	text-transform: uppercase;
}

.gic-bureaux-etudes__col-link
{
	position: absolute;

	height: 40px;
	width: 100%;

	left: 0;
	bottom: 0;

	background-color: #80162A;
	background-image: url(/images/plus.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 20px;
}

.gic-bureaux-etudes__col-title:before
{
	position: absolute;

	height: 1px;
	width: 40px;

	left: 50%;
	bottom: 0;

	background-color: #80172B;

	content: '';

	transform: translateX(-50%);
}

.gic-bureaux-etudes__col-address
{
	display: flex;

	flex-direction: column;

	margin: 10px 0;
}

.gic-bureaux-etudes__col a
{
	color: #000;
}

.top-footer
{
	position: relative;
	display: flex;

	width: 100%;

	margin-top: 30px;
	padding: 60px 20px;

	color: #FFF;

	z-index: 0;

	justify-content: space-evenly;
}

.top-footer:before
{
	position: absolute;
	opacity: .8;

	height: 100%;
	width: 100%;

	top: 0;
	left: 0;

	background-color: #777;

	content: '';

	z-index: -1;
}

.top-footer:after
{
	position: absolute;
	opacity: .6;

	height: 100%;
	width: 100%;

	top: 0;
	left: 0;

	background-image: url(/images/idc.jpeg);
	background-position: center;
	background-size: cover;

	content: '';

	z-index: -2;
}

.top-footer-col
{
	position: relative;
	display: flex;

	flex-direction: column;

	padding-left: 10px;

	justify-content: center;
}

.top-footer-col:first-child:before
{
	position: absolute;

	height: 100%;
	width: 5px;

	top: 50%;
	left: 0;

	background-color: #80172B;

	content: '';

	transform: translateY(-50%);
}

.top-footer-col:first-child p
{
	margin: 0;

	font-size: 1.2em;
}

.c-btn
{
	padding: 10px 20px;

	font-weight: 600;
	color: #FFF;

	text-transform: uppercase;

	border: 2px solid;
}

.c-btn--red
{
	min-width: 210px;
	max-width: 100%;

	background-color: #FFF;

	color: #80172B;

	text-align: center;
}

.c-btn--shadow
{
	border: 1px solid #000;

	box-shadow: -5px 5px #000;
}

.c-footer
{
	display: flex;

	flex-wrap: wrap;

    gap: 20px;

	width: 100%;

	padding: 20px 0;

	justify-content: space-around;
}

.c-footer__col
{
	display: flex;

	flex-direction: column;

	width: 20%;
}

.c-footer-bottom
{
	width: 100%;

	padding: 10px 0;

	background-color: #80172B;

	color: #FFF;

	text-align: center;
}

.c-footer-bottom a
{
	color: #FFF;
}

.c-footer__col--social
{
	justify-content: center;
	align-items: center;
}

.c-footer__col.c-footer__col--social .c-btn
{
	margin: 10px 0;
}

.c-footer__col-title
{
	position: relative;

	padding-bottom: 10px;

	font-weight: 600;
	font-size: 1.2em;
}

.c-footer__col-title:before
{
	position: absolute;

	height: 4px;
	width: 30px;

	left: 0;
	bottom: 0;

	background-color: #80172B;

	content: '';
}

.footer-tel,
.footer-mail,
.footer-address
{
	position: relative;

	padding: 10px 0 10px 25px;
}

.footer-tel:before,
.footer-mail:before,
.footer-address:before
{
	position: absolute;

	height: 20px;
	width: 20px;

	top: 50%;
	left: 0;

	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;

	content: '';

	transform: translateY(-50%);
}

.footer-tel:before
{
	background-image: url(/images/call.svg);
}

.footer-mail:before
{
	background-image: url(/images/paper-plane.svg);
}

.footer-address:before
{
	background-image: url(/images/pointer.svg);
}

.top-page
{
	width: 90%;

	margin: 10px auto 25px auto;
}

.title-page
{
	position: relative;

	margin-bottom: 10px;
	padding-bottom: 90px;

	font-weight: 600;
	font-size: 2em;
}

.title-page::before
{
	position: absolute;

	height: 60px;
	width: 100%;

	left: 0;
	bottom: 0;

	background-image: url(/images/sectionpoints.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 120%;

	content: '';

	z-index: -1;
}

.top-page-block:before
{
	position: absolute;

	height: 100%;
	width: 100%;

	top: 0;
	left: 0;

	background-position: center;
	background-size: cover;

	content: '';

	z-index: -2;
}

.top-page-block
{
	position: relative;
	display: flex;

	height: 170px;

	justify-content: center;
}

.top-page-block--services-img:before
{
	background-image: url(/images/fond-services.png);
}

.top-page-block--services:before
{
	background-image: url(/images/fond-titre.png);
}

.top-page-block--services-igc:before
{
	background-image: url(/images/igc/IGC-1.jpg);
}

.top-page-block--services-ibc::before
{
	background-image: url(/images/ibc/bandeau.jpg);
}

.top-page-block--rejoignez:before
{
	background-image: url(/images/fond-rejoignez.png);
}

.top-page-block__txt
{
	position: absolute;

	max-width: 40%;

	left: 50%;
	bottom: -60%;
	padding: 30px 30px;

	background-color: #FFF;

	text-align: center;

	box-shadow: 0 7px 5px 0 #F1EDED;

	transform: translate(-50%,-50%);
}

.top-page-block__title
{
	margin-bottom: 0;

	font-weight: 700;
	font-size: 1.8em;

	text-transform: uppercase;
}

.top-page-block__subtitle
{
	letter-spacing: 2px;
	text-transform: uppercase;
}

.breadcrumbs
{
	margin-top: 5px;
}

.services
{
	display: flex;

	margin-top: 30px;
	margin-bottom: 30px;

	justify-content: space-around;
}

.services-col__img
{
	position: relative;

	width: 100%;

	margin-bottom: 30px;
}

.services-col
{
	display: flex;

	flex-direction: column;

	width: 50%;

	padding: 0 100px;
}

.services-col--red
{
	position: relative;
}

.services-col__img-container
{
	position: relative;

	padding-top: 60px;
}

.services-col--red::before
{
	position: absolute;

	height: 100%;
	width: 1px;

	top: 0;
	right: 0;

	content: '';

	border-left: 1px dashed;
}

.services-col--red .services-col__img-container:after
{
	position: absolute;

	height: 100px;
	width: 90%;

	top: 0;
	right: 0;

	background-image: url(/images/igc-idc-ibc.png);
	background-repeat: no-repeat;
	background-position: left;
	background-size: contain;

	content: '';
}

.services-col--blue .services-col__img-container:after
{
	position: absolute;

	height: 80px;
	width: 90%;

	top: 0;
	left: 0;

	background-image: url(/images/logo-cible.svg);
	background-repeat: no-repeat;
	background-position: right;
	background-size: contain;

	content: '';
}

.services-col--blue
{
	position: relative;

	padding-top: 100px;
}

.services-col--blue::before
{
	position: absolute;

	height: 40%;
	width: 60%;

	top: -110px;
	right: 0;

	background-image: url(/images/fond-batiment.png);
	background-repeat: no-repeat;
	background-position: top;
	background-size: cover;

	content: '';

	z-index: -1;
}

.custom-ul
{
	list-style: none;
}

.custom-ul li
{
	position: relative;

	margin-bottom: 13px;
	padding-left: 20px;

	font-weight: 700;
	font-size: .9em;
}

.custom-ul li:before
{
	position: absolute;

	height: 10px;
	width: 10px;

	top: 6px;
	left: 0;

	background-color: #000;

	content: '';
}

.custom-ul--red li:before
{
	background-color: #80172B;
}

.custom-ul--blue li:before
{
	background-color: #0A486C;
}

.services-col__title
{
	position: relative;

	margin-bottom: 20px;
	padding-bottom: 10px;

	font-weight: 700;

	text-align: center;
	text-transform: uppercase;
}

.services-col__title:before
{
	position: absolute;

	height: 3px;
	width: 40px;

	left: 50%;
	bottom: 0;

	background-color: #000;

	content: '';

	transform: translateX(-50%);
}

.services-col--blue .services-col__title
{
	color: #0A486C;
}

.services-col--blue .services-col__title:before
{
	background-color: #0A486C;
}

.services-col--red .services-col__title
{
	color: #80172B;
}

.services-col--red .services-col__title:before
{
	background-color: #80172B;
}

.services-col__description
{
	padding: 0 100px;

	color: #777;

	text-align: center;
}

.services-col__grey-background
{
	padding: 20px;

	background-color: #F7F7F7;
}

.services-col__grey-background-title
{
	font-weight: 700;

	text-align: center;
}

.services-col__grey-background-title:before
{
	position: absolute;

	width: 20%;

	left: 0;
	bottom: 0;

	content: '';

	border: 1px dashed #80172B;
}

.contact
{
	display: flex;

	justify-content: space-around;
}

.contact-col
{
	width: 48%;
}

div#map
{
	height: 500px;
	width: 100%;
}

.contact-col--info
{
	display: flex;

	flex-direction: column;

	width: 45%;

	padding: 30px;

	background-color: #F7F7F7;

	box-shadow: 10px 10px #80172B;

	justify-content: center;
}

.contact-col__title
{
	position: relative;

	padding-bottom: 10px;

	font-weight: 700;
	font-size: 1.8em;
}

.contact-col__title:before
{
	position: absolute;

	height: 5px;
	width: 40px;

	left: 0;
	bottom: 0;

	background-color: #80172B;

	content: '';
}

.contact-col__info
{
	display: flex;

	flex-wrap: wrap;

    gap: 20px;

	margin: 20px 0;

	justify-content: space-around;
}

.dropdown-menu.m-ext.show
{
	display: flex;

	min-width: 500px;

	border-radius: unset;
	border: 2px solid;

	box-shadow: -6px 6px #80172B;
}


.dropdown-col
{
	position: relative;

	width: 50%;

	padding: 10px;
}

.dropdown-col:first-child::before
{
	position: absolute;

	height: 100%;

	top: 0;
	right: 0;

	content: '';

	border: 1px dashed #80172B;
}

.dropdown-col strong
{
	font-size: .8em;
}

.dropdown-item
{
	position: relative;

	padding-left: 11px;

	font-weight: 700;
	font-size: .9em;

	text-transform: uppercase;

	transition: .3s ease;
}

.dropdown-item:before
{
	position: absolute;

	height: 5px;
	width: 5px;

	top: 50%;
	left: 0;

	background-color: #80172B;

	content: '';

	border-radius: 50%;

	transform: translateY(-50%);
}

.dropdown-col:last-child .dropdown-item:before
{
	background-color: #0A486C;
}

.dropdown-item:hover,
.dropdown-item.active
{
	background-color: transparent;

	color: #80172B;

	transform: translateX(20px);
}

.dropdown-col:last-child .dropdown-item:hover,
.dropdown-col:last-child .dropdown-item.active
{
	color: #0A486C;
}

.big-number
{
	font-weight: 700;
	font-size: 9em;
	color: #EDEDED;
}

.qui-sommes-nous__title
{
	display: flex;

	align-items: flex-start;
}

.qui-sommes-nous__col--title
{
	position: relative;

	width: 42%;

	padding: 0 20px;
}

.qui-sommes-nous__col--title--igc::before
{
	position: absolute;
	opacity: .5;

	height: 100%;
	width: 100%;

	top: 0;
	right: 0;

	background-image: url(/images/igc/IGC-2-bis.jpg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;

	content: '';

	z-index: -1;
}

.qui-sommes-nous__col--txt
{
	position: relative;

	width: 50%;
}

.qui-sommes-nous__title-txt
{
	position: relative;

	padding-right: 20px;
	padding-left: 140px;

	font-weight: 600;
	font-size: 1.6em;
}

.qui-sommes-nous__title-txt:before
{
	position: absolute;

	height: 1px;
	width: 120px;

	top: 20px;
	left: 0;

	background-color: #80172B;

	content: '';
}

.qui-sommes-nous__col--title--blue .qui-sommes-nous__title-txt:before
{
	background-color: #0A486C;
}

.row--qui-sommes-nous
{
	margin: 40px 0;
}
.qui-sommes-nous__services-col p
{
	position: relative;

	padding-bottom: 20px;
}

.qui-sommes-nous__col--txt-border::before,
.qui-sommes-nous__services-col p:before,
.qui-sommes-nous__intervention-col--txt h2::before
{
	position: absolute;

	height: 1px;
	width: 50%;

	left: 0;
	bottom: 0;

	content: '';

	border: 1px dashed #80172B;
}


.qui-sommes-nous__services-col
{
	width: 48%;
}

l
{
	width: 48%;
}

.qui-sommes-nous__services-col--img
{
	padding: 20px;
}

.qui-sommes-nous__services-col--img img
{
	width: 100%;
}

.qui-sommes-nous__services-col--img-3maic img
{
	max-height: 700px;

	object-fit: contain;
}

.qui-sommes-nous__services-col--txt
{
	display: flex;

	flex-direction: column;

	padding: 40px;

	background-color: #F7F7F7;

	align-items: flex-start;
}

.qui-sommes-nous__services-col__title
{
	position: relative;

	margin-bottom: 20px;
	padding-bottom: 15px;

	font-weight: 700;
	color: #80172B;

	border-bottom: 2px dashed;
}

.qui-sommes-nous__services-col__title--blue
{
	color: #0A486C;
}

.custom-ul--spaced li
{
	margin-bottom: 50px;
}

.qui-sommes-nous__services-col p
{
	margin: 30px 0;
}

.qui-sommes-nous__intervention-col--txt
{
	width: 40%;

	padding: 30px;

	background-color: #F7F7F7;
}

.qui-sommes-nous__intervention-col--txt h2
{
	position: relative;

	margin-bottom: 30px;
	padding-bottom: 10px;

	font-weight: 600;
	font-size: 1.4em;
}

.qui-sommes-nous__intervention-col--img
{
	display: flex;

	width: 40%;

	align-items: center;
	justify-content: center;
}

.qui-sommes-nous__intervention-col--img img
{
	height: 300px;
	width: 100%;

	font-family: 'object-fit: cover;';

	object-fit: cover;
}

.row--qui-sommes-nous-intervention
{
	justify-content: space-around;
}

.row--qui-sommes-nous-logo
{
	position: relative;

	justify-content: center;
}

.row--qui-sommes-nous-logo::before
{
	position: absolute;

	height: 200%;
	width: 40%;

	top: 0;
	right: 0;

	background-image: url(/images/fond-batiment.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;

	content: '';

	z-index: -1;
}

.row--qui-sommes-nous-logo--igc:before
{
	opacity: .5;

	background-image: url(/images/igc/IGC-2.jpg);
}

.qui-sommes-nous-coordo
{
	display: flex;

	margin-bottom: 30px;

	justify-content: space-between;
}

.qui-sommes-nous-coordo__col
{
	display: flex;

	flex-direction: column;

	width: 48%;

	text-align: center;

	justify-content: center;
	align-items: center;
}

.qui-sommes-nous-coordo__col-img
{
	max-height: 120px;

	margin-bottom: 30px;

	object-fit: contain;
}

.center
{
	margin-bottom: 20px;

	text-align: center;
}

.center p
{
	margin-bottom: 0;
}

.social-top-link
{
	display: inline-block;

	height: 30px;
	width: 30px;

	margin: 0 10px;

	background-image: url(/images/facebook.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

.social-top-link:last-child
{
	background-image: url(/images/linkedin.png);
}

.top-nav__item
{
	display: flex;

	align-items: center;
}

.row--qui-sommes-nous-logo img
{
	max-width: 100%;
}

.row-nous-rejoindre
{
	position: relative;
	display: flex;

	flex-direction: column;

	width: 80%;

	margin: 20px auto;

	z-index: 0;

	align-items: flex-start;
}

.row-nous-rejoindre--fond::before
{
	position: absolute;

	height: 70%;
	width: 40%;

	top: 0;
	right: 0;

	background-image: url(/images/fond-batiment.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;

	content: '';

	z-index: -1;
}

.row-nous-rejoindre h3
{
	width: 100%;

	margin-top: 50px;

	font-weight: 600;

	text-align: center;
}

.row-nous-rejoindre__subtitle
{
	position: relative;

	margin-bottom: 15px;
	padding-right: 350px;

	font-weight: 500;
	font-style: italic;
	font-size: 1.5em;
}

.row-nous-rejoindre__subtitle:before
{
	position: absolute;

	height: 3px;
	width: 280px;

	top: 50%;
	right: 0;

	background-image: url(/images/pointille.png);
	background-position: center;
	background-size: contain;

	content: '';

	transform: translateY(-50%);
}

.row-nous-rejoindre p
{
	margin-bottom: 40px;
}

.row-nous-rejoindre--separator:before
{
	position: absolute;

	height: 60px;
	width: 100%;

	top: 0;
	left: 0;

	background-image: url(/images/sectionpoints.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 120%;

	content: '';

	z-index: -1;
}

.row-nous-rejoindre--separator
{
	padding-top: 50px;
}

.navbar-collapse
{
	flex-grow: unset;
}

.navbar > .container-fluid.container-fluid--nav
{
	justify-content: space-around;
}

.c-footer__col--logo
{
	position: relative;

	padding-bottom: 90px;
}

.c-footer__col--logo:before
{
	position: absolute;

	height: 100px;
	width: 100%;

	left: 0;
	bottom: 0;

	background-image: url(/images/frise-logos.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;

	content: '';
}

.contact-title
{
	position: relative;
	display: flex;

	flex-direction: column;

	margin-bottom: 20px;
	padding-bottom: 40px;

	align-items: center;
	justify-content: center;
}

.contact-title::before
{
	position: absolute;
	opacity: .8;

	height: 40px;
	width: 2px;

	left: 50%;
	bottom: 0;

	background-color: #777;

	content: '';

	transform: translateX(-50%);
}

.contact-title__txt
{
	margin-top: 15px;

	font-weight: 700;
	font-size: 1.3em;
}
.contact-title__logo
{
	height: 50px;
	max-width: 100%;

	object-fit: contain;
}

.contact-chiffres
{
	position: relative;

	margin-top: 30px;
	padding-top: 70px;
}

.contact-chiffres::before
{
	position: absolute;

	height: 60px;
	width: 90%;

	top: 0;
	left: 50%;

	background-image: url(/images/sectionpoints.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 120%;

	content: '';

	transform: translateX(-50%);

	z-index: -1;
}

.grid-rea
{
	display: flex;

	flex-wrap: wrap;

	margin-bottom: 50px;

	justify-content: space-around;
}

.grid-rea--3maic .grid-rea__item
{
	width: 24%;
}

.grid-rea__item
{
	position: relative;

	height: 370px;
	width: 30%;

	margin: 20px 0;
}

.grid-rea__item-img
{
	height: 100%;
	width: 100%;

	object-fit: cover;
}

.grid-rea__item-txt
{
	position: absolute;
	display: flex;
	opacity: 0;

	height: 100%;
	width: 100%;

	top: 0;
	left: 0;

	text-align: center;

	transition: .3s ease;

	align-items: center;
	justify-content: center;
}

.grid-rea__item:hover .grid-rea__item-txt
{
	opacity: 1;

	background-color: rgb(255 255 255 / 50%);
}

.grid-rea__item-title
{
	position: relative;

	padding-top: 8px;

	font-weight: 600;
}

.grid-rea__item-title:before
{
	position: absolute;

	width: 50%;

	top: 0;
	left: 50%;

	content: '';

	border-top: 2px dashed #80172B;

	transform: translateX(-50%);
}

/* ------------------ Mobile ------------------ */
@media (max-width: 1024px)
{
	.grid-rea__item
	{
		width: 48%;

		margin-top: 5px;
		margin-bottom: 5px;
	}

	.top-nav__item
	{
		text-align: center;
	}

	.a-propos,
	.a-propos-images,
	.chiffres,
	.qui-sommes-nous-coordo
	{
		flex-wrap: wrap;
	}

	.a-propos-col-img,
	.a-propos-col-txt,
	.a-propos-col-txt-left,
	.a-propos-col-txt-right,
	.a-propos-images__col,
	.qui-sommes-nous__col,
	.qui-sommes-nous__services-col,
	.qui-sommes-nous__intervention-col--txt,
	.qui-sommes-nous__intervention-col--img,
	.qui-sommes-nous-coordo__col
	{
		width: 100%;
	}

	.gic-vision
	{
		flex-direction: column;
	}

	.gic-vision p
	{
		width: 100%;
	}

	.a-propos-images__col
	{
		margin: 10px 0;
	}

	.a-propos__img
	{
		max-height: 350px;

		margin-bottom: 20px;

		object-fit: cover;
	}

	.chiffres-col
	{
		width: 48%;
	}

	.gic-valeurs__col
	{
		width: 100%;

		margin: 10px 0;
	}

	.qui-sommes-nous__title
	{
		align-items: center;
	}

	.gic-valeurs__col:nth-of-type(1)
	{
		order: 0;
	}

	.gic-valeurs__col:nth-of-type(2)
	{
		order: 2;
	}

	.gic-valeurs__col:nth-of-type(3)
	{
		order: 1;
	}

	.gic-valeurs__col:nth-of-type(4)
	{
		order: 4;
	}

	.gic-histoire
	{
		flex-wrap: wrap;
	}

	.gic-histoire__col--txt,
	.gic-histoire__col--img
	{
		width: 100%;
	}

	.gic-bureaux-etudes__container
	{
		flex-wrap: wrap;

		margin: 0;
		padding: 10px;
	}

	.gic-bureaux-etudes__col
	{
		width: 100%;

		margin-bottom: 20px;
	}

	.c-footer__col
	{
		width: 100%;
	}

	.c-footer__col
	{
		text-align: center;

		align-items: center;
	}

	.c-footer
	{
		padding: 20px;
	}

	.c-btn--red
	{
		margin: 10px 0;
	}

	.home-presentation-description
	{
		width: 100%;

		margin-left: 0;
	}

	.navbar-toggler-icon
	{
		position: relative;

		height: 30px;
		width: 30px;

		padding-left: 50px;

		background-image: url(/images/menu-button.svg);
		background-size: contain;
	}

	.top-page-block__txt
	{
		position: relative;

		width: 100%;
		max-width: none;

		left: 0;
		bottom: 0;

		transform: none;
	}

	.qui-sommes-nous-coordo__col
	{
		margin-top: 20px;
	}

	.services-col
	{
		width: 100%;

		margin-top: 10px;
		padding: 10px;
	}

	.services,
	.contact
	{
		flex-wrap: wrap;
	}

	.services-col--red::before,
	.services-col__grey-background-title::before
	{
		display: none;
	}

	.services-col__description
	{
		padding: 0;
	}

	.contact-col--info,
	.contact-col
	{
		width: 100%;
	}

	.contact-col--info
	{
		margin-bottom: 20px;
	}

	.nav-link:before,
	.dropdown-col:first-child::before
	{
		display: none;
	}

	.dropdown-menu.m-ext.show
	{
		flex-direction: column;

		min-width: unset;
	}

	.dropdown-col
	{
		width: 100%;
	}

	.gic-valeurs__col-txt-title:before
	{
		display: none;
	}

	.qui-sommes-nous__title-txt
	{
		padding-left: 0;
	}

	.qui-sommes-nous__title-txt::before
	{
		display: none;
	}

	.top-page-block
	{
		height: unset;
	}

	.top-page-block--services:before
	{
		display: none;
	}
}

/* ------------------ Mobile ------------------ */
@media (max-width: 768px)
{
	.qui-sommes-nous__title
	{
		flex-direction: column;
	}

	.qui-sommes-nous__services-col--txt
	{
		padding: 5px;
	}

	.title-page::before
	{
		display: none;
	}

	.gic-valeurs__col
	{
		flex-wrap: wrap;
	}

	.gic-valeurs__col-img
	{
		min-height: 250px;
		width: 100%;
	}

	.gic-valeurs__col-txt
	{
		width: 100%;
	}

	.gic-valeurs__col:nth-of-type(3),
	.gic-valeurs__col:nth-of-type(4)
	{
		flex-direction: column-reverse;
	}

	.chiffres-col
	{
		width: 100%;
	}

	.top-link:before,
	.top-link:last-child::after
	{
		display: none;
	}

	.title-page
	{
		margin-bottom: 0;
		padding-bottom: 0;
	}

	.top-footer-col
	{
		width: 100%;

		margin-bottom: 30px;
	}

	.top-footer
	{
		flex-wrap: wrap;
	}

	.top-nav__item
	{
		flex-wrap: wrap;

		text-align: center;
	}

	.top-nav__item a
	{
		width: 100%;

		padding: 0;
	}

	.big-number
	{
		padding-right: 10px;

		font-size: 4em;
	}

	.top-page-block__txt
	{
		margin: 10px 0;
		padding: 10px;
	}

	.custom-ul
	{
		padding-left: 0;
	}

	.row-nous-rejoindre
	{
		width: 100%;

		align-items: center;
	}

	.row-nous-rejoindre__subtitle
	{
		padding-right: 0;
		padding-bottom: 5px;
	}

	.row-nous-rejoindre__subtitle:before
	{
		position: absolute;

		height: 3px;
		width: 100%;

		top: unset;
		left: 50%;
		bottom: 0;

		background-image: url(/images/pointille.png);
		background-position: center;
		background-size: contain;

		content: '';

		transform: translateX(-50%);
	}

	.grid-rea__item
	{
		width: 100%;
	}
}


@media(max-width:1400px)
{
	.qui-sommes-nous__title-txt:before
	{
		position: absolute;

		height: 1px;
		width: 40px;

		top: 20px;
		left: 0;

		background-color: #80172B;

		content: '';
	}

	.qui-sommes-nous__title-txt
	{
		padding-left: 50px;
	}

	.row--qui-sommes-nous
	{
		justify-content: space-between;
	}

	.row--qui-sommes-nous-logo
	{
		justify-content: center;
	}
}
