body {
     font-family: Roboto, Arial, sans-serif;
}

.container-fluid,
header,
footer,
section {
  padding : 0;
  margin  : 0;
  width   : 100%;
  position: relative;
}

.container {
  width    : 1200px !important;
  max-width: 100% !important;
  padding  : 0;
  margin   : 0 auto;
}


a:hover {
    color: inherit;
    text-decoration: none;
}

/******************************
Couleurs
******************************/
.bg_gris-clair {background-color: #d5d1ce;}
.bg_gris-tres-clair {background-color: #f3f3f3;}
.bg-nav {background-color: rgba(0,99,136,1);}
.bg-bleu-transp {background-color: rgba(0,99,136,.7);}
.bg-bleu-tres-transp {background-color: rgba(0,99,136,.2);}
.bg-blanc {background-color: #fff;}
.bg-blanc-transp {background-color: rgba(255,255,255,.15);}
.bg-bleu {background-color: #2196f3;}
.bg-bleu-sombre {background-color: #002B4D; }
.bg-sombre-transp {background-color: rgba(255,0,0,.75);}
.bg-vert {background-color: #599700;}
.bg-success-transp {background-color: rgba(0,142,56,.75);}
.bg-rouge {background-color: #ed1b24;}
.bg-square {background-color: rgba(0,0,0,.50);}
.bg-square:hover {background-color: rgba(0,0,0,.25);}
.bg-ref {background-color: rgba(0,0,0,.3);}

 .-red {background-color: red;}
 .-green {background-color: green;}
 .-blue {background-color: blue;}

.blanc {color: #fff;}
.bleu-titre {color: #0074bb;}
.blanc-transp {color: rgba(255,255,255,.5);}
.gris-fonce-fort { color: #434a50;}
.gris-fonce { color: #6c757d;}
.gris-clair { color: #d5d1ce;}
.rouge {color: #ed1b24;}

/******************************
Typo
******************************/

/*
Footer
*/
.page-content {
  min-height: 450px;
}
.logo-footer {
  display: inline-block;
  background-size: 100% auto;
  max-width: 100%;
  background-repeat: no-repeat;
}
.logo-sf {
  width: 203px;
  height: 26px;
  background-image: url(/assets/img/sf-logo.png);
}
.logo-ta {
  width: 110px;
  height: 18px;
  background-image: url(/assets/img/ta-logo.png);
}

.logo-f {
  width: 96px;
  height: 21px;
  background-image: url(/assets/img/f-logo.png);
}

.logo-n {
  width: 74px;
  height: 24px;
  background-image: url(/assets/img/n-logo.png);
}

.logo-m {
  width: 85px;
  height: 26px;
  background-image: url(/assets/img/m-logo.png);
}

.logo-sb {
  width: 135px;
  height: 23px;
  background-image: url(/assets/img/sb-logo.png);
}

.logo-s {
  width: 78px;
  height: 22px;
  background-image: url(/assets/img/s-logo.png);
}
.logo-st {
  width: 246px;
  height: 68px;
  background-image: url(/assets/img/ST-baseline.png);
}

/*
contenu
*/
.retain img {
  border:4px solid rgb(56,159,216);
}
.retain figcaption {
  color: rgb(56,159,216);
}
.cross img {
  border:4px solid rgb(215,61,1);
}
.cross figcaption {
  color: rgb(215,61,1);
}
.protect img {
  border:4px solid rgb(146,208,80);
}
.protect figcaption {
  color: rgb(146,208,80);
}

.bloc-tool {
  background-image: url('/assets/images/back-slide-md.jpg');
  background-size: cover;
  background-position: center;
}
.bloc-catalogue {
  background-image: url('/assets/images/back-slide-xl-2.jpg');
  background-size: cover;
  background-position: center;
}
.display-5 {
    font-size: 2rem;
    font-weight: 300;
    line-height: 1.2;
}

/*
Card custom
*/
.card {
  border: 0;
  border-radius: 0;
  background-color: inherit !important;
}
.card-body {
  background-color: inherit; !important;
}
.card-header {
  background-color: inherit;
      border-top: 1px solid rgba(0, 0, 0, 0.125);
      border-bottom: 0;
}
.bnt-no-style {
  background:none;
  border:0;
  outline: 0 !important;
}


/*
header
*/
 .logo > img {
     max-width: 100%;
}

h1, h2, h3, h4, h5, .h1, .h2, .h3, .h4, .h5 {
	font-family: 'Abel';
}
.square h2 {
  font-size: 1.8rem;
  font-weight: normal;
}

.unit {
  position: absolute;
  right :0;
  top : 20%;
  color: #abb3ba;
  font-size:70%;
}

/*Input top*/
.formRow {
  position: relative;
  width: 100%;
}
.formRow--item {
  display: block;
  width: 100%;
}
.formRow--input {
  position: relative;
  padding: .4em 0;
  width: 100%;
  outline: none;
  border: 0;
  background: none;
  border-bottom: solid 1px #000;
  color: #000;
  letter-spacing: .2px;
  font-weight: 400;
  font-size: 16px;
  resize: none;
  -webkit-transition: all .2s ease;
  transition: all .2s ease;
}
.formRow--input {
  border-bottom: solid 1px #000;
  color: #000;
}

.formRow--input.erreur {
	border-bottom: solid 2px red;
}

.formRow--input-wrapper {
  position: relative;
  display: block;
  width: 100%;
}
.formRow--input-wrapper.active .placeholder {
  top: -5px;
  background: none;
  color: #000;
  letter-spacing: .8px;
  font-size: 11px;
  line-height: 14px;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

 .carousel-caption {
    position: absolute;
    right: 0%;
    top: 15%;
    bottom: 15%;
    left: 0%;
    z-index: 10;
    padding-top: 20px;
    padding-bottom: 20px;
    color: rgb(255, 255, 255);
    text-align: center;
}

.custom-select {
	border:0;
	border-bottom:1px solid #000;
	border-radius: 0;
	outline: none;
	padding-left:0; 
	cursor: pointer;
}
.page .custom-select
.custom-select:focus {
	outline: none;
}

.formRow--input-wrapper.active .placeholder {
	color: #000;
} 
.formRow--input-wrapper.active .formRow--input:not(:focus):not(:hover) ~ .placeholder {
  color: #000;
}
.formRow--input-wrapper .formRow--input:focus, .formRow--input-wrapper .formRow--input:hover {
  border-color: #fff;
}
.formRow--input-wrapper.active .formRow--input:not(:focus):not(:hover) ~ .placeholder {
  color: #000;
}
.formRow--input-wrapper .formRow--input:focus, .formRow--input-wrapper .formRow--input:hover {
  border-color: #b1b8bf;
}
.formRow .placeholder {
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
  padding: 0;
  color: #000;
  white-space: nowrap;
  letter-spacing: .2px;
  font-weight: lighter;
  font-size: 16px;
  -webkit-transition: all, .2s;
  transition: all, .2s;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.showpw {
	position: absolute;
	right :0;
	top : 20%;
	cursor: pointer;
}

.page .formRow .placeholder {
	color: #000;
}
.textarea-contact {
	outline: none;
	width: 100%;
	background: transparent;
	padding: 1rem;
	border:1px solid #000;
	color: #000;
	font-size: 1rem;
}



/*
Couleurs
*/

.une-tuille-ref, .une-tuille-ref-v2 {
  background-size: cover;
}


  
.square{
  width: 210px;
  height: 210px;
}
.square .separate {
  height: 2px;
}
.bottom-center {
  bottom: 0;
}
.bottom-2-center {
  bottom: -2px;
}
.middle-center {
  top:40%;
}
.top-center {
  top:0;
}
.top-10-center {
  top:1rem;
}
.w-10 {
  width: 10%;
}
.w-20 {
  width: 20%;
}
.w-30 {
  width: 30%;
}
.w-40 {
  width: 40%;
}
.w-60 {
  width: 60%;
}
.w-70 {
  width: 70%;
}
.w-80 {
  width: 80%;
}
.w-90 {
  width: 90%;
}

/**/

.btn-design {
	border: 0;
  border-radius: 50rem;
  font-family:'Abel'; 
}
.text-shadow {
	text-shadow: 0 -1px 1px rgba(0,0,0,.3);
}
.text-shadow-maps {
  text-shadow: 0 5px 30px rgba(0,0,0,1);
}
.shadow-bottom {
	-webkit-box-shadow: 0px 0px 20px 3px rgba(0,0,0,0.4); 
	box-shadow: 0px 0px 20px 3px rgba(0,0,0,0.4);
}

.coins-rond-gauche {
 border-radius: 5rem 0 0 5rem;
}
.coins-rond-droit {
 border-radius: 0 5rem 5rem 0;
}

.nav-link {
  font-family: 'Abel';
	font-size: .85rem;
	text-transform: uppercase;
  color: #fff !important;
	/*font-weight: bold*/
}
.nav-item.active a.nav-link,
.nav-item a.nav-link:hover {
  border-bottom: 1px solid rgba(255,255,255,.7);
}
.limit-user-name {
	max-width: 150px;
}
.carte {
	height: 720px;
}
.tuile-home h2 {

}

.trame-bleu {
	background-color: rgba(33,150,243,.42);
}
.image-tuile {
	background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
}

.titre-slide {
  font-size: 1.25rem;
}
.text-slide {
  font-size: .8rem;
}
.nav-item a.nav-link:hover,
.nav-item a.nav-link.active {
	text-decoration: none;
	border         : none;
}
.nav-item a.nav-link {
	position: relative;
	display : block;
	overflow: hidden;
	-webkit-transform: perspective(1px) translateZ(0);
	transform        : perspective(1px) translateZ(0);
}

.nav-item a.nav-link:before {
	content   : "";
	position  : absolute;
	z-index   : -1;
	left      : 0;
	right     : 100%;
	bottom    : 0;
	background: rgba(255, 255, 255, 0.7);
	height    : 1px;
	-webkit-transition-property       : left, right;
	transition-property               : left, right;
	-webkit-transition-duration       : 0.4s;
	transition-duration               : 0.4s;
	-webkit-transition-timing-function: ease-out;
	transition-timing-function        : ease-out;
}
.nav-item a.nav-link:hover:before, .nav-item a.nav-link:focus:before, .nav-item a.nav-link.active:before {
	right: 0
}

@media (min-width: 576px) {
  .titre-slide {
     font-size: 2.5rem;
  }
  .text-slide {
    font-size: 1rem;
  }
}

@media (min-width: 992px) {
	.carousel-caption {
		right: 10%;
		left: 10%;
	}
	.nav-item a.nav-link {
		display : inline-block;
		overflow: hidden;
		-webkit-transform: perspective(1px) translateZ(0);
		transform        : perspective(1px) translateZ(0);
	}
	.nav-item a.nav-link:before {
		content   : "";
		position  : absolute;
		z-index   : -1;
		left      : 51%;
		right     : 51%;
		bottom    : 0;
		background: rgba(255, 255, 255, 0.7);
		height    : 1px;
		-webkit-transition-property       : left, right;
		transition-property               : left, right;
		-webkit-transition-duration       : 0.25s;
		transition-duration               : 0.25s;
		-webkit-transition-timing-function: ease-out;
		transition-timing-function        : ease-out;
	}
	.nav-item a.nav-link:hover:before, .nav-item a.nav-link:focus:before, .nav-item a.nav-link.active:before {
		left : 0;
		right: 0;
	}
}

@media (min-width: 1200px) {
	
}

@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
}

.tooltip-inner {
	background: #ed1b24;
}
.bs-tooltip-top .arrow::before {
	border-top-color: #ed1b24 !important;
}
.bs-tooltip-bottom .arrow::before {
	border-bottom-color: #ed1b24 !important;
}
/**************************
	breadcrumbs
**************************/
.breadcont {
	font-size: .8rem;
	color    : #666;
	border-bottom: 1px dotted #ccc;
}
.breadcont a {
	color: #999;
}
.breadcont a:hover {
	color: rgb(0, 99, 136);
	text-decoration: underline;
}
