body,
html {
  width: 100%;
  height: 100%;
}

body {
  font-family: 'Poppins', sans-serif;
  letter-spacing:0.8px;
  line-height: 1.8rem;
}

hr {
  max-width: 50px;
  border-width: 3px;
  border-color: #1f4284;
}

hr.light {
  border-color: #fff;
}

a {
  color: #1f4284;
  -webkit-transition: all 0.2s;
  -moz-transition: all 0.2s;
  transition: all 0.2s;
}

a:hover {
  color: #1f4284;
}

h1 {
	font-weight:700;
	font-size:2rem;
}

h1, h2, h3, h4 {
	font-family: 'Lusitana', serif;
	font-weight:700;
}

.bg-primary {
  background-color: #1f4284 !important;
}

.bg-dark {
  background-color: #212529 !important;
}

.text-faded {
  color: rgba(255, 255, 255, 0.7);
}

section {
  padding: 6rem 0;
}

.section-heading {
  margin-top: 0;
}

::-moz-selection {
  color: #fff;
  background: #212529;
  text-shadow: none;
}

::selection {
  color: #fff;
  background: #212529;
  text-shadow: none;
}

img::selection {
  color: #fff;
  background: transparent;
}

img::-moz-selection {
  color: #fff;
  background: transparent;
}

/* Navigation */
#mainNav {background:#1f4284 !important;}
.navbar-nav li {padding:10px; font-weight:600;}
.navbar-nav { box-sizing:border-box !important; }
.navbar-nav li a {color:#fff; padding: 32px 0; opacity:0.9; }
.navbar-nav li a:hover {opacity:1; text-decoration:none; }
.navbar-nav li.current a {opacity:1; text-decoration:none; }
.navbar-nav li.current .submenu a, .submenu a, .submenu a:hover {border-top:none !important; }
.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: #1f4284; padding:10px; padding-bottom:1px; text-align: left;
    list-style: none; margin-top:30px; text-transform:uppercase; }
.navbar-nav .sub-menu-list { padding:10px 0; border-bottom:1px solid #777; }
.navbar-nav .sub-menu-list a {padding:10px 0; border:none; text-transform:uppercase; color:#fffffa; border:none; }
.navbar-nav .sub-menu-list a:hover { background:transparent; color:#fff; padding:10px 0; border:none; }

@media only screen and (max-width:992px) {
	h1 {font-size:1.5rem;}
	.lead {font-size:1.2rem;}
	.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 li 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;}
	.navbar-nav li a:hover {opacity:1; text-decoration:none; border-top:none; }
  .navbar-nav li.current a {opacity:1; text-decoration:none; border-top:none; }
}

/* Slideshow */
.main-slideshow {height:100vh; width:100%;}
.main-slideshow .carousel-inner {height:100vh; width:100%;}
.main-slideshow .carousel-inner img {height:100vh; width:100%; object-fit:cover;}
.main-slideshow .caption {display:none;}
header.masthead {height: auto; padding-top: 0; padding-bottom: 0; position: relative;  }
.templateHead {height:500px; width:100%; background-position: center; position:relative; background-repeat: no-repeat; background-size: cover;}

/* datepicker */
.datepicker-bg { position: absolute; bottom: 0px; padding:1.5rem 0; background: rgba(0,0,0,0.7); left: 0; right: 0; width: 100%; }

@media (max-width:992px){
	.main-slideshow {height:70vh; width:100%;}
	.main-slideshow .carousel-inner {height:70vh; width:100%;}
	.main-slideshow .carousel-inner img {height:70vh; width:100%; object-fit:cover;}
	.datepicker-bg h2 {font-size:1.2rem;}
}

#mainNav {
  border-bottom: 1px solid rgba(33, 37, 41, 0.1);
  background-color: #fff;
  -webkit-transition: all 0.2s;
  -moz-transition: all 0.2s;
  transition: all 0.2s;
}

#mainNav .navbar-brand {
  font-weight: 700;
  text-transform: uppercase;
  color: #1f4284;
}

#mainNav .navbar-brand:focus, #mainNav .navbar-brand:hover {
  color: #1f4284;
}

#mainNav .navbar-nav > li.nav-item > a.nav-link,
#mainNav .navbar-nav > li.nav-item > a.nav-link:focus {
  font-size: .9rem;
  font-weight: 700;
  text-transform: uppercase;
  color: #212529;
}

#mainNav .navbar-nav > li.nav-item > a.nav-link:hover,
#mainNav .navbar-nav > li.nav-item > a.nav-link:focus:hover {
  color: #1f4284;
}

#mainNav .navbar-nav > li.nav-item > a.nav-link.active,
#mainNav .navbar-nav > li.nav-item > a.nav-link:focus.active {
  color: #1f4284 !important;
  background-color: transparent;
}

#mainNav .navbar-nav > li.nav-item > a.nav-link.active:hover,
#mainNav .navbar-nav > li.nav-item > a.nav-link:focus.active:hover {
  background-color: transparent;
}

@media (min-width: 992px) {
  #mainNav {
    border-color: transparent;
    background-color: transparent;
  }
  #mainNav .navbar-brand {
    color: rgba(255, 255, 255, 0.7);
  }
  #mainNav .navbar-brand:focus, #mainNav .navbar-brand:hover {
    color: #fff;
  }
  #mainNav .navbar-nav > li.nav-item > a.nav-link {
    padding: 0.5rem 1rem;
  }
  #mainNav .navbar-nav > li.nav-item > a.nav-link,
  #mainNav .navbar-nav > li.nav-item > a.nav-link:focus {
    color: rgba(255, 255, 255, 0.7);
  }
  #mainNav .navbar-nav > li.nav-item > a.nav-link:hover,
  #mainNav .navbar-nav > li.nav-item > a.nav-link:focus:hover {
    color: #fff;
  }
  #mainNav.navbar-shrink {
    border-bottom: 1px solid rgba(33, 37, 41, 0.1);
    background-color: #fff;
  }
  #mainNav.navbar-shrink .navbar-brand {
    color: #1f4284;
  }
  #mainNav.navbar-shrink .navbar-brand:focus, #mainNav.navbar-shrink .navbar-brand:hover {
    color: #1f4284;
  }
  #mainNav.navbar-shrink .navbar-nav > li.nav-item > a.nav-link,
  #mainNav.navbar-shrink .navbar-nav > li.nav-item > a.nav-link:focus {
    color: #212529;
  }
  #mainNav.navbar-shrink .navbar-nav > li.nav-item > a.nav-link:hover,
  #mainNav.navbar-shrink .navbar-nav > li.nav-item > a.nav-link:focus:hover {
    color: #1f4284;
  }
}

.service-box {
  max-width: 400px;
}

.portfolio-box {
  position: relative;
  display: block;
  max-width: 650px;
  margin: 0 auto;
}

.portfolio-box .portfolio-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.5);
  -webkit-transition: all 0.2s;
  -moz-transition: all 0.2s;
  transition: all 0.2s;
}

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

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

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

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

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

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

.title-div {
	background: rgba(0, 0, 0, 0.6);
  float: left;
  padding: 0.5rem;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  color: #fff;
}
.img-tab {
	max-width: 100%;
  height: 300px;
  object-fit: cover;
}

@media (min-width: 768px) {
  .portfolio-box .portfolio-box-caption .portfolio-box-caption-content .project-category {
    font-size: 16px;
  }
  .portfolio-box .portfolio-box-caption .portfolio-box-caption-content .project-name {
    font-size: 22px;
  }
}

.text-primary {
  color: #1f4284 !important;
}

.btn {
  border: none;
  border-radius:0px;
  white-space:normal;
}

.btn-xl {
  padding: 1rem 2rem;
}

.btn-primary {
  background-color: #1f4284;
  border-color: #1f4284;
}

.btn-primary:hover, .btn-primary:focus, .btn-primary:active {
  color: #e0be33;
  background-color: #1f4284 !important;
}

.btn-primary:active, .btn-primary:focus {
  box-shadow: 0 0 0 0.2rem rgba(240, 95, 64, 0.5) !important;
}

/* webrooms room types */
.roomtype .availabilityTable { width:100%; font-size:10px; border-collapse:collapse; box-sizing:border-box; text-align: center; }
.roomtype .availabilityTable th { font-weight:normal !important; background:#eee; padding:3px 0; opacity:0.5; }
.roomtype .availabilityTable td { border:1px solid #fff; padding:10px 0; text-align: center; }
.roomtype .availabilityTable td:first-child { border-left:none; }
.roomtype .availabilityTable td:last-child { border-right:none; }
.roomtype .availabilityTable .avail a { padding:10px 0; display:block; text-decoration:none; color:#333; }
.roomtype .availabilityTable .avail { color:#333;	background:#d4f7a5; }
.roomtype .availabilityTable .avail:hover { background:#b2ea78; }
.roomtype .availabilityTable .notavail { padding:10px 0; color:#bbb; background:#f1f1f1;}

/********** room photos carousel **********/
.slideshowPrev, 
.slideshowNext { background:none; color:#fff; font-family:inherit; font-size:40px; font-weight:300; line-height:100%; 
	padding:10px; position:absolute; top:15%; z-index:100; opacity:0.7; transition:opacity .5s ease-in-out; border:none; }
.slideshowPrev { left:10px; }
.slideshowNext { right:10px; }
.slideshowPrev:hover, 
.slideshowNext:hover { cursor:pointer; opacity:1; }

.room-images img {height:300px; width:100%; object-fit:cover;}
.room-images, .room-images a {width:100% !important;}

/* Reviews bg */
.reviews-bg {
	background-image: url(../img/reviews-bg.png);
	height:500px;
	width:100%;
	background-repeat:repeat;
}
.guest-name {
	background-image: url(../img/Rectangle-45.png);
	background-repeat:no-repeat;
	padding-top:2rem;
}
.reviews-badge {
	position: absolute;
  padding: 2.5rem;
  left: auto;
  right: 0;
  top:0;
}

.shadow {
	box-shadow:0 1px 10px rgba(0,0,0,0.1);
}

@media (max-width:992px){
	.reviews-bg {
		height:auto;
		padding:2rem;		
	}
	.reviews-bg article {
		width:100% !important;
	}
	.reviews-badge {
		position: relative;
		text-align: center;
	  width: 100%;
	  padding:0;
		padding-top:1rem;
  }
}

#parallax {
	background-image: url(../img/video-banner.jpg);
	height:500px;
}

.overlay {
	background-color:rgba(0,0,0,0.6);
	position:absolute;
	left:0;
	right:0;
	width:100%;
	height:500px;
}

.video-play-btn {
  display: inline-block; width: 70px; height: 70px; background-color: #ffffff; color: #1f4284; font-size: 18px; text-align: center;
 line-height: 70px; border-radius: 50%; z-index: 100; }
.video-play-btn i { padding-left: 5px; }
.video-play-btn:hover {cursor:pointer;}

@media only screen and (max-width: 992px) {
   .video-play-btn { width: 60px;  height: 60px;  font-size: 24px; line-height:60px; }
   #parallax { height:250px;}
   .overlay { height:250px; }
}

/* ASURE Footer */
.loyaltyCard { position: absolute; top: 0; right: 10px;}
.loyaltyInner { background: #2e5192; font-size: 14px; color: #fff; padding: 20px; margin: 0 35px 0 0; float: right; }
.yellow {color:#e0be33;}
#footer {background:#1f4284; padding:5em 0;}
.footerCopy {padding:10px; background:#ccc; }
#footer .fa {color:#4264a4; width:15px;}
#footer .footer-btn {background:#1f4284; font-weight:300; }
.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;}
.copyright { background-color: #1a252f;}
a { color: #062F4F;}
a:focus, a:hover, a:active { color: #062F4F;}
.btn { border-width: 2px;}
.map { height:500px;}


@media (min-width: 1200px) {
	#footer .container {
	  max-width:1200px !important;
	  width:100%;
  }
}

/* social-networks */
.social-networks {padding:10px 0;}
.social-networks li {list-style:none; display:inline-block; border:1px solid #1f4284; width:50px; text-align:center; background:#1f4284; border-radius:5px; }
.social-networks li a {font-size:1.3em; color:#fff; }
.social-networks li:hover a {color:#1f4284; }
.social-networks li:hover {background:#fff;}

/* forms */
/* 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%;}

/* contact page */
/* buttons */
#Form_ContactForm_action_send, #Form_ContactForm_action_sendandautoreply {  border: none; background-color:#1f4284; color:#fff; padding:0.5rem 1rem; }
#Form_ContactForm_action_autoreply {display:none;}

#Form_ContactForm_Name_Holder label,
#Form_ContactForm_Email_Holder label,
#Form_ContactForm_Message_Holder label {display:none;}
#Form_ContactForm_Name_Holder input, #Form_ContactForm_Email_Holder input,
#Form_ContactForm_Message_Holder textarea {margin:10px 0; padding:0.5rem; border:1px solid #333; border-radius:0.25rem; width:100%; }

#Form_EnquiryForm_action_send, #Form_EnquiryForm_action_sendandautoreply {  border: none; background-color:#1f4284; color:#fff; padding:0.5rem 1rem; }
#Form_EnquiryForm_action_autoreply {display:none;}

#Form_EnquiryForm_Name_Holder label,
#Form_EnquiryForm_Email_Holder label,
#Form_EnquiryForm_Phone_Holder label,
#Form_EnquiryForm_ArrivalDate_Holder label, #Form_EnquiryForm_GuestHouse_Holder label,
#Form_EnquiryForm_Message_Holder label { margin:10px 0 5px 0; }
#Form_EnquiryForm_Name_Holder input, #Form_EnquiryForm_Email_Holder input,
#Form_EnquiryForm_Phone_Holder input, #Form_EnquiryForm_ArrivalDate_Holder input, #Form_EnquiryForm_GuestHouse_Holder select,
#Form_EnquiryForm_Message_Holder textarea { padding:0.5rem; border:1px solid #333; border-radius:0.25rem; width:100%; }

/* mobile view */
@media (max-width:992px){
	.large-section-img img { height:auto !important }
	.map, .map iframe { height:300px !important;}
	section {padding: 3rem 0;}
	.logo {height:60px;}
}

iframe {
	width:100% !important;
}