:root {
	--color1 : #042138; /*dark*/
	--color2 : #F7C25B; /*light*/
	--color3 : #008ac9;
	--color3 : #3f9cc1;
	--dark : #000;
	--light : #fff;

    --color4 :#004b43;
    --color5 : #009c7a;

}

/* COMMON */
iframe {vertical-align:top;    max-width: 100%;}


a, .logo img,  header, .btn, .roomBtnInfo, .roomServList, .roomItemInfo, .roomImage:before, .logo svg *, .cat-thumb h3, .cat-image, .gallery-item img  {
		    transition: all .3s ease;
	-webkit-transition: all .3s ease;
	   -moz-transition: all .3s ease;
	    -ms-transition: all .3s ease;
	     -o-transition: all .3s ease;

}

a.hoverlink {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}

body {
	font-family: "Montserrat", serif;
    font-size: 16px;
    line-height: 1.42;
    min-width: 360px;
	padding-top: 0px;
}
table td {
    vertical-align: top;
}


a {
	color:var(--color1);
}
	
a, a:hover, a:visited, a:focus {
	text-decoration: none;   
	outline: none;
}
a:hover {
    color: var(--color3);
}
section {
	position:relative;
    z-index: 2;
	}
img {
	max-width: 100%; 
	vertical-align:top;
}	

h2 {
    margin-bottom: 2rem;
    font-weight: bold;
}

.breadcrumb {
    font-size: 12px;
    padding: 10px 0;
    margin: 0;
}

/* DARK-THEME */
.dark-block {
    background: var(--color1);
    color: #fff;
}

/* BUTTONS */
.btn {
    border-radius: 0;
    text-transform: uppercase;
    font-weight: bold;
    position: relative;
    overflow: hidden;
    box-shadow: -3px 3px 5px rgba(0, 0, 0, .2);
    letter-spacing: 1px;
    font-size: 14px;
    line-height: 1;
    padding: 8px 16px;
}
.btn-group2 {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
}
.btn:before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient( 120deg, transparent, rgb(255 223 175 / 60%), transparent );
  transition: all 850ms;
}
.btn.btn-secondary:before {
  background: linear-gradient(
    120deg,
    transparent,
    rgb(193 193 193 / 60%),
    transparent
  );
}
.btn-primary:hover, .btn-primary.focus, .btn-primary:focus {
  color: #ff7b0a;
  border-color: #e76400;
  box-shadow: none;
  background: #fff;
}

.btn:hover:before {
  left: 100%;
}

.btn-primary {
    color: var(--color1);
    background-color: var(--color2);
    border-color: var(--color2);
}
.btn-primary:hover {
  background-color: var(--color1);
  color: #fff;
  border-color: var(--color2);
}
.btn-secondary {
  background: var(--color1);
  border-color: transparent;
}
.btn-secondary:focus {
	background: var(--color1);
  border-color: transparent;
	box-shadow: -3px 3px 5px rgba(0,0,0,.2);
}

/* HEADER */

.is-top header {
  background: transparent;
  box-shadow: none;
	padding-top: 20px;

}
header {
  position: fixed;
  width: 100%;
  display: flex;
  top: 0;
  left: 0;
  background: var(--light);
  box-shadow: 0 0 20px rgba(0,0,0,.4);
  flex-direction: row;
  z-index: 999;
  padding: 5px 20px;	
  align-items: center;
}

.logo {
    margin-right: auto;
    flex: 0 1 auto;
    padding-right: 20px;
}
.is-top .logo svg * {
    fill: var(--color2);
}


/* TOPBAR */
.topBar {
    display: flex;
    gap: 10px;
    justify-content: end;
}
.topBar ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.topBar a:hover {
    color: var(--color2);
}

/* LANGUAGE SELECT */
.lang-select {
    display: flex;
    gap: 10px;
    margin-left: 20px!important;
    border-left: 1px solid;
    padding-left: 20px!important;
}
.lang-select .active {
    color: var(--color2);
}

/* MAIN NAV */
.mainnav {
	text-align:right;
}
.mainnav ul {
  list-style: none;
  padding: 0;
  margin: 0;
	display: inline-block;
}
.mainnav ul li {
	display:inline-block;

}
.mainnav a {
    color: var(--color-dark);
  letter-spacing: 1px;
  padding: 11px 0 5px;
  display: block;
  border-bottom: 2px solid transparent;
  margin: 0 15px;
}
.mainnav li:hover a {
	border-color: var(--color1);
      color: var(--color1);
}
.is-top .mainnav li:hover a {
    border-color: var(--color2);
    color: var(--color2);
}
.mainnav .active a {
  border-bottom: 2px solid;
      color: var(--color2);
}
.is-top header a {
    color: #fff;
}
#trigger-overlay {
  display: none;
}

/* SLIM */
.slim {
    padding-top: 90px;
}
.slimheader {
    padding: 140px 0 50px;
    color: #fff;
    background-size: cover;
    background-position: center;
    position: relative;
    z-index: 2;
}
.slimheader:before {
    content: '';
    inset: 0;
    background: rgba(0, 0, 0, .3);
    position: absolute;
    z-index: -1;
}
.slimheader h1 {
    text-transform: uppercase;
    font-weight: bold;
    margin-bottom: 50px;
}
.slimheader .intro {
    font-size: 1.2em;
}
@media (max-width:991px) {
    .slimheader {
        padding: 90px 0 50px;
    }
    .slimheader h1 {
        margin-bottom: 20px;
    }
    .slimheader .intro {
        font-size: 1em;
    }
}


/* SLIDER */
#slider {
    position: relative;
    z-index: 2;
    color: #fff;
    font-size: 1.2em;
    /* height: 60vw; */
    padding-top: 100px;
	min-height:30vw;
}

    .slider-info {
        padding: 70px 0;
        height: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }
#vegasslider {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
}
#vegasslider:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, .4);
}
#hero {
	  position: relative;
	z-index: 2;
  min-height: 400px;
  background-size: cover;
  background-position: center;
	padding-bottom:20px;
	  background-attachment: inherit;
}
#hero .brand-subtitle {
  color: var(--black);
} 
#hero .brand-label {
  border-color: var(--color2);
  padding-top: 100px;
  color: var(--color2);
  font-size: 1em;
  border-color: var(--color2);
	top: auto;
  bottom: 0;
}
.brand-subtitle {
  color: var(--color2);
}
span.rotate {
 text-transform: uppercase;
  font-weight: bold;
  color: var(--color2);
  font-size: 2em;
	}

/* MOUSE ICON */	
.mouse {
  width: 30px;
  height: 50px;
  border: 2px solid #fff;
  border-radius: 20px;
  position: absolute;
  bottom: 10px;
  left: 50%;
  margin-left: -15px;
}
.mouse::before {
  content: "";
  width: 5px;
  height: 5px;
  position: absolute;
  top: 10px;
  background: #fff;
  left: 50%;
  transform: translateX(-50%);
  border-radius: 50%;
  opacity: 1;
  animation: mouse 2s infinite;
}
@keyframes mouse {
  from{
    opacity: 1;
    top: 10px;
  }
  to{
    opacity: 0;
    top: 30px;
  }
} 


.hero-info {
  display: flex;
  align-items: flex-start;
  padding: 110px 0 70px;
  flex-wrap: wrap;
  align-items: center;
}

/* NAV SOCIAL */
.topSocial {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  gap: 10px;
}

.topSocial li a {
  display:block;
	text-align:center;

}
.topSocial li a:hover {
  opacity:1;
}

.slide-item {
  height: 600px;
  background-size: cover;
  background-position: center;
}
.hero-logo {
    text-align: center;
    width: 20vw;
}

/* SECTION */
.section {
  padding: 70px 0;
}

.textbg {
	padding:150px 0
}
.bgcover {
  background-size: cover;
}
.bgfixed {
  background-attachment: inherit;
}
.textbg .textblock {
	color:#fff;
	text-align:center;
}

/* BLOCK SERVICES */
.title-bg {
    position: relative;
    background-size: cover;
    background-position: center;
    padding: 70px 0 200px;
    margin-bottom: -130px;
    z-index: 0;
}
.title-bg:before {
    content: '';
    position: absolute;
    background: var(--color2);
    opacity: .6;
    top: 0%;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
}
.section-services .item {
    margin-bottom: 30px;
    background: #fff;
}
.service-icon {
    max-width: 160px;
}
.blockType1 .item-title {
    font-weight: bold;
    line-height: 1.2;
    color: var(--color1);
    background: #fff;
    margin-top: -2.5rem;
    position: relative;
    padding: 10px 5px 10px;
    margin-right: 60px;
}
.img-wrap {
    overflow: hidden;
    margin-bottom: 10px;
}
.img-wrap>img {
    overflow: hidden;
    transform: scale(1);
    transition: all .3s ease;
	-webkit-transition: all .3s ease;
	   -moz-transition: all .3s ease;
	    -ms-transition: all .3s ease;
	     -o-transition: all .3s ease;}

.section-services.blockType1 .item:hover img {
    transform: scale(1.1);
}
.service-icon {
    margin-bottom: 20px;
}

#content {
    padding-top: 50px;
    margin-bottom: 30px;
}
.subPages {
    margin-top: 50px;
}
.subPages .cat-thumb {
    margin-bottom: 30px;
}

/* BLOCK TextIMAGE */
.bgImage form {
    max-width: 940px;
    margin: 0 auto;
    background: rgb(12 39 54 / 73%);
    padding: 20px;
    margin-bottom: 20px;
    border: 1px solid #445968;
    border-radius: 10px;
}
.bgImage {
    background-size: cover;
    background-position: center;
    color: var(--light);
}
.bgImage a {
    color: var(--color2);
}
.bgImage:before {
    content: '';
    background: var(--color1);
    opacity: .7;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
        z-index: -1;
}
.textBlock {
}
.bgImage .textBlock {
    color: var(--light);
    position: relative;
    z-index: 2;
}





/* BREADCRUMBS */
.breadcrumbs {
    /* font-size: .9em; */
    /*background: #eee;
    padding: 3px;*/
    border-radius: 8px;
    margin-bottom: 10px;
}
.dropdown-toggle {
    border-radius: 0 8px 0 0;
    vertical-align: middle;
}
.dropdown-toggle::after {

    font-size: 28px;
    vertical-align: middle;
}
.border-btn {
    font-weight: bold;
    border: 1px solid var(--color3);
    box-shadow: -3px 3px 5px rgba(0, 0, 0, .2);
    font-size: 14px;
    line-height: 1;
    padding: 5px 16px 6px;
    border-radius: 0 0 0 8px;
    border-right: 0;
    vertical-align: middle;
}
.dropdown-item:focus, .dropdown-item:hover {
    background-color: var(--color3);
    color: #fff;
}
@media (max-width:768px) {
    .breadcrumbs .border-btn {
        display: none;
    }
}
/* Effects */
.lineeffect {
  position: relative;
	justify-content: center; 
	background: #000;
}
.roomImage .lineeffect img {
	opacity:.8;
}

.lineeffect:before {
  border-bottom: 1px solid var(--light);
  border-top: 1px solid var(--light);
  transform: scale(0, 1);
}
.lineeffect:after {
  border-left: 1px solid var(--light);
  border-right: 1px solid var(--light);
  transform: scale(1, 0);
}
.lineeffect:before, .lineeffect:after {
  bottom: 10px;
  content: "";
  left: 10px;
  opacity: 0;
  position: absolute;
  right: 10px;
  top: 10px;
  transition: opacity 0.35s ease 0s, transform 0.35s ease 0s;
  z-index: 1;
}
.lineeffect:before, .lineeffect:after {
  bottom: 10px;
  content: "";
  left: 10px;
  opacity: 0;
  position: absolute;
  right: 10px;
  top: 10px;
  transition: opacity 0.35s ease 0s, transform 0.35s ease 0s;
  z-index: 1;
}


.threetextboxrow .lineeffect:before, .threetextboxrow .lineeffect:after {
  left: 15px !important;
  right: 15px !important;
}


.lineeffect:hover:before, .lineeffect:hover:after {
  opacity: 1;
  transform: scale(1);
}



/* CATALOG */
.categoryList {
}
.cat-image {
    width: 100%;
    transform: scale(1);
    opacity: .8;
}
.cat-thumb {
    position: relative;
    overflow: hidden;
    z-index: 2;
    background: #000;
}

.cat-thumb h3 {
    position: absolute;
    bottom: 10px;
    left: 0px;
    padding-left: 10px;
    right: 30px;
    color: #fff;
    z-index:1;
}
.cat-thumb h3 span {
    vertical-align: middle;
    margin-left: -30px;
    width: 30px;
    display: inline-block;
    transform: translateX(-10px);
}
.cat-thumb:hover h3 {
    left: 30px;
    right: 0px;
}
.cat-thumb:hover .cat-image {
    transform: scale(1.1);
}

.cat-description {
    padding: 50px 0;
}


/* BLOCK CONTACTS*/
.contacts-block {
    font-size: 1.2em;
}
.contacts-block a:hover {
    color: #fff;
}
.map {

    background-size: cover;
    position: relative;
    min-height: 400px;
}
.map iframe {
    position: absolute;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;
}
.map-logo {
    position: absolute;
    top: 50%;
    left: 75%;
    transform: translate(-50%, -50%);
}
.googleMap {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background: var(--color1);
}
.googleMap iframe {
    width: 100%;
    height: 100%;
    opacity: .5;
}
.map-contacts {
    padding: 70px 30px;
    background: var(--color2);
}
.map-contacts ul {
    list-style: none;
    padding: 0;
    font-size: 1.2em;
}
form.contact-form {
    /* background: #efefef; */
    /* padding: 0 10px 10px; */
    /* border-radius: 8px; */
    /* box-shadow: 4px 4px 10px rgba(0, 0, 0, .3); */
    /* border: 1px solid var(--color3); */
}
.form-group {
    margin-bottom: 20px;
}
.policy-label {
    font-size: .9em;
    margin-bottom: 10px;
    padding-top: 13px;
}
.contactsIconList {
    list-style: none;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
}
.contactsIconList li {
    width: 50%;
}
.contactsIconList li {
    width: calc(50% - 30px);
    display: flex;
    align-items: center;
    font-weight: bold;
}
.contactsIconList img {
    margin-right: 10px;
    border: 1px solid var(--color3);
    border-radius: 50%;
    padding: 5px;
}
@media (max-width:991px) {
    .contactsIconList li {
        width: 100%;
    }
}

/* FOOTER */
footer {
    background: var(--color1);
    padding: 30px 0;
    color: #fff;
}
.footer-nav ul {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 0;
    gap: 10px;
}
.footer-nav a {
    color: var(--light);
}
.footer-nav a:hover {
    color: var(--color3);
}
.copyright {
    display: flex;
    justify-content: space-between;
    text-align: center;
}
footer a {
    color: #fff;
}
footer a:hover {
    color: var(--color2);
}
.footer-cols {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
footer ul {
    list-style: none;
    padding: 0;
}
.copyright {
    display: flex;
    justify-content: space-between;
    text-align: center;
    color: var(--color3);
    font-size: .9em;
}
.powerdby {
    line-height: 20px;
    color: var(--color3);
}
.powerdby img {
    vertical-align: middle;
    height: 20px;
}

/* GOHOME BTN*/
.gohome {
    position: fixed;
    right: 7px;
    bottom: 50px;
    z-index: 10;
    background: var(--color2);
    color: #fff;
    width: 40px;
    height: 40px;
    text-align: center;
    line-height: 40px;
    font-size: 33px;
    box-shadow: 3px 4px 15px rgb(0 0 0 / 40%);
    opacity: 0;
}
.gohome.show {
  opacity: .8;
}

/* SLIM */

/* TexImageBlock */

/* FORM VALIDATION */

form.form {
    max-width: 900px;
    margin: 0 auto 30px;
    background: #efefef;
    padding: 30px;
}

.text-error {
  font-size: 14px;
  line-height: normal;
  color: #f00;
	display:none;
}
.text-error.oc-visible {
	display:block;
}
.bgImage .text-error {
    color: #ccc;
}

/* FORM LABEL FLOAT */
.label-float {
  position: relative;
  padding-top: 13px;
}

.label-float input, .label-float textarea {
  border: 1px solid lightgrey;
  border-radius: 5px;
  outline: none;
  min-width: 210px;
  padding: 8px 10px;
  font-size: 16px;
  transition: all .1s linear;
  -webkit-transition: all .1s linear;
  -moz-transition: all .1s linear;
  -webkit-appearance: none;
}
.form-row.nowrap {
  flex-wrap: nowrap;
}

.label-float input:focus,
.label-float textarea:focus
{
  border: 2px solid var(--color-light);
}

.label-float input::placeholder,
.label-float textarea::placeholder
{
  color:transparent;
}

.label-float label{
  pointer-events: none;
  position: absolute;
  top: 17px;
  left: 15px;
  transition: all .1s linear;
  -webkit-transition: all .1s linear;
  -moz-transition: all .1s linear;
  background-color: white;
  padding: 5px;
  box-sizing: border-box;
  color:#000;
}
input#qtty {
  min-width: auto;
  width: 140px;
  text-align: center;
}
.label-float input:required:invalid + label,
.label-float textarea:required:invalid + label
{
  color: red;
}
.label-float input:focus:required:invalid,
.label-float textarea:focus:required:invalid,
{
  border: 2px solid red;
}
.label-float input:required:invalid + label:before,
.label-float textarea:required:invalid + label:before,
{
  content: '*';
}
.label-float input:focus + label,
.label-float input:not(:placeholder-shown) + label,
.label-float textarea:focus + label,
.label-float textarea:not(:placeholder-shown) + label
{
  /*
  font-size: 13px;
  top: 0;
  color: var(--color-light);
  */
font-size: 13px;
  top: 0;
  /* color: var(--color-light); */
  
  border-radius: 4px;
  padding: 1px 7px;
  color: #000;
  
}

/* GALLERY */
.gallery-item {
    position: relative;
    margin-bottom: 24px;
    overflow: hidden;
}
.gallery-item:hover img {
    transform: scale(1.1);
}
.gallery-item img{
    width: 100%;
    transform: scale(1);
}



.imageGallery {
    display: flex;
    flex-wrap: wrap;
    padding: 0 4px;
}
.imageGallery .column {
    flex: 25%;
    max-width: 25%;
    padding: 0 4px;
}
.column img {
    margin-top: 8px;
    vertical-align: middle;
    width: 100%;
}

@media screen and (max-width: 768px) {
 .imageGallery .column {
    flex: 50%;
    max-width: 50%;
  }
}

/* BOOKING BUTTON */
.mobileBooking-btn {
    display:none;
}

.partners-banners {
    background: #8cb9df;
    padding: 20px;
}

.easepick-wrapper {
    z-index: 100;
}

/* MOBEL */
.greenPage footer {
 background: var(--color4);
}
.greenPage .powerdby
 {
    color: var(--color5);
}
.greenPage .bgImage:before {
    background: var(--color4);
}