@CHARSET "utf-8";


@media all and (max-width:1635px) {
	#bandeau-elements {right: 30px;}
	
	#rassurances .rassurance {display:block;}
	#rassurances .rassurance-nom {margin:25px 0 0;}
}

@media all and (max-width:1625px) {
	#pied #logo-pied {max-width: 475px;}
}

@media all and (max-width:1415px) {
	#bandeau-contacts {display:block;}
	#bandeau-coordoonees {-webkit-box-pack: center; -ms-flex-pack: center; justify-content: center;}
	#bandeau-elements #bandeau-adresse {margin-left:0;}
}

@media all and (max-width:1405px) {

	#pied .col { width: calc(50% - 20px);}	
}
	
@media all and (max-width:1350px) {
	
    #gabarit-page {margin: 0;}
    #gabarit-page .gabarit-gauche .gabarit-texte {padding:0 10px 0 0;}
    #gabarit-page .gabarit-droite .gabarit-texte {padding:0 0 0 10px;}
}

@media all and (max-width:1280px) {
	/* MODULE REALISATIONS AVEC FILTRES */
	#realisations-famille .conteneur {width: calc(33.333% - 8px);} 

}

@media all and (max-width:1259px) {

	iframe {width: 100% !important;}
	.iframe-responsive-wrapper {position: relative;}
	#contenu .iframe-responsive-wrapper .iframe-ratio {   display: block;    width: 97%;   height: auto;}
	.iframe-responsive-wrapper .iframe-responsive-iframe {position: absolute;top: 0;left: 0;width: 100% !important; height: 100% !important; }
	.iframe-responsive-wrapper .iframe-responsive-iframe iframe {width: 100% !important; height: 100% !important;}
		
    video {width:100%; height:auto;}
    
    .tableau-parent-5 .tableau-enfant {width:calc(33.333% - 35px) !important; }
 
	/* MODULE REALISATIONS AVEC FILTRES */
	#realisations-famille .conteneur {width: calc(50% - 8px);} 
	
 	#pied .liens {margin:40px 0 70px;}   
}


@media all and (max-width:1225px) {
    #realisations-famille .contenu .nom,
    #realisations-famille .contenu .nom .nom-titre.realisation-livraison {margin-top:5px;}
}


@media all and (max-width:1193px) {
	
	#gabarit-page .global-gabarit.global-gabarit-image > div  {width: 55%;}
    #gabarit-page .gabarit-image {width: calc(50% - 105px);}    
    
	#gabarit-equipe article {width: calc(33% - 10px);max-width:305px;  margin: 15px 5px;}
	
}

@media all and (max-width:1040px) {
	#accueil-paves .accueil-pave-nom > a > span, 
	#accueil-paves .accueil-pave-nom > span {font-size: 25px;}
	
	#gabarit-equipe article {width: calc(50% - 10px);}
}

@media all and (max-width:990px) {
	
	#bandeau-elements #bandeau-adresse {display:none;}	
			
  	/* Module Contact */
  	#module-contact #module-contact-adresse {float:none; width:100%;}
	#module-contact .googlemap {float:none;  width:100%; margin:20px 0;}
	
	#gabarit-photo .gabarit-photo-conteneur {-ms-flex-wrap: wrap;flex-wrap: wrap;}
	#gabarit-photo .gabarit-photo-conteneur .global-gabarit-texte {width:60%;}
	#gabarit-photo .gabarit-photo-conteneur.gabarit-droite .global-gabarit-texte {-ms-flex-preferred-size: auto; flex-basis: auto;}
	#gabarit-photo .gabarit-photo-conteneur .gabarit-image {width:40%;}
		
}
@media all and (max-width:960px) {
	#accueil-bandes .accueil-bande span {letter-spacing: 2px; font-size: 30px;}
	#accueil-bandes .accueil-bande img {padding: 0px 45px;}
}

@media all and (max-width:930px) {
	
	#accueil-paves .accueil-pave-contenu {padding: 20px 30px;}		
	#accueil-paves .accueil-pave-nom > a > span, 
	#accueil-paves .accueil-pave-nom > span {font-size: 22px;}
	#accueil-paves .accueil-pave-texte p { font-size: 17px;}
	#accueil-presentation-texte {width:100%;}
	#accueil-presentation-texte .global {margin:0 auto;}
	#accueil-presentation-image {width:100%; text-align:center; margin:10px auto;}
	
	#accueil-realisations-conteneur {margin-top:0;}	
		
	.tableau-parent-4 .tableau-enfant {width:calc(33.333% - 35px) !important;}
	/* Table responsive*/
	.table-responsive-label {display:table-row;}
}

@media all and (max-width:860px) {
	
	#rassurances { -ms-flex-wrap:wrap; flex-wrap:wrap;}
	#rassurances .rassurance {display:flex; width: calc(50% - 30px); margin: 10px 15px;  -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start;}
	#rassurances .rassurance-nom {margin:0 0 0 25px;}
	
	.tableau-parent-4 .tableau-enfant {width:calc(50% - 35px) !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% !important;}
	#gabarit-page .gabarit-image {position: relative;top:unset;left: unset;right: unset;margin:10px auto; width: auto;height: 265px;}
	#gabarit-page .gabarit-texte {margin-top:10px; padding:0 10px !important;}
}


@media all and (max-width:815px) {
	#accueil-paves .accueil-pave-contenu {  padding: 15px;}
}
	
/* Tablette */
@media all and (max-width:780px) {
	
	body {width:100%;}
	.w1260 {display:none;}
	
	#global {min-width:inherit; margin:0 auto; width:auto;}
	
	#menu .menu-element, #menu .menu-element.menu-grand {padding:0 0 10px 70px;}
	#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;}
	#accueil-slider-control-prev { left: 15px;}
	#accueil-slider-control-next { right: 15px;}
	
	/* Centre */
	#centre {width:auto; margin:0; padding-top:0px;}
		
	/* Fil d'ariane */
	#ariane {display:none;}
	
	/* Contenu */
	#contenu {width:auto; }
	#contenu img {max-width:100%; max-height:100%;  height:auto; width:auto;  object-fit:contain; -o-object-fit:contain;}
		
	/* 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; }
	.submit input, input.submit, .bouton, .bouton-fleche, #global a.bouton, #global a.bouton:visited, #global a.bouton-fleche, #global a.bouton-fleche:visited {width:auto; min-width:0;  padding: 10px 15px; min-height: 30px;}
	#contenu button.bouton {width:100%;  margin:10px 0; 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,
	#module-contact #contact-optin { 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;}
		
	#gabarit-photo .gabarit-photo-conteneur .global-gabarit-texte {width:100%}
	#gabarit-photo .gabarit-photo-conteneur .global-gabarit-texte > div {margin:0 auto 25px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center;}
	#gabarit-photo .gabarit-photo-conteneur .gabarit-image {width:100%}
	
	#rassurances-conteneur .global { padding: 30px 0px;}
	
	#pied {margin-top:0;}
	#pied::before {background:url(../images/pied-surcouche.png) no-repeat top left; -moz-background-size: 70% auto; -o-background-size: 70% auto; -webkit-background-size: 70% auto;  background-size: 70% auto;}
	#pied .col {  }	
	#pied #logo-pied {margin:40px auto; width: calc(100% - 20px);}
	#pied #map-pied {margin:0 auto; width: 100%;}
	#pied .liens {padding:0 10px;}
	
	#back-to-top {bottom: 43px; right: 6px; }
	
	.tableau-parent-3 .tableau-enfant, 
	.tableau-parent-4 .tableau-enfant, 
	.tableau-parent-5 .tableau-enfant {width:calc(50% - 35px) !important; }
		
	.table-responsive-50-pourcent tr,
    .table-responsive-100-pourcent tr {	width: 100%; margin: 0 0 1rem;}	
	
	#contenu .table-vertical thead tr {
	    left: -9999px;
	    position: absolute;
	    top: -9999px;
	}
	#contenu .table-vertical table, #contenu .table-vertical thead, #contenu .table-vertical tbody, #contenu .table-vertical th, #contenu .table-vertical td, #contenu .table-vertical tr {
	    display: block;
	}
	#contenu .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: center;
	    white-space: normal;
	    padding-top: 3px;
	    padding-bottom:3px;
	    height:25px;
	}
	
	#contenu .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%;font-size: 14px;
	}	

	/* #reseaux-partage-gauche */
	#reseaux-partage-gauche-conteneur {top: initial;bottom: 0;width: 100%;display: flex;transform: rotateY(0);top: initial!important;}
	#reseaux-partage-gauche-conteneur .reseau-partage {width: auto;flex: 1;}
	#reseaux-partage-gauche-conteneur .reseau-partage .reseau-partage-image {left: -0;border-radius: 0!important;    padding: 0!important;}
	#reseaux-partage-gauche-conteneur #reseau-partage-gauche-facebook .reseau-partage-image {padding: 7px 7px 3px 7px;}
    #reseaux-partage-gauche-conteneur .reseau-partage i{transform: rotateY(0);text-align: center;-webkit-transition: all 250ms ease-in-out;-moz-transition: all 250ms ease-in-out;-ms-transition: all 250ms ease-in-out;-o-transition: all 250ms ease-in-out;transition: all 250ms ease-in-out;}
    #reseaux-partage-gauche-conteneur .reseau-partage:hover .reseau-partage-image {left: 0;}
	#reseaux-partage-gauche-conteneur .reseau-partage:hover i {transform: translateX(5px);}
  
}

@media only screen and (max-width: 767px) {
	
	#accueil-bandes .accueil-bande img { padding: 0px 30px;}
	
	/* Table responsive */
	table.table-responsive { margin-bottom: 0; }
	.pinned { position: absolute; left: 0; top: 0; z-index:20; background: #fff; width: 181px; overflow: hidden; }
	.pinned table { border-right: none; border-left: none; width: 100%; }
	.pinned table th, .pinned table td, .pinned .table-responsive-label th,
	.pinned table th p, .pinned table td p,
	table.table-responsive th:first-child p, table.table-responsive td:first-child p, 
	table.table-responsive td:first-child p	{ text-align:left !important; margin-top:6px; }
	
	.pinned td:last-child { border-bottom: 0; }
	
	div.table-wrapper { position: relative; overflow: hidden; border-right: 1px solid #ccc; }
	div.table-wrapper div.scrollable table {}
	div.table-wrapper div.scrollable { overflow: scroll; overflow-y: hidden; }	
	
	table.table-responsive td, table.table-responsive th {  white-space: nowrap; overflow: hidden; }
	table.table-responsive thead th {}
	table.table-responsive th:first-child, table.table-responsive td:first-child, 
	table.table-responsive td:first-child, table.table-responsive.pinned td,
	table.table-responsive .table-responsive-label th:first-child	{opacity:0;  white-space: initial; }
	.pinned table th, .pinned table td, .pinned .table-responsive-label th,
	table.table-responsive th:first-child, table.table-responsive td:first-child, 
	table.table-responsive td:first-child, table.table-responsive.pinned td,
	table.table-responsive .table-responsive-label th:first-child	{ width:180px !important; max-width:180px; min-width:180px; word-wrap:break-word; box-sizing: border-box;-webkit-box-sizing: border-box;-moz-box-sizing: border-box;-khtml-box-sizing:border-box; }
	.table-responsive-label th.table-responsive-label-th {display:table-cell !important;}		
}

@media all and (max-width: 730px) {
	#accueil-paves .accueil-pave {width:100%; height:auto;}
	#accueil-paves .accueil-pave-texte {margin:15px 0 20px; min-height:0;}
}

@media all and (max-width: 710px) {
	#bandeau.sm #bandeau-contacts {height: 100%; display: flex; }
	#bandeau.sm #bandeau-reseaux {display:none;}
	    
	
	#bandeau-elements { height: 100%; display: -webkit-box;display: -ms-flexbox;display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center;}
	#bandeau #bandeau-reseaux {margin:10px 0 0;}
	
	#realisations-famille .conteneur.realisation { width:100%; margin:10px auto !important; max-height: 375px; } 	
}

@media all and (max-width: 685px) {	
		
	#menu .menu-element > a > span > span, 
	#menu .menu-element > a:visited > span > span, 
	#menu .menu-element > span > span {font-size:30px;}
	#menu .smenu-element > a > span, #menu .smenu-element > span {font-size: 25px;}	
		
	#accueil-bandes .accueil-bande {-webkit-box-orient: vertical !important; -webkit-box-direction: reverse !important; -ms-flex-direction: column-reverse !important; flex-direction: column-reverse !important;}
	#accueil-bandes .accueil-bande img {padding:0 0 15px 0;}
  
	.tableau-enfant {margin:5px !important;}
	.tableau-parent-2 .tableau-enfant,
	.tableau-parent-3 .tableau-enfant,
	.tableau-parent-4 .tableau-enfant,
	.tableau-parent-5 .tableau-enfant {width:calc(50% - 15px) !important; }
}


@media all and (max-width: 635px) {
	#rassurances .rassurance {display:block;}
	#rassurances .rassurance-nom {margin:25px 0 0;}
}

@media all and (max-width: 625px) {	
		
	#menu .menu-element, 
	#menu .menu-element.menu-grand {  padding: 0 0 10px 40px;}
	
	/* Renseignement petite barre */
	#contenu .renseignement-titre {width: 100%;-webkit-box-flex: initial;-ms-flex: initial;flex: initial;min-width: 0;}
	#contenu .renseignement-titre::after {display:none;}
	#contenu .renseignement-contenu {width:100%;padding: 5px 0 5px 0px;min-width: 0;} 
}

@media all and (max-width: 605px) {
    	
	#global h1,
	#global h2.h1,
	.white-popup h1 { line-height: 32px; font-size:30px; }
	#global h1 em,
	#global h2.h1 em,
	.white-popup h1 em { font-size: 18px; line-height: 27px;}
		
	#global h2:not(.h1), .white-popup h2:not(.h1) {font-size: 24px; line-height: 27px;}
		
	#contenu p,
	#contenu ul,
	#contenu h2,
	#contenu h3 {margin-left:0px;}
	#contenu ul ul {margin-left: 20px;}
			
	#accueil-bandes .accueil-bande span {font-size:25px;}		
			
	#accueil-presentation-texte {font-size: 16px; line-height: 25px;}
	#accueil-presentation-texte h2 {margin-bottom:15px;}
	#accueil-presentation-texte .bouton-fleche {margin-top: 20px !important;}		
				
	/* Table responsive */
	.pinned {width:136px;}
	.pinned table th, .pinned table td, .pinned .table-responsive-label th,
	table.table-responsive th:first-child, table.table-responsive td:first-child, 
	table.table-responsive td:first-child, table.table-responsive.pinned td,
	table.table-responsive .table-responsive-label th:first-child {max-width:115px; width:115px !important; min-width:115px;font-size:15px;  box-sizing: initial;-webkit-box-sizing: initial;-moz-box-sizing: initial;-khtml-box-sizing:initial;  }
	table.table-responsive th {font-size:15px;}
		
}


@media all and (max-width:580px) {
		
	#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;}
	
	#realisations-filtres .filtre {width: calc(50% - 62px); -webkit-box-flex: unset;-ms-flex: unset;flex: unset;}
			
	#gabarit-equipe article {width: calc(100% - 10px); height: 250px; margin: 10px auto;}
	
}


@media all and (max-width:500px) {
			
	#menu .menu-element, 
	#menu .menu-element.menu-grand {padding:0 0 10px 20px;}
	#menu .menu-element > a > span > span,
	#menu .menu-element > a:visited > span > span,
	#menu .menu-element > span > span {font-size:25px;}
	#menu .smenu-element > a > span, #menu .smenu-element > span { font-size: 22px;}
	
	.tableau-parent-2 .tableau-enfant,
	.tableau-parent-3 .tableau-enfant,
	.tableau-parent-4 .tableau-enfant,
	.tableau-parent-5 .tableau-enfant {margin:5px auto !important; width:100% !important; }
}

@media all and (max-width:480px) {
	#bandeau-mobile {width:30px; left:10px;}
	#bandeau-mobile span {font-size:12px; margin:10px 0;}
	#bandeau-mobile .hamburger {width:100%;}
	#bandeau-mobile .hamburger::before, #bandeau-mobile .hamburger::after { width:100%;}
	#bandeau-mobile .hamburger::before {top:-9px;}
	#bandeau-mobile .hamburger::after {bottom: -9px;}
	
	#bandeau-elements {display:flex; right:10px;}
	#bandeau #bandeau-reseaux {display:none;}
	#bandeau-coordoonees {display:block; text-align:center;}
	
		
	#contenu #paginator .pagination-fleche {display:none !important;}
	
	#accueil-bandes .accueil-bande span {font-size:20px;}
	#accueil-bandes .accueil-bande img {  width: 40px; height: 40px;}
}

@media all and (max-width:450px) {	
	
	#rassurances .rassurance {display:flex; width: calc(100% - 30px); margin: 10px auto; }
	#rassurances .rassurance-nom {margin:0 0 0 25px;}
	
	/* LABEL SUR LE COTÉ */
	.table-responsive-50-pourcent td {padding-left: 110px;}
	.table-responsive-50-pourcent td.nolabel {padding-left: 8px; text-align:center;}
	.table-responsive-50-pourcent td::before {width: 90px;padding: 5px;text-align: center;justify-content: center;line-height: 15px;}
	.table-responsive-50-pourcent td.nolabel::before {display:none;}

	/* LABEL AU DESSUS */
	.table-responsive-100-pourcent td {padding: 0 0 7px; text-align: center !important;}
	.table-responsive-100-pourcent td.nolabel { background: #fff !important;}
	.table-responsive-100-pourcent td::before {padding: 8px 5px; margin-bottom: 10px; text-align: center;justify-content: center;line-height: 15px;position: relative;top: 0;left: 0;width: 100%;	box-sizing: border-box;}
	.table-responsive-100-pourcent td.nolabel::before {display:none;}
	.table-responsive-100-pourcent tr {margin: 0 0 38px;}
	
	/* Table responsive */
	.pinned {width:116px;}
	.pinned table th, .pinned table td, .pinned .table-responsive-label th,
	table.table-responsive th:first-child, table.table-responsive td:first-child, 
	table.table-responsive td:first-child, table.table-responsive.pinned td,
	table.table-responsive .table-responsive-label th:first-child {max-width:95px; width:95px !important; font-size:14px; box-sizing: border-box;-webkit-box-sizing: border-box;-moz-box-sizing: border-box;-khtml-box-sizing:border-box; }
	
	/* MODULE REALISATIONS AVEC FILTRES */	
	#realisations-famille .contenu .titre, 
	#realisations-famille .contenu .titre a, 
	#realisations-famille .contenu .titre a:visited {font-size:17px;}
	#realisations-famille .contenu .nom {font-size:15px;}	
}

/* Smartphone */
@media all and (max-width:435px) {	
	
	
	#realisations-filtres .filtre {width: calc(100% - 62px);}
	
	#contenu img { margin-left: auto !important; margin-right: auto !important;}
	
}
@media all and (max-width:405px) {
	#bandeau #logo a img { height: 63px;}
}

@media all and (max-width:385px) {
	#bandeau #logo {text-align: left; left: 29%;}	
	
	#gabarit-equipe article {height:340px;}
	
	#accueil-bandes .accueil-bande span {letter-spacing: 1px;}
}
