/* ================================================================================================================== */
/* */
/* ================================================================================================================== */

* { box-sizing: border-box; font-size: 0; }

/* ================================================================================================================== */
/* fontes */
/* ================================================================================================================== */

h1, h2, h3, h4, h5, h6, p, div.text, a, input, label, textarea, span, select, table, tr, th, td, ::placeholder { font-family: 'Open Sans', sans-serif; font-size: 1em; line-height: 1.3em; font-weight: 400; color: #121c4d; padding: 0; margin: 0; }

.font2 { font-family: 'Oswald', sans-serif; }

.font-title { font-size: 1.875em; font-weight: 700; }

.regular { font-weight: 400; }
.bold { font-weight: 700; }

/* ================================================================================================================== */
/* principal e animacoes de defeito */
/* ================================================================================================================== */

html, body{ position: relative; margin: 0; padding: 0; width: 100%; height: 100%; font-size: 16px; }

@media all and ( max-width: 1000px ) {
	html, body { font-size: 14px; }
}

.animation-long { transition-property: all; -webkit-transition-property: all; -moz-transition-property: all; transition-duration: 800ms; -webkit-transition-duration: 800ms; -moz-transition-duration: 800ms; }
.animation-extra-long { transition-property: all; -webkit-transition-property: all; -moz-transition-property: all; transition-duration: 1600ms; -webkit-transition-duration: 1600ms; -moz-transition-duration: 1600ms; }
.animation-none,
.animation-none	* { transition-property: none; -webkit-transition-property: none; -moz-transition-property: none; transition-duration: 0ms; -webkit-transition-duration: 0ms; -moz-transition-duration: 0ms; }
*,
*:after,
.animation-normal,
.animation-normal * { transition-property: all; -webkit-transition-property: all; -moz-transition-property: all; transition-duration: 400ms; -webkit-transition-duration: 400ms; -moz-transition-duration: 400ms; }

@-webkit-keyframes white_blur {
  from { text-shadow: 0 0 25px #ffffff;	color: transparent; }
  to   { text-shadow: 0 0 0 #ffffff; color: #ffffff;       }
}

.apply_blur span:nth-child(1)  { -webkit-animation: white_blur 2s 0.00s 1 alternate; }
.apply_blur span:nth-child(2)  { -webkit-animation: white_blur 2s 0.10s 1 alternate; }
.apply_blur span:nth-child(3)  { -webkit-animation: white_blur 2s 0.15s 1 alternate; }
.apply_blur span:nth-child(4)  { -webkit-animation: white_blur 2s 0.20s 1 alternate; }
.apply_blur span:nth-child(5)  { -webkit-animation: white_blur 2s 0.25s 1 alternate; }
.apply_blur span:nth-child(6)  { -webkit-animation: white_blur 2s 0.30s 1 alternate; }
.apply_blur span:nth-child(7)  { -webkit-animation: white_blur 2s 0.35s 1 alternate; }
.apply_blur span:nth-child(8)  { -webkit-animation: white_blur 2s 0.40s 1 alternate; }
.apply_blur span:nth-child(9)  { -webkit-animation: white_blur 2s 0.45s 1 alternate; }
.apply_blur span:nth-child(10) { -webkit-animation: white_blur 2s 0.50s 1 alternate; }
.apply_blur span:nth-child(11) { -webkit-animation: white_blur 2s 0.55s 1 alternate; }
.apply_blur span:nth-child(12) { -webkit-animation: white_blur 2s 0.60s 1 alternate; }
.apply_blur span:nth-child(13) { -webkit-animation: white_blur 2s 0.65s 1 alternate; }
.apply_blur span:nth-child(14) { -webkit-animation: white_blur 2s 0.70s 1 alternate; }
.apply_blur span:nth-child(15) { -webkit-animation: white_blur 2s 0.75s 1 alternate; }
.apply_blur span:nth-child(16) { -webkit-animation: white_blur 2s 0.80s 1 alternate; }
.apply_blur span:nth-child(17) { -webkit-animation: white_blur 2s 0.85s 1 alternate; }
.apply_blur span:nth-child(18) { -webkit-animation: white_blur 2s 0.90s 1 alternate; }
.apply_blur span:nth-child(19) { -webkit-animation: white_blur 2s 0.95s 1 alternate; }
.apply_blur span:nth-child(20) { -webkit-animation: white_blur 2s 1.00s 1 alternate; }

/* ================================================================================================================== */
/* limpador e truque para inline-block alinhamento */
/* ================================================================================================================== */

div.clear { clear: both; }
.trick_align_middle { display: inline-block; position: relative; width: 0; height: 100%; vertical-align: middle; background-color: transparent; }
.trick_align_top { display: inline-block; position: relative; width: 0; height: 100%; vertical-align: top; background-color: transparent; }
.trick_align_bottom { display: inline-block; position: relative; width: 0; height: 100%; vertical-align: bottom; background-color: transparent; }

/* ================================================================================================================== */
/* cabecalho */
/* ================================================================================================================== */

div#header { display: block; position: fixed; top: 0; left: 0; height: 100px; width: 100%; background-color: #ffffff; z-index: 500; }
div#header[data-status="closed"] {  }
div#header[data-status="opened"] {  }
	div#header div.container { display: flex; position: relative; justify-content: space-between; align-items: initial; width: auto; margin: 0 100px; height: 100%; }
		div#header div.container a.logo { display: inline-block; position: relative; width: 148px; height: 55px; background: transparent url(../images/logo.png) no-repeat center center; background-size: contain; vertical-align: top; margin: 22px 0 0 0; }

		div#header div.container span.responsive_icon { display: block; position: absolute; width: 32px; height: 19px; right: 0; background-color: transparent; cursor: pointer; margin: 40px 0 0 0; }
			div#header div.container span.responsive_icon span { display: block; position: absolute; left: 0; width: 100%; height: 3px; background-color: #00aeef; }
			div#header div.container span.responsive_icon span:nth-child(1) { top: 0; }
			div#header div.container span.responsive_icon span:nth-child(2) { top: 8px; }
			div#header div.container span.responsive_icon span:nth-child(3) { bottom: 0; }

			div#header div.container span.responsive_icon:hover span:nth-child(1) { width: 84%; left: 16%; }
			div#header div.container span.responsive_icon:hover span:nth-child(2) { width: 60%; left: 40%; }

@media all and ( max-width: 950px ) {
	div#header { height: 50px; }
		div#header div.container { margin: 0 10px; }
		div#header div.container a.logo { width: 95px; height: 35px; margin: 7px 0 0 0; }
		div#header div.container span.responsive_icon { margin: 15px 0 0 0; }
}

div#header_popup { display: block; position: fixed; top: 0; left: 0; height: 150px; width: 100%; background-color: #00aeef; z-index: 501; overflow: hidden; }
div#header_popup[data-status="closed"] { height: 0; }
div#header_popup[data-status="opened"] { height: 150px; }
	div#header_popup div.container { display: flex; position: relative; justify-content: space-between; align-items: initial; width: auto; margin: 0 100px; height: 150px; }
		div#header_popup div.container a.logo { display: inline-block; position: relative; width: 148px; height: 55px; background: transparent url(../images/logo_white.png) no-repeat center center; background-size: contain; vertical-align: top; margin: 22px 0 0 0; }

		div#header_popup div.container div.menu { display: inline-block; position: relative; width: auto; height: 30px; vertical-align: bottom; margin: 90px 0 0 0; }
			div#header_popup div.container div.menu a { display: inline-block; position: relative; width: auto; font-size: 1.125em; color: #ffffff; text-decoration: none; padding: 0 0 10px 0; margin: 0 25px; }
			div#header_popup div.container div.menu a:after { content: ""; display: block; position: absolute; bottom: 0; left: 50%; height: 2px; background-color: #ffffff; }
			div#header_popup div.container div.menu a:after { width: 0; margin: 0 0 0 0; }
			div#header_popup div.container div.menu a:hover:after { width: 50%; margin: 0 0 0 -25%; background-color: #121c4d; }
			div#header_popup div.container div.menu a:hover { color: #121c4d; }

		div#header_popup div.container div.languages { display: inline-block; position: relative; width: auto; height: auto; vertical-align: bottom; margin: 60px 100px 0 0; }
			div#header_popup div.container div.languages a { display: block; position: relative; width: auto; color: #ffffff; font-size: 0.75em; text-decoration: none; }
			div#header_popup div.container div.languages a:hover { color: #121c4d; }

		div#header_popup div.container span.responsive_icon { display: block; position: absolute; width: 32px; height: 19px; right: 0; background-color: transparent; cursor: pointer; margin: 40px 0 0 0; }
			div#header_popup div.container span.responsive_icon span { display: block; position: absolute; left: 0; width: 100%; height: 3px; background-color: #ffffff; }
			div#header_popup div.container span.responsive_icon span:nth-child(1) { top: 0; width: 84%; left: 16%; }
			div#header_popup div.container span.responsive_icon span:nth-child(2) { top: 8px; width: 60%; left: 40%; }
			div#header_popup div.container span.responsive_icon span:nth-child(3) { bottom: 0; }

@media all and ( max-width: 950px ) {
	div#header_popup { top: 0; height: auto; }
	div#header_popup[data-status="closed"] { height: auto; top: -100%; }
	div#header_popup[data-status="opened"] { height: auto; top: 0px; }
		div#header_popup div.container { display: block; justify-content: normal; align-items: normal; padding: 15px 0 25px 0; margin: 0; height: auto; text-align: center; }

			div#header_popup div.container a.logo { width: 95px; height: 35px; margin: 7px 0 0 0; }

			div#header_popup div.container div.menu { display: block; height: auto; margin: 25px 0 0 0; }
				div#header_popup div.container div.menu a { display: block; margin: 0 0 10px 0; }

			div#header_popup div.container div.languages { margin: 25px 0 0 0; }

			div#header_popup div.container span.responsive_icon { right: 10px; top: 15px; margin: 0; }
}

/* ================================================================================================================== */
/* estrutura principal */
/* ================================================================================================================== */

div#principal_container { display: table; position: relative; width: 100%; min-height: 100%; margin: 0 auto; overflow: hidden; }
	div#principal_container div#principal_header { display: table-row; position: relative; width: 100%; height: 100px; }
	div#principal_container div#principal_body { display: table-row; position: relative; width: 100%; height: 100%; z-index: 10; }
	div#principal_container div#principal_footer { display: table-row; position: relative; width: 100%; height: auto; }

@media all and (max-width: 649px) {
	div#principal_container { display: block; min-height: auto; }
		div#principal_container div#principal_header { display: block; height: 50px; }
		div#principal_container div#principal_body { display: block; }
		div#principal_container div#principal_footer { display: block; }
}

/* ================================================================================================================== */
/* corpo */
/* ================================================================================================================== */

div#body { display: block; position: relative; width: auto; height: auto; margin: 0 100px; z-index: 2; padding: 0; }

@media all and ( max-width: 1200px ) {
	div#body { margin: 0 10px; }
}

/* ================================================================================================================== */
/* rodape */
/* ================================================================================================================== */

div#footer { display: block; position: relative; width: 100%; height: auto; background-color: #ffffff; padding: 45px 0 25px 0; z-index: 1; }
	div#footer div.container { display: block; position: relative; width: auto; margin: 0 100px; text-align: center; }
		div#footer div.container div.top { display: block; position: relative; background-color: #121c4d; padding: 35px; }
			div#footer div.container div.top div.col { display: inline-block; position: relative; width: auto; height: auto; vertical-align: top; margin: 10px 50px; text-align: left; }
				div#footer div.container div.top div.col img { display: block; position: relative; max-width: 220px; height: auto; }
				div#footer div.container div.top div.col p,
				div#footer div.container div.top div.col a { display: block; position: relative; font-size: 1.125em; color: #00aeef; text-decoration: none; }
				div#footer div.container div.top div.col a:hover { color: #ffffff; }
				div#footer div.container div.top div.col p.social_networks { display: inline-block; margin: 0 5px; }
				div#footer div.container div.top div.col a.social_networks { display: inline-block; color: #ffffff; }
				div#footer div.container div.top div.col a.social_networks:hover { color: #00aeef; }
		div#footer div.container div.bottom { display: block; position: relative; background-color: #ffffff; margin: 50px 0 0 0; }
			div#footer div.container div.bottom div.col { display: inline-block; position: relative; width: auto; height: auto; vertical-align: middle; margin: 10px 25px; text-align: right; }
				div#footer div.container div.bottom div.col p { display: block; position: relative; font-size: 0.75em; }
				div#footer div.container div.bottom div.col a.livrodereclamacoes { display: block; position: relative; width: 140px; height: 58px; margin: 0; background: transparent url(../images/livrodereclamacoes.png) no-repeat center center; background-size: contain; }
				div#footer div.container div.bottom div.col a.idstudies { display: block; position: relative; width: 89px; height: 34px; background: transparent url(../images/idstudies.png) no-repeat; }
				div#footer div.container div.bottom div.col a.idstudies:hover { background-position-y: -34px; }

@media all and ( max-width: 1360px ) {
	div#footer { padding: 25px 0; }
		div#footer div.container { margin: 0 10px; }
}
@media all and ( max-width: 1200px ) {
	div#footer div.container div.top { padding: 15px 0; }
		div#footer div.container div.top div.col { margin: 10px 25px; }
}
@media all and ( max-width: 1000px ) {
	div#footer div.container div.top div.col:nth-child(1) { display: none; }
	div#footer div.container div.top div.col { display: block; margin: 25px auto; text-align: center; }
}
@media all and ( max-width: 750px ) {
	div#footer div.container div.bottom div.col { display: block; margin: 0 auto; text-align: center; }
		div#footer div.container div.bottom div.col p { text-align: center; }
		div#footer div.container div.bottom div.col a.livrodereclamacoes { margin: 25px auto; }
		div#footer div.container div.bottom div.col a.idstudies { margin: 0 auto; }
}

/* ================================================================================================================== */
/* slide */
/* ================================================================================================================== */

div#slide { display: block; position: relative; width: 100%; z-index: 1; }
div#slide.normal { height: 660px; }
div#slide.small { height: 500px; }
	div#slide div.slide { display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: transparent no-repeat center center; background-size: cover; overflow: hidden; }
	div#slide div.slide[data-status="false"] { z-index: 1; opacity: 0; transform: scale(0.9); }
	div#slide div.slide[data-status="true"] { z-index: 2; opacity: 1; transform: scale(1); }
		div#slide div.slide span.bg { display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #231f20; opacity: 0.3; }
		div#slide div.slide div.text { display: inline-block; position: relative; vertical-align: bottom; margin: 90px 80px; }
				div#slide div.slide div.text span.logo { display: block; position: relative; width: 100%; height: 70px; margin: 0 0 80px 0; background: transparent no-repeat left top; background-size: contain; }
				div#slide div.slide[data-status="false"] div.text span.logo { top: -660px; }
				div#slide div.slide[data-status="true"] div.text span.logo { top: 0; }
				div#slide div.slide div.text h3 { display: block; position: relative; font-size: 4.375em; color: #ffffff; }
				div#slide div.slide[data-status="false"] div.text h2,
				div#slide div.slide[data-status="false"] div.text h3 { color: transparent; text-shadow: 0 0 5px rgba(255,255,255,0.5); }
				div#slide div.slide[data-status="true"] div.text h2,
				div#slide div.slide[data-status="true"] div.text h3 { color: transparent; text-shadow: 0 0 0 rgba(255,255,255,1); }
				div#slide div.slide div.text a { display: inline-block; position: relative; font-size: 0.75em; border: 2px solid #59bad5; color: #59bad5; padding: 0 50px; margin: 35px 0 0 0; text-decoration: none; }
				div#slide div.slide div.text a:hover { background-color: #59bad5; color: #ffffff; }

@media all and ( max-width: 1000px ) {
	div#slide.normal { height: 500px; }
	div#slide.small { height: 400px; }

		div#slide div.slide div.text h3 { font-size: 3.5em; }
}
@media all and ( max-width: 850px ) {
	div#slide div.slide div.text h3 { font-size: 2.5em; }
}
@media all and ( max-width: 650px ) {
	div#slide div.slide div.text { margin: 35px 15px; }
		div#slide div.slide div.text span.logo { margin: 0 0 20px 0; }
}

/* ================================================================================================================== */
/* separador */
/* ================================================================================================================== */

span.separator { display: block; position: relative; width: 100%; border: none; height: 0; border-top: 1px solid #dfe1e2; border-bottom: 1px solid #f1f1f2; margin: 25px 0; }

/* ================================================================================================================== */
/* popup */
/* ================================================================================================================== */

div#popup { display: block; position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 1000; text-align: center; overflow: auto; }
	div#popup span.bg { display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #323a47; opacity: 0.8; }
	div#popup div.container { display: inline-block; position: relative; max-width: 90%; max-height: 90%; vertical-align: middle; background-color: #59bad5; box-sizing: border-box; padding: 20px 35px; text-align: center; }
		div#popup div.container span.close { display: inline-block; position: relative; font-size: 0.75em; border: 2px solid #323a47; background-color: #323a47; color: #ffffff; padding: 0 50px; margin: 15px 0 0 0; text-decoration: none; cursor: pointer; }
		div#popup div.container span.close:hover { border: 2px solid #ffffff; background-color: #ffffff; color: #323a47; }
		div#popup div.container p { margin: 5px 0; color: #ffffff; }