/*
Theme Name: WP Bootstrap
Theme URI: https://www.tutowp.fr
Author: TutoWP
Author URI: https://www.tutowp.fr
Description: Thème WordPress basé sur Bootstrap
Version: 1.0
*/

@font-face {
  font-family: 'Spoof Regular';
  src: url("fonts/Spoof/Spoof-Regular.otf") format("otf"), url("fonts/Spoof/Spoof-Regular.woff") format("woff"), url("fonts/Spoof/Spoof-Regular.woff2") format("woff2"), url("fonts/Spoof/Spoof-Regular.ttf") format("ttf");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'Spoof Regular Slanted';
  src: url("fonts/Spoof/Spoof-RegularSlanted.otf") format("otf"), url("fonts/Spoof/Spoof-RegularSlanted.woff") format("woff"), url("fonts/Spoof/Spoof-RegularSlanted.woff2") format("woff2"), url("fonts/Spoof/Spoof-RegularSlanted.ttf") format("ttf");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'Spoof Bold';
  src: url("fonts/Spoof/Spoof-Bold.otf") format("otf"), url("fonts/Spoof/Spoof-Bold.woff") format("woff"), url("fonts/Spoof/Spoof-Bold.woff2") format("woff2"), url("fonts/Spoof/Spoof-Bold.ttf") format("ttf");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'Spoof Bold Slanted';
  src: url("fonts/Spoof/Spoof-BoldSlanted.otf") format("otf"), url("fonts/Spoof/Spoof-BoldSlanted.woff") format("woff"), url("fonts/Spoof/Spoof-BoldSlanted.woff2") format("woff2"), url("fonts/Spoof/Spoof-BoldSlanted.ttf") format("ttf");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'Helvetica Regular';
  src: url("fonts/Helvetica/Helvetica.woff") format("woff"), url("fonts/Helvetica/Helvetica.woff2") format("woff2"), url("fonts/Helvetica/Helvetica.ttf") format("ttf");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'Navigation';
  src: url("fonts/Navigation/Flaticon.woff") format("woff"), url("fonts/Navigation/Flaticon.eot") format("eot"), url("fonts/Navigation/Flaticon.ttf") format("ttf");
  font-weight: normal;
  font-style: normal; }

.exposant-type {
	font-family: "Helvetica Regular", helvetica-regular, sans-serif !important; }

html {
	scroll-behavior: smooth;
	height: 100%;
	font-size: 100%;
    overflow: -moz-scrollbars-vertical; 
    overflow-y: scroll;
 }

body {
	font-family: 'Spoof Regular', Spoof Regular, sans-serif;
	-webkit-font-smoothing: antialiased;
	height: 100%;
	border-color: #000000;
	line-height: 1.20;
}

.fadeOut {
	opacity: 0!important;
}

.fadeIn {
	opacity: 1!important;
	transition: opacity 1s; 
}

/* Dark-mode thème */
body.dark-mode {
	background-color: #000000;
	color: #ffffff;
	border-color: #ffffff;
	font-family: 'Spoof Regular', Spoof Regular, sans-serif;
	-webkit-font-smoothing: antialiased;
	height: 100%;
}
body.dark-mode a {
	color: #ffffff;
	/*filter: grayscale(20%);*/
}
body.dark-mode .set-box-shadow{
	background-color: #000000;
	-webkit-box-shadow: 0rem 0.25rem 0.25rem rgba(0,0,0,1);
	-moz-box-shadow: 0rem 0.25rem 0.25rem rgba(0,0,0,1);
	box-shadow: 0rem 0.25rem 0.25rem rgba(0,0,0,1);
}

body.dark-mode table {
	background-color: #000000;
	color: #ffffff;
	filter: grayscale(20%);
	border-color: #ffffff;
}
body.dark-mode captionTable {
	color: #ffffff!important;
}
body.dark-mode .pointer {
	cursor: pointer;
	color: #ffffff;
}
body.dark-mode .colorSvgImg {
	background-color: #ffffff;
}
body.dark-mode .card {
	background-color: #000000;
}
body.dark-mode span.logo432 {
	display: block;
	width: 101.421px;
	height: 200px;
	background: url(includes/Logo_4_32_white.svg);
}
body.dark-mode span.logoMobile432 {
	display: block;
	width: 110px;
	height: 55.8px;
	background: url(includes/Logo_4_32_mobile_white.svg);
}
body.dark-mode span.logoContrast {
	display: block;
	width: 70px;
	height: 79px;
	background: url(includes/logo-contraste-white.svg);
}
body.dark-mode span.logoMobileContrast:before{
    font-family: 'Spoof Regular';
    display: inline-block;
    content: "\25D1";
	color: white;
}
body.dark-mode .hovereffect div.icon-links  {
	float: left;
	color: white!important;
	background-color: black!important;
	visibility: visible;
	-webkit-transform: translate3d(0,100%,0);
	transform: translate3d(0,100%,0);
	margin-bottom: -1rem;
}
body.dark-mode .hovereffect:hover .overlay,
body.dark-mode .hovereffect:hover div.icon-links  {
	-webkit-transform: translate3d(0,0,0);
	transform: translate3d(0,0,0);
	color: white!important;
	background-color: black!important;
}
body.dark-mode .slider:before {
    background-color: white;
    border: 0.1rem solid rgba(0,0,0,.9);
}
body.dark-mode input[type=radio].with-font + label:before {
    color: white;
}
body.dark-mode input[type=radio].with-font:checked + label:before {
    color: white;
}
body.dark-mode .arrow-to-bottom{
	background: url(includes/arrow-to-bottom-white.svg);
}
body.dark-mode .sticky-filter {
	background-color: #000000;
	top: 80px;
}
body.dark-mode .rowFilterSwitch {
    background-color: #000000;
}
body.dark-mode .navbar {
    background-color: black!important;
	color: white;
}
body.dark-mode .typoCross:before {
	color: white;
}
body.dark-mode .figure-caption {
	color: white;
}

body.dark-mode .carousel-control-prev:hover {
	cursor: url(includes/left-chevron-white.png), auto;
}
body.dark-mode .carousel-control-next:hover {
	cursor: url(includes/right-chevron-white.png), auto;
}







.container-fluid {
	margin-right: auto;
	margin-left: auto;
}
.row {
	margin-right: -15px;
	margin-left: -15px;
}


/* Logo 432 pour menu */
.logo432{
	display: block;
	width: 101px;
	height: 199px;
	background: url(includes/Logo_4_32_black.svg);
	margin-top: 2rem;
}
/* Logo changement de thème */
.logoContrast{
	display: block;
	width: 70px;
	height: 79px;
	background: url(includes/logo-contraste-black.svg);
	margin-bottom: 1.5rem;
}
.logoMobileContrast:before{
    font-family: 'Spoof Regular';
    display: inline-block;
    content: "\25D1";
	font-size: 1.5rem!important;
}

/* Logo 432 pour menu mobile */
.logoMobile432 {
	display: block;
	width: 110px;
	height: 55.8px;
	background: url(includes/Logo_4_32_mobile_black.svg);
}

/* Logo arrow-to-bottom */
.arrow-to-bottom{
	display: block;
	width: 1.35rem;
	height: 1.35rem;
	background: url(includes/arrow-to-bottom-black.svg);
}
.glyph-1x {
	width: 1rem;
	height: 1rem;
	vertical-align: middle;
}
/* Logo right-chevron */
.right-chevron{
	display: block;
	width: 1.75rem;
	height: 1.75rem;
	background: url(includes/right-chevron-black.svg);
}

.centre{
  text-align: center;
}

.flexCenter{
	display: flex;
	align-items: center;
	justify-content: center;
}

.bold {
	font-family: 'Spoof Bold', Spoof Bold, sans-serif;
}



h1 {
	font-size: 5rem!important;
}

h2 {
	font-size: 4rem!important;
}

h3 {
	font-size: 3rem!important;
	margin-bottom: 1.25rem!important;
}

h4 {
	font-size: 2rem!important;
}

h5 {
	font-size: 1.75rem!important;
	/* A REVOIR en REM */
    margin-bottom: 15px!important;
    margin-top: 10px!important;
}

h6 {
	font-size: 0.75rem!important;
}

p {
	font-size: 1.77rem!important;
}

table th p,
table tr p,
table caption span {
	font-size: 0.575rem!important;
	margin: 0;
	padding: 0;
}

table td, table th {
	font-weight: inherit;
    padding-top: .5rem!important;
    padding-bottom: .5rem!important;
    padding-left: 0!important;
    padding-right: 1.4rem!important;
    vertical-align: top;
	border-bottom: 2px solid;
}

table caption {
    padding-top: .35rem!important;
    padding-bottom: 0;
}

table tr {
	border-bottom: 2px solid;
}

hr {
	margin: 0;
	padding: 0;
	border-top: 2px solid;
}

.pSmall {
	font-size: 0.85rem!important;
}

.equipePrenomNom{
	font-size: 1.5rem!important;
	margin-top: 1rem;
	margin-bottom: 1rem;
}
.equipeRole{
	margin: 0rem 0rem;
}
.equipeRole p {
	margin-top: 0;
    margin-bottom: 0.3rem;
	font-size: 0.85rem!important;
}

.figure {
	margin-bottom: 0px;
}

.figure-caption {
    font-size: 40%;
	color: black;
	margin-top: 5px;
}




h3 > i {
	font-size: 1.5rem!important;
}

a:link,
a:visited,
a:hover,
a:active {
	text-decoration: none;
	color: black;
}

/*
@media (min-width: 768px) {
	.display-4 {
	  font-size: 3rem;
	}
}
*/

.rowBook{
	border-top: 2px solid;
	margin-top: 6.5rem;
}

.rowPhotosAgence {
	margin-top: 6.5rem;
}

.rowPresentationAgence {
	margin-top: 5px;
}

.rowEquipeAgence {
	margin-top: 5.25rem;
	margin-bottom: 2.5rem;
}

.rowReferences {
	margin-top: 3.6rem;
}

.rowReferences p {
	font-size: 1.3rem!important; 
	margin-bottom: 0.75rem;
	margin-top: 0.5rem;
}


.equipeAccordion {
	margin-bottom: 4rem;
}

/* Navbar fixed right*/
/*.bg-dark {*/
.navbar {
    background-color: white!important;
	color: black;
}
.navbar-white {
    background-color: white!important;
	color: black;
}
.navbar-dark {
    background-color: black!important;
	color: white;
}
.navbar.fixed-right {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 1030;
	bottom: 0;
	/* width: 8.25rem; */
	width: 20%;
	flex-flow: column nowrap;
	align-items: flex-start;
	padding: 0;
}
.navbar.fixed-right .navbar-collapse {
	flex-grow: 0;
	flex-direction: column;
	width: 100%;
}
.navbar.fixed-right .navbar-collapse .navbar-nav {
	flex-direction: column;
	width: 100%;
}
.navbar.fixed-right .navbar-collapse .navbar-nav .nav-item {
	width: 100%;
}
.navbar.fixed-right .navbar-collapse .navbar-nav .nav-item .dropdown-menu {
	top: 0;
}

.navbar.fixed-right {
	left: auto;
}
.navbar.fixed-right .navbar-nav .nav-item .dropdown-toggle:after {
	border-top: 0.3em solid transparent;
	border-left: none;
	border-bottom: 0.3em solid transparent;
	border-right: 0.3em solid;
	vertical-align: baseline;
}
.navbar.fixed-right .navbar-nav .nav-item .dropdown-menu {
	left: auto;
	right: 100%;
}
/* Fin de navbar */

.cross-margin{
	margin-right: 3.5rem!important;
}


.rotate {
	transform: rotate(-90deg);
	-webkit-transform: rotate(-90deg);
	-moz-transform: rotate(-90deg);
	-ms-transform: rotate(-90deg);
	-o-transform: rotate(-90deg);
	filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
}
.rotate-45 {
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
}

.card-img-right {
	height: 100%;
	border-radius: 0 0.1875rem 0.1875rem 0;
}

.flex-auto {
	-ms-flex: 0 0 auto;
	flex: 0 0 auto;
}

.h-250 { height: 250rem; }
	@media (min-width: 768px) {
	.h-md-250 { height: 250rem; }
}

.pointer {
	cursor: pointer;
	color: #000000;
}


.rowEquipe {
	/*border-top: 2px solid;*/
}

.rowEquipe h5 {
	margin-top: 0.75rem;
	margin-bottom: 0.75rem;
}

.rowEquipe:last-child {
	/* border-bottom: 0.0625rem solid rgba(0,0,0,1); */
}
.rowDetailEquipeAgence{
	border-bottom: 2px solid;
}

.projetListe hr {
	border-top: 3px solid;
}
.projetListe h4 {
	margin: 0.5rem 0;
}



/*
.rowAtelierProjetListe{
	border-top: 2px solid;
	padding: 1rem 0rem;
}
a .rowAtelierProjetListe:last-child{
	border-bottom: 2px solid;
}
*/

[data-toggle="collapse"][aria-expanded="true"] .js-rotate-if-collapsed {
	-webkit-transform: rotate(90deg);
	-moz-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	-o-transform: rotate(90deg);
	transform: rotate(90deg);
}

[data-toggle="collapse"][aria-expanded="true"] .js-rotate-if-collapsed .leftArrow:before {
	-webkit-transform: rotate(90deg);
	-moz-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	-o-transform: rotate(90deg);
	transform: rotate(90deg);
}



.leftArrow:before {
    font-family: 'Spoof Regular';
    display: inline-block;
	content: "\2192";
	color: black;
}


caption {
	text-align: right;
}

.tableReference {
	/* border-bottom: 2px solid; */
}






.multi-line-truncate {
   display: -webkit-box;
   -webkit-line-clamp: 7;
   -webkit-box-orient: vertical;
   overflow: hidden;
}

a {
	text-decoration: none;
}

/*
.rowContact > div > p {
	font-size: 2rem;
}
*/
.rowContact {
	padding: 1.25rem 0rem;
	/*border-top: 2px solid;*/
}

.contactLink {
	font-size: 25px!important;
	margin-bottom: 2rem;
}



.rowOptionFilterProjets {
	margin-top: 0.6rem;
	margin-bottom: 0.5rem;
}




.hidden {
	display: none;
}



input[type=radio].with-font {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}
input[type=radio].with-font + label:before {
    font-family: FontAwesome;
    display: inline-block;
    content: "\f111";
    /* letter-spacing: 10px; */
    /*font-size: 1.2em;*/
    color: black;
}
input[type=radio].with-font:checked + label:before {
    font-family: 'Font Awesome\ 5 Free';
    display: inline-block;
    content: "\f111";
	font-weight: 900;
    /* letter-spacing: 10px; */
    /*font-size: 1.2em;*/
    color: black;
}
input[type=radio].with-font + label {
    margin: 0;
	padding-right: 0.5rem;
}

.typoCross:before {
    font-family: 'Navigation';
    display: inline-block;
	content: "\F10E";
	color: black;
}
.typoCross45:before {
    font-family: 'Navigation';
    display: inline-block;
	content: "\F10E";
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
}
.typoBold:before {
	font-weight: 900;
}

.typoCrossFilter:before {
    font-family: 'Spoof Regular';
    display: inline-block;
	content: "\2573";
}
.typoCross45Filter:before {
    font-family: 'Spoof Regular';
    display: inline-block;
	content: "\2573";
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
}
/*
.crossTypo:before {
    font-family: 'Spoof Regular';
    display: inline-block;
	content: "\2573";
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
}
*/


/*


.custom-control-input:checked ~ .custom-control-label::before {
	color: #fff;
	border-color: black;
	background-color: black;
}
.custom-control input ~ label {
	font-size: 0.75rem!important;
}
.form-check-inline .form-check-input {
    margin-right: 0;
}
.custom-control {
    padding-left: 0;
}
*/


/* DEV en cours de validation */
.page-wrap {
	min-height: 100vh!important;
}
.page-mobile {
	min-height: 60vh!important;
}


*/
.site-footer, .page-wrap:after {
	/*height: 142px;*/
	/*margin-top: 6.25rem;*/
}


.set-box-shadow {
	background: white;
	/*
	-webkit-box-shadow: 0rem 0.25rem 0.25rem rgba(255,255,255,1);
	-moz-box-shadow: 0rem 0.25rem 0.25rem rgba(255,255,255,1);
	box-shadow: 0rem 0.25rem 0.25rem rgba(255,255,255,1);
	*/
}

.detailProjet{
	z-index: 1030;
}


/* Effet visuel atelier des images projets */
.carrousel-projets img,
.carrousel-projets-xs img {
	filter: grayscale(1);
	-webkit-filter: grayscale(1);
}
.carrousel-projets:hover img {
	filter: grayscale(0);
	-webkit-filter: grayscale(0);
}

.hovereffect {
    width: 100%;
    height: 100%;
    overflow: hidden;
    position: relative;
    text-align: center;
    /* cursor: default; */
}
.hovereffect .overlay {
    width: 100%;
    position: absolute;
    overflow: hidden;
    left: 0;
	top: auto;
	bottom: 0;
	padding: 1em;
	-webkit-transition: -webkit-transform 0.35s;
	transition: transform 0.35s;
	-webkit-transform: translate3d(0,100%,0);
	transform: translate3d(0,100%,0);
	visibility: hidden;

}
.hovereffect img {
    display: block;
    position: relative;
	-webkit-transition: -webkit-transform 0.35s;
	transition: transform 0.35s;
}
.hovereffect:hover img {
-webkit-transform: translate3d(0,-10%,0);
	transform: translate3d(0,-10%,0);
}
.hovereffect div.icon-links  {
	float: left;
	color: black;
	background-color: white;
	visibility: visible;
	-webkit-transform: translate3d(0,100%,0);
	transform: translate3d(0,100%,0);
	margin-bottom: -1rem;
}
.hovereffect:hover .overlay,
.hovereffect:hover div.icon-links  {
	-webkit-transform: translate3d(0,0,0);
	transform: translate3d(0,0,0);
}

.carousel-control-next, 
.carousel-control-prev {
    width: 42%;
}
.carousel-control-prev:hover {
	/*cursor: url(includes/prev-blanc.png), auto;*/
	/*cursor: url(includes/left-arrow.svg), auto;*/
	cursor: url(includes/left-chevron-black.png), auto;
}
.carousel-control-next:hover {
	/*cursor: url(includes/next-blanc.png), auto;*/
	/*cursor: url(includes/right-arrow.svg), auto;*/
	cursor: url(includes/right-chevron-black.png), auto;
}

.img-crop {
	/* height: 12rem; */
}

.img-fit-cover{
	/*
	height: 100%; 
	object-fit: cover;
	*/
}


/* Page de visu des projets */
.cardInfoProjet {
	padding-top: 0.75rem;
	border: none;
	z-index: 9999;
	border-radius: 0;
	/*position: absolute;*/
}
.cardInfoProjet h4 {
	margin: 0.4rem 0rem;
	font-size: 2.3rem!important;
}


ul.infoProjet {
	list-style: none;
	padding-left: 0rem;
	border-top: 2px solid;
	margin-top: 0.3rem;
	margin-bottom: 0.5rem;
}
li.infoProjet {
	border-bottom: 2px solid;
	font-size: 0.75rem!important;
    padding: 0.2rem 0;
}

.projet-description ul,
.projet-description p {
	font-size: 1rem!important;
}

.projet-description {
	margin-bottom: 16rem!important;
}

.redirectProjet {
	font-size: 1.3rem!important;
}

.rowLinkReturnProjets {
	margin-top: 3.5rem;
}


ul.rowListeProjet {
	list-style: none;
	padding-left: 0rem;
	margin-top: 1.75rem;
	margin-bottom: 0.5rem;
}
li.rowListeProjet {
	font-size: 0.75rem!important;
}

.rowListeProjet hr {
	border-top: 3px solid;
}

.arrowScrollInfoProjet p {
	font-size: 1.3rem!important;
	margin-bottom: 0;
}

/* Fin de page de visu des projets */




/*
.carousel-indicators>li{
    background-color:red;
}
.carousel-indicators>li.active{
    background-color:blue;   
}
*/






.titleBig {
	font-size: 4.5rem!important;
	margin-bottom: 0rem;
}

.titleSmall {
	font-size: 3rem!important;
}



/* Style du bouton switch liste/galerie */
.switchProjetViewTitle,
.switchProjetViewAlign {
	font-size: 0.75rem!important;
	vertical-align: middle;
}

.slider:before {
    position: absolute;
    content: "";
    height: 0.85rem;
    width: 0.85rem;
    background-color: white;
    -webkit-transition: .4s;
    transition: .4s;
    background-color: black;
    /* border: 3px solid white; */
    border: 0.1rem solid white;
    /* left: -3px; */
    left: -0.1rem;
    /* top: -3px; */
    top: -0.1rem;
}
.switch {
    position: relative;
    display: inline-block;
    width: 1.3rem;
    height: 0.75rem;
    margin-bottom: 0px;
}
.switch input {
	opacity: 0;
	width: 0;
	height: 0;
}
.switch-disabled {
	pointer-events: none;
}

.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: transparent;
    -webkit-transition: .4s;
    transition: .4s;
    /* border: 2px solid; */
    border: 0.0625rem solid;
}
input:checked + .slider {
	background-color: inherit;
}
input:focus + .slider {
	box-shadow: inherit;
}
input:checked + .slider:before {
	-webkit-transform: translateX(0.55rem);
	-ms-transform: translateX(0.55rem);
	transform: translateX(0.55rem);
}
.slider.round {
	border-radius: 34px;
}
.slider.round:before {
	border-radius: 100%;
}
/* Fin du style du bouton switch liste/galerie */



#actualiteResize .actualiteResizeBtn a.collapsed:after {
	margin-top: 0.8rem!important;
	content: '↓ Lire la suite';
}
#actualiteResize .actualiteResizeBtn a:not(.collapsed):after {
	margin-top: 0.8rem!important;
	content: '↑ Fermer';
}
/* #module #collapseExample.collapse:not(.show) { */
#actualiteResize .textToResize.collapse:not(.show) {
	display: block;
	/* height = lineheight * no of lines to display */
	height: calc(1.2em * 8);
	/* height: 4.5em; */
	overflow: hidden;
}
/* #module #collapseExample.collapsing { */
#actualiteResize .textToResize.collapsing {
	/* height: 4.5em; */
	height: calc(1.2em * 8);
}
#actualiteResize .textToResize {
	margin-top: 1rem!important;
}
#actualiteResize .actualiteResizeBtn {
	border-top: 1px solid;
	font-size: 0.75rem!important;
}


#actualiteResizeXS .actualiteResizeBtnXS a.collapsed:after {
	margin-top: 0.8rem!important;
	content: '↓ Lire la suite';
}

#actualiteResizeXS .actualiteResizeBtnXS a:not(.collapsed):after {
	margin-top: 1rem!important;
	content: '↑ Fermer';
}

/* #module #collapseExample.collapse:not(.show) { */
#actualiteResizeXS .textToResize.collapse:not(.show) {
	display: block;
	/* height = lineheight * no of lines to display */
	height: calc(1.2em * 8);
	/* height: 4.5em; */
	overflow: hidden;
}
/* #module #collapseExample.collapsing { */
#actualiteResizeXS .textToResize.collapsing {
	/* height: 4.5em; */
	height: calc(1.2em * 8);
}
#actualiteResizeXS .textToResize {
	margin-top: 1rem!important;
}
#actualiteResizeXS .actualiteResizeBtnXS {
	border-top: 1px solid;
	font-size: 0.75rem!important;
}
#actualiteResizeXS p {
	margin-top: 0.8rem!important;
}
/*
#actualiteResizeXS .textToResize span {
	margin-top: 1rem!important;
}
*/







.rowActualite {
	margin-top: 2.5rem;
}
.rowActualite h5 {
	margin: 0!important;
	line-height: 1.1;
}
.rowActualites {
	margin-top: 2.5rem;
}



.navbar-toggler>.close,
.navbar-close>.close {
    display:inline;
}
.navbar-toggler.collapsed>.close, .navbar-toggler:not(.collapsed)>.navbar-toggler-icon {
    display:none;
}
.navbar-toggler span,
.navbar-close span {
	color: white;
}
.navbar-toggler,
.navbar-close {
    font-size: 2.5rem;
}

button:focus {
    outline: 1px dotted;
}

.ordreBook {
	margin-top: 3rem!important;
}
.ordreBook .p-2 {
	padding-left: 0px!important; margin-top: 1.25rem!important;
}
.ordreGalerieAgence {
	margin-bottom: 3rem!important;
}


#carInfoProjet {
	margin: 0 -15px;
    padding: 0 15px;
}


/*
.sticky{
	position: -webkit-sticky;
	position: sticky;
	top: 60px;
	z-index: 1020;
}
*/

.sticky-filter {
	position: -webkit-sticky;
	position: sticky;
	top: 80px;
	z-index: 1200;
	padding-bottom: 0.5rem!important;
	padding-top: 0.5rem!important;
	background-color: white;
}

.img-xs-padding{
	margin-bottom: 1.25rem!important;
}




/***************************************************
 * Generated by SVG Artista on 7/20/2020, 9:34:48 AM
 * MIT license (https://opensource.org/licenses/MIT)
 * W. https://svgartista.net
 **************************************************/

svg .svg-elem-1 {
  stroke-dashoffset: 5671.423828125px;
  stroke-dasharray: 5671.423828125px;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0s;
          transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0s;
}

svg.active .svg-elem-1 {
  stroke-dashoffset: 0;
}

svg .svg-elem-2 {
  stroke-dashoffset: 5375.33740234375px;
  stroke-dasharray: 5375.33740234375px;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.12s;
          transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.12s;
}

svg.active .svg-elem-2 {
  stroke-dashoffset: 0;
}

.modal-backdrop {
	background-color: white;
	opacity:1!important;
}
.modal-open .modal {
    overflow: hidden;
}
/*
.modal-dialog {
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
}

.modal-content {
  height: auto;
  min-height: 100%;
  border-radius: 0;
}
*/

.modal-dialog {
  width: 100%;
  max-width: 100%;
  height: 100%;
  max-height: 100%;
  padding: 0;
  margin: 0;
}

.modal-content {
  height: 100%;
  border-radius: 0;
}

.carousel img {
	width: auto;
	height: auto;
	margin: auto;
	max-width: 1200px!important;
	max-height: 800px!important;
	/*
	max-width: 1200px!important;
	max-height: 800px!important;
	margin: auto;
	*/
}
.figure {
    display: block;
}

.svg-size {
	width: auto;
	height: auto;
	max-width: 1200px!important;
	max-height: 800px!important;
	margin: auto;
}

.equipePhoto {
	width: auto;
	height: auto;
	max-width: 1200px!important;
	max-height: 800px!important;
	margin: auto;
	margin-bottom: 2rem!important;
}

.carousel-actualites img {
	width: 100%;
}

/***********/
/* Cookie bar for RGPD */
.cn-button.bootstrap {
	color: #212529;
    background-color: #f8f9fa;
    border: 1px solid #f8f9fa;
}
.cn-button.bootstrap:hover {
    color: #212529;
    background-color: #e2e6ea;
    border-color: 1px solid #dae0e5;
}

.contactLink,
.logoMobileContrast {
	margin-bottom: 2rem;
}

.sticky-top {
	position: -webkit-sticky;
	position: sticky;
	top: 0px;
	z-index: 1030;
}


.figure-caption{ 
	text-align: center!important;
}





#animate {
    position: fixed;
    /*top: 0;
    left: 0;*/
    width: 100%;
    height: 100%;
    z-index: 999999;
    pointer-events: none;
    background: black;
    animation-duration: 800ms;
    animation-timing-function: ease-in-out;
}

.animateOnde{
	top: 10%;
	position: relative;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}

#fader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 999990;
    pointer-events: none;
    background: white;
    animation-duration: 300ms;
    animation-timing-function: ease-in-out;
}

@keyframes fade-out {
    from { opacity: 1 }
      to { opacity: 0 }
}

@keyframes fade-in {
    from { opacity: 0 }
      to { opacity: 1 }
}

#fader.fade-out {
    opacity: 0;
    animation-name: fade-out;
}

#fader.fade-in {
    opacity: 1;
    animation-name: fade-in;
}

#animate.fade-out {
    opacity: 0;
    animation-name: fade-out;
}

#animate.fade-in {
    opacity: 1;
    animation-name: fade-in;
}





@media (max-width: 699.98px) and (orientation: landscape) {
	.contactLink,
	.logoMobileContrast {
		margin-bottom: 1rem;
	}
	.sticky-filter {
		top: 0px;
	}
}

@media (max-width: 575.98px) {
	#ordreTitre {
		order: 1;
	}
	#ordrePresentation {
		order: 3;
	}
	#ordreBook {
		order: 4;
	}
	#ordreGalerieAgence {
		order: 2;
	}
	#ordreEquipeTitre {
		order: 5;
	}
	#ordreEquipePhoto {
		order: 6;
	}
	#ordreEquipe {
		order: 7;
	}
	footer p {
		margin-bottom: 0;
	}
	.pFooter {
		font-size: 1.25rem!important;
	}
	.rowActualites {
		margin-top: 0;
	}
	.min-vh-100 {
		min-height: 0px!important;
	}
	.switchProjetViewAlign,
	.switchProjetViewTitle	{
		font-size: 1rem!important;
	}
	.slider:before {
		height: 1.1rem;
		width: 1.1rem;
		border: 0.1rem solid white;
		left: -0.15rem;
		top: -0.15rem;
	}
	.slider {
		border: 0.1rem solid;
	}
	.switch {
		width: 1.55rem;
		height: 1rem;
	}
	/* #module #collapseExample.collapse:not(.show) { */
	#actualiteResize .textToResize.collapse:not(.show) {
		display: block;
		/* height = lineheight * no of lines to display */
		height: calc(1.2em * 8);
		/* height: 4.5em; */
		overflow: hidden;
	}

	/* #module #collapseExample.collapsing { */
	#actualiteResize .textToResize.collapsing {
		/* height: 4.5em; */
		height: calc(1.2em * 8);
	}
	p {
		font-size: 1.25rem!important;
	}
	.ordreGalerieAgence {
		margin-bottom: 1.75rem!important;
	}	
	.ordreBook {
		margin-top: 1rem!important;
	}
	.ordreBook .p-2 {
		padding-left: inherit!important;
		margin-top: inherit!important;
	}
	.ordreBook .p-2 p {
		font-size: 1rem!important;
		line-height: 1;
	}
	.ordreBook .p-2 span {
		font-size: 1rem!important;
		line-height: 1;
	}
	.arrow-to-bottom{
		width: 1.8rem!important;
		height: 1.8rem!important;
	}
	table tr .arrow-to-bottom{
		width: 1.5rem!important;
		height: 1.5rem!important;
	}
	.equipePrenomNom {
		font-size: 1.25rem!important;
		margin-top: 0.5rem;
		margin-bottom: 0.5rem;
	}
	.pSmall {
		font-size: 0.75rem!important;
	}
	.equipeRole p {
		margin-top: 0;
		margin-bottom: 0.5rem;
		font-size: 1rem!important;
	}
	.rowFilterSwitch{
		margin-bottom: 0.5rem!important;
		margin-top: 0.5rem!important;
		background-color: white;
	}
	.rowReferences p {
		font-size: 1.75rem!important; 
		margin-bottom: 0.75rem;
		margin-top: 0.5rem;
	}
	table th p,
	table tr p,
	table caption span {
		font-size: 1rem!important;
		margin: 0;
		padding: 0;
	}
	.col-xs-caroussel {
		padding-left: 0; 
		padding-right: 0;
	}
	.arrowScrollInfoProjet {
		margin: 0.5rem 0;
	}	
	.arrowScrollInfoProjet p {
		font-size: 1.5rem!important;
	}
	.cardInfoProjet {
		padding-top: 1.5rem;
	}
	.cardInfoProjet h4 {
		margin: 0;
		font-size: 2rem!important;
	}
	.rowListeProjet .cardInfoProjet h4 {
		margin-top: 0.5rem!important;
		margin-bottom: 0.5rem!important;
	}
	li.infoProjet {
		font-size: 1rem!important;
		padding: 0.4rem 0;
	}
	ul.infoProjet {
		margin-top: 0;
	}
	.projet-description {
		margin-top: 1.5rem;
		margin-bottom: 1.5rem!important;
	}
	.rowLinkReturnProjets {
		margin-top: 0;
	}
	.redirectProjet {
		font-size: 1.3rem!important;
		padding-left: 0!important;
	}
	.rowListeProjet hr {
		border-top: 2px solid;
	}
	.rowListeProjet h4 {
		margin-top: 0.5rem!important;
		margin-bottom: 0.5rem!important;
	}
	.rowActualite .actualiteTitre {
		margin-bottom: 15px!important;
	}
	.figure-caption{
		text-align: left!important;
	}
	.carousel img {
		width: 100%;
		height: auto;
	}
}

/* Small devices (landscape phones, 576px and up)*/
@media (min-width: 576px) {
	html {
		font-size: 100%;
	}
	.container-fluid {
		padding-right: 96px;
	}
	.navbar.fixed-right {
		width: 96px;
	}
	.pFooter {
		font-size: 1rem!important;
	}
	.logo432{
		width: 40px;
		height: 78.88px;
	}
	.logoContrast{
		width: 43.75px;
		height: 49.36px;
	}
	body.dark-mode span.logo432 {
		width: 40px;
		height: 78.88px;
	}
	body.dark-mode span.logoContrast {
		width: 43.75px;
		height: 49.36px;
	}
	.contactLink {
		font-size: 15px!important;
	}
	.titleBig {
		font-size: 4.5rem!important;
	}
	.titleSmall {
		font-size: 3.5rem!important;
	}
	.fixed-top {
		position: fixed;
		top: 0;
		right: 96px;
		left: 15px;
		z-index: 1030;
	}
	.min-vh-100 {
		min-height: 0px!important;
	}
	/* #module #collapseExample.collapse:not(.show) { */
	#actualiteResize .textToResize.collapse:not(.show) {
		display: block;
		/* height = lineheight * no of lines to display */
		height: calc(1.2em * 8);
		/* height: 4.5em; */
		overflow: hidden;
	}

	/* #module #collapseExample.collapsing { */
	#actualiteResize .textToResize.collapsing {
		/* height: 4.5em; */
		height: calc(1.2em * 8);
	}
	.arrow-to-bottom{
		width: 1.35rem!important;
		height: 1.35rem!important;
	}	
	.ordreBook .p-2 p {
		font-size: 0.75rem!important;
		line-height: 1;
	}
	.rowActualite .actualiteTitre {
		margin-bottom: 15px!important;
	}
	/*
	.carousel img {
		width: auto;
		height: auto;
		margin: auto;
	}
	*/
}

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {
	html {
		font-size: 100%;
	}
	.container-fluid {
		padding-right: 143px;
	}
	.navbar.fixed-right {
		width: 143px;
	}
	.logo432{
		width: 40px;
		height: 78.88px;
	}
	.logoContrast{
		width: 43.75px;
		height: 49.36px;
	}
	/*
	.logo432{
		width: 101px;
		height: 199px;
	}
	.logoContrast{
		width: 70px;
		height: 79px;
	}
	*/
	body.dark-mode span.logo432 {
		width: 40px;
		height: 78.88px;
	}
	body.dark-mode span.logoContrast {
		width: 43.75px;
		height: 49.36px;
	}
	.contactLink {
		font-size: 25px!important;
	}
	.titleBig {
		font-size: 4.5rem!important;
	}
	.titleSmall {
		font-size: 3.5rem!important;
	}
	/*
	.titleBig {
		font-size: 6.5rem!important;
		margin-bottom: 0rem;
	}
	.titleSmall {
		font-size: 4rem!important;
	}
	*/
	.fixed-top {
		position: fixed;
		top: 0;
		right: 143px;
		/* left: 88px; */
		z-index: 1030;
	}
	.min-vh-100 {
		min-height: 100vh!important;
	}
	/* #module #collapseExample.collapse:not(.show) { */
	#actualiteResize .textToResize.collapse:not(.show) {
		display: block;
		/* height = lineheight * no of lines to display */
		height: calc(1.2em * 5);
		/* height: 4.5em; */
		overflow: hidden;
	}

	/* #module #collapseExample.collapsing { */
	#actualiteResize .textToResize.collapsing {
		/* height: 4.5em; */
		height: calc(1.2em * 5);
	}
	/*
	.carousel img {
		width: 100%;
		height: auto;
	}
	*/
}


/* 850rem and up */
@media (min-width: 850px) {
	/* #module #collapseExample.collapse:not(.show) { */
	#actualiteResize .textToResize.collapse:not(.show) {
	  display: block;
	  /* height = lineheight * no of lines to display */
	  height: calc(1.2em * 6);
	  /* height: 4.5em; */
	  overflow: hidden;
	}

	/* #module #collapseExample.collapsing { */
	#actualiteResize .textToResize.collapsing {
	  /* height: 4.5em; */
	  height: calc(1.2em * 6);
	}
	/*
	.carousel img {
		width: 50%;
		height: auto;
	}
	*/
}


/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {
	html {
		font-size: 120%;
	}
	.container-fluid {
		padding-right: 146px;
		padding-left: 88px;
	}
	.navbar.fixed-right {
		width: 146px;
	}
	.logo432{
		width: 101px;
		height: 199px;
	}
	.logoContrast{
		width: 70px;
		height: 79px;
	}
	body.dark-mode span.logo432 {
		width: 101px;
		height: 199px;
	}
	body.dark-mode span.logoContrast {
		width: 70px;
		height: 79px;
	}
	.contactLink {
		font-size: 25px!important;
	}
	.titleBig {
		font-size: 6.5rem!important;
		margin-bottom: 0rem;
	}
	.titleSmall {
		font-size: 4rem!important;
	}
	.fixed-top {
		position: fixed;
		top: 0;
		right: 146px;
		left: 88px;
		z-index: 1030;
	}
	/* #module #collapseExample.collapse:not(.show) { */
	#actualiteResize .textToResize.collapse:not(.show) {
	  display: block;
	  /* height = lineheight * no of lines to display */
	  height: calc(1.2em * 5);
	  /* height: 4.5em; */
	  overflow: hidden;
	}

	/* #module #collapseExample.collapsing { */
	#actualiteResize .textToResize.collapsing {
	  /* height: 4.5em; */
	  height: calc(1.2em * 5);
	}
}

/* Large devices orientation paysage (iPads...) */
@media (min-width: 992px) and (orientation: landscape) {
	.container-fluid {
		padding-left: 15px;
	}	
	/*
	.fixed-top {
		position: fixed;
		top: 0;
		right: 143px;
		left: 15px;
		z-index: 1030;
	}
	*/
	.fixed-top {
		position: inherit;
	}
	/* #module #collapseExample.collapse:not(.show) { */
	#actualiteResize .textToResize.collapse:not(.show) {
	  display: block;
	  /* height = lineheight * no of lines to display */
	  height: calc(1.2em * 7);
	  /* height: 4.5em; */
	  overflow: hidden;
	}

	/* #module #collapseExample.collapsing { */
	#actualiteResize .textToResize.collapsing {
	  /* height: 4.5em; */
	  height: calc(1.2em * 7);
	}
}

/* Extra large devices (large desktops, 1200rem and up) */
@media (min-width: 1200px) {
	html {
		font-size: 150%;
	}
	.container-fluid {
		padding-right: 155px;
		padding-left: 88px;
	}
	.navbar.fixed-right {
		width: 155px;
	}
	.contactLink {
		font-size: 25px!important;
	}
	.titleBig {
		font-size: 6.5rem!important;
		margin-bottom: -30px;
	}
	.titleSmall {
		font-size: 3rem!important;
	}
	.fixed-top {
		position: fixed;
		top: 0;
		right: 155px;
		left: 88px;
		z-index: 1030;
	}
	/* #module #collapseExample.collapse:not(.show) { */
	#actualiteResize .textToResize.collapse:not(.show) {
	  display: block;
	  /* height = lineheight * no of lines to display */
	  height: calc(1.2em * 6);
	  /* height: 4.5em; */
	  overflow: hidden;
	}

	/* #module #collapseExample.collapsing { */
	#actualiteResize .textToResize.collapsing {
	  /* height: 4.5em; */
	  height: calc(1.2em * 6);
	}
}



/* 1300rem and up */
@media (min-width: 1300px) {
	/* #module #collapseExample.collapse:not(.show) { */
	#actualiteResize .textToResize.collapse:not(.show) {
	  display: block;
	  /* height = lineheight * no of lines to display */
	  height: calc(1.2em * 7);
	  /* height: 4.5em; */
	  overflow: hidden;
	}

	/* #module #collapseExample.collapsing { */
	#actualiteResize .textToResize.collapsing {
	  /* height: 4.5em; */
	  height: calc(1.2em * 7);
	}
}


/* 1400rem and up */
@media (min-width: 1400px) {
	/* #module #collapseExample.collapse:not(.show) { */
	#actualiteResize .textToResize.collapse:not(.show) {
	  display: block;
	  /* height = lineheight * no of lines to display */
	  height: calc(1.2em * 8);
	  /* height: 4.5em; */
	  overflow: hidden;
	}

	/* #module #collapseExample.collapsing { */
	#actualiteResize .textToResize.collapsing {
	  /* height: 4.5em; */
	  height: calc(1.2em * 8);
	}
}


/* Extra extra large devices (large desktops, 1500rem and up) */
@media (min-width: 1500px) {
	html {
		font-size: 220%;
	}
	.container-fluid {
		padding-right: 173px;
		padding-left: 88px;
	}
	.navbar.fixed-right {
		width: 173px;
	}
	.titleBig {
		font-size: 6.5rem!important;
		margin-bottom: -40px;
	}
	.contactLink {
		font-size: 25px!important;
	}
	.fixed-top {
		position: fixed;
		top: 0;
		right: 173px;
		left: 88px;
		z-index: 1030;
	}
	/* #module #collapseExample.collapse:not(.show) { */
	#actualiteResize .textToResize.collapse:not(.show) {
	  display: block;
	  /* height = lineheight * no of lines to display */
	  height: calc(1.2em * 4);
	  /* height: 4.5em; */
	  overflow: hidden;
	}

	/* #module #collapseExample.collapsing { */
	#actualiteResize .textToResize.collapsing {
	  /* height: 4.5em; */
	  height: calc(1.2em * 4);
	}
}


/* 1600rem and up */
@media (min-width: 1600px) {
	/* #module #collapseExample.collapse:not(.show) { */
	#actualiteResize .textToResize.collapse:not(.show) {
	  display: block;
	  /* height = lineheight * no of lines to display */
	  height: calc(1.2em * 5);
	  /* height: 4.5em; */
	  overflow: hidden;
	}

	/* #module #collapseExample.collapsing { */
	#actualiteResize .textToResize.collapsing {
	  /* height: 4.5em; */
	  height: calc(1.2em * 5);
	}
	
	.pFooter {
		font-size: 1.25rem!important;
		line-height: 1.25;
		margin-bottom: 0;
	}
}


/* 1700rem and up */
@media (min-width: 1700px) {
	/* #module #collapseExample.collapse:not(.show) { */
	#actualiteResize .textToResize.collapse:not(.show) {
	  display: block;
	  /* height = lineheight * no of lines to display */
	  height: calc(1.2em * 8);
	  /* height: 4.5em; */
	  overflow: hidden;
	}

	/* #module #collapseExample.collapsing { */
	#actualiteResize .textToResize.collapsing {
	  /* height: 4.5em; */
	  height: calc(1.2em * 8);
	}
}


@media (min-width: 1700px) and (orientation: portait) {
	body {
		background-color: red;
	}
}
@media (min-width: 1700px) and (orientation: landscape) {
	body {
		/* background-color: green; */
	}
}

