body {
  font-family: 'Open Sans', sans-serif;
}

h1,h2,
h3,h4,
h5,h6 {  font-weight: 700;  font-family: 'Open Sans', sans-serif;}

hr.star-light,
hr.star-dark {  max-width: 15rem;  padding: 0;  text-align: center;  border: none;  border-top: solid 0.25rem;  margin-top: 2.5rem;  margin-bottom: 2.5rem;  margin-left: auto;  margin-right: auto;}

hr.star-light:after,
hr.star-dark:after {  position: relative;  top: -.8em;  display: inline-block;  padding: 0 0.25em;  content: '\f005'; font-family: FontAwesome;  font-size: 2em;}
hr.star-light { border-color: #fff;}
hr.star-light:after { color: #fff;  background-color: #0b384b;}
hr.star-dark {  border-color: #2C3E50;}
hr.star-dark:after { color: #2C3E50;  background-color: white;}

/* Navigation */
#mainNav {background:#fff !important; margin-top: 3rem; }
.navbar-nav li {padding:10px;}
.navbar-nav { box-sizing:border-box !important; }
.navbar-nav li a {color:#333; opacity:0.7;}
.navbar-nav li a:hover {opacity:1; text-decoration:none; }
.submenu {display:none;}

/* submenu */
.navbar-nav .link .submenu,
.navbar-nav .current .submenu,
.navbar-nav .section .submenu {display:none; z-index:0; }
.navbar-nav .link:hover .submenu,
.navbar-nav .current:hover .submenu,
.navbar-nav .section:hover .submenu  {	display: block; z-index:999; }
.navbar-nav .submenu { width: 200px; position: absolute; background: #0b384b; padding:10px; font-size: 90%; text-align: left;
    list-style: none; margin-top:10px; text-transform:none; }
.navbar-nav .sub-menu-list { padding:10px 0; }
.navbar-nav .sub-menu-list a {padding:10px 0; border:none; text-transform:none; color:#fffffa; }
.navbar-nav .sub-menu-list a:hover { background:transparent; color:#fff; padding:10px 0; }

@media only screen and (max-width:992px) {
	.fa-navicon {color:#fff !important; padding:2px; }
	.Navnavbar {position:fixed; top:0; left:0; right:0; width:100%; z-index:999;}
	.Navnavbar .container {padding:10px 0; }
	.navbar-nav li {margin:0; text-align:left; }
	.navbar-nav a {padding:10px 0; width:100%; border:none; box-sizing:border-box; }
	.navbar-toggler {padding:0.2em; }
	.navbar-nav .submenu { width: 100%; position: relative; text-align:center;margin-top:0px; }
	.navbar-light .navbar-toggler {border-color:#ccc;}
	.navbar-nav a:hover {background:transparent; color:#ccc;}
}

/* Slideshow */
.main-slideshow {height:700px; width:100%;}
.main-slideshow .carousel-inner {height:700px; width:100%;}
.main-slideshow .carousel-inner img {height:700px; width:100%; object-fit:cover;}

/* Header */
.booking-header {position:absolute; top:400px; left:0; right:0; background:transparent; }

section { padding: 6rem 0;}
section h2 { font-size: 2.25rem; line-height: 2rem;}

@media (min-width: 992px) {  
	section h2 {  font-size: 3rem;  line-height: 2.5rem; }
}

.btn-xl { padding: 1rem 1.75rem; font-size: 1.25rem;}
.btn-social { width: 3.25rem; height: 3.25rem; font-size: 1.25rem; line-height: 2rem;}
.scroll-to-top {  z-index: 1042; right: 1rem;  bottom: 1rem;  display: none;}
.scroll-to-top a {width: 3.5rem;  height: 3.5rem; background-color: rgba(33, 37, 41, 0.5); line-height: 3.1rem;}

/* navigation */
#mainNav {  padding-top: 1rem; padding-bottom: 1rem; font-weight: 700; font-family: 'Open Sans', sans-serif;}
#mainNav .navbar-brand { color: #333;}
#mainNav .navbar-nav {  margin-top: 1rem; letter-spacing: 0.0625rem;}
#mainNav .navbar-nav li.nav-item a.nav-link { color: #fff;}
#mainNav .navbar-nav li.nav-item a.nav-link:hover { color: #0b384b;}
#mainNav .navbar-nav li.nav-item a.nav-link:active, #mainNav .navbar-nav li.nav-item a.nav-link:focus {  color: #fff;}
#mainNav .navbar-nav li.nav-item a.nav-link.active {  color: #0b384b;}
#mainNav .navbar-toggler { padding: 0.8rem;}

@media (min-width: 992px) {
  #mainNav {
    padding-top: 1.5rem;
    box-shadow:0 1px 10px rgba(0,0,0,0.1);
    padding-bottom: 1.5rem;
    -webkit-transition: padding-top 0.3s, padding-bottom 0.3s;
    -moz-transition: padding-top 0.3s, padding-bottom 0.3s;
    transition: padding-top 0.3s, padding-bottom 0.3s;
  }
  #mainNav .navbar-brand {
    font-size: 2em;
    -webkit-transition: font-size 0.3s;
    -moz-transition: font-size 0.3s;
    transition: font-size 0.3s;
  }
  #mainNav .navbar-nav {  margin-top: 0; }
  #mainNav .navbar-nav > li.nav-item > a.nav-link.active {color: #fff;  background: #0b384b;}
  #mainNav .navbar-nav > li.nav-item > a.nav-link.active:active, #mainNav .navbar-nav > li.nav-item > a.nav-link.active:focus, #mainNav .navbar-nav > li.nav-item > a.nav-link.active:hover {
  color: #fff;   background: #0b384b;  }
  #mainNav.navbar-shrink {  padding-top: 0.5rem;  padding-bottom: 0.5rem; }
  #mainNav.navbar-shrink .navbar-brand {  font-size: 1.5em; }
}

/* booking bar */
.booking-bar { position: absolute; top: 692px; left:0; right:0; margin:0 auto; background:rgba(255,255,255,0.7); padding:2rem; box-shadow:0 0px 5px rgba(0,0,0,.3); }
.booking-bar2 { position: absolute; top: 392px; left:0; right:0; margin:0 auto; background:rgba(255,255,255,0.7); padding:2rem; box-shadow:0 0px 5px rgba(0,0,0,.3); }

/* header */
header.masthead { padding-top: 72px; padding-bottom: 0;}
header.masthead h1 {  font-size: 3rem;  line-height: 3rem;}
header.masthead h2 { font-size: 1.3rem; font-family: 'Open Sans', sans-serif;}

.main-slideshow {}
.main-slideshow .caption {display:none;}
.main-banner img {width:100%; height:400px; object-fit:cover; }

/* home page */
.page-title { left:170px; top:170px; box-shadow:1px 1px 1px #ccc; min-height:160px; }
.tab-title {width:100%; box-sizing:border-box; background:rgba(0,0,0,0.8) !important; position:relative; bottom:25px; padding:10px; margin-top:-60px; }
.tab-title h4 { color:#fff; }
.tab-box {
  position: relative;
  display: block;
  max-width: 650px;
  margin: 0 auto;
  margin-bottom:20px;
}

.tab-box .tab-box-caption {
  position: absolute;
  bottom: 0;
  display: block;
  width: 100%;
  height: 100%;
  text-align: center;
  opacity: 0;
  color: #fff;
  background: rgba(0, 0, 0, 0.8);
  -webkit-transition: all 0.2s;
  -moz-transition: all 0.2s;
  transition: all 0.2s;
}

.tab-box .tab-box-caption .tab-box-caption-content {
  position: absolute;
  top:50%;
  padding:20px;
  width: 100%;
  transform: translateY(-50%);
  text-align: center;
}

.tab-box .tab-box-caption .tab-box-caption-content .project-category,
.tab-box .tab-box-caption .tab-box-caption-content .project-name {
  padding: 0 15px;
}

.tab-box .tab-box-caption .tab-box-caption-content .project-category {
  font-size: 14px;
  font-weight: 600;
  text-transform: uppercase;
}

.tab-box .tab-box-caption .tab-box-caption-content .project-name {
  font-size: 18px;
}

.tab-box:hover .tab-box-caption {
  opacity: 1;
}

.tab-box:focus {
  outline: none;
}

@media (min-width: 992px) {
  header.masthead {  padding-top: 106px; padding-bottom: 0;  }
    
}

#Form_Form label {display:none;}
#Form_Form input, #Form_Form textarea {margin:5px 0;}

/* images */
.tab-img {height:250px; width:100%; object-fit:cover;}
.template-slideshow img {height:450px; width:100%; object-fit:cover;  }
.template-slideshow  .carousel-inner { box-shadow:0 5px 10px rgba(0,0,0,0.3); }
.home-img { height: 100%; width: 100%; max-height: 300px; object-fit:cover; }

.map {padding:0; box-shadow:0 1px 1px rgba(0,0,0,0.5); height:500px;}
#reviews-cycle {padding: 20px; font-size: 120%; width: 100%; background:#fff;}

.tab {  margin-bottom: -15px;}
.tab .tab-item {  position: relative; display: block;  margin-bottom: 15px;}
.tab .tab-item .tab-item-caption {
  -webkit-transition: all ease 0.5s;
  -moz-transition: all ease 0.5s;
  transition: all ease 0.5s;
  opacity: 0;
  background-color: rgba(0, 0, 0, 0.8);
}
.tab .tab-item .tab-item-caption:hover { opacity: 1;}
.tab .tab-item .tab-item-caption .tab-item-caption-content {  font-size: 1.5rem;}
.tab .tab-title {width:100%; padding:15px; background:#555; float:left; width:100%; }
.tab .tab-item {float:left;}

@media (min-width: 576px) {
  .tab {margin-bottom: -30px; } 
  .tab .tab-item {  margin-bottom: 30px; }
}

.portfolio-modal .portfolio-modal-dialog {
  padding: 3rem 1rem;
  min-height: calc(100vh - 2rem);
  margin: 1rem calc(1rem - 8px);
  position: relative;
  z-index: 2;
  -moz-box-shadow: 0 0 3rem 1rem rgba(0, 0, 0, 0.5);
  -webkit-box-shadow: 0 0 3rem 1rem rgba(0, 0, 0, 0.5);
  box-shadow: 0 0 3rem 1rem rgba(0, 0, 0, 0.5);
}
.portfolio-modal .portfolio-modal-dialog .close-button { position: absolute; top: 2rem; right: 2rem;}
.portfolio-modal .portfolio-modal-dialog .close-button i { line-height: 38px;}
.portfolio-modal .portfolio-modal-dialog h2 { font-size: 2rem;}

@media (min-width: 768px) {
  .portfolio-modal .portfolio-modal-dialog { min-height: 100vh;  padding: 5rem; margin: 3rem calc(3rem - 8px); }
  .portfolio-modal .portfolio-modal-dialog h2 { font-size: 3rem; }
}

.floating-label-form-group {  position: relative; border-bottom: 1px solid #e9ecef;}
.floating-label-form-group input,
.floating-label-form-group textarea {
  font-size: 1.5em;
  position: relative;
  z-index: 1;
  padding-right: 0;
  padding-left: 0;
  resize: none;
  border: none;
  border-radius: 0;
  background: none;
  box-shadow: none !important;
}
.floating-label-form-group label {
  font-size: 0.85em;
  line-height: 1.764705882em;
  position: relative;
  z-index: 0;
  top: 2em;
  display: block;
  margin: 0;
  -webkit-transition: top 0.3s ease, opacity 0.3s ease;
  -moz-transition: top 0.3s ease, opacity 0.3s ease;
  -ms-transition: top 0.3s ease, opacity 0.3s ease;
   transition: top 0.3s ease, opacity 0.3s ease; vertical-align: middle; vertical-align: baseline; opacity: 0;}
.floating-label-form-group:not(:first-child) { padding-left: 14px; border-left: 1px solid #e9ecef;}
.floating-label-form-group-with-value label { top: 0; opacity: 1;}
.floating-label-form-group-with-focus label {  color: #0b384b;}

/* social */
.social-networks {display:inline-flex;}
.social-networks li {padding:5px; font-size:24px; }

/* form */
.footer-nav {display:inline-flex;}
.footer-nav li {padding:10px; list-style:none; }
form .row:first-child .floating-label-form-group { border-top: 1px solid #e9ecef;}
.footer {  padding-top: 5rem;  padding-bottom: 5rem;  color: #333;}
.social-networks li {list-style:none; font-size:26px; }
.copyright { background-color: #1a252f;}
a { color: #0b384b;}
a:focus, a:hover, a:active { color: #128f76;}
.btn { border-width: 2px;}
/* background */
.bg-primary { background-color: #0b384b !important;}
.bg-secondary { background-color: #2C3E50 !important;}
.text-primary { color: #0b384b !important;}
.text-secondary {color: #2C3E50 !important;}
.bg-light2 {background:#cbd5d9 !important; }

.shadow { box-shadow:0 5px 10px rgba(0,0,0,0.3); }

/* btn */
.btn-primary { background-color: #0b384b; border-color: #0b384b;}
.btn-primary:hover, .btn-primary:focus, .btn-primary:active { background-color: #fff; border-color: #0b384b; color: #0b384b !important; }
.btn-secondary {background-color: #2C3E50; border-color: #2C3E50;}
.btn-secondary:hover, .btn-secondary:focus, .btn-secondary:active { background-color: #1a252f;border-color: #1a252f;}

/* contact form */
.cntact-map { box-shadow:0 1px 10px rgba(0,0,0,0.5);}
.contact {}
section#contact .section-heading {  color: #555;}
section#contact .form-group { margin-bottom: 25px;}
section#contact .form-group input,
section#contact .form-group textarea { padding: 10px; width:100%; box-sizing:border-box;}
#Form_Form_Name_Holder,
#Form_Form_Email_Holder,
#Form_Form_Message_Holder {width:100%;  float:left; border-color: rgb(169, 169, 169); }
section#contact .form-group input.form-control { height: auto;}
section#contact .form-group textarea.form-control {height: 248px;}
#Form_Form_action_submit { border-radius:0 !important; color:#fff !important; background: #015368; padding:10px 20px; margin:10px 0; float:left; }

/* Login form */
#MemberLoginForm_LoginForm { background-color: #fff; padding: 20px; text-align: left; width: 300px; margin: 20px auto; border:1px solid #ccc; }
#MemberLoginForm_LoginForm input { width: 100%; padding: 5px; box-sizing: border-box; border:1px solid #ccc; }
#MemberLoginForm_LoginForm .checkbox {width:auto; }
#LostPasswordForm_lostPasswordForm_Email{ padding: 5px; border:1px solid #ccc; margin-bottom:5px; box-sizing:border-box; width:40%; }
#LostPasswordForm_lostPasswordForm_action_forgotPassword{ padding:10px; box-sizing:border-box; width:40%;}

@media (max-width:992px){
	/* header */
	.booking-bar { top: 285px; }
  .booking-bar2 { top: 335px;}
  	
	.footer-logo {width:80%;}
	.main-slideshow,
  .main-slideshow .carousel-inner,
  .main-slideshow .carousel-inner img {height:350px;}
  .booking-header {top:150px;}
  .booking-header h1 {font-size:1.5rem !important;}
  #mainNav {margin-top: 0;}
  /* pages */
  .page-title { left:0; top:250px; box-shadow:none; min-height:100px; float:left; position:static !important; }
}