/* VARIABILI */
:root {
    --color1: #4e5f71; /* #4e5f71 = accessibile - colore originale: #5C7086 */
    --color2: #CAC7A7;
    --color3: #B88A3A; /* #B88A3A = accessibile - colore originale: #DBAE71 */
    --color4: #968980;
    --dark_grey: #4D4D4D;
    --grey: #888888;
    --lightgrey: #f9f9f9;
    --white: #fff;
    --black: #000000;
    --brown: #89734C;

    --alpha-black: rgba(0, 0, 0, 0.5);
    --alpha-white: rgba(255,255,255,0.95);

    --accent1: #138000;
    --accent2: #d32110;

    --sans: 'Greycliff CF';
    --serif: 'Libre Caslon Display', serif;
    --font-icon: 'Font Awesome 6 Pro';
    --font-icon-alt: 'Font Awesome 6 Brands';

    --font-weight-light: 200;
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-bold: 700;
    --font-weight-solid: 900;

    /* BEI */
    --font-size-xs: 14px;
    --font-size-bs: 16px;
    --font-size-sm: 25px;
    --font-size-md: 28px;
    --font-size-lg: 32px;
    --font-size-xl: 40px;

	--w-container: 1366px;

    --size-base: 16px;
    --max-width: 1366px;
}

body.smartphone {
    --font-size-xs: 12px;
    --font-size-bs: 15px;
    /* --font-size-sm: 20px; */
    --font-size-md: 22px;
    --font-size-lg: 28px;
    --font-size-xl: 34px;

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

@font-face { font-family: 'Greycliff CF'; src:url('../fonts/GreycliffCF-Bold.woff') format('woff'); font-style: normal; font-weight: 700; font-display: swap; }
@font-face { font-family: 'Greycliff CF'; src:url('../fonts/GreycliffCF-Regular.woff') format('woff'); font-style: normal; font-weight: 400; font-display: swap; }
@font-face { font-family: 'Bank'; src:url('../fonts/BankGothicBT-Light.woff2') format('woff2'); font-style: normal; font-weight: 400; font-display: swap; }

@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 Brands"; 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;}
@font-face { font-family: 'Elza'; src:url('../fonts/Elza-Regular.woff') format('woff'); font-style: normal; font-weight: 400; font-display: swap; }

body { font-family: "Montserrat", Helvetica, Arial, sans-serif; font-size: 14px; line-height: 1; color: var(--black); }

* { margin: 0; padding: 0; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
*:before, *:after { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;}
html { font-family: sans-serif; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; -webkit-tap-highlight-color: rgba(0, 0, 0, 0);}
body { margin: 0; line-height: 1; font-family: var(--sans); color: var(--grey); font-size: var(--size-base); font-weight: var(--font-weight-normal); overflow-x: hidden; }
article, aside, details, figcaption, figure, footer, hgroup, main, nav, section, summary { display: block; }
audio, canvas, progress, video { display: inline-block; vertical-align: baseline; }
audio:not([controls]) { display: none; height: 0; }
[hidden], template { display: none; }
a { background: transparent; -webkit-transition: all .6s; -moz-transition: all .6s; -o-transition: all .6s; transition: all .6s; text-decoration: none!important }
a:active, a:hover, a:focus { text-decoration: none; }
b, strong { font-weight: bold; }
svg:not(:root) { overflow: hidden; }
button, input, optgroup, select, textarea { margin: 0; color: inherit; font: inherit; }
input, button, select, textarea { font-family: inherit; font-size: inherit; line-height: inherit; border:none; display: block; }
label { display: block; }
img { border: 0; vertical-align: middle; max-width: 100%; }
h1, h2, h3, h4, h5, h6 { font-weight: var(--font-weight-normal); line-height: 1; }
.clear { clear: both; }
.overflow { overflow: hidden; }
.nav { margin: 0; padding: 0; list-style: none; }
.nav > li { position: relative; display: block; }
.nav > li > a { position: relative; display: block; }
.nav-pills { display: block; }
.nav-pills > li { float: left; text-transform: none; font-weight: normal; }
.navbar { position: relative; }
.navbar-nav > li > a { line-height: 1; }
ul.cnt { margin:0; padding:0; display:flex; list-style: none; -ms-box-orient: horizontal; -webkit-align-items: stretch; }
.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: flex-start; align-items: flex-start; justify-content: center; }
.no-scroll {overflow: hidden;}
/* sketch */
header { width: 100%; display: flex; text-align: left; z-index: 998; position: fixed; left: 0; top: 0; align-items: flex-start; }
header .section_menu_btn {width: calc(100% / 3); display: inline-flex; text-align: center; align-items: center; }
header .section_menu_btn .menu_btn { width: 50px; height: 50px; border-radius: 25px; background-color: var(--color1); text-align: left; position: relative; cursor: pointer; }
header .section_menu_btn .menu_btn .bar { width: 25px; height: 2px; background-color: #D8D8D8; text-align: left; }
header .section_menu_btn span { font-family: var(--sans); font-weight: var(--font-weight-normal); font-size: 15px; color: var(--white); text-transform: uppercase; text-align: center; line-height: 20px; letter-spacing: 1px; }
header .section_quicklinks { display: inline-flex; text-align: left; }
header .section_quicklinks .mail_btn { text-align: left; }
header .section_quicklinks .mail_btn a { display: block; text-align: left; }
header .section_quicklinks .mail_btn a:before { font-family: var(--font-icon); font-weight: var(--font-weight-light); font-size: 28px; color: var(--white); text-transform: lowercase; text-align: left; line-height: 28px; letter-spacing: 0; content: "\f0e0"; }
header .section_quicklinks .phone_btn { text-align: left; }
header .section_quicklinks .phone_btn a { display: block; text-align: left; }
header .section_quicklinks .phone_btn a:before { font-family: var(--font-icon); font-weight: var(--font-weight-light); font-size: 28px; color: var(--white); text-transform: lowercase; text-align: left; line-height: 28px; letter-spacing: 0; content: "\f095"; }
header .section_quicklinks .offers_btn { text-align: left; }
header .section_quicklinks .offers_btn a { display: block; text-align: left; position: relative; }
header .section_quicklinks .offers_btn a:before { font-family: var(--font-icon); font-weight: var(--font-weight-light); font-size: 28px; color: var(--white); text-transform: lowercase; text-align: left; line-height: 28px; letter-spacing: 0; content: "\f06b"; }
header .section_quicklinks .offers_btn a:after { width: 10px; height: 10px; border-radius: 8px; background-color: #F25266; text-align: left; z-index: 2; position: absolute; right: -8px; top: -5px; content: ''; }
header .section_quicklinks .social .socialnet a:before { font-size: 28px;}
header .section_quicklinks .social .socialnet {margin: 0;}
.smartphone header .section_quicklinks .social {display: none;}
header .head_logo { width: calc(100% / 3); text-align: center; }
header .booking_section { width: calc(100% / 3); text-align: right; }
header .booking_section .booking_btn { display: inline-block; text-align: right; }
header .booking_section .booking_btn .varsimple { display: inline-block; background-color: var(--color3); font-family: var(--serif); font-weight: var(--font-weight-normal); font-size: 15px; color: var(--white); text-transform: uppercase; text-align: center; line-height: 20px; letter-spacing: 1px; cursor: pointer; }
.slideshow_cnt { background-color: #000000; text-align: left; position: relative; }
.slideshow_cnt .scroll_btn { width: 40px; height: 40px; text-align: center; z-index: 2; position: absolute; left: 0; right: 0; bottom: 30px; }
.slideshow_cnt .scroll_btn:before { font-family: var(--font-icon); font-weight: var(--font-weight-light); font-size: 40px; color: var(--white); text-transform: lowercase; text-align: center; line-height: 1; letter-spacing: 2.67px; content: "\f078"; }
.slideshow_cnt:before { width: 100%; height: 530px; background-image: linear-gradient(180deg, rgb(0 0 0 / 35%) 0%, rgba(0, 0, 0, 0.00) 61%); text-align: left; z-index: 1; position: absolute; left: 0; right: 0; top: 0; content: ''; }
.slideshow_cnt .section_caption { text-align: left; z-index: 2; position: absolute; left: 0; width: 100%; padding: 0 15px; bottom: 106px; text-shadow: 1px 1px 4px black;}
.slideshow_cnt .section_caption .section_text { text-align: left; }
.slideshow_cnt .section_caption .section_text:before { width: 1px; height: 100%; background-color: var(--white); text-align: left; }
.slideshow_cnt .section_caption .section_text h2 { font-family: var(--serif); font-weight: var(--font-weight-normal); font-size: 45px; color: var(--white); text-align: left; line-height: 1; letter-spacing: 0; text-shadow: 0 2px 6px rgba(0,0,0,0.15); }
.slideshow_cnt .section_caption .section_text p { font-family: var(--serif); font-weight: var(--font-weight-normal); font-size: 34px; color: var(--white); text-align: left; line-height: 1; letter-spacing: 0; text-shadow: 0 2px 6px rgba(0,0,0,0.15); }
.slideshow_cnt #vareditor_home_intro_desc p {font-size: calc(var(--font-size-xl) + 4px);}
.slideshow_cnt .section_caption .top_seo { font-family: var(--serif); font-weight: var(--font-weight-normal); font-size: var(--font-size-xl); color: var(--white); text-align: center; line-height: 1; letter-spacing: 0; }
.slideshow_cnt #slideshow { text-align: left; }
.slideshow_cnt #slideshow .slick-dots { text-align: left; z-index: 2; position: absolute; right: 43.0546875px; bottom: 34.07421875px; }
.slideshow_cnt #slideshow .slick-dots li { text-align: left; }
.slideshow_cnt #slideshow .slick-dots li button { width: 12px; height: 12px; border-radius: 6px; background-color: rgba(255, 255, 255, 0.5316051136363636); text-align: left; }
.slideshow_cnt #slideshow .slick-dots li.slick-active { text-align: left; }
.slideshow_cnt #slideshow .slick-dots li.slick-active button { width: 12px; height: 12px; border-radius: 6px; background-color: var(--white); text-align: left; }
.slideshow_cnt #slideshow img { width: 100%; text-align: left; }
#page { font-family: var(--sans); font-weight: var(--font-weight-normal); font-size: var(--size-base); color: var(--dark_grey); text-align: left; line-height: 24px; letter-spacing: 0; }
#page .section_link { text-align: center; }
#page .section_link a { display: inline-block; background-color: var(--color3); font-family: var(--sans); font-weight: var(--font-weight-normal); font-size: 15px; color: var(--white); text-transform: uppercase; text-align: center; line-height: 20px; letter-spacing: 1px; }
#page .section_title { font-family: var(--serif); font-weight: var(--font-weight-normal); font-size: 45px; color: var(--color3); text-align: center; line-height: 1; letter-spacing: 0; }
#page .top_seo { font-family: var(--sans); font-weight: var(--font-weight-normal); font-size: var(--size-base); color: #2A2929; text-align: center; line-height: 1; letter-spacing: 1px; }
#page #page_name { font-family: var(--serif); font-weight: var(--font-weight-normal); font-size: 45px; color: var(--color1); text-align: center; line-height: 1; letter-spacing: 0; }
#page .section_intro { display: flex; text-align: center; align-items: flex-start; justify-content: center; flex-direction: column; }
#page .section_intro .section_first, #page .section_intro .section_first .top_seo,
.body_camera #page .top_seo { margin: 0; width: 100%; text-align: center; padding: 0px; font-family: var(--serif); color: var(--color3); font-size: var(--font-size-sm);}
.body_camera #page .top_seo { margin-bottom: 20px; }
#page .section_intro .section_last { width: 100%; text-align: center; }




/* Home alert */
.header_alert { display: flex; position: relative; align-items: center; justify-content: center; padding: 10px; background-color: var(--color1); font-family: var(--sans); font-weight: var(--font-weight-normal); font-size: 16px; color: var(--white); text-align: center;}
.header_alert a { font-family: var(--sans); font-weight: var(--font-weight-normal); font-size: 16px; color: var(--white); }
.header_alert a:hover { color: var(--color2);}
body.body_alert header { margin-top: 60px }

/* header */
header {padding: 30px 30px 0; transition: .3s}
header .head_logo { transition: .3s }
header .head_logo img { transition: .3s; filter: brightness(0) invert(1); max-height: 200px; }
body:not(.home) header .head_logo img { max-height: 170px; }
body:not(.home) header,
body.noslide header,
body.page_not_found header { background-color: var(--white); padding: 15px 30px; align-items: center; }
body:not(.home) header .head_logo img,
body.noslide header .head_logo img,
body.page_not_found header .head_logo img { transform: scale(.8); max-height: -webkit-fill-available; }
body:not(.home) header .head_logo,
body.noslide header .head_logo,
body.page_not_found header .head_logo {height: 90px}
header .section_menu_btn { transition: .3s }
header.section_hidden .head_logo { opacity: 0; visibility: hidden; }
header.section_hidden .section_menu_btn { opacity: 0; visibility: hidden; }
header.section_hidden, header.scrolled.section_hidden {background-color: transparent!important;}

/* quicklinks */
header .section_quicklinks {margin-left: 50px}
header .section_quicklinks a { font-size: 0; color: transparent; }
header .section_quicklinks > div {margin: 10px 15px}
header .booking_btn { height: 50px; overflow: hidden; }
header .booking_btn .wrap_content { display: inline-flex; flex-direction: column; position: relative; top: 0; transition: .4s}
header .booking_btn .varsimple { padding: 15px 30px }
header .booking_btn .varsimple:nth-of-type(2){ background-color: var(--color1) }
header .booking_btn.fired .wrap_content { top: -50px }
header .section_quicklinks .whatsapp_btn { text-align: left; display: none;}
header .section_quicklinks .whatsapp_btn a { display: block; text-align: left; }
header .section_quicklinks .whatsapp_btn a:before { font-family: var(--font-icon-alt); font-weight: var(--font-weight-normal); font-size: 28px; color: var(--white); text-transform: lowercase; text-align: left; line-height: 28px; letter-spacing: 0; content: "\f232"; }
header .section_quicklinks .offers_btn {display: none;}
/* menu btn */
header .section_menu_btn .menu_btn .bar {position: absolute; left: 0; right: 0; margin: 0 auto; transition: .3s}
header .section_menu_btn .menu_btn .bar.first { top: 17px }
header .section_menu_btn .menu_btn .bar.middle { top: calc(50% - 1px); }
header .section_menu_btn .menu_btn .bar.last { top: calc(100% - 19px) }
header .section_menu_btn span {padding-left: 15px}
header .section_menu_btn .menu_btn.fired .bar.first { top: calc(50% - 1px); transform: rotate(45deg); }
header .section_menu_btn .menu_btn.fired .bar.middle { opacity: 0 }
header .section_menu_btn .menu_btn.fired .bar.last { top: calc(50% - 1px); transform: rotate(-45deg); }

/* menu */
.menu_open { display: none;}

/* slideshow */
body.page_not_found .slideshow_cnt { display: none; }
.slideshow_cnt:before { background-color: transparent; }
.slideshow_cnt .section_caption .section_text h2 {margin: 0}
.slideshow_cnt .scroll_btn { margin: 0 auto }
.slideshow_cnt #slideshow img {opacity: .9}

/* booking */
.booking_open { display: none;}

/* Pagina */
#page { padding-top: 0 }
#page .section_top { margin-top: 50px }
body:not(.home) .slideshow_cnt { margin-top: 120px; }
body.noslide #page .section_top,
body.page_not_found #page .section_top { margin-top: 170px }
#page .section_intro {background-image: none;}
#page .section_intro > div { padding: 25px }
#page #page_name {margin-top: 0; text-align: left; padding: 0; }
#page.room #page_name { text-align: center; }
.wrap_content.has_submenu .section_text { display: flex; align-items: flex-start; }
.wrap_content.has_submenu .section_text .wrap { width: calc(100% - 320px); padding: 0 60px 0 0px }
.wrap_content.has_submenu .section_text img.left {/* float: none!important;*/ margin-bottom: 20px!important }
.wrap_content.has_submenu .side_submenu { width: 320px; }
.wrap_content.has_submenu .side_submenu .submenu {padding: 0 15px}
.section_content .side_submenu .submenu_title {padding: 15px}
#page .section_intro .section_first.no_summary { display: none; }
#page .section_intro .section_last.no_summary { text-align: center; margin: 0 auto }
#page .section_text .text_dyn .fieldvalue { clear: both; margin-bottom: 50px;}
#page .section_text .text_dyn .fieldvalue:after { content: ''; display: block; width: 100%; clear: both; margin-bottom: 30px; }
#page .section_text .text_dyn h3 { margin-bottom: 20px; font-family: var(--serif); color: var(--color3); font-size: var(--font-size-sm);}

/* 404 */
.not-found { text-align: center; padding: 40px 15px; background-color: var(--color1); color: var(--white); margin-top: 30px }
#page.notfound_page .section_content { text-align: center; }
#page.notfound_page span {  font-family: var(--serif); font-weight: var(--font-weight-normal); font-size: 22px; color: var(--color3); text-align: center; font-size: 55px; margin-bottom: 30px }

/* fix */
#page.room .section_top { margin-top: 0 }
#page.room { display: flex; flex-direction: column; }
@media (max-width: 767px){ .room_submenu { order: 10; display: none; } .room_submenu .submenu #tree > li { display: block; } .room_submenu .submenu #tree { margin: 40px 0 0 0; padding: 15px } .room_submenu { padding: 0 30px }  }
.ztemplate_model_8 .row .box .elem .caption-cnt .caption-alt .zsimplebutton { right: 60px }
#page .section_content { font-size: 16px }
#page .section_content ul { display: inline-block; padding-left: 30px; padding-top: 10px; padding-bottom: 10px;}
#page .section_content .submenu { padding: 15px; }
#page .section_content .submenu ul { padding: 0; display: flex; flex-direction: column; gap: 5px;}
#page .section_content .submenu ul ul { padding-left: 0; list-style-type: none; }
.section_content .side_submenu span { display: none; }
#page .section_content .main_content .col_cnt { display: flex; justify-content: space-between; align-items: flex-start; align-content: flex-start; flex-wrap: wrap; padding-top: 40px; }
#page .section_content .main_content .col_cnt .sx { width: 400px; }
#page .section_content .main_content .col_cnt .dx { width: calc(100% - 400px); }
#page .section_content .f8.zimage { margin: 80px auto 40px; }
