/* ==========================================================================
    Utils
    ========================================================================== */
.absolute { position: absolute; }
.relative { position: relative; }

/* ==========================================================================
    Defaults
    ========================================================================== */
a {
	color: #064B9F;
}
h1, h2, h3, h4, h5, h6 {
	color: #444;
}
.title-page {
	font-size: 2.2em;
	margin-bottom: 20px;
}
.title-content {
	font-size: 1.8em;
	font-weight: lighter;
	margin-bottom: 20px;
	text-transform: none;
}
.page-top h1 {
	color: #064B9F;
	display: inline-block;
	font-size: 2.6em;
	font-weight: 200;
	letter-spacing: -1px;
	margin: 0 0 -25px;
	min-height: 37px;
	line-height: 46px;
	padding: 0 0 17px;
	position: relative;
}
.breadcrumb a,
.breadcrumb > .active,
p {
	color: #666;
}
p { line-height: 28px; }
ul { list-style-type: none; }
.btn-primary-reverse:hover,
.btn-primary {
	background-color: #0196F2;
	border-color: #0196F2;
}
.btn-primary-reverse:hover,
.btn-primary-reverse:focus,
.btn-primary-reverse:active,
.btn-primary-reverse.active {
	background-color: #0196F2 !important;
	border-color: #0196F2 !important;
	color: #fff !important;
}
.btn-primary-reverse,
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary.active {
	background-color: transparent;
	color: #0196F2;
}
.page-text {
	font-size: 18px;
	font-weight: lighter;
}

/* ==========================================================================
    Header
    ========================================================================== */
#header {
	background: #064B9F;
}
#header .logo {
	width: 212px!important;
}
#header .header-top {
	min-height: 35px;
}
#header .header-top p {
	line-height: 35px;
}
#header.colored .header-top p {
	color: #878787;
}
#header.colored .header-top span,
#header.colored .header-top a {
	color: #878787!important;
	font-weight: 700;
}
#header.flat-menu nav ul.nav-main li > a {
	color: #fff;
	border-bottom: 1px solid transparent;
}
.nav > li > a:hover,
.nav > li > a:focus,
#header.flat-menu nav ul.nav-main li > a:hover {
	border-bottom-color: #fff;
	background: none !important;
}
.nav-header-left { margin-top: 30px; }
.nav-header-text {
	font: normal 14px 'Open Sans', arial, sans-serif;
	color: #fff;
	margin-bottom: 14px;
}
#header nav ul li.tel {
	color: #fff;
    font-weight: 700;
    font-size: 17px;
    line-height: 39px;
    position: relative;
    padding-left: 30px;
    margin-left: 15px!important;
    margin-right:10px;
}
#header nav ul li.tel i {
	color: #fdbf00;
    font-size: 26px;
    line-height: 20px;
    position: absolute;
    top: 12px;
    left: 0;
}
.nav-header {
	position: relative;
	z-index: 100;
	margin-top: 26px;
}
h2.word-rotator-title {
	color: #064B9F;
	font-size: 2em;
	line-height: 1em;
	font-weight: 500;
}
p.featured {
	font-size: 1.4em;
	margin-bottom: 0;
}

/* ==========================================================================
    Home
    ========================================================================== */
.slider-container {
	margin-bottom: 60px;
}
.tp-bullets.simplebullets.round .bullet {
	width: 10px;
	height: 10px;
	background: transparent;
	border: solid 2px #064B9F;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
}
.tp-bullets.simplebullets.round .bullet:hover, .tp-bullets.simplebullets.round .bullet.selected {
	background: #064B9F;
}
p.description-call {
	margin-bottom: 90px;
}
.product-container-home {
	min-height: 550px;
	background: #064B9F url(../img/bg-services-home.jpg) right no-repeat;
}
.product-container-home .btn {
	width: 300px;
	margin-top: 40px;
	margin-bottom: 40px;
}
.product-title-call {
	margin: 55px 0 45px 0;
	padding-bottom: 10px;
	position: relative;
	color: #fff;
}
.product-title-call:after {
	bottom: 0;
	border-bottom: solid 2px #0177AF;
	clear: both;
	content: " ";
	left: 50%;
	margin-left: -116px;
	position: absolute;
	width: 232px;
}
.product-container .portfolio-list {
	display: block;
	overflow: hidden;
}
.product-container .portfolio-list li {
	margin-bottom: 55px;
}
.product-container .thumb-info .thumb-info-inner {
	margin-bottom: 40px;
	font-weight: 300;
	font-size: 26px;
	text-transform: none;
}
.product-container .thumb-info .thumb-info-inner strong {
	font-weight: bold;
}
.product-container .thumb-info img {
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	border-radius: 0;
	margin: 0 auto;
}
.product-container .thumb-info .thumb-info-action {
	background-color: rgba(1,42,59, 0.7);
}
.product-container .thumb-info.secundary .thumb-info-title {
	opacity: 1;
	top: 30%;
}
.product-container .thumb-info.secundary:hover .thumb-info-title {
	top: 30%;
}
.institutional-itens .feature-box.secundary h3 {
	color: #00334B;
	font-size: 1.4em;
	font-weight: 600;
	line-height: 27px;
	text-transform: none;
}
.nav-pills > li > a {
	color: #003046;
	font-weight: 400;
}
.nav-pills > li > a:hover {
	background-color: transparent;
	color: #3492BF;
}
.product-group-itens .product-item a {
	border-color: transparent;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	border-radius: 0;
	padding: 0;
}
.product-group-itens .product-item a:hover {
	text-decoration: none;
}
.product-group-itens .product-item .thumb-info {
	border-bottom: solid 2px #0177AF;
	height: 260px;
	line-height: 260px;
	text-align: center;
}
.product-group-itens .product-item .thumb-info img {
	display: inline;
	vertical-align: middle;
}
.product-group-itens .product-item .thumb-info-action {
	background-color:rgba(2,51,75,0.5);
	opacity: 1;
}
.product-group-itens .product-item a:hover .thumb-info-action {
	opacity: 0;
}
.product-item-type,
.product-content .product-item-type {
	font-size:0.95em;
	font-weight:700;
	line-height:120%;
	color:#00334B;
	margin: 10px 0 4px;
}
.product-item-name,
.product-content .product-item-name {
	font-size:1.1em;
	font-weight:500;
	letter-spacing:0pt;
	line-height:100%;
	text-transform: none;
	color:#003046;
	margin: 4px 0;
}
.product-content .product-title {
	font-size: 2.6em;
	color: #202020;
}
.product-content .thumbnail {
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	border-radius: 0;
}
.product-content .owl-theme .owl-controls {
	margin: 0;
}
.product-content h2 {
	color:#333;
	font-size:1.5em;
	font-weight:600;
	line-height:120%;
	margin-bottom: 16px;
}
.product-content p.taller {
	margin-bottom: 26px;
}
.product-content ul.portfolio-details {
	margin-top: 26px;
}
.product-content h3 {
	font-weight:600;
	line-height:120%;
	color:#0077AE;
}
.thumb-info-caption p.product-item-mark {
	padding: 0;
	margin: 0;
}
p.description-representante {
	margin-bottom: 40px;
}
.input-append {
	position: relative;
}
.uneditable-input {
	width: 100%!important;
}
.fileupload-new .input-append .btn-file,
.fileupload .btn {
	position: absolute;
	right: 0;
	top: 0;
}
.contact-form {
	margin-top: 10px;
}
.form-group {
	margin-bottom: 10px;
}
.form-control {
	margin-bottom: 5px;
}
.form-control:focus {
	background-color: #EEE;
}
.contact-info h2 {
	font-size: 1.4em;
	letter-spacing: normal;
	line-height: 27px;
	margin-bottom: 0;
}
.contact-title {
	color: #333;
	font-weight: 700;
}
.contact-subtitle {
	color: #333;
	font-weight: 600;
}
.google-map {
	margin: 40px 0;
}
.form-error {
	background-color: #f2dede;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	border-color: #ebccd1;
	color: #a94442;
	font-size: 14px;
	padding: 6px 12px;
}
.pagination > li > a {
	border: none;
}
.scroll-to-top {
	display: none !important;
}
.services-home li {
	margin-bottom: 18px;
	line-height: 1.4em;
}
.services-home span {
	height: 60px;
	border-bottom: 1px solid #0177AF;
}

#header nav ul li.insta{
	margin-right: -10px;
}
#header nav ul li.facebook{
	margin-right: -10px;

}
#header nav ul li.linkedin{
margin-right: -50px;

}
@media (min-width: 992px) and (max-width: 1199px)  {
	#header nav ul li.tel {
		font-size: 14px;
	}
	#header nav ul.nav-main li a {
		padding: 10px 3px;
	}
	#header nav ul li.insta{
	margin-right: 1px;
}
#header nav ul li.facebook{
	margin:0;

}
#header nav ul li.linkedin{
margin-right: -50px;

}
.nav-header{
	margin-right:-25px;
}


}
@media (min-width: 992px) and (max-width: 1060px)  {
	.services-home span { height: 80px; }
}

	
.services-home a {
	font-size: 1.1em;
	letter-spacing: -1px;
	color: #fff;
}
.obras-home { padding: 90px 0 40px; }
.obras-home .lead { margin-bottom: 46px; }
.obras-carousel img {
	margin-bottom: 16px;
	min-height: 192px;
}
.obras-carousel a {
	color: #333;
}
.obra-list-locale {
	font-size: 13px;
	margin-bottom: 5px;
}
.obra-list-name {
	font: normal 14px 'Open Sans', arial, sans-serif;
	line-height: 15px;
}
.safari .obra-list-name { font-weight: 600; }

/* ==========================================================================
    Representantes
    ========================================================================== */
.representante-row { margin: 60px 0 20px; }
.representante-item .thumb-info {
	height: 260px;
	line-height: 260px;
	text-align: center
}
.representante-row-title { font-weight: bold; }
.representante-item .thumb-info img {
	display: inline;
	vertical-align: middle;
}
.representante-item .thumb-info-caption {
	display: block;
	min-height: 190px;
}
.representante-item i {
	width: 15px;
	color: #3D82D6;
}
.representantes-container hr {
	background: transparent;
	border-bottom: dashed 1px #CCD0CF;
	margin: 10px 0;
}
.representante-item-name {
	font-size: 1.450em;
	font-weight:500;
	line-height:120%;
	color:#333;
	margin: 0 0 8px;
}
p.representante-item-phone {
	margin: 0 0 4px;
	padding: 0;
}
p.representante-item-mail {
	margin: 0 0 4px;
	padding: 0;
	font-size: 14px;
}
.representante-item-mail a { color: #3D82D6; }
p.representante-item-region {
	margin: 0;
	padding: 8px 0 0;
}
p.description-work {
	margin-bottom: 35px;
}

/* ==========================================================================
    Serviços
    ========================================================================== */
.service-item { margin-bottom: 60px; }
.service-img {
	margin-bottom: 16px;
	min-height: 225px;
	-webkit-border-radius: 50%;
	   -moz-border-radius: 50%;
	        border-radius: 50%;
}
.service-name {
	font-size: 1.1em;
	font-weight: 500;
	color: #212121;
	min-height: 80px;
}
.service-item .btn {
	font-size: 16px;
	font-weight: lighter;
	width: 200px;
}

/* ==========================================================================
    Empresa
    ========================================================================== */
.container-history { margin-bottom: 74px; }
.text-company-left { margin-bottom: 40px; }

/* ==========================================================================
    Obras
    ========================================================================== */
.nav-categories {
	border-bottom: 1px solid #E9E9E9;
	margin-bottom: 30px;
}
ul.nav-pills > li.active > a {
	background-color: #0196F2 !important;
}
ul.nav-pills > li.active:after {
	position: absolute;
	content: "";
	border-top: 7px solid #0196F2;
	border-right: 10px solid transparent;
	border-left: 10px solid transparent;
	bottom: -7px;
	left: 46%;
}
.nav > li > a {
	font-size: 18px;
	color: #0196F2;
}
.table-obras tbody>tr>td{
    vertical-align: middle;
}
.table-obras .td-obra-padding { padding: 15px 0; }
.table-obras > tbody > tr > th,
.table-obras > tfoot > tr > th,
.table-obras > thead > tr > td,
.table-obras > tbody > tr > td,
.table-obras > tfoot > tr > td {
	border-top: none;
	border-bottom: 1px solid #D7D7D7;
	font-size: 14px;
	color: #787878;
	padding: 0;
}
.obra-year {
	font-size: 24px;
	margin-bottom: 18px;
}
.obra-name {
	font-size: 18px;
	color: #064B9F;
	margin-bottom: 18px;
}
.product-main-photo span {
	position: absolute;
	font-size: 36px;
	color: #eee;
	top: 40%;
	left: 42%;
	display: none;
}
.product-main-photo a:hover span { display: block; }

/* ==========================================================================
    Pagination
    ========================================================================== */
.row-pagination {
	clear: both;
	overflow: hidden;
}
.pagination > .active > a,
body.dark .pagination > .active > a {
	background-color: #064B9F;
	-webkit-border-radius: 5px;
	   -moz-border-radius: 5px;
	        border-radius: 5px;
}
.pagination > li > a,
.pagination > li > span,
.pagination > li > a:hover,
.pagination > li > span:hover,
.pagination > li > a:focus,
.pagination > li > span:focus {
	font-size: 14px;
	font-weight: bold;
	color: #787878;
}
.pagination > li > a > i {
	color: #064B9F;
}

/* ==========================================================================
    404
    ========================================================================== */
.error-sorry {
	font-size: 18px;
	font-weight: 600;
	color: #064B9F;
}
ul.nav-list.primary > li a { border-color: #ddd; }

/* ==========================================================================
    Footer
    ========================================================================== */
#footer {
	background: #064B9F;
	border-top-color: #064B9F;
}
#footer h3 {
	font-size: 2em;
	font-weight: 400;
	text-transform: none;
	line-height: 27px;
	margin-bottom: 14px;
}
#footer p {
	color: #FFF;
}
#footer .footer-copyright p {
	color: #FFF;
	line-height: 1.3em;
}
#footer h4 {
	color: #FFF!important;
	text-transform: none;
	font-size: 1.3em;
	font-weight: 400;
}
#footer a.more-institutional {
	color: #0196F2 !important;
	font-size: 13px;
	font-weight: 600;
}
#footer a.author-virtualiza {
	color: #0087CC!important;
}
.procon img{
	padding-top: 15px;
}
.author {
	padding-right: 10px;
}

@media (max-width: 991px) {
	#header.colored>.container {
	    height: 70px;
	}
	#header.flat-menu .btn-responsive-nav, #header.center .btn-responsive-nav {
		top: 20px;
	}
	.mb-992 {
		margin-bottom: 30px;
	}
}
.numero-home, .desc-home {
	font-family: "Montserrat", sans-serif;
	font-weight: 800;
	color: #064b9f;	
	text-align: center;			
}
.numero-home {
	font-size: 148px;
	margin: 20px 0 38px;
}
.desc-home {
	font-size: 38px;
}

header nav ul li.has-children .block-submenu {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	z-index: 999;
}
header nav ul li.has-children .block-submenu ul {
	list-style: none;
	margin: 0;
	padding: 0 0 5px 0;
	background-color: #064B9F;
	border-radius: 0 0 6px 6px;
}
header nav ul li.has-children .block-submenu ul li a {
	display: block;
	padding: 8px 15px;
	color: #333;
	text-decoration: none;
}
header nav ul li.has-children .block-submenu ul li a:hover {
	background: #f5f5f5;
}
header nav ul.nav-main li a {
	font-size: 13px!important;
	text-transform: uppercase!important;
	font-weight: 700!important;
}