:root {
	--color1: #ede8e5;
	--color2: #e2e8e8;
    --color3: #1f7073;
    --color4: #806767;
    --black: #4E4040;
	--grey: #929292;
	--lightgrey: #ede8e5;
    --white: #fff;
    --alpha-black: rgba(0, 0, 0, 0.5);
    --alpha-white: rgba(255,255,255,0.95);

    --font-family-1: "TAN-MONCHERI";
	--font-family-2: "Montserrat";
	--font-family-3: "OpenSans";
    --icon: "Font Awesome 6 Pro";
	--font-weight-light: 300;
    --font-weight-regular: 400;
    --font-weight-medium: 500;
    --font-weight-bold: 700;
    --font-size-xs: 14px;
    --font-size-bs: 16px;
    --font-size-sm: 21px;
    --font-size-md: 28px;
    --font-size-lg: 32px;
    --font-size-xl: 40px;

	--w-container: 1170px;
	--h-spacing: ;
}

body.smartphone {
    --font-size-xs: 12px;
    --font-size-bs: 14px;
    --font-size-sm: 20px;
    --font-size-md: 22px;
    --font-size-lg: 24px;
    --font-size-xl: 28px;

    --w-container: 1170px;
    --h-spacing: ;
}

@font-face { font-family: "TAN-MONCHERI"; src: url('../fonts/TAN-MONCHERI.woff2') format('woff2'), url('../fonts/TAN-MONCHERI.woff') format('woff'), url("../fonts/TAN-MONCHERI.ttf")  format("truetype"); font-weight: normal; font-style: normal; }
@font-face { font-family: "OpenSans"; src: url("../fonts/OpenSans-Regular.eot"); /* IE9 Compat Modes */ src: url("../fonts/OpenSans-Regular.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */ url("../fonts/OpenSans-Regular.woff") format("woff"), /* Modern Browsers */ url("../fonts/OpenSans-Regular.ttf")  format("truetype"), /* Safari, Android, iOS */ url("../fonts/OpenSans-Regular.svg#OpenSans-Regular") format("svg"); /* Legacy iOS */ font-style: normal; font-weight: 700; }
@font-face { font-family: "OpenSans-Bold"; src: url("../fonts/OpenSans-Bold.eot"); /* IE9 Compat Modes */ src: url("../fonts/OpenSans-Bold.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */ url("../fonts/OpenSans-Bold.woff") format("woff"), /* Modern Browsers */ url("../fonts/OpenSans-Bold.ttf")  format("truetype"), /* Safari, Android, iOS */ url("../fonts/OpenSans-Bold.svg#OpenSans-Bold") format("svg"); /* Legacy iOS */ font-style: normal; font-weight: 700; }
@font-face { font-family: 'Font Awesome 6 Pro'; src:url('../fonts/FontAwesome6Pro-Solid.woff') format('woff'); font-style: normal; font-weight: 900; font-display: swap; }
@font-face { font-family: "Font Awesome 6 Pro"; src:url("../fonts/FontAwesome6Brands-Regular.woff") format("woff"); font-style: normal; font-weight: 400; font-display: swap; }
@font-face { font-family: 'Font Awesome 6 Pro'; src:url('../fonts/FontAwesome6Pro-Light.woff') format('woff'); font-style: normal; font-weight: 300; font-display: swap; }
@font-face { font-family: 'Font Awesome 6 Pro'; src:url('../fonts/FontAwesome6Pro-Regular.woff') format('woff'); font-style: normal; font-weight: 400; font-display: swap; }

#page_error.none { display: none; }
a { -webkit-transition: all .6s; -moz-transition: all .6s; -o-transition: all .6s; transition: all .6s; }
.text_dyn a, .text_dyn a:hover, .text_dyn a:focus, .text_dyn a:visited { color:#5DB59A; }
.text_dyn .accordion a, .text_dyn .accordion a:hover, .text_dyn .accordion a:focus, .text_dyn .accordion a:visited { color:#3c3c3c; }
input[type="button"]:hover, input[type="reset"]:hover, input[type="submit"]:hover { opacity:0.9; }
.clear { clear: both; }
.overflow { overflow: hidden; }
.documents, .videos { margin: 20px auto 40px auto; }
.documents .document { margin: 10px; padding: 0  10px 10px 10px; display: block; clear:both; border-bottom: 1px solid var(--lightgrey); overflow:hidden; }
.documents .document a { }
.documents .document a:before { margin:0px 10px 0px 0px !important; float:left; }
.documents .document .document_size { float:right; color: var(--lightgrey); }
ul.cnt { margin:0; padding:0; display:flex; list-style: none; -ms-box-orient: horizontal; -webkit-align-items: stretch; }
ul.cnt li.half { width:50%; }
.cnt { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: -moz-flex; display: -webkit-flex; display: flex; list-style: none; -ms-box-orient: horizontal; -webkit-align-items: center; align-items: flex-start; justify-content: center; }
#content .head .cnt {flex-direction: column;}
form .caption-fields .field input[type="phone"]::-webkit-input-placeholder { opacity: 0.1; }
form .caption-fields .field input[type="phone"]::-moz-placeholder { opacity: 0.1; }
form .caption-fields .field input[type="phone"]::-ms-input-placeholder { opacity: 0.1; }
form .caption-fields .field input[type="phone"]::-moz-placeholder { opacity: 0.1; }
form .caption-fields .field input[type="phone"]::placeholder { opacity: 0.1; }

.tns-outer {position: relative;}

/* SEO */
.body_showcase #top_seo { text-align: center; }

body { overflow-x: hidden; }
body.desktop { font-family: var(--font-family-2), Helvetica, Arial, sans-serif; font-size: 12px; line-height: 1; color: var(--black); }
body.no_scroll {overflow: hidden;}

body {font-family: var(--font-family-2); padding: 116px 0px 0px 0px !important;}
h1 { font-family: var(--font-family-1); text-transform: uppercase; font-size: var(--font-size-lg); line-height: 1.5; }
h2 { font-family: var(--font-family-2); line-height: 1.3; }
h3 { font-family: var(--font-family-2); line-height: 1.2; }
h4 { font-family: var(--font-family-2); line-height: 1.2; }
h5 { font-family: var(--font-family-2); line-height: 1.2; }
h6 { font-family: var(--font-family-2); line-height: 1.2; }

.nav-pills > li { float: left; }
.nav { list-style: none; }
.nav > li > a { text-decoration: none; }
header {position: fixed;top: 0px;left: 0px;width: 100%;background-color: rgba(255,255,255,0.95);z-index: 2000;}
header .cnt { padding: 15px 90px; -webkit-align-items: center; align-items: center; justify-content: space-between; }
header .logo { margin: 0 35px 0 0; }
header .logo img { max-width: 84px; }
header .logo, header #menu-pills, header .contact, header #language { display: inline-block; vertical-align: middle; }
header .contact.tel a, header .contact.mail { font-family: var(--font-family-2); font-size: var(--font-size-bs); color: var(--color4); letter-spacing: 0; }
header .contact.tel {margin-left: 20px}
header .contact.tel a:before { content: "\f2a0"; padding: 0 5px 0 0; font-family: var(--icon); }
header .contact.mail .varsimple:before { content: "\f0e0"; padding: 0 7px 0 0; font-family: var(--icon); }
header #menu_btn { display: none; }
header #menu_btn {display: none;width: 60px;height: 60px;padding: 15px;position: absolute;cursor: pointer;top: 11px;height: 60px;z-index: 2;right: 90px;}
header #menu_btn .bar{width: 100%; height: 1px; background-color: #201218; position: relative; top: 0; transition: .3s}
header #menu_btn .bar:nth-child(2){top: 8px}
header #menu_btn .bar:nth-child(3){top: 16px}
header #menu_btn.fired .bar:nth-child(2){opacity: 0}
header #menu_btn.fired .bar:nth-child(1){transform: rotate(45deg); top: 7px}
header #menu_btn.fired .bar:nth-child(3){transform: rotate(-45deg); top: 5px}

header .down {display: block;position: fixed;z-index: 2000;bottom: 0px;left: 0px;width: 100%; background: var(--white);}
header .down .contact {position: relative;width: 50%;display: inline-block;vertical-align: middle;text-align: center; font-size: var(--font-size-xs); font-family: var(--font-family-2);}
header .down .booking_btn {position: relative;width: 50%;display: inline-block;vertical-align: middle;}
header .down .contact #varlink_contact-cnt:before { content: "\f2a0"; padding: 0 5px 0 0; font-family: var(--icon); }
header .down .booking_btn a, header .down .booking_btn .varsimple {margin: 0px;padding: 20px 25px;width: 100%;display: inline-block;background-color: var(--black);font-family: var(--font-family-2);font-size: var(--font-size-xs);color: var(--white);letter-spacing: 1px;text-align: center;text-transform: uppercase; cursor: pointer;}

/* Language */
header #language {margin: 0 0 0 20px;padding: 15px;display: inline-block; background-color: var(--color3);text-align: left;position: relative;height: 25px;width: 60px;overflow: hidden;transition: .3s;}
header #language li.active {margin: 0;float: none;text-align: left;z-index: 325;position: absolute;right: 0px;top: 2px;width: 100%;left: 2px;}
header #language li.active a { padding: 6px 7px; display: inline-block; font-family: var(--font-family-2); font-size: var(--font-size-xs); color: var(--white); text-transform: uppercase; text-align: left; line-height: 1; letter-spacing: 0; position: relative; width: 100%; top: 0; transition: .3s;}
header #language li.active a:before { font-family: var(--icon); font-size: var(--font-size-xs); color: var(--white); text-transform: lowercase; text-align: center; line-height: 1; letter-spacing: 1.1px; z-index: 375; position: absolute; right: 0px; bottom: 0px;right: 8px; left: inherit; top: 6px; transition: .3s; content: "\f0d7"; }
header #language li { float: none; text-align: left; }
header #language li a { display: inline-block; font-family: var(--font-family-2); font-size: 10px; color: var(--white); text-transform: uppercase; text-align: left; line-height: 1; letter-spacing: 0; }

header #language .nav-pills { padding: 0; margin-top: 15px }
header #language .nav-pills > li { float: none; margin-bottom: 5px;}

header #language.fired { height: auto; background-color: var(--color3); padding: 15px 0 10px 9px; }
header #language.fired li.active a {color: var(--white) !important; }
header #language.fired li.active a:before {color: var(--white); transform: rotate(180deg); transform-origin: center 35%; }
header #language.fired li a {color: var(--white)!important}

header #language {padding: 15px 0 15px 9px;}
header #language .nav-pills { margin-top: 15px }

/*
header.fixed { position: fixed; top: 0; left: 0; right: 0; z-index: 999; }
header.fixed .wrap .top { padding: 11px 0; }
header.fixed .wrap .top .book-btn { margin: 0 0 0 20px; display: inline-block; vertical-align: middle; }
header.fixed .wrap .top .book-btn .varsimple { margin: 0 5px; padding: 15px 15px; display: inline-block; vertical-align: middle; background-color: #72BF45; font-family: "PTSans-Bold"; font-size: 14px; color: #FFFFFF; text-transform: uppercase; text-align: center; line-height: 1; letter-spacing: 1px; cursor: pointer; }
header.fixed .wrap .top .book-btn #varsimple_booknow_btn_header { border: 2px solid #72BF45; }
header.fixed .wrap .top .book-btn #varsimple_request_btn_header { border: 2px solid #fff; background-color: #1679BD; }
header.fixed .wrap .logo { background-image: url('../images/bg/bg-logo-2.svg'); height: 167px; top: 24px }
*/

#top_seo { font-family: var(--font-family-2); font-size: var(--font-size-xs); color: var(--color4); font-style: italic; }
#top_seo:after { width: 50px; height: 1px; border-top: 1px solid var(--color1); text-align: center; position: relative; content: ""; display: block; margin: 10px auto 0px auto; }
.body_page #top_seo:after { margin: 10px 0 0 0; }
#menu-pills { font-family: var(--font-family-2); font-size: var(--font-size-xs); letter-spacing: 2px; line-height: 27px; }
#menu-pills ul.nav { margin:0; padding: 0; }
#menu-pills ul.nav li { margin: 0 5px; }
#menu-pills ul.nav li a { padding: 10px 5px; text-transform: uppercase; font-weight: var(--font-weight-bold);}
#menu-pills ul.nav li a { color: var(--color4); }
#menu-pills.inv ul.nav li a { color: var(--white); }

#booking { width: 390px; position: absolute; top: 195px; right: 90px; z-index: 80; }
#booking.type1 { padding: 20px; background-color: #F8F9FA; }
#booking.type1 .title { font-family: var(--font-family-1); text-transform: uppercase; font-size: var(--font-size-lg); color: var(--color4); letter-spacing: 0; text-align: center; line-height: 60px; }
#booking.type1 .subtitle { font-family: var(--font-family-2); font-weight: var(--font-weight-regular); font-size: var(--font-size-xs); color: var(--black); letter-spacing: 1px; text-align: center; text-transform: uppercase;}
#booking.type1.closed { top: 78px; }
#booking.type1.closed form { display: none; }
#booking.type1.closed #book-open { margin: 20px -20px -20px -20px ; padding:15px; display: block; background-color: var(--black); cursor: pointer; }
#booking.type1.closed #book-open .varsimple { font-family: var(--font-family-2); font-weight: var(--font-weight-bold); font-size: var(--font-size-xs); color: #FFFFFF; letter-spacing: 1px; text-align: center; }
#booking.type1.closed #book-open .varsimple:before, #booking.type1.closed #book-open .varsimple:after { content: "\f063"; font-family: var(--icon); }
#booking.type1.closed #book-open .varsimple:before { margin: 0 15px 0 0; }
#booking.type1.closed #book-open .varsimple:after { margin: 0 0 0 15px; }

.desktop .mobile-close-booking {display: none;}
.smartphone .mobile-close-booking {display: block; text-align: right;}
.smartphone .mobile-close-booking:after { content: "\f00d"; font-family: var(--icon); font-size: 20px; font-weight: 200; cursor: pointer; color: var(--color4);}

body.body_pagina_alt #booking.type1.closed, body.body_post_blog #booking.type1.closed {top: 0px;}
body.body_showcase_pagina #booking.type1.closed {top: 51px;}

#booking form { padding:15px 0 0 0; display: inline-block; background-color: #F8F9FA; text-align: center; }
#booking form .form-title { display: none; }
#booking form .caption-fields { margin: 0; text-align: center; }
#booking form .form.field.date { margin: 10px 5px; padding: 10px 0; display: inline-block; width: calc(50% - 10px); border-bottom: 5px solid var(--color4); text-align: center; cursor: pointer;}
#booking form .form.field.date .form_element_title { font-family: var(--font-family-3); font-size: var(--font-size-xs); color: var(--black); text-align: center; line-height: 1; letter-spacing: 0; }
#booking form .form.field.date .date_from_html { text-align: center; position: relative; }
#booking form .form.field.date .date_from_html .day { display: inline-block; font-family: var(--font-family-3); font-size: var(--font-size-md); color: var(--black); text-transform: lowercase; text-align: left; line-height: 1; letter-spacing: 0; }
#booking form .form.field.date .date_from_html .month_name { display: inline-block; font-family: var(--font-family-3); font-size: var(--font-size-md); color: var(--black); text-align: left; line-height: 1; letter-spacing: 0; }
#booking form .form.field.date .date_from_html.month, #booking  form .form.field.date .date_from_html .day_name, #booking_name  form .form.field.date .date_from_html .year {display: none;}
#booking form .form.field.date .date_from_html .year {display: none;}
#booking form .form.field.select { margin: 10px 5px; padding: 10px 0; width: calc(50% - 10px); display: inline-block; background-color: #FFFFFF; text-align: left; position: relative; cursor: pointer; }
#booking form .form.field.select .form_element_title { margin: 5px 0 15px 0; font-family: var(--font-family-3); font-size: var(--font-size-xs); color: var(--color3); text-align: center; line-height: 1; letter-spacing: 0; }
#booking form .form.field.select .form_select { text-align: center; position: relative; }
#booking form .form.field.select .form_select .remove_selector { text-align: left; z-index: 252; position: absolute; left: 20px; bottom: 0; cursor: pointer; }
#booking form .form.field.select .form_select .remove_selector:before { width: 13px; height: 37px; font-family: var(--font-family-3); font-size: var(--font-size-lg); color: var(--color3); text-transform: lowercase; text-align: left; line-height: 1; letter-spacing: 0; z-index: 258; position: absolute; left: 0px; bottom: 3px; content: "-"; }
#booking form .form.field.select .form_select .current_value { font-family: var(--font-family-3); font-size: var(--font-size-lg); color: var(--color3); text-transform: lowercase; text-align: center; line-height: 1; letter-spacing: 0; position: relative; bottom: 5px; }
#booking form .form.field.select .form_select .add_selector { text-align: left; z-index: 222; position: absolute; right: 20px; bottom: 0; cursor: pointer; }
#booking form .form.field.select .form_select .add_selector:before { width: 14px; height: 37px; font-family: var(--font-family-3); font-size: var(--font-size-lg); color: var(--color3); text-transform: lowercase; text-align: left; line-height: 1; letter-spacing: 0; z-index: 228; position: absolute; right: 0px; bottom: 3px; content: "+"; }
#booking form .form.field.select .form_select .elements_list { display: none !important; }
#booking form .form.field.text { margin: 0px 5px; padding: 10px 0; width: calc(50% - 10px); text-align: center; }
#booking form .form.field.element_14 { font-family: var(--font-family-3); font-size: var(--font-size-xs); color: var(--color3); text-align: center; line-height: 1; letter-spacing: 0; display: none;}
#booking form input[type="submit"] { margin:10px 5px 0 5px; padding: 20px 25px; width: calc(100% - 10px); display: inline-block; background-color: var(--color4); font-family: var(--font-family-2); font-weight: var(--font-weight-bold); font-size: var(--font-size-xs); color: var(--white); letter-spacing: 1px; text-align: center; text-transform: uppercase; }
#booking form .form.field.select.element_7 { display: none; }

/* FIX */
#booking form .form.field.date .date_from_html .month_name { display: none; }
#booking .form .date_from_html .month_name_tiny { display: inline-block; font-family: var(--font-family-3); font-size: var(--font-size-md); color: var(--black); text-align: left; line-height: 1; letter-spacing: 0;}


#booking:has(#bei) {width: 430px; top:116px}
#booking:has(#overlay_mask.fired) { z-index: 3000}
#booking #bei form {width: 100%}
#booking #bei form .caption-fields .form {position: relative;}
#booking #bei form .template_calendar .calendar_dates_info {display: none;}
#booking #bei form .calendar_header { position: relative; text-align: center; display: flex; justify-content: center; height: 40px; font-size: var(--font-size-bs); align-items: center; background-color: var(--black); color: var(--white);}
#booking #bei form .calendar_header .controls .prev_month,
#booking #bei form .calendar_header .controls .next_month {top: 7px}
#booking #bei form .template_calendar { position: absolute; background-color: white; width: calc(200% + 10px); top: 80px; z-index: 1; display: none;}

.smartphone #booking #bei form .caption-fields .form.date {position: unset;}
.smartphone #booking #bei form .template_calendar { position: absolute; background-color: white; width: calc(100% - 20px); top: 50%; left: 50%; z-index: 9999; display: none; transform: translate(-50%, -50%); }
.smartphone #bei:has(.cal-open) #overlay_mask { display: block; position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; background-color: var(--alpha-black); z-index: 2000; overflow: hidden; }

#booking #bei form .template_calendar.fired {display: block;}
#booking #bei form .template_calendar.fired .confirm_btn { display: block; padding: 20px 25px; width: calc(100%); background-color: var(--black); font-family: var(--font-family-2); font-weight: var(--font-weight-bold); font-size: var(--font-size-xs); color: #FFFFFF; letter-spacing: 1px; text-align: center; text-transform: uppercase; }
#booking #bei form .calendar_wrapper .day-content { display: flex; flex-direction: column; align-items: flex-end; font-size: calc(var(--font-size-xs) - 4px); padding: 5px}
#booking #bei form .calendar_wrapper .oob {background-color: var(--lightgrey); color: var(--grey); cursor: context-menu;}
#booking #bei form .calendar_wrapper .fc-day:hover {background-color: var(--lightgrey);}
#booking #bei form .calendar_wrapper .fc-day.selected {background-color: var(--lightgrey);}
#booking #bei form .calendar_wrapper .fc-day.sel-first {background-color: var(--black); color: var(--white);}
#booking #bei form .calendar_wrapper .fc-day.sel-last {background-color: var(--black); color: var(--white);}
#booking #bei form .calendar_wrapper .fc-calendar .fc-row > div > span.fc-date {font-size: var(--font-size-sm); color: unset;}
#booking #bei form .form.field.text { margin: 0px 5px; padding: 10px 0; width: calc(100% - 10px); text-align: center; }
#booking #bei form .merge_group .form.field.select {width: calc(50% - 10px);}
#booking #bei form .b_mask_summary {cursor: pointer;}
#booking #bei form .b_mask_summary * {cursor: pointer; text-align: center;}
#booking #bei .b_mask .guests_wrapper {display: none;}
#booking #bei .b_mask.fired .guests_wrapper { display: block; position: fixed; top: 50%; left: 50%; width: 450px; background-color: #F8F9FA; padding: 20px; z-index: 2001; transform: translate(-50%, -50%); }
#booking #bei .b_mask .form_merge_group {display: flex; flex-wrap: wrap;}
#booking #bei .b_mask .form_merge_group .group_wrapper {width: 100%}
#booking #bei .b_mask .guests_wrapper .guests_desc { font-family: var(--font-family-2); text-transform: uppercase; font-size: var(--font-size-sm); color: var(--black); letter-spacing: 0; line-height: 44px; }
#booking #bei .b_mask .merge_group {display: flex; flex-wrap: wrap; background-color: var(--white); justify-content: center; margin-top: 5px; margin-bottom: 5px}
#booking #bei .b_mask .merge_group > .form.select { background-color: transparent;}
#booking #bei .b_mask .merge_group .form_select { display: flex; flex-direction: row; justify-content: space-evenly; align-items: center;}
#booking #bei .b_mask .form_merge_group .form_merge_rem_button { padding: 17px 15px 0px 0px; text-align: right; font-weight: var(--font-weight-medium); text-transform:uppercase; cursor: pointer; position: absolute; right: 16px}
#booking #bei .b_mask .form_merge_group .form_merge_rem_button:before { content: "\f056"; padding: 0 5px 0 0; font-family: var(--icon); font-weight: var(--font-weight-bold);}
#booking #bei .merge_group:not(:last-child) .form_merge_rem_button, #booking #bei .merge_group:first-child .form_merge_rem_button { display: none; }
#booking #bei .b_mask .form_merge_group .form_merge_add_button { padding: 10px 0px; text-align: left; font-weight: var(--font-weight-medium); text-transform:uppercase; cursor: pointer;}
#booking #bei .b_mask .form_merge_group .form_merge_add_button:before { content: "\f055"; padding: 0 5px 0 0; font-family: var(--icon); font-weight: var(--font-weight-bold);}
#booking #bei .b_mask .form_merge_group .form_merge_add_button[disabled] {display: none;}
#booking #bei .b_mask .merge_group .group_title {width: 100%; padding-top: 15px;padding-bottom: 15px; background-color: var(--lightgrey); text-align: center; font-family: var(--font-family-2); text-transform: uppercase; font-size: var(--font-size-bs); text-transform:uppercase; font-weight: var(--font-weight-bold);}
#booking #bei .b_mask .guests_wrapper .add_btn:before {width: 14px; height: 37px; font-family: var(--font-family-3); font-size: var(--font-size-lg); color: var(--color3); text-transform: lowercase; text-align: left; line-height: 1; letter-spacing: 0; position: absolute; right: 20px; bottom: 1px; content: "+"; }
#booking #bei .b_mask .guests_wrapper .rem_btn:before {width: 14px; height: 37px; font-family: var(--font-family-3); font-size: var(--font-size-lg); color: var(--color3); text-transform: lowercase; text-align: left; line-height: 1; letter-spacing: 0; position: absolute; left: 20px; bottom: 2px; content: "-"; }
#booking #bei .b_mask .guests_wrapper_ok {width: 100%; padding: 20px 0px; font-family: var(--font-family-2); font-size: var(--font-size-xs); text-transform: uppercase; background-color: var(--black); color: var(--white); cursor: pointer; letter-spacing: 1px; font-weight: var(--font-weight-bold);}
#booking #bei .ibe_search_btn {margin-top: 15px; cursor: pointer;}
#booking #bei .ibe_search_wrapper {display: none;}
#booking #bei .ibe_search_wrapper.fired {display: block; position: fixed; top: 50%; left: 50%; width: 450px; background-color: #F8F9FA; padding: 20px; z-index: 2001; transform: translate(-50%, -50%); }
#booking #bei .ibe_search_wrapper > * {width: 100%;}
#booking #bei .ibe_search_wrapper .ibe_search_box_title { font-family: var(--font-family-2); text-transform: uppercase; font-size: var(--font-size-md); color: var(--black); letter-spacing: 0; line-height: 44px; text-align: center;}
#booking #bei .ibe_search_wrapper .ibe_search_box_close {position: absolute; top: 10px; right: 2px; visibility: hidden;}
#booking #bei .ibe_search_wrapper .ibe_search_box_close:before { content: "\f00d"; padding: 0; font-family: var(--icon); font-weight: var(--font-weight-bold); visibility:visible; font-size: var(--font-size-bs); cursor: pointer;}
#booking #bei .ibe_search_wrapper .ibe_search_box .text input {padding: 10px; width: 100%; margin-top: 5px}

.body_404 #booking {display: none;}
.error_page {width: 100%;height: 60vh; display: flex; flex-direction: column;align-items: center;justify-content: center;}
.not-found {color: var(--color4); font-family: var(--font-family-1); font-weight: var(--font-weight-regular); font-size: var(--font-size-md); text-transform: uppercase; text-align: center;}
.not-found:before {content:"404"; display: block;line-height: 2; font-size: var(--font-size-xl);color: var(--color3);}

/* Infosplash */
#infosplash { position: fixed; top: 0; left: 0; z-index: 9999; width: 100%; height: 100%; background-color: var(--alpha-black); padding: 15px}
#infosplash #infosplash_container { display: flex; justify-content: center; align-items: center; width: 100%; height: 100%; }
#infosplash #infosplash_container .infosplash_wrapper {text-align: center}
#infosplash #infosplash_container .infosplash_wrapper .close { color: var(--white); font-size: var(--font-size-md); margin-bottom: 15px; cursor: pointer; }
#infosplash .ztemplate { max-width: 640px }
#infosplash .ztemplate .row .box .elem .caption-cnt .caption-alt { background-color: var(--white); padding: 15px; text-align: left; }
#infosplash .ztemplate .row .box .elem .caption-cnt .caption-alt .title { margin-top: 10px }
#infosplash .ztemplate .row .box .elem .caption-cnt .caption-alt .title a { font-size: 26px; color: var(--color3); font-family: var(--font-family-1); font-size: var(--font-size-md); }
#infosplash .ztemplate .row .box .elem .caption-cnt .caption-alt .ztextarea { font-family: var(--font-family-2); font-weight: var(--font-weight-light); font-size: var(--font-size-bs); line-height: 1; color: var(--dark-gray); }
#infosplash .ztemplate .row .box .elem .caption-cnt .caption-alt .zsimplebutton { display: inline-block; margin: 30px 15px 15px 0 }
#infosplash .ztemplate .row .box .elem .caption-cnt .caption-alt .zsimplebutton a { padding: 10px 15px; background-color: var(--primary-color); color: var(--color4); font-family: var(--font-family-2); font-weight: var(--font-weight-bold); text-transform: uppercase; }
#infosplash .ztemplate .row .box .elem .caption-cnt .caption-alt .zlink { display: inline-block; margin: 30px 15px 15px 0}
#infosplash .ztemplate .row .box .elem .caption-cnt .caption-alt .zlink a{ padding: 10px 15px; background-color: var(--primary-color); color: var(--white); font-family: var(--font-family-1); font-weight: var(--font-weight-bold); text-transform: uppercase; }
#infosplash #infosplash_container .infosplash_wrapper #infosplash_content img { width: 100%; max-width: 640px }
#infosplash form .caption-fields .email input { padding: 15px; width: 100%; background-color: var(--light-gray); font-family: var(--font-family-1); font-weight: var(--font-weight-light); font-size: var(--font-size-base); color: var(--primary-color); text-align: left; line-height: 1; letter-spacing: 0; border: 1px solid var(--light-blue);}
#infosplash form input[type="submit"] { background-color: var(--primary-color); border-color: var(--primary-color); font-family: var(--font-family-1); font-weight: var(--font-weight-bold);color: var(--white); padding: 15px; margin-top: 25px; text-transform: uppercase;}
#infosplash form .caption-fields .field .form_element_title { color: var(--color4); font-family: var(--font-family-1); font-weight: var(--font-weight-bold); font-size: var(--font-size-bs); padding-bottom: 5px}
@media (max-height: 812px){ #infosplash {overflow: auto;} #infosplash #infosplash_container { align-items: center; }}

#slideshow-cnt { position: relative;}
#slideshow-cnt .tns-nav {display: none;}
#slideshow-cnt .g2.text {width: 65%;}
#slideshow-cnt .g2.text p {margin-top: 0px; padding: 0; font-family: var(--font-family-2); font-weight: var(--font-weight-regular); font-size: var(--font-size-bs); color: var(--color4); letter-spacing: 2px; line-height: 27px; text-transform: uppercase; margin:0px; padding-bottom: 15px;}
#slideshow-cnt .g2.text h4 {margin-top: 0px; padding: 0; font-family: var(--font-family-1); font-weight: var(--font-weight-regular); font-size: var(--font-size-lg); color: var(--color4); letter-spacing: 2px; line-height: 27px; text-transform: uppercase; margin:0px;}
#slideshow .slide .elem .caption { margin: 35px 90px; width: 55%; }
#slideshow .slide .elem img { min-width: 100%; }
#slideshow .caption h3 { margin: 10px 0 0 0; padding:0; font-family: var(--font-family-1); text-transform: uppercase; font-size: var(--font-size-xl); color: var(--color4); letter-spacing: 0; line-height: 44px; }
#slideshow .caption p { margin: 0; padding:0; font-family: var(--font-family-2); font-weight: var(--font-weight-regular); font-size: var(--font-size-xs); color: var(--color4); letter-spacing: 2px; line-height: 27px; text-transform: uppercase; }
#slideshow .caption .goto { margin: 25px 0 0 0; padding:0; }
#slideshow .caption .goto a { padding: 10px 15px;  border: 1px solid var(--black); font-family: var(--font-family-2); font-weight: var(--font-weight-bold); font-size: var(--font-size-xs); color: var(--black); letter-spacing: 2px; text-transform: uppercase; display: inline-block; }
#slideshow .caption .goto a:after { content: "\f061"; padding: 0 0 0 15px; font-family: var(--font-family-2); font-weight: var(--font-weight-light); font-size: var(--font-size-xs); color: var(--black); letter-spacing: 0; text-align: right; }
#home #slideshow .elem.tns-item {display: flex; flex-direction: column;}
#home #slideshow .elem.tns-item img {order:2}
#home #slideshow .elem.tns-item .caption {order:1}
body.smartphone #slideshow-cnt .g2.text {width: 100%;}
body.smartphone #booking:has(#bei) {width: 100%; top: 0}
body.smartphone #booking { display: none; position: fixed; bottom: 0px; height: 100vh; right: 0px; top: unset; width: 100%; padding-top: 20px; z-index: 9999; }
body.smartphone #booking.type1.closed form {display: block !important;}
body.smartphone #book-open {display: none !important;}
body.smartphone .booking_btn #varsimple_booking_btn_mobile_closed {display: none;}
body.smartphone .booking_btn.fired #varsimple_booking_btn_mobile {display: none;}
body.smartphone .booking_btn.fired #varsimple_booking_btn_mobile_closed {display: block;}


body.smartphone #booking.type1.closed { top: unset; }
body.smartphone #language {top: 0px}
body.smartphone header #menu_btn {right: 80px}

body.smartphone #slideshow-cnt {text-align: center;}

body.smartphone .book_scroll {display: none;}
body.desktop header .cnt .dx {display: flex; align-items: center;}
body.desktop header .cnt .dx .book_scroll {display: none;}
body.desktop header .cnt .dx .book_scroll.scrolled {display: block;}
body.desktop header .cnt .dx .book_scroll #varsimple_book_scrolled { padding: 10px 15px; border: 1px solid var(--color4); font-family: var(--font-family-2); font-weight: var(--font-weight-bold); font-size: var(--font-size-xs); color: var(--white); letter-spacing: 2px; text-transform: uppercase; display: inline-block; margin-right: 20px; cursor: pointer; background-color: var(--color4);}

#z_cookie_accept {display: none !important;}

@media(max-width: 2120px){
    #slideshow .slide .elem img { min-height: 525px; object-fit: cover; }
}

@media (max-width: 1441px) {
    header .contact {display: none;}
    header .cnt { padding: 15px 20px;}

}
@media (max-width: 1281px) {
    #slideshow .slide .elem .caption {width: 45%;}
    #booking {right: 50px;}
}