@charset "utf-8";  
*, *:after, *:before {box-sizing: border-box;}
body { 
	font-weight: 400;
	font-size: 17px;
	line-height: 28px;
	padding: 0;
	margin: 0;
    color: #3e4122;  
    background-color: #fff;
    font-family: 'Josefin Sans', sans-serif;
}
::-moz-selection{
   background-color: #000;     
   color: #fff;
}

::selection{
  background-color: #000;  
  color: #fff;
}
body::-webkit-scrollbar {
    width: 6px;
}

body::-webkit-scrollbar-track {
    box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
}

body::-webkit-scrollbar-thumb {
    background-color: #000;
    /* outline: 1px solid #fff; */
}
   
.header_main .container{max-width: 1300px;}
/* body, html{overflow-x: hidden;} */
.container:after, .clearfix:after{content: ""; display: block; clear: both;}
.container .container{width: 100%;padding: 0;}
.spacer, .clear {height: 0; line-height: 0; clear: both; font-size: 0; display: block;}

/* defult css Styles
---------------------------------*/
article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video, blockquote {margin: 0; padding: 0; border: 0; display: block;}
h1, h2, h3, h4, h5, h6 {font-weight:normal; line-height: normal;}
h1 {font-size: 28px; margin: 0 0 15px;}
h2 {font-size: 24px; margin: 0 0 15px;}
h3 {font-size: 20px; margin: 0 0 12px;}
h4 {font-size: 18px; margin: 0 0 12px;}
h5 {font-size: 16px; margin: 0 0 10px;}
h6 {font-size: 14px; margin: 0 0 10px;}
ul, ol {margin-bottom: 10px; padding-left: 15px;}
li {margin: 0 0 10px; padding: 0;}
p {padding-bottom: 20px;margin: 0;}
p:last-child{padding-bottom: 0;}
label, span, strong {display: inline-block;}
p label, p span, p strong {display: inline;}
strong{font-weight: 700;}
a {
	color: #000;
	text-decoration: none;
	border: none;
	outline: none;
	display: inline-block;
	-moz-transition: all 300ms ease-in-out 0s;
	-webkit-transition: all 300ms ease-in-out 0s;
	transition: all 300ms ease-in-out 0s;
}
a:hover, a:focus{color: #000;text-decoration: none;outline: none;} 
img {border: none; outline: none; display: inline-block; max-width: 100%;}
mark {background-color: #ff9; color: #000; font-style: italic; font-weight: bold;}
del {text-decoration: line-through;} 

.htop_row{
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}
.nav_menu{
    display: block;
}
.logo{
  height: 85px;
  width: 85px;
  /* border-radius: 15px 36px 22px  20px; */
  overflow: hidden;
  object-fit: contain;
  position: static;
  left: 0;
  right: 0;
  margin: 0 auto;
}
.header_main{
    position: absolute;
    left: 0;
    top: 0px;
    width: 100%;
    z-index: 5;
    padding: 32px 0;
}
.scrollup{
    position: fixed;
    bottom: 0;
    right: 0;
}

/*=================*/
.responsive_btn {
    display: block; 
    cursor: pointer;
    text-align: center;
    width: 50px;
    height: 40px;
    margin: -2px 0;
    -webkit-border-radius: 3px; 
    -moz-border-radius: 3px; 
    border-radius: 3px; 
    float: right;
    position: relative;
    z-index: 20;
    -moz-transition: all 300ms ease-in-out 0s;
    -webkit-transition: all 300ms ease-in-out 0s;
    transition: all 300ms ease-in-out 0s; 
}
.responsive_btn span {display: block; height: 1px; width: 18px; position: relative; top: 50%; margin: -1px auto;}
.responsive_btn span:before,.responsive_btn span:after {content: ""; display: inline-block; height: 100%; width: 22px; position: absolute; left: 0;}
.responsive_btn span:before {top: -8px;}
.responsive_btn span:after {bottom: -8px;}
.responsive_btn span, .responsive_btn span:before, .responsive_btn span:after{
    background: #fff;
    -webkit-border-radius: 1px;
    border-radius: 1px;
    -moz-transition: all 300ms ease-in-out 0s;
    -webkit-transition: all 300ms ease-in-out 0s;
    transition: all 300ms ease-in-out 0s;
}
.responsive_btn:hover span, .responsive_btn:hover span:before, .responsive_btn:hover span:after {background: #fff;}

.responsive_nav {
    display: block;
    position: fixed;
    left: -350px;
    top: 0;
    bottom: 0; 
    min-height: 100%;
    z-index: 20;
    background-color: rgba(0,0,0,.7);
    -moz-transition: all 300ms ease-in-out 0s;
    -webkit-transition: all 300ms ease-in-out 0s;
    transition: all 300ms ease-in-out 0s;

    width: 350px;
    height: 100vh;
    padding: 2em 3em; 
    overflow-y: auto;
}
.responsive .responsive_nav{
    left: 0;
} 
.closemenu{
    position: absolute;
    right: 40px;
    font-size: 28px;
    color: #999;
    top: 50px;
    cursor: pointer;
    z-index: 9;
}
.closemenu:hover{
    color: #fff;
}
.responsive_nav ul {margin: 0; padding: 0; text-align: left;}
.responsive_nav ul li { 
    list-style-type: none;
    margin: 10px 0;
    padding: 0;
    position: relative;
    text-transform: uppercase;
    font-size: 14px;
    line-height: 20px;
    color: #fff;
}
.responsive_nav ul li:first-child {border-top: none;}
.responsive_nav ul li:after{display: none;}
.responsive_nav ul li > a {display: inline-block; padding: 8px 0; color: inherit; position: relative;}
.responsive_nav ul li a:after{
    content: "";
    height: 1px;
    background: #fff;
    width: 0;
    position: absolute;
    left: 0;
    bottom: 4px;
    transition: all 300ms ease-in-out;
}
.responsive_nav ul li a:hover{
    text-shadow: 0 0 1px #fff;
}
.responsive_nav ul li a:hover:after,.responsive_nav ul li a:focus:after,.responsive_nav ul li.active > a:after{width: 100%;}
.responsive_nav ul ul {padding: 0 0 15px 15px;}
.responsive_nav ul .sub-menu,.responsive_nav ul li a i {display: none;}
.responsive_nav .subarrow {display: block; pointer-events: inherit; width: 30px; height: 40px; line-height: 40px !important; right: 0;}
.responsive_nav ul .sub-menu .container {width: 100%; padding: 0;}
.bodyOverlay {
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 20;
    transform: none;
    background: rgba(0, 0, 0, 0.6);
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all 500ms ease 0s;
    transition: all 500ms ease 0s;
}
.responsive .bodyOverlay{
    opacity: 1;
    visibility: visible;
}
html.responsive,.responsive body {overflow-y: hidden;} 
.responsive_logo{max-width: 120px; margin: 0 auto 20px; display: block;}
.booking_promocode input{
    border: 1px solid #000;
    border-width: 0 0 1px;
    width: 70%;
}
.booking_promocode button{margin-left: auto;}
.booking_promocode{display: none;}
.open_promo .booking_promocode{display: block;}
.PromoApply:hover{text-decoration: underline;}
.close_promo{cursor: pointer;}
.popupHead{
    position: absolute; 
    right: 0;
    top: 0; 
    width: 100%;
    padding: 15px;
}
.popupwrap1{width: 100%;}
.popupwrap2{width: 100%; display: none;}
.open_reservation .popupwrap1{
    display: none;
}
.open_reservation .popupwrap2{display: block;}
/*=========================*/
.videobox{ 
    width: 100%;
    background: #ccc; 
    position: relative;
    overflow: hidden;  
}
.videobox video{  
    width: 100%;
    height: 100vh; 
    object-fit: cover; 
}
.head_btn .btn{   
    padding: 0 14px; 
    height: 36px;
    line-height: 36px; 
    -webkit-transition: background-color .4s,opacity .2s,-webkit-transform .7s;
    transition: transform .7s,background-color .4s,opacity .2s,-webkit-transform .7s;
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    text-transform: uppercase;
    border: 1px solid #fff;
    border-radius: 0;
    color: #fff;
}
.head_btn .btn:hover, .head_btn .btn:focus{
    background: #fff;
    color: #000;
    box-shadow: none;
    outline: 0;
}
/*==========================*/
.right_popup{
    position: fixed;
    left: auto;
    top: 0;
    right: -370px;
    bottom: 0;
    z-index: 14;
    width: 370px;
    height: 100vh;
    padding: 2em 3em;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: #fff;
    color: #000; 
    -webkit-transition: all 300ms ease-in-out;
    -moz-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;

    display: flex;
    align-items: center;
    flex-wrap: wrap;
}
.open .right_popup{
    right: 0;
}
.form-input{
    border: none !important;
    border-bottom: 1px solid #000 !important;
    box-shadow: none;
    outline: none;
    width: 100%;
    height: 38px;
    padding: 8px 12px;
    font-size: .9em; 
    font-weight: 400;
}
.form-input::placeholder{
    color: #000;
    text-transform: uppercase;
}
.form-input::-webkit-placeholder{
    color: #000;
    text-transform: uppercase;
}
.form-input::-moz-placeholder{
    color: #000;
    text-transform: uppercase;
}
.inputWrap{margin-bottom: 10px;}
.booking-subtitle{  
    font-size: 16px;
    line-height: 30px;
    font-weight: 600;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    margin-bottom: 10px;
    color: #000;
}
.booking-menu__title {
    margin-bottom: .6em;
    color: #000;
    font-size: 30px;
    line-height: 34px;
    font-style: italic;
    font-weight: 400; 
}
.form-mention{font-size: 16px; line-height: 20px;}
.black_btn_group{justify-content: space-between; display: flex; align-items: center;}
.black_btn_group .btn{
    border:1px solid #000;
    background-color: #000;
    color: #fff;
    padding: 0 20px; 
    border: 1px solid #fff;
    font-size: 13px;
    text-transform: uppercase;
    height: 40px;
    line-height: 42px;
    width: 48%;
    border-radius: 0;
}
.black_btn_group .btn:hover{
    background: #fff;
    color: #000;
    border-color: #000;

}
.logopopup{max-width: 120px; margin: 0 auto 20px;}
/*============datepicker========*/
a,
button {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  cursor: pointer;
  border: none;
  outline: none;
  background: none;
  text-decoration: none;
} 

.main .container {
  display: grid;
  grid-template-columns: 1fr;
  width: 50%;
}
.main .card {
  background: #ffffff;
  color: #333333;
  padding: 2rem 2rem;
  border: none;
  outline: none;
  border-radius: 2px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 3px rgba(0, 0, 0, 0.24);
}
.main .form {
  display: grid;
  grid-template-areas: "location location" "check-in check-out" "guests guests" "submit submit";
  grid-gap: 1rem;
  width: 100%;
  align-items: center;
  text-align: center;
}
.main .form .location {
  grid-area: location;
}
.main .form .check-in {
  grid-area: check-in;
}
.main .form .check-out {
  grid-area: check-out;
}
.main .form .guests {
  grid-area: guests;
}
.main .form .submit {
  grid-area: submit;
}
.main .form-group {
  width: 100%;
}
.main .form-group input.form-input {
  width: 100%;
  padding: 0.75rem 1rem;
  font-family: inherit;
  font-size: inherit;
  color: #333333;
  border: none;
  outline: none;
  border-radius: 2px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 3px rgba(0, 0, 0, 0.24);
}
.main .form-group .btn {
  width: 100%;
}

@media only screen and (max-width: 500px) {
  .main .container {
    width: 100%;
  }
  .main .form {
    display: grid;
    grid-template-areas: "location" "check-in" "check-out" "guests" "submit";
  }
  .main .form .location {
    grid-area: location;
  }
  .main .form .check-in {
    grid-area: check-in;
  }
  .main .form .check-out {
    grid-area: check-out;
  }
  .main .form .guests {
    grid-area: guests;
  }
  .main .form .submit {
    grid-area: submit;
  }
}

.splash {
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: #000;
  opacity: 1;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
  z-index: 15;
}
.progressbar {
  width: 35vh;
  height: 1px;
  border-radius: 2px;
  background-color: #5a5656;
  opacity: 0;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.loading-lign {
  width: 0%;
  height: 100%;
  background-color: #f8f8f8;
}
.progressbar {
  width: 30vh;
}
.dayContainer, .flatpickr-days{
  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
}
.header-appear-index .header_main{
  padding: 55px 0;
    background-color: rgb(0 0 0 / 18%);
    top: 0;
}
.logo{
  transition: 0.5s all ease-in-out;
}
.logo:hover {
  transform: scale(1.10);
}