@import url('//fonts.googleapis.com/css?family=Roboto+Slab:400,700&display=swap');



/* GLOBAL CONFIG
//////////////////////////////////////////////////////////////////////////////////////////*/
body, html { height: 100% }

body { 
  font-family: "Roboto Slab", Sans-serif;
  font-size: 12pt;
  color: #666 }

.animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both }

.color-primary { color: #BE8B3F }
.color-white { color: #FFF }
.color-black { color: #444 }


/* WRAPPER AND CONTAINER
//////////////////////////////////////////////////////////////////////////////////////////*/
.home section { 
  position: absolute;
  top: 0;
  height: 100%;
  width: 100% }

@media (min-width: 1219px) {
  .container { 
    width: 1200px;
    padding: 0 }

  .wrapper { padding: 80px 0 }
}

@media(max-width: 1218px){
  .wrapper { padding: 40px 0 }
}

@media (min-width: 768px) and (max-width: 1218px) {
  .container { 
    width: auto;
    padding: 0 20px }
}



/* HEADER
//////////////////////////////////////////////////////////////////////////////////////////*/
header { 
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000 }

header .container {  position: relative }

.affix,
.affix-bottom {
  z-index: 1000000;
  position: fixed !important; 
  bottom: 20px;
  right: 20px }

.topbar { 
  color: #FFF;
  font-size: 95%;
  border-bottom: 2px solid rgba(255,255,255,0.2);
  line-height: 75px;
  height: 75px }

.topbar .ico { margin-right: 5px }

.topbar li { display: inline-block }

.topbar .pull-left li { margin-right: 45px }
.topbar .pull-right li { margin-left: 30px }

.topbar li:last-of-type { margin: 0 }

.topbar .pull-left li a { 
  font-weight: 700;
  color: #FFF }

.topbar .pull-left li a:hover { color: #BE8B3F }

.topbar .pull-right img { opacity: 0.8 }
.topbar .pull-right a:hover img { opacity: 1 }

@media(max-width:767px){
  .affix,
  .affix-bottom { bottom: 90px }
}


/* BRAND
//////////////////////////////////////////////////////////////////////////////////////////*/
.brand { 
  position: relative;
  text-align: center;
  z-index: 100;
  margin-top: 30px }

.navbar-brand { 
  width: 100%;
  text-align: center;
  display: block;
  margin-top: 10px } 

.navbar-brand img { margin: 0 auto }

@media(max-width: 440px){
  .navbar-brand img { width: 80% }
}




/* NAVBAR
//////////////////////////////////////////////////////////////////////////////////////////*/
.navbar-nav li a { 
  color: rgba(255,255,255,0.65);
  line-height: 100%;
  text-transform: lowercase;
  font-size: 160% }

@media (min-width: 1025px) {

  .navbar-menu { padding: 0 }

  .navbar {  
    z-index: 100;
    position: absolute;
    top: 80px;
    right: 0 }

  .navbar-nav {
    width: 100%;
    display: table;
    table-layout: auto }

  .navbar-nav li { margin-right: 50px }
  .navbar-nav li:last-of-type { margin-right: 0 }
 
  .navbar-nav li.socialmedia a:last-of-type { margin-left: 10px  }

  .navbar-nav li.socialmedia a { display: inline-block  }

  .navbar-nav li.socialmedia a img { opacity: 0.4 }
  .navbar-nav li.socialmedia a:hover img { opacity: 1}

  .navbar-nav li > a { padding: 0 }

  .navbar-nav > li.active > a,
  .navbar-nav li:active > a,
  .navbar-nav li:focus > a,
  .navbar-nav li:hover > a,
  .nav>li>a:focus, 
  .nav>li>a:hover { 
    color: #BE8B3F;
    background: none }

  .socialmedia { margin-top: -5px }

}

@media (max-width: 1024px) {

  .navbar {
    border: 0 !important;
    position: absolute;
    top: 0; 
    left: 0;
    width: 100% }

  .navbar-menu { padding: 0 }
  
  .navbar-collapse.collapse { display: none !important }
  .navbar-collapse.collapse.in { display: block !important }

  .navbar-collapse { 
    border: 0 !important;
    top: 82px;
    z-index: 10000;
    width: 40%;
    right: 15px;
    position: absolute;
    margin-top: -4px  }

  .navbar-nav { 
    border-radius: 5px;
    border-top-right-radius: 0;
    overflow: hidden;
    width: 100%;
    margin: 0 }

  .navbar-nav > li { 
    width: 100%;
    background: rgba(0,0,0,0.95);
    border-bottom: 1px solid #BE8B3F }

  .navbar-nav > li:last-child { border: 0 }

  .navbar-nav > li > a {
    text-align: center;
    line-height: 50px;
    font-size: 100%;
    font-weight: bold;
    color: #BE8B3F;
    text-transform: uppercase  }

  .navbar-nav > li > a:hover,
  .navbar-nav > li > a:focus,
  .navbar-nav > li > a:active { background: rgba(0,0,0,0.1) }

  .navbar-nav li a .glyphicon-user { margin-top: 8px } 

  .navbar-nav li.socialmedia a { display: inline-block }

  button.navbar-toggle {
    position: absolute;
    top: 30px !important;
    right: 0;
    z-index: 10000;
    display: block }

  button.navbar-toggle .icon-bar { 
    background: #BE8B3F;
    height: 3px }

  button.navbar-toggle:active .icon-bar,
  button.navbar-toggle:focus .icon-bar,
  button.navbar-toggle:hover .icon-bar { background: #FFF }
   
}

   
@media (max-width: 767px) {

  button.navbar-toggle { top: 20px }

  .navbar-collapse { 
    z-index: 100;
    width: 100%;
    top: 120px;
    right: 0;
    border-radius: 0;
    position: absolute;
    margin-top: -4px  }

  .navbar-nav { border-radius: 0 }

}



/* HEADINGS, PARAGRAFHS, LISTS, ETC.
//////////////////////////////////////////////////////////////////////////////////////////*/
h1 { 
  font-weight: 700;
  letter-spacing: -3px;
  font-size: 550%; 
  margin: 0 0 30px }

h2 { 
  font-weight: 700;
  font-size: 225%; 
  margin: 0 0 15px }

p { 
  line-height: 160%;
  margin-bottom: 25px }

p ~ h1,
p ~ h2,
p ~ h3 { margin-top: 15px }

@media(max-width:767px){
  h1 { 
    letter-spacing: normal;
    font-size: 250% }

  h2 { font-size: 150% }
}




/* CAROUSEL
//////////////////////////////////////////////////////////////////////////////////////////*/
.carousel-slideshow,
.carousel-slideshow .carousel-inner,
.carousel-slideshow .carousel-inner .item { 
  width: 100%;
  height: 100% }

.carousel-slideshow .carousel-inner .item img { 
  height: 100%;
  width: 100%;
  object-fit: cover;
  z-index: 0;
  position: absolute;
  top: 0; left: 0 }

.carousel-slideshow .caption {
  text-align: center;
  position: relative;
  z-index: 50;
  top: 50%;
  transform: translate(0, calc(-50% + 195px)) }

.carousel-slideshow .caption-inner {  position: relative }

.carousel-slideshow .caption-title { 
  color: #FFF;
  margin-bottom: 10px;
  font-weight: bold;
  line-height: 100% }

.carousel-slideshow .caption-summary {
  color: #FFF; 
  margin-bottom: 50px;
  line-height: 130% } 

.carousel-control.left,
.carousel-control.right {
  z-index: 30 }

.carousel-fade .carousel-inner .item {
  -webkit-transition-property: opacity;
          transition-property: opacity }          

.carousel-fade .carousel-inner .item,
.carousel-fade .carousel-inner .active.left,
.carousel-fade .carousel-inner .active.right { opacity: 0 }

.carousel-fade .carousel-inner .active,
.carousel-fade .carousel-inner .next.left,
.carousel-fade .carousel-inner .prev.right { opacity: 1 }

.carousel-fade .carousel-inner .next,
.carousel-fade .carousel-inner .prev,
.carousel-fade .carousel-inner .active.left,
.carousel-fade .carousel-inner .active.right {
  left: 0;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0) } 

@media (min-width: 1200px) {
  .carousel-control img {
    position: absolute;
    top: 50%;
    margin-top: -44px;
    margin-left: -23px; } 
}

@media (max-width: 1199px) {
  .carousel-control {
    opacity: 0.9;
    border-radius: 100%; 
    background: #D24F54;
    display: inline-block;
    padding: 30px;
    position: relative;
    width: 50px;
    height: 50px;
    display: inline-block;
    top: auto;
    bottom: 80px }

  .carousel-control img {  
    position: absolute;
    height: 40px;
    margin-top: -20px;
    margin-left: -10px; }
}

@media (min-width: 768px) {

  .carousel-slideshow .carousel-indicators { bottom: 30px }

  .carousel-slideshow .caption-title { 
    margin-bottom: 40px;
    font-size: 500% }

  .carousel-slideshow .caption-summary { font-size: 140% }

}
  
@media (max-width: 767px) {


  .carousel-slideshow .caption-title { font-size: 300% }
  .carousel-slideshow .caption-summary { font-size: 90% }

  .carousel-slideshow .carousel-inner .item { background: #111 }
  .carousel-slideshow .carousel-inner .item img { opacity: 0.35 }
    
}
 


/* WHO
//////////////////////////////////////////////////////////////////////////////////////////*/
.about {
  background: url(img/bg-about.jpg) no-repeat center;
  background-size: cover }

.about .service-group.row { margin: 0 0 120px 0 }

.about .service-group.row > div { 
  color: #999;
  background: #EEE;
  text-align: center;
  padding: 45px 30px  }

.about .service-group.row > div:nth-child(2) { background: #222 }

.about .service-group.row > div:nth-child(3) { 
  color: rgba(255,255,255,0.7);
  background: #BE8B3F }
  
.about .who { font-size: 112.5% }

.about .who p { line-height: 140% }

.about .who p:last-of-type { 
  margin-bottom: 60px;
  font-size: 130% }

.about .local  {
  position: relative;
  padding-left: 60px }

.about .local strong { 
  margin-bottom: 5px;
  display: block;
  line-height: 1.3 }

.about .local .ico-mapmarker { 
  position: absolute;
  left: 0;
  top: 0 }

.about .local strong { font-size: 125% }

.about .local strong span { 
  color: #BE8B3F;
  font-size: 75% }

@media(min-width: 768px){
  .about .who { width: 60% }
  .about .service-group.row > div { min-height: 320px }
}

  




/* CONTACT
//////////////////////////////////////////////////////////////////////////////////////////*/
.contact {
  background: url(img/bg-contact.jpg) no-repeat center;
  background-size: cover }

.contact .row { 
  padding-bottom: 45px;
  margin-bottom: 45px;
  border-bottom: 2px solid rgba(255,255,255,0.2) }

.contact .row:last-child {
  padding-bottom: 0;
  margin: 0;
  border: 0 }

.contact .row div { color: #FFF }

.contact .row div strong { font-size: 140%  }

.contact .icobig { margin-bottom: 10px }

.contact .btn { margin-top: 10px }

.contact span { color: #BE8B3F }

@media(min-width:768px){
  .contact.wrapper { padding: 120px 0 }
  
  .contact .row { 
    padding-left: 150px;
    padding-right: 150px }
}

@media(max-width:767px){
  .contact .row div:first-of-type { margin-bottom: 45px }
}




/* FOOTER
//////////////////////////////////////////////////////////////////////////////////////////*/
footer a.brand-flexpoint {
  display: inline-block;
  text-indent: -1000000px;
  position: relative;
  top: -4px;
  background: url(//www.flexpoint.com.br/addons/flexpoint-site-sign.png) bottom;
  width: 25px;
  height: 27px } 

@media(min-width: 768px){
  footer { padding: 30px 0 }
}

@media(max-width: 767px){
  footer { 
    position: relative;
    padding: 20px 42px 20px 0 }

  footer a.brand-flexpoint {
    position: absolute;
    top: 25px;
    right: 15px;
  }
}



/* FORM
//////////////////////////////////////////////////////////////////////////////////////////*/
.btn { 
  font-weight: 700;
  font-size: 87.5%;
  line-height: 50px;
  height: 50px;
  padding: 0 30px;
  background: none;
  text-transform: uppercase;
  letter-spacing: 3px;
  border-radius: 0;
  border-width: 2px }

.btn-primary {
  border-color: #BE8B3F !important;
  color: #BE8B3F !important }

.btn-white {
  border-color: rgba(255,255,255,0.7) !important;
  color: rgba(255,255,255,0.7) !important }

.btn-gray {
  border-color: #999 !important;
  color: #999 !important }

.btn:hover,
.btn:active,
.btn:focus { background: rgba(100,100,100,0.2) }





/* ANIMATION: DELAY / DURATION
//////////////////////////////////////////////////////////////////////////////////////////*/
.delay1   { animation-delay: 500ms !important }
.delay2   { animation-delay: 1000ms !important }
.delay3   { animation-delay: 1500ms !important }
.delay4   { animation-delay: 2000ms !important }
.delay5   { animation-delay: 2500ms !important }
.delay6   { animation-delay: 3000ms !important }
.delay7   { animation-delay: 3500ms !important }
.delay8   { animation-delay: 4000ms !important }
.delay9   { animation-delay: 4500ms !important }
.delay10  { animation-delay: 5000ms !important }

.duration1  { animation-duration: 100ms !important }
.duration2  { animation-duration: 200ms !important }
.duration3  { animation-duration: 300ms !important }
.duration4  { animation-duration: 400ms !important }
.duration5  { animation-duration: 500ms !important }
.duration6  { animation-duration: 600ms !important }
.duration7  { animation-duration: 700ms !important }
.duration8  { animation-duration: 800ms !important }
.duration9  { animation-duration: 900ms !important }
.duration10 { animation-duration: 1000ms !important }
.duration20 { animation-duration: 2000ms !important }
.duration30 { animation-duration: 3000ms !important }
.duration40 { animation-duration: 4000ms !important }
.duration50 { animation-duration: 5000ms !important }
.duration60 { animation-duration: 6000ms !important }
.duration70 { animation-duration: 7000ms !important }
.duration80 { animation-duration: 8000ms !important }
.duration90 { animation-duration: 9000ms !important }
.duration100 { animation-duration: 10000ms !important }




/* ICONS BIG
//////////////////////////////////////////////////////////////////////////////////////////*/
.icobig{ 
  position: relative;
  top: 3px;
  display: inline-block;
  background:url("img/icobig.png") top left no-repeat; }

.ico-mapmarker{ width:41px; height:62px; background-position:0 0; }
.ico-ig{ width:43px; height:44px; background-position:0 -62px; }
.ico-fb{ width:42px; height:42px; background-position:0 -106px; }
.ico-phone{ width:44px; height:47px; background-position:0 -148px; }
.ico-mail{ width:47px; height:47px; background-position:0 -195px; }

