/* ------------------------------------------------------------------------------------------------------------------ */
/* fontes */

@font-face
{
    font-family:    'regular1';
    src:            url( '../src/fonts/helvetica_neue_ltstd_mdcn/helvetica_neue_ltstd_mdcn.eot' );
    src:            url( '../src/fonts/helvetica_neue_ltstd_mdcn/helvetica_neue_ltstd_mdcn.eot' ) format('embedded-opentype'),
                    url( '../src/fonts/helvetica_neue_ltstd_mdcn/helvetica_neue_ltstd_mdcn.woff2' ) format('woff2'),
                    url( '../src/fonts/helvetica_neue_ltstd_mdcn/helvetica_neue_ltstd_mdcn.woff' ) format('woff'),
                    url( '../src/fonts/helvetica_neue_ltstd_mdcn/helvetica_neue_ltstd_mdcn.ttf' ) format('truetype'),
                    url( '../src/fonts/helvetica_neue_ltstd_mdcn/helvetica_neue_ltstd_mdcn.svg#helvetica_neue_ltstd_mdcn' ) format('svg');
}


h1, h2, h3, h4, h5, h6, p, a, input, label, textarea, span, select, table, tr, th, td { font-family: 'regular1', sans-serif; font-size: 16px; color: #292023; padding: 0; margin: 0; line-height: 120%; font-size-adjust: 0.5; font-weight: normal; }


/* ------------------------------------------------------------------------------------------------------------------ */
/* principal e animacoes de defeito */

html, body { position: relative; margin: 0; padding: 0; width: 100%; height: 100%; background-color: #ffffff; }
*
{
	transition-property: all;
	-webkit-transition-property: all;
	-moz-transition-property: all;

	transition-duration: 400ms;
	-webkit-transition-duration: 400ms;
	-moz-transition-duration: 400ms;
}
.no-animation
{
	transition-property: none;
	-webkit-transition-property: none;
	-moz-transition-property: none;

	transition-duration: 0ms;
	-webkit-transition-duration: 0ms;
	-moz-transition-duration: 0ms;
}


/* ------------------------------------------------------------------------------------------------------------------ */
/* 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; }


/* ------------------------------------------------------------------------------------------------------------------ */
/* pesquisa */

form#search_widget { display: block; position: fixed; top: 0; left: 50%; width: 1750px; margin: 0 0 0 -875px; background-color: #c2986a; overflow: hidden; font-size: 0; text-align: center; z-index: 101; }
form#search_widget[data-status="open"] { height: 75px; }
form#search_widget[data-status="closed"] { height: 0; }
	form#search_widget div.label { display: inline-block; position: relative; margin: 0 20px 0 0; vertical-align: middle; text-align: left; }
		form#search_widget div.label h1 { display: block; position: relative; font-size: 20px; line-height: 25px; color: #ffffff; }
		form#search_widget div.label p { display: block; position: relative; font-size: 14px; line-height: 25px; color: #e2ccb6; }
	form#search_widget input[type="text"] { display: inline-block; position: relative; vertical-align: middle; width: 460px; border: 1px solid #ffffff; line-height: 35px; height: 33px; font-size: 18px; padding: 0 20px; background-color: transparent; color: #ffffff; margin: 0 20px 0 0; }
	form#search_widget input[type="submit"] { display: inline-block; position: relative; background: none; border: none; cursor: pointer; font-size: 18px; line-height: 35px; vertical-align: middle; }
	form#search_widget input[type="submit"]:hover { color: #ffffff; }


/* ------------------------------------------------------------------------------------------------------------------ */
/* cabecalho */

div#header { display: block; position: fixed; top: 0; left: 50%; width: 1750px; height: 130px; z-index: 100; margin: 0 0 0 -875px; background-color: #ffffff; }
div#header[data-widget="search"] { top: 85px; }
	div#header div.container { display: block; position: relative; width: 100%; height: 100%; margin: 0 auto; }
		div#header div.container div.top { display: block; position: relative; width: auto; height: 30px; margin: 0 auto; background-color: #231f20; text-align: right; padding: 0 20px; }
			div#header div.container div.top div.follow { display: inline-block; position: relative; width: auto; height: 30px; margin: 0 50px 0 0; vertical-align: top; }
				div#header div.container div.top div.follow p { display: inline-block; position: relative; line-height: 30px; font-size: 16px; height: 30px; color: #929497; margin: 0 20px 0 0; vertical-align: middle; }
				div#header div.container div.top div.follow a { display: inline-block; position: relative; width: 19px; height: 18px; background: transparent url(../src/img/social_networks.png) no-repeat; vertical-align: middle; margin: 0 9px 0 0; }
				div#header div.container div.top div.follow a:last-child { margin: 0; }
				div#header div.container div.top div.follow a:hover { background-position-y: -18px; }
				div#header div.container div.top div.follow a.facebook { background-position-x: 0; }
				div#header div.container div.top div.follow a.pinterest { background-position-x: -19px; }
				div#header div.container div.top div.follow a.instagram { background-position-x: -38px; }
				div#header div.container div.top div.follow a.twitter { background-position-x: -57px; }
				div#header div.container div.top div.follow a.plus { background-position-x: -76px; }
			div#header div.container div.top span.cofinancing { display: inline-block; position: relative; width: 158px; height: 30px; margin: 0 50px 0 0; background: transparent url(../src/img/cofinancing_top.jpg) no-repeat center center; background-size: contain; }
			div#header div.container div.top div.languages { display: inline-block; position: relative; width: auto; height: 30px; margin: 0 50px 0 0; vertical-align: top; }
				div#header div.container div.top div.languages p { display: inline-block; position: relative; line-height: 30px; font-size: 16px; height: 30px; color: #929497; margin: 0 1px; vertical-align: middle; color: #c3996b; }
				div#header div.container div.top div.languages a { display: inline-block; position: relative; line-height: 30px; font-size: 16px; height: 30px; color: #929497; margin: 0; vertical-align: middle; color: #c3996b; text-decoration: none; }
				div#header div.container div.top div.languages a:hover,
				div#header div.container div.top div.languages a.selected { color: #ffffff; }
			div#header div.container div.top div.icons { display: inline-block; position: relative; width: auto; height: 30px; margin: 0; vertical-align: top; }
				div#header div.container div.top div.icons span.search { display: inline-block; position: relative; width: 20px; height: 20px; margin: 0; vertical-align: middle; background: transparent url(../src/img/header_search_icon.png) no-repeat; cursor: pointer; }
				div#header div.container div.top div.icons span.search[data-status="closed"] { background-position: 0 0; }
				div#header div.container div.top div.icons span.search[data-status="open"],
				div#header div.container div.top div.icons span.search:hover { background-position: 0 -20px; }


		div#header div.container div.content { display: block; position: relative; width: auto; height: 100px; margin: 0 auto; padding: 0 20px; font-size: 0; }
			div#header div.container div.content a.logo { display: inline-block; position: relative; width: 200px; height: 64px; background: transparent url(../src/img/logo.png) no-repeat center center; background-size: contain; vertical-align: middle; }

			div#header div.container div.content div.menu { display: inline-block; position: relative; width: 1460px; height: 25px; margin: 20px 0 0 50px; font-size: 0; text-align: right; vertical-align: middle; }
				div#header div.container div.menu span.item,
				div#header div.container div.menu a.item { display: inline-block; position: relative; font-size: 16px; text-decoration: none; line-height: 25px; margin: 0 0 0 50px; vertical-align: top; padding: 0; cursor: pointer; color: #c3996b; padding: 0 3px; }
				div#header div.container div.menu span.item:hover,
				div#header div.container div.menu a.item:hover { color: #232020; }

					div#header div.container div.menu span.item span,
					div#header div.container div.menu a.item span { display: block; position: absolute; top: 25px; left: 0; width: 100%; height: 0; background-color: #c3986b; z-index: -1; }
					div#header div.container div.menu span.item:hover span,
					div#header div.container div.menu a.item:hover span { top: 10px; height: 15px; }

				div#header div.container div.menu span.item.selected,
				div#header div.container div.menu a.item.selected { color: #232020; }
					div#header div.container div.menu a.item.selected span { top: 10px; height: 15px; }
					div#header div.container div.menu span.item div.submenu { display: none; position: absolute; top: 50px; left: -10px; background-color: #ffffff; border-bottom: 4px solid #231f20; padding: 15px 20px; z-index: 200; text-align: left; min-width: 100%; }
					div#header div.container div.menu span.item:hover div.submenu { display: block; }
						div#header div.container div.menu span.item div.submenu a { display: block; position: relative; font-size: 12px; text-decoration: none; line-height: 25px; margin: 0; vertical-align: top; font-weight: normal; white-space: nowrap; }
						div#header div.container div.menu span.item div.submenu a:hover { color: #8f9194; }


/* ------------------------------------------------------------------------------------------------------------------ */
/* slide */

div#slide { display: block; position: relative; width: 100%; margin: 0 auto; padding: 0; }
div#slide.normal { height: 800px; }
div#slide.small { height: 250px; }
div#slide *
{
	transition-duration: 1000ms;
	-webkit-transition-duration: 1000ms;
	-moz-transition-duration: 1000ms;
}
	div#slide div.slides { display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 1; overflow: hidden; }
		div#slide div.slides div.banner { display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; font-size: 0; text-align: center; }
		div#slide div.slides div.banner[data-actual="true"] { opacity: 1; z-index: 2; }
		div#slide div.slides div.banner[data-actual="false"] { opacity: 0; z-index: 1; }
		div#slide div.slides div.banner[data-animation="false"] { transform: scale(1) }
		div#slide div.slides div.banner[data-animation="true"] { transform: scale(1.10) }
		div#slide div.slides div.banner[data-animation="true"]
		{
			transition: transform 6000ms linear, opacity 500ms linear;
			-webkit-transition: transform 6000ms linear, opacity 500ms linear;
			-moz-transition: transform 6000ms linear, opacity 500ms linear;
		}
			div#slide div.slides div.banner div.text { display: block; position: absolute; bottom: 60px; width: auto; margin: 0; text-align: left; padding: 0 60px; }
			div#slide.small div.slides div.banner div.text { display: none; }
				div#slide div.slides div.banner div.text h1 { display: block; position: relative; font-size: 47px; line-height: 50px; color: #c19769; }
				div#slide div.slides div.banner div.text h2 { display: block; position: relative; font-size: 39px; line-height: 60px; color: #c6a17a; margin: 0 auto; }

		div#slide div.slides div.controller { display: block; position: absolute; bottom: 10px; left: 0; width: 100%; height: auto; font-size: 0; text-align: center; z-index: 2; }
			div#slide div.slides div.controller span { display: inline-block; position: relative; width: 10px; height: 10px; margin: 0 5px; border-radius: 100%; cursor: pointer; }
			div#slide div.slides div.controller span[data-actual="true"] { background-color: #242021; }
			div#slide div.slides div.controller span[data-actual="false"] { background-color: #c2986b; }
			
/* ------------------------------------------------------------------------------------------------------------------ */
/* paginador */

div#paginator { display: block; position: relative; width: 100%; margin: 100px 0 0 0; text-align: center; }
	div#paginator a { display: inline-block; position: relative; font-size: 22px; line-height: 25px; color: #c3996b; text-decoration: none; margin: 0 5px; vertical-align: middle; }
	div#paginator a.prev { width: 9px; height: 16px; background: transparent url(../src/img/arrows.png) no-repeat; background-position-x: 0; margin: 0 15px 0 0; }
	div#paginator a.prev:hover { background-position-y: -16px; }
	div#paginator a.next { width: 9px; height: 16px; background: transparent url(../src/img/arrows.png) no-repeat; background-position-x: -9px; margin: 0 0 0 15px; }
	div#paginator a.next:hover { background-position-y: -16px; }
	div#paginator a:hover { color: #231f20; }
	div#paginator p { display: inline-block; position: relative; font-size: 22px; line-height: 25px; color: #231f20; text-decoration: none; margin: 0 5px; vertical-align: middle; }


/* ------------------------------------------------------------------------------------------------------------------ */
/* rodape */

div#footer { display: block; position: absolute; bottom: 0; left: 0; width: 100%; height: 60px; margin: 0; background-color: #ffffff; }
	div#footer div.content { display: block; position: relative; width: 1200px; height: 100%; margin: 0 auto; }
		div#footer div.content p { display: block; position: absolute; top: 10px; right: 0; height: 20px; line-height: 20px; font-size: 12px; color: #c2986b; }
		div#footer div.content a.IDStudies { display: block; position: absolute; bottom: 10px; right: 0; width: 65px; height: 15px; background: transparent url(../src/img/idstudies.png) no-repeat center center; background-size: contain; }
		div#footer div.content span.cofinancing { display: block; position: absolute; top: 11px; left: 0; width: 257px; height: 43px; background: transparent url(../src/img/cofinancing.png) no-repeat center center; background-size: contain; }
		div#footer div.content a.project { display: block; position: absolute; top: 50%; left: 300px; margin: 0; width: auto; color: #231f20; line-height: 25px; font-size: 16px; text-decoration: none; vertical-align: middle; }
		div#footer div.content a.project:hover { color: #c3986b; }
			div#footer div.content a.project span { display: inline-block; position: relative; width: 25px; font-family: Arial, sans-serif; background-color: #231f20; vertical-align: top; padding: 0; margin: 0 5px 0 0; border-radius: 100%; color: #ffffff; line-height: 25px; font-size: 25px; text-align: center; }
			div#footer div.content a.project:hover span { background-color: #c3986b; }


/* ------------------------------------------------------------------------------------------------------------------ */
/* corpo */

div#container { display: block; position: relative; width: 100%; min-height: 100%; padding: 0; }
div#body { display: block; position: relative; width: 1750px; margin: 0 auto; padding: 130px 0 100px 0; }


/* ------------------------------------------------------------------------------------------------------------------ */
/* voltar ao topo */

span#back_to_top { position: fixed; bottom: 100px; right: 12px; width: 50px; height: 50px; z-index: 85; margin: 0; background: transparent url(../src/img/back_to_top.png) no-repeat center center; background-size: cover; cursor: pointer; }
span#back_to_top[data-status="visible"] { opacity: 1; }
span#back_to_top[data-status="hidden"] { opacity: 0; }


/* ------------------------------------------------------------------------------------------------------------------ */
/* orcamento */

div#budget { display: block; position: fixed; top: 50%; width: 460px; z-index: 90; margin: 0; }
div#budget[data-status="closed"] { right: -460px; cursor: pointer; }
div#budget[data-status="open"] { right: 0; margin: -297px 0 0 0; cursor: default; z-index: 91; }
	div#budget div.titlebar { display: block; position: relative; width: 100%; left: 0; height: 45px; font-size: 0; background-color: #231f20; }
		div#budget div.titlebar span.icon { display: block; position: absolute; left: -45px; top: 0; width: 45px; height: 45px; background: #231f20 url(../src/img/budget_icon.png) no-repeat center center; cursor: pointer; }
		div#budget[data-status="open"] div.titlebar span.icon { left: 0; }
		div#budget div.titlebar p { display: block; position: relative; width: 100%; height: 45px; line-height: 45px; font-size: 20px; color: #c2986b; text-align: center; }
		div#budget div.titlebar span.close { display: block; position: absolute; top: 50%; right: 25px; width: 15px; height: 15px; margin: -7px 0 0 0; background: transparent url(../src/img/budget_close.png) no-repeat 0 0; cursor: pointer; }
		div#budget div.titlebar span.close:hover { background-position: 0 -15px; }

div#budget[data-status="closed"]:hover div.titlebar { left: -50%; }
	div#budget[data-status="closed"]:hover div.titlebar p { width: 50%; }

	div#budget form { display: block; position: relative; width: 100%; height: 500px; padding: 22px 0 25px 0; font-size: 0; cursor: default; background-color: #231f20; border: none; margin: 3px auto 0 auto; }
		div#budget form label { display: block; position: relative; width: 420px; margin: 0 auto 6px auto; color: #c3996b; text-decoration: none; vertical-align: top; font-size: 12px; text-align: left; padding: 0; }
		div#budget form input[type="file"],
		div#budget form input[type="text"] { display: block; width: 398px; position: relative; border: 1px solid #dad9da; color: #ffffff; background-color: transparent; margin: 2px 0 0 0; padding: 0 10px; height: 23px; line-height: 23px; font-size: 12px; }
		div#budget form textarea { display: block; width: 398px; position: relative; border: 1px solid #dad9da; color: #ffffff; background-color: transparent; margin: 2px 0 0 0; padding: 0 10px; height: 48px; line-height: 23px; font-size: 12px; resize: none; }

		div#budget form input[type="text"].small { display: inline-block; width: 320px; vertical-align: top; }
		div#budget form img.captcha { display: inline-block; position: relative; margin: 0 0 0 10px; padding: 0; text-decoration: none; vertical-align: bottom; }

		div#budget form div.file { display: block; position: relative; border: none; margin: 2px 0 0 0; padding: 0; height: 25px; line-height: 25px; background-color: #ffffff; }
			div#budget form div.file input[type="button"] { display: block; position: absolute; bottom: 0; left: 0; width: 125px; background: #c3986a url(../src/img/search_icon.png) no-repeat center center; border: none; height: 25px; cursor: pointer; }
			div#budget form div.file input[type="button"]:hover { background-color: #c8a681; }
			div#budget form div.file p { display: block; position: absolute; top: 0; left: 135px; width: 275px; border: none; height: 24px; font-size: 14px; line-height: 24px; overflow: hidden; }

		div#budget form textarea { display: block; background-color: transparent; border: 1px solid #dad9da; color: #ffffff; margin: 2px 0 0 0; padding: 0 10px; height: 48px; line-height: 25px; resize: none; }

		div#budget form input[type="submit"] { display: block; position: relative; padding: 10px 0; font-weight: bold; border: none; background-color: #c2986a; color: #ffffff; margin: 15px auto 0 auto; cursor: pointer; width: 419px; font-size: 18px; }
		div#budget form input[type="submit"]:hover { background-color: #c8a681; }


/* ------------------------------------------------------------------------------------------------------------------ */
/* animacao fundo */

div#animated_background { display: block; position: absolute; width: 100%; height: 100%; z-index: 0; }
	div#animated_background span.vertical_line1 { display: block; position: absolute; top: 100%; left: 25%; width: 1px; height: 0; background-color: #e1ccb5; }
	div#animated_background span.vertical_line1.load { top: 10%; height: 90%; }
	div#animated_background span.vertical_line1
	{
		transition-duration: 2500ms;
		-webkit-transition-duration: 2500ms;
		-moz-transition-duration: 2500ms;
	}

	div#animated_background span.vertical_line2 { display: block; position: absolute; top: 0; left: 70%; width: 1px; height: 0; background-color: #e1ccb5; }
	div#animated_background span.vertical_line2.load { height: 80%; }
	div#animated_background span.vertical_line2
	{
		transition-duration: 2500ms;
		-webkit-transition-duration: 2500ms;
		-moz-transition-duration: 2500ms;
	}

	div#animated_background span.horizontal_line1 { display: block; position: absolute; top: 25%; left: 0; width: 0; height: 1px; background-color: #e1ccb5; }
	div#animated_background span.horizontal_line1.load { width: 80%; }
	div#animated_background span.horizontal_line1
	{
		transition-duration: 2500ms;
		-webkit-transition-duration: 2500ms;
		-moz-transition-duration: 2500ms;
	}

	div#animated_background span.horizontal_line2 { display: block; position: absolute; top: 70%; left: 100%; width: 0; height: 1px; background-color: #e1ccb5; }
	div#animated_background span.horizontal_line2.load { left: 15%; width: 85%; }
	div#animated_background span.horizontal_line2
	{
		transition-duration: 2500ms;
		-webkit-transition-duration: 2500ms;
		-moz-transition-duration: 2500ms;
	}

	div#animated_background div.dots { display: block; position: absolute; top: 30%; left: 71%; width: 266px; height: 396px; }
		div#animated_background div.dots span { display: block; position: absolute; width: 6px; height: 6px; background-color: #eddfd2; border-radius: 100%; opacity: 0; }
		div#animated_background div.dots span
		{
			transition-duration: 3000ms;
			-webkit-transition-duration: 3000ms;
			-moz-transition-duration: 3000ms;
		}
		div#animated_background div.dots span.load{ opacity: 1; }