html {
  scroll-behavior: smooth;
}

body {
  font-family: 'Roboto', sans-serif;
  /*padding-top: 100px;*/
  background-color: #f8f6f6;
  overflow-x: hidden;
}

.mt-10{
	margin-top:10rem;
}

.mb-10{
	margin-bottom:10rem;
}

.ml-10{
	margin-left:10rem;
}

.ml-20{
	margin-left:20rem;
}

.pl-10{
	padding-left:10rem;
}

.pt-5{
	padding-top:5rem;
}

.plr-100{ 
	padding:0 5rem 0 5rem;
}

.gray{
	font-size:1.2em;
	color:#999;
}

h1.linedup:before, h2.linedup:before{
	content: '';
    display: block;
    width: 100px;
    height: 2px;
    background: #ddd;
    margin-bottom:10px;
}

h2.white{
	color:#fff;
	text-transform:uppercase;
	font-weight:bold;
}

h3.white{
	color:#fff;
}

p.white{
	color:#fff;
	font-size:1.2em;
	margin:2% 20%;
}

.border-0{
	border-color:#fff;
}

.button{
	color:#333;
	background-color:#fff;
	font-weight:bold;
	border:1px solid #999;
	-webkit-transition: all 200ms linear;
    -moz-transition: all 200ms linear;
    -o-transition: all 200ms linear;
    -ms-transition: all 200ms linear;
    transition: all 200ms linear;
}

.button:hover{
	background-color:#999;
	color:#fff; 
}

.logo{
	max-width:150px;
}

.logo-sec{
	max-width:250px;	
}

.navbar{
	/*background-color:ccc !important;*/
	opacity:0.9;
	padding:20px;
	text-align:center;
}

.nav-link{
	font-size:0.9em;
	font-weight:bold;
	color:#999!important;
	text-transform: uppercase;
}

.nav-link:hover{
	color: #000!important;
	-webkit-transition: all 500ms linear;
    -moz-transition: all 500ms linear;
    -o-transition: all 500ms linear;
    -ms-transition: all 500ms linear;
    transition: all 500ms linear;
}

.dropdown-menu{
	width:250px;
	text-align:left;
	
	padding:5px;
}

li.active a{
	text-decoration: underline;
	text-decoration-color: #999;
	text-decoration-thickness: 1px;
	text-underline-position: under;
}

.container-menu {
  display: inline-block;
  cursor: pointer;
  text-align:center;
}

.navbar-toggler{
	outline:0px !important;
	border-color: #fff !important;
}

.navbar-toggler:hover{
	background-color:#fff;
}

.bar1, .bar2, .bar3 {
  width: 20px;
  height: 3px;
  background-color: #000;
  margin: 6px 0;
  transition: 0.4s;
}

/* Rotate first bar */
.change .bar1 {
  -webkit-transform: rotate(45deg) translate(6px, 6px) ;
  transform: rotate(45deg) translate(6px, 6px) ;
}

/* Fade out the second bar */
.change .bar2 {
  opacity: 0;
}

/* Rotate last bar */
.change .bar3 {
  -webkit-transform: rotate(-45deg) translate(7px, -7px) ;
  transform: rotate(-45deg) translate(7px, -7px) ;
}

h1.quote{
	width:100%;
	margin:0px 0px 100px 0;
	font-size:2.8em;
	color:#777;
}

h1.quote2{
	margin:50px 0px 20px 0px;	
	font-size:2.8em;
	color:#777;
}

h2.quote2{
	margin:50px 0px 20px 0px;	
	font-size:2em;
	color:#777;
}

@-webkit-keyframes zoom {
  from {
    -webkit-transform: scale(1, 1);
  }
  to {
    -webkit-transform: scale(1.5, 1.5);
  }
}

@keyframes zoom {
  from {
    transform: scale(1, 1);
  }
  to {
    transform: scale(1.5, 1.5);
  }
}

.carousel-inner .carousel-item > img {
  -webkit-animation: zoom 30s;
  animation: zoom 30s;
}

.card{
	padding:40px 10px;
	text-align:center;
}

.card a{
	font-size:0.8em;
	color:#999;
	text-decoration:none;
	-webkit-transition: all 200ms linear;
    -moz-transition: all 200ms linear;
    -o-transition: all 200ms linear;
    -ms-transition: all 200ms linear;
    transition: all 200ms linear;
}

.card a:hover{	
	color:#161f2a;
}


.card a img{
	filter: grayscale(100%);
	-webkit-transition: all 200ms linear;
    -moz-transition: all 200ms linear;
    -o-transition: all 200ms linear;
    -ms-transition: all 200ms linear;
    transition: all 200ms linear;
}

.card a img:hover, .card a img:focus{
	filter: grayscale(0%);
}

.icon-servicos{
	max-width:80px;
	
}

.carousel-caption {
    top: 250px;
    bottom: auto;
}

.carousel-caption h3{
	font-size:2.8em;
	font-weight:900;
	text-transform:uppercase;
}
.carousel-caption p{
	font-size:1.6em;
	font-weight:900;
	text-transform:uppercase;
}

.shadow-img{
	-webkit-box-shadow: 20px -20px 0px 3px #ddd;
	-moz-box-shadow: 20px -20px 0px 3px #ddd;
	box-shadow: 20px -20px 0px 3px #ddd;
}

a.lnk{
	color:#999;
	-webkit-transition: all 200ms linear;
    -moz-transition: all 200ms linear;
    -o-transition: all 200ms linear;
    -ms-transition: all 200ms linear;
    transition: all 200ms linear;
}

a.lnk:hover{
	color:#fff;
	text-decoration:none;
}

a.lnk-dark{
	text-decoration:none;
	color:#999;
	-webkit-transition: all 100ms linear;
    -moz-transition: all 100ms linear;
    -o-transition: all 100ms linear;
    -ms-transition: all 100ms linear;
    transition: all 100ms linear;
}

a.lnk-dark:hover, a.lnk-dark:focus{
	color:#161f2a;
	text-decoration: underline;
	text-decoration-color: #161f2a;
	text-decoration-thickness: 2px;
	text-underline-position: under;	
}	

ul.lnk{
	margin-left:150px;
}

.box{
	padding:10px 0px;
	background: #fff;
	text-align:center;
	-webkit-transition: all 500ms linear;
    -moz-transition: all 500ms linear;
    -o-transition: all 500ms linear;
    -ms-transition: all 500ms linear;
    transition: all 500ms linear;
}

.box:hover{
	background: #999;
}

a.lnk-box{
	text-decoration:none;
}

.lnk-projectos{
	font-size:1.2em;
	font-weight:bold;
	margin-left:20px;
	color:#333;
}

iframe{
    	width:100%;
    	height:250px;
    	padding-left:0;
    }

/*Mobile*/
@media only screen and (min-width:320px) and (max-width:800px){
	ul.lnk{
    	margin-left:0;
    }
    
    .logo{
    	max-width:150px;
    }
}

@media only screen and (min-width:320px) and (max-width:1200px){
	.carousel{
		padding-top:100px;
	}
	
	.carousel-caption {
	    top: 150px;
	    bottom: auto;
	}
		
	.navbar{
		padding:10px;
    }
    
    .carousel-caption h3{
    	font-size:2.0em;
    }
    
    .carousel-caption p{
    	font-size:1.6em;
    }
    
    .dropdown-menu{
		width:250px;
		margin:auto;
		text-align:center;
		background-color:#fff;
		padding:5px;
		border:0px;
	}
	
	.logo-sec{
		max-width:100px;	
	}
	
	.pl-10{
		padding-left:1rem;
	}
	
	iframe{
    	width:100%;
    	padding-left:2rem;
    }
}


ul.lnk li, ul.lista li{
	list-style:none;
	font-size:1.3em;
	padding-bottom:4px;
	margin-bottom:5px;
}

ul.lnk li a{
	text-decoration:none;
	padding:6px 10px;
	color:#999;
	border-radius:4px;
	-webkit-transition: all 500ms linear;
    -moz-transition: all 500ms linear;
    -o-transition: all 500ms linear;
    -ms-transition: all 500ms linear;
    transition: all 500ms linear;
}

ul.lnk li a:hover, ul.lnk li a:focus{
	color:#161f2a;
	text-decoration: underline;
	text-decoration-color: #161f2a;
	text-decoration-thickness: 2px;
	text-underline-position: under;
}

/*Footer*/
footer{
	background:#343a40;
	border-top:2px solid #999; 
	padding:10px;
}

.gotop {
	position: absolute;
	top: -15px;
	left: 50%;
	background: #fff;
  	margin-left: -40px;
	z-index: 8;
	width: 60px;
	height: 60px;
	font-size: 30px;
	padding-top: 3px;
	text-align: center;
	vertical-align: middle;
	border:2px solid #999;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	-ms-border-radius: 50%;
	border-radius: 50%;
	-webkit-transition: 0.2s;
	-o-transition: 0.2s;
	transition: 0.2s;
}

.gotop:hover, .gotop:focus {
  top: -20px;
  text-decoration: none !important;
  color:#fff;
}

.fa-icon-size{
	font-size: 36px;
}


li.nav-item a.nav-link i.fab{
	color:#999;
}

li.nav-item a.nav-link i.fab:hover{
	color:#000;
}

.fas, .far, .fab {
	color:#ccc;
	padding:10px;
	-webkit-transition: all 500ms linear;
    -moz-transition: all 500ms linear;
    -o-transition: all 500ms linear;
    -ms-transition: all 500ms linear;
    transition: all 500ms linear;
}

footer .fas:hover, footer .far:hover, footer .fab:hover {
	color:#fff;
}

.fas.white{color:#fff;}

.card-columns .card{
	border:none;
}

.embed-responsive{
	max-width:800px;
	height:auto;
	margin:auto;
}


/*full width image gallery*/
.row-img-gal {
  display: flex;
  flex-wrap: wrap;
  padding: 0;
}

/* Create four equal columns that sits next to each other */
.column {
  flex: 33%;
  max-width: 33.3333%;
  padding: 0;
}

.column img {
  margin-top: 0;
  vertical-align: middle;
  width: 100%;
}

.container-img-display {
  position: relative;
  width: 100%;
  padding:0;
}

.card-columns{
	width:100%;
	column-gap:0;
}

/*container to hide images in pages that have filter*/
.container-img {
  position: relative;
  width: 100%;
  padding:0;
  display: none; /* Hide columns by default */
  
}

/* Make the image to responsive */
.image {
  width: 100%;
  height: auto;
}

/* The overlay effect (full height and width) - lays on top of the container and over the image */
.overlay {
  position: absolute;
  bottom: 5%;
  left: 5%;
  right: 0;
  background-color: #fff;
  opacity:0.8;
  overflow: hidden;
  width: 90%;
  height: 90%;
  padding:5%;
  transform: scale(0);
  transition: .3s ease;
}

/* When you mouse over the container, the overlay text will "zoom" in display */
.container-img:hover .overlay, .container-img-display:hover .overlay {
  transform: scale(1);
}

/* Some text inside the overlay, which is positioned in the middle vertically and horizontally */
.text {
  color: #000;
  font-size: 1.4em;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: left;
}

@media only screen and (max-width: 1000px) {
    .overlay{
    	display:none;
    }
}

button:focus { outline:0 !important; }

.filter_btn {
  border: none;
  outline: none;
  padding: 12px 16px;
  background-color: white;
  cursor: pointer;
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

/* Add a grey background color on mouse-over */
.filter_btn:hover {
  background-color: #ddd;
}

/* Add a dark background color to the active button */
.filter_btn.btn_active {
  	background-color: #666;
	color:#fff;
}

.show {
  display: block;
}

.cont-bgimage{
	background-size:cover;
	background-image: url("../images/genericos/destaque-projectos.jpg");
	background-attachment: fixed;
	background-repeat:no-repeat;
}

#url{
	display:none;
}