/*
**********************************
Class position, float, display
*/

.fixed {
	position: fixed;
	top: 0;
	z-index: 100000;
}

.static {
	position: static;
}

.relative {
	position: relative;
}

.left {
	float: left;
}

.right {
	float: right;
}

img.left {
	margin: 0.4em 1em 0.5em 0em;
}

img.right {
	margin: 0.4em 0em 0.5em 1em;
}

.block {
	display: block !important;
}

.inline {
	display: inline !important;
}

.hidden {
	display: none !important;
}

.show {
	display: block !important;
}

/*
**********************************
Class cores e bgs
*/

.bg-branco {
	background: #FFF;
}

.bg-azul-claro {
	background: #e8f7ff;
}

/*
**********************************
Class margin, padding
*/

.m-off {
	margin: 0 !important;
}

.m-off-top {
	margin-top: 0 !important;
}

.m-off-right {
	margin-right: 0 !important;
}

.m-off-bottom {
	margin-bottom: 0 !important;
}

.m-off-left {
	margin-left: 0 !important;
}

.m-on-0_2em {
	margin: 0.2em !important;
}

.m-on-0_2em-top {
	margin-top: 0.2em !important;
}

.m-on-0_2em-right {
	margin-right: 0.2em !important;
}

.m-on-0_2em-bottom {
	margin-bottom: 0.2em !important;
}

.m-on-0_2em-left {
	margin-left: 0.2em !important;
}

.m-on-0_4em {
	margin: 0.4em !important;
}

.m-on-0_4em-top {
	margin-top: 0.4em !important;
}

.m-on-0_4em-right {
	margin-right: 0.4em !important;
}

.m-on-0_4em-bottom {
	margin-bottom: 0.4em !important;
}

.m-on-0_4em-left {
	margin-left: 0.4em !important;
}

.m-on-0_6em {
	margin: 0.6em !important;
}

.m-on-0_6em-top {
	margin-top: 0.6em !important;
}

.m-on-0_6em-right {
	margin-right: 0.6em !important;
}

.m-on-0_6em-bottom {
	margin-bottom: 0.6em !important;
}

.m-on-0_6em-left {
	margin-left: 0.6em !important;
}

.m-on-0_8em {
	margin: 0.8em !important;
}

.m-on-0_8em-top {
	margin-top: 0.8em !important;
}

.m-on-0_8em-right {
	margin-right: 0.8em !important;
}

.m-on-0_8em-bottom {
	margin-bottom: 0.8em !important;
}

.m-on-0_8em-left {
	margin-left: 0.8em !important;
}

.m-on-1em {
	margin: 1em !important;
}

.m-on-1em-top {
	margin-top: 1em !important;
}

.m-on-1em-right {
	margin-right: 1em !important;
}

.m-on-1em-bottom {
	margin-bottom: 1em !important;
}

.m-on-1em-left {
	margin-left: 1em !important;
}

.m-on-1_5em-top {
	margin-top: 1.5em !important;
}

.m-on-1_5em-right {
	margin-right: 1.5em !important;
}

.m-on-1_5em-bottom {
	margin-bottom: 1.5em !important;
}

.m-on-1_5em-left {
	margin-left: 1.5em !important;
}

.m-on-2em {
	margin: 2em !important;
}

.m-on-2em-top {
	margin-top: 2em !important;
}

.m-on-2em-right {
	margin-right: 2em !important;
}

.m-on-2em-bottom {
	margin-bottom: 2em !important;
}

.m-on-2em-left {
	margin-left: 2em !important;
}

.m-on-3em {
	margin: 3em !important;
}

.m-on-3em-top {
	margin-top: 3em !important;
}

.m-on-3em-right {
	margin-right: 3em !important;
}

.m-on-3em-bottom {
	margin-bottom: 3em !important;
}

.m-on-3em-left {
	margin-left: 3em !important;
}

.m-on-4em {
	margin: 4em !important;
}

.m-on-4em-top {
	margin-top: 4em !important;
}

.m-on-4em-right {
	margin-right: 4em !important;
}

.m-on-4em-bottom {
	margin-bottom: 4em !important;
}

.m-on-4em-left {
	margin-left: 4em !important;
}

.p-off {
	padding: 0 !important;
}

.p-off-top {
	padding-top: 0 !important;
}

.p-off-right {
	padding-right: 0 !important;
}

.p-off-bottom {
	padding-bottom: 0 !important;
}

.p-off-left {
	padding-left: 0 !important;
}

.p-on-0_2em {
	padding: 0.2em !important;
}

.p-on-0_2em-top {
	padding-top: 0.2em !important;
}

.p-on-0_2em-right {
	padding-right: 0.2em !important;
}

.p-on-0_2em-bottom {
	padding-bottom: 0.2em !important;
}

.p-on-0_2em-left {
	padding-left: 0.2em !important;
}

.p-on-0_4em {
	padding: 0.4em !important;
}

.p-on-0_4em-top {
	padding-top: 0.4em !important;
}

.p-on-0_4em-right {
	padding-right: 0.4em !important;
}

.p-on-0_4em-bottom {
	padding-bottom: 0.4em !important;
}

.p-on-0_4em-left {
	padding-left: 0.4em !important;
}

.p-on-0_6em {
	padding: 0.6em !important;
}

.p-on-0_6em-top {
	padding-top: 0.6em !important;
}

.p-on-0_6em-right {
	padding-right: 0.6em !important;
}

.p-on-0_6em-bottom {
	padding-bottom: 0.6em !important;
}

.p-on-0_6em-left {
	padding-left: 0.6em !important;
}

.p-on-0_8em {
	padding: 0.8em !important;
}

.p-on-0_8em-top {
	padding-top: 0.8em !important;
}

.p-on-0_8em-right {
	padding-right: 0.8em !important;
}

.p-on-0_8em-bottom {
	padding-bottom: 0.8em !important;
}

.p-on-0_8em-left {
	padding-left: 0.8em !important;
}

.p-on-1em {
	padding: 1em !important;
}

.p-on-1em-top {
	padding-top: 1em !important;
}

.p-on-1em-right {
	padding-right: 1em !important;
}

.p-on-1em-bottom {
	padding-bottom: 1em !important;
}

.p-on-1em-left {
	padding-left: 1em !important;
}

.p-on-1_4em {
	padding: 1.4em !important;
}

.p-on-2em {
	padding: 2em !important;
}

.p-on-2em-top {
	padding-top: 2em !important;
}

.p-on-2em-right {
	padding-right: 2em !important;
}

.p-on-2em-bottom {
	padding-bottom: 2em !important;
}

.p-on-2em-left {
	padding-left: 2em !important;
}

.p-on-3em {
	padding: 3em !important;
}

.p-on-3em-top {
	padding-top: 3em !important;
}

.p-on-3em-right {
	padding-right: 3em !important;
}

.p-on-3em-bottom {
	padding-bottom: 3em !important;
}

.p-on-3em-left {
	padding-left: 3em !important;
}

.p-on-4em {
	padding: 4em !important;
}

.p-on-4em-top {
	padding-top: 4em !important;
}

.p-on-4em-right {
	padding-right: 4em !important;
}

.p-on-4em-bottom {
	padding-bottom: 4em !important;
}

.p-on-4em-left {
	padding-left: 4em !important;
}

/*
**********************************
Class textos
*/  

.txt-ggg {
	font-size: 1.8em;
}

.txt-gg {
	font-size: 1.6em;
}

.txt-g {
	font-size: 1.4em;
}

.txt-m {
	font-size: 1.2em;
	line-height: 1.4em;
}

.txt-padrao {
	font-size: 1em;
}

.txt-p {
	font-size: 0.8em;
}

.txt-pp {
	font-size: 0.6em;
}

.txt-left {
	text-align: left !important;
}

.txt-center {
	text-align: center !important;
}

.txt-right {
	text-align: right !important;
}

.txt-branco, .lnk-branco, .lnk-branco:hover, .lnk-branco:active {
	color: #FFF;	
}

.txt-verde-claro, .lnk-verde-claro, .lnk-verde-claro:hover, .lnk-verde-claro:active {
	color: #9bc762;	
}

.txt-roxo, .lnk-roxo, .lnk-roxo:hover, .lnk-roxo:active {
	color: #65296f;	
}

.txt-rosa, .lnk-rosa, .lnk-rosa:hover, .lnk-rosa:active {
	color: #cd229f;	
}

.txt-cinza, .lnk-cinza, .lnk-cinza:hover, .lnk-cinza:active {
	color: #a0a4ae;	
}

.lowercase {
	text-transform: lowercase;
}

.uppercase {
	text-transform: uppercase;
}

.bold {
	font-family: 'SourceSansPro-Bold';
}


/*
**********************************
Class over e over animate para imagens
*/

a.over-animate, a.over {
    display: block;
    overflow: hidden;
    position: relative;
}

a.over-animate img, a.over img {
    left: 0;
    position: absolute;
    top: 0;
}


/*
**********************************
FIX - bugs unsemantic / zero padding
*/

.grid-container {
	max-width: 1240px;
    padding-left: 0;
    padding-right: 0;
}

.grid-5, .mobile-grid-5, .tablet-grid-5, .grid-10, .mobile-grid-10, .tablet-grid-10, .grid-15, .mobile-grid-15, .tablet-grid-15, .grid-20, .mobile-grid-20, .tablet-grid-20, .grid-25, .mobile-grid-25, .tablet-grid-25, .grid-30, .mobile-grid-30, .tablet-grid-30, .grid-35, .mobile-grid-35, .tablet-grid-35, .grid-40, .mobile-grid-40, .tablet-grid-40, .grid-45, .mobile-grid-45, .tablet-grid-45, .grid-50, .mobile-grid-50, .tablet-grid-50, .grid-55, .mobile-grid-55, .tablet-grid-55, .grid-60, .mobile-grid-60, .tablet-grid-60, .grid-65, .mobile-grid-65, .tablet-grid-65, .grid-70, .mobile-grid-70, .tablet-grid-70, .grid-75, .mobile-grid-75, .tablet-grid-75, .grid-80, .mobile-grid-80, .tablet-grid-80, .grid-85, .mobile-grid-85, .tablet-grid-85, .grid-90, .mobile-grid-90, .tablet-grid-90, .grid-95, .mobile-grid-95, .tablet-grid-95, .grid-100, .mobile-grid-100, .tablet-grid-100, .grid-33, .mobile-grid-33, .tablet-grid-33, .grid-66, .mobile-grid-66, .tablet-grid-66 {
	padding-left: 20px;
	padding-right: 20px;
}

.grid-5 > *, .mobile-grid-5 > *, .tablet-grid-5 > *, .grid-10 > *, .mobile-grid-10 > *, .tablet-grid-10 > *, .grid-15 > *, .mobile-grid-15 > *, .tablet-grid-15 > *, .grid-20 > *, .mobile-grid-20 > *, .tablet-grid-20 > *, .grid-25 > *, .mobile-grid-25 > *, .tablet-grid-25 > *, .grid-30 > *, .mobile-grid-30 > *, .tablet-grid-30 > *, .grid-35 > *, .mobile-grid-35 > *, .tablet-grid-35 > *, .grid-40 > *, .mobile-grid-40 > *, .tablet-grid-40 > *, .grid-45 > *, .mobile-grid-45 > *, .tablet-grid-45 > *, .grid-50 > *, .mobile-grid-50 > *, .tablet-grid-50 > *, .grid-55 > *, .mobile-grid-55 > *, .tablet-grid-55 > *, .grid-60 > *, .mobile-grid-60 > *, .tablet-grid-60 > *, .grid-65 > *, .mobile-grid-65 > *, .tablet-grid-65 > *, .grid-70 > *, .mobile-grid-70 > *, .tablet-grid-70 > *, .grid-75 > *, .mobile-grid-75 > *, .tablet-grid-75 > *, .grid-80 > *, .mobile-grid-80 > *, .tablet-grid-80 > *, .grid-85 > *, .mobile-grid-85 > *, .tablet-grid-85 > *, .grid-90 > *, .mobile-grid-90 > *, .tablet-grid-90 > *, .grid-95 > *, .mobile-grid-95 > *, .tablet-grid-95 > *, .grid-100 > *, .mobile-grid-100 > *, .tablet-grid-100 > *, .grid-33 > *, .mobile-grid-33 > *, .tablet-grid-33 > *, .grid-66 > *, .mobile-grid-66 > *, .tablet-grid-66 > * {
	/* <IE7> */
	*margin-left: expression((!this.className.match(/grid-[1-9]/) && this.currentStyle.display === "block" && this.currentStyle.width === "auto") && "0px");
	*margin-right: expression((!this.className.match(/grid-[1-9]/) && this.currentStyle.display === "block" && this.currentStyle.width === "auto") && "0px");
	/* </IE7> */
}

@media screen 
and (max-width: 767px) {
	.mobile-grid-parent {
		padding-left: 0;
		padding-right: 0;
	}
}

@media screen 
and (min-width: 768px) 
and (max-width: 1024px) {
	.tablet-grid-parent {
		padding-left: 0;
		padding-right: 0;
	}
}

/*
**********************************
FIX - bugs ui-autocomplete (overflow)
*/

.ui-autocomplete {
    max-height: 100px;
    overflow-y: auto;
   	overflow-x: hidden;
}

* html .ui-autocomplete {
	height: 100px;
}

.ui-widget {
	font-family: tahoma !important;
	font-size: 1em !important;
}

/*
**********************************
ESCONDE IFRAME RECAPTCHA
*/

iframe[src='about:blank'] {
	display:none !important;
}