/* Remove Alert Browser - DO NOT TOUCH */
@supports (display: grid) {
  #checkBrowserCompatibility {
    display: none !important;
  }
}


/*-----------------*/
/* GRID SITE */
/*-----------------*/
#header {grid-area: header;}
#header-share {grid-area: headerShare;}
#slideactu {grid-area: slideactu;}
#h1 {grid-area: h1;}
#content {grid-area: content;}
#banner {grid-area: banner;}
#sections {grid-area: sections;}
#prestations {grid-area: prestations;}
#footer {grid-area: footer;}
#landingform {grid-area: landingform;}
#cta {grid-area: cta;}
#prestationsPage {grid-area: prestationsPage;}
#blocmaps {grid-area: blocmaps;}
#lebonpro {grid-area: lebonpro;}
#blocbreadcrumb {grid-area: blocbreadcrumb;}
#backBTsinglewoo {grid-area: backBTsinglewoo;}
#woonotice {grid-area: woonotice;}
#gallerysinglewoo {grid-area: gallerysinglewoo;}
#shortdesc {grid-area: shortdesc;}
#pricesinglewoo {grid-area: pricesinglewoo;}
#btformsinglewoo {grid-area: btformsinglewoo;}
#tabssinglewoo {grid-area: tabssinglewoo;}
#formagence{grid-area: formagence;}
#boxlink_agence{grid-area: boxlink_agence;}
#map_agence{grid-area: map_agence;}
#infoagence{grid-area: infoagence;}
#commentsbloc{grid-area: commentsbloc;}
#bannerHome{grid-area: bannerHome;}
#reservation{grid-area: reservation;}
#galleryHome{grid-area: galleryHome;}
#reassurances{grid-area: reassurances;}
#partenaires{grid-area: partenaires;}
#homeContact{grid-area: homeContact;}
#socialContact{grid-area: socialContact;}
#mapfooter{grid-area:mapfooter; }
#pageContent{grid-area:pageContent; }
#sectionContact{grid-area:sectionContact; }
#mainTitle{grid-area:mainTitle; }
#header-contact {grid-area: headerContact;}
#section-realisations {grid-area: sectionRealisations;}
#section-maps{grid-area: sectionmaps;}
#homeHeader{grid-area: homeHeader;}
#wrapContact{grid-area: wrapContact;}
#galleryFooter{grid-area: galleryFooter;}
#citationsHome{grid-area: citationsHome;}
#citationsHomeBis{grid-area: citationsHomeBis;}
#paiements{grid-area: paiements;}
#prestataires{grid-area: prestataires;}
#section-video{grid-area: video;}
#home_garantie {grid-area: garantie;}
#footer_form {grid-area: footerForm;}
#coordonneesFooter {grid-area: coordonneesFooter;}
#titleBP{grid-area: titleBP;}
#cta-section{grid-area: ctaSection;}
#contactform{grid-area: contactform;}
#products-home{grid-area: productsHome;}
#cta-boutique{grid-area: ctaBoutique;}
#visite{grid-area: visite;}
#title{grid-area:title; }
#imgContent{grid-area:imgContent; }
#sidebar{grid-area:sidebar;/* height: 100%; */position: relative;}
#main-content{grid-area:mainContent; }
#headerPage{grid-area:headerPage; }
#contentPage{grid-area:contentPage; }
#contentForm{grid-area:contentForm; }
#contentBP{grid-area:contentBP; }
#contentTitle{grid-area:contentTitle; }
#contentCoordonnees{grid-area:contentCoordonnees; }
#content-text {grid-area: contentText;}
#content-img {grid-area: contentImg;}
#pageTitle{grid-area:pageTitle; }
#main-img{grid-area:mainImgProduct; }

#wrappersite{
	max-width: 100%;
	width: 100%;
	margin: 0 auto;
	height: 100vh;
	display: grid;
	grid-row-gap: 0px;
	grid-column-gap: 0px;
	transition: 0.6s;
	position: relative;
	/* overflow-x: hidden; */
}

/* HOME */
body.home #wrappersite{
	grid-template-areas:
		    "header"
			"homeHeader"
			"content"
			"prestations"
			"sections"
			"visite"
			"partenaires"
			"footer";
	grid-template-columns: 1fr ;
	grid-template-rows: min-content repeat(11, minmax(min-content, auto));
}



/* PAGE - SINGLE */
/* PAGE - PARTENAIRES */
/* PAGE - GALERIE PHOTOS */
/* PAGE - 404 */
/* PAGE - MENTIONS LEGALES */
/* PAGE - PLAN DU SITE */
/* PAGE - CONTACT */
/* PAGE - ELEMENTS (généric) */
/* PAGE - PRESTATIONS */
/* PAGE - CATEGORY */
body.page-php #wrappersite,
body.single-php #wrappersite,
body.template-gallery-php #wrappersite,
body.template-prestations-php #wrappersite,
body.galerie #wrappersite,
body.pagenotfound #wrappersite,
body.template-mentions-legales-php #wrappersite,
body.template-plan-du-site-php #wrappersite,
body.template-plat-du-jour-php #wrappersite,
body.template-partenaires-php #wrappersite,
body.elements-php #wrappersite,
body.template-parent-page-php #wrappersite,
body.category-php #wrappersite,
body.template-rating-php #wrappersite,
body.woocommerce-category-php #wrappersite,
body.woocommerce-single-php #wrappersite,
body.template-formules-php #wrappersite{
	grid-template-areas:
		"header"
		"h1"
		"content"
		"footer";
	grid-template-columns: 1fr;
	grid-template-rows: min-content min-content minmax(min-content, auto) min-content;
}

body.template-apropos-php #wrappersite{
	grid-template-areas:
		"header"
		"h1"
		"content"
		"visite"
		"footer";
	grid-template-columns: 1fr ;
	grid-template-rows: min-content min-content minmax(min-content, auto) min-content;
}

body.template-contact-php #wrappersite {
    grid-template-areas:
		"header"
		"h1"
		"content"
		"mapfooter"
		"footer";
	grid-template-columns: 1fr ;
	grid-template-rows: min-content min-content minmax(min-content, auto) min-content;
}



/* PAGE - AGENCE */
body.agences #wrappersite{
	grid-template-areas:
		"header"
		"h1"
		"content"
		"footer"
	;
	grid-template-columns: 1fr;
	grid-template-rows:  min-content min-content  minmax(max-content, auto)  min-content;
}




body.single.agences #wrappersite{
	grid-template-areas:
		"header			header		header"
		"h1				h1			h1"
		"map_agence		content		content"
		"infoagence		content		content"
		"boxlink_agence	formagence	formagence"
		"footer			footer		footer"
	;
	grid-template-columns: 500px 1fr 1fr;
	grid-template-rows:   repeat(4, minmax(min-content, auto)) max-content min-content;
}

@media(max-width:1280px){
	body.single.agences #wrappersite{
		grid-template-areas:
			"header"
			"h1"
			"map_agence"
			"infoagence"
			"content"
			"boxlink_agence"
			"formagence"
			"footer"
		;
		grid-template-columns: 1fr;
		grid-template-rows:   repeat(4, minmax(min-content, auto)) max-content repeat(3, minmax(min-content, auto));
	}
}




/* PAGE - WOOCOMMERCE */


#gridsinglewoo{
	grid-template-areas:
		"blocbreadcrumb             blocbreadcrumb"
		"backBTsinglewoo			backBTsinglewoo"
		"pageTitle					pageTitle"
		"shortdesc                   shortdesc"
		"mainImgProduct                mainImgProduct"
		"gallerysinglewoo				tabssinglewoo"
		"gallerysinglewoo           pricesinglewoo"
		"gallerysinglewoo 			btformsinglewoo"
		;
	grid-template-columns: 1fr  2fr;
	grid-template-rows:  repeat(5, minmax(min-content, auto));
}



@media(max-width:736px){
	#gridsinglewoo{
		grid-template-areas:
		    "blocbreadcrumb"
			"backBTsinglewoo"
			"pageTitle"
		       "shortdesc"
		       "mainImgProduct"
			
			
			
			"tabssinglewoo"
			
			"pricesinglewoo"
			"btformsinglewoo"
			"gallerysinglewoo"

		;
		grid-template-columns: 1fr;
		grid-template-rows:  repeat(8, minmax(min-content, auto));
	}
}


/* PAGE - RATING */

body.template-rating-php #wrappersite #content .wrappercontent{
	grid-template-areas:
		"titleBP            titleBP"
		"lebonpro  contentBP";
	grid-template-columns: 1fr 3fr;
	grid-template-rows: repeat(1, minmax(min-content, auto));
	grid-gap: 30px;
}


@media(max-width:736px){
	body.template-rating-php #wrappersite #content .wrappercontent{
		grid-template-areas:
			"titleBP"
			"lebonpro"
			"contentBP";
		grid-template-columns: 1fr;
		grid-template-rows: repeat(2, minmax(min-content, auto));
	}
}






body.template-contact-php #content .wrappercontent{
	grid-template-areas:
		"contentTitle"
		" contentCoordonnees";
	grid-template-columns: 1fr ;
	grid-template-rows: repeat(2, minmax(min-content, auto));
	grid-column-gap: 40px;
	display: grid;
	align-items: center;
}


/* PAGE - AVIS */
body.template-avis-php #wrappersite{
	grid-template-areas:
		"header		header"
		"h1			h1"
		"content	commentsbloc"
		"footer 	footer"
	;
	grid-template-columns: 1fr 400px;
	grid-template-rows: min-content min-content minmax(min-content, auto) min-content;
}
@media(max-width:980px){
	body.template-avis-php #wrappersite{
		grid-template-areas:
			"header"
			"h1"
			"content"
			"commentsbloc"
			"footer"
		;
		grid-template-columns: 1fr;
		grid-template-rows: min-content min-content minmax(min-content, auto) min-content min-content;
	}
}



.wrappercontent{
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
}
.wrappercontent.medium{
	max-width: 1000px;
}
.wrappercontent.large{
	max-width: 1400px;
}

.wrappercontent.xlarge{
	max-width: 1700px;
}
   

/*-----------------*/
/* GRID HEADER */
/*-----------------*/
#logo {grid-area: logo;}
#logo-wrapper {grid-area: logowrap;}
#navprimary {grid-area: navprimary;}
#share {grid-area: share;}
#noshare {grid-area: noshare;}
#infotelfixe {grid-area: infotelfixe;}
#infotelport {grid-area: infotelport;}
#infoadresse {grid-area: infoadresse;}
#infoadresseBis	{grid-area: infoadresseBis;}
#infoouverture {grid-area: infoouverture;}
#autotraduction {grid-area: autotraduction;}
#tarif-midi{grid-area: tarifmidi;}
#infocontact{grid-area: infocontact;}
#infotel {grid-area: infotel;}
#infohoraires{grid-area: infohoraires;}
#headerContact{grid-area: headerContact;}
#header-logo{grid-area: headerLogo;}
#header-coordonnees{grid-area: headerCoordonnees;}
#infotitle{grid-area: infotitle;}



/*-----------------*/
/* GRID FOOTER */
/*-----------------*/
#logofooter{grid-area:logofooter; }
#navfooter{grid-area:navfooter; }
#logos-list{grid-area:logoslist;}
#addrfooter{grid-area:addrfooter; }
#footerlinks{grid-area:footerlinks; }
#infotel_footer{grid-area:infotelFooter; }
#marqueAlsace{grid-area:marqueAlsace; }
#infotelfixe_footer{grid-area:infotelfixefooter; }
#infotelport_footer{grid-area:infotelportfooter; }
#addrfooter_txt{grid-area:addrfootertxt; }
#addrfooterBis_txt{grid-area:addrfooterBistxt; }
#infohorairesFooter{grid-area:infohorairesFooter; }
#infoouvertureFooter{grid-area:infoouvertureFooter; }
#infoadresseFooter{grid-area:infoadresseFooter; }
#infotelFooter{grid-area:infotelFooter; }
#infotelportFooter{grid-area:infotelportFooter; }
#infotelfixeFooter{grid-area:infotelfixeFooter; }
#infotelfooter{grid-area:infotelfooter; }
#infoadresseBisFooter	{grid-area: infoadresseBisFooter;}
#listwidgetagence{grid-area:listwidgetagence; }
#mapwidgetagence{grid-area:mapwidgetagence; }

#footer #footerbloc > .wrappercontent{
	align-items: center;
	justify-items: center;
	display: grid;
	grid-row-gap: 40px;
	grid-column-gap: 50px;
	transition: 0.6s;
	grid-template-areas:
		"mapwidgetagence             listwidgetagence        "
		"footerlinks            footerlinks        ";
	grid-template-columns: 1fr   1fr;
	grid-template-rows: repeat(2, minmax(min-content, auto));
}
body.template-contact-php #footer #footerbloc > .wrappercontent{
	grid-template-areas:
		"footerlinks                    ";
	grid-template-columns: 1fr   ;
	grid-template-rows: repeat(1, minmax(min-content, auto));
}
@media(max-width:1280px){
	#footer #footerbloc > .wrappercontent{
		grid-template-columns: 1fr   2fr;
		grid-column-gap: 50px;
	}

}
@media(max-width:1024px){
	#footer #footerbloc > .wrappercontent{
		grid-template-columns: 250px   1fr;
		grid-column-gap: 30px;
	}

}
@media(max-width:980px){
	#footer #footerbloc > .wrappercontent{
		grid-template-areas:
		"listwidgetagence"
		"mapwidgetagence"
		"footerlinks";
	grid-template-columns: 1fr   ;
	}

}

	/* FOOTER - NoMap */
/* 	body.nofootermap #footerbloc{
		align-items: center;
		justify-items: center;
		display: grid;
		grid-row-gap: 15px;
		grid-column-gap: 10px;
		transition: 0.6s;
		grid-template-areas:
			"logoslist"
			"logofooter"
			"addrfooter"
			"footerlinks";
		grid-template-columns: 1fr ;
		grid-template-rows: repeat(4, minmax(min-content, auto));
	}

	 */



/*-----------------*/
/* GRID STRUCTURE */
/* Media Query : xl, lg, md, sm, xs */
/*-----------------*/

/*Taille des gouttières*/
.undergrid.gutter1 > *, .grid.gutter1{grid-gap: 1px;}
.undergrid.gutter2 > *, .grid.gutter2{grid-gap: 2px;}
.undergrid.gutter5 > *, .grid.gutter5{grid-gap: 5px;}
.undergrid.gutter10 > *, .grid.gutter10{grid-gap: 10px;}
.undergrid.gutter20 > *, .grid.gutter20{grid-gap: 20px;}
.undergrid.gutter30 > *, .grid.gutter30{grid-gap: 30px;}
.undergrid.gutter40 > *, .grid.gutter40{grid-gap: 40px;}

/*Def Grid*/
.undergrid > *, .grid{
	display:grid;
	align-items: start;
	justify-items: stretch;
}

/* Alignement des items du conteneur grid/flex--------*/
/* Mode : vertical */
.undergrid.align-items_start > *, .grid.align-items_start{align-items: start;}
.undergrid.align-items_end > *, .grid.align-items_end{align-items: end;}
.undergrid.align-items_center > *, .grid.align-items_center{align-items: center;}
.undergrid.align-items_stretch > *, .grid.align-items_stretch{align-items: stretch;}
	.underflex.align-items_end > *, .flex.align-items_end{align-items:flex-end;}
	.underflex.align-items_center > *, .flex.align-items_center{align-items:center;}
	.underflex.align-items_start > *, .flex.align-items_start{align-items:flex-start;}
	.underflex.align-items_stretch > *, .flex.align-items_stretch{align-items:stretch;}
/* Mode : horizontal */
.undergrid.justify-items_start > *, .grid.justify-items_start{justify-items: start;}
.undergrid.justify-items_end > *, .grid.justify-items_end{justify-items: end;}
.undergrid.justify-items_center > *, .grid.justify-items_center{justify-items: center;}
.undergrid.justify-items_stretch > *, .grid.justify-items_stretch{justify-items: stretch;}
	.underflex.justify-items_end > *, .flex.justify-items_end{justify-items: flex-end;}
	.underflex.justify-items_start > *, .flex.justify-items_start{justify-items: flex-start;}
	.underflex.justify-items_center > *, .flex.justify-items_center{justify-items: center;}
	.underflex.justify-items_stretch > *, .flex.justify-items_stretch{justify-items: flex-stretch;}

/* Alignement du conteneur grid/flex --------*/
/* Mode : vertical */
.undergrid.align-content_start > *, .grid.align-content_start{align-content: start;}
.undergrid.align-content_end > *, .grid.align-content_end{align-content: end;}
.undergrid.align-content_center > *, .grid.align-content_center{align-content: center;}
.undergrid.align-content_stretch > *, .grid.align-content_stretch{align-content: stretch;}
	.underflex.align-content_start > *, .flex.align-content_start{align-content: flex-start;}
	.underflex.align-content_end > *, .flex.align-content_end{align-content: flex-end;}
	.underflex.align-content_center > *, .flex.align-content_center{align-content: center;}
	.underflex.align-content_stretch > *, .flex.align-content_stretch{align-content: stretch;}
/* Mode : horizontal */
.undergrid.justify-content_start > *, .grid.justify-content_start{justify-content: start;}
.undergrid.justify-content_end > *, .grid.justify-content_end{justify-content: end;}
.undergrid.justify-content_center > *, .grid.justify-content_center{justify-content: center;}
.undergrid.justify-content_stretch > *, .grid.justify-content_stretch{justify-content: stretch;}
.undergrid.justify-content_space-around > *, .grid.justify-content_space-around{justify-content: space-around;}
.undergrid.justify-content_space-between > *, .grid.justify-content_space-between{justify-content: space-between;}
.undergrid.justify-content_space-evenly > *, .grid.justify-content_space-evenly{justify-content: space-evenly;}
	.underflex.justify-content_start > *, .flex.justify-content_start{justify-content: flex-start;}
	.underflex.justify-content_end > *, .flex.justify-content_end{justify-content: flex-end;}
	.underflex.justify-content_center > *, .flex.justify-content_center{justify-content: center;}
	.underflex.justify-content_stretch > *, .flex.justify-content_stretch{justify-content: stretch;}
	.underflex.justify-content_space-around > *, .flex.justify-content_space-around{justify-content: space-around;}
	.underflex.justify-content_space-between > *, .flex.justify-content_space-between{justify-content: space-between;}
	.underflex.justify-content_space-evenly > *, .flex.justify-content_space-evenly{justify-content: space-evenly;}

/* Definition d'une grid en X colomns en largeur fixe */
.undergrid.g1 > *, .grid.g1{grid-template-columns: repeat(1, 1fr);}
.undergrid.g2 > *, .grid.g2{grid-template-columns: repeat(2, 1fr);}
.undergrid.g3 > *, .grid.g3{grid-template-columns: repeat(3, 1fr);}
.undergrid.g4 > *, .grid.g4{grid-template-columns: repeat(4, 1fr);}
.undergrid.g5 > *, .grid.g5{grid-template-columns: repeat(5, 1fr);}
.undergrid.g6 > *, .grid.g6{grid-template-columns: repeat(6, 1fr);}


/* Definition d'une grid en X colomns en largeur variable */
.undergrid.g1auto > *, .grid.g1auto{grid-template-columns: repeat(1, auto);}
.undergrid.g2auto > *, .grid.g2auto{grid-template-columns: repeat(2, auto);}
.undergrid.g3auto > *, .grid.g3auto{grid-template-columns: repeat(3, auto);}
.undergrid.g4auto > *, .grid.g4auto{grid-template-columns: repeat(4, auto);}
.undergrid.g5auto > *, .grid.g5auto{grid-template-columns: repeat(5, auto);}
.undergrid.g6auto > *, .grid.g6auto{grid-template-columns: repeat(6, auto);}
.undergrid.g7auto > *, .grid.g7auto{grid-template-columns: repeat(7, auto);}
.undergrid.g8auto > *, .grid.g8auto{grid-template-columns: repeat(8, auto);}
.undergrid.g9auto > *, .grid.g9auto{grid-template-columns: repeat(9, auto);}
.undergrid.g10auto > *, .grid.g10auto{grid-template-columns: repeat(10, auto);}


/* Définition d'une grid d'un nombre non défini de colones de grid mais dont la taille est de X px */
/* >> auto-fill : DES COLONES SUPPLEMENTAIRES SONT CRÉES AU BESOINS */
.undergrid.auto-fill-10  > *, .grid.auto-fill-10 {grid-template-columns: repeat(auto-fill, 10px);}
.undergrid.auto-fill-10  > *, .grid.auto-fill-10 {grid-template-columns: repeat(auto-fill, 10px);}
.undergrid.auto-fill-20  > *, .grid.auto-fill-20 {grid-template-columns: repeat(auto-fill, 20px);}
.undergrid.auto-fill-30  > *, .grid.auto-fill-30 {grid-template-columns: repeat(auto-fill, 30px);}
.undergrid.auto-fill-40  > *, .grid.auto-fill-40 {grid-template-columns: repeat(auto-fill, 40px);}
.undergrid.auto-fill-50  > *, .grid.auto-fill-50 {grid-template-columns: repeat(auto-fill, 50px);}
.undergrid.auto-fill-60  > *, .grid.auto-fill-60 {grid-template-columns: repeat(auto-fill, 60px);}
.undergrid.auto-fill-80  > *, .grid.auto-fill-80 {grid-template-columns: repeat(auto-fill, 80px);}
.undergrid.auto-fill-100 > *, .grid.auto-fill-100{grid-template-columns: repeat(auto-fill, 100px);}
.undergrid.auto-fill-120 > *, .grid.auto-fill-120{grid-template-columns: repeat(auto-fill, 120px);}
.undergrid.auto-fill-140 > *, .grid.auto-fill-140{grid-template-columns: repeat(auto-fill, 140px);}
.undergrid.auto-fill-160 > *, .grid.auto-fill-160{grid-template-columns: repeat(auto-fill, 160px);}
.undergrid.auto-fill-180 > *, .grid.auto-fill-180{grid-template-columns: repeat(auto-fill, 180px);}
.undergrid.auto-fill-200 > *, .grid.auto-fill-200{grid-template-columns: repeat(auto-fill, 200px);}
.undergrid.auto-fill-225 > *, .grid.auto-fill-225{grid-template-columns: repeat(auto-fill, 225px);}
.undergrid.auto-fill-250 > *, .grid.auto-fill-250{grid-template-columns: repeat(auto-fill, 250px);}
.undergrid.auto-fill-300 > *, .grid.auto-fill-300{grid-template-columns: repeat(auto-fill, 300px);}
.undergrid.auto-fill-350 > *, .grid.auto-fill-350{grid-template-columns: repeat(auto-fill, 350px);}
.undergrid.auto-fill-400 > *, .grid.auto-fill-400{grid-template-columns: repeat(auto-fill, 400px);}

/* >> auto-fit : DES COLONES SUPPLEMENTAIRES NE SONT ALORS PAS CRÉES */
.undergrid.auto-fit-10  > *, .grid.auto-fit-10 {grid-template-columns: repeat(auto-fit, 10px);}
.undergrid.auto-fit-10  > *, .grid.auto-fit-10 {grid-template-columns: repeat(auto-fit, 10px);}
.undergrid.auto-fit-20  > *, .grid.auto-fit-20 {grid-template-columns: repeat(auto-fit, 20px);}
.undergrid.auto-fit-30  > *, .grid.auto-fit-30 {grid-template-columns: repeat(auto-fit, 30px);}
.undergrid.auto-fit-40  > *, .grid.auto-fit-40 {grid-template-columns: repeat(auto-fit, 40px);}
.undergrid.auto-fit-50  > *, .grid.auto-fit-50 {grid-template-columns: repeat(auto-fit, 50px);}
.undergrid.auto-fit-60  > *, .grid.auto-fit-60 {grid-template-columns: repeat(auto-fit, 60px);}
.undergrid.auto-fit-80  > *, .grid.auto-fit-80 {grid-template-columns: repeat(auto-fit, 80px);}
.undergrid.auto-fit-90  > *, .grid.auto-fit-90 {grid-template-columns: repeat(auto-fit, 90px);}
.undergrid.auto-fit-100 > *, .grid.auto-fit-100{grid-template-columns: repeat(auto-fit, 100px);}
.undergrid.auto-fit-120 > *, .grid.auto-fit-120{grid-template-columns: repeat(auto-fit, 120px);}
.undergrid.auto-fit-140 > *, .grid.auto-fit-140{grid-template-columns: repeat(auto-fit, 140px);}
.undergrid.auto-fit-160 > *, .grid.auto-fit-160{grid-template-columns: repeat(auto-fit, 160px);}
.undergrid.auto-fit-180 > *, .grid.auto-fit-180{grid-template-columns: repeat(auto-fit, 180px);}
.undergrid.auto-fit-200 > *, .grid.auto-fit-200{grid-template-columns: repeat(auto-fit, 200px);}
.undergrid.auto-fit-225 > *, .grid.auto-fit-225{grid-template-columns: repeat(auto-fit, 225px);}
.undergrid.auto-fit-250 > *, .grid.auto-fit-250{grid-template-columns: repeat(auto-fit, 250px);}
.undergrid.auto-fit-300 > *, .grid.auto-fit-300{grid-template-columns: repeat(auto-fit, 300px);}
.undergrid.auto-fit-350 > *, .grid.auto-fit-350{grid-template-columns: repeat(auto-fit, 350px);}
.undergrid.auto-fit-400 > *, .grid.auto-fit-400{grid-template-columns: repeat(auto-fit, 400px);}

/* >> (minmax)auto-fill : DES COLONES SUPPLEMENTAIRES SONT CRÉES AU BESOINS d'une taille min de Xpx et max de 1fr */
.undergrid.auto-fill-min10  > *, .grid.auto-fill-min10 {grid-template-columns: repeat(auto-fill, minmax(10px, 1fr));}
.undergrid.auto-fill-min20  > *, .grid.auto-fill-min20 {grid-template-columns: repeat(auto-fill, minmax(20px, 1fr));}
.undergrid.auto-fill-min30  > *, .grid.auto-fill-min30 {grid-template-columns: repeat(auto-fill, minmax(30px, 1fr));}
.undergrid.auto-fill-min40  > *, .grid.auto-fill-min40 {grid-template-columns: repeat(auto-fill, minmax(40px, 1fr));}
.undergrid.auto-fill-min50  > *, .grid.auto-fill-min50 {grid-template-columns: repeat(auto-fill, minmax(50px, 1fr));}
.undergrid.auto-fill-min60  > *, .grid.auto-fill-min60 {grid-template-columns: repeat(auto-fill, minmax(60px, 1fr));}
.undergrid.auto-fill-min80  > *, .grid.auto-fill-min80 {grid-template-columns: repeat(auto-fill, minmax(80px, 1fr));}
.undergrid.auto-fill-min100 > *, .grid.auto-fill-min100{grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));}
.undergrid.auto-fill-min120 > *, .grid.auto-fill-min120{grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));}
.undergrid.auto-fill-min140 > *, .grid.auto-fill-min140{grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));}
.undergrid.auto-fill-min160 > *, .grid.auto-fill-min160{grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));}
.undergrid.auto-fill-min180 > *, .grid.auto-fill-min180{grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));}
.undergrid.auto-fill-min200 > *, .grid.auto-fill-min200{grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));}
.undergrid.auto-fill-min225 > *, .grid.auto-fill-min225{grid-template-columns: repeat(auto-fill, minmax(225px, 1fr));}
.undergrid.auto-fill-min250 > *, .grid.auto-fill-min250{grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));}
.undergrid.auto-fill-min300 > *, .grid.auto-fill-min300{grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));}
.undergrid.auto-fill-min350 > *, .grid.auto-fill-min350{grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));}
.undergrid.auto-fill-min400 > *, .grid.auto-fill-min400{grid-template-columns: repeat(auto-fill, minmax(400px, 1fr));}

/* >> (minmax)auto-fit : DES COLONES SUPPLEMENTAIRES NE SONT ALORS PAS CRÉES d'une taille min de Xpx et max de 1fr */
.undergrid.auto-fit-min10  > *, .grid.auto-fit-min10 {grid-template-columns: repeat(auto-fit, minmax(10px, 1fr));}
.undergrid.auto-fit-min20  > *, .grid.auto-fit-min20 {grid-template-columns: repeat(auto-fit, minmax(20px, 1fr));}
.undergrid.auto-fit-min30  > *, .grid.auto-fit-min30 {grid-template-columns: repeat(auto-fit, minmax(30px, 1fr));}
.undergrid.auto-fit-min40  > *, .grid.auto-fit-min40 {grid-template-columns: repeat(auto-fit, minmax(40px, 1fr));}
.undergrid.auto-fit-min50  > *, .grid.auto-fit-min50 {grid-template-columns: repeat(auto-fit, minmax(50px, 1fr));}
.undergrid.auto-fit-min60  > *, .grid.auto-fit-min60 {grid-template-columns: repeat(auto-fit, minmax(60px, 1fr));}
.undergrid.auto-fit-min80  > *, .grid.auto-fit-min80 {grid-template-columns: repeat(auto-fit, minmax(80px, 1fr));}
.undergrid.auto-fit-min100 > *, .grid.auto-fit-min100{grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));}
.undergrid.auto-fit-min120 > *, .grid.auto-fit-min120{grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));}
.undergrid.auto-fit-min140 > *, .grid.auto-fit-min140{grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));}
.undergrid.auto-fit-min160 > *, .grid.auto-fit-min160{grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));}
.undergrid.auto-fit-min180 > *, .grid.auto-fit-min180{grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));}
.undergrid.auto-fit-min200 > *, .grid.auto-fit-min200{grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));}
.undergrid.auto-fit-min225 > *, .grid.auto-fit-min225{grid-template-columns: repeat(auto-fit, minmax(225px, 1fr));}
.undergrid.auto-fit-min250 > *, .grid.auto-fit-min250{grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));}
.undergrid.auto-fit-min300 > *, .grid.auto-fit-min300{grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));}
.undergrid.auto-fit-min350 > *, .grid.auto-fit-min350{grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));}
.undergrid.auto-fit-min400 > *, .grid.auto-fit-min400{grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));}

/* Colspan for grid */
.grid > .col.c2{grid-column: span 2;}
.grid > .col.c3{grid-column: span 3;}
.grid > .col.c4{grid-column: span 4;}
.grid > .col.c5{grid-column: span 5;}
.grid > .col.c6{grid-column: span 6;}

/* Colspan auto-correct */
.grid.g1>.col.c2, .grid.g1>.col.c3, .grid.g1>.col.c4, .grid.g1>.col.c5, .grid.g1>.col.c6 {grid-column: span 1 !important;}
.grid.g2>.col.c3, .grid.g2>.col.c4, .grid.g2>.col.c5, .grid.g2>.col.c6 {grid-column: span 2 !important;}
.grid.g3>.col.c4, .grid.g3>.col.c5, .grid.g3>.col.c6 {grid-column: span 3 !important;}
.grid.g4>.col.c5, .grid.g4>.col.c6 {grid-column: span 4 !important;}
.grid.g5>.col.c6 {grid-column: span 5 !important;}

/* Rowspan for grid */
.grid > .col.rowspan2{grid-row: span 2;}
.grid > .col.rowspan3{grid-row: span 3;}
.grid > .col.rowspan4{grid-row: span 4;}
.grid > .col.rowspan5{grid-row: span 5;}
.grid > .col.rowspan6{grid-row: span 6;}




/*-----------------*/
/* FLEX STRUCTURE */
/* Media Query : xl, lg, md, sm, xs */
/*-----------------*/

/* Def Flex */
.underflex > *, .flex{
	display: flex;
	align-items: flex-start;
	justify-items: stretch;
}

/* Flex row Direction */
.underflex.row > *, .flex.row {
  flex-direction: row;
  flex-wrap: wrap;
  width: 100%;
}

/* Flex col Direction */
.underflex.col > *, .flex.col {
  flex-direction: column;
  flex-basis: 100%;
  flex: 1;
}

/* Flex wrap */
.underflex.wrap> *, .flex.wrap{flex-wrap: wrap;}

/* Flex predéfinir un nombre de grid en flex */
.underflex.f1 > * > *, .flex.f1 > * {width: 100%;}
.underflex.f2 > * > *, .flex.f2 > * {width: 50%;}
.underflex.f3 > * > *, .flex.f3 > * {width: calc(100% / 3);}
.underflex.f4 > * > *, .flex.f4 > * {width: 25%;}
.underflex.f5 > * > *, .flex.f5 > * {width: 20%;}
.underflex.f6 > * > *, .flex.f6 > * {width: calc(100% / 6);}

.underflex.forcedwidth.f1 > * > *, .flex.forcedwidth.f1 > * {min-width: 100%;}
.underflex.forcedwidth.f2 > * > *, .flex.forcedwidth.f2 > * {min-width: 50%;}
.underflex.forcedwidth.f3 > * > *, .flex.forcedwidth.f3 > * {min-width: calc(100% / 3);}
.underflex.forcedwidth.f4 > * > *, .flex.forcedwidth.f4 > * {min-width: 25%;}
.underflex.forcedwidth.f5 > * > *, .flex.forcedwidth.f5 > * {min-width: 20%;}
.underflex.forcedwidth.f6 > * > *, .flex.forcedwidth.f6 > * {min-width: calc(100% / 6);}


/* colspan for flex */
.underflex > * > .col.c1, .flex > .col.c1{ width: calc(100% / 6); }
.underflex > * > .col.c2, .flex > .col.c2{ width: calc(100% / 6 * 2); }
.underflex > * > .col.c3, .flex > .col.c3{ width: calc(100% / 6 * 3); }
.underflex > * > .col.c4, .flex > .col.c4{ width: calc(100% / 6 * 4); }
.underflex > * > .col.c5, .flex > .col.c5{ width: calc(100% / 6 * 5); }
.underflex > * > .col.c6, .flex > .col.c6{ width: 100%; }




/*-----------------*/
/* RESPONSIVE STRUCTURE */
/* Media Query : xl, lg, md, sm, xs */
/*-----------------*/

@media  (max-width:1690px) {
	.undergrid.xl-1 > *, .grid.xl-1{grid-template-columns: repeat(1, 1fr) !important;}
	.undergrid.xl-2 > *, .grid.xl-2{grid-template-columns: repeat(2, 1fr) !important;}
	.undergrid.xl-3 > *, .grid.xl-3{grid-template-columns: repeat(3, 1fr) !important;}
	.undergrid.xl-4 > *, .grid.xl-4{grid-template-columns: repeat(4, 1fr) !important;}
	.undergrid.xl-5 > *, .grid.xl-5{grid-template-columns: repeat(5, 1fr) !important;}
	.undergrid.xl-6 > *, .grid.xl-6{grid-template-columns: repeat(6, 1fr) !important;}

	.grid > .col.xl-1{grid-column: span 1 !important;}
	.grid > .col.xl-2{grid-column: span 2 !important;}
	.grid > .col.xl-3{grid-column: span 3 !important;}
	.grid > .col.xl-4{grid-column: span 4 !important;}
	.grid > .col.xl-5{grid-column: span 5 !important;}
	.grid > .col.xl-6{grid-column: span 6 !important;}

	.grid.xl-1 > .col:not([class*="xl-"]),
	.grid.xl-2 > .col:not([class*="xl-"]),
	.grid.xl-3 > .col:not([class*="xl-"]),
	.grid.xl-4 > .col:not([class*="xl-"]),
	.grid.xl-5 > .col:not([class*="xl-"]),
	.grid.xl-6 > .col:not([class*="xl-"]){grid-column: span 1 !important;}

	.grid.xl-1 > .col.xl-2{grid-column: span 1 !important;}
	.grid.xl-1 > .col.xl-3{grid-column: span 1 !important;}
	.grid.xl-1 > .col.xl-4{grid-column: span 1 !important;}
	.grid.xl-1 > .col.xl-5{grid-column: span 1 !important;}
	.grid.xl-1 > .col.xl-6{grid-column: span 1 !important;}
	.grid.xl-2 > .col.xl-3{grid-column: span 2 !important;}
	.grid.xl-2 > .col.xl-4{grid-column: span 2 !important;}
	.grid.xl-2 > .col.xl-5{grid-column: span 2 !important;}
	.grid.xl-2 > .col.xl-6{grid-column: span 2 !important;}
	.grid.xl-3 > .col.xl-4{grid-column: span 3 !important;}
	.grid.xl-3 > .col.xl-5{grid-column: span 3 !important;}
	.grid.xl-3 > .col.xl-6{grid-column: span 3 !important;}
	.grid.xl-4 > .col.xl-5{grid-column: span 4 !important;}
	.grid.xl-4 > .col.xl-6{grid-column: span 4 !important;}
	.grid.xl-5 > .col.xl-6{grid-column: span 5 !important;}

	.underflex.xl-1 > * > *, .flex.xl-1 > * {width: 100% !important;}
	.underflex.xl-2 > * > *, .flex.xl-2 > * {width: 50% !important;}
	.underflex.xl-3 > * > *, .flex.xl-3 > * {width: calc(100% / 3) !important;}
	.underflex.xl-4 > * > *, .flex.xl-4 > * {width: 25% !important;}
	.underflex.xl-5 > * > *, .flex.xl-5 > * {width: 20% !important;}
	.underflex.xl-6 > * > *, .flex.xl-6 > * {width: calc(100% / 6) !important;}

	.underflex.forcedwidth.xl-1 > * > *, .flex.forcedwidth.xl-1 > * {min-width: 100% !important;}
	.underflex.forcedwidth.xl-2 > * > *, .flex.forcedwidth.xl-2 > * {min-width: 50% !important;}
	.underflex.forcedwidth.xl-3 > * > *, .flex.forcedwidth.xl-3 > * {min-width: calc(100% / 3) !important;}
	.underflex.forcedwidth.xl-4 > * > *, .flex.forcedwidth.xl-4 > * {min-width: 25% !important;}
	.underflex.forcedwidth.xl-5 > * > *, .flex.forcedwidth.xl-5 > * {min-width: 20% !important;}
	.underflex.forcedwidth.xl-6 > * > *, .flex.forcedwidth.xl-6 > * {min-width: calc(100% / 6) !important;}

	.underflex > * > .col.c1, .flex > .col.xl-1{ width: calc(100% / 6); }
	.underflex > * > .col.c2, .flex > .col.xl-2{ width: calc(100% / 6 * 2); }
	.underflex > * > .col.c3, .flex > .col.xl-3{ width: calc(100% / 6 * 3); }
	.underflex > * > .col.c4, .flex > .col.xl-4{ width: calc(100% / 6 * 4); }
	.underflex > * > .col.c5, .flex > .col.xl-5{ width: calc(100% / 6 * 5); }
	.underflex > * > .col.c6, .flex > .col.xl-6{ width: 100%; }


	/* Alignement des items du conteneur grid/flex--------*/
	/* Mode : vertical */
	.undergrid.xl-align-items_start > *, .grid.xl-align-items_start{align-items: start;}
	.undergrid.xl-align-items_end > *, .grid.xl-align-items_end{align-items: end;}
	.undergrid.xl-align-items_center > *, .grid.xl-align-items_center{align-items: center;}
	.undergrid.xl-align-items_stretch > *, .grid.xl-align-items_stretch{align-items: stretch;}
		.underflex.xl-align-items_end > *, .flex.xl-align-items_end{align-items:flex-end;}
		.underflex.xl-align-items_center > *, .flex.xl-align-items_center{align-items:center;}
		.underflex.xl-align-items_start > *, .flex.xl-align-items_start{align-items:flex-start;}
		.underflex.xl-align-items_stretch > *, .flex.xl-align-items_stretch{align-items:stretch;}
	/* Mode : horizontal */
	.undergrid.xl-justify-items_start > *, .grid.xl-justify-items_start{justify-items: start;}
	.undergrid.xl-justify-items_end > *, .grid.xl-justify-items_end{justify-items: end;}
	.undergrid.xl-justify-items_center > *, .grid.xl-justify-items_center{justify-items: center;}
	.undergrid.xl-justify-items_stretch > *, .grid.xl-justify-items_stretch{justify-items: stretch;}
		.underflex.xl-justify-items_end > *, .flex.xl-justify-items_end{justify-items: flex-end;}
		.underflex.xl-justify-items_start > *, .flex.xl-justify-items_start{justify-items: flex-start;}
		.underflex.xl-justify-items_center > *, .flex.xl-justify-items_center{justify-items: center;}
		.underflex.xl-justify-items_stretch > *, .flex.xl-justify-items_stretch{justify-items: flex-stretch;}

	/* Alignement du conteneur grid/flex --------*/
	/* Mode : vertical */
	.undergrid.xl-align-content_start > *, .grid.xl-align-content_start{align-content: start;}
	.undergrid.xl-align-content_end > *, .grid.xl-align-content_end{align-content: end;}
	.undergrid.xl-align-content_center > *, .grid.xl-align-content_center{align-content: center;}
	.undergrid.xl-align-content_stretch > *, .grid.xl-align-content_stretch{align-content: stretch;}
		.underflex.xl-align-content_start > *, .flex.xl-align-content_start{align-content: flex-start;}
		.underflex.xl-align-content_end > *, .flex.xl-align-content_end{align-content: flex-end;}
		.underflex.xl-align-content_center > *, .flex.xl-align-content_center{align-content: center;}
		.underflex.xl-align-content_stretch > *, .flex.xl-align-content_stretch{align-content: stretch;}
	/* Mode : horizontal */
	.undergrid.xl-justify-content_start > *, .grid.xl-justify-content_start{justify-content: start;}
	.undergrid.xl-justify-content_end > *, .grid.xl-justify-content_end{justify-content: end;}
	.undergrid.xl-justify-content_center > *, .grid.xl-justify-content_center{justify-content: center;}
	.undergrid.xl-justify-content_stretch > *, .grid.xl-justify-content_stretch{justify-content: stretch;}
	.undergrid.xl-justify-content_space-around > *, .grid.xl-justify-content_space-around{justify-content: space-around;}
	.undergrid.xl-justify-content_space-between > *, .grid.xl-justify-content_space-between{justify-content: space-between;}
	.undergrid.xl-justify-content_space-evenly > *, .grid.xl-justify-content_space-evenly{justify-content: space-evenly;}
		.underflex.xl-justify-content_start > *, .flex.xl-justify-content_start{justify-content: flex-start;}
		.underflex.xl-justify-content_end > *, .flex.xl-justify-content_end{justify-content: flex-end;}
		.underflex.xl-justify-content_center > *, .flex.xl-justify-content_center{justify-content: center;}
		.underflex.xl-justify-content_stretch > *, .flex.xl-justify-content_stretch{justify-content: stretch;}
		.underflex.xl-justify-content_space-around > *, .flex.xl-justify-content_space-around{justify-content: space-around;}
		.underflex.xl-justify-content_space-between > *, .flex.xl-justify-content_space-between{justify-content: space-between;}
		.underflex.xl-justify-content_space-evenly > *, .flex.xl-justify-content_space-evenly{justify-content: space-evenly;}

}

@media (max-width:1280px) {
	.undergrid.lg-1 > *, .grid.lg-1{grid-template-columns: repeat(1, 1fr) !important;}
	.undergrid.lg-2 > *, .grid.lg-2{grid-template-columns: repeat(2, 1fr) !important;}
	.undergrid.lg-3 > *, .grid.lg-3{grid-template-columns: repeat(3, 1fr) !important;}
	.undergrid.lg-4 > *, .grid.lg-4{grid-template-columns: repeat(4, 1fr) !important;}
	.undergrid.lg-5 > *, .grid.lg-5{grid-template-columns: repeat(5, 1fr) !important;}
	.undergrid.lg-6 > *, .grid.lg-6{grid-template-columns: repeat(6, 1fr) !important;}

	.grid > .col.lg-1{grid-column: span 1 !important;}
	.grid > .col.lg-2{grid-column: span 2 !important;}
	.grid > .col.lg-3{grid-column: span 3 !important;}
	.grid > .col.lg-4{grid-column: span 4 !important;}
	.grid > .col.lg-5{grid-column: span 5 !important;}
	.grid > .col.lg-6{grid-column: span 6 !important;}

	.grid.lg-1 > .col:not([class*="lg-"]),
	.grid.lg-2 > .col:not([class*="lg-"]),
	.grid.lg-3 > .col:not([class*="lg-"]),
	.grid.lg-4 > .col:not([class*="lg-"]),
	.grid.lg-5 > .col:not([class*="lg-"]),
	.grid.lg-6 > .col:not([class*="lg-"]){grid-column: span 1 !important;}

	.grid.lg-1 > .col.lg-2{grid-column: span 1 !important;}
	.grid.lg-1 > .col.lg-3{grid-column: span 1 !important;}
	.grid.lg-1 > .col.lg-4{grid-column: span 1 !important;}
	.grid.lg-1 > .col.lg-5{grid-column: span 1 !important;}
	.grid.lg-1 > .col.lg-6{grid-column: span 1 !important;}
	.grid.lg-2 > .col.lg-3{grid-column: span 2 !important;}
	.grid.lg-2 > .col.lg-4{grid-column: span 2 !important;}
	.grid.lg-2 > .col.lg-5{grid-column: span 2 !important;}
	.grid.lg-2 > .col.lg-6{grid-column: span 2 !important;}
	.grid.lg-3 > .col.lg-4{grid-column: span 3 !important;}
	.grid.lg-3 > .col.lg-5{grid-column: span 3 !important;}
	.grid.lg-3 > .col.lg-6{grid-column: span 3 !important;}
	.grid.lg-4 > .col.lg-5{grid-column: span 4 !important;}
	.grid.lg-4 > .col.lg-6{grid-column: span 4 !important;}
	.grid.lg-5 > .col.lg-6{grid-column: span 5 !important;}

	.underflex.lg-1 > * > *, .flex.lg-1 > * {width: 100% !important;}
	.underflex.lg-2 > * > *, .flex.lg-2 > * {width: 50% !important;}
	.underflex.lg-3 > * > *, .flex.lg-3 > * {width: calc(100% / 3) !important;}
	.underflex.lg-4 > * > *, .flex.lg-4 > * {width: 25% !important;}
	.underflex.lg-5 > * > *, .flex.lg-5 > * {width: 20% !important;}
	.underflex.lg-6 > * > *, .flex.lg-6 > * {width: calc(100% / 6) !important;}

	.underflex.forcedwidth.lg-1 > * > *, .flex.forcedwidth.lg-1 > * {min-width: 100% !important;}
	.underflex.forcedwidth.lg-2 > * > *, .flex.forcedwidth.lg-2 > * {min-width: 50% !important;}
	.underflex.forcedwidth.lg-3 > * > *, .flex.forcedwidth.lg-3 > * {min-width: calc(100% / 3) !important;}
	.underflex.forcedwidth.lg-4 > * > *, .flex.forcedwidth.lg-4 > * {min-width: 25% !important;}
	.underflex.forcedwidth.lg-5 > * > *, .flex.forcedwidth.lg-5 > * {min-width: 20% !important;}
	.underflex.forcedwidth.lg-6 > * > *, .flex.forcedwidth.lg-6 > * {min-width: calc(100% / 6) !important;}

	.underflex > * > .col.c1, .flex > .col.lg-1{ width: calc(100% / 6); }
	.underflex > * > .col.c2, .flex > .col.lg-2{ width: calc(100% / 6 * 2); }
	.underflex > * > .col.c3, .flex > .col.lg-3{ width: calc(100% / 6 * 3); }
	.underflex > * > .col.c4, .flex > .col.lg-4{ width: calc(100% / 6 * 4); }
	.underflex > * > .col.c5, .flex > .col.lg-5{ width: calc(100% / 6 * 5); }
	.underflex > * > .col.c6, .flex > .col.lg-6{ width: 100%; }

	/* Alignement des items du conteneur grid/flex--------*/
	/* Mode : vertical */
	.undergrid.lg-align-items_start > *, .grid.lg-align-items_start{align-items: start;}
	.undergrid.lg-align-items_end > *, .grid.lg-align-items_end{align-items: end;}
	.undergrid.lg-align-items_center > *, .grid.lg-align-items_center{align-items: center;}
	.undergrid.lg-align-items_stretch > *, .grid.lg-align-items_stretch{align-items: stretch;}
		.underflex.lg-align-items_end > *, .flex.lg-align-items_end{align-items:flex-end;}
		.underflex.lg-align-items_center > *, .flex.lg-align-items_center{align-items:center;}
		.underflex.lg-align-items_start > *, .flex.lg-align-items_start{align-items:flex-start;}
		.underflex.lg-align-items_stretch > *, .flex.lg-align-items_stretch{align-items:stretch;}
	/* Mode : horizontal */
	.undergrid.lg-justify-items_start > *, .grid.lg-justify-items_start{justify-items: start;}
	.undergrid.lg-justify-items_end > *, .grid.lg-justify-items_end{justify-items: end;}
	.undergrid.lg-justify-items_center > *, .grid.lg-justify-items_center{justify-items: center;}
	.undergrid.lg-justify-items_stretch > *, .grid.lg-justify-items_stretch{justify-items: stretch;}
		.underflex.lg-justify-items_end > *, .flex.lg-justify-items_end{justify-items: flex-end;}
		.underflex.lg-justify-items_start > *, .flex.lg-justify-items_start{justify-items: flex-start;}
		.underflex.lg-justify-items_center > *, .flex.lg-justify-items_center{justify-items: center;}
		.underflex.lg-justify-items_stretch > *, .flex.lg-justify-items_stretch{justify-items: flex-stretch;}

	/* Alignement du conteneur grid/flex --------*/
	/* Mode : vertical */
	.undergrid.lg-align-content_start > *, .grid.lg-align-content_start{align-content: start;}
	.undergrid.lg-align-content_end > *, .grid.lg-align-content_end{align-content: end;}
	.undergrid.lg-align-content_center > *, .grid.lg-align-content_center{align-content: center;}
	.undergrid.lg-align-content_stretch > *, .grid.lg-align-content_stretch{align-content: stretch;}
		.underflex.lg-align-content_start > *, .flex.lg-align-content_start{align-content: flex-start;}
		.underflex.lg-align-content_end > *, .flex.lg-align-content_end{align-content: flex-end;}
		.underflex.lg-align-content_center > *, .flex.lg-align-content_center{align-content: center;}
		.underflex.lg-align-content_stretch > *, .flex.lg-align-content_stretch{align-content: stretch;}
	/* Mode : horizontal */
	.undergrid.lg-justify-content_start > *, .grid.lg-justify-content_start{justify-content: start;}
	.undergrid.lg-justify-content_end > *, .grid.lg-justify-content_end{justify-content: end;}
	.undergrid.lg-justify-content_center > *, .grid.lg-justify-content_center{justify-content: center;}
	.undergrid.lg-justify-content_stretch > *, .grid.lg-justify-content_stretch{justify-content: stretch;}
	.undergrid.lg-justify-content_space-around > *, .grid.lg-justify-content_space-around{justify-content: space-around;}
	.undergrid.lg-justify-content_space-between > *, .grid.lg-justify-content_space-between{justify-content: space-between;}
	.undergrid.lg-justify-content_space-evenly > *, .grid.lg-justify-content_space-evenly{justify-content: space-evenly;}
		.underflex.lg-justify-content_start > *, .flex.lg-justify-content_start{justify-content: flex-start;}
		.underflex.lg-justify-content_end > *, .flex.lg-justify-content_end{justify-content: flex-end;}
		.underflex.lg-justify-content_center > *, .flex.lg-justify-content_center{justify-content: center;}
		.underflex.lg-justify-content_stretch > *, .flex.lg-justify-content_stretch{justify-content: stretch;}
		.underflex.lg-justify-content_space-around > *, .flex.lg-justify-content_space-around{justify-content: space-around;}
		.underflex.lg-justify-content_space-between > *, .flex.lg-justify-content_space-between{justify-content: space-between;}
		.underflex.lg-justify-content_space-evenly > *, .flex.lg-justify-content_space-evenly{justify-content: space-evenly;}
}

@media (max-width:980px) {
	.undergrid.md-1 > *, .grid.md-1{grid-template-columns: repeat(1, 1fr) !important;}
	.undergrid.md-2 > *, .grid.md-2{grid-template-columns: repeat(2, 1fr) !important;}
	.undergrid.md-3 > *, .grid.md-3{grid-template-columns: repeat(3, 1fr) !important;}
	.undergrid.md-4 > *, .grid.md-4{grid-template-columns: repeat(4, 1fr) !important;}
	.undergrid.md-5 > *, .grid.md-5{grid-template-columns: repeat(5, 1fr) !important;}
	.undergrid.md-6 > *, .grid.md-6{grid-template-columns: repeat(6, 1fr) !important;}

	.grid > .col.md-1{grid-column: span 1 !important;}
	.grid > .col.md-2{grid-column: span 2 !important;}
	.grid > .col.md-3{grid-column: span 3 !important;}
	.grid > .col.md-4{grid-column: span 4 !important;}
	.grid > .col.md-5{grid-column: span 5 !important;}
	.grid > .col.md-6{grid-column: span 6 !important;}

	.grid.md-1 > .col:not([class*="md-"]),
	.grid.md-2 > .col:not([class*="md-"]),
	.grid.md-3 > .col:not([class*="md-"]),
	.grid.md-4 > .col:not([class*="md-"]),
	.grid.md-5 > .col:not([class*="md-"]),
	.grid.md-6 > .col:not([class*="md-"]){grid-column: span 1 !important;}

	.grid.md-1 > .col.md-2{grid-column: span 1 !important;}
	.grid.md-1 > .col.md-3{grid-column: span 1 !important;}
	.grid.md-1 > .col.md-4{grid-column: span 1 !important;}
	.grid.md-1 > .col.md-5{grid-column: span 1 !important;}
	.grid.md-1 > .col.md-6{grid-column: span 1 !important;}
	.grid.md-2 > .col.md-3{grid-column: span 2 !important;}
	.grid.md-2 > .col.md-4{grid-column: span 2 !important;}
	.grid.md-2 > .col.md-5{grid-column: span 2 !important;}
	.grid.md-2 > .col.md-6{grid-column: span 2 !important;}
	.grid.md-3 > .col.md-4{grid-column: span 3 !important;}
	.grid.md-3 > .col.md-5{grid-column: span 3 !important;}
	.grid.md-3 > .col.md-6{grid-column: span 3 !important;}
	.grid.md-4 > .col.md-5{grid-column: span 4 !important;}
	.grid.md-4 > .col.md-6{grid-column: span 4 !important;}
	.grid.md-5 > .col.md-6{grid-column: span 5 !important;}

	.underflex.md-1 > * > *, .flex.md-1 > * {width: 100% !important;}
	.underflex.md-2 > * > *, .flex.md-2 > * {width: 50% !important;}
	.underflex.md-3 > * > *, .flex.md-3 > * {width: calc(100% / 3) !important;}
	.underflex.md-4 > * > *, .flex.md-4 > * {width: 25% !important;}
	.underflex.md-5 > * > *, .flex.md-5 > * {width: 20% !important;}
	.underflex.md-6 > * > *, .flex.md-6 > * {width: calc(100% / 6) !important;}

	.underflex.forcedwidth.md-1 > * > *, .flex.forcedwidth.md-1 > * {min-width: 100% !important;}
	.underflex.forcedwidth.md-2 > * > *, .flex.forcedwidth.md-2 > * {min-width: 50% !important;}
	.underflex.forcedwidth.md-3 > * > *, .flex.forcedwidth.md-3 > * {min-width: calc(100% / 3) !important;}
	.underflex.forcedwidth.md-4 > * > *, .flex.forcedwidth.md-4 > * {min-width: 25% !important;}
	.underflex.forcedwidth.md-5 > * > *, .flex.forcedwidth.md-5 > * {min-width: 20% !important;}
	.underflex.forcedwidth.md-6 > * > *, .flex.forcedwidth.md-6 > * {min-width: calc(100% / 6) !important;}

	.underflex > * > .col.c1, .flex > .col.md-1{ width: calc(100% / 6); }
	.underflex > * > .col.c2, .flex > .col.md-2{ width: calc(100% / 6 * 2); }
	.underflex > * > .col.c3, .flex > .col.md-3{ width: calc(100% / 6 * 3); }
	.underflex > * > .col.c4, .flex > .col.md-4{ width: calc(100% / 6 * 4); }
	.underflex > * > .col.c5, .flex > .col.md-5{ width: calc(100% / 6 * 5); }
	.underflex > * > .col.c6, .flex > .col.md-6{ width: 100%; }

	/* Alignement des items du conteneur grid/flex--------*/
	/* Mode : vertical */
	.undergrid.md-align-items_start > *, .grid.md-align-items_start{align-items: start;}
	.undergrid.md-align-items_end > *, .grid.md-align-items_end{align-items: end;}
	.undergrid.md-align-items_center > *, .grid.md-align-items_center{align-items: center;}
	.undergrid.md-align-items_stretch > *, .grid.md-align-items_stretch{align-items: stretch;}
		.underflex.md-align-items_end > *, .flex.md-align-items_end{align-items:flex-end;}
		.underflex.md-align-items_center > *, .flex.md-align-items_center{align-items:center;}
		.underflex.md-align-items_start > *, .flex.md-align-items_start{align-items:flex-start;}
		.underflex.md-align-items_stretch > *, .flex.md-align-items_stretch{align-items:stretch;}
	/* Mode : horizontal */
	.undergrid.md-justify-items_start > *, .grid.md-justify-items_start{justify-items: start;}
	.undergrid.md-justify-items_end > *, .grid.md-justify-items_end{justify-items: end;}
	.undergrid.md-justify-items_center > *, .grid.md-justify-items_center{justify-items: center;}
	.undergrid.md-justify-items_stretch > *, .grid.md-justify-items_stretch{justify-items: stretch;}
		.underflex.md-justify-items_end > *, .flex.md-justify-items_end{justify-items: flex-end;}
		.underflex.md-justify-items_start > *, .flex.md-justify-items_start{justify-items: flex-start;}
		.underflex.md-justify-items_center > *, .flex.md-justify-items_center{justify-items: center;}
		.underflex.md-justify-items_stretch > *, .flex.md-justify-items_stretch{justify-items: flex-stretch;}

	/* Alignement du conteneur grid/flex --------*/
	/* Mode : vertical */
	.undergrid.md-align-content_start > *, .grid.md-align-content_start{align-content: start;}
	.undergrid.md-align-content_end > *, .grid.md-align-content_end{align-content: end;}
	.undergrid.md-align-content_center > *, .grid.md-align-content_center{align-content: center;}
	.undergrid.md-align-content_stretch > *, .grid.md-align-content_stretch{align-content: stretch;}
		.underflex.md-align-content_start > *, .flex.md-align-content_start{align-content: flex-start;}
		.underflex.md-align-content_end > *, .flex.md-align-content_end{align-content: flex-end;}
		.underflex.md-align-content_center > *, .flex.md-align-content_center{align-content: center;}
		.underflex.md-align-content_stretch > *, .flex.md-align-content_stretch{align-content: stretch;}
	/* Mode : horizontal */
	.undergrid.md-justify-content_start > *, .grid.md-justify-content_start{justify-content: start;}
	.undergrid.md-justify-content_end > *, .grid.md-justify-content_end{justify-content: end;}
	.undergrid.md-justify-content_center > *, .grid.md-justify-content_center{justify-content: center;}
	.undergrid.md-justify-content_stretch > *, .grid.md-justify-content_stretch{justify-content: stretch;}
	.undergrid.md-justify-content_space-around > *, .grid.md-justify-content_space-around{justify-content: space-around;}
	.undergrid.md-justify-content_space-between > *, .grid.md-justify-content_space-between{justify-content: space-between;}
	.undergrid.md-justify-content_space-evenly > *, .grid.md-justify-content_space-evenly{justify-content: space-evenly;}
		.underflex.md-justify-content_start > *, .flex.md-justify-content_start{justify-content: flex-start;}
		.underflex.md-justify-content_end > *, .flex.md-justify-content_end{justify-content: flex-end;}
		.underflex.md-justify-content_center > *, .flex.md-justify-content_center{justify-content: center;}
		.underflex.md-justify-content_stretch > *, .flex.md-justify-content_stretch{justify-content: stretch;}
		.underflex.md-justify-content_space-around > *, .flex.md-justify-content_space-around{justify-content: space-around;}
		.underflex.md-justify-content_space-between > *, .flex.md-justify-content_space-between{justify-content: space-between;}
		.underflex.md-justify-content_space-evenly > *, .flex.md-justify-content_space-evenly{justify-content: space-evenly;}
}

@media (max-width:736px) {
	.undergrid.sm-1 > *, .grid.sm-1{grid-template-columns: repeat(1, 1fr) !important;}
	.undergrid.sm-2 > *, .grid.sm-2{grid-template-columns: repeat(2, 1fr) !important;}
	.undergrid.sm-3 > *, .grid.sm-3{grid-template-columns: repeat(3, 1fr) !important;}
	.undergrid.sm-4 > *, .grid.sm-4{grid-template-columns: repeat(4, 1fr) !important;}
	.undergrid.sm-5 > *, .grid.sm-5{grid-template-columns: repeat(5, 1fr) !important;}
	.undergrid.sm-6 > *, .grid.sm-6{grid-template-columns: repeat(6, 1fr) !important;}

	.grid > .col.sm-1{grid-column: span 1 !important;}
	.grid > .col.sm-2{grid-column: span 2 !important;}
	.grid > .col.sm-3{grid-column: span 3 !important;}
	.grid > .col.sm-4{grid-column: span 4 !important;}
	.grid > .col.sm-5{grid-column: span 5 !important;}
	.grid > .col.sm-6{grid-column: span 6 !important;}

	.grid.sm-1 > .col:not([class*="sm-"]),
	.grid.sm-2 > .col:not([class*="sm-"]),
	.grid.sm-3 > .col:not([class*="sm-"]),
	.grid.sm-4 > .col:not([class*="sm-"]),
	.grid.sm-5 > .col:not([class*="sm-"]),
	.grid.sm-6 > .col:not([class*="sm-"]){grid-column: span 1 !important;}

	.grid.sm-1 > .col.sm-2{grid-column: span 1 !important;}
	.grid.sm-1 > .col.sm-3{grid-column: span 1 !important;}
	.grid.sm-1 > .col.sm-4{grid-column: span 1 !important;}
	.grid.sm-1 > .col.sm-5{grid-column: span 1 !important;}
	.grid.sm-1 > .col.sm-6{grid-column: span 1 !important;}
	.grid.sm-2 > .col.sm-3{grid-column: span 2 !important;}
	.grid.sm-2 > .col.sm-4{grid-column: span 2 !important;}
	.grid.sm-2 > .col.sm-5{grid-column: span 2 !important;}
	.grid.sm-2 > .col.sm-6{grid-column: span 2 !important;}
	.grid.sm-3 > .col.sm-4{grid-column: span 3 !important;}
	.grid.sm-3 > .col.sm-5{grid-column: span 3 !important;}
	.grid.sm-3 > .col.sm-6{grid-column: span 3 !important;}
	.grid.sm-4 > .col.sm-5{grid-column: span 4 !important;}
	.grid.sm-4 > .col.sm-6{grid-column: span 4 !important;}
	.grid.sm-5 > .col.sm-6{grid-column: span 5 !important;}

	.underflex.sm-1 > * > *, .flex.sm-1 > * {width: 100% !important;}
	.underflex.sm-2 > * > *, .flex.sm-2 > * {width: 50% !important;}
	.underflex.sm-3 > * > *, .flex.sm-3 > * {width: calc(100% / 3) !important;}
	.underflex.sm-4 > * > *, .flex.sm-4 > * {width: 25% !important;}
	.underflex.sm-5 > * > *, .flex.sm-5 > * {width: 20% !important;}
	.underflex.sm-6 > * > *, .flex.sm-6 > * {width: calc(100% / 6) !important;}

	.underflex.forcedwidth.sm-1 > * > *, .flex.forcedwidth.sm-1 > * {min-width: 100% !important;}
	.underflex.forcedwidth.sm-2 > * > *, .flex.forcedwidth.sm-2 > * {min-width: 50% !important;}
	.underflex.forcedwidth.sm-3 > * > *, .flex.forcedwidth.sm-3 > * {min-width: calc(100% / 3) !important;}
	.underflex.forcedwidth.sm-4 > * > *, .flex.forcedwidth.sm-4 > * {min-width: 25% !important;}
	.underflex.forcedwidth.sm-5 > * > *, .flex.forcedwidth.sm-5 > * {min-width: 20% !important;}
	.underflex.forcedwidth.sm-6 > * > *, .flex.forcedwidth.sm-6 > * {min-width: calc(100% / 6) !important;}

	.underflex > * > .col.c1, .flex > .col.sm-1{ width: calc(100% / 6); }
	.underflex > * > .col.c2, .flex > .col.sm-2{ width: calc(100% / 6 * 2); }
	.underflex > * > .col.c3, .flex > .col.sm-3{ width: calc(100% / 6 * 3); }
	.underflex > * > .col.c4, .flex > .col.sm-4{ width: calc(100% / 6 * 4); }
	.underflex > * > .col.c5, .flex > .col.sm-5{ width: calc(100% / 6 * 5); }
	.underflex > * > .col.c6, .flex > .col.sm-6{ width: 100%; }

	/* Alignement des items du conteneur grid/flex--------*/
	/* Mode : vertical */
	.undergrid.sm-align-items_start > *, .grid.sm-align-items_start{align-items: start;}
	.undergrid.sm-align-items_end > *, .grid.sm-align-items_end{align-items: end;}
	.undergrid.sm-align-items_center > *, .grid.sm-align-items_center{align-items: center;}
	.undergrid.sm-align-items_stretch > *, .grid.sm-align-items_stretch{align-items: stretch;}
		.underflex.sm-align-items_end > *, .flex.sm-align-items_end{align-items:flex-end;}
		.underflex.sm-align-items_center > *, .flex.sm-align-items_center{align-items:center;}
		.underflex.sm-align-items_start > *, .flex.sm-align-items_start{align-items:flex-start;}
		.underflex.sm-align-items_stretch > *, .flex.sm-align-items_stretch{align-items:stretch;}
	/* Mode : horizontal */
	.undergrid.sm-justify-items_start > *, .grid.sm-justify-items_start{justify-items: start;}
	.undergrid.sm-justify-items_end > *, .grid.sm-justify-items_end{justify-items: end;}
	.undergrid.sm-justify-items_center > *, .grid.sm-justify-items_center{justify-items: center;}
	.undergrid.sm-justify-items_stretch > *, .grid.sm-justify-items_stretch{justify-items: stretch;}
		.underflex.sm-justify-items_end > *, .flex.sm-justify-items_end{justify-items: flex-end;}
		.underflex.sm-justify-items_start > *, .flex.sm-justify-items_start{justify-items: flex-start;}
		.underflex.sm-justify-items_center > *, .flex.sm-justify-items_center{justify-items: center;}
		.underflex.sm-justify-items_stretch > *, .flex.sm-justify-items_stretch{justify-items: flex-stretch;}

	/* Alignement du conteneur grid/flex --------*/
	/* Mode : vertical */
	.undergrid.sm-align-content_start > *, .grid.sm-align-content_start{align-content: start;}
	.undergrid.sm-align-content_end > *, .grid.sm-align-content_end{align-content: end;}
	.undergrid.sm-align-content_center > *, .grid.sm-align-content_center{align-content: center;}
	.undergrid.sm-align-content_stretch > *, .grid.sm-align-content_stretch{align-content: stretch;}
		.underflex.sm-align-content_start > *, .flex.sm-align-content_start{align-content: flex-start;}
		.underflex.sm-align-content_end > *, .flex.sm-align-content_end{align-content: flex-end;}
		.underflex.sm-align-content_center > *, .flex.sm-align-content_center{align-content: center;}
		.underflex.sm-align-content_stretch > *, .flex.sm-align-content_stretch{align-content: stretch;}
	/* Mode : horizontal */
	.undergrid.sm-justify-content_start > *, .grid.sm-justify-content_start{justify-content: start;}
	.undergrid.sm-justify-content_end > *, .grid.sm-justify-content_end{justify-content: end;}
	.undergrid.sm-justify-content_center > *, .grid.sm-justify-content_center{justify-content: center;}
	.undergrid.sm-justify-content_stretch > *, .grid.sm-justify-content_stretch{justify-content: stretch;}
	.undergrid.sm-justify-content_space-around > *, .grid.sm-justify-content_space-around{justify-content: space-around;}
	.undergrid.sm-justify-content_space-between > *, .grid.sm-justify-content_space-between{justify-content: space-between;}
	.undergrid.sm-justify-content_space-evenly > *, .grid.sm-justify-content_space-evenly{justify-content: space-evenly;}
		.underflex.sm-justify-content_start > *, .flex.sm-justify-content_start{justify-content: flex-start;}
		.underflex.sm-justify-content_end > *, .flex.sm-justify-content_end{justify-content: flex-end;}
		.underflex.sm-justify-content_center > *, .flex.sm-justify-content_center{justify-content: center;}
		.underflex.sm-justify-content_stretch > *, .flex.sm-justify-content_stretch{justify-content: stretch;}
		.underflex.sm-justify-content_space-around > *, .flex.sm-justify-content_space-around{justify-content: space-around;}
		.underflex.sm-justify-content_space-between > *, .flex.sm-justify-content_space-between{justify-content: space-between;}
		.underflex.sm-justify-content_space-evenly > *, .flex.sm-justify-content_space-evenly{justify-content: space-evenly;}
}

@media(max-width: 480px) {
	.undergrid.xs-1 > *, .grid.xs-1{grid-template-columns: repeat(1, 1fr) !important;}
	.undergrid.xs-2 > *, .grid.xs-2{grid-template-columns: repeat(2, 1fr) !important;}
	.undergrid.xs-3 > *, .grid.xs-3{grid-template-columns: repeat(3, 1fr) !important;}
	.undergrid.xs-4 > *, .grid.xs-4{grid-template-columns: repeat(4, 1fr) !important;}
	.undergrid.xs-5 > *, .grid.xs-5{grid-template-columns: repeat(5, 1fr) !important;}
	.undergrid.xs-6 > *, .grid.xs-6{grid-template-columns: repeat(6, 1fr) !important;}

	.grid > .col.xs-1{grid-column: span 1 !important;}
	.grid > .col.xs-2{grid-column: span 2 !important;}
	.grid > .col.xs-3{grid-column: span 3 !important;}
	.grid > .col.xs-4{grid-column: span 4 !important;}
	.grid > .col.xs-5{grid-column: span 5 !important;}
	.grid > .col.xs-6{grid-column: span 6 !important;}

	.grid.xs-1 > .col:not([class*="xs-"]),
	.grid.xs-2 > .col:not([class*="xs-"]),
	.grid.xs-3 > .col:not([class*="xs-"]),
	.grid.xs-4 > .col:not([class*="xs-"]),
	.grid.xs-5 > .col:not([class*="xs-"]),
	.grid.xs-6 > .col:not([class*="xs-"]){grid-column: span 1 !important;}

	.grid.xs-1 > .col.xs-2{grid-column: span 1 !important;}
	.grid.xs-1 > .col.xs-3{grid-column: span 1 !important;}
	.grid.xs-1 > .col.xs-4{grid-column: span 1 !important;}
	.grid.xs-1 > .col.xs-5{grid-column: span 1 !important;}
	.grid.xs-1 > .col.xs-6{grid-column: span 1 !important;}
	.grid.xs-2 > .col.xs-3{grid-column: span 2 !important;}
	.grid.xs-2 > .col.xs-4{grid-column: span 2 !important;}
	.grid.xs-2 > .col.xs-5{grid-column: span 2 !important;}
	.grid.xs-2 > .col.xs-6{grid-column: span 2 !important;}
	.grid.xs-3 > .col.xs-4{grid-column: span 3 !important;}
	.grid.xs-3 > .col.xs-5{grid-column: span 3 !important;}
	.grid.xs-3 > .col.xs-6{grid-column: span 3 !important;}
	.grid.xs-4 > .col.xs-5{grid-column: span 4 !important;}
	.grid.xs-4 > .col.xs-6{grid-column: span 4 !important;}
	.grid.xs-5 > .col.xs-6{grid-column: span 5 !important;}

	.underflex.xs-1 > * > *, .flex.xs-1 > * {width: 100% !important;}
	.underflex.xs-2 > * > *, .flex.xs-2 > * {width: 50% !important;}
	.underflex.xs-3 > * > *, .flex.xs-3 > * {width: calc(100% / 3) !important;}
	.underflex.xs-4 > * > *, .flex.xs-4 > * {width: 25% !important;}
	.underflex.xs-5 > * > *, .flex.xs-5 > * {width: 20% !important;}
	.underflex.xs-6 > * > *, .flex.xs-6 > * {width: calc(100% / 6) !important;}

	.underflex.forcedwidth.xs-1 > * > *, .flex.forcedwidth.xs-1 > * {min-width: 100% !important;}
	.underflex.forcedwidth.xs-2 > * > *, .flex.forcedwidth.xs-2 > * {min-width: 50% !important;}
	.underflex.forcedwidth.xs-3 > * > *, .flex.forcedwidth.xs-3 > * {min-width: calc(100% / 3) !important;}
	.underflex.forcedwidth.xs-4 > * > *, .flex.forcedwidth.xs-4 > * {min-width: 25% !important;}
	.underflex.forcedwidth.xs-5 > * > *, .flex.forcedwidth.xs-5 > * {min-width: 20% !important;}
	.underflex.forcedwidth.xs-6 > * > *, .flex.forcedwidth.xs-6 > * {min-width: calc(100% / 6) !important;}

	.underflex > * > .col.c1, .flex > .col.xs-1{ width: calc(100% / 6); }
	.underflex > * > .col.c2, .flex > .col.xs-2{ width: calc(100% / 6 * 2); }
	.underflex > * > .col.c3, .flex > .col.xs-3{ width: calc(100% / 6 * 3); }
	.underflex > * > .col.c4, .flex > .col.xs-4{ width: calc(100% / 6 * 4); }
	.underflex > * > .col.c5, .flex > .col.xs-5{ width: calc(100% / 6 * 5); }
	.underflex > * > .col.c6, .flex > .col.xs-6{ width: 100%; }

	/* Alignement des items du conteneur grid/flex--------*/
	/* Mode : vertical */
	.undergrid.xs-align-items_start > *, .grid.xs-align-items_start{align-items: start;}
	.undergrid.xs-align-items_end > *, .grid.xs-align-items_end{align-items: end;}
	.undergrid.xs-align-items_center > *, .grid.xs-align-items_center{align-items: center;}
	.undergrid.xs-align-items_stretch > *, .grid.xs-align-items_stretch{align-items: stretch;}
		.underflex.xs-align-items_end > *, .flex.xs-align-items_end{align-items:flex-end;}
		.underflex.xs-align-items_center > *, .flex.xs-align-items_center{align-items:center;}
		.underflex.xs-align-items_start > *, .flex.xs-align-items_start{align-items:flex-start;}
		.underflex.xs-align-items_stretch > *, .flex.xs-align-items_stretch{align-items:stretch;}
	/* Mode : horizontal */
	.undergrid.xs-justify-items_start > *, .grid.xs-justify-items_start{justify-items: start;}
	.undergrid.xs-justify-items_end > *, .grid.xs-justify-items_end{justify-items: end;}
	.undergrid.xs-justify-items_center > *, .grid.xs-justify-items_center{justify-items: center;}
	.undergrid.xs-justify-items_stretch > *, .grid.xs-justify-items_stretch{justify-items: stretch;}
		.underflex.xs-justify-items_end > *, .flex.xs-justify-items_end{justify-items: flex-end;}
		.underflex.xs-justify-items_start > *, .flex.xs-justify-items_start{justify-items: flex-start;}
		.underflex.xs-justify-items_center > *, .flex.xs-justify-items_center{justify-items: center;}
		.underflex.xs-justify-items_stretch > *, .flex.xs-justify-items_stretch{justify-items: flex-stretch;}

	/* Alignement du conteneur grid/flex --------*/
	/* Mode : vertical */
	.undergrid.xs-align-content_start > *, .grid.xs-align-content_start{align-content: start;}
	.undergrid.xs-align-content_end > *, .grid.xs-align-content_end{align-content: end;}
	.undergrid.xs-align-content_center > *, .grid.xs-align-content_center{align-content: center;}
	.undergrid.xs-align-content_stretch > *, .grid.xs-align-content_stretch{align-content: stretch;}
		.underflex.xs-align-content_start > *, .flex.xs-align-content_start{align-content: flex-start;}
		.underflex.xs-align-content_end > *, .flex.xs-align-content_end{align-content: flex-end;}
		.underflex.xs-align-content_center > *, .flex.xs-align-content_center{align-content: center;}
		.underflex.xs-align-content_stretch > *, .flex.xs-align-content_stretch{align-content: stretch;}
	/* Mode : horizontal */
	.undergrid.xs-justify-content_start > *, .grid.xs-justify-content_start{justify-content: start;}
	.undergrid.xs-justify-content_end > *, .grid.xs-justify-content_end{justify-content: end;}
	.undergrid.xs-justify-content_center > *, .grid.xs-justify-content_center{justify-content: center;}
	.undergrid.xs-justify-content_stretch > *, .grid.xs-justify-content_stretch{justify-content: stretch;}
	.undergrid.xs-justify-content_space-around > *, .grid.xs-justify-content_space-around{justify-content: space-around;}
	.undergrid.xs-justify-content_space-between > *, .grid.xs-justify-content_space-between{justify-content: space-between;}
	.undergrid.xs-justify-content_space-evenly > *, .grid.xs-justify-content_space-evenly{justify-content: space-evenly;}
		.underflex.xs-justify-content_start > *, .flex.xs-justify-content_start{justify-content: flex-start;}
		.underflex.xs-justify-content_end > *, .flex.xs-justify-content_end{justify-content: flex-end;}
		.underflex.xs-justify-content_center > *, .flex.xs-justify-content_center{justify-content: center;}
		.underflex.xs-justify-content_stretch > *, .flex.xs-justify-content_stretch{justify-content: stretch;}
		.underflex.xs-justify-content_space-around > *, .flex.xs-justify-content_space-around{justify-content: space-around;}
		.underflex.xs-justify-content_space-between > *, .flex.xs-justify-content_space-between{justify-content: space-between;}
		.underflex.xs-justify-content_space-evenly > *, .flex.xs-justify-content_space-evenly{justify-content: space-evenly;}
}