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

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

hr {
  max-width: 50px;
  border-width: 3px;
  border-color: #75002c;
}

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

a {
  color: #75002c;
  -webkit-transition: all 0.2s;
  -moz-transition: all 0.2s;
  transition: all 0.2s;
}

a:hover {
  color: #75002c;
}

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

iframe {
	width:100%;
}

.bg-primary {
  background-color: #75002c !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;
}

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

/* Navigation */
#mainNav {background:#fff; padding-top:1rem; padding-bottom:1rem; font-size:1.2rem; }
.navbar-nav li {padding:20px 10px;}
.navbar-nav { box-sizing:border-box !important; }
.navbar-nav li a {color:#222; padding: 32px 0; opacity:0.9; font-family: 'Lusitana', sans-serif; }
.navbar-nav li a:hover {opacity:1; text-decoration:none; }
.navbar-nav li.current a {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: #75022c; padding:10px; padding-bottom:1px; text-align: left;
    list-style: none; margin-top:30px; padding:0; }
.navbar-nav .sub-menu-list { padding:10px; border-bottom:1px solid #fff; }
.navbar-nav .sub-menu-list a {padding:10px 0; border:none; 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;}
	#mainNav h3 {font-size:1.2rem;}
	.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; padding:10px; }
	.navbar-nav li a {padding:10px 0; width:100%; border:none; box-sizing:border-box; }
	.navbar-toggler {padding:0.4em; font-size:1rem; }
	.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:900px; width:100%;}
.main-slideshow .carousel-inner {height:900px; width:100%;}
.main-slideshow .carousel-inner img {height:900px; width:100%; object-fit:cover;}
.main-slideshow .caption {display:none;}
.masthead, .templateHead {position:relative;}
.masthead .container, .templateHead .container {position:absolute; left:0; right:0; bottom:50px;}
.booking-form {background:#fff; margin: 0 auto; padding:3rem 0;}

.templateHead img {
	height: 500px;
  width: 100%;
  object-fit: cover;
  margin-top: 100px;
}

@media (max-width:992px){
	.main-slideshow {height:400px; width:100%;}
	.main-slideshow .carousel-inner {height:400px; width:100%;}
	.main-slideshow .carousel-inner img {height:400px; width:100%; object-fit:cover;}
	.booking-form {padding:1rem 0;}
	.masthead .container, .templateHead .container {bottom:0px;}
	.templateHead img {	height: 300px; margin-top: 0px; }

}

.tabs .card:hover {
	box-shadow: 0 5px 20px rgba(0,0,0,0.5);
}

.stars {
	color:#00a680;
	font-size:1.2rem;
}
.text-primary {
  color: #75002c !important;
}

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

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

.btn-primary {
  background-color: #75002c;
  border-color: #75002c;
}

.btn-primary:hover, .btn-primary:focus, .btn-primary:active {
  color: #fff;
  background-color: #75002c !important;
}

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

.btn-social {
 	  background: #fff;
    padding: 0.25rem 0;
    width: 35px;
    height: 35px;
    font-size: 1.3rem;
}

.reviews-bg {
	background-image : url(../img/reviews-bg.jpg);
	height:500px;
	background-attachment:fixed;
}
.reviews-cycle {
	min-height:250px;
}
.reviews-cycle article {
	padding:2rem !important;
	height: auto !important;
}
.reviews-cycle .quote {
	vertical-align:text-top;
}

.img-thumbnail {
	height:100px; width:20%; float:left; object-fit:cover;
}

/* room types */
.roomtype .availability { text-align:center; margin-top:1em; }
.roomtype .availabilityTable { margin:0 auto 10px auto; 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;}
.roomtype .btn { display:block; margin:0; background:#75002c !important; }
.room-images, .room-images img { height:300px; width:100%; object-fit:cover;}

.slideshowPrev, 
.slideshowNext { background:none; color:#fff; font-family:inherit; font-size:40px; font-weight:300; line-height:100%; 
	padding:10px; position:absolute; top:40%; 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; }

#contact {
	background:#434343;
	color:#fff;
}

.map-div {
	position:relative;
}
.map-overlay { position: absolute; top: 0; bottom: 0; right: 0; left: 0; background: rgba(0,0,0,0.6); opacity:0; transition: opacity 0.5s ease-in-out; text-align: center; }
.map-overlay span {font-size: 1.5rem; position: absolute; top: 40%; color: #fff; left: 0; right: 0; text-align: center;}
.map-overlay:hover { opacity:1; }

/* Forms */
#Form_ContactForm label { width:80%; margin-top:1rem; display:none; }
#Form_ContactForm_Name, #Form_ContactForm_Email,
#Form_ContactForm_Message { width:100%; padding:1rem; margin:8px 0; }
#Form_ContactForm_action_autoreply,
#Form_ContactForm_action_send, #Form_ContactForm_action_sendandautoreply { color:#fff; padding:10px 30px; font-weight:400;	background:#75002c;	border-radius:0; border:none;}
#Form_ContactForm_Name_Holder {width:49%; float:left; margin-right:2%; }
#Form_ContactForm_Email_Holder {width:49%; float:left;}

@media (max-width:920px) {
	#Form_ContactForm label, #Form_ContactForm_Name, #Form_ContactForm_Email, #Form_ContactForm_Message { 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%;}
