@CHARSET "utf-8";

/* PC */
@media all and (min-width:781px) {
	#bandeau .menu-wrapper {display:block !important;}
	#bandeau-mobile {display:none !important;}
}

@media all and (max-width:1815px) {
	#accueil-paves-conteneur .accueil-pave { width: 274px; height: 274px;}
}

@media all and (max-width:1760px) {
	#accueil-paves-conteneur {top: 485px;}
	#accueil-paves-conteneur .accueil-pave { width: 254px; height: 254px;}
}


@media all and (max-width:1635px) {
	#accueil-paves-conteneur .accueil-pave { width: 244px; height: 244px;}
}

@media all and (max-width:1350px) {

	#menu .menu-element {margin: 0px 16px;}
	
	#gabarit-page {margin: 0;padding: 0 10px;}
}

@media all and (max-width:1315px) {
	#accueil-paves-conteneur .accueil-pave {width: 250px;height: 250px;}

	#accueil-haut-conteneur {margin-bottom: 355px;}
	
}

@media all and (max-width:1259px) {
	
	
	#menu .menu-element {margin: 0px 7px;}
	
	.iframe-responsive-wrapper {position: relative;}
	#contenu .iframe-responsive-wrapper .iframe-ratio {  display: block;  width: 97%;  height: auto;}
	.iframe-responsive-wrapper iframe{position: absolute;top: 0;left: 0;width: 97% !important; height: 97% !important;}
	
	
  video {width:100%; height:auto;}
}


@media all and (max-width:1193px) {
	
	#realisations-famille .conteneur {margin:10px !important; width:calc(33% - 20px); }
	
	#gabarit-page .global-gabarit > div {width: 55%;}
	#gabarit-page .gabarit-image {width: calc(50% - 105px);}
}

@media all and (max-width:1110px) {
	
	#realisations-famille {text-align:center;}
	#realisations-famille .conteneur { width:calc(50% - 20px); }
	
}

@media all and (max-width:1085px) {	
	#bandeau #logo a img {height: 100px;}		
			
	#menu .menu-element {margin: 0px 10px;}
	

	.lg { height: 120px;}
	.sm {height:90px;}
	
	#bandeau.sm #logo a img{height: 55px;}
	#bandeau.sm #menu .menu-element {height:36px;}
	#bandeau.sm #menu .menu-element > a > span::after, 
	#bandeau.sm #menu .menu-element > span::after {bottom: 7px;}
	#bandeau.sm #menu-conteneur { clear: both;}	
	
	#bandeau #logo a img {height: 75px;}		
	
	#menu-conteneur { padding-top: 0; clear: both; }
	#menu > .global {text-align:center; display: flex;flex-wrap: wrap;justify-content: space-around;}
	#menu .menu-element {height:44px; margin: 0px 10px !important;}
	#menu .menu-element > a > span, #menu .menu-element > a:visited > span, #menu .menu-element > span {font-size: 14px;}
	#menu .smenu-conteneur {top:44px;}
	
}

@media all and (max-width:1040px) {
		
	#contact-gauche {width: 300px;}
	#contact-gauche .titre-conteneur {font-size: 35px; line-height: 45px;}
	
	#contact-coordonnees {margin-top: 30px;} 
	#contact-coordonnees > div {height:33px;}
	#contact-coordonnees > div i {margin-right:5px; width: 34px;height: 27px; font-size: 23px; padding-top: 6px; vertical-align: top;}
	#contact-coordonnees > div span {font-size: 18px; line-height: 31px; width: calc(100% - 42px);}
	#contact-coordonnees > div#contact-mail i { padding-top: 6px; height: 27px; font-size: 19px;}
	#contact-coordonnees > div#contact-telephone a {font-size: 17px;}
	#contact-coordonnees > div#contact-telephone i {margin-right:5px;}
	#contact-coordonnees > div#contact-telephone span {width: calc(100% - 39px); line-height: 30px;}
	
	#contact-droite {width: calc(100% - 360px);}

	
}
@media all and (max-width:990px) {
			
 	/* Module Contact */
 	#module-contact #module-contact-adresse {float:none; width:100%;}
	#module-contact .googlemap {float:none; width:100%; margin:20px 0;}
	
	
	#accueil-realisations-conteneur #realisations-filtres { margin-top: 40px;}
	
	#parallax-conteneur-texte, #parallax-conteneur {height:180px;}
	
	/* Template Article Default */
	#template-article .template-article-image-texte .template-article-image,
	#template-article .template-article-texte-image .template-article-image {margin:20px auto 20px; text-align:center;}	
	#template-article .template-article-image {width:100%; }
	#template-article .template-article-image img {max-width:400px; width:100%; height:auto !important;}
	#template-article .template-article-texte {width:100%;}
	
}

@media all and (max-width:930px) {
	#menu .menu-element > a > span, 
	#menu .menu-element > a:visited > span, 
	#menu .menu-element > span {font-size:13px;}
			
}

@media all and (max-width:860px) {
		
	#menu .menu-element {margin: 0px 6px !important;}
	
	#gabarit-photo .gabarit-gauche-image,
	#gabarit-photo .gabarit-droite-image {max-width:50%;}
	
	#accueil-slider {height: 520px;}
	#accueil-paves-conteneur {top: 390px;}
	#accueil-slider-controls-conteneur {top: 335px;}
	#accueil-haut-conteneur {margin-bottom: 240px;}
	#accueil-paves-conteneur .accueil-pave-nom div {font-size:19px;}
	#accueil-paves-conteneur .accueil-pave {width: 174px; height: 174px;}
	#accueil-paves-conteneur .accueil-pave-nom div {font-size:17px; width: calc(100% - 10px); height:70px;}	
		
	
	#pied .col { width: 240px !important;}
}

@media all and (max-width:830px) {
	#gabarit-page .gabarit-gauche, #gabarit-page .gabarit-droite {flex-direction: column;justify-content: center;align-items: center;}
	#gabarit-page .global-gabarit > div {width: 100%;}
	#gabarit-page .gabarit-image {position: relative;top:unset;left: unset;right: unset;margin: auto;}
	#gabarit-page .gabarit-image {width: auto;height: 265px;}
	#gabarit-page .gabarit-texte {margin-top:10px;}
}

@media all and (max-width:795px) {
	#menu .menu-element {margin: 0px 5px !important;}

}


/* Tablette */
@media all and (max-width:780px) {
	
	body {width:100%;}
	.w1260 {display:none;}
	
	#global {min-width:inherit; margin:0 auto; width:auto; padding-top:120px;}

	/* Bandeau */	
	.noscroll #bandeau-haut,
	.noscroll #bandeau-contact,
	.noscroll #bandeau-mobile {display:none;}
	
		
	#bandeau-contact {opacity:1; height:85px; -webkit-transition: all 400ms ease-in-out; -moz-transition: all 400ms ease-in-out; -ms-transition: all 400ms ease-in-out; -o-transition: all 400ms ease-in-out; transition: all 400ms ease-in-out;}
	#bandeau.sm #bandeau-contact {opacity:0; height:0; overflow: hidden;}
	#bandeau.sm #bandeau-contact #logo {display:none; }
	#bandeau-conteneur,
	#bandeau.sm #bandeau-conteneur {height:auto;}
		
	.lg { height: 120px;}
	.sm { height: 35px; border:none;}
		
	#bandeau #logo {}
	#bandeau #logo a img {height:75px; }
	
	/* Menu mobile */
  #bandeau-mobile { min-width:inherit; width:100%; }	
	
 	/* bas */
	#bandeau-mobile-bas {position: relative; z-index: 45; clear:both; background:#45565d; height:35px; cursor:pointer; }
	#bandeau-mobile-bas > span {font-size: 18px; width: auto; text-transform: uppercase; padding-left:40px; padding-top: 4px; display: block; color: #ffffff; text-decoration: none; position:relative;}
	#bandeau-mobile-bas i {position:absolute; left:10px; top:5px; font-size:23px;}
			
	#bandeau #menu-conteneur { padding:0; position: fixed; z-index: 9999; top: 0;left: 0; height: 100%; width:80%; width: calc(100% - 45px); background: #fff;  -webkit-transition: transform 0.5s;  -khtml-transition: transform 0.5s;  -moz-transition: transform 0.5s;  -ms-transition: transform 0.5s;  -o-transition: transform 0.5s;  transition: transform 0.5s;  -webkit-transform: translateX(-100%);  -khtml-transform: translateX(-100%);  -moz-transform: translateX(-100%);  -ms-transform: translateX(-100%);  -o-transform: translateX(-100%);  transform: translateX(-100%);  overflow-x: hidden;  overflow-y: scroll;}
	#bandeau #menu-conteneur.open {display: block;-webkit-transform: translateX(0%);-khtml-transform: translateX(0%);-moz-transform: translateX(0%);-ms-transform: translateX(0%);-o-transform: translateX(0%);transform: translateX(0%);}
	
	#bandeau #menu-titre { display:block; margin-bottom: 20px;}
	#bandeau #menu-titre > span {font-size: 18px; width: auto; text-transform: uppercase; padding-left:20px; padding-top: 3px; display: block; color: #45565d; text-decoration: none; position:relative;}
	#bandeau #menu-titre i {position:absolute; left:0px; top:6px; font-size:20px;}
			
	#bandeau #menu-close {display: none; line-height: 32px; cursor:pointer; font-weight: 600; z-index: 999; border:1px solid #45565d; text-align:center; font-size: 50px;color: #ffffff; width: 45px;height: 45px; position: fixed; top: 0; right: 0;background: #45565d;}
	#bandeau #menu-close.visible {display:block;}
	#bandeau #menu-wrapper {padding: 10px;}	
	#menu > .global {display:block;}
	#menu .menu-element,
	#menu .menu-element.menu-grand {height:auto !important; margin:10px 0px 0 !important; display:block; padding:0 0 10px 5px; border-bottom:1px solid #edecec;}
	#menu .menu-element > a > span,
	#menu .menu-element > a:visited > span,
	#menu .menu-element > span,
	#menu .menu-element.menu-grand > a > span, 
	#menu .menu-element.menu-grand > span {padding:5px; text-align:left; color:#45565d; border:none;font-size:15px;}
	#menu .menu-element br {display:none;}
	
	#menu .menu-element > a > span::after,
	#menu .menu-element > span::after,
	#menu .menu-element.selected > a > span::after,
	#menu .menu-element.selected > span::after,
	#menu .menu-element:hover > a > span::after,
	#menu .menu-element:hover > span::after {display:none !important;}	
	
	#menu .menu-element.selected > a > span,
	#menu .menu-element.selected > span {font-weight:700;}
	
	#menu .smenu-conteneur {margin-top:6px; width:100%; padding:0; display:block !important; position:relative; left:0 !important; top:0 !important; background:none; min-height: 0; }
	#menu .smenu-centre {border:none; margin:0; width:auto;}
	#menu .ssmenu-conteneur-images {display:none !important;}
	#menu .smenu-centre-menus {float:none; width:auto;}
	#menu .smenu-conteneur .smenu-element{display:block; width:auto;}
	#menu .smenu-element > a > span, 
	#menu .smenu-element > span {text-align: left;padding:7px 0 7px 15px; display:block !important; border:none;width:auto; text-decoration:none;color:#000000;font-size:14px; text-transform: none; }
	#menu .smenu-element > a, #menu .smenu-element > a:hover {text-decoration:none;}
	
	#menu .smenu-element.selected > span,
	#menu .smenu-element.selected > a > span,
	#menu .smenu-element:hover > span
	#menu .smenu-element:hover > a > span {background:#45565d;color:#fff;}

	#menu .smenu-element > a > span::after,
	#menu .smenu-element > span::after,
	#menu .smenu-element.selected > a > span::after,
	#menu .smenu-element.selected > span::after,
	#menu .smenu-element:hover > a > span::after,
	#menu .smenu-element:hover > span::after {display:none !important;}
	
	#menu .ssmenu-element > a > span, #menu .ssmenu-element > span {padding: 5px 0 10px 25px;}
	#menu .ssmenu-element > a > span::before, #menu .ssmenu-element > span::before {left: 16px; top: 6px;}
	
	#accueil-slider .accueil-slider-li .accueil-slider-imageordi {display:none !important;}
	#accueil-slider .accueil-slider-li .accueil-slider-imagetablette {display:block !important;}
	#accueil-slider .accueil-slider-li .accueil-slider-imagemobile {display:none !important;}
	
		
	/* Centre */
	#centre {width:auto; margin:0; padding-top:0px;}
	
	#centre table {float:none; width:100% !important; margin:10px auto;}
	table tr td {display:inline-block; vertical-align:top;}
	
	#gabarit-photo table {width:auto !important; margin:0;}
		
	/* Fil d'ariane */
	#ariane {display:none;}
	
	/* Contenu */
	#contenu {width:auto; }
	#contenu img {max-width:100%; max-height:100%; height:auto; width:auto; }
	
	/* Formulaire */
	#contenu .input-text,
	#contenu input[type="text"] {width:calc(100% - 15px);height:30px;}
	#contenu input[type="image"],#contenu input[type="checkbox"],#contenu input[type="radio"] {width:auto; height:auto;}
	#contenu select {height:45px; }
	#contenu textarea {width:calc(100% - 12px) !important; }
	#contenu .submit input, 
	#contenu input.submit, 
	#contenu .bouton, #contenu a.bouton, 
	#contenu a.bouton:visited {width:auto; display:block;}
	#contenu button.bouton {width:100%; box-sizing: border-box;-webkit-box-sizing: border-box;-moz-box-sizing: border-box;-khtml-box-sizing:border-box;}
	
	#contenu .form140 {float:none; text-align:left; width:auto;}
	#module-contact select {width:calc(100% - 5px);}
	#module-contact .form div.submit-conteneur, #module-contact #contact-captcha { margin-left:0;}	
	#contact-container .contact-vide {display:none;}
	
	/* Paginator */
	#paginator {margin:30px 0 20px;}
	#contenu #paginator .pagination-lien, #contenu #paginator .pagination-span {margin:0 9px;}

	.mosaique-conteneur {text-align:center;}
		
	#accueil-haut-conteneur {margin-bottom: 265px;}
	#accueil-slider {height: 430px;}
	#accueil-paves-conteneur {top: 330px;}
	
	#realisations-famille .conteneur { width:100%; margin:10px auto !important; } 		
	
	
	#pied .global .contenu-wrapper { padding:5px 10px;}
	
	#pied .col {float:none !important; margin: 15px 5px; padding:0; width:320px !important;}
	#pied #col-centre.col { display:block;}
	
	
	
	.table-vertical thead tr {
	  left: -9999px;
	  position: absolute;
	  top: -9999px;
	}
	.table-vertical table, .table-vertical thead, .table-vertical tbody, .table-vertical th, .table-vertical td, .table-vertical tr {
	  display: block;
	}
	.table-vertical td {
	  -moz-border-bottom-colors: none;
	  -moz-border-left-colors: none;
	  -moz-border-right-colors: none;
	  -moz-border-top-colors: none;
	  border-color: #e0e0e0;
	  border-image: none;
	  border-style: none none solid;
	  border-width: 0 0 1px;
	  padding-left: 50% !important;
	  position: relative;
	  text-align: left;
	  white-space: normal;
	  padding-top: 3px;
	  padding-bottom:3px;
	  height:25px;
	}
	
	.table-vertical td::before {
	  content: attr(data-title);
	  font-weight: 700;
	  left: 6px;
	  padding-right: 10px;
	  position: absolute;
	  text-align: left;
	  top: 6px;
	  white-space: nowrap;
	  width: 45%;
	}

	#accueil-slider-controls-conteneur {top: 285px;}
	#section-realisation {-webkit-box-orient: vertical;-webkit-box-direction: reverse;-ms-flex-direction: column-reverse;flex-direction: column-reverse;}
	#section-realisation #realisations-famille-conteneur {width: 100%;}
	#section-realisation #texte {width: 100%;margin-left: 0;}
}

@media all and (max-width: 685px) {	
	#accueil-texte .global {padding: 10px 10px 25px;}
	
	#realisations .conteneur .contenu .photo {float:none; margin:10px auto;}
	#realisations .conteneur .contenu .extrait {min-height:0;}

	#accueil-slider .accueil-slider-li .accueil-slider-contenu {top: 20px; min-height:10px;}
  #accueil-slider .accueil-slider-li .accueil-slider-texte { min-height:10px;}
}

@media all and (max-width: 625px) {
	/* Renseignement petit */
	#contenu .renseignement-titre {display:block;}
	#contenu .renseignement-titre::after {display:none;}
	#contenu .renseignement-contenu {margin-left:0; display:block; width:100%;}
}

@media all and (max-width: 605px) {
  	
	#contenu p,
	#contenu ul,
	#contenu h2,
	#contenu h3 {margin-left:0px;}
	#contenu ul ul {margin-left: 20px;}
			
	/* #accueil-haut-conteneur {margin-bottom: 10px;} */
	/* #accueil-paves-conteneur {position: relative; bottom: unset; margin-top: 15px;} */
	#accueil-paves-conteneur .accueil-pave {width: 174px; height: 174px;}
	#accueil-paves-conteneur .accueil-pave-nom div {font-size:17px; width: calc(100% - 10px);}	
		
	#gabarit-photo .gabarit-gauche-image,
	#gabarit-photo .gabarit-droite-image {float:none !important; margin:15px auto !important; width:100% !important; text-align:center;}
	#gabarit-photo .portrait,
	#gabarit-photo .paysage {width:100%; min-width: 0 !important; text-align:center;}
			
	
	#pied .col {display:block; width:100% !important; }
}


@media all and (max-width:580px) {
	

	#bandeau #bandeau-email a, 
	#bandeau #bandeau-email a:visited {padding: 3px 7px;}
	#bandeau-email i,
	#bandeau.sm #bandeau-email i {margin:0;}
	#bandeau-email span {display:none;}
	
	#accueil-texte h1, #centre h2.h1,
	#rassurances-conteneur h2 {font-size: 30px;line-height: 35px;}
	
	#accueil-haut-conteneur {margin-bottom: 0;}     
	
	#accueil-slider .accueil-slider-li .accueil-slider-imageordi {display:none !important;}
	#accueil-slider .accueil-slider-li .accueil-slider-imagetablette {display:none !important;}	
	#accueil-slider .accueil-slider-li .accueil-slider-imagemobile {display:block !important;}
    #accueil-slider .accueil-slider-li .accueil-slider-titre, #accueil-slider .accueil-slider-li .accueil-slider-titre a {font-size: 25px;}
    	
	#accueil-slider-controls-conteneur {   top: unset;    bottom: 20px;}
	
	#accueil-paves-conteneur {position: relative; top: unset;     margin-top: 20px;  bottom: unset;}

	#rassurances {display:block;}
	#rassurances .rassurance {width:300px; display: block; margin: 15px auto; text-align: left;}
	#rassurances .rassurance-image {margin:0;}
	#rassurances .rassurance-nom {font-size:18px;}
	#rassurances .rassurance-nom br { display: none;}
	
}
@media all and (max-width:500px) {

	#module-contact .container-adresses {-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}
	#module-contact .w50p {	width: 100%;}
}
@media all and (max-width:480px) {
		
	#actualites .conteneur .contenu .photo {display:block; margin:10px auto; text-align: center;}
	#actualites .conteneur .contenu .texte {width:100%;}
	#actualites .conteneur .contenu .extrait {min-height:0;}
	
	#contenu #paginator .pagination-fleche {display:none !important;}


	#realisations-famille .nom .titre {font-size: 17px;}
	#realisations-famille .nom .suite {font-size:16px;}

			
	#accueil-slider .accueil-slider-li .accueil-slider-contenu {width:100%; width:calc(100% - 30px); height: auto; }
	#accueil-slider .accueil-slider-li .accueil-slider-texte {height:auto;}

}
/* Smartphone */
@media all and (max-width:435px) {	
	
	#contenu img { margin-left: auto !important; margin-right: auto !important;}
	

	#accueil-paves-conteneur .accueil-pave {width: 154px; height: 154px;}
	#accueil-paves-conteneur .accueil-pave-nom div {font-size:14px; width: calc(100% - 5px); height:55px;}		
}

@media all and (max-width:385px) {
	
	
	#bandeau #bandeau-elements {padding: 5px 0 0 0;}
	#bandeau .bandeau-element { display: block; margin: 0px auto 5px;}
	#bandeau #bandeau-email {margin-bottom:0; text-align: center;}
	
	#accueil-slider-controls-conteneur {display:none;}
	#accueil-paves-conteneur .global {padding: 0;}
	#accueil-paves-conteneur .accueil-pave {width: 150px; height: 150px; margin:0 2px 10px !important}
	#accueil-paves-conteneur .accueil-pave-nom {bottom:5px;}
	
}