/* 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: 0.75rem !important; padding-left: 0.75rem !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; }

.block100 { 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, .fw100 { font-weight: 100 !important; }
.fwexlight, .fw200 { font-weight: 200 !important; }
.fwlight, .fw300 { font-weight: 300 !important; }
.fwnormal, .fw400 { font-weight: normal !important; }
.fwmedium, .fw500 { font-weight: 500 !important; }
.fwsemibold, .fw600 { font-weight: 600 !important; }
.fwbold, .fw700 { font-weight: bold !important; }
.fwextrabold, .fw800 { font-weight: 800 !important; }
.fwblack, .fw900 { 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.9); }

.hidden { display: none !important; }


.zi0 { z-index: 0 !important; }
.zi1 { z-index: 1 !important; } .zi2 { z-index: 2 !important; } .zi3 { z-index: 3 !important; } .zi4 { z-index: 4 !important; }
.zi10 { z-index: 10 !important; }
.zi100 { z-index: 100 !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 (desktop first)
   ========================================================================== */

@media (max-width: 1399px) {
	.q-xl { margin-bottom: 1.5rem; }
	.qd-xl { margin-bottom: 3rem; }
	.qh-xl { margin-bottom: 0.75rem; }
	.tbl > .tcol.b-xl, .tbl > .trow > .tcol.b-xl, .tbl.b-xl > .tcol, .tbl.b-xl > .trow > .tcol { display: block; width: 100% !important; }
	.tbl.grid > .tcol.b-xl, .tbl.grid > .trow > .tcol.b-xl, .tbl.grid.b-xl > .tcol, .tbl.grid.b-xl > .trow > .tcol { padding-left: 0px !important; padding-right: 0px !important; }
	.txtl-xl { text-align: left !important; }	.txtr-xl { text-align: right !important; }	.txtc-xl { text-align: center !important; }
	.b100-xl { display: block; width: 100%; text-align: center; }
	.hide-xl { display: none !important; }
	
}


@media (max-width: 1199px) {
	.q-lg { margin-bottom: 1.5rem; }
	.qd-lg { margin-bottom: 3rem; }
	.qh-lg { margin-bottom: 0.75rem; }
	.tbl > .tcol.b-lg, .tbl > .trow > .tcol.b-lg, .tbl.b-lg > .tcol, .tbl.b-lg > .trow > .tcol { display: block; width: 100% !important; }
	.tbl.grid > .tcol.b-lg, .tbl.grid > .trow > .tcol.b-lg, .tbl.grid.b-lg > .tcol, .tbl.grid.b-lg > .trow > .tcol { padding-left: 0px !important; padding-right: 0px !important; }
	.txtl-lg { text-align: left !important; }	.txtr-lg { text-align: right !important; }	.txtc-lg { text-align: center !important; }
	.b100-lg { display: block; width: 100%; text-align: center; }
	
}

@media (max-width: 991px) {
	.q-md { margin-bottom: 1.5rem; }
	.qd-md { margin-bottom: 3rem; }
	.qh-md { margin-bottom: 0.75rem; }
	.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; }
	
	.mg0-md  { margin-bottom: 0px !important; }	.mg0h-md { margin-bottom: 0.5em !important; }
	.mg1-md  { margin-bottom: 1em !important; }	.mg1h-md { margin-bottom: 1.5em !important; }
	.mg2-md  { margin-bottom: 2em !important; }	.mg2h-md { margin-bottom: 2.5em !important; }
	.mg3-md  { margin-bottom: 3em !important; }	.mg3h-md { margin-bottom: 3.5em !important; }
	.mg4-md  { margin-bottom: 4em !important; }	.mg4h-md { margin-bottom: 4.5em !important; }
	.mg5-md  { margin-bottom: 5em !important; }	.mg5h-md { margin-bottom: 5.5em !important; }
	.mg6-md  { margin-bottom: 6em !important; }	.mg7-md { margin-bottom: 7em !important; }
	.mg8-md  { margin-bottom: 8em !important; }	.mg9-md { margin-bottom: 9em !important; }
	
}

@media (max-width: 767px) {
	.q-sm { margin-bottom: 1.5rem; }
	.qd-sm { margin-bottom: 3rem; }
	.qh-sm { margin-bottom: 0.75rem; }
	.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: 575px) {
	.q-xs { margin-bottom: 1.5rem; }
	.qd-xs { margin-bottom: 3rem; }
	.qh-xs { margin-bottom: 0.75rem; }
	.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; }
	.visible-xs-block { display: block !important; } .visible-xs-inline-block { display: inline-block !important; } .hidden-xs { display: none !important; }
}



/* RESPONSIVE (range) */

.visible-xxl, .visible-xxl-block, .visible-xxl-inline-block, .visible-xxl-inline, .visible-xxl-table,
.visible-xl, .visible-xl-block, .visible-xl-inline-block, .visible-xl-inline, .visible-xl-table,
.visible-lg, .visible-lg-block, .visible-lg-inline-block, .visible-lg-inline, .visible-lg-table,
.visible-md, .visible-md-block, .visible-md-inline-block, .visible-md-inline, .visible-md-table,
.visible-sm, .visible-sm-block, .visible-sm-inline-block, .visible-sm-inline, .visible-sm-table,
.visible-xs, .visible-xs-block, .visible-xs-inline-block, .visible-xs-inline, .visible-xs-table { display: none; }


@media (min-width: 1400px) {
	.hidden-xxl { display: none !important; }
	.visible-xxl { display: block !important; }
	.visible-xxl-block { display: block !important; }
	.visible-xxl-inline-block { display: inline-block !important; }
	.visible-xxl-inline { display: inline !important; }
	.visible-xxl-table { display: table !important; }
}

@media (min-width: 1200) and (max-width: 1399px) {
	.hidden-xl { display: none !important; }
	.visible-xl { display: block !important; }
	.visible-xl-block { display: block !important; }
	.visible-xl-inline-block { display: inline-block !important; }
	.visible-xl-inline { display: inline !important; }
	.visible-xl-table { display: table !important; }
}

@media (min-width: 992px) and (max-width: 1199px) {
	.hidden-lg { display: none !important; }
	.visible-lg { display: block !important; }
	.visible-lg-block { display: block !important; }
	.visible-lg-inline-block { display: inline-block !important; }
	.visible-lg-inline { display: inline !important; }
	.visible-lg-table { display: table !important; }
}

@media (min-width: 768px) and (max-width: 991px) {
	.hidden-md { display: none !important; }
	.visible-md { display: block !important; }
	.visible-md-block { display: block !important; }
	.visible-md-inline-block { display: inline-block !important; }
	.visible-md-inline { display: inline !important; }
	.visible-md-table { display: table !important; }
}

@media (min-width: 576px) and (max-width: 767px) {
	.hidden-sm { display: none !important; }
	.visible-sm { display: block !important; }
	.visible-sm-block { display: block !important; }
	.visible-sm-inline-block { display: inline-block !important; }
	.visible-sm-inline { display: inline !important; }
	.visible-sm-table { display: table !important; }
}

@media (max-width: 575px) {
	.hidden-xs { display: none !important; }
	.visible-xs { display: block !important; }
	.visible-xs-block { display: block !important; }
	.visible-xs-inline-block { display: inline-block !important; }
	.visible-xs-inline { display: inline !important; }
	.visible-xs-table { display: table !important; }
}


