
.clear, .clr { float: none; clear: both;}

.reset-element {
	-webkit-appearance: none; -moz-appearance: none; appearance: none; border-radius: 0px;
	display: inline-block; border:#000 0px solid; padding:0px; text-decoration: none; background-color:transparent; color:inherit;
	font-family: inherit; font-size: inherit; line-height: inherit; 
}
.reset-button {
	-webkit-appearance: none; -moz-appearance: none; appearance: none; border-radius: 0px;
	display: inline-block; border:#000 0px solid; padding:0px; text-decoration: none; background-color:transparent; color:inherit;
	font-family: inherit; font-size: inherit; line-height: inherit;
}
button {}
button:hover { cursor: pointer;}

.fullbackground {
    background-color: #f1f1f1;
    background-position: center center;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

.page {
    max-width: 100%;
    margin: 0 auto;
    padding: 0 40px;
}

.page.-full {
    max-width: 100%;
    margin: 0 auto;
    padding: 0px;
}

.wrap {
    max-width: 1280px;
    margin: 0 auto;
}
.wrap.-full {
    max-width: 100%;
    margin: 0 auto;
    padding: 0px;
}
.wrap.-large {
    max-width: 1590px;
    margin: 0 auto;
    padding: 0px;
}
.wrap.-small {
    max-width: 1024px;
    margin: 0 auto;
    padding: 0px;
}

body.page { padding: 0px;}


/*
	Flexbox framework
	General flexbox classes
*/


.columns {
    display: -webkit-flex;
    display: -webkit-box;
    display: -moz-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: row;
    -moz-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-orient: horizontal;
    -moz-box-orient: horizontal;
    -ms-box-orient: horizontal;
    box-orient: horizontal;
    width: 100%;
    flex-wrap: wrap;
}

.rows {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -moz-flex;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-orient: vertical;
    -moz-box-orient: vertical;
    -ms-box-orient: vertical;
    box-orient: vertical;
    width: 100%;
    align-items: stretch;
}

.columns > * , .rows > * {
    -webkit-box-flex: 1; /* OLD - iOS 6-, Safari 3.1-6 */
    -moz-box-flex: 1; /* OLD - Firefox 19- */
    -webkit-flex: 1; /* Chrome */
    -ms-flex: 1; /* IE 10 */
    flex: 1;
    min-width:256px; 
    margin-left: 0px!important; margin-right: 0px!important; padding: 0px;
}
.columns > .outer {
	min-width: 215px; max-width: 215px;
}

.columns.nowrap, .rows.nowrap {
    flex-wrap: nowrap;
    justify-content: space-between;
    
}
.columns.nowrap > *, .rows.nowrap > * {
    min-width: 64px;
}

.masonry { /* Masonry container */
	width:100%; max-width:100%; min-width:100%; display:block; 
	-webkit-column-count: 8; /* Chrome, Safari, Opera */
	-moz-column-count: 8; /* Firefox */
	-ms-column-count: 8;
	-o-column-count: 8;
	column-count: 8;
	
	-webkit-column-gap:0;
	-moz-column-gap:0;
	column-gap:0;
	
	vertical-align: top;
}
.masonry > * { /* Masonry bricks or child elements */
	display: inline-block; vertical-align: top;
    width: 100%; margin:0;
	
	-webkit-column-break-inside:avoid;
	-moz-column-break-inside:avoid;
	-ms-column-break-inside:avoid;
	-o-column-break-inside:avoid;
	column-break-inside:avoid;
	
	-webkit-backface-visibility:hidden;
	-moz-backface-visibility:hidden;
	-ms-backface-visibility:hidden;
	-o-backface-visibility:hidden;
	backface-visibility:hidden;
}



/*
	Folding points
	General minimum is 256px wide with 30px padding (286px total)
*/
.columns.fold-desktop {}
.columns.fold-tablet {}
.columns.fold-phone {}

@media all and (max-width: 2048px) {
	.masonry {
	    -webkit-column-count: 7; /* Chrome, Safari, Opera */
		-moz-column-count: 7; /* Firefox */
		column-count: 7;
    }
}

@media all and (max-width: 1792px) {
	.masonry {
	    -webkit-column-count: 6; /* Chrome, Safari, Opera */
		-moz-column-count: 6; /* Firefox */
		column-count: 6;
    }
}

@media all and (max-width: 1536px) {
	.columns.fold-desktop-l {
        -webkit-flex-direction: column;
        -moz-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-orient: vertical;
        -moz-box-orient: vertical;
        -ms-box-orient: vertical;
        box-orient: vertical;
    }
    .columns.fold-desktop-l > * {
        padding-left: 	5vw !important;
        padding-right: 	5vw !important;
        padding-top: 	5vw !important;
        padding-bottom: 5vw !important;
        min-width: 		100%!important;
        max-width: 		100%!important;
    }
	
	.masonry {
	    -webkit-column-count: 5; /* Chrome, Safari, Opera */
		-moz-column-count: 5; /* Firefox */
		column-count: 5;
    }
}
@media all and (max-width: 1366px) {
	/*
    	iPad Pro landscape
    	Maximum is 1366px wide with 80px padding (40px left and right)
	*/
}

@media all and (max-width: 1280px) {
    /*
    	Regular desktop screen
    	Maximum is 1250px wide with 30px padding (15px left and right)
	*/
    .columns.fold-desktop, .columns.fold-desktop-l, .columns.fold-desktop-r {
        -webkit-flex-direction: column;
        -moz-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-orient: vertical;
        -moz-box-orient: vertical;
        -ms-box-orient: vertical;
        box-orient: vertical;
    }
    .columns.fold-desktop > * , .columns.fold-desktop-l > * , .columns.fold-desktop-r > * {
        padding-left: 	5vw !important;
        padding-right: 	5vw !important;
        padding-top: 	5vw !important;
        padding-bottom: 5vw !important;
        min-width: 		100%!important;
        max-width: 		100%!important;
    }
    
    .masonry {
	    -webkit-column-count: 4; /* Chrome, Safari, Opera */
		-moz-column-count: 4; /* Firefox */
		column-count: 4;
    }
    
    
}

@media all and (max-width: 1024px) {
    /*
    	Regular tablet screen - landscape
    	Maximum is 994px wide with 30px padding (15px left and right)
    */
    .columns.fold-desktop, .columns.fold-desktop-l, .columns.fold-desktop-r, .columns.fold-desktop-s,
	.columns.fold-tablet-l{
        -webkit-flex-direction: column;
        -moz-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-orient: vertical;
        -moz-box-orient: vertical;
        -ms-box-orient: vertical;
        box-orient: vertical;
    }
    .columns.fold-desktop > * , .columns.fold-desktop-l > * , .columns.fold-desktop-r > *, .columns.fold-desktop-s > *,
    .columns.fold-tablet-l > * {
        padding-left: 	5vw !important;
        padding-right: 	5vw !important;
        padding-top: 	5vw !important;
        padding-bottom: 5vw !important;
        min-width: 		100%!important;
        max-width: 		100%!important;
    }
    
    .masonry {
	    -webkit-column-count: 3; /* Chrome, Safari, Opera */
		-moz-column-count: 3; /* Firefox */
		column-count: 3;
    }
}

@media all and (max-width: 896px) {
    /*
    	Regular tablet screen - portrait
    	Maximum is 866px wide with 30px padding (15px left and right)
    */
    .page { padding: 0 40px; }
    .columns.fold-desktop, .columns.fold-desktop-l, .columns.fold-desktop-r, .columns.fold-desktop-s,
	.columns.fold-tablet, .columns.fold-tablet-l, .columns.fold-tablet-r {
        -webkit-flex-direction: column;
        -moz-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-orient: vertical;
        -moz-box-orient: vertical;
        -ms-box-orient: vertical;
        box-orient: vertical;
    }
    .columns.fold-desktop > * , .columns.fold-desktop-l > * , .columns.fold-desktop-r > *, .columns.fold-desktop-s > *,
    .columns.fold-tablet > * , .columns.fold-tablet-l > * , .columns.fold-tablet-r > * {
        padding-left: 	5vw !important;
        padding-right: 	5vw !important;
        padding-top: 	5vw !important;
        padding-bottom: 5vw !important;
        min-width: 		100%!important;
        max-width: 		100%!important;
    }
    
    .masonry {
	    -webkit-column-count: 2; /* Chrome, Safari, Opera */
		-moz-column-count: 2; /* Firefox */
		column-count: 2;
    }
    
}

@media all and (max-width: 768px) {
    /*
    	WooCommerce folding point
    	Gutenberg folding point
    	Maximum is 738px wide with 30px padding (15px left and right)
    */
	.columns.fold-desktop, .columns.fold-desktop-l, .columns.fold-desktop-r, .columns.fold-desktop-s,
	.columns.fold-tablet, .columns.fold-tablet-l, .columns.fold-tablet-r, .columns.fold-tablet-s,
    .columns.fold-phone-l {
        -webkit-flex-direction: column;
        -moz-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-orient: vertical;
        -moz-box-orient: vertical;
        -ms-box-orient: vertical;
        box-orient: vertical;
    }
    .columns.fold-desktop > *, .columns.fold-desktop-l > *, .columns.fold-desktop-r > *, .columns.fold-desktop-s > *,
    .columns.fold-tablet > *, .columns.fold-tablet-l > *, .columns.fold-tablet-r > *, .columns.fold-tablet-s > *,
    .columns.fold-phone-l > * {
        padding-left: 	5vw !important;
        padding-right: 	5vw !important;
        padding-top: 	5vw !important;
        padding-bottom: 5vw !important;
        min-width: 		100%!important;
        max-width: 		100%!important;
    }
    
    .hide-mobile-l { display: none;}
    
    .masonry {
	    -webkit-column-count: 2; /* Chrome, Safari, Opera */
		-moz-column-count: 2; /* Firefox */
		column-count: 2;
    }
}
@media all and (max-width: 640px) {
	/*
    	Big mobile screen
    	Maximum is 610px wide with 30px padding (15px left and right)
    */
    .columns.fold-desktop, .columns.fold-desktop-l, .columns.fold-desktop-r, .columns.fold-desktop-s,
	.columns.fold-tablet, .columns.fold-tablet-l, .columns.fold-tablet-r, .columns.fold-tablet-s,
    .columns.fold-phone, .columns.fold-phone-l, .columns.fold-phone-r{
        -webkit-flex-direction: column;
        -moz-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-orient: vertical;
        -moz-box-orient: vertical;
        -ms-box-orient: vertical;
        box-orient: vertical;
    }
    .columns.fold-desktop > * , .columns.fold-desktop-l > * , .columns.fold-desktop-r > *, .columns.fold-desktop-s > *,
    .columns.fold-tablet > * , .columns.fold-tablet-l > * , .columns.fold-tablet-r > *, .columns.fold-tablet-s > *,
    .columns.fold-phone > * , .columns.fold-phone-l > * , .columns.fold-phone-r > *{
        padding-left: 	5vw !important;
        padding-right: 	5vw !important;
        padding-top: 	5vw !important;
        padding-bottom: 5vw !important;
        min-width: 		100%!important;
        max-width: 		100%!important;
    }
    .hide-mobile, .hide-mobile-r { display: none;}
    
    .masonry {
	    -webkit-column-count: 2; /* Chrome, Safari, Opera */
		-moz-column-count: 2; /* Firefox */
		column-count: 2;
    }
   
    .wp-block-columns {
	    -webkit-flex-direction: column;
        -moz-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-orient: vertical;
        -moz-box-orient: vertical;
        -ms-box-orient: vertical;
        box-orient: vertical;
    }
    
    
}

@media all and (max-width: 512px) {
    /*
    	Regular mobile screen
    	Maximum is 482px wide with 30px padding (15px left and right)
    */
    .page { padding: 0 40px; }
    .columns.fold-desktop, .columns.fold-desktop-l, .columns.fold-desktop-r, .columns.fold-desktop-s,
	.columns.fold-tablet, .columns.fold-tablet-l, .columns.fold-tablet-r, .columns.fold-tablet-s,
    .columns.fold-phone, .columns.fold-phone-l, .columns.fold-phone-r, .columns.fold-phone-s {
        -webkit-flex-direction: column;
        -moz-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-orient: vertical;
        -moz-box-orient: vertical;
        -ms-box-orient: vertical;
        box-orient: vertical;
    }
    .columns.fold-desktop > * , .columns.fold-desktop-l > * , .columns.fold-desktop-r > *, .columns.fold-desktop-s > *,
    .columns.fold-tablet > * , .columns.fold-tablet-l > * , .columns.fold-tablet-r > *, .columns.fold-tablet-s > *,
    .columns.fold-phone > * , .columns.fold-phone-l > * , .columns.fold-phone-r > *, .columns.fold-phone-s > * {
        padding-left: 	5vw !important;
        padding-right: 	5vw !important;
        padding-top: 	5vw !important;
        padding-bottom: 5vw !important;
        min-width: 		100%!important;
        max-width: 		100%!important;
    }
    
    .masonry {
	    -webkit-column-count: 1; /* Chrome, Safari, Opera */
		-moz-column-count: 1; /* Firefox */
		column-count: 1;
    }
    
}

@media all and (max-width: 360px) {
    /*
    	Smallest mobile screen
    	Maximum is 330px wide with 30px padding (15px left and right)
    */
	.columns.fold-desktop, .columns.fold-desktop-l, .columns.fold-desktop-r, .columns.fold-desktop-s,
	.columns.fold-tablet, .columns.fold-tablet-l, .columns.fold-tablet-r, .columns.fold-tablet-s,
    .columns.fold-phone, .columns.fold-phone-l, .columns.fold-phone-r, .columns.fold-phone-s, .columns.fold-phone-xs {
        -webkit-flex-direction: column;
        -moz-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-orient: vertical;
        -moz-box-orient: vertical;
        -ms-box-orient: vertical;
        box-orient: vertical;
    }
    .columns.fold-desktop > * , .columns.fold-desktop-l > * , .columns.fold-desktop-r > *, .columns.fold-desktop-s > *,
    .columns.fold-tablet > * , .columns.fold-tablet-l > * , .columns.fold-tablet-r > *, .columns.fold-tablet-s > *,
    .columns.fold-phone > * , .columns.fold-phone-l > * , .columns.fold-phone-r > *, .columns.fold-phone-s > *, .columns.fold-phone-xs > * {
        padding-left: 	5vw !important;
        padding-right: 	5vw !important;
        padding-top: 	5vw !important;
        padding-bottom: 5vw !important;
        min-width: 		100%!important;
        max-width: 		100%!important;
    }
    
    .masonry {
	    -webkit-column-count: 1; /* Chrome, Safari, Opera */
		-moz-column-count: 1; /* Firefox */
		column-count: 1;
    }
    
    header h4, header p, header ul, header ol, header a, header label, header select, header input, header textarea, main h4, main p, main ul, main ol, main a, main label, main select, main input, main textarea, footer h4, footer p, footer ul, footer ol, footer a, footer label, footer select, footer input, footer textarea { font-size: 1.5rem!important;}
}

*[responsive-background-image] img {
  display: none; width:100%!important;
}




/* Flex container */
	*.-columns,
	*.-rows { 
		display: -webkit-flex;
	    display: -webkit-box;
	    display: -moz-flex;
	    display: -moz-box;
	    display: -ms-flexbox;
	    display: flex;
	}
	*.-columns {    
	    -webkit-box-orient: horizontal;
	    -moz-box-orient: horizontal;
	    -ms-box-orient: horizontal;
	    -o-box-orient: horizontal;
	    box-orient: horizontal;
	    
	    -webkit-flex-direction: row;
	    -moz-flex-direction: row;
	    -ms-flex-direction: row;
	    -o-flex-direction: row;
	    flex-direction: row;
	    
	    -webkit-flex-wrap: wrap;
	    -moz-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	    -o-flex-wrap: wrap;
	    flex-wrap: wrap;
	    
	    -webkit-align-items: stretch;
	    -moz-align-items: stretch;
	    -ms-align-items: stretch;
	    -o-align-items: stretch;
	    align-items: stretch;
	    
	    justify-content: flex-start;
	    width: 100%;
	}
	*.-rows {    
	    -webkit-box-orient: vertical;
	    -moz-box-orient: vertical;
	    -ms-box-orient: vertical;
	    -o-box-orient: vertical;
	    box-orient: vertical;
	    
	    -webkit-flex-direction: column;
	    -moz-flex-direction: column;
	    -ms-flex-direction: column;
	    -o-flex-direction: column;
	    flex-direction: column;
	    
	    -webkit-align-items: stretch;
	    -moz-align-items: stretch;
	    -ms-align-items: stretch;
	    -o-align-items: stretch;
	    align-items: stretch;
	    
	    justify-content: center;
	    width: 100%;
	}
	.-columns > * ,
	.-rows > * {
	    -webkit-box-flex: 1; /* OLD - iOS 6-, Safari 3.1-6 */
	    -moz-box-flex: 1; /* OLD - Firefox 19- */
	    -webkit-flex: 1; /* Chrome */
	    -ms-flex: 1; /* IE 10 */
	    flex: 1;
	    
	    -webkit-align-self: stretch;
	    -moz-align-self: stretch;
	    -ms-align-self: stretch;
	    -o-align-self: stretch;
	    align-self: stretch;
	    
	    min-width:256px; margin-left: 0px; margin-right: 0px; padding: 0px;
	}
	.-columns.-nowrap, .-rows.-nowrap {
	    -webkit-flex-wrap: nowrap;
	    -moz-flex-wrap: nowrap;
	    -ms-flex-wrap: nowrap;
	    -o-flex-wrap: nowrap;
	    flex-wrap: nowrap;
	    
	    justify-content: space-between;
	}
	.-columns.-nowrap > *, .-rows.-nowrap > * {
		-webkit-box-flex: 0 0 auto; /* OLD - iOS 6-, Safari 3.1-6 */
	    -moz-box-flex: 0 0 auto; /* OLD - Firefox 19- */
	    -webkit-flex: 0 0 auto; /* Chrome */
	    -ms-flex: 0 0 auto; /* IE 10 */
	    flex: 0 0 auto;
		
		min-width: 64px;
	}

/* Masonry container */
	.-masonry { 
		display:block; width:100%; max-width:100%; min-width:100%; vertical-align: top;
		
		-webkit-column-count: 8; /* Chrome, Safari, Opera */
		-moz-column-count: 8; /* Firefox */
		-ms-column-count: 8;
		-o-column-count: 8;
		column-count: 8;
		
		-webkit-column-gap:0;
		-moz-column-gap:0;
		-ms-column-gap:0;
		-o-column-gap:0;
		column-gap:0;	
	}
	.-masonry > * {
		display: inline-block; width: 100%; margin:0; padding: 0px; vertical-align: top; 
		
		-webkit-column-break-inside:avoid;
		-moz-column-break-inside:avoid;
		-ms-column-break-inside:avoid;
		-o-column-break-inside:avoid;
		column-break-inside:avoid;
		
		-webkit-backface-visibility:hidden;
		-moz-backface-visibility:hidden;
		-ms-backface-visibility:hidden;
		-o-backface-visibility:hidden;
		backface-visibility:hidden;
	}
/* Wrapping */
	.-page { padding: 0 30px;}
	.-wrap { max-width: 1280px; margin:0 auto;}
	
	h1, h2, h3, h4, h5, h6 { margin:0px; padding: 0px;}
	h1 {}
	h2 { padding-bottom: 30px;}
	h3 {}
	h4 {}
	h5 {}
	h6 {}
	p { margin: 0px; margin-bottom: 30px;}
	p:last-of-type { margin-bottom: 0px;}