:root{
    --colorfirst: #2577b3;
    --colorsecond: #61a6d0;
    --colorthird: #badaf3;
    --white: #fff;
    --black: #000000;
    --verydarkgrey: #191919;
    --darkgrey: #323232; 
    --mediumgrey: #737373; 
    --grey: #646464;     
    --lightgrey: #c8c8c8;
    --verylightgrey: #f5f5fa;
}
.var_use_example {
    background-color: var(--white);
}

/* buttons */
  .main_bnt_base{
    border-radius: 50px;
    padding: 8px 45px;
    display: inline-flex;
    align-items: center;
    justify-content: center;

    transition: all 0.3s ease-in-out;
  }
  /* solid white */
    .btn_solid_white{
      background-color: var(--white);
    }
  /* end solid white */

  /* border colorfirst */
    .btn_border_first{
      border: solid 1px var(--colorfirst);
      color: var(--colorfirst);
    }
    .btn_border_first:hover,
    .btn_border_first:hover *{
      color: var(--white) !important;
    }
    .btn_border_first:hover{
      background-color: var(--colorfirst);
    }
  /* end border colorfirst */

/* END buttons */

.bg_colorfirst {
  background-color: var(--colorfirst) !important;
}
.color_colorfirst {
  color: var(--colorfirst) !important;
}
.bg_colorthird {
  background-color: var(--colorthird) !important;
}
.color_colorthird {
  color: var(--colorthird) !important;
}
.bg_colorsecond {
  background-color: var(--colorsecond) !important;
}
.color_colorsecond {
  color: var(--colorsecond) !important;
}
.bg_black {
  background-color: var(--black) !important;
}
.color_black {
  color: var(--black) !important;
}
.bg_verydarkgrey {
  background-color: var(--verydarkgrey) !important;
}
.color_verydarkgrey {
  color: var(--verydarkgrey) !important;
}
.bg_darkgrey {
  background-color: var(--darkgrey) !important;
}
.color_darkgrey {
  color: var(--darkgrey) !important;
}
.bg_grey {
  background-color: var(--grey) !important;
}
.color_grey {
  color: var(--grey) !important;
}
.bg_lightgrey {
  background-color: var(--lightgrey) !important;
}
.color_lightgrey {
  color: var(--lightgrey) !important;
}
.bg_verylightgrey {
  background-color: var(--verylightgrey) !important;
}
.color_verylightgrey {
  color: var(--verylightgrey) !important;
}
.bg_white {
  background-color: var(--white) !important;
}
.color_white {
  color: var(--white) !important;
}

@font-face {
  font-family: 'avenir-bold';
  font-style: normal;
  src: url('../fonts/AvenirNextLTPro-Bold.otf');
}

@font-face {
  font-family: 'avenir-regular';
  font-style: normal;
  src: url('../fonts/AvenirNextLTPro-Regular.otf');
}

@font-face {
  font-family: 'avenir-demi';
  font-style: normal;
  src: url('../fonts/AvenirNextLTPro-Demi.otf');
}

@font-face {
  font-family: 'OpenSans-Regular';
  font-style: normal;
  src: url('../fonts/OpenSans-Regular.ttf');
}

@font-face {
  font-family: 'OpenSans-Light';
  font-style: normal;
  src: url('../fonts/OpenSans-Light.ttf');
}

@font-face {
  font-family: 'OpenSans-Bold';
  font-style: normal;
  src: url('../fonts/OpenSans-Bold.ttf');
}
@font-face {
  font-family: 'OpenSans-SemiBold';
  font-style: normal;
  src: url('../fonts/OpenSans-Semibold_0.ttf');
}


/*a {
    color: var(--colorfirst) !important;
}*/


h1,
.h1 {
  font-family: OpenSans-Bold;
  font-size: 40px;
  line-height: 50px;
  color: var(--colorfirst);
  font-weight: normal !important;
}
h2,
.h2 {
  font-family: OpenSans-Bold;
  font-size: 30px;
  line-height: 36px;
  color: var(--colorfirst);
  font-weight: normal !important;
}
.styledForm.greyInputs input[type="submit"],
.styledForm.greyInputs input[type="reset"],
h3,
.h3 {
  font-family: OpenSans-Bold;
  font-size: 22px; 
  line-height: 30px;
  color: var(--colorfirst);
  font-weight: normal !important;
}
h4,
.h4 {
  font-family: OpenSans-Regular;
  font-size: 18px;
  line-height: 26px;
  color: var(--grey);
  font-weight: normal !important;
}
h5,
.h5 {
  font-family: OpenSans-SemiBold;
  font-size: 18px; 
  line-height: 26px;
  color: var(--colorfirst);
  font-weight: normal !important;
}
h6,
.h6 {
  font-family: OpenSans-Bold;
  font-size: 18px;
  line-height: 24px;
  color: var(--lightgrey);
  font-weight: normal !important;
}
h7,
.h7 {
  font-family: OpenSans-Bold;
  font-size: 80px;
  line-height: 80px;
  color: var(--white);
  font-weight: normal !important;
}

h8,
.h8 {
  font-family: Bitter-Regular;
  font-size: 20px;
  line-height: 28px;
  color: var(--lightgrey);
  font-weight: normal !important;
}

h12,
.h12 {
  font-family: Raleway-Regular;
  font-size: 18px;
  line-height: 28px;
  color: var(--white);
  font-weight: normal !important;
}

h13,
.h13 {
  font-family: OpenSans-Regular;
  font-size: 16px;
  line-height: 16px;
  color: var(--darkgrey);
  font-weight: normal !important;
}

p,
.p {
  font-family: OpenSans-Regular;
  font-size: 14px;
  line-height: 22px;
  color: var(--grey);
  font-weight: normal !important;
}
.row > .h1 *,
.row > .h2 *,
.row > .h3 *,
.row > .h4 *,
.row > .h12 * {
  font-size: inherit !important;
  font-family: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
  font-style: inherit !important;
  color: inherit !important;
}

a{ 
  text-decoration: none !important;
}

.footer_nav_text{
    font-family: NotoSans-Regular;
    font-size: 16px; 
    line-height: 50px;
    color: var(--grey);
}
/* fim de estilos pré definidos */

.loadingwrapper{
    width: 100%;
    height: 100%;
    position: fixed;
    background-color: rgba(255,255,255,0.8);
    z-index: 99999;
}


.checkbox_item_custom label,
.checkbox_item_custom label p,
.checkbox_item_custom label .p{
    font-size: 12px !important;
    line-height: 24px !important;
    color: var(--darkgrey) !important;
}

.checkbox_item_custom label a,
.checkbox_item_custom label p a,
.checkbox_item_custom label .p a{
    color: var(--darkgrey) !important;
}

.checkbox_item_custom .container{
    min-height: 5px !important;
}

.checkbox_item_custom .container input:checked ~ .checkmark{
    background-color: var(--colorfirst) !important;
}


.bold_grey_link{
    text-decoration: none;
    color: var(--lightgrey);
    font-weight: bold;
}
.bold_grey_link:hover{
    text-decoration: none;
    color: var(--grey);
    
}

.verProjectos:hover{
    font-weight: bold !important;
}

@media (max-width: 575px) {
    h1,
    .h1 {
      font-size: 28px;
      line-height: 38px;
    } 
    
    h2,
    .h2 {
      font-size: 24px;
      line-height: 34px;
    }
    h3,
    .h3 {
      font-size: 18px; 
      line-height: 26px;
    }
     h4,
    .h4 {
      font-size: 14px; 
      line-height: 22px;
    }
       p,
    .p {
      font-size: 12px; 
      line-height: 20px;
    }
}

.tipo_sl{
    padding: 5px;
    margin: 5px;
    display: block !important;
}
.tipo_sl *{
    margin: 0;
}




/* .main_btn,
.btn_solid_first{
  cursor: pointer;
  background-color: var(--colorfirst);
  border-radius: 0px;
  padding: 8px 30px;
  color: white;
  text-transform: uppercase;
}
.btn_solid_first:hover{
  color: white;
  text-decoration: none !important;
} */
.main_btn,
.btn_solid_first{
  	cursor: pointer;
    background-color: var(--colorfirst) !important;
    color: white !important;
    border-radius: 50px;
    padding: 12px 30px;
    margin: 0px 8px;
}

.btn_solid_lightgrey{
  cursor: pointer;  
  background-color: var(--verylightgrey);
  border-radius: 0px;
  padding: 8px 30px;
  color: var(--verydarkgrey);
  color: var(--verydarkgrey);
}
.btn_solid_lightgrey:hover{
  text-transform: uppercase;
}

.footer *{
    margin: 0;
}


@media (max-width: 1038px) {
  .main_body{
    width: 95%;
  }

}
@media (max-width: 850px) {
  .main_body{
    width: 90%;
  }

}

.overlayDiv{
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

/* CUSTOM BARS */
	.custom_bars_cont{
    	cursor: pointer;
	}
	.custom_bars_bar{
		height: 2px;
		width: 45px;
		background-color: var(--colorfirst);
		margin: 5px 0;
		border-radius: 3px;
	}
/* END CUSTOM BARS */


.right_main_body_fill {
  position: absolute;
  width: 10000px;
  height: 100%;
  top: 0;
  right: 0;
  transform: translateX(100%);
  z-index: 1;
}
.left_main_body_fill {
  position: absolute;
  width: 10000px;
  height: 100%;
  top: 0;
  left: 0;
  transform: translateX(-100%);
  z-index: 1;
}


  a:hover{
    color: var(--colorfirst);
  }

  .h1, .h2, .h3, .h4, .h5, .h6, .p, h1, h2, h3, h4, h5, h6, p {
    margin: 0;
    margin-bottom: 0 !important;
  }

  .animated.delay-100ms {
    -webkit-animation-delay: 100ms;
    animation-delay: 100ms;
  }
  .animated.delay-200ms {
    -webkit-animation-delay: 200ms;
    animation-delay: 200ms;
  }
  .animated.delay-300ms {
    -webkit-animation-delay: 300ms;
    animation-delay: 300ms;
  }
  .animated.delay-400ms {
    -webkit-animation-delay: 400ms;
    animation-delay: 400ms;
  }
  .animated.delay-500ms {
    -webkit-animation-delay: 500ms;
    animation-delay: 500ms;
  }
  .animated.delay-600ms {
    -webkit-animation-delay: 600ms;
    animation-delay: 600ms;
  }
  .animated.delay-700ms {
    -webkit-animation-delay: 700ms;
    animation-delay: 700ms;
  }
  .animated.delay-800ms {
    -webkit-animation-delay: 800ms;
    animation-delay: 800ms;
  }
  .animated.delay-900ms {
    -webkit-animation-delay: 900ms;
    animation-delay: 900ms;
  }
  .animated.delay-1000ms {
    -webkit-animation-delay: 1000ms;
    animation-delay: 1000ms;
  }
  .animated.delay-1100ms {
    -webkit-animation-delay: 1100ms;
    animation-delay: 1100ms;
  }
  .animated.delay-1200ms {
    -webkit-animation-delay: 1200ms;
    animation-delay: 1200ms;
  }
  .animated.delay-1300ms {
    -webkit-animation-delay: 1300ms;
    animation-delay: 1300ms;
  }
  .animated.delay-1400ms {
    -webkit-animation-delay: 1400ms;
    animation-delay: 1400ms;
  }
  .animated.delay-1500ms {
    -webkit-animation-delay: 1500ms;
    animation-delay: 1500ms;
  }
  .animated.delay-1600ms {
    -webkit-animation-delay: 1600ms;
    animation-delay: 1600ms;
  }
  .animated.delay-1700ms {
    -webkit-animation-delay: 1700ms;
    animation-delay: 1700ms;
  }
  .animated.delay-1800ms {
    -webkit-animation-delay: 1800ms;
    animation-delay: 1800ms;
  }
  .animated.delay-1900ms {
    -webkit-animation-delay: 1900ms;
    animation-delay: 1900ms;
  }
  .animated.delay-2000ms {
    -webkit-animation-delay: 2000ms;
    animation-delay: 2000ms;
  }

/* MAINBODY MARGIN FILL WIDTH */
  .leftMainBodyMargin,
  .rightMainBodyMargin{
    position: absolute;  
    top: 0;
    height: 100%;
  }
  .rightMainBodyMargin{
    left: 100%;
  }
  .leftMainBodyMargin{
    right: 100%;
  }
/* END MAINBODY MARGIN FILL WIDTH */

.mainBodyMargins{
  flex-basis: 0;
  flex: 1 1 0px
}

.object-fit-cover{
  object-fit: cover;
}

.cursor-pointer{
  cursor: pointer;
}

.border-radius-round{
  border-radius: 50%;
}

.flex-center{
  display: flex;
  justify-content: center;
  align-items: center;
}


.hvr-grow-less{
  transition: all 0.2s ease-in-out;
}
.hvr-grow-less:hover{
  transform: scale(1.01);
}

.pointer-events-none{
  pointer-events: none;
}

.pointer-events-all,
.pointer-events-auto{
  pointer-events: auto;
}

/* ------------------------------------------------------------------------------------ */
/* -------------------------------------CUSTOM CSS------------------------------------- */
/* ------------------------------------------------------------------------------------ */


/* styled form */
.styledForm br{
  display: none !important;
}

.styledForm input[type="text"],
.styledForm input[type="mail"],
.styledForm input[type="password"],
.styledForm input[type="email"],
.styledForm input[type="date"],
.styledForm input[type="submit"],
.styledForm input[type="reset"],
.styledForm input[type="number"],
.styledForm .adress_text_box,
.styledForm .styledFormDiv,
.styledForm select,
.styledForm textarea{
  border-radius: 25px;
  background-color: white;
  border-width: 0px;
  color: var(--darkgrey);
  padding: 12px 25px;
}
.styledForm select{
  color: var(--grey) !important;
}

.styledForm input[type="submit"],
.styledForm input[type="reset"]{
  border-radius: 50px;
  border: solid 1px var(--colorfirst);
}

.styledForm input[type="submit"]{
  background-color: var(--colorfirst) !important;
  color: var(--white) !important;
}
.styledForm input[type="reset"]{
  background-color: transparent !important;
  color: var(--colorfirst) !important;
}
/* END styled form */

/* styled GREY form */
.styledForm.greyInputs input[type="text"],
.styledForm.greyInputs input[type="password"],
.styledForm.greyInputs input[type="mail"],
.styledForm.greyInputs input[type="email"],
.styledForm.greyInputs input[type="date"],
.styledForm.greyInputs select,
.styledForm.greyInputs input[type="submit"],
.styledForm.greyInputs input[type="reset"],
.styledForm input[type="number"],
.styledForm.greyInputs .adress_text_box,
.styledForm .styledFormDiv,
.styledForm.greyInputs textarea{
  background-color: var(--verylightgrey);
}

.styledForm.greyInputs input[type="text"]:disabled,
.styledForm.greyInputs input[type="password"]:disabled,
.styledForm.greyInputs input[type="mail"]:disabled,
.styledForm.greyInputs input[type="email"]:disabled,
.styledForm.greyInputs input[type="date"]:disabled,
.styledForm.greyInputs select:disabled,
.styledForm.greyInputs input[type="submit"]:disabled,
.styledForm.greyInputs input[type="reset"]:disabled,
.styledForm.greyInputs textarea:disabled,

.styledForm.greyInputs input[type="text"]:read-only,
.styledForm.greyInputs input[type="password"]:read-only,
.styledForm.greyInputs input[type="mail"]:read-only,
.styledForm.greyInputs input[type="email"]:read-only,
.styledForm.greyInputs input[type="date"]:read-only,
.styledForm.greyInputs textarea:read-only{
  background-color: var(--darkgrey) !important;
  color: white !important;
}

/* END styled GREY form */


.collapseCircleArrowCont{
    position: absolute;
    right: 30px;
    top: 50%;
    transform: translateY(-50%);

    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 30px;
    height: 30px;
    transform-origin: center center;

    transition: all 0.3s ease-in-out;
}

.cardShadow{
    -webkit-box-shadow: 0px 0px 18px -1px rgba(120,120,120,0.48); 
    box-shadow: 0px 0px 18px -1px rgba(120,120,120,0.48);
}


/* fileListingItem */
    .fileListingItemPdfBar{
        border-top-right-radius: 80px;
    }
    .fileListingItemPdfBar{
        transition: all 0.2s ease-in-out;
        background-color: var(--colorsecond);
    }
    .fileListingItem:hover .fileListingItemPdfBar{
        background-color: var(--colorfirst);
    }
    .fileListingItemImg{
        border-bottom-left-radius: 80px;
    }

    .fileListingItemArrowCont{
      color: var(--colorsecond);
      transition: all 0.3s ease-in-out;
    }
    .fileListingItem:hover .fileListingItemArrowCont{
      color: var(--colorfirst);
    }
    
/* END fileListingItem */


.playBtnCircle{
  position: absolute;
  background-color: white;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 70px;
  width: 70px;
  border-radius: 50%;
} 

/* VIMEO VIDEO */
  .embed-container{
      position: relative;
      padding-bottom: 56.25%; /* 16/9 */
      overflow: hidden;
  }
  .embed-container iframe,
  .embed-container object,
  .embed-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
/* END VIMEO VIDEO */

/* video player overlay */
  .vidPlayerOverlayCont{
    position: fixed;
    top: 0;
    left: 0;
    height: 100vh;
    width: 100vw;
    background-color: rgba(0,0,0,0.5);
    z-index: 50;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .vidPlayerOverlayVidCont{
    width: 70%;
  }

  .vidPlayerOverlayCloseBtn{
    position: absolute;
    top: 3%;
    right: 3%;
    cursor: pointer;
  }

  .entrevistaPlayVideoBtn{
    cursor: pointer;
  }

/* END video player overlay */


.overflow-hidden{
  overflow: hidden;
}

.homeNewsRow{
  border-top-left-radius: 80px;
  background-color: white;
  position: relative;
}
.homeNewsRow, .homeNewsRowFill{
  -webkit-box-shadow: 0px 2px 30px 5px rgb(0 0 0 / 27%);
  box-shadow: 0px 2px 30px 5px rgb(0 0 0 / 27%);
}