@import url('https://fonts.googleapis.com/css2?family=Noto+Sans:ital,wght@0,100..900;1,100..900&family=Noto+Serif:ital,wght@0,100..900;1,100..900&display=swap');

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td { margin: 0px; padding: 0px; border: 0px none; outline: 0px none; font-weight: inherit; font-style: inherit; font-size: 100%; font-family: inherit;}
:focus { outline: 0px none; }
ol, ul { list-style: none outside none; }
strong{font-weight:400;}
a{color:#000;text-decoration:none;}
a:hover{color:#000;text-decoration:none;}
.clear{clear:both;}

html, body {
	position: relative;
	height: 100%;
}
body {
	background: #f9f7f3;
	font-family: 'Noto Sans', sans-serif;
	font-size: 14px;
	line-height:20px;
	color:#3D3D3B;
	margin:0;
	padding:0;
	transition: all 0.5s ease-in 0s;  
	overflow-x:hidden;
}
html {
	scroll-behavior: smooth;
  }
body.change-bg-white-complete { background: #fff; transition: all 0.5s ease-in 0s;   }
body.change-bg-beige-complete { background: #ebeced; transition: all 0.5s ease-in 0s;   }
body.change-bg-grey-complete { background: #d5deda; transition: all 0.5s ease-in 0s;   }

.no_scroll {
	overflow: hidden;
}

.m-t-10{
	margin-top: 10px;	
}
.m-t-20{
	margin-top: 20px;	
}
.m-t-40{
	margin-top: 40px;	
}
.m-t-60{
	margin-top: 60px;	
}
.m-t-100{
	margin-top: 100px;	
}
.p-b-220 {
	padding-bottom: 220px!important;
	overflow: visible!important;
}
.mar-top_neg{
	margin-top:-50px;
}
.padd{
	padding-top: 100px;
	padding-bottom: 100px;
	overflow:hidden;
	position:relative;
}

.no-padding {
	padding-left: 0px;
	padding-right: 0px;
}

.padd_contact {
	padding-top: 120px;
}

.padd_small{
	padding-top: 40px;
	padding-bottom: 40px;	
}
.padd_top{
	padding-top: 100px;
	padding-bottom: 0px;
	position:relative;	
}
.padd_big {
	padding-top: 150px;
	padding-bottom: 150px;
}

.padd_first {
	padding-top: 70px;
	padding-bottom: 120px;
}

.padd_bottom{
	padding-top: 0px;
    padding-bottom: 100px;	
}
.container-fluid.no-padd{
	padding-top: 0px;
	padding-bottom: 0px;
}
.img-responsive{
	width: 100%;
}
.fancybox-lock body {
    overflow: visible !important;
}
hr {
	border-top: 1px solid #305D74;
    width: 100%;
	margin-top: 0;
    margin-bottom: 0;
}
.row_half{margin-left:0px;margin-right:0px;}
.no-gutter > [class*='col-'],  .no-gutter .row > [class*='col-'] {
    padding-right:0;
    padding-left:0;
}
.no-margin.row {
    margin-right:0;
    margin-left:0;
}

.overflow {
	overflow: hidden;
}

label[for=NewsletterSignupEmail] {
	width: 0;
	height: 0;
	padding: 0;
	margin: 0;
	color: #fff;
	background-color: #00000001;
}

.visible {
	overflow: visible!important;
}

.no-margin.row  [class^="col-"],
.no-margin.row  [class*=" col-"] {
  padding-right: 0;
  padding-left: 0;
  position: relative;
}

.flex_center {
	display: flex;
	align-items: center;
}

.container-fluid.no-padding{
	padding-left:0px;
	padding-right:0px;
	overflow: hidden;
}

.grey_bg{
	background: #CFCDC8;
    position: relative;
    display: flex;
}
.green_bg{
	background: #6f9999;
    position: relative;
    display: flex;
}
.cyan_bg{
	background: #5fa3a5;
	position: relative;
    display: flex;
}
.pink_bg{
	/* background: #e7d8da; */
	position: relative;
	/* display: flex */
}
.pink_bg::before{
	content: "";
	background: #e7d8da;
	position: absolute;
    top: 0;
    width: 100%;
    height: 65vh;
    z-index: -1;
}
.beige_bg{ background: #e8d8c3;}
.grey_upper{background:#f7f7f7;padding-bottom:110px;border-bottom:1px solid #eee}
.shrinkIt{font-size:21px !important;}

.pagination {
    display: flex;
    justify-content: center;
	color: #305D74;
    font-family: 'Noto Serif', serif;
    font-size: 22px;
    font-style: italic;
    font-weight: 250;
    line-height: 28px;
}
.pagination span.stats{
	padding-right: 100px
}
.pagination span.next-prev{
	font-family: 'Noto Sans', serif;
    font-style: initial;
    padding-left: 100px;
    display: inline-flex;
    gap: 20px;
}
.page-navigation-list{
	display: inline-flex;
    gap: 15px;
}
.page-navigation-list span{
	border: 1px solid #305D74;
    border-radius: 50%;
    width: 45px;
    height: 45px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
}
.page-navigation-list span.current{
	background: #305D74;
	color: #fff;
}
.pagination a{
	color: #305D74;
}
/* ============== REVIEWS =================== */

#show_reviews {
	position: fixed;
    z-index: 99;
    display: block;
    width: 200px;
    height: auto;
    bottom: 25px;
    left: 25px;
	background: #fff;
    border: 1px solid #889566;
    color: #333;
    padding: 20px 20px 10px 20px;
    text-align: center;
    transition: all .4s ease-out;
}
  
#show_reviews a span.hide_text{
	display:none;
}
  
#show_reviews:hover{ 
	color:#f90;  
	transition: all .4s ease-out;
}

#show_reviews i{   
	font-size:40px; 
	margin-bottom:10px;   
}

#show_reviews p{   
	font-size:16px; 
	margin: 0;  
}
  
#show_reviews .close_reviews {
	position: absolute;
    width: 30px;
    height: 30px;
    background: #889566;
    top: -10px;
    font-size: 18px;
    left: -10px;
    padding-top: 1px;
    border-radius: 50%;
    color: #fff;
    z-index: 10000;
    cursor: pointer;
    border: 1px solid #02020247;
}

.review_box {
	text-align: center;
	border-bottom: 1px solid #889566;
	padding-bottom: 3px;
}

.review_box.last {
	border-bottom: none;
	padding-top: 12px;
}

.review_box p {
    padding: 10px 0;
    margin-bottom: 0;
	color: #444;
	font-weight: 300;
}

.review_box p span {
	font-size: 22px;
    line-height: normal;
    font-weight: 400;
}

.review_box p span.sec {
	font-size: 16px;
    line-height: normal;
    font-weight: 300;
    margin-left: 12px;
}

.review_box p.rate {
	font-size: 27px;
}

.styled_btn{
	position: fixed;
    left: 0px;
    bottom: 0px;
    z-index: 999;
    border-radius: 0px;
    background: #3b3b3b;
    color: white;
    border: none;
    border: 1px solid #3b3b3b;
    padding: 6px;
    font-weight: 200;
    padding: 5px 19px;
    border-top-right-radius: 5px;
}

/* ================ END REVIEWS ================ */

.drive_me{
	margin-top:20px;
	display: block;
}

.hotel_history{padding-bottom:30vh;}

.page_intro.hotel{overflow: hidden;padding-bottom: 70px;}
.page_intro.hotel img{border-radius:0;}
.page_intro.hotel .intro_image{position: relative;}
.page_intro.hotel .intro_image::after {
    content: "";
    background-color: #ebe2c7;
    border-radius: 50%;
    bottom: -85px;
    position: absolute;
    right: -95px;
    width: 200px;
    height: 200px;
    z-index: -1;
}
.hotel_details{
	display: flex;
	align-items: center;
	position: relative;
}

.hotel_details .page_inner p{padding: 10px 0;}
.hotel_services ul{
	display: flex;
    flex-wrap: wrap;
}
.hotel_services ul li{
	width: 50%;
}
.page_details .hotel_services{padding-top:120px}

.name_moto{
	background:#000000;
	padding:5%;
}
.name_moto hr{
	border:1px solid #674439;
}
.home_half_text .name_moto p{
	font-family: 'Noto Sans', serif;
	font-style: italic;
	font-size:20px;
	letter-spacing: 0.1px;
	color: #fffbeb;
}

.home_half_text .name_moto p:before{
	display:inline;
	font-size: 6em;
	padding: 0;
	color:#fff;
	position: relative;
	top: .25em;
	quotes: "“" "“" "“" "“";
	content: open-quote;
}

#show_991 {
	display: none;
}

.more{
	font-size: 19px;
    line-height: normal;
    color: #fff;
    position: relative;
    text-decoration: none;
    padding: 18px 54px;
    margin-top: 30px;
    display: block;
    background: #3b3b3b;
    width: fit-content;
    font-weight: 300;
    transition: all 0.3s ease-in-out;
}

.more.center {
	margin: 40px auto 0 auto;
}

.more.white {
	color: #fff;
    font-size: 19px;
	border: 1px solid #ccc;
}

.more::before {
	content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: opacity 0.3s, border 0.3s;
}

.more:hover::before {
	opacity: 0;
}

.more:hover {
	color: #fff;
}

.more::after {
	content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #5fa3a5;
    border-color: transparent;
    transform: translate(0px, 0px) scale(0.1);
    opacity: 0;
    z-index: -1;
    transition: transform 0.3s, opacity 0.3s, background-color 0.3s;
}

.more:hover::after {
	opacity: 1;
	transform-origin: 52px 50px;
	transform: scale(1) translate(0px, 0px);
}

.header {
    width: 100%;
    height: auto;
    margin: 0;
    position: relative;
    /* position: fixed; */
    z-index: 999;
    transition: padding 0.3s ease, border-color 0.3s ease, background-color 0.3s ease;
    align-items: center;
	border-bottom: 1px solid #fff;
	padding: 10px 8.333% 10px 8.333%;
}

.header_wrapper {
    position: fixed;
	top: 0;
	left: 0;
	right: 0;
	width: 100%;
    z-index: 1001;
    color: #000;
	/* animation: slide-down 0.7s; */
    transform: translateZ(0);
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;

    display: flex; 
    height: auto;
}

.top_info {
	display: flex;
    align-items: center;
}

.book_mob {
	display: none;
}
.header .book_button.white{
    display: flex;
    justify-content: flex-end;
    color: #fff;
    font-family: 'Noto Serif', serif;
    font-size: 22px;
    font-style: italic;
    font-weight: 200;
    line-height: 28px;
    position: relative;
}
.header .book_button.white::after{
	content: '';
    background-image: url(../img/layout/icons/wavy_line_white.svg);
    background-size: 100%;
    width: 100%;
    height: 6px;
    position: absolute;
    background-repeat: no-repeat;
    margin-top: 33px;
    left: 0;
}
.top_info_left {
	display: inline-flex;
    align-items: center;
}

#top_phones, #top_mail {
	transition: all 0.3s ease-in-out;
}

#top_phones img {
	width: 42px;
	transition: all 0.3s ease-in-out;
}

.sticky #top_phones img {
    width: 35px;
}

#top_mail img {
	width: 19px;
}

#top_info { position:absolute; top: 0px; right: 335px; display: block;z-index:999;  font-weight:400; font-size:15px; color:#fff; transition:all 1s;}
#top_info_mob { position:absolute; top: 50px; right: 360px; display: block;z-index:9999;  font-weight:400; font-size:15px; color:#fff; transition:all 1s;}
#top_info_right { position:absolute; top: 50px; right: 300px; display: block;z-index:999;  font-weight:400; font-size:15px; color:#fff; transition:all 1s;}
.top_info_right{top: -5px; position: relative;}
#top_info a, #top_info_right a { color:#fff; transition:all 0.3s ease-in-out; }
#top_info a:hover, #top_info_right a:hover { letter-spacing: 0.5px; }
#top_info img, #top_info_right img, #top_info_mob img { width: 43px; height: 43px; margin-right: 12px; }
#top_info span { display: inline-block; }
#lang_info {
	display: block;
    z-index: 999;
    margin-left: 15px;
}
#lang_info a{ color:#fff; transition:all 1s;font-family: 'Noto Serif';font-weight: 200; font-size: 22px;}
#lang_info_mobile{display: none}
.caret {
    display: none
}

#lang_mob { position:absolute; top: 50px; left: 215px; display: block;z-index:9999;  font-weight:400; font-size:15px; color:#fff; transition:all 1s; }
#lang_mob a{ color:#fff; transition:all 1s;}

#header.fixed #top_info, #header.fixed #top_info_right { top: 20px; transition:all 1s;}
#header.fixed #top_info a, #header.fixed #top_info_right a { color:#202020; }

#header.fixed #lang_info { top: 30px; transition:all 1s;}
#header.fixed #lang_info a{ color:#606060; transition:all 1s;}
#header.fixed .languages_menu.active { box-shadow: 0 2px 6px rgb(0 0 0 / 20%); background: rgb(227 223 218); }


/* ============================ MENU DROPDOWN ============================ */

.rooms-trigger-menu, .experience-trigger-menu{position: relative;display: inline-block;}
.dropdown_rooms_menu, .dropdown_experience_menu {
	display: none;
	position: absolute;
	background-color: #F7F6F5;
	min-width: 160px;
	box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
	z-index: 1;
	padding:10px 10px;
  }
  .dropdown_rooms_menu ul li, .dropdown_experience_menu ul li{padding:5px 15px;}
  .dropdown_rooms_menu ul li a, .dropdown_experience_menu ul li a{color:#94A069;}
  .rooms-trigger-menu:hover .dropdown_rooms_menu, .experience-trigger-menu:hover .dropdown_experience_menu {display: block;}


#menu {
    padding: 12px 0;
}
#header-placeholder {
    height: 0;
    transition: height 0.2s ease;
}

.sticky {
	position: fixed;
	top: 0;
    left: 0;
    right: 0;
	width: 100%;
    z-index: 1200;
    will-change: transform;
    transform: translateZ(0);
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
	/* animation: slide-down 0.7s; */
	/* transition: all 0.3s ease-in-out; */
	
	animation:header-slide-down 0.7s; 
}  

@keyframes header-slide-down {
     0% {
        transform: translateY(-100%);
    } 
    100% {
        transform: translateY(0);
    } 
}
.sticky #menu {
	display: none;
}

.sticky .header {
	border-bottom: none;
    background: #5fa3a5;
    padding: 0px 8.333%;
	margin-top: 0;
}

.sticky #logo {
	width: 165px;
    height: 60px;
    margin: 15px auto 15px auto
}

.languages {
	display: inline-flex;
    z-index: 9999;
	transition: all 0.5s ease-in-out;
	flex-direction: row;
	position: relative;
}

#lang_info .languages:hover a {
    color: #fff;
	transition: all 1s;
}

.languages  a.selected_lang{
	display: block;
    padding: 12px 13px;
    background: none;
    text-align: center;
    font-weight: 300;
    font-size: 21px;
    z-index: 9999;
    color: #fff;
    text-decoration: none;
    transition: all 1s;
	position: relative;
}

.languages a.selected_lang::after{
    content: '';
    background-image: url(../img/layout/icons/arrow_down_white.svg);
	background-size: 14px;
    width: 16px;
    height: 10px;
    position: absolute;
    background-repeat: no-repeat;
    margin-top: 5px;
    margin-left: 7px;
    transform: rotate(-90deg);
}
.languages .languages_menu {
    display: block;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    left: 100%;
    top: 5px;
    padding: 3px 2px;
    text-align: center;
    margin-left: 7px;
    transform: translateX(-8px);
    transition: opacity 0.35s cubic-bezier(.4,0,.2,1), transform 0.35s cubic-bezier(.4,0,.2,1);
    z-index: 99999;
}
.phones .phones_menu{display: none;}
.languages:hover .languages_menu,
.languages .languages_menu.active {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
}
.phones .phones_menu.active{
	display: block;
    margin-top: 1px;
    padding: 12px 12px;
    color: #fff;
    text-align: center;
    z-index: 99999;
    position: absolute;

}
#lang_info .languages .languages_menu a,.phones .phones_menu.active a { 
	color: #fff;
    display: block;
	font-family: 'Noto Serif';
    font-weight: 200;
    font-size: 22px;
    padding: 4px 4px !important;
    transition: all 0.3s ease 0s;
}
#lang_info .languages .languages_menu a:hover, .phones .phones_menu.active a:hover { color:#fff; transition: all 0.3s ease 0s;   }

#logo {
	margin: 20px auto 20px auto;
    display: block;
    width: 200px;
    height: 60px;
    background: url(../img/layout/logo.svg) no-repeat scroll center center;
    background-size: 100%;
    z-index: 9999;
    transition: all 0.5s ease-in-out;
}
#logo_mob { position:absolute; display: block; width: 220px; height: 140px; background: url('../img/layout/logo.svg') no-repeat scroll center center; background-size:100%;z-index:999; transition:all 1s; margin-left: 30px; }
#logo a, #logo_mob a { display: block; width: 100%; height: 100%;text-indent: -999999px!important; background: #00000001; }

.open_menu {
	position: relative;
    display: none;
    font-weight: 400;
    z-index: 999;
    transition: all 1s;
}

.close_menu {
	display: none;
}

.open_menu.inactive {
	display: none;
}

.close_menu.active {
	display: block;
}

.top_info_right img {
	display: none;
}

img.dark_call, img.dark_email { display: none; }
#header.fixed img.white_call, #header.fixed img.white_email { display: none; }
#header.fixed img.dark_call, #header.fixed img.dark_email { display: inline-block; }

#header.fixed .open_menu { color:#202020; top: 10px; transition:all 1s; }
#header.fixed .open_menu img.dark_menu{display:inline-block;}
#header.fixed .open_menu img.white_menu{display:none;}

.responsive_menu ul li .dropdown_rooms,
.responsive_menu ul li .dropdown_sights {
    width: 100%;
    color: #fff;
    transition: all ease-in-out .3s;
    -webkit-transition: all ease-in-out .3s;
    -moz-transition: all ease-in-out .3s;
    display: none;
}
.responsive_menu ul li .dropdown_rooms.active, .responsive_menu ul li .dropdown_sights.active { display: block; }

.responsive_menu ul li .dropdown_rooms ul {
	display: inline-block;
    padding: 2px 0;
    margin: 10px auto 5px auto;
    border: none;
}

.responsive_menu ul li .dropdown_rooms ul li {
  position: relative;
  display: inline-block;
  transition: all ease-in-out .3s;
  margin-bottom: 0;
}

.responsive_menu ul li .dropdown_rooms ul li a {
	display: block;
    padding: 3px 0 0 0;
    line-height: 1.5;
    transition: all ease-in-out .3s;
    color: rgba(255, 255, 255, 0.6);
    font-size: 18px;
    border: none;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 2px;
}

.responsive_menu ul li .dropdown_rooms ul li.first a {
	width: fit-content;
    margin: 0 auto;
    padding: 6px 25px;
    color: #5fa3a5;
    background: #fff;
    margin-top: 15px;
    border-radius: 30px;
}
.responsive_menu ul li a.rooms-trigger{position: relative;}
.responsive_menu ul li a.rooms-trigger::after {
    content: '';
    background-image: url(../img/layout/arrow_down.svg);
    background-size: 17px;
    width: 20px;
    height: 12px;
    position: absolute;
    background-repeat: no-repeat;
    margin-top: 7px;
    margin-left: 11px;
}

.open_menu {
	display: block !important;
}
.open_menu img.white_menu {
	width: 48px;
	height: 18px;
}
.close_menu {
	display: none !important;
}
.close_menu.active {
	display: block !important;
	position: fixed;
	top: 25px;
	left: 25px;
	z-index: 99999;
}
.open_menu.inactive {
	visibility: hidden;
	opacity: 0;
	pointer-events: none;
}
.responsive_menu {
	position: fixed !important;
	left: 0;
	top: 0;
	width: 100vw;
	height: 100vh;
	z-index: 9999;
	transform: translateX(-100%);
	transition: transform 0.4s ease-in-out;
}
.responsive_menu.active {
	transform: translateX(0);
}

ul.menu {
	display: flex;
	justify-content: center;
	position: relative; 
}
ul.menu::before{
	content: "";
	position: absolute;
	top: 20px;
	left: 0;
	width: 28%;
	height: 1px; 
	background-color: white; 
}
ul.menu::after{
	content: "";
	position: absolute;
	top: 20px;
	right: 0;
	width: 28%;
	height: 1px; 
	background-color: white; 
}
.menu li {
	font-size: 19px;
    display: inline-block;
    padding: 10px 25px;
}


.menu li a {
    color: #fff;
    font-weight: 200;
    transition: all 0.3s ease-in-out;
    background: #00000001;
    position: relative;
    text-decoration: none;
}

.menu li a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -2px; /* Adjusts the distance of the underline from the text */
    width: 0;
    height: 1px;
    background-color: #fff;
    transition: width 0.5s ease-in-out;
}

.menu li a:hover {
    color: #fff;
}

.menu li a:hover::after {
    width: 100%;
}

.close_menu {
	background: url(../img/layout/icons/close.svg) no-repeat center;
    background-size: 48px;
    width: 50px;
    height: 38px;
    background-position: center;
    text-indent: -999999px!important;
    z-index: 9999;
	margin-top: 0;
	background-color: #00000001;
}

#book_now {
	position: absolute;
    top: 0px;
    right: 150px;
    display: block;
    font-weight: 400;
    font-size: 20px;
    z-index: 999;
    color: #fff;
    text-decoration: none;
    transition: all 1s;
    border-bottom: 2px solid #fff;
    padding: 5px 30px 7px 0;
}
#book_now:hover{
	padding-right: 38px;
}

.responsive_menu #book_now {
    top: 50px;
    color: #362211;
    border-bottom: 2px solid #362211;
}

#header.fixed #book_now {
	color: #606060;
    top: 20px;
    transition: all 1s;
    border-bottom: 2px solid #606060;
    background: none;
}

#header.fixed .responsive_menu #book_now {
	color: #362211;
    border-bottom: 2px solid #362211;
	top: 40px;
	display: block;
}

#header.fixed { height: 110px; padding: 0px 7%; background: #F4F3F2; box-shadow: 0 2px 6px rgb(0 0 0 / 20%); }
#header.fixed #menu {
	display: none;
}

#header.fixed .top_info {
    border-bottom: none;
}

@keyframes slide-down {
    0% {
        transform: translateY(-100%);
    } 
    100% {
        transform: translateY(0);
    } 
}


.booking_box{
	position: fixed;
	left: 0;
	top: 0px;
	height: 100%;
	width: 100%;
	background: #272727;
	color:#fff;
	z-index: 999;
	padding: 50px 0 50px 0;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	overflow: auto;
	/* this fixes the buggy scrolling on webkit browsers - mobile devices only - when overflow property is applied */
	-webkit-overflow-scrolling: touch;
	-webkit-transform: translateX(-100%);
	transform: translateX(-100%);
	transition-property: -webkit-transform;
	transition-property: transform;
	transition-property: transform, -webkit-transform;
	transition-duration: 0.4s;
}
.booking_box.active {
	-webkit-transform: translateX(0);
	transform: translateX(0);
}

.booking_box form{ margin: 0 auto; padding: 0px 0 0 0; display:block;   }
.booking_box .book_title{ margin-bottom:40px; }
.booking_box .book_title p{ font-size:30px; line-height:36px;color:#fff; font-weight:300; margin-bottom:20px;  }
.booking_box .book_title p.book_subtitle{ font-size:15px; font-weight:400; line-height:24px;}
.booking_box .book_info { border-bottom:1px solid #8d867d; padding-bottom:20px; margin:0 20px; text-align:center;}
.booking_box .book_info  label{font-size:24px;display:block;font-weight:300; margin-bottom:20px;}
.booking_box .book_info input{ width:100%;height:50px;display:block;color:#fff;background: #272727; border:none; margin:0px;padding:0px; text-align:center; font-size:30px; line-height:40px;font-weight:300; cursor:pointer; }
.booking_box .book_info select{ width:100%;height:50px;display:block;color:#fff;background: #272727; border:none; margin:0px;padding:0px; text-align:center; font-size:30px; line-height:40px;font-weight:300;cursor:pointer; text-align-last:center;-webkit-appearance: none;    -moz-appearance: none;    appearance: none;}
.booking_box .book_submit { margin-top:60px; text-align:center;	}
.booking_box .book_submit button {
	color:#fff;
	border:none;
    border-bottom: 1px solid #8d867d;
	background:none;
    cursor: pointer;
    display: inline-block;
	font-size:18px;
    font-weight: 400;
    letter-spacing: 0.2em;
    margin-bottom: 15px;
    margin-top: 20px;
    overflow: hidden;
    position: relative;
    text-transform: uppercase;
	transition: all 0.3s ease 0s;

}

.banner_book_form #booking_form .book_submit button{padding: 11px;font-weight: 400;background: #d88b7a;color: #fff;font-size: 14px;}
.banner_book_form #booking_form .book_submit{padding: 0;}

.banner_book_form #booking_form .book_submit button::before { content: ""; position: absolute; z-index: -1; top: 0px; left: 0px; right: 0px; bottom: 0px; color:#fff; background: #8e8783 none repeat scroll 0% 0%; -webkit-transform: scaleX(0); transform: scaleX(0); -webkit-transform-origin: 0px 50% 0px; transform-origin: 0px 50% 0px; transition-property: -webkit-transform; transition-property: transform; transition-property: transform, -webkit-transform; transition-duration: 0.3s; transition-timing-function: ease-out; }
/* .banner_book_form #booking_form .book_submit button:hover::before, .banner_book_form #booking_form .book_submit button:focus::before, .banner_book_form #booking_form .book_submit button:active::before { -webkit-transform: scaleX(1); transform: scaleX(1);background:#d88b7a!important; color:#fff!important; } */

#booking_form .book_submit button:hover, #booking_form .book_submit button:focus, #booking_form .book_submit button:active{background:#d88b7a!important; color:#fff!important;}

.banner_book_form #booking_form{
	display: flex;
}
.banner_book_form{
	display: flex;
	justify-content: center;
    align-items: center;	
}
.banner_book_form h5{font-size: 21px;padding-bottom: 4px;}
.banner_book_form p{font-size: 15px; font-weight: 100;padding-right: 40px;}
.book_text{text-align: left;}

/* ===== Inline booking form row ===== */
.bform_row {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: 10px;
}

.bform_field {
    display: flex;
    flex-direction: column;
    gap: 5px;
    width: 18%;
}

.bform_field input, .bform_field select {
    height: 46px;
    /* padding: 0 14px; */
    border: none;
    border-right: 1px solid #305D74;
    color: #305D74;
    font-size: 18px;
    font-family: 'Noto Serif', serif;
    font-style: italic;
    outline: none;
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;   
	font-weight: 300;
    transition: border-color 0.2s ease, background 0.2s ease;
	background: transparent;
    width: 100%;
}

.bform_field input::placeholder {
    color: #305D74;
    font-style: italic;
    font-family: 'Noto Serif', serif;
    font-size: 18px;
	font-weight: 300;
    opacity: 1;
}

.bform_field select option:first-child {
    color: #305D74;
}

.bform_field--select select {
    background-image: url(../img/layout/icons/arrow_down.svg);
    background-repeat: no-repeat;
    background-position: right 20px center;
    background-size: 10px;
    padding-right: 30px;
	/* position: relative; */
}
/* .bform_field--select select::after {
	content:'';
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translateY(-50%);
	background-image: url(../img/layout/icons/arrow_down.svg);
    background-repeat: no-repeat;
    background-position: right 10px center;
    background-size: 11px;
} */
.bform_field--select select option {
    color: #333;
    background: #fff;
}

.bform_field--submit {
    align-self: flex-end;
	width: auto!important;
}

.bform_field--submit button {
	height: 46px;
    padding: 10px 40px;
    background: #d88b7a;
    color: #fff;
    border: none;
    font-size: 18px;
    font-weight: 250;
    cursor: pointer;
    white-space: nowrap;
    transition: background 0.25s ease;
    border-radius: 5px;
    font-family: 'Noto Serif';
    font-style: italic;
}

.pika-single {
    z-index: 99999 !important;
    font-family: inherit;
    font-size: 13px;
}

.check-rates, .booking_second_row{display: flex;}
.online_book {
    min-height: 10vh;
    display: flex;
    align-items: center;
    justify-content: flex-end;
	z-index: 1;
	
}
.rooms_home{
	padding-bottom: 150px;
	border-bottom: 1px solid #305D74;
}
.rooms_home_banner .online_book {
	padding-bottom: 50px
}
.book_info label, .book_info input {
    border-radius: 0;
    font-size: 14px;
    display: block;
    background: #fff;
    font-weight: 400;
    text-align: center;
    padding: 13px 15px 13px 35px;
}

#header.fixed  #logo {
	width: 130px;
    height: 90px;
    margin-top: 10px;
}

.responsive_menu{   
	position: fixed;
    left: -2px;
    top: 0px;
    margin: 0 auto;
    height: 100svh;
    width: 30vw;
    display: block;
    color: #3D3D3B;
    z-index: 999;
    background: #5fa3a5;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    overflow: hidden;
    -webkit-overflow-scrolling: touch;
    -webkit-transform: translateX(-100%);
    -moz-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    -o-transform: translateX(-100%);
    transform: translateX(-100%);
    -webkit-transition-property: -webkit-transform;
    -moz-transition-property: -moz-transform;
    transition-property: transform;
    -webkit-transition-duration: 0.4s;
    -moz-transition-duration: 0.4s;
    transition-duration: 0.4s;
	
}
.responsive_menu .responsive_menu_container {   
	width: 100%;
    min-height: 100%;
    margin: 0 auto;
    position: relative;
    display: flex;
    justify-content: space-between;
	flex-direction: column;
	align-items: center;
	padding-top: 15vh;
	padding-bottom: 20px;
    overflow-y: visible;
}
.responsive_menu.active {   
	-webkit-transform: translateX(0);
	-moz-transform: translateX(0);
	-ms-transform: translateX(0);
	-o-transform: translateX(0);
	transform: translateX(0);
	overflow-y: auto;
	box-shadow: 8px 12px 24px rgba(0, 0, 0, 0.10);
}

.responsive_menu.active .hero_bg {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    /* animation: unset; */
	/* animation: grow 40s linear 10ms infinite; */
    transition: all 0.2s ease-in-out;
}

.menu_bg_image {
    display: none;
}

.menu_images {
    position: relative;
    width: 100%;
    height: 400px;
    max-height: 35vh;
    flex-shrink: 1;
    margin-top: 30px;
    overflow: hidden;
	/* overflow-y: scroll; */
    /* border-radius: 10px; */
}
.menu_images .contact_wrapper.inner_menu {
    opacity: 1;
    transition: opacity 0.2s ease;
    overflow-y: visible;
}
.menu_images.is-hovering .contact_wrapper.inner_menu {
    opacity: 0;
    pointer-events: none;
}
.menu_images .menu_hover_img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
	padding-bottom: 15px;
    object-fit: cover;
    /* border-radius: 10px; */
    opacity: 0;
    transform: scale(1.08);
    filter: brightness(0.7);
    transition: opacity 0.5s cubic-bezier(.4,0,.2,1), transform 0.8s cubic-bezier(.4,0,.2,1), filter 0.5s ease;
}
.menu_images .menu_hover_img.active {
    opacity: 1;
    transform: scale(1);
    filter: brightness(1);
}
.responsive_menu_container {
    position: relative;
    z-index: 1;
}

.responsive_menu ul{ margin: 0 auto;  padding: 0px 0 0 0; width: 100%;  float: left;  list-style: none; }
.responsive_menu ul li{
	width: 100%;
    display: block;
	margin-bottom: 7px;
    color: #fff;
    font-size: 17px;
    font-family: 'Noto Sans', serif;
    font-weight: 300;
	text-align: center;
}
.responsive_menu ul li a{
	display: block;
    position: relative;
    z-index: 9999;
    color: #fff;
    padding: 7px 0px;
	background: #00000001;
    text-align: center;
    transition: all 0.3s ease-in 0s;
	font-weight: 200;
    font-family: 'Noto Serif', serif;
    font-size: 24px;
    font-style: italic;
}

.responsive_menu ul li.hide_item {
	display: none;
}

.contact_menu .footer_social {
    border-top: 2px solid #fff;
}
.responsive_menu .contact_menu ul li {
    margin-bottom: 7px;
	background: #00000001;
}

.responsive_menu .contact_menu ul li.menu_social {
	margin-top: 20px;
    margin-bottom: 0;
}

.responsive_menu .contact_menu ul li.menu_social a {
    display: inline-block;
}

.responsive_menu .contact_menu ul li a {
	font-size: 17px;
    color: #fff;
    padding: 2px 0;
}

.responsive_menu ul li a span{  font-size: 16px; font-weight:300;  color:#333; padding:0px 10px 0px 0px; font-weight:300;transition: all 0.3s ease-in 0s;}
.responsive_menu ul li.book_now_menu_item{ display: none;}

.book_menu{position: absolute; top:20px;left:20px;}
.book_menu a{  display: block;   font-weight: 400;    font-size: 14px;    z-index: 999;    color: #fff;    text-decoration: none;    transition: all 1s;    border: 1px solid #fff;
    padding: 10px;    background: rgba(0,0,0,.2); }

.book_menu a:hover {color: #fff!important;		transition: all 0.3s ease 0s;}
.book_menu a:hover:before {    transform: scaleX(1);    transform-origin: left 50%;    width: 100%;    height: 100%;    display: block;}

.responsive_menu .extra_links {
    position: relative;
    top: 300px;
    display: block;
    width: fit-content;
    padding-left: 20px;
    margin-left: 10px;
    border-left: 1px solid #fff;
}

.responsive_menu .extra_links p {
	font-size: 16px;
    font-family: 'Noto Sans', sans-serif;
    font-weight: 300;
    color: #fff;
    margin-bottom: 10px;
	letter-spacing: 1px;
	text-transform: uppercase;
}

.responsive_menu .extra_links p a {
	color: #362211;
	transition: all 0.3s ease-in-out;
}

.responsive_menu .extra_links p a:hover {
	letter-spacing: 0.5px;
}

.responsive_menu .contact_menu{
	padding: 30px 10px;
    display: block;
    margin: 5% 10% 0 10%;
    background: #5fa3a5;
    outline: 1px solid #fff;
    outline-offset: 5px;
}

.responsive_menu .contact_menu ul {
	width: 100%;
    margin: 0;
}

.menu_graphic {
	position: absolute;
    width: 120px;
    margin-top: -55px;
    margin-left: -60px;
}
.responsive_menu .contact_menu span{
	display: inline-block;
	font-size: 18px;
    margin: 10px 0px 10px 0px;
    color: #362211;
    text-align: center;
    font-family: 'Noto Sans', sans-serif;
    font-weight: 500;
}

.responsive_menu .contact_menu span a {
	color: #362211;
}

.responsive_menu .contact_menu img{ width: 22px;  display: inline-block; margin-right:5px; vertical-align:middle;  }

.menu_social {
	display: flex;
    align-items: center;
	margin-right: 50px;
}

.responsive_menu .menu_social img {
	width: 15px;
	margin-right: 20px;
}

.responsive_menu .menu_social img.instagram {
	width: 26px;
}

.responsive_menu .menu_social img.twitter {
	width: 28px;
}


.contact_menu_container{width:100%;margin:0 auto;}


/* Newsletter */

.newsletter {
	display: flex;
    position: relative;
    align-items: center;
    flex-direction: column;
    justify-content: center;
	padding: 170px 0 80px 0;
	margin-top: 80px;
}

.newsletter_title {
	font-size: 62px;
    line-height: 62px;
    margin-bottom: 20px;
    font-family: 'Noto Sans', serif;
    font-weight: 600;
    color: #5fa3a5;
}

.newsletter_subtitle {
	font-size: 21px;
    font-weight: 200;
    color: #333;
    line-height: normal;
    letter-spacing: 1px;
    margin-bottom: 35px;
}

.newsletter-input {
	width: 23%;
    text-align: center;
}

.newsletter-input input {
	border: none;
    border-bottom: 1px solid #3b3b3b;
    width: 100%;
    font-size: 21px;
    font-weight: 300;
    color: #3b3b3b;
    padding-bottom: 18px;
	text-align: center;
    background: none;
}

.newsletter-input input::placeholder {
	color: #3b3b3b;
}

.newsletter-input .submit input {
    background: none;
    border: 1px solid #3b3b3b;
    color: #000;
    font-weight: bold;
    font-size: 21px;
    transition: all 0.3s ease-in-out;
    width: fit-content;
    padding: 20px 50px;
    margin-top: 25px;
    font-family: 'Noto Sans', serif;
}

.newsletter-input .submit input:hover {
	background-color: #5fa3a5;
	color: #fff;
	border: 1px solid #5fa3a5;
}

.newsletter_bg {
	background-image: url(../img/layout/newsletter_graphic.svg);
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    width: 100%;
    height: 310px;
    top: 0px;
    z-index: -1;
}

/* Footer */
.padd_prefooter{
	background: #f9f7f3;
    overflow: hidden;
    overflow-x: hidden!important;
    position: relative;
}

.footer_mobile {
	display: none;
}

.logo_bg_footer {
    text-align: center;
    padding: 50px 0 50px 0;
	position: relative;
	z-index: 100;
}

.footer_wrapper {
	padding: 60px 0px 60px 0px;
	position: relative;
	display: flex;
	flex-direction: column;
    border-top: 1px solid #305D74;
	z-index: 9;
}
.footer_menu.desktop{display: flex;}
.footer_menu.mobile{display: none;}
.footer_menu{
	display: flex;
	justify-content: space-between;
	
}
.footer_menu ul{
    display: inline-flex;
    gap: 60px;
    align-items: center;
}
.footer_menu ul li{
    color: #305D74;
    font-family: 'Noto Serif', serif;
    font-size: 30px;
    font-style: italic;
    font-weight: 250;
    line-height: 28px;
    margin-bottom: 10px;
}

.footer_menu ul li a{
	color: #305D74;
	position: relative;
	display: inline-block;
	/* padding: 0 30px */
}

.footer_menu ul li a::after {
	content: '';
	position: absolute;
	left: 0;
	bottom: -12px;
	width: 100%;
	min-width: 100px;
	height: 7px;
	background-image: url(../img/layout/icons/wavy_line.svg);
	background-repeat: no-repeat;
	background-size: contain;
	clip-path: inset(0 100% 0 0);
	left: 50%; 
	transform: translateX(-50%);
	transition: clip-path 0.6s ease;
}

.footer_menu ul li a:hover::after {
	clip-path: inset(0 0 0 0);
}

.footer_menu .book_button{
    display: flex;
    align-items: center;
	color: #305D74;
    font-family: 'Noto Serif', serif;
    font-size: 28px;
    font-style: italic;
    font-weight: 300;
    line-height: 28px;
    margin-bottom: 10px;
	position: relative;
	transition: all 0.5s ease-in-out;
}
.footer_menu .book_button::after{
	content: '';
    background-image: url(../img/layout/icons/wavy_line.svg);
    background-size: 110%;
    width: 110%;
    height: 7px;
    position: absolute;
    background-repeat: no-repeat;
    margin-top: 50px;
	left: -5%;
	transition: transform 0.5s ease;
}

.footer_box .book {
	padding: 20px 50px;
    color: #305D74;
    border: 1px solid #305D74;
	border-radius:30px;
    display: block;
    width: fit-content;
    font-size: 15px;
    margin: 0 auto 25px auto;
    font-family: 'Noto Sans', serif;
	font-weight: 100;
	letter-spacing: 2px;
	transition: all 0.5s ease-in-out;
    position: relative;
}

.footer_box {
	text-align: left;
}
.footer_box h6{
	font-size: 24px;
    font-weight: 300;
    margin-bottom: 10px;
    line-height: normal;
    color: #305D74;
	letter-spacing: 1px;
    font-family: 'Noto Sans', serif;
}

.footer_box img {
	width: 15px;
    margin-right: 10px;
}

.footer_box img.footer_first_img {
	width: 13px;
}
.footer_box_container ul { margin-top:18px; padding-top:25px; border-top:2px solid #674439; display: flex; list-style: none;  justify-content: space-between;}
.footer_box_container ul li{ overflow:hidden;height:20px; position:relative;}
.footer_box_container ul li a{ display:block; text-transform:uppercase; color: #333; font-size:16px;font-weight:400; margin-right:18px; transition: all 0.3s ease 0s;}
.footer_box_container ul li a:hover{  color: #674439;  transition: all 0.3s ease 0s;}

.footer_box p{
	color: #305D74;
	font-size: 18px;
    transition: all 0.3s ease-in-out;
    font-weight: 300;
    padding: 0;
    line-height: 40px;
}
p.footer_subtitle{
    color: #305D74;
    font-family: 'Noto Serif', serif;
    font-size: 28px;
    font-style: italic;
    font-weight: 250;
    line-height: 28px;
    margin-bottom: 15px;
}
.footer_desktop{
    display: flex;
    justify-content: space-between;
}
.footer_box p.google_maps{    
	padding-top: 50px;
    padding-bottom: 15px;
    border-bottom: 2px solid #305D74;
    width: fit-content;
    margin: 0 auto;
    letter-spacing: 1px;
}
.footer_box p a { color: #305D74; font-weight: 300; font-size: 18px; padding: 0; transition: all 0.3s ease-in-out; position: relative; display: inline-block; }
.footer_box p.phone_number a {font-size: 22px;}
.footer_box p a.phone_sec, .footer_box p a.mail_sec {
	margin-left: 25px;
}

.footer_box p.newsletter_subtitle {
	line-height: 28px;
	margin-bottom: 15px;
}

.footer_box p a::after {
	content: '';
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: -2px;
	width: 100%;
	min-width: 80px;
	height: 7px;
	background-image: url(../img/layout/icons/wavy_line.svg);
	background-repeat: no-repeat;
	background-size: contain;
	clip-path: inset(0 100% 0 0);
	transition: clip-path 0.6s ease;
}

.footer_box p a:hover::after {
	clip-path: inset(0 0 0 0);
}

.footer_box.social_media img{ width: 32px;  display: inline-block; margin-right:7px; transition: all 0.3s ease 0s; }
.footer_box.social_media img:hover{ opacity: 0.5; }

.footer_social {
	width: 100%;
    margin: 0 auto 0 auto;
    padding: 0px;
    position: relative;
    display: flex;
    justify-content: center;
}


img.footer_logo{ max-width: 140px; width:100%;}
.footer_details_left{width:50%;float:left;}
.footer_details_right{width:50%;float:left;}

.footer_social img {
	width: 30px;
    display: inline-block;
	margin: 0 10px 0 0px;
}


/* Copyright */
.padd_footer{	padding-top: 10px;	padding-bottom: 10px;	background:#EBEAE6; }
.copyright{
    font-size: 15px;
    padding-bottom: 15px;
    padding-top: 15px;
    color: #305D74;
    font-weight: 250;
    display: inline-block;
}
.copyright a{	color: #fff;}
#wapp{position:relative;float:right;margin-top: 15px;}
#wapp a{	display: block;	width: 80px; height: 21px; background: #00000001 url(../img/layout/wapp.svg) no-repeat center;text-indent: -999999px!important;background-size:100%;}

.copyright_wrapper {
	padding: 20px 0px 20px 0px;
    position: relative;
    overflow: hidden;
	border-top: 1px solid #305D74
}

.copyright_menu p {
	display: inline-block;
}


/* PAGE HEADINGS
================================================== */

.page_heading_image {
	position: relative;
    color: #fff;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    height: 95svh;
    min-height: 400px;
    overflow: hidden;
    opacity: 0;
    animation: bannerReveal 1.8s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
}

@keyframes bannerReveal {
    0% {
        clip-path: inset(15% 15% 15% 15%);
        transform: scale(1.15);
        opacity: 0;
    }
    30% {
        opacity: 1;
    }
    100% {
        clip-path: inset(0% 0% 0% 0%);
        transform: scale(1);
        opacity: 1;
    }
}
.page_heading_no_image {
	height: 95svh;
    background: #3B3B3B;
}
.page_heading_shadow{
	/* height: 75vh; */
	height: 100vh;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
	background: linear-gradient(180deg, rgba(0,0,0,0.2) 100%, rgba(0,0,0,0.2) 100%, rgba(0,0,0,0.2) 100%);
    z-index: 1;
}
.page_heading_image .page_heading_text { z-index:10;  display: block; position:absolute; width: 100%;bottom:50px; text-align:center;}
.page_heading_image h1 { max-width:400px; margin:0 auto; font-size:42px;font-weight:300;  color:#fff;  text-shadow: 1px 0 50px rgba(0,0,0,0.2);  display: block; padding-bottom: 5svh; width: 100%  }
.page_heading_image p { margin-bottom:10px;font-size:18px;font-weight:300;line-height:28px;text-shadow: 1px 0 50px rgba(0,0,0,0.2); display: block;  }

.scrollButtonContainer {
	position: absolute;
    z-index: 10;
    color: white;
    display: block;
    height: 100%;
    width: 100%;
    left: 0;
    right: 0;
    top: 91%;
    margin: 0 auto;
    text-align: center;
	transition: all 1s;
}

div.scroll-suggestion {
    margin: auto;
    color: #fff;
}

.scrollButtonContainer img {
	width: 45px;
	height: 45px;
	bottom: 10px;
    position: relative;
}

/* PAGE TEXT
================================================== */
.page_text { }
.page_text h1 {
	font-size: 42px;
    font-weight: 300;
    margin-bottom: 75px;
    color: #5fa3a5;
    font-family: 'Noto Serif', serif;
    position: relative;
    line-height: 50px;
    text-align: center;
}

.page_text h1 span {
	color: #488990;
    font-size: 85px;
    line-height: 110px;
    font-weight: 500;
	display: block;
}

.page_text h2 {
	font-size: 45px;
    line-height: 60px;
    font-family: 'Noto Serif', serif;
    font-weight: 300;
    margin-bottom: 20px;
    color: #305D74;
}

.page_text h3 {
	font-size: 45px;
    line-height: 55px;
    margin-bottom: 40px;
    color: #305D74;
    font-family: 'Noto Serif', serif;
    font-style: italic;
    font-weight: 250;
    text-align: left;  
}
.page_text h6 {
	font-size: 22px;
    font-weight: 300;
    margin-bottom: 75px;
    color: #305D74;
    font-family: 'Noto Serif', serif;
    position: relative;
    line-height: 50px;
    text-align: center;
    letter-spacing: 9px;
}
.page_text.centered h1 {
	padding-left: 0;
	margin-left: 0;
}

.page_text p.before_title{    font-size: 16px;
    line-height: normal;
    letter-spacing: 1.7px;
    color: #fffbeb;
    text-transform: uppercase;
    margin-top: 25px;
    margin-bottom: 10px;
    font-weight: 400;
    background: #3B3B3B;
    display: inline-block;
    padding: 5px 15px;
}

.page_text p {
	margin-bottom: 10px;
    font-size: 20px; 
    line-height: 32px;
    color: #305D74;
    font-weight: 250;
}
.page_text ul {margin: 15px 0 15px 0px; overflow:auto;}
.page_text .dynamic_text ul li {
	margin: 5px 0 5px 0;
    padding: 0px 0 0 20px;
    font-size: 19px;
    font-weight: 300;
    line-height: 30px;
	color: #3B3B3B;
    /* background: transparent url(../img/layout/dot_dark.svg) no-repeat 0 12px; */
    /* background-size: 10px; */
	position: relative;
    transition: all 0.3s ease 0s;
}
.page_text .dynamic_text ul li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 8px;
	height: 8px;
	background-color: #5fa3a5;
	border-radius: 50%;
}
.page_text ul.half_list li {
	display: inline-block;
	width: 49%;
}
.page_text ul li:hover {transition: all 0.3s ease 0s;}

.page_text p.zoom{font-size:12px; z-index: 3;  position: relative;}
.centered {text-align:center;}
.left_image {float:left;max-width:400px; margin:10px 30px 10px 0;}
.left_image.offset_top { margin-top:-30px;}
.right_image {float:right;}

.right_image.offset_top { margin-top:-70px;}

.decorate_image_left {    position: absolute;    right: calc(100% - 125px);    top: 150px;    width: 100%;    max-width: 250px; }
.decorate_image_left img {   width: 100%;   }

.decorate_image_right {    position: absolute;    left: calc(100% - 125px);    top: 450px;    width: 100%;    max-width: 250px; }
.decorate_image_right.rooms {     top: 50px;     }
.decorate_image_right img {   width: 100%;   }

.page_text span.third_row {
	margin-left: 7%;
}

.page_text span.second_row {
	margin-left: 22%;
}

.mini_font a {
	text-decoration: underline;
}

.location_info {
	padding-left: 25px;
}

.page_text .location_info h6 {
    font-size: 22px;
    font-weight: 300;
    margin-bottom: 70px;
    color: #5fa3a5;
    font-family: 'Noto Sans', serif;
    position: relative;
    line-height: 50px;
    text-align: center;
    letter-spacing: 9px;
}
.page_text .location_info p strong{
	font-size: 20px;
    font-weight: 300;
    color: #5fa3a5;
    font-family: 'Noto Sans', serif;
    position: relative;
    line-height: 30px;
    letter-spacing: 4px;
}
.location_page_wrapper{
	background: #e7d8da;
	padding: 70px 0;
}

.spa_treats {
	margin: 70px 0 20px 0;
	background-color: #9f9e9e;
	padding: 30px 0;
}

.spa_treats h2 {
	text-align: center;
	color: #fff;
	margin-bottom: 30px!important;
	font-size: 30px!important;
}

.page_text.spa_treats ul {
	text-align: center;
	overflow: hidden;
}

.page_text.spa_treats .spa_list li {
	background-image: url(../img/layout/spa_white.svg);
	padding: 15px 25px 25px 25px;
    display: inline-block;
    margin: 3px 15px;
}

.page_text.spa_treats .spa_list li a {
	color: #fff;
	font-family: 'Noto Sans';
}

.page_text .spa_list li {
	background-image: url(../img/layout/spa.svg);
    background-repeat: no-repeat;
    background-size: 30px;
    background-position: left 19px;
	padding: 15px 15px 25px 25px;
}

.spa_list a {
	padding-left: 10px;
    color: #9a9f87;
    font-weight: 400;
	transition: all 0.3s ease-in-out;
}

.spa_list a:hover {
	text-decoration: underline;
}

@-webkit-keyframes shine_letters {
	from {
	  -webkit-mask-position: 150%;
	}
	
	to {
	  -webkit-mask-position: -50%;
	}
  }


.img_map{width: 100%;display: block;height: auto;}

.btn_more {   	
    border-bottom: 1px solid #3D3D3B;    
    display: block;    
    margin-bottom: 15px;
    margin-top: 40px;
    overflow: hidden;    
    position: relative;   	
}
.btn_more span {
	cursor: pointer;
    display: inline-block;
	font-weight: 400;
    letter-spacing: 0.5px;
	color:#3D3D3B;
	background: none; 
	border: 2px solid #3D3D3B;  
	border-bottom: 1px solid #3D3D3B;
	padding: 10px 20px 10px 20px;
	transition: all 0.3s ease 0s;
}
.btn_more:hover span, .btn_more:active span{
    color: #fff;
	background: #3D3D3B;
	transition: all 0.3s ease 0s;
}

.book_now{font-size:16px; letter-spacing:1.7; font-weight:300;color:#000;padding:10px 20px;border:1px solid #000;margin-top:25px;display: inline-block;  position:relative; cursor: pointer;    text-transform: uppercase;    overflow: hidden; background: #F6F3EA;}
.book_now:hover span{color:#fff;}
.book_now:before {  content: '';    z-index: 1;    transform: scaleX(0);    transform-origin: right 50%;    transition-property: transform;    transition-duration: 380ms;    background-color: #000;    color: #fff!important;    padding-bottom: 2px;
    top: 0;    left: 0;    position: absolute;    z-index: 1;    width: 100%;    height: 100%;    display: block; }
.book_now:hover span{color: #fffbeb; position:relative; z-index:1;transition: all 0.3s ease 0s;}
.book_now:hover:before {    transform: scaleX(1);    transform-origin: left 50%;    width: 100%;    height: 100%;    display: block;}

/* HOME PAGE
================================================== */

a.overlay_link {display:block;width:100%;height:100%;position:absolute;top:0px;left:0px;text-indent: -999999px; z-index:10; }

.covid_notice { margin:20px 20px 40px 20px; padding:20px; border:1px solid #3D3D3B; text-align:center;}

.home_header { height: 100vh!important; min-height:600px; position:relative; overflow:hidden; overflow: hidden;
    animation: bannerReveal 1.8s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;}
.home_header_shadow{
	height: 100vh;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
	background: linear-gradient(180deg, rgba(0,0,0,0.2) 100%, rgba(0,0,0,0.2) 100%, rgba(0,0,0,0.2) 100%);
    z-index: 1;
}
.hero_bg{ width:100%;height: 100vh; min-height:600px;position:absolute;top:0;left:0; background-color:#fff; background-position: top;     background-size: cover; 
transform:translateZ(0); /*animation:grow 40s linear 10ms infinite; */ transition:all 0.2s ease-in-out; }
.home_header video {
	position: absolute;
	object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
    font-family: "object-fit: cover; object-position: 50% 50%";
    width: 100%;
    height: 100%;
    transition: opacity 1s ease .6s;
}

@keyframes grow{
	0%{transform:scale(1)}	50%{transform:scale(1.2)}
}

.home_header_content{
	display: flex;
    align-items: flex-end;
    height: 100vh;
    justify-content: space-between;
	padding-bottom: 50px;
}
.home_header_content p { font-size:20px;font-weight:300; line-height: 30px; color:#fff;  text-shadow:1px 0 50px rgb(0 0 0 / 80%);  display: block; margin-bottom:20px; }
.home_header_content h1 {
    font-size: 95px;
    font-weight: 200;
    color: #fff;
    display: block;
    max-width: 35vw;
    text-align: left;
    font-family: 'Noto Serif', serif;
    letter-spacing: 0;
    position: relative;
    z-index: 1;
    background: #00000001;
    width: 40vw;
    font-style: italic;
    line-height: 95px;
    visibility: hidden;
}
.home_header_content h1.letters-ready {
    visibility: visible;
}

.home_header_content h1 .letter-drop {
    display: inline-block;
    opacity: 0;
    transform: translateY(-80px);
    filter: blur(8px);
    animation: letterFall 0.6s ease forwards;
}

.home_header_content h1 .letter-word {
    display: inline-block;
    white-space: nowrap;
}

.home_header_content h1 .letter-space {
    display: inline-block;
    width: 0.3em;
}

@keyframes letterFall {
    0% {
        opacity: 0;
        transform: translateY(-80px);
        filter: blur(8px);
    }
    60% {
        opacity: 0.7;
        transform: translateY(5px);
        filter: blur(2px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
        filter: blur(0);
    }
}

.dynamic_page.page_heading_image, .dynamic_page .page_heading_shadow, .dynamic_page .home_header_content {
    height: 70vh;
	min-height: 400px;
}

.dynamic_page .home_header_content h1 {
    max-width: none;
	padding-bottom: 0
}

.page_heading_image .home_header_content h1{
	width: 100%
}
.home_header_content.rooms_home_banner h1{
	max-width: 30vw;
	margin: 0 auto 0 0;
	font-size: 80px;
}
a.vrt_msg{
    line-height: normal;
    margin-bottom: 0;
    padding: 30px;
	color:#fff;
	font-weight:700;
	letter-spacing:2px;
}



  .link__arrow {
	display: inline-flex;
  }
  .link__arrow span {
	position: relative;
	width: 14px;
	height: 2px;
	border-radius: 2px;
	overflow: hidden;
	background: #ccc;
	z-index: 2;
  }
  .link__arrow span:nth-child(1) {
	transform-origin: left bottom;
	transform: rotate(45deg) translate3d(8px, -10px, 0);
  }
  .link__arrow span:nth-child(2) {
	transform-origin: left bottom;
	transform: rotate(-45deg);
  }
  .link__arrow span:after {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	width: 0;
	height: 2px;
	background: #fff;
  }
  .link__line {
	position: relative;
	margin-left: -14px;
	margin-right: 0px;
	width: 90px;
	height: 2px;
	background: #ccc;
	overflow: hidden;
	z-index: 1;
  }
  .link__line:after {
	content: "";
	display: block;
	position: absolute;
	left: 80px;
	width: 70px;
	height: 2px;
	background: #fff;
  }
  .link__text {
	color: #fff;
	font-size: 14px;
	text-transform: uppercase;
	font-weight:700;
	text-shadow: 1px 0 50px rgb(0 0 0 / 20%);
  }
  .link:hover .link__line:after {
	animation: animation-line 1.5s forwards;
  }
  .link:hover .link__arrow span:after {
	animation: animation-arrow 1.5s forwards;
	animation-delay: 1s;
  }
  
  @keyframes animation-line {
	0% {
	  left: 80px;
	}
	100% {
	  left: 0;
	}
  }
  @keyframes animation-arrow {
	0% {
	  width: 0;
	}
	100% {
	  width: 100%;
	}
  }


.hvr-wobble-vertical {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  -webkit-animation-name: hvr-wobble-vertical;
  animation-name: hvr-wobble-vertical;
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

/* Wobble Vertical */
@keyframes hvr-wobble-vertical {
  8.33% {
    -webkit-transform: translateY(8px);
    transform: translateY(8px);
  }

  16.65% {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px);
  }

  24.98% {
    -webkit-transform: translateY(4px);
    transform: translateY(4px);
  }

  33.3% {
    -webkit-transform: translateY(-2px);
    transform: translateY(-2px);
  }

  41.63% {
    -webkit-transform: translateY(1px);
    transform: translateY(1px);
  }

  50% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

.home_left_title {display:block; width:100%; margin-bottom:50px; margin-top:130px;}


.home_center_title{display:block; width:100%; margin-bottom:50px; margin-top:130px;text-align:center;}
.home_center_title p.smaller{font-size:16px; font-weight:400; letter-spacing:2px; padding-bottom: 100px;  position: relative;}
.home_center_title p.smaller:after {content: "";height: 80px; width: 1px;  background: #29365b; display: block; position: absolute;    top: 40px;    left: 50%;    -webkit-transform: translateX(-50%);    -ms-transform: translateX(-50%);    transform: translateX(-50%);
}
.home_center_title h2{font-size: 48px;    font-weight: 300;    line-height: 60px;    color: #674439;    text-transform: uppercase; font-family: 'Noto Sans', serif;}
.home_center_title p.grey_parag{font-size:18px; color:#000;margin-top:20px;margin-bottom:30px;font-weight:100;}


.suites_title {
	position: absolute;
    top: -315px;
    z-index: 99;
    width: 100%;
}

.suites_title h2 {
	font-size: 85px;
    line-height: 85px;
    font-weight: 300;
    margin-top: 35px;
    margin-bottom: 20px;
    color: #B0ADA8;
    margin-left: 8%;
    font-family: 'Noto Sans', sans-serif;
}

.suites_title h2 span {
	color: #B0ADA8;
    font-weight: 400;
}

img.rooms_home {
	position: absolute;
    top: -280px;
	right: 3px;
    width: 80%;
    padding-bottom: 125vh;
    background-color: #D8D6CF;
}

.room_details p {
    font-size: 20px;
    font-weight: 500;
    color: #444;
    padding-top: 20px;
    font-family: 'Noto Sans', serif;
}

.room_details p.last {
	border-right: none;
}

.room_details  ul li {
    margin: 0;
    padding: 0px 15px 0 15px;
    border-right: 1px solid #fff;
    font-size: 24px;
    font-weight: 300;
    color: #fff;
    display: inline-block;
    line-height: 30px;
    background: none;
    transition: all 0.3s ease 0s;
	overflow: hidden;
}

.room_details ul li:last-child {
	border-right: none;
}

.rooms_more {
	position: absolute;
    bottom: 140px;
    color: #fff;
    font-size: 26px;
    font-weight: 100;
    border-bottom: 1px solid #fff;
    padding-bottom: 10px;
    padding-right: 11px;
    right: 0px;
	margin-right: 100px;
	transition: all 0.3s ease-in-out;
}

.room_buttons .room_more {
	font-size: 21px;
    font-family: 'Noto Sans', serif;
    font-weight: bold;
    color: #000;
    border: 1px solid #535353;
    padding: 20px 50px;
	margin: 32px 20px 0 20px;
    margin-top: 25px;
    display: inline-block;
}

.room_buttons .room_book {
	color: #fff;
    background: #5fa3a5;
	border: 1px solid #5fa3a5;
    font-size: 21px;
    font-family: 'Noto Sans', serif;
    font-weight: bold;
    padding: 20px 40px;
    display: inline-block;
	margin: 32px 20px 0 20px;
	transition: all 0.3s ease-in-out;
}

.room_buttons .room_book:hover {
	border: 1px solid #3a3a3a;
	background: transparent;
	color: #3a3a3a;
}

.gallery_view {
	width: 100%;
	overflow: hidden;
}

.buttons_shadow {
	height: 30%;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
	background: linear-gradient(0deg, rgba(0,0,0,0.7) 10%, rgba(255,255,255,0) 90%, rgba(255,255,255,0) 100%);
    z-index: 1;
}

.rooms_left_image {}
.rooms_left_image img {max-width:100%;}

.rooms_right_image {max-width:100%;position: relative;z-index: 2;}

.room_right_image img { width: 70%; float: right; }

.rooms_home .about_text {
    padding-top: 60px;
}

.rooms_home .about_text.facilities_intro {
	padding-bottom: 60px;
}

.facilities_intro button {
	margin-top: 20px;
    float: right;
    border: none;
    background: none;
    color: #9a9f87;
    font-size: 15px;
}

.facilities_intro button img {
	width: 25px;
    margin-right: 8px;
}

.facilities_reverse .room_right_image img {
    width: 100%;
	float: right;
}

.rooms_home ol {
	list-style: inside;
	margin-top: 20px;
	margin-bottom: 20px;
}

.page_text h5 {
	color: #305D74;
    font-size: 28px;
    width: fit-content;
    margin-bottom: 20px;
    font-weight: 350;
    margin-top: 35px;
    font-family: 'Noto Serif';
    font-style: italic;
}
.access_intro h4{
    color: #305D74;
    font-weight: 300;
    font-size: 42px;
    line-height: 60px;
    max-width: 50%;
    margin-bottom: 0px;
    font-style: italic;
    font-family: 'Noto Serif', serif;
	border-top: none;
	border-bottom: 1px solid #305D74;
	padding-top: 20px;
	padding-bottom: 20px;
	position: relative;
    display: flex;
    align-items: center;
}
.access_col .access_block:first-child h4 {
	border-top: 1px solid #305D74;
}
.access_intro h4:first-of-type{
	border-top: none;
}
.access_intro h4:hover{
	cursor: pointer
}
.access_intro h4:last-of-type{
	border-bottom: 1px solid #305D74;
}
.access_intro h5{
    color: #305D74;
    font-weight: 300;
    font-size: 35px;
    line-height: 45px;
    max-width: 50%;
    margin-bottom: 0px;
    font-style: italic;
    font-family: 'Noto Serif', serif;
	padding-top: 20px;
	padding-bottom: 20px;
	border-bottom: none
}
.access_intro h4 img{
	width:30px;
	vertical-align:middle;
	transition:transform 0.3s cubic-bezier(.68,-0.55,.27,1.55);
	right: 0;
    position: absolute;
	margin-right: 15px;
}
.toggle-icon {
  transition: transform 0.3s cubic-bezier(.68,-0.55,.27,1.55);
  will-change: transform;
}
.toggle-icon.icon-animating {
}

.access_intro {
    display: flex;
    flex-wrap: wrap;
    gap: 0 40px;
}
.access_col {
    flex: 1 1 calc(50% - 20px);
    min-width: 0;
}
.access_block {
    display: block;
}
.access_intro h4 {
    max-width: 100%;
}
.access_intro h5 {
    max-width: 100%;
}

.access_intro p.main_title{
	padding-bottom: 70px;
    flex: 0 0 100%;
}

.page_text .access_intro p{
    color: #305D74;
	margin-bottom: 15px;
    margin-top: 15px;
}
.rooms_home ol li {
	color: #606060;
    font-size: 20px;
	font-weight: 100;
	line-height: 35px;
}

.rooms_home ul {
	list-style: revert;
}

.rooms_home ul li {
	font-size: 20px;
    width: auto;
    display: inline-block;
    line-height: 40px;
    color: #000;
    margin-bottom: 10px;
}

.list_spa {
	display: inline-block;
    width: 49%;
}

.facilities p {
	font-size: 21px;
	font-weight: 300;
	line-height: 35px;
	margin-top: 15px;
    margin-bottom: 30px;
}

.rooms_home .home_half_text {
    padding: 5px 15px 5px 100px;
}


.swiper-slide .rooms_description {
	display: none;
}

.swiper-slide.swiper-slide-active .rooms_description {
	display: block;
	padding: 10px 30px 0px 50px;
}

.rooms_description_wrapper {
	padding-top: 30px;
    display: block;
    position: relative;
}

.swiper-slide.swiper-slide-active .rooms_description .more {
	font-family: 'Noto Sans', serif;
	font-weight: 600;
    font-size: 20px;
	z-index: 0;
}

.swiper-slide .room_number {
	display: none;
}

.swiper-slide.swiper-slide-active .room_number {
	display: block;
    position: absolute;
    top: -85px;
    width: 170px;
    border: 1px solid #fff;
    right: 0;
    left: 0;
    height: 170px;
    overflow: hidden;
    z-index: 1;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
}

.suites_swiper_wrapper {
	overflow: hidden;
	padding-top: 25px;
    padding-bottom: 30px;
}
.page_gallery_wrapper.pink_bg .suites_swiper_wrapper{margin-bottom: 120px;padding-top:0}
.swiper-slide.swiper-slide-active .room_number span {
	font-size: 95px;
    position: absolute;
    color: #fff;
    font-family: 'Noto Sans', serif;
    font-weight: 300;
	background: #00000001;
}

.swiper_btn_mob {
	display: none;
}

.swiper_buttons .more {
	margin-left: 25%;
    margin-top: 40px;
}

.reverse-rooms .rooms_description {
	float: right;
}

.rooms_description h2 {
	color: #B0ADA8;
    font-size: 48px;
    line-height: 60px;
    padding: 20px 0 50px 0;
    font-family: 'Noto Sans', sans-serif;
}

.rooms_description p {
	font-size: 19px;
    font-weight: 200;
    line-height: 32px;
    color: #000;
    position: relative;
}

.room_title p {
	font-size: 45px;
    color: #3B3B3B;
    font-family: 'Noto Sans', serif;
    line-height: 55px;
    font-weight: 600;
    padding-right: 50px
}

.swiper_img {
	padding: 0;
}

.rooms_description ul li, .short_description ul li {
	font-size: 25px;
    color: #305D74;
    background: none;
    overflow: hidden;
    line-height: 40px;
    font-weight: 250;
	font-family: 'Noto Serif', serif;
	font-style: italic
}

.rooms_description ul li:after, .short_description ul li::after {
    content: '';
    position: absolute;
    border-right: 1px solid #305D74;
    width: 1px;
    height: 40px;
	margin: 0 10px;
    right: 0;
}

.rooms_description ul li:last-child::after {
	display: none;
}
.rooms_description ul, .short_description ul {
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	padding: 25px 0;
	justify-content: center;
}
.rooms_description ul li {
	flex: 0 0 33.3333%;
	max-width: 33.3333%;
	box-sizing: border-box;
	text-align: center;
	position: relative;
	display: inline-block;
	list-style: none;
	padding: 0
}
.short_description{padding: 30px 0 20px 0}
.short_description ul li{
	flex: 0 0 20%;
	max-width: 20%;
	box-sizing: border-box;
	text-align: center;
	font-size: 29px;
	position: relative;
	display: inline-block;
	list-style: none;
	padding: 0
}
.short_description ul li:last-child::after{
	display: none
}
/* .rooms_description ul li:after {
	content: '|';
	color: #305D74;
	margin-left: 10px;
	margin-right: 0;
} */

.rooms_description ul li:nth-child(3n)::after {
	display: none
}
.rooms_description ul li:last-child::after {
	display: none
}
.icon_img {
	width: 75%;
    height: 100%;
    position: absolute;
    right: 0;
    left: 0;
    margin: 0 auto;
    z-index: 1;
    bottom: 0px;
}

.swiper-slide .room_title {
	display: none;
}

.swiper-slide.swiper-slide-active .room_title {
	display: block;
}

.page_text .room_title h1, .page_text .blog_title h1 {
    font-size: 55px;
    font-weight: 200;
    color: #305D74;
    line-height: 48px;
    position: relative;
    margin-bottom: 50px;
    font-family: 'Noto Serif';
    font-style: italic;
}
.page_text .blog_title h1 {
	font-size: 35px;
	font-weight: 250;
	line-height: 45px;
	margin-bottom: 30px;
}
.room_title h1:before {
	display: none;
}

.room_title .rooms_more {
	bottom: 0px;
    right: 50px;
    float: right;
    position: relative;
}

p.total_rooms {
	position: absolute;
    margin-top: 0px;
    right: 0;
    font-size: 35px;
    font-family: 'Noto Sans', serif;
    color: #000;
    font-weight: 200;
}

.beige_bg.rooms {
    height: 25px;
    width: 41.67%;
    position: absolute;
    bottom: -85px;
    right: 0;
    margin-bottom: 60px;
    background: #ebeae6;
}

.reverse-rooms .beige_bg.rooms {
    height: 25px;
    width: 41.67%;
    position: absolute;
    bottom: -85px;
    left: 0;
    margin-bottom: 60px;
    background: #ebeae6;
}

.icon_room {
	width: 260px;
    height: 200px;
    margin: 0 auto 40px auto;
}

.room_intro {
	text-align: center;
}

.room_intro h2 {
	font-size: 27px;
    font-weight: 300;
    color: #5fa3a5;
    padding-bottom: 140px;
    position: relative;
}

.room_intro h1 {
	color: #3A3A3A;
    font-size: 53px;
    font-family: 'Noto Sans', serif;
    font-weight: bold;
    padding: 0 150px;
	margin-bottom: 40px;
}

.room_intro p {
	font-size: 19px;
    font-weight: 200;
    line-height: 32px;
    color: #000;
    position: relative;
    padding: 0 50px;
    margin-bottom: 15px;
}

.room_intro .more {
	font-size: 18px;
	margin: 60px auto 0 auto;
}

.room_intro .num_photos {
    bottom: 50px;
}

.page_text.room_intro h1 {
    font-size: 60px;
    margin-bottom: 0;
    padding-left: 0;
    margin-left: 0;
    line-height: 60px;
}

.extra_image {
	height: 100vh;
	/* margin: 50px 0; */
	background-repeat: no-repeat;
	background-position: center;
	/* animation:grow 40s linear 10ms infinite; */
}

.page_text.features h1 {
    margin-bottom: 30px;
    padding-left: 0;
    margin-left: 0;
}

.small_img {
	margin-top: -28%;
    position: absolute;
    margin-left: 10%;
}

.small_img img {
	width: 65%;
}

.page_text.other_rooms h1 {
	text-align: left;
    color: #fff;
    font-size: 60px;
    font-weight: 400;
	margin-bottom: 65px;
	background: #00000001;
}

.other_rooms {
    padding-top: 160px;
    padding-bottom: 90px;
    overflow: visible!important;
}

.other_rooms.page_text h2 {
	color: #3B3B3B;
    font-weight: 600;
    margin-top: 40px;
    margin-bottom: 0;
    width: 72%;
}

.other_room_box {
	transition: all 0.5s ease-in-out;
}

.other_room_box:hover {
	background: #fff;
	box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
}

.other_room_box .icon_other {
	transition: all 0.5s ease-in-out;
}

.other_room_box:hover .icon_other {
	opacity: 1;
}

.icon_other {
	width: 200px;
    height: 150px;
    margin: 0 auto 20px auto;
	opacity: 0.7;
}

.rooms_view .room_right_image {
	width: 70%;
    float: right;
    background: #ebeae6e3;
    padding-bottom: 60%;
    position: relative;
}

.rooms_view .room_right_image img {
	width: 100%;
    float: right;
}

.rooms_view .room_book {
    color: #606060;
    border-bottom: 2px solid #606060;
	bottom: 27%;
}

.rooms_view {
	padding-bottom: 0;
}

.room_facilities h1 {
	color: #B0ADA8;
    font-size: 70px;
    font-weight: 100;
    font-family: 'Noto Sans', sans-serif;
    margin-bottom: 60px;
}

.room_facilities ul {
	margin: 25px 0;
	display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.room_facilities ul li {
	font-size: 26px;
    color: #000;
    font-weight: 100;
    line-height: 45px;
    margin-bottom: 15px;
}

.features {
	position: relative;
    overflow: visible!important;
    padding-top: 100px;
}

.features_bg {
	position: absolute;
	width: 85%;
    height: calc(100% + 40px);
    background-color: #E3DFDA;
    top: -40px;
    z-index: -1;
    right: 0;
}

.room_features {
	background-color: #E3DFDA;
}

.features_list {
	width: 100%;
	padding: 210px 0 0 10%;
}

.features_list ul li {
	margin: 0;
    padding: 10px 0px 10px 20px;
    font-size: 21px;
    color: #777;
    font-weight: 200;
    line-height: normal;
    transition: all 0.3s ease 0s;
    width: 100%;
    display: inline-block;
    background: transparent url(../img/layout/dot_dark.svg) no-repeat 0 20px;
    background-size: 12px;
}

.features_list.facility_list ul li {
	width: 49%;
	border-right: none;
}

.page_text .features_list.facility_list h2 {
	font-size: 34px;
    font-weight: 300;
    margin-top: 0;
    margin-bottom: 32px;
    font-family: 'Noto Sans';
    color: #666;
}

/* .features_list.facility_list ul li:nth-last-child(2n) {
    border-right: 2px solid #BFBDBB;
} */

.features_list ul li:last-child, .features_list ul li:nth-last-child(4) {
	border-right: none;
}

.swiper-slide .total_rooms.gallery {
	display: none;
}

.swiper-slide.swiper-slide-active .total_rooms.gallery {
	display: block;
}

.total_rooms.gallery {
	text-align: center;
    width: fit-content;
    left: 0;
    right: 0;
    bottom: -116px;
    margin: 0 auto;
}

.total_rooms.gallery span {
	z-index: 2;
    color: #000;
    position: relative;
}

.mar_neg{margin-top: -5%;border:5px solid #fff;}
.image_subtitle { display:block; margin-top:10px; margin-bottom:30px; font-size:18px; color:#4C5870;}

.sight_container { position:relative; min-height:350px;  }
.sight_container.inner_sight_container {  min-height:600px; overflow:hidden; margin-bottom:50px; }
.sight_box { position:absolute;bottom:0px; }
.sight_box .sight_image { position:relative;	overflow:hidden; }
.sight_box img {max-width:100%; transition: all 0.3s ease 0s;}
.sight_box .sight_subtitle { display:block; margin-top:10px; margin-bottom:10px; color:#4C5870; font-size:18px; text-align:right; transition: all 0.3s ease 0s;}
.sight_box:hover .sight_subtitle{ color:#3D3D3B; transition: all 0.3s ease 0s;}
.sight_box:hover img{  transform: scale(1.05); transition: all 0.3s ease 0s;}

.fragment-banner{height:40vh;overflow:hidden;position: relative;background-size:100%;border:1px solid #f1f1f1;background-color: #000;overflow:hidden;transition: all 0.3s ease 0s;background-size: cover; background-position: center;}
.fragment-banner:hover{transition: all 0.3s ease 0s;    -webkit-transform: translateX(4px) translateZ(0) scale(1.05);
    transform: translateX(4px) translateZ(0) scale(1.05); }


.home_half_text{padding:5px 100px;}
.home_half_text.mar_top{margin-top:100px;}
.home_half_text p{
    margin-top: 25px;
    margin-bottom: 40px;
}

.home_half_text a {
	color: #9a9f87;
}

.home_half_text p.first_line, .suites_description p.first_line, .home_center_title p.first_line{
    font-size: 16px;
    line-height: normal;
    letter-spacing: 1.7px;
    color: #fffbeb;
    text-transform: uppercase;
    margin-top: 25px;
    margin-bottom: 10px;
    font-weight: 400;
    background: #000;
    display: inline-block;
    padding: 5px 15px;

}
.home_half_text h4{
    font-size: 40px;
    line-height: 54px;
    color: #674439;
    margin-top: 10px;
    margin-bottom: 50px;
	font-weight: 400;
	font-family: 'Noto Sans', serif;
}
.home_left_image{
	position: relative;
    margin-top: 50px;
}

.home_left_image img{
	width: 100%;
}

.padd.about-section {
	padding-bottom: 0;
}

.about-section {
	z-index: 1;
	position: relative;
	overflow: hidden;
}

.align_intro_text{
	display: flex;
	align-items: flex-end;
	gap: 150px;
	padding-bottom: 70px;
}
.cyan_bg strong{font-weight: 500;}
.cyan_bg .align_intro_text{
	padding-bottom: 70px;
	padding-top: 70px;
	gap: unset;
	justify-content: space-between;
}
.cyan_bg .align_intro_text h6 {
    max-width: unset;
	width: unset;
    min-width: unset;
}
.cyan_bg .align_intro_text p {
    width: 41.66666667%;
}
.align_intro_text.blue_text{
	padding-right:8.33333333%;
	gap: 45px;
}
.align_intro_text.blue_text h6{
	color: #305D74;
	font-weight: 200;
	font-size: 75px;
	max-width: 35%;
	margin-bottom: 0
}
.align_intro_text.blue_text p{
	color: #305D74;
	font-weight: 250;
	margin-bottom: 0

}
.blog_text .align_intro_text.blue_text p {
    margin-bottom: 15px;
}
.align_intro_text h6 {
    color: #fff;
    font-family: 'Noto Serif', serif;
    font-size: 65px;
    font-weight: 200;
    line-height: 80px;
    text-align: left;
    letter-spacing: 0px;
    font-style: italic;
    width: 100%;
	min-width: 750px;
}

.align_intro_text p{
	color: #fff;
	font-size: 20px;
    line-height: 32px;
    font-weight: 100;
    width: fit-content;
}
.home_rooms_wrapper .align_intro_text p {
    padding-bottom: 10px;
}
/* ================== TESTIMONIALS ================== */
.testimonials_intro{
  display: flex;
  width: 100%;
  flex-direction: column;
  align-items: center;
  padding-top: 70px;
}

.testimonials_intro p.orange_title{
  text-align: center;
  font-size: 65px;
  font-weight: 300;
}

#swiper_testimonials {
	overflow: visible;
  padding-left: 60px;
	padding-right: 60px;
}

#swiper_testimonials .swiper-wrapper {
  align-items: stretch;
}

#swiper_testimonials .swiper-slide {
  display: flex;
  align-items: stretch;
  justify-content: center;
  height: auto;
}

.testimonials_content{
  padding: 60px 20px 20px 20px;
  color: #305D74;
  position: relative;
  width: 100%;
}
.testimonials_content::before{
  content: '';
  background-image: url('../img/layout/icons/quotes.svg');
  background-repeat: no-repeat;
  background-position: center;
  width: 60px;
  height: 60px;
  position: absolute;
  top: -10px;
  left: 50%;
  transform: translateX(-50%);
  display: block;
}
.testimonials_content p{
    color: #305D74;
	font-weight: 250;
    text-align: center;
    line-height: 35px;
    font-size: 22px;
}
.testimonials_content h6{
    text-align: center;
    font-size: 32px;
    line-height: 25px;
    font-family: 'Noto Serif';
    font-weight: 250;
    font-style: italic;
    padding-top: 30px;
}

.testimonials_content h6 strong::before{
  content: '';
  background-color: #305D74;
  width: 30%;
  height: 1px;
  position: relative;
  top: -25px;
  text-align: center;
  margin: 0 auto;
  display: flex;
  justify-content: center;
}
#swiper_testimonials{
    padding: 60px 0 0px 0;
}
#testimonials {
  height: 100%;
  background-color: #f9f9f9;
  color: #262626;
  padding: 70px 0;
  background-position: center;
  background-size: contain;
}

#testimonial-carousel {
  transform: translateY(-50%);
  bottom: 0;
  top: 50%;
}

#testimonials .testimonial_title {
	color: #475d6b;
	font-size: 36px;
	font-weight: 300;
	margin-bottom: 20px;
}

.testimonials_wrapper {
  display: flex;
  justify-content: flex-end;
}

#swiper_testimonials .swiper-slide-prev .testimonials_content,
#swiper_testimonials .swiper-slide-next .testimonials_content {
    opacity: 0.4;
    transition: opacity 0.3s ease;
}

#swiper_testimonials .swiper-slide-active .testimonials_content {
    opacity: 1;
    transition: opacity 0.3s ease;
}

.carousel-item {
  padding: 0% 15% 0% 0%;
}

.testimonials_wrapper .carousel-inner {
  width: 100%;
}

.page_text .about_left_text h3 {
    font-size: 90px;
    font-weight: 200;
    line-height: 66px;
    margin-bottom: 80px;
    color: #305D74;
    font-family: 'Noto Serif', serif;
    text-align: center;
    font-style: italic;
}
.page_text .about_left_text h6 {
    font-size: 45px;
    font-weight: 200;
    margin-bottom: 20px;
    color: #305D74;
    font-family: 'Noto Serif', serif;
    position: relative;
    line-height: 35px;
    text-align: center;
    letter-spacing: 0px;
    font-style: italic;
}
.page_text .about_left_text p {
	margin-bottom: 40px;
	color: #305D74;
	text-align: center;
	font-weight: 250;
	line-height: 34px;
}
.badge_wrapper{
	display:flex;
	justify-content:center;
	align-items:center;
	margin-bottom: -65px;
}
.badge_wrapper img{
	max-width:250px;
	height:auto;
	opacity: 0;
	transform: translateY(-100px);
	transition: opacity 0.8s ease, transform 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}
.badge_wrapper.badge-visible img{
	opacity: 1;
	transform: translateY(0);
}
.about_text {
	position: relative;
    display: flex;
    gap: 70px;
}
.about_text h1{
    font-size: 22px;
    font-weight: 300;
    margin-bottom: 45px;
    color: #5fa3a5;
    font-family: 'Noto Sans', serif;
    position: relative;
    line-height: 50px;
    text-align: left;
    letter-spacing: 9px;
}
.about_text h1 span{
	font-size: 50px;
    font-weight: 300;
    line-height: 66px;
    color: #5fa3a5;
    font-family: 'Noto Sans', serif;
	letter-spacing: 0px;
}

.about_bg {
	background-image: url(../img/layout/bg_graphic.svg);
    background-size: 85%;
    background-repeat: no-repeat;
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 0;
    right: 0;
    top: 16%;
    background-position: top right;
}

.about_bg.villas {
	z-index: 0;
}

.colored_button{
	padding: 32px 55px;
    color: #5fa3a5;
    border: 1px solid #5fa3a5;
    border-radius: 50px;
    display: block;
    width: fit-content;
    font-size: 22px;
    font-family: 'Noto Sans', serif;
    font-weight: 400;
    letter-spacing: 2px;
	transition: color 0.5s ease-in-out;
    position: relative;
    overflow: hidden;
}

.colored_button::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    background-color: #5fa3a5;
    transition: width 0.5s ease-in-out;
    z-index: -1;
}

.colored_button:hover {
    color: white;
}

.colored_button:hover::before {
    width: 100%;
}

.colored_button.white{
	padding: 32px 55px;
    color: #fff;
    border: 1px solid #fff;
    border-radius: 50px;
    display: block;
    width: fit-content;
    font-size: 22px;
    font-family: 'Noto Sans', serif;
    font-weight: 400;
    letter-spacing: 2px;
    position: relative;
	margin-left: 50px;
	transition: color 0.5s ease-in-out;
    overflow: hidden;
}
.colored_button.white::before {
    background-color: #fff;
}
.colored_button.white:hover {
    color: #5fa3a5;
}


.room_buttons .colored_button.white {
    padding: 32px 45px;
	font-size: 20px;
}
.room_content .room-info .room_buttons .colored_button.white { margin-left: 25px; font-size: 18px;  padding: 32px 36px;}
.main_button{
    color: #5fa3a5;
    border-bottom: 2px solid #5fa3a5;
    font-size: 19px;
    letter-spacing: 2px;
    font-weight: 300;
    padding-bottom: 10px;
	padding-top: 10px;
	overflow:hidden;
	position:relative;
}
a.main_button:hover{color: #5fa3a5;}
.main_button:before {
	content: "";
	position: absolute;
	width: 0;
	background : #5fa3a5;
	left: 45%;
	height: 2px;
	top: 0;
	transition: all .3s;
}
.main_button:hover:before {
	width: 100%;
	left:0;
}

.main_button.white{
    color: #fff;
    border-bottom: 2px solid #fff;
    font-size: 19px;
    letter-spacing: 2px;
    font-weight: 300;
    padding-bottom: 10px;
}
a.main_button.white:hover{color: #fff;}
.main_button.white:before {background: #fff;}

.room_buttons .main_button.white {
    font-size: 18px;
}
.room_content .room-info .room_buttons .main_button.white {
    font-size: 17px;
}

/* ========== Sights swiper layout ========== */
.sights-layout {
	display: flex;
	align-items: flex-end;
	width: 100%;
}

.sights-controls {
	width: 20%;
    flex-shrink: 0;
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    justify-content: flex-start;
    gap: 20px;
    position: relative;
}

.sights-controls .swiper-button-prev,
.sights-controls .swiper-button-next {
	position: static;
	margin: 0;
}

.sights-swiper-container {
	width: 80%;
	overflow: hidden;
}

.sight-card {
	background: #fff;
	padding: 15px;
	display: block;
	transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.4s ease;
	box-shadow: 2px 3px 8px rgba(0,0,0,0.08);
}
.sight-card:hover {
	transform: rotate(-2deg) translateY(-5px);
	box-shadow: 8px 12px 24px rgba(0,0,0,0.10);
}
.reverse-991 .sight-card:hover {
    transform: rotate(2deg) translateY(-5px);
}
.sight-card.article_image:hover, .swiper-wrapper .sight-card:hover{
	transform: none;
    box-shadow: 2px 3px 8px rgba(0, 0, 0, 0.08);;
}
.sight-card-img {
    width: 100%;	
	object-fit: cover;	
}

p.sight-card-title {
    margin-top: 10px;
    font-family: 'Noto Serif', serif;
    font-style: italic;
    font-weight: 250;
    color: #305D74;
    margin-bottom: 10px;
    font-size: 37px;
    padding-top: 15px;
}


.access-row {
    display: flex;
    align-items: stretch;
}
.access_description .access-row {
    align-items: center;
}

.access_more_info{
	display: flex;
    justify-content: space-between;
    text-align: center;
}
.access_more_info > div{
	width: 50%
}
.access_more_info p{
    color: #305D74;
    font-family: 'Noto Sans', serif;
	font-size: 24px;
    font-weight: 250;
    line-height: 36px;
    padding: 15px 0 15px 60px;
    text-align: center;
    position: relative;
	padding: 15px 15% 15px 15%;
}
.access_more_info p.main_title {
    font-size: 65px;
	padding-bottom: 50px;
	padding: 0 0 50px 0;
}
.access_more_info a{
    color: #305D74;
    font-weight: 400;
	border-bottom: 1px solid #305D74;
	padding-bottom: 5px;
}
.access_more_info em{
    font-family: 'Noto Serif', serif;
    font-style: italic;
    font-size: 30px;
    padding-right: 20px;
    font-weight: 250;
}
.access_more_info li{
    color: #305D74;
    font-family: 'Noto Sans', serif;
    font-size: 24px;
    font-weight: 250;
    line-height: 36px;
    padding: 25px 0 25px 28px;
    text-align: left;
    position: relative;
    border-bottom: 1px solid #305D74;
	width: fit-content;
}
.access_more_info li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 10px;
	height: 10px;
	background-color: #5fa3a5;
	border-radius: 50%;
}
.access_more_info li:last-of-type{
    border-bottom: none;
}
.footer_social {
    display: flex;
    gap: 15px;
    align-items: center;
	justify-content: flex-start;
	margin-top: 25px;
}

.footer_social_link {
    display: inline-flex;
    opacity: 1;
    transition: opacity 0.2s ease;
}

.footer_social_link:hover {
     opacity: 0.5;
}

/* ========== Footer logo swim-up animation ========== */
@keyframes swimEmerge {
    0% {
        transform: translateX(50vw) translateY(25vh) rotate(-30deg);
        /* opacity: 0; */
		opacity: 1;
    }
    4% {
        transform: translateX(46vw) translateY(24.5vh) rotate(-27deg);
        /* opacity: 0.2; */
		opacity: 1;
    }
    8% {
        transform: translateX(42vw) translateY(24vh) rotate(-24deg);
        /* opacity: 0.35; */
		opacity: 1;
    }
    12% {
        transform: translateX(38vw) translateY(24vh) rotate(-20deg);
        /* opacity: 0.45; */
		opacity: 1;
    }
    16% {
        transform: translateX(34vw) translateY(24.5vh) rotate(-16deg);
        /* opacity: 0.52; */
		opacity: 1;
    }
    20% {
        transform: translateX(30vw) translateY(25vh) rotate(-11deg);
        /* opacity: 0.58; */
		opacity: 1;
    }
    24% {
        transform: translateX(26vw) translateY(26vh) rotate(-6deg);
        /* opacity: 0.63; */
		opacity: 1;
    }
    28% {
        transform: translateX(22vw) translateY(27vh) rotate(0deg);
        /* opacity: 0.68; */
		opacity: 1;
    }
    32% {
        transform: translateX(18vw) translateY(27.5vh) rotate(5deg);
        /* opacity: 0.72; */
		opacity: 1;
    }
    36% {
        transform: translateX(14.5vw) translateY(27vh) rotate(10deg);
        /* opacity: 0.76; */
		opacity: 1;
    }
    40% {
        transform: translateX(11.5vw) translateY(26vh) rotate(16deg);
        /* opacity: 0.8; */
		opacity: 1;
    }
    44% {
        transform: translateX(9vw) translateY(24vh) rotate(22deg);
        /* opacity: 0.83; */
		opacity: 1;
    }
    48% {
        transform: translateX(7vw) translateY(21vh) rotate(27deg);
        /* opacity: 0.86; */
		opacity: 1;
    }
    52% {
        transform: translateX(5.5vw) translateY(18vh) rotate(30deg);
        /* opacity: 0.89; */
		opacity: 1;
    }
    56% {
        transform: translateX(4.5vw) translateY(15vh) rotate(28deg);
        /* opacity: 0.91; */
		opacity: 1;
    }
    60% {
        transform: translateX(3.7vw) translateY(12vh) rotate(24deg);
        /* opacity: 0.93; */
		opacity: 1;
    }
    64% {
        transform: translateX(3vw) translateY(9vh) rotate(20deg);
        /* opacity: 0.95; */
		opacity: 1;
    }
    68% {
        transform: translateX(2.4vw) translateY(7vh) rotate(16deg);
        /* opacity: 0.96; */
		opacity: 1;
    }
    72% {
        transform: translateX(1.8vw) translateY(5vh) rotate(12deg);
        /* opacity: 0.97; */
        opacity: 1;
    }
    76% {
        transform: translateX(1.3vw) translateY(3.5vh) rotate(9deg);
        /* opacity: 0.98; */
        opacity: 1;
    }
    80% {
        transform: translateX(0.9vw) translateY(2.5vh) rotate(6deg);
        /* opacity: 0.99; */
        opacity: 1;
    }
    84% {
        transform: translateX(0.6vw) translateY(1.5vh) rotate(4deg);
        opacity: 1;
    }
    88% {
        transform: translateX(0.4vw) translateY(1vh) rotate(2.5deg);
        opacity: 1;
    }
    92% {
        transform: translateX(0.2vw) translateY(0.5vh) rotate(1.5deg);
        opacity: 1;
    }
    96% {
        transform: translateX(0.05vw) translateY(0.2vh) rotate(0.5deg);
        opacity: 1;
    }
    100% {
        transform: translateX(0) translateY(0) rotate(0deg);
        opacity: 1;
    }
}

/* ========== Footer logo swim-up animation (smaller movement) ========== */
@keyframes swimEmergeSmall {

    /* 0% {
        transform: translateX(30vw) translateY(25vh) rotate(-11deg);
		opacity: 1;
    }
    5% {
        transform: translateX(26vw) translateY(26vh) rotate(-6deg);
		opacity: 1;
    }
    10% {
        transform: translateX(22vw) translateY(27vh) rotate(0deg);
		opacity: 1;
    }
    15% {
        transform: translateX(18vw) translateY(27.5vh) rotate(5deg);
		opacity: 1;
    }
    20% {
        transform: translateX(14.5vw) translateY(27vh) rotate(10deg);
		opacity: 1;
    }
    25% {
        transform: translateX(11.5vw) translateY(26vh) rotate(16deg);
		opacity: 1;
    } */
    0% {
        transform: translateX(9vw) translateY(24vh) rotate(22deg);
		opacity: 1;
    }
    5% {
        transform: translateX(7vw) translateY(21vh) rotate(27deg);
		opacity: 1;
    }
    10% {
        transform: translateX(5.5vw) translateY(18vh) rotate(30deg);
		opacity: 1;
    }
    17% {
        transform: translateX(4.5vw) translateY(15vh) rotate(28deg);
		opacity: 1;
    }
    24% {
        transform: translateX(3.7vw) translateY(12vh) rotate(24deg);
		opacity: 1;
    }
    33% {
        transform: translateX(3vw) translateY(9vh) rotate(20deg);
		opacity: 1;
    }
    40% {
        transform: translateX(2.4vw) translateY(7vh) rotate(16deg);
		opacity: 1;
    }
    47% {
        transform: translateX(1.8vw) translateY(5vh) rotate(12deg);
        opacity: 1;
    }
    54% {
        transform: translateX(1.3vw) translateY(3.5vh) rotate(9deg);
        opacity: 1;
    }
    63% {
        transform: translateX(0.9vw) translateY(2.5vh) rotate(6deg);
        opacity: 1;
    }
    70% {
        transform: translateX(0.6vw) translateY(1.5vh) rotate(4deg);
        opacity: 1;
    }
    77% {
        transform: translateX(0.4vw) translateY(1vh) rotate(2.5deg);
        opacity: 1;
    }
    84% {
        transform: translateX(0.2vw) translateY(0.5vh) rotate(1.5deg);
        opacity: 1;
    }
    93% {
        transform: translateX(0.05vw) translateY(0.2vh) rotate(0.5deg);
        opacity: 1;
    }
    100% {
        transform: translateX(0) translateY(0) rotate(0deg);
        opacity: 1;
    }
}
#footer_logo_wrapper .footer_logo {
    opacity: 1;
    transform: translateX(50vw) translateY(25vh) rotate(-30deg);
    display: block;
    will-change: transform, opacity;
	z-index: 100;
	position: relative;
	
}

#footer_logo_wrapper .footer_logo.swim-animate {
    animation: swimEmerge 3.5s ease forwards;
}
#footer_logo_wrapper.not-home .footer_logo.swim-animate {
    animation: swimEmergeSmall 2.0s ease forwards;
}
#footer_logo_wrapper.not-home .footer_logo {
	/* transform: translateX(20vw) translateY(25vh) rotate(-30deg); */
    transform: translateX(9vw) translateY(24vh) rotate(22deg);
}
.access-row > [class*="col-"] {
    float: none;
}
.access-row .beige_bg, .access-row .access-photo {
	padding: 4%;
}
.access_info{
    text-align: center;
    padding-top: 35px;
}
.access_info p{ 
    color: #305D74;
    font-family: 'Noto Serif', serif;
    font-size: 65px;
    font-style: italic;
    font-weight: 200;
    text-align: center;
    line-height: 70px;
	margin-bottom: 55px;
}
.contact_map .beige_bg{
	display: flex;
}
.contact_map  .access_info {
	text-align: center;
    padding-top: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 30px;
}
.contact_map .access_info p {
	color: #305D74;
    font-family: 'Noto Serif', serif;
    font-size: 37px;
    font-style: italic;
    font-weight: 200;
    text-align: center;
    line-height: 53px;
    margin-bottom: 0;
    padding: 0 10% 30px 10%;
}
.contact_map  .blue_button {
    padding: 20px 40px;
	margin-top: 0
}
.access-photo {
    min-height: 400px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
	display: flex;
    align-items: flex-end;
    justify-content: center;
}
.access_image_text{
	text-align: center;
}

.access_image_text p{
	color: #fff;
    font-family: 'Noto Serif', serif;
    font-size: 65px;
    font-style: italic;
    font-weight: 150;
    text-align: center;
    line-height: 70px;
	margin-bottom: 55px;
	padding: 0 15%;
}
.access_image_text ol {
	list-style: none;
	padding-left: 0;
	margin: 0;
	counter-reset: access-counter;
}
.access_image_text ol li {
	counter-increment: access-counter;
	color: #305D74;
	font-family: 'Noto Sans', serif;
	font-size: 22px;
	font-weight: 300;
	line-height: 36px;
	padding: 15px 0 15px 60px;
	text-align: left;
	position: relative;
}
.access_image_text ol li::before {
	content: counter(access-counter) ".";
    position: absolute;
    left: 0;
    /* top: 0; */
    /* transform: translateY(-50%); */
    color: #305D74;
    /* border-radius: 50%; */
    font-family: 'Noto Serif', serif;
    font-size: 40px;
    font-weight: 200;
    display: flex;
    align-items: center;
    justify-content: center;
    font-style: italic;
	padding: 8px 0;
}
.access_image_text ol li:last-child {
	border-bottom: none;
}
.access_image_text ol li strong {
	font-weight: 600;
}
/* .blue_button{
	background: #5fa3a5;
    color: #fff;
    border-radius: 4px;
    padding: 17px 55px;
    margin-top: 30px;
    font-size: 20px;
    font-weight: 200;
    font-family: 'Noto Serif';
    font-style: italic;



	transform-style: preserve-3d;
	background-color: #5fa3a5;
	cursor: pointer;
	transform: rotateX(20deg);
	transition: all 0.5s;
	position: relative;
	overflow: hidden;
 
}
a.blue_button:hover{
    color: #fff;
	transition: all 0.5s;
}
.blue_button::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 0%;
  background-color: #305D74;
  bottom: 0;
  left: 0;
  z-index: -1;
  border-radius: 4px;
  transition: height 0.6s cubic-bezier(0.22, 1, 0.36, 1);
  clip-path: polygon(
    0% 30%, 10% 20%, 20% 28%, 30% 15%, 40% 25%, 50% 12%, 60% 22%, 70% 10%, 80% 20%, 90% 8%, 100% 18%,
    100% 100%, 0% 100%
  );
}

.blue_button::after {
  content: "";
  position: absolute;
  bottom:-10px;
  left: -100%;
  width: 300%;
  height: 100%;
  background: url('../img/layout/wave.svg') repeat-x bottom;
  background-size: 400px 100%;
  transition: none;
  transform: none;
  filter: none;
  opacity: 0;
}

.blue_button:hover::after {
  opacity: 1;
  animation: waveSlide 2s linear infinite;
  transform: none;
}

@keyframes waveSlide {
  0%   { left: -100%; }
  100% { left: 0%; }
}

.blue_button:hover::before {
  height: 170%;
} */




.blue_button {
    background: #5fa3a5;
    color: #fff;
    border-radius: 4px;
    padding: 17px 55px;
    margin-top: 30px;
    font-size: 20px;
    font-weight: 200;
    font-family: 'Noto Serif';
    font-style: italic;
    display: inline-block;
    text-decoration: none;
    position: relative;
    overflow: hidden; 
    z-index: 1;
    transform-style: preserve-3d;
    transform: rotateX(20deg);
    transition: all 0.5s;
    cursor: pointer;
}
.orange_button{
	background: #d88b7a;
    color: #fff;
    border-radius: 4px;
    padding: 17px 55px;
    margin-top: 30px;
    font-size: 20px;
    font-weight: 200;
    font-family: 'Noto Serif';
    font-style: italic;




    display: inline-block;
    text-decoration: none;
    position: relative;
    overflow: hidden; 
    z-index: 1;
    transform-style: preserve-3d;
    transform: rotateX(20deg);
    transition: all 0.5s;
    cursor: pointer;
}
#submit_form{
	display: inline-block;
    text-decoration: none;
    position: relative;
    overflow: hidden; 
    z-index: 1;
    transform-style: preserve-3d;
    transform: rotateX(20deg);
    transition: all 0.5s;
    cursor: pointer;
}
.blue_button::before, .orange_button::before, #submit_form::before {
    content: "";
    position: absolute;
    background-color: #305D74;
    width: 250%; 
    aspect-ratio: 1/1;
    border-radius: 38%; 
    left: 50%;
    top: 200%; 
    transform: translateX(-50%) rotate(0deg);
    transition: top 2.5s cubic-bezier(0.23, 1, 0.32, 1);
    z-index: -1;
    animation: waveRotation 6s infinite linear;
	
}

.blue_button:hover::before, .orange_button:hover::before, #submit_form:hover::before {
    top: -80%;    
}

.blue_button::after, .orange_button::after, #submit_form::after {
    content: "";
    position: absolute;
    top: 150%; 
    left: -100%;
    width: 300%;
    height: 100%;
    background: url('../img/layout/wave.svg') repeat-x top; /* top για να φαίνεται το κύμα στην κορυφή */
    background-size: 400px 40px; 
    opacity: 0;
    z-index: -1;
    transition: top 2.5s cubic-bezier(0.23, 1, 0.32, 1), opacity 0.5s ease;
}

.blue_button:hover::after, .orange_button:hover::after, #submit_form:hover::after {
    opacity: 1;
    top: 35%; 
    animation: waveSlide 2s linear infinite;
}

@keyframes waveSlide {
  0%   { left: -100%; }
  100% { left: 0%; }
}
@keyframes waveRotation {
    from { transform: translateX(-50%) rotate(0deg); }
    to { transform: translateX(-50%) rotate(360deg); }
}

.blue_button:hover, .orange_button:hover, #submit_form:hover {
    color: #fff;
    transition: color 0.3s ease; 
}
.submit_button{
	outline: none;
    border: none;
	float: right;
}

.room-card {
	position: relative;
	overflow: hidden;
	margin-bottom: 30px;
	line-height: 0;
}

.room-card .gallery_view {
	width: 100%;
	display: block;
	transition: transform 0.4s ease;
}

.room-card:hover .gallery_view {
	transform: scale(1.04);
}

.room-info-overlay {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: flex-start;
	padding: 40px;
	background: linear-gradient(to bottom, rgba(0,0,0,0.1) 0%, rgba(0,0,0,0.1) 40%, rgba(0,0,0,0.1) 60%, rgba(0,0,0,0.1) 100%);
	box-sizing: border-box;
	z-index: 2;
}

.room-info-top {
	width: 100%;
}

.room-info-overlay p {
	color: #fff;
	margin: 0 0 5px 0;
	font-size: 1.1em;
	font-weight: 500;
	/* text-shadow: 0 1px 6px rgba(0,0,0,0.7); */
}

.room-info-overlay .room_buttons {
	margin-top: 12px;
}

a.room-card-link {
	display: block;
	text-decoration: none;
	color: inherit;
}

a.room-card-link:hover,
a.room-card-link:focus {
	text-decoration: none;
	outline: none;
}

p.room_title{
    font-size: 50px;
    line-height: 50px;
    font-family: 'Noto Serif';
    font-weight: 200;
    font-style: italic;
    max-width: 300px;
}
p.label_title{
	background: #d88b7a;
    margin-top: 35px;
    color: #fff;
    width: fit-content;
    padding: 20px;
    border-radius: 5px;
    font-family: 'Noto Serif';
    font-weight: 200;
    font-size: 19px;
    font-style: italic;
}
.more_rooms_section p.label_title{
	margin-bottom: 0;
}
.view_more_button{
	font-family: 'Noto Serif';
    font-weight: 250;
    font-size: 20px;
    font-style: italic;
    color: #fff;
    display: inline-flex;
    align-items: center;
    gap: 12px;
    position: relative;
    padding: 8px 0;
    padding-left: 29px;
    padding-right: 0;
    transition: padding-left 0.5s cubic-bezier(0.22, 1, 0.36, 1), padding-right 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}
.view_more_button::after {
    content: none;
}
.view_more_button:hover {
    padding-left: 0;
    padding-right: 29px;
}

.view_more_button:hover::before {
    left: calc(100% - 15px);
}
.view_more_button.blue:hover {
    color: #305D74;
}
.view_more_button.blue{
	color:#305D74;
}
.view_more_button::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 17px;
    height: 17px;
    background: url('../img/layout/icons/arrow_see_more_white.svg') no-repeat center;
    background-size: contain;
    transition: left 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}
.view_more_button::before {
    background: url('../img/layout/icons/arrow_see_more.svg') no-repeat center;
}

.more_rooms_section .view_more_button::before{
    background: url('../img/layout/icons/arrow_see_more_white.svg') no-repeat center;
}
.home_rooms_wrapper .view_more_button::before{
	 background: url('../img/layout/icons/arrow_see_more_white.svg') no-repeat center;
    background-size: contain;
}
.more_rooms_section .room-info-overlay {
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-end;
}
.more_rooms_section p.room_title {
    max-width: 100%;
}
.more_rooms_section .view_more_button {
    width: max-content;
}
p.main_title{
	color: #305D74;
	font-family: 'Noto Serif', serif;
	font-size: 75px;
	font-style: italic;
	font-weight: 200;
	text-align: center;
	line-height: 85px;
}
.gallery_padd p.main_title{
    font-size: 50px;
    text-align: left;
    padding-bottom: 25px;
    margin-bottom: 0;
    font-weight: 250;
}
p.main_subtitle{
	color: #305D74;
    font-family: 'Noto Sans', sans-serif;
    font-size: 21px;
    font-weight: 200;
    text-align: center;
    line-height: 35px;
    padding: 20px 30%;
}
.features-container {
	display: flex;
	flex-wrap: wrap; 
	justify-content: space-between;
	gap: 20px; 
	text-align: center;
	padding: 40px 10px;
	font-family: 'Noto Sans', sans-serif;
}

.feature-item {
	flex: 1;
	min-width: 220px;
	max-width: 300px;
}

.feature-icon {
	height: 70px;
	max-width: 100px;
	margin-bottom: 15px;
}

.feature-item h3 {
	font-family: 'Noto Serif', serif;
	font-style: italic;
	font-weight: 200;
	color: #305D74;
	margin-bottom: 10px;
	font-size: 35px;
	text-align: center;
}

.feature-item p {
	color: #305D74;
    font-size: 21px;
    line-height: 32px;
    font-weight: 200;
    padding: 20px 5% 0 5%;
}


.location-section{
	padding-bottom: 50px;
    position: relative;
    z-index: 1;
}

.page_text.location-section h6{
	text-align: left;
	margin-bottom: 20px;
}


.location_text {
	position: relative;
    overflow: hidden;
    display: block;
    padding-right: 100px;
}

.home_right_image{
	position: relative;
	padding-left: 50px;
    padding-top: 110px;
}
.home_right_image img{
	width:105%;
	z-index: 2;
    position: relative;
}

.parallax{ display: flex; justify-content: center; align-items: center; background-repeat: no-repeat; background-position: center center;}

.parallax_text {
	display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.parallax_text h2 {
	font-size: 80px;
    font-weight: 300;
    margin-bottom: 15px;
    color: #fff;
    font-family: 'Noto Sans', serif;
    position: relative;
    line-height: 95px;
}

.parallax_text p {
	color: #fff;
    font-family: 'Noto Sans', serif;
    font-size: 32px;
    margin-top: 40px;
    font-weight: 300;
    letter-spacing: 0.5px;
}

.slide_title {
	transition: all 1s ease-in-out;
}

.slide_title h2 {
	font-size: 70px;
    letter-spacing: 1px;
    color: #fffc;
    font-weight: 100;
    font-family: 'Noto Sans', sans-serif;
    position: absolute;
    bottom: -30px;
    width: 100%;
    left: -33px;
}

.slide_title h2 a {
    color: #fffc;
}

.rooms_grid_inner{  display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.grid_item{
	width:16.66667%;
	clear:both;
}
.grid_icon_rooms img{
	width:70px;
	margin-bottom:15px;
	transform: scale(0.95); transition: all 0.3s ease 0s;
}
.grid_item:hover .grid_icon_rooms img{
	transform: scale(1.00); transition: all 0.3s ease 0s;
}
.grid_icon_rooms_title{
	display: block;
	text-align:center;
	line-height:20px;
	letter-spacing:1px;
}

.sec_line{display:block;}


.page_home_bg:before {
    content: "";
	height: 180px;
    width: 2px;
    background: #a37f72;
    display: block;
    position: absolute;
    top: -90px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}
.page_home_bg {
	width: 100%;
	height: 70vh;
	margin-top: 0;
	/* margin-bottom: 15vh; */
	margin-bottom: 0;
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
	display: flex;
	align-items: center;
	justify-content: center;
}
.page_home_bg .more{color:#fff;}
.page_home_bg_text { text-align: center;   background: rgba(51 51 51 / 70%);    padding: 20px; }
.page_home_bg.hotel_home_page .page_home_bg_text {
	position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.page_home_bg_text h2{ color: #fff;letter-spacing: 0px;font-size: 40px;font-weight: 300;line-height: 1.1;letter-spacing: 6px;text-transform: uppercase;margin-top:50px;}
.page_home_bg_text p{     font-size: 18px;    font-weight: 300;    line-height: 30px;    color: #fff;    text-shadow: 1px 0 50px rgb(0 0 0 / 80%);    display: block;    margin-bottom: 20px;}

.space_between_suites{
	z-index: 0;
    position: relative;
}

.home_rooms_wrapper {
	padding: 155px 0 0 0;
	flex-direction: column;
	position: relative;
}
.home_rooms_wrapper::before {
    content: "";
    background: #5fa3a5;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    max-height: 550px;
    z-index: -1;
}
.home_rooms_wrapper.homepage::before {
    height: 70vh;
	min-height: 540px;
}
#swiper_rooms .swiper_img {
    padding: 0;
    display: flex;
    flex-direction: row-reverse;
}


.home_rooms_wrapper .room_content {
	display: flex;
	flex-direction: column;
}
.home_rooms_wrapper .room_content p{
	color:#fff;
	font-size: 20px;
    line-height: 34px;
    font-weight: 100;
}
.home_rooms_wrapper .room_content p.facilities_list{
    font-weight: 400;
	line-height: 40px;
}
  
.home_rooms_wrapper .room-info {
	flex: 1;
}
  
.home_rooms_wrapper .room-gallery {
	flex: 2;
}

.home_rooms_wrapper .room_buttons {
    display: flex;
    align-items: center;
    margin-top: 40px;
}
.home_rooms_wrapper .colored_button.white {
    padding: 32px 45px;
    font-size: 21px;
}

.service_left {
	padding: 50px 65px 0 8%;
}

.service_right {
	padding: 0px 8% 0 17%;
	position: relative;
	overflow: hidden;
}
#swiper_services{overflow: visible;}

/* #swiper_services .swiper-slide.swiper-slide-next, #swiper_services .swiper-slide.swiper-slide-prev{height: 50vh;margin-top: 85px;} */
#swiper_services .swiper-slide.swiper-slide-active .slide-title {
	position: absolute;
    bottom: 40px;
    left: 30px;
    color: white;
    padding: 10px;
    border-radius: 5px;
    font-size: 45px;
    font-weight: 200;
}
#swiper_services .swiper-slide.swiper-slide-prev .slide-title, #swiper_services .swiper-slide.swiper-slide-next .slide-title{display: none;}
/* .services_gallery{    
	bottom: -75px;
    position: relative;
} */
.pink_bg .services_gallery {
    /* margin-bottom: 120px; */
    padding-top: 0;
}
.services_gallery {
    overflow: hidden;
    padding-top: 25px;
    padding-bottom: 30px;
}

.service_right .suite-button-prev {
	left: 25px;
    top: 50%;
}

.service_right .suite-button-next {
	right: 0;
    top: 50%;
}

.page_text .service_left h2 {
	margin-bottom: 50px;
}
.page_text.service-section h6{margin-bottom:0}
.service_left .more {
	margin-top: 60px;
    padding: 18px 30px;
    color: #3b3b3b;
    background: transparent;
    border: 1px solid #3b3b3b;
}

.service_left .more:hover {
	color: #fff;
    border: 1px solid #f6f4ee;
}

.basic_text h1 {
	font-size: 72px;
    font-weight: 400;
    color: #fff;
    font-family: 'Noto Sans', serif;
    position: relative;
    line-height: normal;
	background: #00000001;
}

.basic_text h1 span {
	margin-left: 5%;
	font-style: italic;
}

.basic_text h6 {
	font-size: 22px;
	font-weight: 300;
	color: #5fa3a5;
	font-family: 'Noto Sans', serif;
	position: relative;
	line-height: 50px;
	text-align: center;
	letter-spacing: 9px;
	padding-bottom: 50px;
}
.space_between_suites.mob {
	display: none;
}

.dynamic_right_image {
	width: 75%;
    float: right;
    position: relative;
    margin: 0;
}

.dynamic_right_image:after {
	content: '';
    background: #fff;
    height: 100%;
    position: absolute;
    width: 100%;
    padding-bottom: 100vh;
}

.activities_boxes {
	position: relative;
    display: block;
    margin-top: 100px;
}

.activities_boxes h2 {
	position: absolute;
    background: #f4f3f2;
    color: #555;
    bottom: 0;
    margin: 0;
    padding: 12px 0;
    display: block;
    width: 100%;
	z-index: 1;
}

.activities_all_left {
	padding-right: 65px;
    position: relative;
    display: block;
    width: 49%;
	float: left;
}

.activities_all_right {
	padding-left: 65px;
	position: relative;
    display: inline-block;
    width: 49%;
	float: right;
}

.page_text.activities_intro .basic_text p {
	line-height: 65px;
	font-size: 52px;
}

.activities_all_left .experience_img, .activities_all_right .experience_img {
	overflow: hidden;
	transition: all 0.3s ease-in-out;
}

.activities_all_left .experience_img img, .activities_all_right .experience_img img {
	transition: all 0.3s ease-in-out;
}

.activities_all_left .experience_img:hover img, .activities_all_right .experience_img:hover img  {
	transform: scale(1.1);
	filter: brightness(0.7);
}


.experience_img {
	overflow: hidden;
}

.page_text .activity_description h3 {
    font-size: 28px;
    margin-bottom: 35px;
}

.activity_images .swiper-slide {
	height: 70vh;
    background-repeat: no-repeat;
    background-size: cover;
    filter: brightness(0.8);
}

.activity_images .num_photos {
	left: 50px;
    right: auto;
    bottom: 50px;
}

.activity_images .swiper-button-prev {
    bottom: 55px;
}

.activity_images .swiper-button-next {
    bottom: 55px;
}

.activity_images .swiper-slide a {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.page_text .basic_text .small_p p {
	font-size: 30px!important;
    line-height: 40px!important;
    margin-top: 35px!important;
}

.gallery {
    margin-bottom: 30px;
    transition: all 1s ease;
}

.gallery img {
    width: 100%;
    transition: all 1s ease;
}

.activity_description {
	padding: 100px 100px;
}

.page_intro h3{
	font-size: 50px;
    font-weight: 300;
    line-height: 66px;
    margin-bottom: 35px;
    color: #5fa3a5;
    font-family: 'Noto Sans', serif;
}
.page_intro h6{
	font-size: 22px;
    font-weight: 300;
    margin-bottom: 15px;
    color: #5fa3a5;
    font-family: 'Noto Sans', serif;
    position: relative;
    line-height: 50px;
    text-align: left;
    letter-spacing: 9px;
}
.page_intro.hotel h6 {text-transform: uppercase;}
.page_intro p{
	margin-bottom: 10px;
    font-size: 20px;
    font-weight: 200;
    line-height: 32px;
    color: #3B3B3B;
	padding: 10px 0;
}

.page_intro img{
	border-radius:50%
}
.page_intro::after {
	content: "";
    background: #aecece;
    position: absolute;
    top: 0;
    right: 0;
    width: 40%;
    height: 50%;
    z-index: -1;
}
.page_intro.hotel::after {
    display: none;
}
.page_description .room_details_wrap:after {
	display: none;
}

.page_gallery_wrapper {
	padding: 130px 0 0px 0;
    margin-top: 100px;
	flex-direction: column;
}
.page_gallery_wrapper.pink_bg, .service-section.pink_bg{padding: 70px 0 0px 0;}

.page_description .room_details_wrap {
	z-index: 1;
}

.page_description .page_inner_left {
	padding: 40px 50px 40px 0px;
}

.page_description .page_inner_right {
	padding: 40px 0px 40px 50px;
}

.page_text.page_description h3 {
	font-weight: 600;
}

.activity_wrapper {
	position: relative;
	display: block;
    overflow: hidden;
	transition: all 0.5s ease-in-out;
}

.activity_wrapper.sec {
	margin-top: 80px;
    margin-left: 15px;
	margin-right: 15px;
}

.activity_wrapper.sec h2 {
	top: 0;
    bottom: auto;
}


.activity_wrapper img {
	transition: all 0.5s ease-in-out;
}

.activity_wrapper:hover img {
	transform: scale(1.05);
	transition: all 0.5s ease-in-out;
}

.activity_number {
	position: relative;
    right: 0;
    top: 0px;
}

.activity_number p {
    top: 0px;
    font-size: 55px;
    position: relative;
    color: #899666;
    font-family: 'Noto Sans', serif;
    font-weight: 300;
    float: right;
    padding-right: 25px;
}

.beach_img {
	z-index: 2;
    position: relative;
    filter: brightness(0) sepia(1) saturate(1);
    opacity: 0.8;
    transition: filter 2.5s ease, opacity 2s ease;
}
.beach_img.polaroid-revealed {
    filter: brightness(1) sepia(0) saturate(1);
    opacity: 1;
}

.page_text .page_description  ul {
    list-style: inside;
}

.page_text .page_description ul li {
	background: none;
    font-size: 20px;
    margin: 7px 0;
}

h2.location_title {
	color: #84827E;
    font-size: 75px;
    font-weight: 100;
    font-family: 'Noto Sans', sans-serif;
    margin-bottom: 80px;
    line-height: 90px;
    margin-left: 100px;
}

.map {
	padding: 100px 0;
	background: #E3DFDA;
	position: relative;
	display: block;
	overflow: hidden;
}

/* ==================== BOOKING FORM ==================== */

.booking_form{background: #f9f7f3;border-radius: 5px; padding: 12px 12px;}
.book_info {
	padding-top: 30px;
    padding-bottom: 30px;  
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.book_info_numbers {
	flex-direction: row;
}

.book_info label{
	font-family: 'Noto Sans', serif;
	font-size: 22px;
    display: block;
    color: #000;
    font-weight: 100;
    text-align: center;
	margin-top: 15px;
    margin-bottom: 10px;
}
.book_info input {
	padding: 10px 5px;
    font-size: 20px;
    width: 100%;
    display: block;
    color: #333;
    font-weight: 300;
    text-align: center;
    background: transparent;
    border: none;
    background-image: url(../img/layout/arrow_down_black.svg);
    background-size: 12px;
    background-repeat: no-repeat;
    background-position: top center;
}
.book_info.book_info_numbers input { width: 28px; }
.book_info select{
	font-size: 20px;
    width: 100%;
    padding-top: 15px;
    display: block;
    color: #000;
    font-weight: 300;
    text-align: center;
    background: transparent;
    border: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none !important;
    background-image: url(../img/layout/arrow_down_black.svg);
    background-size: 12px;
    background-repeat: no-repeat;
    background-position: top center;
}

.book_info .minus, .book_info .plus {
	display: block;
	position:absolute;
	top:50px;
	right:40px;
  font-weight: 700;
  font-size: 24px;
  color: #000;
}

.book_info_bottom input {
  text-align: unset;
}

.book_info .minus { top:80px;  }
.book_info .minus img, .book_info .plus img{ width:24px;}
.book_submit {
	padding-bottom: 15px;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 170px;
}
.book_submit button {
	background: none;
    border: none;
    color: #000;
    padding: 0px;
    font-size: 22px;
    font-weight: 100;
    line-height: 80px;
    font-family: 'Noto Sans', serif;
}

.book_submit button img {
	width: 35px;
	height: 35px;
	display: inline-block;
	margin-left: 10px;
}

.book_info_date img, .book_info_numbers img {
	width: 23px;
}

.book_info_bottom {
	width: 30px;
	display: flex;
	/* background: red; */
	position: relative;
	justify-content: center;
	align-content: center;
	text-align: center;
}

.shadow_wrapper {
	position: absolute;
}

.booking_shadow {
	background: #00000021;
    height: 105px;
    position: absolute;
    z-index: 9;
    top: -105px;
    width: 100%;
}

.book_arrows {
  display: block;
  width: 100%;
  margin-top:3px;
}

.book_info .minus, .book_info .plus {
  display: block;
  position: relative;
}

.book_info .minus img, .book_info .plus img {
  width: 16px;
}

.book_info .minus {
    top: unset;
}

.book_info .minus, .book_info .plus {
    position: relative;
    top: unset;
    right: unset;
	}

.booking_date {
  display: block;
  width: 100%;
  overflow: hidden;
}

.booking_phone{
	text-align:center;
	margin-top:20px;
}
.booking_phone p{
    font-size: 16px;
    line-height: 26px;
	padding:5px;
    margin-bottom: 40px;
    color: #000;
    font-weight: 300;
	font-style: italic;
	border-bottom:1px solid #000;
	display: inline-block;
	transition: all 0.3s ease 0s;   
}

.booking_phone p i{
	font-weight: 300;
}
.booking_phone p span{
	font-weight: 700;
	color: #674439;
}
.booking_phone:hover p{
	letter-spacing:0.1px;
	transition: all 0.3s ease 0s;     
}

/* ==================== END BOOKING FORM ==================== */



/* ==================== HOME VIDEO ==================== */
.video_container_general{  width: 100%;    position: relative;    top: 0;    left: 0;    margin: 0 auto;    padding: 55.921875% 0 0;    z-index: 1;}
.video_container_general video {width: 100%; height: auto; position: absolute; left: 0; top: 0; right: 0;  bottom: 0;}

.video_caption{position:absolute;top:40%;width:100%;z-index:1;text-align:center;}
.video_caption p{font-size:20px;color:#fff;text-shadow:0px 0px 8px #000;}
.video_caption p.header_video{font-size:60px;font-weight:300;}
.video_caption a{padding:15px 15px 10px 15px;border:1px solid #fff;color:#fff;display:inline-block;background:rgba(0,0,0,0.2);margin-top:20px;transition: all 0.2s ease-in; font-weight: 300; font-size:18px;letter-spacing:1px;}
.video_caption a:hover{border:1px solid #000;background:rgba(0,0,0,1);transition: all 0.2s ease-in;}

/* END HOME VIDEO
================================================== */

/* ROOMS PAGE
================================================== */
.room_box_image { display:block; position:relative;	overflow:hidden;margin-bottom:100px; }
.room_box_image img{ width:100%; transition: all 0.3s ease 0s;}
.room_box_image:hover img{  transform: scale(1.05); transition: all 0.3s ease 0s;}

.room_box {
	width: 49%;
    display: inline-block;
	text-align: center;
	margin: 60px 0;
}

.room_box img {
	width: 85px;
}

.room_box h3 {
	color: #5fa3a5;
    font-size: 95px;
    font-family: 'Noto Sans', serif;
    font-weight: 500;
    line-height: 70px;
}

.room_details_wrap {
	padding: 100px 100px;
    background: #F6F4EE;
    position: relative;
    display: flex;
    margin: 0 100px;
}

.room_details_wrap:after {
	content: '';
    position: absolute;
    width: calc(100% - 250px);
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border-bottom: 1px solid #444;
}

.room_details_wrap:before {
	content: '';
    position: absolute;
    height: calc(100% - 200px);
    right: 0;
    margin: 0 auto;
    top: 50%;
    left: 0;
    border-right: 1px solid #444;
    transform: translate(-50%, -50%);
}

.room_box .room_box_title { font-size: 30px;    font-weight: 300;    line-height: 40px;    color: #674439;    text-transform: uppercase;    font-family: 'Noto Sans', serif; }
.room_box .room_box_subtitle {font-size: 16px;    line-height: 30px;    margin: 10px 0 30px 0;    font-weight: 300;}
.room_box a {margin-top:50px;float:left;}

.book_room_link {    position: absolute;    left: 0;    top: 30px; z-index:99;    }
.book_room_link a {    
	z-index:999;
	position:relative;
	display: block;
	font-weight: 400;
    letter-spacing: 0.5px;
	color: #fff;
	background: #4c586f;	 
	border: 2px solid #4c586f;  	
	padding: 10px 20px 10px 20px;
	transition: all 0.3s ease 0s;     
}
.book_room_link:hover a{
    color:#3D3D3B;
	background: none;
	transition: all 0.3s ease 0s;
}	
.room_intro.room_view h3{
	color: #305D74;
    font-family: "Noto Serif", serif;
    font-size: 55px;
    font-style: italic;
    font-weight: 200;
    text-align: center;
    line-height: 75px;
}

.room_intro.room_view h6{
	font-size: 22px;
    font-weight: 300;
    margin-bottom: 75px;
    color: #5fa3a5;
    font-family: 'Noto Sans', serif;
    position: relative;
    line-height: 50px;
    text-align: center;
    letter-spacing: 9px;
}

.room_intro.room_view .short_description p{
	font-size: 24px;
	font-weight: 500;
	line-height: 55px;
	text-align: left;
	color: #5fa3a5;
	font-family: 'Noto Sans', serif;
	padding: 0;
}
.room_intro.room_view .short_description p.intro_text {
    margin-bottom: 10px;
    font-size: 20px;
    font-weight: 200;
    line-height: 40px;
    color: #3B3B3B;
    padding: 10px 0;
}
.room_intro.room_view .short_description p strong{
	color: #ebe2c7;
}
.room_intro.room_view .room_buttons{
	margin-top: 50px
}

.room_info_section{margin-top:150px; overflow: visible!important;padding-bottom: 80px;}
.facilities_section{display: flex; align-items: center;}


.room_facilities ul li {  
	margin-bottom: 20px;
    width: fit-content;
    display: inline-flex;
    padding: 15px 10px;
    font-size: 23px;
    color: #305D74;
    background: none;
    overflow: hidden;
    line-height: 45px;
    font-weight: 250;
    font-family: 'Noto Serif', serif;
    font-style: italic;
    flex-direction: column;
    align-items: center;
	min-width: 18%;
}
.room_facilities ul li img{  
    max-width: 90px;
    max-height: 60px;
	margin-bottom: 15px;
}
.facilities_section h6{
	color: #305D74;
    font-family: "Noto Serif", serif;
    font-size: 60px;
    font-style: italic;
    font-weight: 200;
    text-align: left;
    line-height: 65px;
    min-width: 30vw;
}
.all_room_types h6{
	color: #fff;
    font-family: "Noto Serif", serif;
    font-size: 75px;
    font-style: italic;
    font-weight: 200;
    text-align: center;
    line-height: 65px;
    min-width: 30vw;
    padding-bottom: 50px;
}
.more_rooms_section{
	position: relative;
}
.more_rooms_section::before {
	content: '';
    background: #5fa3a5;
    width: 100%;
    height: 50vh;
    position: absolute;
}
.more_rooms  { margin-bottom:20px; position: relative; margin-top: 50px; }
.more_rooms img  {width:100%;display:block;height: auto;}
.more_rooms a {	}

.more_rooms a span{
	font-size: 16px;
    line-height: normal;
    letter-spacing: 1.7px;
    color: #fffbeb;
    text-transform: uppercase;
    margin-top: 0px;
    margin-bottom: 10px;
    font-weight: 400;
    background: #000;
    display: block;
    padding: 7px 0px;
	text-align: center;
	width: 100%;

}

.more_rooms_section .room_content .room .room-info p {
    color: #5fa3a5;
    font-size: 20px;
    line-height: 34px;
    font-weight: 200;
}
.more_rooms_section .room_content .room .room-info p.facilities_list {
    font-weight: 400;
    line-height: 40px;
}
.more_rooms_section .room_content .room .room-info .room_buttons{
	display: flex;
	align-items: center;
	margin-top: 40px;
}
.more_rooms_section .room_content .room .room-info .room_buttons .main_button {
    font-size: 18px;
    margin-right: 35px;
}
.more_rooms_section .room_content .room .room-info .room_buttons  .colored_button {
    font-size: 20px;
	margin-left: 5px;
}

.other_rooms .rooms_description h2 {
    color: #606060;
	position: relative;
    top: -60px;
	line-height: 70px;
}


.other_rooms a {
    color: #444;
    height: 100%;
    font-size: 40px;
	font-weight: 300;
    font-family: 'Noto Sans', serif;
}

.other_rooms .rooms_description {
	display: flex;
    align-items: flex-end;
}

.page_text .basic_text p {
    font-size: 55px;
    line-height: 40px;
    font-weight: 200;
	margin-bottom: 0;
	padding: 40px 0; 
}

.room .room_number {
	position: absolute;
    top: -47px;
    z-index: 0;
    overflow: hidden;
}

.room, .blog {
    position: relative;
    display: flex;
	align-items: center;
    transition: all 0.5s ease-in-out;
}

.room img {
	position: relative;
	width: 100%;
	z-index: 1;
	transition: all 0.5s ease-in-out;
}

.page_text .room .room_number p {
	font-size: 57px;
    position: relative;
    color: #5fa3a5;
    font-family: 'Noto Sans', serif;
    font-weight: 300;
    line-height: 57px;
    border: 1px solid #5fa3a5;
    padding: 20px 23px;
    margin-bottom: 50px;
}

.room_number p:before {
    content: '';
    position: absolute;
    border-right: 1px solid #5fa3a5;
    height: 50px;
    right: 0;
    left: 0;
    margin: 0px auto;
    width: 1px;
    bottom: -50px;
}

.room .room_image {
	position: relative;
    overflow: hidden;
    display: block;
    z-index: 9;
}

.room .icon_img {
	transition: all 0.5s ease-in-out;
}

.room:hover .icon_img {
	opacity: 1;
}

.room .icon_img {
	width: 370px;
    height: 320px;
    right: auto;
    margin: 0;
    left: -240px;
    top: -120px;
    z-index: 3;
    opacity: 0.4;
}

.room .rooms_description, .blog .blog_description {
	z-index: 3;
    position: absolute;
    padding: 8%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    transform: translate(0%, -50%);
}

.room.middle .rooms_description, .blog.middle .blog_description {
	z-index: 3;
    position: absolute;
    padding: 8%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    transform: translate(0%, -50%);
}
.blog .blog_description, .blog.middle .blog_description {
    align-items: flex-start;
}
.room .room_intro_text, .blog .blog_intro_text{
	display: flex;
	align-items: center;
    
    /* position:relative; */
}
.room .room_intro_text{z-index: 8;}

.room .room_image::after {
    content: '';
    position: absolute;
    width: 40px;
    height: 40px;
    left: -20px;
    right:unset;
    top: 50%;
    z-index: 9;
    border: 1px solid #e8d8c3;
    background: #e8d8c3;
    transform: rotate(45deg);
    box-sizing: border-box;
}
.room.middle .room_image::after {
    content: '';
    position: absolute;
    width: 40px;
    height: 40px;
    left: unset;
    right: -20px;
    top: 50%;
    z-index: 9;
    border: 1px solid #e8d8c3;
    background: #e8d8c3;
    transform: rotate(45deg);
    box-sizing: border-box;
}
.room_buttons .orange_button{
	margin-top: 0
}
.room .room_intro_text .room_buttons, .blog .blog_intro_text .blog_button{
	display: flex;
    align-items: center;
	margin-top: 0;
	gap: 50px;
}
.blog .blog_intro_text .blog_button{
	margin-top:30px
}
.room .room_intro_text .room_title h1, .room .room_intro_text .room_intro p, .blog .blog_intro_text .blog_title h1, .blog .blog_intro_text .blog_intro p{
	padding:0 
}
.room .room_intro_text .room_title h1, .blog .blog_intro_text .blog_title h1{
	text-align: left;
}
.room.middle .room_intro_text .room_title h1, .room.middle .room_intro_text .room_intro p{
	text-align: right;
}
.blog.middle .blog_intro_text .blog_title h1, .blog.middle .blog_intro_text .blog_intro p{
	text-align: left
}
.room .room_intro_text p.facilities_list{
	font-weight:400;
	padding-top: 30px;
}

.room .room_intro_text .room_buttons .room_more {
    margin: 32px 20px 0 0px;
}

.room .room_intro_text p{
    text-align: center;
    color: #305D74;
    font-size: 20px;
    line-height: 34px;
    font-weight: 300;
}
.blog .blog_intro_text p{
    text-align: left;
    color: #305D74;
    font-size: 19px;
    line-height: 32px;
    font-weight: 250;
}
.num_photos {
	position: absolute;
    right: 50px;
    bottom: 50px;
    color: #fff;
    z-index: 2;
    padding: 10px 17px;
	background: #00000001;
	width:150px
}
#room_gallery  {
  position: relative
}
#room_gallery::before  {
	background: #e8d8c3;
	width: 100%;
	height:50vh;
	position: absolute
}

.swiper_elements{
	text-align:center; 
	margin-top:20px;
}
.all_photos {
    padding-left: 15px;
    text-align: right;
    position: relative;
	font-size: 25px;
    font-weight: 200;
    letter-spacing: 1px;
}

.all_photos::before {
	content: '';
    position: absolute;
    top: 11px;
    width: 100%;
    height: 1px;
    background: #fff;
    right: 40px;
}

.room .room_bg {
	width: 100%;
    position: absolute;
    height: 70%;
    bottom: -50px;
    left: -85px;
    background-color: #ebe2c7;
}

.room.reverse-991 .room_bg {
	left: auto;
    right: -85px;
}

.room .rooms_description p.last {
	border-bottom: none;
	padding-bottom: 0px;
}

.room .swiper_buttons .more {
    margin-left: 210px;
	font-size: 18px;
	z-index: 11;
}

.home_header_content.rooms_view h1 {
	padding: 0 10%;
}

.complex.mob {
	display: none;
}

.page_text .complex h2 {
	font-family: 'Noto Sans', serif;
    font-size: 40px;
    font-weight: 100;
    margin-top: 135px;
	margin-bottom: 55px;
}

.page_text .complex h2:before {
	content: '';
    position: absolute;
    border-top: 1px solid #899666;
    width: 77px;
    transform: rotate(90deg);
    left: 0;
    right: 0;
    margin: 0 auto 0 auto;
    top: 65px;
}

.level-box {
	display: flex;
    align-items: center;
    position: relative;
}

p.complex_middle {
	color: #8A9666;
    font-weight: 400;
    font-size: 37px;
    margin-left: 60px;
    font-family: 'Noto Sans', serif;
}

p.complex_middle:before {
	content: '';
    border-top: 1px solid #8A9666;
    width: 60%;
    left: -100px;
    position: absolute;
    margin-top: 15px;
}

p.complex_middle:after {
    content: '';
    background-image: url(../img/layout/arrow_up_levels.svg);
    background-size: 20px;
    width: 20px;
    background-repeat: no-repeat;
    height: 50px;
    position: absolute;
    margin-top: 100px;
    margin-left: -68px;
}

.level_text {
	text-align: left;
}

.level3 {
	width: 75%;
	margin-left: 10%;
}

.level2 {
	width: 126%;
    margin-left: -10%;
}

.level-box.level-2 {
	margin-top: -5px;
}

.level1 {
	width: 140%;
	margin-left: -17%;
}

.level-box.level-1 {
	margin-top: -5px;
}

.level-box.level-2 p.complex_middle:before {
    width: 40%;
    left: -20px;
}

.level-box.level-1 p.complex_middle:before {
	width: 22%;
    left: 50px;
}

.level-box.level-2 p.complex_middle:after {
    margin-top: 140px;
}

.level-box.level-1 p.complex_middle:after {
	display: none;
}

.room_info{text-align:center;position:relative;margin-bottom:50px;padding-bottom:100px;}
.room_info p{}
.room_info::after {
    content: "";
    height: 80px;
    width: 1px;
    background: #29365b;
    display: block;
    position: absolute;
    bottom: 0px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}
.room_plan{
	text-align:center;
}

.room_plan a{
	border-top:1px solid #000;
	padding:10px;
	font-weight:700;
	color: #29365b;
	display: block;
}

.room_plan a.not_show{
	display: none;
}
.link_gallery{
	height:70vh;
	text-align:center;
}

.link_gallery a{
	margin-top:33vh;
	font-size: 18px;
	font-weight: 300;
	color: #000;
	padding: 10px 20px;
	border: 1px solid #fff;
	display: inline-block;
	position: relative;
	cursor: pointer;
	text-transform: uppercase;
	overflow: hidden;
	background-color: #F6F3EA;
	-webkit-transform: scaleX(1.01);  -ms-transform: scaleX(1.01);  transform: scaleX(1.01);  -webkit-transform-origin: left;  -ms-transform-origin: left;  transform-origin: left; -webkit-transition: .37s cubic-bezier(.25,.04,0,.93);  -o-transition: .37s cubic-bezier(.25,.04,0,.93);  transition: .37s cubic-bezier(.25,.04,0,.93);  -webkit-backface-visibility: hidden;  backface-visibility: hidden;
}

.link_gallery a:hover{
	-webkit-transform: scaleX(1.03);  -ms-transform: scaleX(1.03);  transform: scaleX(1.03)
}

.left_image_amenities{
	width:70%;
}
.amenities_container{
	position:relative;
	padding:50px;
}

.page_text .amenities_container h3{
    font-size: 40px;
    font-weight: 300;
    line-height: 50px;
    color: #674439;
    text-transform: uppercase;
    font-family: 'Noto Sans', serif;
}

.page_text .amenities_container ul li{
	display: inline-block;
	width: 49%;
	margin:2px 0 2px 0;
}

.room_more_title{
	text-align:center;
	position:relative;
    padding-bottom: 70px;
    margin-bottom: 20px;
}

.room_more_title::after {
    content: "";
    height: 60px;
    width: 1px;
    background: #29365b;
    display: block;
    position: absolute;
    bottom: 0px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}

.room_more_title h4{
	font-size: 28px;
    font-weight: 300;
    line-height: 40px;
    color: #674439;
    text-transform: uppercase;
    font-family: 'Noto Sans', serif;
}

/* FACILITIES PAGE
================================================== */

.facility_text { padding-top:80px;}

.facility_left_image {}
.facility_left_image img {max-width:100%;}

.facility_right_image {text-align:right;}
.facility_right_image img {max-width:100%;}

.benatura_logo { float:right; margin:0 0 20px 20px;}
.enjoy_logo { float:right; margin:0 0 20px 20px;}


/* SIGHTS PAGE
================================================== */
.sights_intro .align_intro_text{
	padding: 85px 20%;
    text-align: center;
}
.sight_intro{
	padding: 0 0 0 15%;
	display: flex;
    flex-direction: column;
    align-items: flex-start;
}
.sight_intro.left{
	padding: 0 15% 0 0
}
.sight_intro p{
    color: #305D74;
    font-size: 20px;
    line-height: 34px;
    font-weight: 300;
}
.sight_intro p.subtitle{
    font-size: 35px;
    font-weight: 250;
    color: #305D74;
    line-height: 48px;
    position: relative;
    margin-bottom: 35px;
    font-family: 'Noto Serif';
    font-style: italic;
}
.blog_text p.subtitle{
    font-size: 35px;
    font-weight: 250;
    color: #305D74;
    line-height: 48px;
    position: relative;
    margin-bottom: 35px;
    font-family: 'Noto Serif';
    font-style: italic;
}
.sight_content {  float:left; margin-bottom:40px;}

.sight_description {
	background: #fff;
    width: 85%;
    padding: 3% 13%;
    position: relative;
	height: calc(65vh + 80px);
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.sight_description.left {
	float: right;
	height: calc(65vh + 80px);
}

.sight_wrapper {
	position: relative;
    display: inline-flex;
    background: #E3DFDA;
}

h3.sight_title {
    font-size: 40px;
    line-height: 45px;
    font-weight: 400;
    letter-spacing: normal;
    margin-bottom: 40px;
    color: #333;
    font-family: 'Noto Sans', sans-serif;
}

.sight-image {
	height: calc(65vh + 80px);
}

.beige_bg.sights {
	height: 80px;
    width: 58.33%;
    position: absolute;
    top: 0;
    right: 0;
    background: #e3dfda;
    z-index: 998;
}

.beige_bg.sights.left {
	left: 0;
	bottom: -80px;
	top: auto;
}



/* OFFERS PAGE
================================================== */
.page_text.offer h2 {
	color: #000;
    line-height: 30px;
}

.offer_box {
	margin: 30px 0;
	padding-top: 20px;
    border-top: 1px solid #ddd;
}

/* BLOG PAGE
================================================== */
.blog_box {  margin-top:20px;margin-bottom:20px;}
.blog_box .blog_image {  margin-bottom:20px;}
.blog_view_banner h1{font-size: 70px; line-height: 80px;}
.blog_intro .align_intro_text{padding: 85px 20%;  text-align: center;flex-direction: column;align-items: center;}
.sight-card.article_image {
    background: #fff;
    padding: 15px;
    display: inline-flex;
    flex-direction: column;
    float: right;
	width: 25vw;
	min-width: 370px;
    margin-left: 50px;
    margin-bottom: 25px;
}
.page_text.blog_text .align_intro_text{
	flex-direction: column;
	align-items: center;
	gap: 5px;    
	text-align: center;
	padding: 0 10%;
}
#sights-gallery-swiper .sight-card{ flex-direction: column;    align-items: flex-start;}
/* GALLERY PAGE
================================================== */

#tabs {
	text-align: center;
    margin-bottom: 60px;
}

.tabs_section.page_text h1 {
    padding-left: 0;
    margin-left: 0;
    text-align: center;
}

.tabs_section.page_text p {
	text-align: center;
    margin-bottom: 50px;
}

.page_text #tabs li {
    margin: 5px 0 5px 0;
    padding: 0px 10px 0 10px;
    font-size: 23px;
    font-weight: 400;
    line-height: 30px;
    background: none;
    font-family: 'Noto Sans', serif;
    transition: all 0.3s ease 0s;
    display: inline-block;
}

#tabs li a {
    color: #889566;
	border-bottom: 1px solid #889566;
	cursor: pointer;
}

#tabs li a.inactive {
    color: #444;
   	border-bottom: none;
}

.gallery_title {text-align:center;}
.gallery_page h3{font-size: 40px;    font-weight: 300;    line-height: 60px;    color: #674439;    text-transform: uppercase; font-family: 'Noto Sans', serif;}

.gallery_box {
	margin-bottom: 20px;
    position: relative;
    padding-left: 130px;
    background: #EBEAE6;
	margin-top: 50px;
	width: calc(50% - 70px);
}
.gallery_box.right {
	margin-bottom: 20px;
    position: relative;
    padding-left: 0px;
	padding-right: 130px;
    background: #EBEAE6;
	margin-top: 160px;
    margin-left: 70px;
}
.gallery_box .gallery_image { position:relative;	overflow:hidden; }
.gallery_box img {width:100%; transition: all 0.3s ease 0s;}
.gallery_box .gallery_text {  z-index:9;width:100%;text-align:left;display:block;  transition: all 0.3s ease 0s;}
.gallery_box.right .gallery_text { text-align: right; }
.gallery_box .gallery_text span{
	font-size: 35px;
    line-height: normal;
    letter-spacing: 1px;
    color: #606060;
    font-weight: 100;
    background: #fff;
    display: block;
    padding: 45px 35px;
    transition: all 0.3s ease 0s;
}

.gallery_text span p {
	font-size: 20px;
    line-height: normal;
    margin-top: 15px;
	letter-spacing: 1px;
}

.gallery_box:hover .gallery_text span { letter-spacing: 1.5px; transition: all 0.3s ease 0s; }
.gallery_box:hover .gallery_text span p { letter-spacing: 1px; }

/* Shine */
.gallery_box .gallery_image::before {
	position: absolute;
	top: 0;
	left: -95%;
	z-index: 2;
	display: block;
	content: '';
	width: 50%;
	height: 100%;
	background: -webkit-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,.3) 100%);
	background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,.3) 100%);
	-webkit-transform: skewX(-25deg);
	transform: skewX(-25deg);
}
.gallery_box:hover .gallery_image::before {
	-webkit-animation: shine 1s;
	animation: shine 1s;
}
@-webkit-keyframes shine {
	100% {
		left: 125%;
	}
}
@keyframes shine {
	100% {
		left: 125%;
	}
}

/* .gallery_box:hover img{  transform: scale(1.05); transition: all 0.3s ease 0s;} */
/* .gallery_box:hover span{ color:#f1f1f1; transition: all 0.3s ease 0s;} */

.albums_swiper {
    position: relative;
    display: block;
    overflow: hidden;
    margin-left: 8%;
	padding-bottom: 120px;
}

.gallery_page {
	background-color: #EBEAE6;
	padding-bottom: 0px;
	margin-top: 70px;
	padding-top: 0;
}


/* LOCATION PAGE
================================================== */

#map{  width:100%;height:100%; min-height:600px; margin:0 auto; position: relative;}

.driveme { position:relative;}
.driveme a { display:block;position:absolute;top:-30px;left:50%;margin-left:-230px;padding:20px 30px 20px 60px;background:#d5deda url(../img/layout/driveme.svg) no-repeat 15px center;color:#3D3D3B;z-index:998;font-size: 20px; font-weight:300; transition: all 0.3s ease 0s;}
.driveme a:hover { color: #fff; background:#3D3D3B url(../img/layout/driveme_hover.svg) no-repeat 15px center;}


/* CONTACT PAGE
================================================== */
.contact_bg {
	background-image: url(../img/layout/bg_graphic.svg);
    background-size: 90%;
    background-repeat: no-repeat;
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 0;
    right: 0;
    top: 50px;
    background-position: top center;
}

.page_text .contact_wrapper h1 {
	font-size: 70px;
    font-weight: 400;
    color: #3A3A3A;
    margin-bottom: 180px;
	z-index: 1;
}

.contact_info img {
	width: 26px;
    margin-right: 20px;
}

.contact_info img.facebook {
	width: 15px;
}

.contact_info img.twitter {
	width: 28px;
}

.container-fluid.no-padding.contact_intro {
	overflow: visible!important;
}

.page_text.contact_intro h6{
	margin-top: 85px;
	margin-bottom: 85px;
}

.contact_wrapper {
	position: relative;
    display: block;
    overflow: hidden;
}

.contact_info {
    padding: 40px 60px;
	background: #5fa3a5;
	border-radius: 7px
}
.inner_menu .contact_info {
    padding: 0px 60px;
}
.contact_left {
	width: 75%;
	position: relative;
    top: -146px;
}

.contact_info a {
	color: #fff;
}

.contact_info p {
    font-size: 20px;
	line-height: 28px;
    color: #fff;
    font-weight: 250;
    border-bottom: 1px solid #fff;
    padding: 30px 0;
    margin-bottom: 0;
	display: flex;
    align-items: center;
}
.contact_info p strong{
	font-weight: 200;
	font-family: 'Noto Serif', serif;
	font-size: 24px;
	font-style:italic;
	width: 8vw;
}
.inner_menu .contact_info p strong{
	font-size: 21px;
}
.inner_menu .contact_info p {
    font-size: 18px;
    line-height: 27px;
    padding: 20px 0;
}
.contact_info p:last-of-type {
    border-bottom: none;
}
.colored_button.google_maps{
	margin-top:50px
}
.contact_info a.colored_button.google_maps {color: #5fa3a5;font-size: 17px;line-height: 28px;}
.contact_info a.colored_button.google_maps:hover{color:#fff}
.contact_social {
	position: absolute;
    bottom: 65px;
    right: 80px;
}

p.last a.more {
	margin-top: 40px;
	z-index: 1;
}

.contact_info p.last i {
	top: 2px;
    margin-left: 5px;
    position: relative;
}

p.contact_details {
	margin-top: 45px;
    padding-right: 100px;
    line-height: 32px;
}

.form_row{
	display: flex;
	gap: 40px;
}
.contact_form h4{
    color: #000;
	font-size: 30px;
    line-height: 36px;
    margin-top: 10px;
    margin-bottom: 50px;
    font-weight: 400;
    font-family: 'Noto Sans', serif;
}
.contactform{	
	width:100%;	
}
.contactform div.input{
	float: left;
    margin: 0;
    padding: 0 0 35px 0;
    width: 100%;
    position: relative;
    background: none;
}

.contactform div.textarea {
	float: left;
    margin: 0px 0 35px 0;
    padding: 0;
    width: 100%;
}

.contactform div.submit{
	float: right;
    margin: 0px 0 0px 0;
    padding: 0;
    text-align: center;
}


.contactform div.input.checkbox {
	width: 49%;
}

.contactform div.input label {
	font-size: 19px;
	font-weight: 250;
    /* margin-bottom: 15px; */
	color: #305D74;
}

.contactform input[type="text"], .contactform textarea {
	width: 100%;
    padding: 5px 0px 14px 0;
    margin: 0px;
    font-size: 19px;
    background: transparent;
    color: #305D74;
    transition: all 0.4s ease;
    text-align: left;
    float: left;
    font-weight: 300;
    border: 0px none;
    border-bottom: 1px solid #305D74;
}

.contactform input[type="text"]::placeholder, .contactform textarea::placeholder {
	color: #305D74;
	font-weight: 200;
}

.contactform textarea {	
	width: 100%;
    height: 40px;
    padding: 10px 10px 10px 0;
    border-bottom: 1px solid #305D74;
}

.contactform div.input.textarea label, .contactform div.input.checkbox label {
	display: block;
    color: #305D74;
    font-weight: 250;
    font-size: 19px;
}

.terms_link a {
	border-bottom: 1px solid #305D74;
}

.checkbox input[type=checkbox] {
    margin-left: 0;
}

.contactform input[type="text"]:focus, .contactform input[type="text"]:hover {
	outline: none;
	background:none; 
	border-bottom: 1px solid #444;
}

.contactform textarea:focus, .contactform textarea:hover {
	outline: none;
	background: none; 
	border-bottom: 1px solid #305D74;
}

.submit_row{
	display: flex;
}
.submit_row .mandatory_fields{
	display: flex;
	align-items: center;
}
.contactform div.submit input{
    color: #fff;
    cursor: pointer;
    text-align: center;
    background: #d88b7a;
    border-radius: 7px;
    display: block;
    padding: 22px 80px;
	font-size: 20px;
    font-weight: 200;
    font-family: 'Noto Serif', serif;
    transition: all 0.3s ease 0s;
    float: right;
    border: unset;
    font-style: italic;
}

.contact_form p {
	font-size: 18px;
	float: left;
    left: 0;
    color: #305D74;
    position: absolute;
    font-weight: 250;
	font-family: 'Noto Sans', serif;
	font-style: italic;
}

.contactform div.submit input:hover{	
	color: #fff;
    background: #d88b7a;
	border-radius: 7px;  
    transition: all 0.3s ease 0s;
}
.contactform div.submit input:active{	
	color: #fff;
    background: #d88b7a;
	border-radius: 7px;   
    transition: all 0.3s ease 0s;
}

.contactform .required label:after {
	color:#e32;
	content:'*';
	display:inline;
}
.contactform div label.error{
	color:#e32;
	font-size:14px;
	width:100%;
	margin-top:5px;
	text-align:left;
	float: left;
}

.info-window-content{padding:10px;}
.info-window-content p.balloon-first{
	font-size: 23px;
    margin: 10px 0;
    color: #3B3B3B;
    font-weight: 400;
    font-family: 'Noto Sans', serif;
    border-bottom: 2px solid #5fa3a5;
}
.info-window-content p.balloon-second{
	font-size: 14px;
    text-decoration: none;
    margin: 0px 0 0px 0;
    font-weight: 300;
    color: #333;
    line-height: 22px;
}
.info-window-content p span{float: right;font-size: 22px;margin-top: -20px;margin-left: 40px;}
.info-window-content p span.balloon-envelope{margin-top: -5px;}

.no_bullet{margin-right:5px !important;}
.no_bullet::after{display: none;}
.con_info{font-size: small;}

/* FLASH MESSAGES
================================================== */
.hello-bar {
	position: absolute;
    top: 0;
    left: 0;
    color: #fff;
    font-size: 19px;
    text-align: center;
    background: #5fa3a5;
    width: 100%;
    z-index: 2000;
    zoom: 1;
    padding: 20px 0 25px 0;
}

.hello-bar:after, .hello-bar:before {
    content: "";
    display: table;
}

.hello-bar:after {
    clear: both;
}

.hello-bar .close {
    text-indent: -9999em;
    background: url(../img/layout/hello-bar-close.png) no-repeat top left;
    width: 21px;
    height: 21px;
    position: absolute;
    top: 25px;
    right: 15px;
}

.hello-bar .close:hover {
    background-position: bottom left;
}


#scrollUp {
	background: #ECEAE4 none repeat scroll 0 0;
    border-radius: 5px;
    bottom: 20px;
    color: #000;
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    opacity: 0.9;
    padding: 10px 19px;
    right: 20px;
    text-decoration: none;
    transition: background 200ms linear 0s;
}




/* MEDIA QUERIES
================================================== */
@media only screen and (max-width: 1849px) {
	/*********** HOMEPAGE **********/
	.home_header .home_header_content h1 {font-size: 80px; line-height: 80px;}
	.home_header .bform_row {gap: 7px;}
	.home_header .bform_field--submit button { padding: 10px 32px;}
	.home_rooms_wrapper.homepage .align_intro_text h6 {font-size: 55px; line-height: 70px;  min-width: 715px;}
	.home_rooms_wrapper.homepage .align_intro_text {gap: 100px;}
}
@media only screen and (max-width: 1649px) {
	/*********** FOOTER **********/
	.footer_menu ul li, .footer_menu .book_button, p.footer_subtitle {font-size: 25px;}

	/*********** HOMEPAGE **********/
	.home_header .home_header_content h1 {max-width: 30vw;font-size: 68px; line-height: 70px;}
	.home_rooms_wrapper.homepage .align_intro_text {gap: 50px; } 
    .home_rooms_wrapper.homepage .align_intro_text h6 {font-size: 52px; line-height: 66px; min-width: 700px; } 
	.rooms_mobile p.room_title {font-size: 42px;}
	p.main_title { font-size: 70px;}
	.testimonials_content h6 {font-size: 28px;}
	.testimonials_content p {line-height: 32px; font-size: 20px;}
	.access_info p {font-size: 55px;line-height:65px; margin-bottom: 30px;}
	.access_image_text p{  font-size: 55px;line-height:65px; margin-bottom: 30px;}

	/*********** ROOMS **********/
	.home_header_content.rooms_home_banner h1{ font-size: 65px; line-height: 75px;max-width: 28vw;}
	.bform_row { gap: 7px;}
	.short_description ul li {font-size: 26px;}
	.room_intro.room_view h3 {font-size: 50px; line-height: 70px;}
	.room_facilities ul li { font-size: 22px;}
	.room_facilities ul li img {max-width: 70px; max-height: 50px;}
	.room_facilities ul {gap: 20px;}
	.all_room_types h6 {font-size: 65px;}
	.page_text .room_title h1{font-size: 45px;    margin-bottom: 35px;}
	.rooms_description ul li { font-size: 23px;}


	/*********** BLOG **********/
	.blog .blog_intro {display: -webkit-box; -webkit-line-clamp: 6; -webkit-box-orient: vertical; overflow: hidden;    text-overflow: ellipsis;}
	
	/*********** ACCESS **********/
	.cyan_bg .align_intro_text h6 { font-size: 55px;}

	/*********** SIGHTS **********/
	.page_text.blog_text .align_intro_text{padding: 0}
	.beige_bg .align_intro_text.blue_text h6 { font-size: 65px;}

	/*********** CONTACT **********/
	.contact_info {padding: 40px 40px;}
	.contact_info p strong { font-size: 22px;	}

}

@media only screen and (max-width: 1499px) {
	/*********** HEADER **********/
	.menu_images { height: 290px;}
	.responsive_menu {width: 35vw;}
    .inner_menu .contact_info p{padding: 10px 0;flex-direction: row;}
    .inner_menu .contact_info p strong {font-size: 19px; line-height: 29px; margin-bottom: 0; width: 43%;}
    .inner_menu .contact_info a,.inner_menu .contact_info p.last {font-size: 17px; line-height: 27px; }
    .inner_menu .contact_info {padding: 0px 15px;}

	/*********** FOOTER **********/
	.footer_menu ul li, .footer_menu .book_button, p.footer_subtitle {font-size: 22px; }
	.footer_menu ul{gap:30px}
	img.footer_logo {max-width: 120px;}
	.footer_box p.phone_number a {font-size: 20px;}


	/*********** HOMEPAGE **********/
	.home_header .bform_field--submit button {padding: 10px 25px;font-size: 17px;}
	.home_header .bform_field input, .home_header .bform_field select { font-size: 17px;	}
    .home_header .bform_row{justify-content: space-between;}
    .home_header .home_header_content h1{max-width: 29vw; font-size: 54px; line-height: 60px;}
	.about_text { gap: 35px;}
	.page_text .about_left_text h3 {font-size: 80px;    margin-bottom: 45px;}
	.page_text .about_left_text h6 {font-size: 37px;}
	.page_text .about_left_text p {margin-bottom: 0; font-size: 19px; line-height: 31px;}
	.home_rooms_wrapper.homepage .align_intro_text h6 {font-size: 40px; line-height: 55px;  min-width: 510px;   }
	.home_rooms_wrapper.homepage .align_intro_text { gap: 30px;  }
    .home_rooms_wrapper.homepage .align_intro_text p {padding-bottom: 0; font-size: 19px;}
    .rooms_mobile p.room_title {font-size: 35px; line-height: 45px; }
	.facilities_home p.main_title {font-size: 60px;}
	.facilities_home.page_text h3 {font-size: 32px;}
	.feature-item p { padding: 20px 2% 0 2%;font-size: 20px;}
	.feature-item { max-width: 220px;}
	.features-container { gap: 15px;}
	p.main_title {font-size: 60px; }
	.access_info p { font-size: 45px; line-height: 55px;}
    .access_image_text p { font-size: 45px; line-height: 55px;}



	/*********** ROOMS **********/
	.home_header_content.rooms_home_banner h1 {font-size: 55px; line-height: 65px;}
	.bform_field {width: 16%;}
	.bform_field--select select { background-position: right 12px center;}
	.room_intro.room_view h3 { font-size: 40px; line-height: 60px;}
	.short_description ul li {font-size: 22px; flex: 0 0 25%; max-width: 25%;}
	.short_description ul li::after {margin: 0;}
	.short_description ul { row-gap: 15px;}
    .short_description ul li:nth-child(4)::after { display: none; }
	.room_intro.room_view .room_buttons { margin-top: 20px;}
	.facilities_section h6 { font-size: 50px;}
	.room_facilities ul li { font-size: 20px; }
	.all_room_types h6 { font-size: 60px;}
	.more_rooms_section p.room_title { font-size: 35px; line-height: 45px;}
	.room.middle .rooms_description, .room .rooms_description  { padding: 15px;}
	.room .room_intro_text p { font-size: 18px;  line-height: 30px;}
	.page_text .room_title h1 { font-size: 40px;    margin-bottom: 20px;}	
	.rooms_description ul li { font-size: 20px;line-height: 35px;}
	.rooms_description ul{  padding: 15px 0;}
    .room .room_intro_text .room_title h1, .room.middle .room_intro_text .room_title h1{font-size: 35px;        margin-bottom: 15px;line-height: 45px;}


	/*********** BLOG **********/
	.blog_view_banner .home_header_content h1{font-size: 60px; line-height: 75px;}
	p.sight-card-title {font-size: 30px;}
	.page_text .basic_text p { font-size: 45px; line-height: 55px; padding: 20px 0;}
	.blog .blog_intro {display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden;    text-overflow: ellipsis;}
	.page_text .blog_title h1 {font-size: 32px;}

	/*********** ACCESS **********/
	.access_intro p.main_title { font-size: 60px;}
	.access_intro h4 { font-size: 35px; line-height: 50px;}
	.access_intro h5 { font-size: 30px;  line-height: 40px;}
	.access_more_info p.main_title { font-size: 50px; padding: 0 0 30px 0;}
	.access_more_info li {font-size: 22px; line-height: 32px;}
	.access_more_info p { font-size: 22px; line-height: 32px;  padding: 15px 10% 15px 10%;}
	.access_more_info em { font-size: 25px;}
	.cyan_bg .align_intro_text h6 {font-size: 45px; }

	/*********** SIGHTS **********/
	.sights-layout p.sight-card-title { min-height: 80px;  }
	.beige_bg .align_intro_text.blue_text h6 {font-size: 50px;  min-width: 540px;}
	.sight_intro p.subtitle {font-size: 30px; line-height: 42px;}
	.sight_intro p {font-size: 19px; line-height: 32px;}

	
	/*********** CONTACT **********/
	.home_header_content h1 {font-size: 75px;}
	.contact_info {padding: 20px 35px;}
	.contact_info p strong { width: 100%; margin-bottom: 10px;}
	.contact_info p {align-items: flex-start; flex-direction: column;}
	.contact_map .access_info p { font-size: 30px; line-height: 45px;}


	/*********** DYNAMIC PAGES **********/
	.page_text.page_description{padding-top: 15px;}
	.page_intro .flex_center {align-items: flex-start;}
	.page_intro.hotel h3 {font-size: 42px; line-height: 60px;}
	.page_details .hotel_details {justify-content: space-between;}
	.page_text h3 {font-size: 40px; line-height: 50px;}

}

@media only screen and (max-width: 1199px) {
	.padd_big {padding-top: 120px;padding-bottom: 120px;}

	/********* HEADER *********/
	.responsive_menu {width: 38vw;}
	.close_menu {background-size: 40px;}
    .inner_menu .contact_info { width: 100%; }

	/********* FOOTER *********/
	p.footer_subtitle { font-size: 21px;}
	.footer_menu ul {gap: 20px;}
	.footer_menu ul li, .footer_menu .book_button {font-size: 19px; }
	img.footer_logo {max-width: 100px;}

	/********* HOMEPAGE *********/
	.home_header .home_header_content {display: flex; align-items: flex-start; justify-content: flex-end; flex-direction: column;}
	.home_header .home_header_content h1{max-width: 100%; width: 100%;font-size: 55px; line-height: 65px;padding-bottom: 5svh;}
    .home_header .bform_field--submit button{padding: 10px 40px;font-size: 18px;}
    .home_header .bform_field input, .home_header .bform_field select {font-size: 18px; }
	.badge_wrapper img {max-width: 200px;}
	.home_rooms_wrapper.homepage .align_intro_text h6 {font-size: 35px; line-height: 45px;min-width: 440px; }
	.rooms_mobile .room-info-overlay {padding: 25px;}
	.rooms_mobile p.room_title {font-size: 30px; line-height: 40px; }
	.rooms_mobile{padding-left: 30px; padding-right: 30px}
	.home_rooms_wrapper.homepage .align_intro_text{padding-left:30px; padding-right:30px}
    .feature-item { max-width: 220px;  min-width: 200px;   }
	.access_info p, .access_image_text p {font-size: 35px;line-height: 45px; margin-bottom: 10px; font-weight: 250; }

	/********* ROOMS *********/
	.home_header_content.rooms_home_banner {align-items: flex-start; justify-content: flex-end; flex-direction: column;}
	.home_header_content.rooms_home_banner h1 {max-width: 100%; font-size: 55px; line-height: 65px;}
	.bform_field--submit {width: auto;}
	.bform_row {justify-content: space-between;}
	.online_book { justify-content: flex-start;}
	.room_view .flex_center{padding-left: 30px; padding-right: 30px}
	.room_intro.room_view h3 {font-size: 35px; line-height: 55px;  }
	.facilities_section { align-items: flex-start;  flex-direction: column;}
	.facilities_section h6 {font-size: 45px; line-height: 55px;}
	.room_facilities ul {justify-content: flex-start;  gap: 10px;}
    .room_facilities ul li {text-align: center; line-height: 32px; width: min-content;}
	.room_info_section { margin-top: 90px;	}
	.all_room_types h6 {font-size: 50px;}
	.room.middle .rooms_description, .room .rooms_description { padding: 25px; }
	.room .room_intro_text .room_title h1, .room.middle .room_intro_text .room_title h1 {font-size: 32px; line-height: 42px; }
    .rooms_description ul li { font-size: 18px;  line-height: 31px;  }


	/********* GALLERY *********/
	.gallery_padd p.main_title{font-size: 40px;}

	/********* ACCESS *********/
	.access_intro p.main_title {font-size: 50px; }
	.access_more_info p.main_title {font-size: 40px;}
	.access_more_info li {font-size: 20px;}
	.access_more_info p {font-size: 20px;line-height: 32px;padding: 25px 15px 10px 15px; }
	.access_image_text ol li {font-size: 20px; line-height: 32px;}
	.access_intro h4 {font-size: 30px;}
	.access_intro h5 {font-size: 26px; line-height: 30px; padding-bottom: 10px;}
	.cyan_bg .align_intro_text h6 {font-size: 35px;line-height: 45px;}
	.cyan_bg .align_intro_text p {width: 45%; font-size: 18px; line-height: 30px;}
	
	/********* SIGHTS *********/
	.sights-layout{padding-left: 15px;}
	.beige_bg .align_intro_text.blue_text h6 {font-size: 40px;min-width: 420px; font-weight: 250;}
	.beige_bg .align_intro_text.blue_text{ padding-right: 0;}
	.sight_intro {padding: 0 0 0 10%;}
	.sight_intro.left {padding: 0 10% 0 0;}
	.sight_intro p.subtitle {font-size: 25px;line-height: 37px; }

	/********* BLOG *********/
    .blog_view_banner .home_header_content h1 {font-size: 50px;  line-height: 60px; }
	.blog_intro .align_intro_text { padding: 85px 15%;}
	p.sight-card-title { font-size: 25px;}

	/********* CONTACT *********/
	.home_header_content h1 {font-size: 60px;}
	.contact_wrapper {display: flex; gap: 50px;}
	.contact_info p {font-size: 18px; line-height: 27px}
	.contact_map .access_info p {padding: 0 5% 30px 5%;}
	.blog .blog_intro {display: -webkit-box; -webkit-line-clamp:3; -webkit-box-orient: vertical; overflow: hidden;    text-overflow: ellipsis;}
	.page_text .blog_title h1 {font-size: 27px; line-height: 37px; margin-bottom: 20px; }
	.blog .blog_intro_text .blog_button { margin-top: 20px;}
   

	/********* DYNAMIC PAGES *********/
	.dynamic_text h3{margin-bottom:15px}
	.page_intro{padding-top:60px}
	.flex_center {padding-left: 30px;}
	.page_intro.hotel h3 {font-size: 40px; line-height: 57px;}
	.page_description.hotel {margin: 0;}
	.page_text.page_description.hotel {padding-top: 0;}
	.page_text h3 {font-size: 35px;}

}

@media (max-width:991px){
	/********* HEADER *********/
	.menu_images { max-height: 200px; }
    .menu_images .contact_wrapper.inner_menu, .menu_images{display: none;}

	/********* FOOTER *********/
 	.footer_menu {padding: 0 15px;}
	.logo_bg_footer {padding: 40px 0 40px 0;}
	.footer_desktop{padding: 0 15px;}
	.copyright_wrapper > div{padding: 0 15px;}
	.footer_menu ul li, .footer_menu .book_button { font-size: 18px;  }
	img.footer_logo { max-width: 80px; }
	.footer_box p a, .footer_box p { font-size: 17px;}
	.footer_box p.phone_number a{font-size: 19px;}
	p.footer_subtitle {font-size: 19px; }
	.footer_wrapper { padding: 50px 0px 50px 0px;}
	.footer_social img { width: 28px;}
	.footer_menu ul {gap: 17px;}


	/********* HOMEPAGE *********/
	.home_header .bform_field--submit button { padding: 10px 25px;}
	.home_header .bform_field {width: 19%; }
	.container-fluid.about-section{padding-left: 0; padding-right:0}
	.page_text .about_left_text h6 {font-size: 26px; margin-bottom: 15px; line-height: 26px;}
	.about_text {gap: 10px;}   
	.page_text .about_left_text p {margin-bottom: 0; font-size: 18px; line-height: 29px;}
	.about_text { display: flex;flex-wrap: wrap; padding-left: 15px; padding-right: 15px;justify-content: space-between;}
	.about_text .col-md-6{width:100%;order: 1;}
	.about_text .col-md-3 {width: 45%; order:2}
	.page_text .about_left_text h3 {font-size: 55px; margin-bottom: 40px;line-height: 50px; }
	.page_text .about_left_text p {margin-bottom: 50px; font-size: 19px; line-height: 32px;}
	.about_right_text.second{margin-top: 90px;}
	.home_rooms_wrapper.homepage .align_intro_text h6 {font-size: 30px; line-height: 40px; min-width: 50%;}
    .rooms_mobile .room-info-overlay {padding: 25px 15px;}
	.rooms_mobile .view_more_button {font-size: 19px;}
	.rooms_mobile p.room_title {font-size: 25px;line-height: 35px; }
	.facilities_home p.main_title { font-size: 50px; line-height: 60px;}
	.facilities_home p.main_subtitle {padding: 15px 15%;}
	.feature-item { max-width: 50%;  min-width: 50%;padding: 20px 15px; }    
	.features-container { gap: 0;}    
	.feature-item p {padding: 10px 2% 0 2%;}
	p.main_title {font-size: 50px; }
	.access-row .beige_bg, .access-row .access-photo { padding: 3%;width: 50%;}
	.access_info p, .access_image_text p {font-size: 30px; line-height: 40px;}
	.access-row .beige_bg {display: flex; flex-direction: column; justify-content: space-between;}
	/* .access-row { justify-content: space-between;} */

	/********* CONTACT *********/
	.contact_info {padding: 5px 20px;}
	.contact_info p {font-size: 17px;}
	.contact_wrapper { gap: 35px; }
	.contact_map .access_info p {padding: 0 0 30px 0; font-size: 25px; line-height: 40px; }

	/********* ROOMS *********/
	.home_header_content.rooms_home_banner h1 {font-size: 50px; line-height: 60px; }
	.bform_field {width: 19%; }
	.bform_field--submit button {padding: 10px 25px;}
	.bform_row {flex-wrap: nowrap;}
	.room_intro.room_view h3 {font-size: 30px; line-height: 50px; }
	.facilities_section h6 { font-size: 40px; line-height: 50px; }
	.room_facilities ul {gap: 0; }
	.all_room_types h6 {font-size: 45px;}
	.more_rooms_section .room-info-overlay{flex-wrap: wrap;padding: 25px;}
	.more_rooms_section p.room_title {font-size: 32px;line-height: 40px; }
	.more_rooms_section p.label_title {margin-top: 15px;}
	.room.middle { flex-direction: column;}
	.room{flex-direction: column-reverse;}
	.room.middle .rooms_description, .room .rooms_description {  position: relative;padding: 40px 5%;}
     .room .room_image::after, .room.middle .room_image::after {content: ''; position: absolute; left: 48%; top: unset;   border:unset; border-left: 30px solid transparent; border-right: 25px solid transparent; border-bottom: 46px solid #e8d8c3;  width: 0; height: 0; background: transparent;transform: rotate(119deg); bottom: -10px; }


	/********* ACCESS *********/
	.access_intro p.main_title {font-size: 45px; }
	.access_intro h4 {font-size: 25px;padding-top: 15px; padding-bottom: 15px;  }
	.access_intro h4 img {width: 28px; margin-right: 0;}
	.access_intro h5 {font-size: 24px; line-height: 28px; padding-bottom: 0;}
	.cyan_bg .align_intro_text {padding-left: 0; padding-right:0; align-items: flex-start; flex-direction: column;}
    .cyan_bg .align_intro_text p {width: 100%; padding-top: 20px;}
	.access_description .access-row{ flex-direction: column;}
	.access_description .access-row .col-md-6{width: 80%}
	.access_more_info p.main_title { font-size: 30px; padding: 0 0 15px 0; }
	.access_more_info li { font-size: 19px; line-height: 28px;   }
	.access_more_info p { font-size: 19px; line-height: 28px;}
	.access_more_info em { font-size: 20px; padding-right: 5px;  }
	.access_more_info a {font-size: 18px;}

	/********* SIGHTS *********/
	.blog_text p.subtitle { font-size: 30px;}
	.page_text.blog_text .align_intro_text { padding: 0;}
	.sights-controls {width: 25%; gap: 10px;}
	.beige_bg .align_intro_text.blue_text {align-items: flex-start; flex-direction: column;    gap: 30px;}
	.beige_bg .align_intro_text.blue_text h6 { font-size: 35px; min-width: 100%;line-height: 45px;  }
	.sights_home .flex_center {align-items: center; flex-direction: column; gap: 50px; padding-left: 0; padding-right: 0;}
	.sights_home .flex_center.reverse-991 {flex-direction: column-reverse;}
	.sight_intro.left, .sight_intro { padding: 0; align-items: center;}
	.sight_intro p { text-align: center;}
	.sight_intro p.subtitle { margin-bottom: 20px;}

	/********* BLOG *********/
	.blog_view_banner .home_header_content h1 {font-size: 40px; line-height: 50px; }
	.blog_intro .align_intro_text {padding: 85px 7%; }
	.sight-card.article_image { min-width: 340px; margin-left: 35px;}
	p.sight-card-title {font-size: 22px;}
	.page_text .basic_text p {font-size: 35px; line-height: 50px; padding: 0 15px;  }
	.blog .blog_intro {display: -webkit-box; -webkit-line-clamp:2; -webkit-box-orient: vertical; overflow: hidden;    text-overflow: ellipsis;}
    .page_text .blog_title h1 {font-size: 22px; line-height: 32px;font-weight: 300; margin-bottom: 15px; }
	.blog .blog_intro_text p {font-size: 18px; line-height: 29px;}
	.pagination span.next-prev {font-size: 18px;}
	.pagination span.next-prev { padding-left: 40px;}

	/********* DYNAMIC PAGES *********/
	.page_text h3 {font-size: 32px; }
	
}
  

@media (max-width:767px){
	.padd_big {padding-top: 100px; padding-bottom: 100px;}
	.padd {padding-top: 80px; padding-bottom: 80px;}
	
	/********** HEADER ***********/
    .header {padding: 10px 15px 10px 15px;}
    #logo {margin: 15px auto 15px auto; width: 170px;}
	.sticky .header {padding: 0px 15px;}
	.sticky #logo {width: 150px;}
	#lang_info a, #lang_info .languages .languages_menu a { font-size: 20px;}
	.languages a.selected_lang::after {margin-top: 4px;}
	.open_menu img.white_menu {width: 40px;}
	.header .book_button.white { font-size: 21px;}
	.responsive_menu {width: 70vw; z-index: 9999;}

	/********** FOOTER ***********/
	.footer_menu.desktop{display: none;}
	.footer_menu.mobile{display: flex;}
	.footer_box_container{width:50%; display: flex; justify-content: center;}
	.footer_desktop {flex-wrap: wrap; row-gap: 30px;}
	.footer_box {text-align: center;}
	.footer_social {justify-content: center;}
	.footer_social img {margin: 0 8px 0 8px;}
	p.footer_subtitle { margin-bottom: 10px; font-size: 21px;}
	.footer_menu {flex-direction: column; align-items: center; justify-content: flex-start; gap: 0; }
    .footer_menu .logo_bg_footer {text-align: center;  order: 1;  display: flex;  }
    .footer_menu .book_button {justify-content: center; margin-bottom: 10px;  order: 2; }
    .footer_menu ul {display: flex; column-gap: 30px; row-gap: 10px; width: 100%; align-items: center; margin-top: 0px;        margin-bottom: 30px; order: 3; flex-wrap: wrap; justify-content: center; }
    .footer_menu ul li { margin-bottom: 8px; font-size: 22px; }
	.footer_menu_top{display: flex;column-gap: 40px;}
	#footer_logo_wrapper .footer_logo {opacity: 1; transform: translateX(50vw) translateY(25vh) rotate(-30deg); display: block; will-change: transform, opacity; z-index: 100; position: relative; }
	.footer_menu ul li, .footer_menu .book_button {font-size: 21px;  }
	
   
	/********** HOMEPAGE ***********/
	.home_header .bform_row {flex-wrap: wrap; gap: 0; }
	.home_header .bform_field {width: 50%; }
	.home_header .home_header_content {padding-right: 15px; }
	.badge_wrapper img { max-width: 180px; }
	.home_rooms_wrapper.homepage .align_intro_text{flex-direction: column;}
	.home_rooms_wrapper.homepage .align_intro_text h6 { min-width: 100%; width: 100%; text-align: center; }
	.home_rooms_wrapper.homepage .align_intro_text p { text-align: center;}
	.home_rooms_wrapper.homepage::before { height: 100vh; min-height: 540px; max-height: 100vh;}
    .rooms_mobile .room-info-overlay {padding: 45px 35px;}
    .rooms_mobile p.room_title {font-size: 30px;}
	.facilities_home p.main_title {font-size: 40px; line-height: 50px;}
	.facilities_home p.main_subtitle { padding: 15px 10%;}
	.feature-icon { height: 50px; max-width: 80px;}    
	.facilities_home.page_text h3 { font-size: 28px; }
	.feature-item p { padding: 5px 0 0 0;  font-size: 19px; line-height: 29px; font-weight: 250; }
    p.main_title { font-size: 40px;  }
	.access-row { flex-direction: column-reverse;}
	.access-row .beige_bg, .access-row .access-photo{width: 100%;padding: 7% 10%;}

	/********** CONTACT ***********/
	.contact_wrapper{margin-right: 15px; margin-left: 15px;gap: 30px;}
	.contactform div.input label {font-size: 18px;}
  	.form_row {gap: 30px;}
	.submit_row {display: flex; flex-direction: column; align-items: flex-start;}
	.submit_button {float: left;}
	.blue_button {font-size: 19px;}
	.contact_map .access_info p {padding: 0 0 15px 0; font-size: 20px; line-height: 35px; }
	#map { min-height: 500px;}


	/********** ROOMS ***********/
	.bform_field {width: 50%; }
	.bform_row {flex-wrap: wrap; gap: 0;}
    .bform_field:nth-child(even) input, .bform_field:nth-child(even) select { border-right: unset; }
	/* .bform_field input, .bform_field select{border-bottom: 1px solid #305D74;} */
	.home_header_content.rooms_home_banner{padding-right:15px}
	.bform_field--submit{margin: 10px auto 0 auto; width: 100% !important;}
	.bform_field.bform_field--select, .bform_field.bform_field--date{border-bottom: 1px solid #305D74; }
	.bform_field input, .bform_field select { margin: 7px 0; padding: 0 10px;}
	.blue_button::before, .orange_button::before, #submit_form::before, .blue_button::after, .orange_button::after, #submit_form::after{display:none}
	.home_header_content.rooms_home_banner h1 { font-size: 45px; line-height: 55px; }
	.room_intro.room_view h3 {font-size: 25px; line-height: 45px; }
	.short_description ul li {font-size: 19px; flex: 0 0 33%;  max-width: 33%;  padding: 0 7px; width: 100%; }
	.short_description ul li:nth-child(3)::after {display:none}
	.short_description ul li:nth-child(4)::after {display: flex!important;content: '';position: absolute;	border-right: 1px solid #305D74;width: 1px;	height: 40px;margin: 0;right: 0;top:0}
	.short_description ul li:nth-child(5), .short_description ul li:nth-child(4){flex: 0 0 50%;  max-width:50%;}
	#room_gallery::before { height: 250px;    }
	#room_gallery .swiper-container { margin-top: 10vh;}
	/* #room_gallery .swiper-slide { height: 70%;} */
	.all_room_types h6 {font-size: 37px; padding-bottom: 30px; }
	.more_rooms_section .room-info-overlay {flex-wrap: wrap; padding: 15px; }
	.more_rooms_section p.room_title {font-size: 25px; line-height: 35px;}


	/********** ACCESS ***********/
	.access_more_info { flex-direction: column;  align-items: center;gap: 40px;}
	.access_more_info > div { width: 100%;}
	.cyan_bg .align_intro_text{padding-left: 15px; padding-right:15px}
	.cyan_bg .align_intro_text h6 {font-size: 30px;}
	.access_intro {flex-direction: column; padding-right: 15px; padding-left: 15px}
	.access_intro p.main_title {font-size: 35px; margin-bottom: 0; padding-bottom: 30px; line-height: 45px; margin-top: 0;  }
	.access_col .access_block:first-child h4 { border-top: none;}
	.access_col.access_col_left{border-top: 1px solid #305D74;}

	/********** BLOG ***********/
	.blog_view_banner .home_header_content h1 { font-size: 32px; line-height: 40px; }
	.sight-card.article_image { min-width: 300px; margin-left: 30px; width: 5vw; }
	.container-fluid.no-padding.padding_mobile{padding-right:15px; padding-left: 15px}
	.container-fluid.no-padding.padding_mobile .row{margin-right:0; margin-left: 0}
	.page_text .basic_text p {font-size: 32px; line-height: 42px;padding: 0 20px; }
	.blog { flex-direction: column-reverse;}
	.blog.middle { flex-direction: column;}
	.blog .blog_description, .blog.middle .blog_description { position: relative;}
	.blog .blog_intro, .blog.middle .blog_intro  { -webkit-line-clamp: unset;}
    .pagination span.next-prev {font-size: 17px; }
	.pagination span.next-prev {padding-left: 20px;}
	.pagination span.stats { padding-right: 20px;font-size: 18px;}
	.page-navigation-list span {width: 40px; height: 40px; font-size: 18px;}
	.page-navigation-list {gap: 10px;}
	.pagination span.next-prev {gap: 15px;}


	/********** SIGHTS ***********/
	.blog_text .row{margin-left: 15px; margin-right:15px}
	.blog_text p.subtitle {font-size: 27px; line-height: 40px; }
	.beige_bg .align_intro_text.blue_text h6 { font-size: 30px;  min-width: 100%; line-height: 40px;  text-align:center;  }
	.beige_bg .align_intro_text.blue_text{padding-right: 15px; text-align:center;}
	.sights-layout { flex-direction: column-reverse; align-items: center; gap: 30px;}
	.sights-layout p.sight-card-title { min-height: auto;}
	.sights-controls { width: auto;}
	.sights_intro .align_intro_text{padding: 85px 7%;}
	.sights_home .flex_center{padding-left: 15px; padding-right: 15px}
	
	
	/********* DYNAMIC PAGES *********/
	.home_header_content h1 {font-size: 50px;}
	.home_header_content{padding-left: 15px}
	.page_text h3 {font-size: 30px; }
   
}


@media (max-width:549px){
	/********** HEADER ***********/
	#lang_info{display:none}
	#lang_info_mobile{display: flex;justify-content: center; padding-bottom: 20px;}
	#logo {width: 56vw; max-width: 170px;}
	.top_info_left, .top_info_right{width: 22vw}
	.header .book_button.white {padding-left: unset; text-align: center;justify-content: center;}
	.header .book_button.white::after {width: 100%; left: unset;}
	#lang_info_mobile .languages .languages_menu a {color: #fff; font-weight: 200;  font-size: 21px; padding: 12px 7px; transition: all 0.3s ease 0s; font-weight: 300;}
	.languages .languages_menu {top: 8px;}
	.menu_images, .menu_bg_image{display:none}

	/********** FOOTER ***********/
	.copyright {padding-right: 30px;}

	/********** CONTACT ***********/
	.contact_wrapper {flex-direction: column;  gap: 60px;}
	.submit_button {float: unset; margin: 35px auto 0 auto; display: flex;  }
	.contact_info p, .contact_info a { text-align: center;align-items:center}
	.access-row { flex-direction: column-reverse;}
	.access-row .beige_bg {padding: 7%;}
	.contact_map .access_info {gap: 15px;}

	/********** HOMEPAGE ***********/    
   	.facilities_home p.main_title {font-size: 35px; line-height: 45px;}    
	.facilities_home p.main_subtitle { padding: 15px 0; line-height: 32px; }
	p.main_title { font-size: 35px;   }
	.testimonials_content h6 { font-size: 24px; }

	/********** ROOMS ***********/
	.home_header_content.rooms_home_banner h1 { font-size: 40px;}
	#room_gallery .swiper-container {height: 300px; min-height: 300px;  }
	.facilities_section h6 { font-size: 35px; line-height: 45px;  }
	.room_facilities ul li img {max-width: 60px; max-height: 40px; }
	.room_facilities ul li {font-size: 18px; line-height: 28px;    }
	.room_facilities ul {gap: 10px; }
	.more_rooms_section .col-md-6{padding-left:10px; padding-right:10px}
	.all_room_types h6 { font-size: 32px; line-height: 42px; }
	.more_rooms_section p.room_title {font-size: 21px; line-height: 31px; }
	.more_rooms_section p.label_title {margin-top: 10px; font-size: 17px; padding: 17px; }
	.more_rooms_section .view_more_button { font-size: 18px;}
	.more_rooms_section .view_more_button::before {width: 15px;  height: 15px;}
	.more_rooms_section::before { height: 240px;}
	.room .room_intro_text .room_title h1, .room.middle .room_intro_text .room_title h1 { font-size: 30px;  line-height: 38px;}

	/********** BLOG ***********/
	.sight-card.article_image { min-width: 240px;  margin-left: 20px; width: 5vw; }
	p.sight-card-title {font-size: 20px; }
	.page_text .basic_text p { font-size: 27px; line-height: 37px;}
	.pagination span.stats { font-size: 16px; }
	.pagination span.next-prev {font-size: 16px; }
    
	/********** GALLERY ***********/
	.gallery_padd p.main_title { font-size: 35px; }

	/********** ACCESS ***********/
	.access_intro p.main_title { font-size: 32px;}
	.access_description .access-row .col-md-6 {width: 100%; }

	/********** SIGHTS ***********/
	.blog_text p.subtitle { font-size: 25px;  line-height: 37px; }
	.sights-layout p.sight-card-title {font-size: 21px;}
	.sight_intro p.subtitle {font-size: 22px;line-height: 32px; }

	/********** DYNAMIC PAGES ***********/
	.home_header_content h1 {font-size: 40px;}
	.page_text h3 {font-size: 28px;}
	.page_text p {font-size: 19px;}
   
		
}


@media only screen and (max-width:479px) {	
	.padd_big {padding-top: 80px; padding-bottom: 80px;}
	.padd {padding-top: 50px;padding-bottom: 50px;  }
	.view_more_button {font-size: 19px;}

	/********** HEADER ***********/
	#logo {max-width: 140px;}
	.sticky #logo{width: 140px; margin: 10px auto 10px auto;}
	.header {padding: 5px 15px 5px 15px;}
	.header .book_button.white {font-size: 19px; line-height: 22px; max-width: 60px;}
	.top_info_left, .top_info_right{width: 20vw}
	.top_info_right {display: flex; justify-content: flex-end;}
	#logo{width: 60vw}
	.header .book_button.white::after {margin-top: 50px;}
	.close_menu.active {left: 15px;	}
	.close_menu {background-size: 35px;}
	.responsive_menu {width: 73vw;}
	.page-navigation{display: flex;  flex-direction: column;}
	.pagination span.stats{display:none}
	.page-navigation-list { justify-content: center;}
	.pagination span.next-prev {padding-left: 0; padding-top: 20px; }
	.pagination {margin: 0;}

	/********** FOOTER ***********/
	.copyright_wrapper > div{display: flex; align-items: center;}
	#wapp {margin-top: unset;}
	.footer_menu ul li, .footer_menu .book_button {font-size: 20px;}
    p.footer_subtitle { font-size: 19px;  }
	.footer_box_container:first-of-type{width: 100%}
	.footer_box_container.second{width: 100%}
	.footer_box p a::after, .footer_box p a:hover::after{display:none}
	.footer_wrapper {padding: 40px 0px 40px 0px;}
	.footer_social img {margin: 0 5px 0 5px;}
	.footer_box p {line-height: 27px;}
	.footer_box p a{line-height: 27px;}
	.footer_menu ul li{font-size:18px}
	.footer_menu ul {column-gap: 20px; row-gap: 0;}       

	/********** HOMEPAGE ***********/	
	.home_header .home_header_content h1{font-size: 35px; line-height: 45px; padding-bottom: 30px;}
	.about_text, .about_text .col-md-6 { padding-left: 0;  padding-right: 0;}
	.page_text .about_left_text h3 {font-size: 45px; line-height: 40px;}
	.page_text .about_left_text h6 {font-size: 24px;}
	.about_text .col-md-3 {width: 47%;}
	.badge_wrapper img {max-width: 140px;}
	.home_rooms_wrapper.homepage .align_intro_text, .rooms_mobile {padding-left: 15px; padding-right: 15px; }
    .rooms_mobile .room-info-overlay { padding: 35px 25px; }
	.facilities_home p.main_title {font-size: 28px; line-height: 38px; font-weight: 250; }
    .facilities_home p.main_subtitle { padding: 15px 0;    line-height: 29px;   font-weight: 250;  }
	.features-container { padding: 20px 10px;}
	.feature-item { max-width: 100%; min-width: 100%;  padding: 20px 0;  }
	.features-container { padding: 20px 0px; }    
	.feature-icon { height: 45px; max-width: 75px; }    
	.facilities_home.page_text h3 { font-size: 25px; font-weight: 250; }  
	.page_text .feature-item p { font-size: 18px; line-height: 27px; }
	p.main_title { font-size: 26px; line-height: 36px; font-weight: 250; }
	.testimonials_content {padding: 65px 0px 20px 0px;}
    .testimonials_content p {line-height: 28px;  font-size: 18px; }
    .testimonials_content h6 { font-size: 21px;  }
	.access_info p, .access_image_text p {font-size: 25px; line-height: 35px; margin-bottom: 0;}

	/********** GALLERY ***********/	
	.gallery_padd p.main_title {font-size: 28px; line-height: 40px; }



	/********** ROOMS ***********/
	.home_header_content.rooms_home_banner h1 {font-size: 30px; line-height: 40px; padding-bottom: 30px; }
	.room_view .flex_center {padding-left: 15px; padding-right: 15px; }
	.room_intro.room_view h3 {font-size: 20px; line-height: 38px; font-weight: 300;  }
	.short_description ul li {flex: 0 0 50%; max-width: 50%;line-height: 30px;}
	.short_description ul li:nth-child(3)::after {display: flex!important;content: '';position: absolute;	border-right: 1px solid #305D74;width: 1px;	height: 40px;margin: 0;right: 0;top:0}
	.short_description ul li:nth-child(even)::after{display:none}
	.short_description ul li:nth-child(4)::after{display: none!important;}
	#room_gallery::before {height: 150px;  }
	.room_info_section { margin-top: 50px; }
	.facilities_section h6 {font-size: 27px; line-height: 35px;   }
	.room_facilities ul li img {max-width: 45px; max-height: 35px; }
	.room_facilities ul {gap: 0;}
	.room_facilities ul li{width: 50%;}
	.all_room_types h6 { font-size: 25px; line-height: 35px; }
	.more_rooms_section .col-md-6{width: 100%}
	.more_rooms_section .room-info-overlay { align-content: space-between; }
	.more_rooms_section .room-info-overlay {padding: 25px 20px; }
	.room .room_intro_text .room_title h1, .room.middle .room_intro_text .room_title h1 { font-size: 26px;  line-height: 36px;    }
	.room.middle .rooms_description, .room .rooms_description{width:100%; padding: 40px 10%;}
	.room .room_intro_text .room_buttons, .blog .blog_intro_text .blog_button {gap: 25px; flex-direction: column;}
	.rooms_description ul li {flex: 0 0 50%; max-width: 50%;line-height: 30px;}
	.rooms_description ul li:nth-child(3)::after {display: flex!important;content: '';position: absolute;	border-right: 1px solid #305D74;width: 1px;	height: 40px;margin: 0;right: 0;top:0}
	.rooms_description ul li:nth-child(even)::after{display:none}
	.rooms_description ul li:nth-child(4)::after{display: none!important;}
    .room .room_image::after, .room.middle .room_image::after {content: ''; position: absolute;left: 46%;top: unset; border: unset;     border-left: 19px solid transparent; border-right: 21px solid transparent; border-bottom: 39px solid #e8d8c3; width: 0; height: 0;background: transparent;transform: rotate(119deg); bottom: -13px; }
   
	/********** BLOG ***********/
	.blog_view_banner .home_header_content h1 {font-size: 25px; line-height: 32px; }
	.blog_intro .align_intro_text {padding: 65px 0; }
	.sight-card.article_image {width: 100%; }
	.page_text .basic_text p {font-size: 22px; line-height: 32px; padding: 0 15px;  }

	/********** ACCESS ***********/
	.access_more_info p.main_title {font-size: 28px; padding: 0 0 5px 0; }
	.access_more_info p {padding: 25px 0px 10px 0px; }
	.access_image_text ol li { padding: 15px 0 15px 40px; font-size: 19px; line-height: 30px;}
	.access_image_text ol li::before { font-size: 30px;padding: 5px 0;}
	.cyan_bg .align_intro_text h6 { font-size: 25px; }
	.access_intro p.main_title {font-size: 27px; }
	.access_intro h4 {font-size: 22px; padding-top: 10px; padding-bottom: 10px; }


	/********** SIGHTS ***********/
	.blog_text p.subtitle {font-size: 21px; line-height: 31px;  }
	.beige_bg .align_intro_text.blue_text h6 {font-size: 27px;	}
	.sights-layout p.sight-card-title { font-size: 19px;    }
	.sights_intro .align_intro_text { padding: 65px 15px;}
	.sight_intro p.subtitle {font-size: 20px;line-height: 27px;    font-weight: 300; }

	/********** CONTACT ***********/
    .contact_info p {padding: 25px 0;}
    .contact_info p strong {font-size: 20px; }
	.access-row .beige_bg {padding: 35px 15px; }
	.contact_map .access_info p {line-height: 32px; }

	/********** DYNAMIC PAGES ***********/
	.home_header_content h1 {font-size: 32px;}
	.page_text h3 {font-size: 25px;line-height: 35px; }
	.page_text h5 {font-size: 22px;line-height: 32px;}
	.page_text p {font-size: 19px;}
    
}

@media only screen and (max-width: 420px) {	

}


/* ===========================>
		ERROR PAGE
   <========================== */
   .tit-er{color:#fff !important;}
   .tex-er{
	color: #fff;
    font-size: 22px;
    line-height: 30px;
    padding-left: 25px;
    font-weight: 300;
    margin-top: 40px;
    text-align: center;
	z-index: 1;
    position: relative;
   }
   .btn-er{
	display: flex;
	justify-content: center;
	z-index: 1;
    position: relative;
   }

   .btn-er a{
		color: #fff;
		border: 1px solid #fff;
		font-size: 18px;
		background: transparent;
	}

	.btn-er a:hover{	
		color: #fff;		
		transition: all 0.3s ease 0s;	
	}
 
  @media(max-width:767px){
	.tex-er{
		border-left: unset;
		padding-left: unset;
		margin-top: 20px;
		font-size: 18px;
		line-height: normal;
	}
  }

  @media(max-width: 479px) {
	.tex-er {
		font-size: 17px;
	}
  }
