/* Aux. classes */


.form-group { margin: 0 0 10px 0; }
.form-label { display: block; }
.form-control { border: solid 1px #ccc; padding: 0.5em 1em; line-height: 1.3em; font-size: inherit; width: 100%; background: #fff; }
textarea.form-control { resize: none; }
select.form-control { -webkit-appearance: none; -moz-appearance: none; appearance: none; }


.vtop { vertical-align: top !important; }
.vbottom { vertical-align: bottom !important; }
.vaflex { display: flex; align-items: center; }
.vtflex { display: flex; align-items: top; }
.vbflex { display: flex; align-items: bottom; }

.tbl { display: table; width: 100%; vertical-align: middle; }
.tbl .trow { display: table-row; vertical-align: inherit; }
.tbl .tcol { display: table-cell; vertical-align: inherit; }
.tbl .tcol.um, .tbl .tcol.one { width: 1%; }
.tbl.grid > .tcol, .tbl.grid > .trow > .tcol { padding-right: 10px !important; padding-left: 10px !important; }
.tbl.grid.grid5 > .tcol, .tbl.grid.grid5 > .trow > .tcol.grid5 { padding-right: 2.5px !important; padding-left: 2.5px !important; }
.tbl.grid.grid10 > .tcol, .tbl.grid.grid10 > .trow > .tcol.grid10 { padding-right: 5px !important; padding-left: 5px !important; }
.tbl.grid.grid20 > .tcol, .tbl.grid.grid20 > .trow > .tcol.grid20 { padding-right: 10px !important; padding-left: 10px !important; }
.tbl.grid > .tcol:first-child, .tbl.grid > .trow > .tcol:first-child { padding-left: 0px !important; }
.tbl.grid > .tcol:last-child, .tbl.grid > .trow > .tcol:last-child { padding-right: 0px !important; }
.tbl.tbl2 > .tcol { width: 50%; }
.tbl.tbl3 > .tcol { width: 33.33%; }
.tbl.tbl4 > .tcol { width: 25%; }
.tbl.tbl5 > .tcol { width: 20%; }

.flexv { display: flex; align-items: center; }
.flexh { display: flex; justify-content: center; }
.flexvh { display: flex; align-items: center; justify-content: center; }
.flexv > .col, .flexh > .col, .flexvh > .col { display: block; width: 100%; }


.u, .hu:hover { text-decoration: underline; }
.hu, .u:hover { text-decoration: none; }

.nowrp { white-space: nowrap; }
.nmwrp { white-space: normal; }


.mg0  { margin-bottom: 0px !important; }	.mg0q { margin-bottom: 0.25em !important; }		.mg0h { margin-bottom: 0.5em !important; }		.mg0hq { margin-bottom: 0.75em !important; }
.mg01 { margin-bottom: 0.1em !important; } 	.mg02  { margin-bottom: 0.2em !important; }		.mg03  { margin-bottom: 0.3em !important; }		.mg04  { margin-bottom: 0.4em !important; }
.mg1  { margin-bottom: 1em !important; }	.mg1q { margin-bottom: 1.25em !important; }		.mg1h { margin-bottom: 1.5em !important; }		.mg1hq { margin-bottom: 1.75em !important; }
.mg2  { margin-bottom: 2em !important; }	.mg2q { margin-bottom: 2.25em !important; }		.mg2h { margin-bottom: 2.5em !important; }		.mg2hq { margin-bottom: 2.75em !important; }
.mg3  { margin-bottom: 3em !important; }	.mg3q { margin-bottom: 3.25em !important; }		.mg3h  { margin-bottom: 3.5em !important; }		.mg3hq { margin-bottom: 3.75em !important; }
.mg4  { margin-bottom: 4em !important; }	.mg4q { margin-bottom: 4.25em !important; }		.mg4h  { margin-bottom: 4.5em !important; }		.mg4hq { margin-bottom: 4.75em !important; }
.mg5  { margin-bottom: 5em !important; }	.mg5q { margin-bottom: 4.25em !important; }		.mg5h  { margin-bottom: 4.5em !important; }		.mg5hq { margin-bottom: 4.75em !important; }
.mg6  { margin-bottom: 6em !important; }	.mg6q { margin-bottom: 4.25em !important; }		.mg6h  { margin-bottom: 4.5em !important; }		.mg6hq { margin-bottom: 4.75em !important; }
.mg7  { margin-bottom: 7em !important; }	.mg7q { margin-bottom: 4.25em !important; }		.mg7h  { margin-bottom: 4.5em !important; }		.mg7hq { margin-bottom: 4.75em !important; }
.mg8  { margin-bottom: 8em !important; }	.mg8q { margin-bottom: 4.25em !important; }		.mg8h  { margin-bottom: 4.5em !important; }		.mg8hq { margin-bottom: 4.75em !important; }
.mg9  { margin-bottom: 9em !important; }	.mg9q { margin-bottom: 4.25em !important; }		.mg9h  { margin-bottom: 4.5em !important; }		.mg9hq { margin-bottom: 4.75em !important; }
.mg10 { margin-bottom: 10em !important; }
.mg11 { margin-bottom: 11em !important; }
.mg12 { margin-bottom: 12em !important; }
.mg13 { margin-bottom: 13em !important; }
.mg14 { margin-bottom: 14em !important; }
.mg15 { margin-bottom: 15em !important; }
.mg16 { margin-bottom: 16em !important; }
.mg17 { margin-bottom: 17em !important; }
.mg18 { margin-bottom: 18em !important; }
.mg19 { margin-bottom: 19em !important; }
.mg20 { margin-bottom: 20em !important; }
.mggrid { margin-bottom: 30px !important; }

.b100 { display: block; width: 100%; text-align: center; }

.txtl { text-align: left !important; }	.txtr { text-align: right !important; }	.txtc { text-align: center !important; }

.color1, .color1h:hover { color: #ff0000; }
.bg1, bg1h:hover { background-color: #ff0000; }
.brd1, .brd1h:hover { border-color: #ff0000; }

.fwthin { font-weight: 100 !important; }
.fwexlight { font-weight: 200 !important; }
.fwlight { font-weight: 300 !important; }
.fwnormal { font-weight: normal !important; }
.fwmedium { font-weight: 500 !important; }
.fwsemibold { font-weight: 600 !important; }
.fwbold { font-weight: bold !important; }
.fwextrabold { font-weight: 800 !important; }
.fwblack { font-weight: 900 !important; }

.ttupper { text-transform: uppercase; }
.ttlower { text-transform: lowercase; }
.ttnone { text-transform: none; }

.base16-9, .base-wide { position: relative; width: 100%; padding: 56.25% 0 0 0; display: block; }
.base9-16 { position: relative; width: 100%; padding: 178% 0 0 0; display: block; }
.base4-3, .base-tv { position: relative; width: 100%; padding: 75% 0 0 0; display: block; }
.base3-4 { position: relative; width: 100%; padding: 133% 0 0 0; display: block; }
.base1-1, .base-sq { position: relative; width: 100%; padding: 100% 0 0 0; display: block; }
.imgbg { background: center center no-repeat; background-size: cover; display: block; overflow: hidden; }
.fit { position: absolute !important; left: 0; top: 0; width: 100%; height: 100%; }

.imgfit { object-fit: cover; object-position: center center; display: block; width: 100%; height: 100%; position: relative; z-index: 1; }

.after-overlay { position: relative; }
.after-overlay:after { content: ""; z-index: 10; position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: #000; opacity: 0.9; transition: all 0.2s; }

.clickscale:active { transform: scale(0.95); }


.zi0 { z-index: 0 !important; }
.zi1 { z-index: 1 !important; }
.zi500 { z-index: 500 !important; }
.zi1000 { z-index: 1000 !important; }
.zi2000 { z-index: 2000 !important; }
.zi3000 { z-index: 3000 !important; }
.zi4000 { z-index: 4000 !important; }
.zi5000 { z-index: 5000 !important; }

.extend-bg, .extend-bg-r, .extend-bg-l { position: relative; }
.extend-bg:before,
.extend-bg:after,
.extend-bg-r:after,
.extend-bg-l:before { content: ""; position: absolute; height: 100%; background: inherit; width: 3000px; z-index: 0; top: 0; }
.extend-bg:before,
.extend-bg-l:before { left: -3000px; }
.extend-bg:after,
.extend-bg-r:after{ right: -3000px; }




/* ==========================================================================
   Resposive
   ========================================================================== */

@media (min-width: 1244px) {
	.q-lg { margin-bottom: 30px; }
	.qh-lg { margin-bottom: 15px; }
}


@media (max-width: 1243px) {
	.q-md { margin-bottom: 30px; }
	.qh-md { margin-bottom: 15px; }
	.tbl > .tcol.b-md, .tbl > .trow > .tcol.b-md, .tbl.b-md > .tcol, .tbl.b-md > .trow > .tcol { display: block; width: 100% !important; }
	.tbl.grid > .tcol.b-md, .tbl.grid > .trow > .tcol.b-md, .tbl.grid.b-md > .tcol, .tbl.grid.b-md > .trow > .tcol { padding-left: 0px !important; padding-right: 0px !important; }
	.txtl-md { text-align: left !important; }	.txtr-md { text-align: right !important; }	.txtc-md { text-align: center !important; }
	.b100-md { display: block; width: 100%; text-align: center; }
	
}

@media (max-width: 991px) {
	.q-sm { margin-bottom: 30px; }
	.qh-sm { margin-bottom: 15px; }
	.tbl > .tcol.b-sm, .tbl > .trow > .tcol.b-sm, .tbl.b-sm > .tcol, .tbl.b-sm > .trow > .tcol { display: block; width: 100% !important; }
	.tbl.grid > .tcol.b-sm, .tbl.grid > .trow > .tcol.b-sm, .tbl.grid.b-sm > .tcol, .tbl.grid.b-sm > .trow > .tcol { padding-left: 0px !important; padding-right: 0px !important; }
	.txtl-sm { text-align: left !important; }	.txtr-sm { text-align: right !important; }	.txtc-sm { text-align: center !important; }
	.b100-sm { display: block; width: 100%; text-align: center; }
	
	.mg0-sm  { margin-bottom: 0px !important; }	.mg0h-sm { margin-bottom: 0.5em !important; }
	.mg1-sm  { margin-bottom: 1em !important; }	.mg1h-sm { margin-bottom: 1.5em !important; }
	.mg2-sm  { margin-bottom: 2em !important; }	.mg2h-sm { margin-bottom: 2.5em !important; }
	.mg3-sm  { margin-bottom: 3em !important; }	.mg3h-sm { margin-bottom: 3.5em !important; }
	.mg4-sm  { margin-bottom: 4em !important; }	.mg4h-sm { margin-bottom: 4.5em !important; }
	.mg5-sm  { margin-bottom: 5em !important; }	.mg5h-sm { margin-bottom: 5.5em !important; }
	.mg6-sm  { margin-bottom: 6em !important; }	.mg7-sm { margin-bottom: 7em !important; }
	.mg8-sm  { margin-bottom: 8em !important; }	.mg9-sm { margin-bottom: 9em !important; }
	
}

@media (max-width: 767px) {
	.q-xs { margin-bottom: 30px; }
	.qh-xs { margin-bottom: 15px; }
	.tbl > .tcol.b-xs, .tbl > .trow > .tcol.b-xs, .tbl.b-xs > .tcol, .tbl.b-xs > .trow > .tcol { display: block; width: 100% !important; }
	.tbl.grid > .tcol.b-xs, .tbl.grid > .trow > .tcol.b-xs, .tbl.grid.b-xs > .tcol, .tbl.grid.b-xs > .trow > .tcol { padding-left: 0px !important; padding-right: 0px !important; }
	.txtl-xs { text-align: left !important; }	.txtr-xs { text-align: right !important; }	.txtc-xs { text-align: center !important; }
	.b100-xs { display: block; width: 100%; text-align: center; }
	
	.mg0-xs  { margin-bottom: 0px !important; }	.mg0h-xs { margin-bottom: 0.5em !important; }
	.mg1-xs  { margin-bottom: 1em !important; }	.mg1h-xs { margin-bottom: 1.5em !important; }
	.mg2-xs  { margin-bottom: 2em !important; }	.mg2h-xs { margin-bottom: 2.5em !important; }
	.mg3-xs  { margin-bottom: 3em !important; }	.mg3h-xs { margin-bottom: 3.5em !important; }
	.mg4-xs  { margin-bottom: 4em !important; }	.mg4h-xs { margin-bottom: 4.5em !important; }
	.mg5-xs  { margin-bottom: 5em !important; }	.mg5h-xs { margin-bottom: 5.5em !important; }
	.mg6-xs  { margin-bottom: 6em !important; }	.mg7-xs { margin-bottom: 7em !important; }
	.mg8-xs  { margin-bottom: 8em !important; }	.mg9-xs { margin-bottom: 9em !important; }
	
}

@media (max-width: 575px) {
	.q-xxs { margin-bottom: 30px; }
	.qh-xxs { margin-bottom: 15px; }
	.tbl > .tcol.b-xxs, .tbl > .trow > .tcol.b-xxs, .tbl.b-xxs > .tcol, .tbl.b-xxs > .trow > .tcol { display: block; width: 100% !important; }
	.tbl.grid > .tcol.b-xxs, .tbl.grid > .trow > .tcol.b-xxs, .tbl.grid.b-xxs > .tcol, .tbl.grid.b-xxs > .trow > .tcol { padding-left: 0px !important; padding-right: 0px !important; }
	.txtl-xxs { text-align: left !important; }	.txtr-xxs { text-align: right !important; }	.txtc-xxs { text-align: center !important; }
	.b100-xxs { display: block; width: 100%; text-align: center; }
	.visible-xxs-block { display: block !important; } .visible-xxs-inline-block { display: inline-block !important; } .hidden-xxs { display: none !important; }
}
