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

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 500;
  font-family: 'Montserrat', sans-serif;
}

h3,h5 {color:#0b4a9b;}

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: #0b4a9b;
}

hr.star-dark {
  border-color: #2C3E50;
}

hr.star-dark:after {
  color: #2C3E50;
  background-color: white;
}

section {
  padding: 4rem 0;
}

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

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

@media (max-width: 992px) {
	section {
  padding: 3rem 0;
  } 
}

.btn {
	border-radius:0 !important;
	text-transform:none;
}

.btn-lg {
  padding: 0.75rem 1.25rem;
  font-size:1rem;
}

.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;
  background-color:#0b4a9b;
}
.btn-social:hover {
	background-color:#ffc948;
	color:#fff;
}

.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;
}

#mainNav {
  padding-top: 1rem;
  padding-bottom: 1rem;
  font-family: 'Montserrat', sans-serif;
}

#mainNav .navbar-brand {
  color: #fff;
}

#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: #0b4a9b;
}

#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: #0b4a9b;
}

@media (min-width: 992px) {
  #mainNav {
    padding-top: 1.5rem;
    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 > li.nav-item > a.nav-link.active {
    color: #fff;
    background: #0b4a9b;
  }
  #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: #0b4a9b;
  }
  #mainNav.navbar-shrink {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
  }
  #mainNav.navbar-shrink .navbar-brand {
    font-size: 1.5em;
  }
}

header.masthead {
  /* padding-top: calc(6rem + 72px);
  padding-bottom: 6rem; */
}

header.masthead h1 {
  font-size: 3rem;
  line-height: 3rem;
}

header.masthead h2 {
  font-size: 1.3rem;
  font-family: 'Montserrat', sans-serif;

}

@media (min-width: 992px) {
  header.masthead {
    /* padding-top: calc(6rem + 106px);
    padding-bottom: 6rem; */
  }
  header.masthead h1 {
    font-size: 4.75em;
    line-height: 4rem;
    text-shadow:0 10px 30px rgba(0,0,0,.3);
  }
  header.masthead h2 {
    font-size: 1.75em;
    text-shadow:0 10px 30px rgba(0,0,0,.3);
  }
}

.portfolio {
  margin-bottom: -15px;
}

.portfolio .portfolio-item {
  position: relative;
  display: block;
  max-width: 25rem;
  margin-bottom: 15px;
}

.portfolio .portfolio-item .portfolio-item-caption {
  -webkit-transition: all ease 0.5s;
  -moz-transition: all ease 0.5s;
  transition: all ease 0.5s;
  opacity: 0;
  background-color: rgba(24, 188, 156, 0.9);
}

.portfolio .portfolio-item .portfolio-item-caption:hover {
  opacity: 1;
}

.portfolio .portfolio-item .portfolio-item-caption .portfolio-item-caption-content {
  font-size: 1.5rem;
}

@media (min-width: 576px) {
  .portfolio {
    margin-bottom: -30px;
  }
  .portfolio .portfolio-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: #0b4a9b;
}

form .row:first-child .floating-label-form-group {
  border-top: 1px solid #e9ecef;
}

.footer {
  padding-top: 5rem;
  padding-bottom: 5rem;
  background-color: #0b4a9b;
  color: #fff;
}
.footer h3 {
	color:#fff;
}
.fa-inverse {
	color: #0b4a9b !important;
}
.footer-badges img{
	height:130px;
	max-width:150px; 
	object-fit:cover;
}
.copyright {
  background-color: #1a252f;
}

a {
  color: #0b4a9b;
}

a:focus, a:hover, a:active {
  color: #2a73a6;
}

.btn {
  border-width: 2px;
}

.bg-primary {
  background-color: #0b4a9b !important;
}

.bg-secondary {
  background-color: #2C3E50 !important;
}

.text-primary {
  color: #0b4a9b !important;
}

.text-secondary {
  color: #2C3E50 !important;
}

.btn-primary {
  background-color: #ffcf00;
  border-color: #ffcf00;
  color:#0b4a9b !Important;
}

.btn-primary:hover, .btn-primary:focus, .btn-primary:active {
  background-color: #fff;
  border-color: #0b4a9b;
  color:#0b4a9b;
}

.btn-secondary {
  background-color: #2C3E50;
  border-color: #2C3E50;
}

.btn-secondary:hover, .btn-secondary:focus, .btn-secondary:active {
  background-color: #1a252f;
  border-color: #1a252f;
}

.full-section {
	max-width:1400px;
}
.text-yellow{
	color:#ffc948 !important;
}

a.bg-primary:focus, a.bg-primary:hover, button.bg-primary:focus, button.bg-primary:hover {background-color:#0b4a9b !important;}


/* Navigation */
#mainNav {background:#0b4a9b !important; 
	-webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.08);
	-moz-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.08);
		box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.08)}
.navbar-nav li {padding:10px 2px;}
.navbar-nav { box-sizing:border-box !important; }
.navbar-nav li a {color:#fff;  font-size:95%; padding:0.5rem; text-transform:uppercase;  }
.navbar-nav li a:hover { color:#0b4a9b; background:#fff; 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; color: #0b4a9b; background:#fff; padding:10px; font-size: 90%; text-align: left;
    list-style: none; margin-top:10px; text-transform:uppercase; text-align:left; }
.navbar-nav .sub-menu-list { padding:10px 0; }
.navbar-nav .sub-menu-list a {padding:10px 0; border:none; text-transform:uppercase; color: #0b4a9b; }
.navbar-nav .sub-menu-list a:hover { }

@media only screen and (max-width:992px) {
	#mainNav .navbar-nav { margin-top: 0;}
	.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; border-bottom:1px solid #ccc;  }
	.navbar-nav .submenu li { border-bottom:none;}
	.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; padding:0; padding-left:10px; }
	.navbar-light .navbar-toggler {border-color:#ccc;}
	.navbar-nav a:hover {background:transparent; color:#ccc;}
	.book-online-btn { width:100%; border-radius:0; }
}

.logo { height:120px;}
.mobile-logo {height:40px; padding:1rem; box-sizing:content-box; background:#fff;}
.toolbar {position:absolute; left:0; text-align:right; right:30px; top:30px; text-transform:none; padding-left:0.5rem; 
	padding-bottom:10px; color:#555; font-weight:400; font-size:95%; }
.navbar-collapse {margin-top:3rem;}
.home-img {height:100%; width:100%; max-height:550px;}
.section-img {height:300px; width:100%; object-fit:cover; box-shadow:0 5px 10px rgba(0,0,0,.3); }
.gallery-img {height:250px; width:100%; object-fit:cover;}
.special-img { height:300px; width:100%; object-fit:cover; box-shadow:0 5px 10px rgba(0,0,0,.3); }
.event-img {height:250px; width:100%; object-fit:cover; box-shadow:0 5px 10px rgba(0,0,0,.3); }

/* 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;}
.carousel .carousel-indicators {margin:20px auto; bottom:100px;}
.carousel-caption { boder:none;  bottom: 50%; font-size: 3rem; font-weight:700; } 
.carousel-caption .caption {padding:1rem 2rem; border: 3px solid #fff; text-shadow:1px 1px 1px rgba(0,0,0,0.5); }
header.masthead .container { position:absolute; top:400px; left:0; right:0; margin:0 auto; }
header.masthead {padding:0; margin-top:120px;}

/* booking bar */
.booking-bar { position: absolute; top: 704px; left:0; right:0; margin:0 auto; background:rgba(255,207,0,0.6); padding:2rem; box-shadow:0 0px 5px rgba(0,0,0,.3); }
.booking-bar .btn {width:280px;}

/* Template banner */
.main-banner {height:350px; width:100%;}
.main-banner img {height:350px; width:100%; object-fit:cover;}
.main-banner .carousel-caption  {display:none;}
.template-header .container { position:absolute; top:250px !important; left:0; right:0; margin:0 auto; }
.template-header {padding:0; margin-top:120px;}
.template-header h1 {font-size:3rem !important; text-shadow:0 10px 30px rgba(0,0,0,.3); }
.page-section {margin-top:120px;}

@media only screen and (max-width:1020px) {
	.logo {height:100px;}
	header.masthead {margin-top:100px;}
}

/* home page */
.card:hover {box-shadow:0 10px 30px rgba(0,0,0,.3);}
.home-section-img {height:300px; width:100%; object-fit:cover;}
.card-img-top {height:250px; width:100%; object-fit:cover;}
.tabs-banner { 
	background-image:  url("../img/reviews-bg.jpg") !important;
	background-repeat:no-repeat !important;
	background-position: center !important;
	background-attachment: fixed !important;
	}
.reviews-bg { 
	background-image:  url("../img/reviews-bg-2.jpg") !important;
	background-repeat:no-repeat !important;
	background-position: center !important;
	background-attachment: fixed !important;
	}

@media only screen and (max-width:992px) {
	header.masthead { margin-top:60px;}
	header.masthead .container {top:150px;}
	.logo { height:80px;}
	.navbar-collapse {margin-top:0;}
	.main-slideshow {height:280px; width:100%;}
	.main-slideshow .carousel-inner {height:280px; width:100%;}
	.main-slideshow .carousel-inner img {height:280px; width:100%; object-fit:cover;}
	.template-header h1 {font-size:1.5rem !important;}
	.template-header .container { top:200px !important;}
	.main-banner {height:280px; width:100%;}
.main-banner img {height:280px; width:100%; object-fit:cover;}
	.carousel-control-next, .carousel-control-prev {display:none;}
	.carousel-caption {  bottom:30%; font-size: 1rem; font-weight:600; border: 3px solid #fff; } 
  .carousel-caption .caption {padding:0.5rem; border:none; }
}

/* contact form */
.cntact-map { width:100%; height:500px; border-top:1px solid #ccc; }
.contact {margin-top:50px;}
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:80%; float:left; 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_ContactForm_action_autoreply, #Form_ContactForm_action_send, #Form_ContactForm_action_sendandautoreply,
#Form_ContactForm_action_submit { border-radius:0 !important; color:#fff !important; background: #0b4a9b; border:none; float:right !important; 
	padding:10px 20px; margin:10px 0; width:30% !important; }
#Form_ContactForm_action_autoreply:hover, #Form_ContactForm_action_send:hover, #Form_ContactForm_action_sendandautoreply:hover,
#Form_ContactForm_action_submit:hover { opacity:0.9; }
label {width:20%;}
.field {margin-bottom:10px; float:left; width:100%;}

/* 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%;}
#MemberLoginForm_LoginForm_Remember_Holder label {width:auto; padding-left:10px;}
#LostPasswordForm_lostPasswordForm_Email_Holder label {float:none;}

@media only screen and (max-width:992px) {
	section#contact .form-group input, section#contact .form-group textarea { width:100%;}
	label {width:100%;}
}

/* custom effects */
.hovereffect {
  width: 100%;
  float: left;
  overflow: hidden;
  position: relative;
  text-align: center;
  cursor: default;
}

.hovereffect .overlay {
  width: 100%;
  height: 300px;
  position: absolute;
  overflow: hidden;
  top: 0;
  left: 0;
  background-color: transparent;
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
}

.hovereffect:hover .overlay {
  background-color: rgba(0, 0, 0, 0.6);
}

.hovereffect img {
  display: block;
  position: relative;
}
.hovereffect h2 {
	color: #fff;
  text-align: center;
  position: relative;
  font-size: 1.5rem;
  padding: 10px;
  background: #ffcf00;
  margin-top: 241px;
}
/**
.hovereffect h2 {
  text-transform: uppercase;
  color: #fff;
  text-align: center;
  position: relative;
  font-size: 17px;
  padding: 10px;
  background: rgba(0, 0, 0, 0.6);
  -webkit-transform: translateY(190px);
  -ms-transform: translateY(190px);
  transform: translateY(190px);
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
} **/

.hovereffect:hover h2 {
  -webkit-transform: translateY(0px);
  -ms-transform: translateY(0px);
  transform: translateY(0px);
}

.hovereffect p {
  display: inline-block;
  opacity:0;
  color:#fff;
  position:absolute;
  top:10px;
  left:0;
  right:0;
}

.hovereffect:hover p {
  opacity: 1;
  filter: alpha(opacity=100);
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
}
.tracking-in-expand-fwd-bottom {
	-webkit-animation: tracking-in-expand-fwd-bottom 0.8s cubic-bezier(0.215, 0.610, 0.355, 1.000) both;
	        animation: tracking-in-expand-fwd-bottom 0.8s cubic-bezier(0.215, 0.610, 0.355, 1.000) both;
}
@-webkit-keyframes tracking-in-expand-fwd-bottom {
  0% {
    letter-spacing: -0.5em;
    -webkit-transform: translateZ(-700px) translateY(500px);
            transform: translateZ(-700px) translateY(500px);
    opacity: 0;
  }
  40% {
    opacity: 0.6;
  }
  100% {
    -webkit-transform: translateZ(0) translateY(0);
            transform: translateZ(0) translateY(0);
    opacity: 1;
  }
}
@keyframes tracking-in-expand-fwd-bottom {
  0% {
    letter-spacing: -0.5em;
    -webkit-transform: translateZ(-700px) translateY(500px);
            transform: translateZ(-700px) translateY(500px);
    opacity: 0;
  }
  40% {
    opacity: 0.6;
  }
  100% {
    -webkit-transform: translateZ(0) translateY(0);
            transform: translateZ(0) translateY(0);
    opacity: 1;
  }
}

/* footer signup buttons*/
.signup-email{display:inline-block; width:100%; text-align:right; }
.signup-email input { height:50px; width:160px; border: none; vertical-align: middle; }
.footer button {background-color:#ffcf00; color:#0b4a9b; }
.signup-button {height:50px; width:150px;  color:#0b4a9b; background:#fff; margin-bottom:0; }
.email-input {padding:10px; margin-bottom:0; }
.social-div {text-align:right;}

ul.social-buttons { margin-bottom: 0;}
ul.social-buttons li a { font-size: 20px; line-height: 40px;  display: block;  width: 40px; height: 40px;
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  transition: all 0.3s; color: #0b4a9b; text-align:center; outline: none; background-color: #fff;}

ul.social-buttons li a:active, ul.social-buttons li a:focus, ul.social-buttons li a:hover { background-color: #ffcf00; color:#fff; }

@media only screen and (max-width:1280px) {
	.booking-bar {max-width:1000px;}
}

@media only screen and (max-width:992px) {
  .hovereffect h2 {margin-top:248px !important; font-size:1.2rem; }
  .footer {padding-top:3rem; padding-bottom:3rem;}
	.signup-email {text-align:center;}
	.social-div {text-align:center;}
	.email-input, .signup-button {margin-bottom:10px;}
	.signup-email input, .signup-button {width:100%;}
}