/* FONT */
@import url('https://fonts.googleapis.com/css?family=Montserrat:400,700');

@import url('https://fonts.googleapis.com/css?family=Courgette');

@import url('https://fonts.googleapis.com/css?family=Poppins:300,400,500,700');

@import url('https://fonts.googleapis.com/css?family=Noto+Sans');

@font-face {
  font-family: Montserrat-Regular;
  src: url('../fonts/montserrat/Montserrat-Regular.ttf'); 
}

@font-face {
  font-family: Montserrat-Bold;
  src: url('../fonts/montserrat/Montserrat-Bold.ttf'); 
}

@font-face {
  font-family: Courgette-Regular;
  src: url('../fonts/courgette/Courgette-Regular.ttf'); 
}

@font-face {
  font-family: Poppins-Regular;
  src: url('../fonts/poppins/Poppins-Regular.ttf'); 
}

@font-face {
  font-family: Poppins-Medium;
  src: url('../fonts/poppins/Poppins-Medium.ttf'); 
}

@font-face {
  font-family: Poppins-Bold;
  src: url('../fonts/poppins/Poppins-Bold.ttf'); 
}

@font-face {
  font-family: Poppins-Light;
  src: url('../fonts/poppins/Poppins-Light.ttf'); 
}

@font-face {
  font-family: NotoSans-Regular;
  src: url('../fonts/notosans/NotoSans-Regular.ttf'); 
}

/* SCROLLBARS */
    /* Let's get this party started */
::-webkit-scrollbar {
    width:5px;
}
 
    /* Track */
::-webkit-scrollbar-track {
    -webkit-box-shadow:inset 0 0 6px rgba(0,0,0,0.1); 
    -webkit-border-radius:10px;
    border-radius:10px;
}
 
    /* Handle */
::-webkit-scrollbar-thumb {
    -webkit-border-radius:10px;
    border-radius:10px;
    background:rgba(200,200,200,0.5); 
    -webkit-box-shadow:inset 0 0 6px rgba(250,250,250,0.8); 
}
::-webkit-scrollbar-thumb:window-inactive {
	background:rgba(250,250,250,0.8); 
}

/* RESTYLE TAG */
* {
	margin: 0px; 
	padding: 0px; 
	box-sizing: border-box;
}

body, html {
	height: 100%;
	font-family: Montserrat, sans-serif;
  font-weight: 400;
}

body.modal-open {
    overflow: visible;
}

/* ------------------------------------ */
a {
	font-family: Montserrat;
  font-weight: 400;
	font-size: 15px;
	line-height: 1.7;
	color: #666666;
	margin: 0px;
	transition: all 0.4s;
	-webkit-transition: all 0.4s;
  -o-transition: all 0.4s;
  -moz-transition: all 0.4s;
}

a:focus {
	outline: none !important;
}

a:hover {
	text-decoration: none;
	color: #38a3ab;
}

/* ------------------------------------ */
h1,h2,h3,h4,h5,h6 {
	margin: 0px;
}

p {
	font-family: Montserrat;
  font-weight: 400;
	font-size: 15px;
	line-height: 1.7;
	color: #666666;
	margin: 0px;
}

ul, li {
	margin: 0px;
	list-style-type: none;
}


/* ------------------------------------ */
input {
	outline: none;
	border: none !important;
}

textarea {
  outline: none;
}

textarea:focus, input:focus {
  border-color: transparent !important;
  box-shadow: 0 0 0px 2px #38a3ab;
  -moz-box-shadow: 0 0 0px 2px #38a3ab;
  -webkit-box-shadow: 0 0 0px 2px #38a3ab;
  -o-box-shadow: 0 0 0px 2px #38a3ab;
  -ms-box-shadow: 0 0 0px 2px #38a3ab;
}

input:focus::-webkit-input-placeholder { color:transparent; }
input:focus:-moz-placeholder { color:transparent; }
input:focus::-moz-placeholder { color:transparent; }
input:focus:-ms-input-placeholder { color:transparent; }

textarea:focus::-webkit-input-placeholder { color:transparent; }
textarea:focus:-moz-placeholder { color:transparent; }
textarea:focus::-moz-placeholder { color:transparent; }
textarea:focus:-ms-input-placeholder { color:transparent; }

input::-webkit-input-placeholder { color: #aaaaaa; }
input:-moz-placeholder { color: #aaaaaa; }
input::-moz-placeholder { color: #aaaaaa; }
input:-ms-input-placeholder { color: #aaaaaa; }

textarea::-webkit-input-placeholder { color: #aaaaaa; }
textarea:-moz-placeholder { color: #aaaaaa; }
textarea::-moz-placeholder { color: #aaaaaa; }
textarea:-ms-input-placeholder { color: #aaaaaa; }

/* ------------------------------------ */
button {
	outline: none !important;
	border: none;
	background: transparent;
}

button:hover {
	cursor: pointer;
}

iframe {
	border: none !important;
}

.hidden {
	display:none;
}
.sticky {
	color:#38a3ab !important;
}

.clearfix:before, .clearfix:after { content:"\0020"; display:block; height:0; visibility:hidden; }
.clearfix:after { clear:both; }
/* Fix clearfix:blueprintcss.lighthouseapp.com/projects/15318/tickets/5-extra-margin-padding-bottom-of-page */
.clearfix { zoom:1; }

/* ------------------------------------ */
.container {
	max-width: 1200px;
}

.slick-slide {
  outline: none !important;
}

/* LOADDING */
.animsition-loading-1 {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.cp-spinner {
    width: 40px;
    height: 40px;
    display: inline-block;
    box-sizing: border-box;
    position: relative
}

.cp-meter {
    border-radius: 50%;
    border-top: solid 6px #38a3ab;
    border-right: solid 6px #38a3ab;
    border-bottom: solid 6px #38a3ab;
    border-left: solid 6px #38a3ab;
    width: 48px;
    height: 48px;
    display: inline-block;
    box-sizing: border-box
}

.cp-meter:before {
    border-radius: 3px;
    content: " ";
    width: 6px;
    height: 12px;
    display: inline-block;
    box-sizing: border-box;
    background-color: #38a3ab;
    position: absolute;
    top: 5px;
    left: 16px;
    transform-origin: center bottom;
    animation: cp-meter-animate-before 1s linear infinite
}

@keyframes cp-meter-animate-before {
    0% {
        transform: rotate(-45deg)
    }

    100% {
        transform: rotate(315deg)
    }
}

/* BACK TO TOP */
.btn-back-to-top {
  display: none;
  position: fixed;
  width: 40px;
  height: 40px;
  bottom: 40px;
  right: 40px;
  background-color: black;
  opacity: 0.5;
  justify-content: center;
  align-items: center;
  z-index: 1000;
  border-radius: 4px;
  transition: all 0.4s;
  -webkit-transition: all 0.4s;
  -o-transition: all 0.4s;
  -moz-transition: all 0.4s;
}

.symbol-btn-back-to-top {
  font-size: 22px;
  color: white;
  line-height: 1em;
}

.btn-back-to-top:hover {
  opacity: 1;
  cursor: pointer;
}

@media (max-width: 576px) {
  .btn-back-to-top {
    bottom: 15px;
    right: 15px;
  }
}


/* Table */
td.active {
  background-color: #38a3ab !important;
}

input[type="date" i] {
  padding: 14px;
}

.table-condensed td, .table-condensed th {
  font-size: 14px;
  font-family: Montserrat;
  font-weight: 400;
}


/* Header */
.wrap-menu-header {
  position: absolute;
  width: 100%;
  height: 80px;
  top: 0;
  left: 0;
  z-index: 100;
  border-top: 5px solid #38a3ab;
}

.wrap_header {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  height: 100%;
  background-color: transparent;
  justify-content: space-between;
  align-items: center;
}

.header-fixed .wrap-menu-header {
  position: fixed;
  height: 80px;
  background: rgba(255,255,255,0.9);
  box-shadow: 0px 2px 5px rgba(0,0,0,0.1);
}

/* Logo */
.logo {
  height: 50px;
}

.logo > a{
  display: block;
  height: 100%;
}

.logo > a > img {
  width: auto;
  max-height: 100%;
  vertical-align: middle;
}

/* Language */
.language_selection {
	width:20px;
	height:20px;
	float:left;
	margin:0 8px 0 0;
	padding:0;
	cursor:pointer;
}
.language_selection.en {
	background:url("../img/icon/en.png") no-repeat center;
}
.language_selection.pt {
	background:url("../img/icon/pt.png") no-repeat center;
}
.language_selection span {
	position:absolute;
	width:140px;
	line-height:20px;
	margin-top:20px;
	margin-left:-60px;
	text-align:center;
	font-size:10px;
	color:#fff;
	font-weight:600;
	display:none;
}
.language_selection:hover span {
	display:block;
}
.header-fixed .language_selection span {
	color:#333;
	font-weight:400;
}

/* Menu */
.wrap_menu {
  height: 100%;
}

.menu {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}

.main_menu {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: center;
}

.main_menu li {
  display: block;
  position: relative;
}

.main_menu > li {
  padding-top: 10px;  
  padding-bottom: 10px; 
  margin-left: 10px;
  margin-right: 10px;
}

.main_menu > li > a {
  font-family: Montserrat;
  font-weight: 600;
  font-size: 14px;
  text-transform: uppercase;
  color: white;
  padding: 15px;
}

.header-fixed .main_menu > li > a {
  color: #555;
  font-weight: 400;
}

.main_menu > li:hover > a {
  color: #38a3ab;
  text-decoration: none;
}

/* Hamburger */
.hamburger a {
  font-size: 15px;
  color: white;
}

.header-fixed .hamburger a {
  color: #222222;
}

.hamburger a:hover {
  color: #38a3ab;
}

.btn-show-sidebar {
  width: 26px;
  height: 15px;
  border-top: 2px solid white;
  border-bottom: 2px solid white;
}

.header-fixed .btn-show-sidebar {
  border-top: 2px solid #222222;
  border-bottom: 2px solid #222222;
}

.btn-show-sidebar:hover {
  border-top: 2px solid #38a3ab;
  border-bottom: 2px solid #38a3ab;
}

@media (max-width: 1200px) {
  .main_menu > li {
    margin-left: 4px;
    margin-right: 4px;
  }

  .hamburger {padding-right: 0px;}

  .logo {
    height: 45px;
  }
}

@media (max-width: 992px) {
  .wrap_menu {
    display: none;
  }

  .wrap_header {
    height: 80px;
  }
  
  .wrap-menu-header {
    position: fixed;
    height: 80px;
  }
  /*.language_selection {
	width:168px;
	margin:0;
	padding-left:20px;
	background-position:left !important;
  }
  .language_selection span {
	position:relative;
	margin:0;
	text-align:left;
	display:block;
  }*/
}


/* Sidebar */
.sidebar {
  position: fixed;
  z-index: 1200;
  width: 390px;
  height: 100%;
  overflow: auto;
  background-color: white;
  top: 0;
  right: -390px;
}

@media (max-width: 576px) {
  .sidebar {width: 300px;}
}

.show-sidebar {
  right: 0px;
}

.btn-hide-sidebar {
  position: absolute;
  font-size: 20px;
  color: #111111;
  padding: 10px;
  top: 20px;
  right: 20px;
}

.overlay-sidebar {
  position: fixed;
  z-index: 1150;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  visibility: hidden;
}

.show-overlay-sidebar {
  visibility: visible;
  background-color: rgba(0,0,0,0.65);
}

@media (max-width: 576px) {
  .wrap_header {
    height: 80px;
  }
}



/* Slide: Slick1 */
.wrap-slick1,
.wrap-slick2,
.wrap-slick3 {
  position: relative;
}

.item-slick1,
.item-slick2,
.item-slick3 {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}
.item-slick1 {
  height: 100vh;
}

.arrow-slick1, .arrow-slick2, .arrow-slick3 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 60px;
  height: 60px;
  font-size: 18px;
  color: white;
  position: absolute;
  background-color: black;
  opacity: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  border-radius: 50%;
  z-index: 200;
  -webkit-transition: all 0.4s;
  -o-transition: all 0.4s;
  -moz-transition: all 0.4s;
  transition: all 0.4s;
}

.wrap-slick1:hover .arrow-slick1,
.wrap-slick2:hover .arrow-slick2,
.wrap-slick3:hover .arrow-slick3 {
  opacity: 0.5;
}

.arrow-slick1:hover,
.arrow-slick2:hover,
.arrow-slick3:hover {
  background-color: #38a3ab;
}

.next-slick1,
.next-slick2,
.next-slick3 {
  right: 50px;
  left: auto;
}

.prev-slick1,
.prev-slick2,
.prev-slick3 {
  left: 50px;
  right: auto;
}

@media (max-width: 576px) {
  .next-slick1 {
    right: 15px;
  }

  .prev-slick1 {
    left: 15px;
  }
}

/* ------------------------------------ */
.wrap-slick1-dots {
  position: absolute;
  width: 100%;
  height: 65px;
  left: 0;
  bottom: 0;
}

.slick1-dots {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}

.slick1-dots li {
  padding-left: 3px;
  padding-right: 3px;
}

.slick1-dots li button {
  display: block;
  color: transparent;
  background-color: #958e88;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  border: 2px solid transparent;
  background-clip: padding-box;

  -webkit-transition: all 0.4s;
  -o-transition: all 0.4s;
  -moz-transition: all 0.4s;
  transition: all 0.4s;
}


.slick1-dots li button:hover {
    border: 3px solid white;
    background-color: #38a3ab;
}

.slick1-dots li.slick-active button {
    border: 3px solid white;
    background-color: #38a3ab;
} 

/* Slide: Caption */
@media (max-width: 768px) {
  .wrap-content-slide1 .tit1 {
    font-size: 70px;
  }

  .wrap-content-slide1 .txt1 {
    font-size: 60px;
  }
}

@media (max-width: 576px) {
  .wrap-content-slide1 .tit1 {
    font-size: 60px;
  }

  .wrap-content-slide1 .txt1 {
    font-size: 50px;
  }
}

@media (max-width: 380px) {
  .wrap-content-slide1 .tit1 {
    font-size: 40px;
  }

  .wrap-content-slide1 .txt1 {
    font-size: 30px;
  }
}

/* Slide: Slick2 */
.arrow-slick2 {
  top: 53%;
}


@media (max-width: 576px) {
  .next-slick2 {
    right: 15px;
  }

  .prev-slick2 {
    left: 15px;
  }
}

/* ------------------------------------ */
.wrap-slick2-dots {
  position: absolute;
  width: 100%;
  height: 128px;
  left: 0;
  bottom: 0;
}

.slick2-dots {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}

.slick2-dots li {
  padding-left: 5px;
  padding-right: 5px;
}

.slick2-dots li button {
  display: block;
  color: transparent;
  background-color: #cccccc;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  border: 1px solid transparent;
  background-clip: padding-box;
  -webkit-transition: all 0.4s;
  -o-transition: all 0.4s;
  -moz-transition: all 0.4s;
  transition: all 0.4s;
}


.slick2-dots li button:hover {
  border: 1px solid #38a3ab;
  background-color: #38a3ab;
}

.slick2-dots li.slick-active button {
  border: 1px solid #38a3ab;
  background-color: #38a3ab;
} 

/* Slide: Slick3 */


.arrow-slick3 {
  top: 40%;
}


@media (max-width: 576px) {
  .next-slick3 {
    right: 15px;
  }

  .prev-slick3 {
    left: 15px;
  }
}

/* ------------------------------------ */
.wrap-slick3-dots {
  width: 100%;
  height: 128px;
}

.slick3-dots {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}

.slick3-dots li {
  padding-left: 5px;
  padding-right: 5px;
}

.slick3-dots li button {
  display: block;
  color: transparent;
  background-color: #cccccc;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  border: 1px solid transparent;
  background-clip: padding-box;

  -webkit-transition: all 0.4s;
  -o-transition: all 0.4s;
  -moz-transition: all 0.4s;
  transition: all 0.4s;
}


.slick3-dots li button:hover {
  border: 1px solid #38a3ab;
  background-color: #38a3ab;
}

.slick3-dots li.slick-active button {
  border: 1px solid #38a3ab;
  background-color: #38a3ab;
} 

/* Button1 */
.btn1 {
  background: #43b2bb;/*38a3ab;*/
  border-radius: 10px;
  display:inline-block;
}

.btn1:hover {
  background-color: #38a3ab9c;
  color: white;
}

/* Button3 */
.btn3 {
  background: #111111;
  border-radius: 10px;
}

.btn3:hover {
  background-color: #38a3ab;
  color: white;
}


/* Button2 */
.btn2 {
  width:350px;
  background: #111111;
  border-radius: 10px;
  opacity:0.9;
}

.btn2:hover {
  background-color: #38a3ab;
  color: white;
}


/* Block2 */
.blo2 {
  border-radius: 10px;
  overflow: hidden;
}

.wrap-pic-blo2 {
  display: block;
  width: 50%;  
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

.wrap-text-blo2 {
  background-color: white;
  width: 50%;
  min-height: 390px;
}

/* ------------------------------------ */
.effect1 {
  background-color: #cf2227;
  opacity: 0.9;
  position: relative;
}
.effect1 .txt-effect1 {
  width: 390px;
  height: 50px;
  transform-origin: center center;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotateZ(90deg);
  -moz-transform: translate(-50%, -50%) rotateZ(90deg);
  -ms-transform: translate(-50%, -50%) rotateZ(90deg);
  -o-transform: translate(-50%, -50%) rotateZ(90deg);
  transform: translate(-50%, -50%) rotateZ(90deg);
}

@media (max-width: 992px) {
  .blo2 {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
  }

  .wrap-pic-blo2 {
    width: 100%;
    height: 390px;
  }

  .wrap-text-blo2 {
    width: 100%;
    min-height: 390px;
  }

  .time-event {
    width: 100%;
    height: auto;
  }

  .effect1 .txt-effect1 {
    width: 100%;
    height: 50px;
    padding: 10px;
    transform-origin: center center;
    position: unset;
    -webkit-transform: rotateZ(0deg);
    -moz-transform: rotateZ(0deg);
    -ms-transform: rotateZ(0deg);
    -o-transform: rotateZ(0deg);
    transform: rotateZ(0deg);
  }
}

@media (max-width: 576px) {
  .blo2 {
    width: 100%;
  }

  .wrap-pic-blo2 {
    width: 100%;
    height: 364px;
  }

}

/* Video */
.section-video {
  background-attachment: fixed;
  background-position: center 0;
  background-repeat: no-repeat;
  background-size: cover;
}

.content-video {
  background-color: rgba(0,0,0,0.5);
}

/* Modal */
body {padding-right: 0px !important;}
.modal {
  padding: 0px !important;
  z-index: 1160;
  overflow-x: hidden;
  overflow-y: auto !important;
}
.modal-open {overflow-y: scroll;}

/* ------------------------------------ */
.modal-backdrop {
  background-color: transparent;
}

/* Modal video 01 */
.modal-video {
  background-color: rgba(0,0,0,0.8);
  z-index: 1250;
  
}

.modal-video .modal-dialog {
  max-width: 100% !important;
  height: 100% !important;
  padding: 0;
  margin: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  position: relative;
}

.wrap-video-mo {
  width: 854px;
  height: auto;
  position: relative;
  margin: 15px;
}

.video-mo {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  opacity: 0;
  -webkit-transition: all 2s;
  -o-transition: all 2s;
  -moz-transition: all 2s;
  transition: all 2s;
}

.video-mo iframe {
  width: 100%;
  height: 100%;
}

.close-mo-video {
  font-size: 50px;
  opacity: 0.6;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  z-index: 1250;
  width: 60px;
  height: 60px;
  top: 0;
  right: 0;
}

.close-mo-video:hover {
  cursor: pointer;
  opacity: 1;
}

/* BG Title Page */
.bg-title-page {
  width: 100%;
  min-height: 545px;
  padding-left: 15px;
  padding-right: 15px;
  background-repeat: no-repeat;
  background-position: center 0;
  background-size: cover;
}

@media (max-width: 576px) {
  .bg-title-page .tit6 {font-size: 30px;}
}

/* Sections */
.section-intro .item-slick1 {
	background-image: url("../img/bg/section_intro.jpg");
}
.section-cms {
	background-image: url("../img/bg/section_cms.jpg");
    background-attachment: fixed;
    background-position: center 0;
    background-repeat: no-repeat;
    background-size: cover;
}
.section-video {
	background-image: url("../img/bg/section_video.jpeg");
}
.section-about .item-slick2 {
	background-image: url("../img/bg/section_about.jpg");
	background-color:rgba(255, 0, 0, 0.5);
}
.section-contact iframe {
	width:100%;
	height:100%;
}
.section-contact form textarea {
	border:0;
}

/* Projects Carousel */
.section-projects {
	margin-top:100px;
	margin-bottom:60px;
}
.section-projects h3 {
	color:black;
	opacity:0.8;
}
.section-projects .projects_carousel {
	max-width:100vw; 
	max-height:100vh; 
	width:100%;
	height:400px; 
	overflow:hidden;
}
.section-projects .projects_carousel img {
	width:500px;
	max-width:80vw; 
	box-shadow: 5px 10px 18px #888888;
	background-color:white;
	cursor:pointer;
	z-index:9;
}
.section-projects .projects_carousel_buttons {
	width:100%;
	height:400px;
	padding-top:100px;
	position:absolute;
}
.section-projects .projects_carousel_buttons a {
	z-index:9;
	position:absolute;
}
.section-projects .projects_carousel_buttons img {
	width:60px;
	height:200px;
	opacity:.5;
}
.section-projects .projects_carousel_buttons .next {
	right:0;
}

@media (max-width: 600px) {
	.section-projects .projects_carousel {
		height:300px;
	}
	.section-projects .projects_carousel img {
		width:300px;
	}
	.section-projects .projects_carousel_buttons {
		height:300px;
		margin-top:50px;
		padding-top:0;
	}
}

/* Project Photos */
#project_photos {
    background:rgba(0,0,0,.5);
}
#project_photos .modal-dialog {
    height:calc(100vh - 20px);
}
#project_photos .modal-dialog .modal-content {
    height:100%;
}

@media (min-width: 576px) {
    #project_photos .modal-dialog {
        height:calc(100vh - 60px);
    }
}

#project_photos .carousel ul {
	margin:0;
}
#project_photos .carousel .carousel-item img {
	width:100%;
}
#project_photos .carousel .carousel-inner {
	overflow: auto;
	max-height: 80vh;
	max-height: calc(100vh - 100px);
}
#project_photos .carousel .carousel-control-prev,
  #project_photos .carousel .carousel-control-next {
	background:rgba(200, 200, 200, .2);
}
#project_photos .carousel .carousel-control-prev:hover,
  #project_photos .carousel .carousel-control-prev:active,
  #project_photos .carousel .carousel-control-next:hover,
  #project_photos .carousel .carousel-control-next:active {
	background:rgba(0, 0, 0, .4);
}


/* Footer */
footer {
	overflow:hidden;
}
footer .contacts-and-map {
	/*text-align:center;*/
}
footer .contact-me {
	width:33%;
	min-width:280px;
	display:inline-block;
	text-align:left;
	vertical-align:top;
}
footer .contact-me .map {
	width:20px;
	height:20px;
	display:inline-block;
	vertical-align:bottom;
	background:url("../img/icon/maps.png") no-repeat center;
	cursor:pointer;
}
footer .site-map {
	width:180px;
	display:inline-block;
	text-align:left;
	vertical-align:top;
	float:right;
}
@media (max-width: 500px) {
	footer .contacts-and-map {
		text-align:center;
	}
	footer .site-map {
		width:33%;
		min-width:250px;
		float:none;
		display:block;
		margin:0 auto;
	}
}

/* Testimonial */
.section-testimonial .row img {
	max-width:250px;
}
.section-testimonial img.company-logo {
	max-width:100px;
	margin:0 1em;
}

/* Contact Popup */
#contact_popup .modal-title {
	padding-right:30px;
}
#contact_popup form textarea {
	border:0;
}

/* Map Popup */
#map_popup iframe {
	width:100%;
	height:500px;
	max-width:90vw;
	max-height:80vh;
}

/* Loading bar */
.loading {
    padding-left:25px;
    background:url('../img/icon/loading.gif') #111111 no-repeat 10px center;
}