@keyframes dot_loading{ 0% { background-color: var(--color2); } 50%, 100% { background-color: rgba(255, 255, 255, 0.8); } }

/* video YTP*/
@font-face{font-family:ytpregular;src:url(../fonts/ytp-regular.eot)}@font-face{font-family:ytpregular;src:url(data:application/x-font-woff;charset=utf-8;base64,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) format('woff'),url(font/ytp-regular.ttf) format('truetype');font-weight:400;font-style:normal}.mb_YTPlayer:focus{outline:0}.YTPWrapper{display:block;transform:translateZ(0) translate3d(0,0,0);transform-style:preserve-3d;perspective:1000;-webkit-backface-visibility:hidden;backface-visibility:hidden;box-sizing:border-box}.mb_YTPlayer .loading{position:absolute;top:10px;right:10px;font-size:12px;color:#fff;background:rgba(0,0,0,.51);text-align:center;padding:2px 4px;border-radius:5px;font-family:"Droid Sans",sans-serif;-webkit-animation:fade .1s infinite alternate;animation:fade .1s infinite alternate}@-webkit-keyframes fade{0%{opacity:.5}100%{opacity:1}}@keyframes fade{0%{opacity:.5}100%{opacity:1}}.YTPFullscreen{display:block!important;position:fixed!important;width:100%!important;height:100%!important;top:0!important;left:0!important;margin:0!important;border:none!important;opacity:1!important;background-color:#000!important;padding:0!important}.inlinePlayButton,.inlinePlayButtonMobile{font-family:ytpregular;font-size:45px;color:#fff;text-align:center;border-radius:100%;background-color:rgba(0,0,0,.4);position:absolute;width:80px;height:80px;line-height:80px;top:0;bottom:0;left:0;right:0;margin:auto;cursor:pointer;opacity:.8;transition:all .4s;transform:scale(1.3)}.inlinePlayButtonMobile{transform:scale(1)}.mb_YTPlayer:hover .inlinePlayButton{opacity:1;transform:scale(1)}.inlinePlayButton:hover{background-color:#000;transform:scale(1.3)!important}.mbYTP_wrapper iframe{max-width:unset!important; width: 100%!important;}.inline_YTPlayer{margin-bottom:20px;vertical-align:top;position:relative;left:0;overflow:hidden;border-radius:4px;box-shadow:0 0 5px rgba(0,0,0,.7);background:rgba(0,0,0,.5)}.inline_YTPlayer img{border:none!important;margin:0!important;padding:0!important;transform:none!important}.mb_YTPBar .ytpicon{font-size:20px;font-family:ytpregular}.mb_YTPBar .mb_YTPUrl.ytpicon{font-size:30px}.mb_YTPBar{transition:opacity .5s;display:block;width:100%;height:10px;padding:5px;background:#333;position:fixed;bottom:0;left:0;text-align:left;z-index:1000;font:14px/16px sans-serif;color:#fff;opacity:.1;box-sizing:border-box}.mb_YTPBar.visible,.mb_YTPBar:hover{opacity:1}.mb_YTPBar .buttonBar{transition:all .5s;background:0 0;font:12px/14px san-serif;position:absolute;top:-30px;left:0;padding:5px;width:100%;height:40px;box-sizing:border-box}.mb_YTPBar:hover .buttonBar{background:rgba(0,0,0,.4)}.mb_YTPBar span{display:inline-block;font:16px/20px sans-serif;position:relative;width:30px;height:25px;vertical-align:middle}.mb_YTPBar span.mb_YTPTime{width:130px}.mb_YTPBar span.mb_OnlyYT,.mb_YTPBar span.mb_YTPUrl{position:absolute;width:auto;display:block;top:6px;right:10px;cursor:pointer}.mb_YTPBar span.mb_YTPUrl img{width:60px}.mb_YTPBar span.mb_OnlyYT{left:300px;right:auto}.mb_YTPBar span.mb_OnlyYT img{width:25px}.mb_YTPBar span.mb_YTPUrl a{color:#fff}.mb_YTPBar .mb_YTPPlayPause,.mb_YTPlayer .mb_YTPBar .mb_YTPPlayPause img{cursor:pointer}.mb_YTPBar .mb_YTPMuteUnmute{cursor:pointer}.mb_YTPBar .mb_YTPProgress{height:10px;width:100%;background:#222;bottom:0;left:0}.mb_YTPBar .mb_YTPLoaded{height:10px;width:0;background:#444;left:0}.mb_YTPBar .mb_YTPseekbar{height:10px;width:0;background:#bb110e;bottom:0;left:0;box-shadow:rgba(82,82,82,.47) 1px 1px 3px}.mb_YTPBar .YTPOverlay{backface-visibility:hidden;-webkit-backface-visibility:hidden;-webkit-transform-style:flat;box-sizing:border-box}.YTPOverlay.raster{background:url(../images/ytp/raster.png)}.YTPOverlay.raster.retina{background:url(../images/ytp/raster@2x.png)}.YTPOverlay.raster-dot{background:url(../images/ytp/raster_dot.png)}.YTPOverlay.raster-dot.retina{background:url(../images/ytp/raster_dot@2x.png)}.mb_YTPBar .simpleSlider{position:relative;width:100px;height:10px;border:1px solid #fff;overflow:hidden;box-sizing:border-box;margin-right:10px;cursor:pointer!important;border-radius:3px}.mb_YTPBar.compact .simpleSlider{width:40px}.mb_YTPBar.compact span.mb_OnlyYT{left:260px}.mb_YTPBar .simpleSlider.muted{opacity:.3}.mb_YTPBar .level{position:absolute;left:0;bottom:0;background-color:#fff;box-sizing:border-box}.mb_YTPBar .level.horizontal{height:100%;width:0}.mb_YTPBar .level.vertical{height:auto;width:100%}
/* FIX per video */
.mb_YTPBar .buttonBar, .mb_YTPBar .mb_YTPProgress, .mb_YTPBar { /* display: none!important */ }
.mb_YTPBar .mb_YTPProgress { display: none!important}
.mb_YTPBar .buttonBar div, .mb_YTPBar .buttonBar span:not(.mb_YTPMuteUnmute) { display: none!important;}
.mb_YTPBar { background-color: transparent!important; z-index: 2!important;opacity: 1!important}
.mb_YTPBar:hover .buttonBar { background-color: transparent!important; }
.mb_YTPBar .mb_YTPMuteUnmute { background-color: var(--color-gold); width: 50px; height: 50px; border-radius: 100%; line-height: 50px; text-align: center; position: absolute;bottom: 60px; left: 30px; z-index: 1;}
.mbYTP_wrapper { max-height: calc(100vh - 95px - 40px); }
.mbYTP_wrapper iframe { margin: 0!important; top: 50% !important; transform: translateY(-50%);}

/* Comune a tutti */
.zsimplebutton a:hover, .btn :where(a, .varsimple):hover { background-color: var(--color1); color: var(--white); }
.btn.green :where(a, .varsimple):hover { background-color: var(--color2); }
img.left { margin-bottom: 20px!important; }

/* Infosplash */
#infosplash .caption-cnt { background-color: var(--white); padding: 10px; flex-direction: column; text-align: left; }
#infosplash .ztemplate .title a {font-family: var(--serif); font-size: 1.1em; color: var(--color1); text-decoration: none!important; }

/* Messaggi persuasivi */
#persuasive_messages { width: 100%; max-width: 320px; }
#persuasive_messages .persuasive_message { border: 5px solid var(--color1); }
#persuasive_messages :where(h2, h3, h4, h5, h6) { font-family: var(--serif); font-size: 1.2em; color: var(--color1); margin-bottom: 10px; }
#persuasive_messages ul { margin: 10px auto; }

/* Header Map */
.header_map { display: block; position: fixed; z-index: 997; left: 0; top: 0; width: 100%; height: 100%; pointer-events: none; background-color: transparent; transition: .4s all; }
.header_map iframe { position: relative; z-index: 998; top: -690px; transition: .8s all cubic-bezier(.215, .61, .355, 1)}
.header_map.fired { pointer-events: inherit; background-color: rgba(0,0,0,.7);}
.header_map.fired iframe { top: 95px; }

/* Home Video */
#home .video_section {  padding: 0 20px; position: relative;}
#home .video_section .bottom { margin: -90px auto 0; max-width: var(--container-1); display: flex; justify-content: flex-end; align-items: center; position: relative; z-index: 2; }
#home .video_section .bottom img { min-width: unset; /* position: absolute; top: 0; right: calc(5% + 15px); transform: translateY(-50%); z-index: 1; */}
#home .video_section .bottom .varlink a { margin: 80px auto 0; padding: 15px; font-weight: var(--font-weight-bold); letter-spacing: var(--l-spacing); line-height: normal; display: inline-block; position: relative; z-index: 2; right: -40px; text-decoration: none; text-transform: uppercase; font-family: var(--sans); font-size: var(--size-mini); color: var(--white); background-color: var(--color2); text-align: center;}
#home #videoyt { position: absolute; bottom: 0px; left:0; width: 100%; height: calc(100vh - 95px - 40px); text-align: center; }
#home .video_cnt { margin-top: 40px; display: flex; align-items: center; justify-content: center; height: calc(100vh - 95px - 40px); width: 100%; position: relative;}
#home .top .vareditor {font-family: var(--serif); font-size: var(--size-serif60); color: var(--grey); text-align: center; max-width: var(--container-2); margin: 0 auto; padding: 50px 15px; line-height: normal;}
body.de { --size-serif60: 50px; }
body.ru { --size-serif60: 50px; }

/* Home box general view */
.home_general_view_tpl { padding: 90px 20px; }
.home_general_view_tpl .caption-cnt { display: flex; flex-wrap: wrap; gap: 90px; }
.home_general_view_tpl .caption { width: 100%; text-align: center; font-family: var(--serif); font-size: var(--size-serif60); }
.home_general_view_tpl .caption .ztextarea { margin: 0 auto; max-width: 790px; }
.home_general_view_tpl .caption .ztextarea.g3 { margin-top: 20px; font-family: var(--sans); font-size: var(--size-medium); }
.home_general_view_tpl .caption-alt { width: 100%; display: flex; flex-wrap: wrap; gap: 20px; }
.home_general_view_tpl.ztemplate .elem .caption-cnt img { min-width: unset; }
.home_general_view_tpl .caption-alt img:nth-of-type(1) { width: 35%; height: auto; position: relative; top: 250px; }
.home_general_view_tpl .caption-alt img:nth-of-type(2) { width: calc(100% - 35% - 20px); }
.home_general_view_tpl .caption-alt img:nth-of-type(3) { margin-left: calc(35% + 20px); width: calc(25% - 20px); object-fit: cover; }
#bio_arch { margin-bottom: auto; padding: 30px 20px; width: calc(100% - 35% - 25% - 20px); max-width: 550px; line-height: 1.3;font-size: var(--size-medium); /* font-weight: var(--font-weight-extra-light); */ }
#bio_arch .varlink a { margin-top: 30px; padding: 15px; font-size: var(--size-mini); font-weight: var(--font-weight-medium); letter-spacing: var(--l-spacing); color: var(--white); background-color: var(--color2); display: inline-block; text-decoration: none; text-transform: uppercase; }

/* Home sections */
.home_sections .vareditor { font-family: var(--serif); font-size: var(--size-serif60); color: var(--grey); text-align: center; max-width: var(--container-3); margin: 0 auto; padding: 50px 15px; line-height: normal; }
.home_sections_tpl { padding: 0 20px; }
.home_sections_tpl .box-1 .caption-cnt { position: relative; }
.home_sections_tpl .box-1 .caption { width: 100%; display: flex; flex-wrap: wrap; gap: 20px; position: relative;}
.home_sections_tpl .box-1 .caption:before { content: ''; position: absolute; z-index: 1; background: linear-gradient(180deg, rgba(0, 0, 0, 0.00) -13.09%, rgba(0, 0, 0, 0.65) 100%); top: 0; left: calc(25% + 20px); width: calc(100% - 25% - 20px); height: 100%; }
.home_sections_tpl.ztemplate .elem .caption-cnt img { min-width: unset; object-fit: cover; height: calc(100vh - 95px - 40px); }
.home_sections_tpl .box-1 img:nth-of-type(1) { width: 25%; height: auto; }
.home_sections_tpl .box-1 img:nth-of-type(2) { width: calc(100% - 25% - 20px); }
.home_sections_tpl .box-1 .caption-alt { padding: 100px 0 100px 100px; position: absolute; z-index: 2; left: calc(25% + 20px); bottom: 0; color: var(--white); line-height: 1.3; }
.home_sections_tpl .box-1 .title a { font-family: var(--serif); font-size: var(--size-serif80); text-transform: uppercase; color: var(--white); text-decoration: none; }
.home_sections_tpl .box-1 .title { margin: 0 0 40px; display: flex; flex-direction: column; gap: 40px;}
.home_sections_tpl .box-1 .title:after { margin-left: 100px; display: inline-block; content: ''; height: 1px; width: 600px; background-color: var(--white); }
.home_sections_tpl .box-1 .ztextarea { margin-bottom: 30px; max-width: 340px; }
.home_sections_tpl .box-1 .elem { margin-bottom: 105px; padding-bottom: 90px; position: relative; }
.home_sections_tpl .box-1 .elem:before { content: ''; display: flex; max-width: var(--container-2); margin: 0 auto; border-bottom: 1px solid var(--color1); width: 100%; height: 15px; position: absolute; bottom: -14px; left: 0; right: 0;}
.home_sections_tpl .box-1 .elem:after { content: ''; background-color: var(--color3); background-image: url(../images/icons/shield.svg?v=2); background-position: center; background-repeat: no-repeat; width: 42px; height: 30px; display: inline-block; margin: 0 auto; position: absolute; bottom: -30px; left: 0; right: 0; }
.home_sections_tpl .box-1 .elem.odd .caption { flex-direction: row-reverse; }
.home_sections_tpl .box-1 .elem.odd .caption-alt { left: 0; }
.home_sections_tpl .box-1 .elem.odd .caption:before { left: 0; }
.home_sections_tpl .box-1.fullwidth img { width: 100%; }
.home_sections_tpl .box-1.fullwidth .caption:before { width: 100%; left: 0; }
.home_sections_tpl .box-1.fullwidth .caption-alt { padding: 100px; bottom: unset; top: 50%; transform: translateY(-50%); width: 100%; left: 0; right: 0; text-align: center; }
.home_sections_tpl .box-1.fullwidth .ztextarea { max-width: unset; font-size: var(--size-big); font-family: var(--serif);}
.home_sections_tpl .box-1.fullwidth .title:after { margin: 0 auto; }
.home_sections_tpl.wrapper_tpl { position: relative; }
.home_sections_tpl.wrapper_tpl .box-1 .elem:before, .home_sections_tpl.wrapper_tpl .box-1 .elem:after { display: none; }
.home_sections_tpl.wrapper_tpl .box-1 .elem.single { margin-bottom: 0; padding-bottom: 0; }
.home_sections_tpl .icon_box { position: absolute; bottom: 90px; left: 0; width: 100%; z-index: 2; display: flex; align-items: center; justify-content: center; gap: 40px; }
.home_sections_tpl .icon_box a { padding: 15px 20px; border: 1px solid var(--white); max-width: 300px; display: inline-flex; align-items: center; gap: 20px; text-align: left; background-color: transparent; color: var(--white); text-transform: uppercase; font-size: var(--size-mini); font-weight: var(--font-weight-medium); letter-spacing: var(--l-spacing); text-decoration: none; transition: .8s all cubic-bezier(.215, .61, .355, 1);}
.home_sections_tpl .icon_box a:before { font-family: var(--font-icon); font-size: var(--size-icon); font-weight: var(--font-weight-extra-light); position: relative; transition: .8s all cubic-bezier(.215, .61, .355, 1);}
.home_sections_tpl .icon_box .c1154 a:before { content: '\f6fd'; } /* Dolomiti di Brenta */
.home_sections_tpl .icon_box .c2171 a:before { content: '\f7c7'; } /* Ski area */
.home_sections_tpl .icon_box .c1163 a:before { content: '\f724'; } /* Parco naturale */
.home_sections_tpl .icon_box .c1164 a:before { content: '\e1b3'; } /* Madonna di Campiglio */
.home_sections_tpl .icon_box a:hover { background-color: var(--color3); color: var(--color1); }
.home_sections_tpl .icon_box a:hover:before { color: var(--color2); transform: scaleX(-1); }

/* Home offers */
#offers_section { margin: 90px auto 0; max-width: var(--max-width-2); }
#offers_section .section_title { position: relative; text-align: center; display: flex; flex-direction: column; align-items: center; gap: 40px; }
#offers_section .section_title:after { display: inline-block; content: ''; height: 1px; width: 600px; background-color: var(--color1); }
.offers_tpl .caption-cnt { flex-direction: column; position: relative; }
.offers_tpl :where(.caption, .caption-alt) { width: 100%; }
.offers_tpl .caption { position: relative; }
.offers_tpl .caption:before { position: absolute; content: ''; z-index: 1; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(180deg, rgba(0, 0, 0, 0.00) 0%, rgba(0, 0, 0, 0.53) 100%); }
.offers_tpl .caption-alt { padding: 30px; position: absolute; z-index: 2; bottom: 0; left: 0; color: var(--white); line-height: 1.3; }
.offers_tpl img { width: 100%; }
.offers_tpl .box.offers .zimage img { min-height: 545px; }
.offers_tpl .title a { font-size: var(--size-serif35); color: var(--white); font-family: var(--serif); }
.offers_tpl .zcheckbox { position: absolute; z-index: 2; top: 30px; left: 30px; color: var(--white); text-transform: uppercase; font-size: var(--size-mini); font-weight: var(--font-weight-medium); letter-spacing: var(--l-spacing); display: flex; align-items: center; gap: 30px; }
.offers_tpl .zcheckbox .fieldvalue { display: flex; align-items: center; gap: 5px; }
.offers_tpl .zcheckbox .fieldvalue:before { font-family: var(--font-icon); font-size: var(--size-serif30); font-weight: var(--font-weight-extra-light); }
.offers_tpl .zcheckbox .fieldvalue.v0:before { content: '\e28f'; } /* Estate */
.offers_tpl .zcheckbox .fieldvalue.v1:before { content: '\f2dc'; } /* Inverno */
.offers_tpl .zsimplebutton { margin-top: 20px; display: inline-block; }
.offers_tpl .offer_validity_dates, .offers_tpl .offer_minstay { margin-bottom: 0; font-size: var(--size-mini); font-weight: var(--font-weight-medium); text-transform: uppercase; color: var(--white); }



.seasons_filter_tpl .template_filters .filter_key { display: none; }
.seasons_filter_tpl .template_filters .radio { width: 130px; display: flex; align-items: center; gap: 10px; position: relative; }
.seasons_filter_tpl .template_filters .radio:before { content: ''; width: 100%; height: 1px; background-color: var(--soft-grey); display: inline-block;  order: 0;}
.seasons_filter_tpl .template_filters .radio[data-rad-id="-1"] { display: none; }
.seasons_filter_tpl .template_filters .form_radio { margin: 60px auto; display: flex; justify-content: center; align-items: center; position: relative; }
.seasons_filter_tpl .template_filters .radio .rad:before { position: relative; display: inline-block; font-family: var(--font-icon); font-size: var(--size-serif30); font-weight: var(--font-weight-extra-light); color: var(--color2); cursor: pointer; transition: .8s all cubic-bezier(.215, .61, .355, 1);}
.seasons_filter_tpl .template_filters .radio.checked .rad:before { color: var(--color1); transform: scaleX(-1); }
.seasons_filter_tpl .template_filters .radio[data-rad-id="0"] .rad:before { content: '\e28f'; } /* Estate */
.seasons_filter_tpl .template_filters .radio[data-rad-id="0"] { flex-direction: row-reverse; } /* Estate */
.seasons_filter_tpl .template_filters .radio[data-rad-id="1"] .rad:before { content: '\f2dc'; } /* Inverno */
.seasons_filter_tpl .template_filters .radio .value { margin: 0 auto; width: 130px; font-size: var(--size-mini); text-transform: uppercase; font-weight: var(--font-weight-medium); position: absolute; left: 0; right: 0; text-align: center; bottom: -20px; z-index: 1; opacity: 0; transition: .8s all cubic-bezier(.215, .61, .355, 1);}
.seasons_filter_tpl .template_filters .radio[data-rad-id="0"] .value { left: calc(130px / 2); } /* Estate */
.seasons_filter_tpl .template_filters .radio[data-rad-id="1"] .value { right: calc(130px / 2); left: unset; } /* Inverno */
.seasons_filter_tpl .template_filters .radio.checked .value { opacity: 1; }
.seasons_filter_tpl .template_filters .radio:after { content: ''; position: absolute; top: 50%; left: 0; transform: translateY(-50%); width: 0; height: 5px; background-color: var(--color1); transition: .8s all cubic-bezier(.215, .61, .355, 1);}
.seasons_filter_tpl .template_filters .radio.checked:after { width: calc(100% - 40px); }
.seasons_filter_tpl .template_filters .radio[data-rad-id="0"]:after { left: unset; right: 0; }
.offers_tpl .elem { margin: 30px 15px 0; transition: .8s all cubic-bezier(.215, .61, .355, 1);}
.offers_tpl .elem.center_elem { margin-top: 0; }
.offers_tpl button.slick-next:before, .offers_tpl button.slick-prev:before { color: var(--color2); }
.offers_tpl .box { padding-bottom: 60px; }

/* Pagina Offerta */
body.body_offerta .request_info_cnt { margin-top: 40px; display: none;  height: 0; overflow: hidden; transition: height 0.5s ease; }
body.body_offerta .request_info_cnt.open { height: auto; }
body.body_offerta :where(img.left, img.right) {/*  margin: 0 0 20px 0!important; width: 100%; float: none!important; */ }

/* Footer */
.section_partners { margin: 0 auto; padding: 40px 20px; background-color: var(--color3); width: 100%; display: flex; align-items: center; justify-content: center; gap: 30px; }
.section_partners img { mix-blend-mode: multiply;}
footer { background-color: var(--color1); color: var(--white); line-height: 1.3; }
footer .logo img { filter: brightness(0) invert(1); }
.footer_cnt { padding: 60px 20px; margin: 0 auto; display: flex; justify-content: space-between; align-items: center;  max-width: var(--container-1);}
.footer_cnt .col { width: calc(100% / 3); }
.footer_cnt .col.logo { text-align: center; }
.footer_cnt .col.last { display: inline-flex; justify-content: end; }
.footer_menu { display: flex; flex-direction: column; gap: 10px; }
.footer_menu a { text-decoration: none; font-family: var(--serif); color: var(--white); font-size: var(--size-serif30); }
footer .col .vareditor h3 { margin-bottom: 20px; font-family: var(--serif); font-size: var(--size-serif30);}
footer .col.first .vareditor:last-of-type { margin: 15px 0 0 0; padding: 15px 0 0 0; position: relative; }
footer .col.first .vareditor:last-of-type:before { content: ''; width: 80px; height: 1px; background-color: var(--white); position: absolute; z-index: 1; top: 0; left: 0;  }
footer .col.first .vareditor a { color: var(--white); }
.footer_bottom {  background-color: var(--color3); color: var(--grey); font-size: var(--size-nano); }
.footer_bottom p { font-size: calc(var(--size-nano) - 2px); }
.footer_bottom_cnt { margin: 0 auto; padding: 15px 20px; max-width: var(--container-1); display: flex; justify-content: space-between;}
.footer_bottom .col { display: flex; align-items: center; gap: 20px; }
.white_section { padding: 30px 20px; background-color: var(--white); font-size: var(--size-micro); text-align: center; }
.bando_cnt { margin-top: 30px; padding-top: 30px; border-top: 1px solid var(--color3); }
.iubenda.iubenda_button.light, .footer_bottom a { background-color: unset; padding: 0; margin: 0; line-height: 1; display: block; border: unset; box-shadow: unset; border-radius: unset; font-family: var(--sans); font-size: var(--size-micro); font-weight: var(--font-weight-medium); text-transform: uppercase; text-decoration: none; color: var(--grey); }

/* Gallery */
#gallery { padding-bottom: 30px; position: relative; }
#gallery .varsimple { margin-bottom: 30px; font-family: var(--serif); font-size: var(--size-big); color: var(--color1); text-align: center;}
.gallery { margin-bottom: 40px; }
.gallery ul li { margin: 0; }
.gallery .slick-list .slick-track { padding-bottom: 60px; }
.gallery button.slick-next:before, .gallery button.slick-prev:before { color: var(--color2); }
#gallery.nocarousel .gallery ul li img { min-width: unset; }
#gallery.nocarousel .gallery ul { display: flex; justify-content: center; gap: 20px; padding: 0 20px; }
#gallery .divider { margin-bottom: 30px; }
#gallery .slide-counter { bottom: 10px; }

/* Pagina Camera */
.rooms_body_cnt { margin: 60px auto; display: flex; align-items: flex-start; gap: 40px; max-width: var(--max-width); line-height: 1.3; }
.rooms_body_cnt .col { padding: 40px; width: calc(50% - 40px); }
.rooms_body_cnt .col.amenities { background-color: var(--white); }
.rooms_body_cnt .col.amenities .zcheckbox { display: flex; flex-wrap: wrap; gap: 15px }
.rooms_body_cnt .col.amenities .zcheckbox :where(.fieldkey, .fieldvalue),
.bei_rooms_tpl .zcheckbox :where(.fieldkey, .fieldvalue) { width: 100%;  }
.rooms_body_cnt .col.amenities .fieldkey { margin-bottom: 15px; font-family: var(--serif); font-size: var(--size-big); }
.rooms_body_cnt .col.amenities .fieldvalue,
.bei_rooms_tpl .zcheckbox .fieldvalue { text-transform: uppercase; color: var(--color1); font-weight: var(--font-weight-medium); letter-spacing: var(--l-spacing); font-size: var(--size-mini); }
.rooms_body_cnt .col.amenities .fieldvalue:before,
.bei_rooms_tpl .zcheckbox .fieldvalue:before { margin-right: 5px; font-family: var(--font-icon); color: var(--color2); font-weight: var(--font-weight-normal); }
.rooms_body_cnt .col.amenities .fieldvalue.v0:before,
.bei_rooms_tpl .zcheckbox .fieldvalue.v0:before { content: '\e4a9'; } /* Materassi anallergici */
.rooms_body_cnt .col.amenities .fieldvalue.v1:before,
.bei_rooms_tpl .zcheckbox .fieldvalue.v1:before { content: '\e525'; } /* Cuscini */
.rooms_body_cnt .col.amenities .fieldvalue.v2:before,
.rooms_body_cnt .col.amenities .fieldvalue.v30:before,
.rooms_body_cnt .col.amenities .fieldvalue.v31:before,
.rooms_body_cnt .col.amenities .fieldvalue.v32:before,
.rooms_body_cnt .col.amenities .fieldvalue.v33:before,
.bei_rooms_tpl .zcheckbox .fieldvalue.v2:before,
.bei_rooms_tpl .zcheckbox .fieldvalue.v30:before,
.bei_rooms_tpl .zcheckbox .fieldvalue.v31:before,
.bei_rooms_tpl .zcheckbox .fieldvalue.v32:before,
.bei_rooms_tpl .zcheckbox .fieldvalue.v33:before  { content: '\f2cc'; } /* Doccia */
.rooms_body_cnt .col.amenities .fieldvalue.v3:before,
.bei_rooms_tpl .zcheckbox .fieldvalue.v3:before { content: '\f26c'; } /* TV */
.rooms_body_cnt .col.amenities .fieldvalue.v4:before,
.bei_rooms_tpl .zcheckbox .fieldvalue.v4:before { content: '\f1eb'; } /* Wifi */
.rooms_body_cnt .col.amenities .fieldvalue.v5:before,
.bei_rooms_tpl .zcheckbox .fieldvalue.v5:before { content: '\f561'; } /* Frigobar */
.rooms_body_cnt .col.amenities .fieldvalue.v6:before,
.bei_rooms_tpl .zcheckbox .fieldvalue.v6:before { content: '\f2f7'; } /* Sicurezza */
.rooms_body_cnt .col.amenities .fieldvalue.v7:before,
.bei_rooms_tpl .zcheckbox .fieldvalue.v7:before { content: '\e136'; } /* Armadio */
.rooms_body_cnt p { margin-bottom: 15px; }
.other_rooms_cnt { padding: 120px 60px; background-image: url('../images/bg/bg_rooms.jpg'); background-repeat: no-repeat; background-size: cover; position: relative;  }
.other_rooms_cnt .section_title .varsimple { color: var(--white); text-transform: inherit; font-size: var(--size-serif60); text-align: center; }
.other_rooms_cnt .section_title { margin-bottom: 60px; }
.other_rooms_cnt .slide-counter, .other_rooms_cnt .tns-controls button > div:before { color: var(--white);}
.other_rooms_cnt .tns-controls { bottom: 30px; }


/* Pagina offerta */
.offer_link { margin-top: 30px; display: flex; gap: 20px; align-items: center; flex-wrap: wrap; }

/* Carosello camere */
.showcase_rooms_tpl .carousel { display: block; }
.showcase_rooms_tpl .carousel .elem { margin: 0; }
.showcase_rooms_tpl .carousel .caption-alt { position: relative; background-color: var(--color3); padding: 20px; color: var(--color1); }
.showcase_rooms_tpl .carousel .title a { color: var(--color1); font-size: var(--size-serif35); }
.showcase_rooms_tpl .carousel .caption-cnt { flex-direction: column; }
.showcase_rooms_tpl .carousel img { height: auto; }
.showcase_rooms_tpl .carousel :where(.caption, .caption-alt) { width: 100%; }
.showcase_rooms_tpl .carousel .slick-list .slick-track { padding-bottom: 60px; }
.showcase_rooms_tpl .slick-counter { color: var(--white); }

/* Submenu */
.section_submenu { padding: 20px; min-width: 420px; position: sticky; top: 120px; background-color: var(--white_30); border: 1px solid var(--color1_10); }
.section_submenu .varsimple { margin-bottom: 30px; font-family: var(--serif); font-size: var(--size-serif30); color: var(--color1);}
.submenu #tree li > a { text-decoration: none; text-transform: uppercase; font-size: var(--size-mini); font-weight: var(--font-weight-medium); color: var(--color1); }
.submenu #tree li > a:hover { color: var(--color2); }
.submenu #tree li { margin-bottom: 10px; }
.submenu #tree li:last-of-type { margin-bottom: 0; }
.submenu #tree li.active { color: var(--color2); text-transform: uppercase; font-size: var(--size-mini); font-weight: var(--font-weight-medium); }
.submenu #tree li ul { list-style-type: none; }
.submenu #tree li.has_list > a { display: none; }
body.en .section_submenu .varsimple { font-size: var(--size-average); }

/* Form */
.form-cnt { padding: 20px; clear: both; background-color: var(--white_30); border: 1px solid var(--color1_10);}
.form-cnt .form_element_title { font-size: var(--size-micro); text-transform: uppercase; font-weight: var(--font-weight-medium); color: var(--color1); }
form input[type="submit"] { background-color: var(--color1); padding: 20px 35px; color: var(--white); font-size: var(--size-mini);font-weight: var(--font-weight-bold); letter-spacing: var(--l-spacing); } 
form .form_select { padding: 13px 10px; background-color: var(--white); font-size: var(--size-mini); text-transform: uppercase; }
form .form_select .elements_list { padding: 0; }
form .form_select .elements_list .option { padding: 8px; transition: .4s all; background-color: var(--white); font-size: var(--size-mini); text-transform: uppercase; }
form .form_select .elements_list .option:hover { background-color: var(--color1); color: var(--white); }
.form-cnt form .form :where(input, select, textarea, .form_select) { border-bottom: 2px solid var(--color1); font-size: var(--size-mini);}
.form-cnt form .form .form_select.autocomplete_select { padding: 0; border: unset; }
.intl-tel-input.allow-dropdown.separate-dial-code .selected-dial-code { font-size: var(--size-mini); }
form #showprivacy { font-size: var(--size-mini); }
form .form, form .form.textarea { padding: 0 5px 20px 5px; }
.form-cnt form .caption-fields { margin: 0 -5px; }
.form-cnt form .caption-fields .field.checkbox_wrap { display: flex; flex-wrap: wrap; position: relative; z-index: 1; }
.form-cnt .field.checkbox_wrap .form_element_title { width: 100%; }
.form-cnt form .caption-fields .field.checkbox_wrap label { margin-right: 20px; padding: 0 10px 0 0; display: flex; align-items: center; background-color: var(--white); border-top: 1px solid #dedede; border-bottom: 2px solid var(--color1);}
.form-cnt form .caption-fields .field.checkbox_wrap label input { padding: 13px 0 13px 13px; border: unset; }
.form-cnt form .caption-fields .field.checkbox_wrap label:first-of-type:before { content: ''; position: absolute; z-index: -1; bottom: 20px; left: 20px; width: calc(100% - 25px); height: 44px; background-color: var(--white); border: 1px solid #dedede; border-bottom: 2px solid var(--color1);}
form input[type="file"] { background-color: var(--white); height: 45px; }
.iti .iti__selected-dial-code { font-size: var(--size-mini); }

/* Allegati */
.documents { margin-top: 60px; padding: 20px; background-color: var(--color1_10); }
.document_size { display: none; }
.document a { text-decoration: none; }
.document a:before { margin-right: 5px; font-family: var(--font-icon); content: '\e053'; color: var(--color1); }

/* Landing */
#landing_offers { margin: 0 auto; text-align: center; max-width: var(--max-width); line-height: 1.3; }
#landing_offers .section_title a { padding-bottom: 5px; margin-bottom: 15px; display: inline-block; font-family: var(--serif); color: var(--color1); text-decoration: none; text-transform: uppercase; font-size: var(--size-serif30);  }
#landing_offers .divider { margin-bottom: 15px; }
#landing_offers .offers_cnt { display: flex; flex-wrap: wrap; gap: 30px; align-items: center; justify-content: center; text-align: left; }
#landing_offers .offers_cnt .col { width: calc(50% - 15px); }
#landing_offers .offers_cnt .col img { width: 100%; }
#landing_offers .btn { margin-top: 30px; }

/* Specifico per Pagina image fullwidth o DOve siamo */
:is(.body_image_fullwidth, .body_dove_siamo) img.left { width: 100%; float: none!important; margin: 0 0 15px 0!important; }

/* Specifico per pagina Dove siamo */
.content_map { margin-bottom: 40px; }
.content_map .varsimple { padding: 20px 35px; margin-bottom: 15px; color: var(--white); position: relative;  }
.content_map .varsimple:before {top:16px; left: 45px; position: absolute; transition: .4s all; font-size: 20px; font-family: var(--font-icon); color: var(--white); font-weight: var(--font-weight-light); content: '\f3c5';}
.content_map.fired .varsimple:before { transform: rotate(-180deg); }
.content_map .varscript { padding: 10px; background-color: var(--white); border: 1px solid var(--color2); display: none; }
.content_map.fired .varscript { display: block; }
body.en .content_map .varsimple:before { left: 35px; }
body.ru .content_map .varsimple:before { left: 12px; }
body.pl .content_map .varsimple:before { left: 60px; }

/* BEI */
.services_label.data_label, .services_label.price_label, .services_label.qty_label { display: none; }
.template_calendar .data_loading { display: none!important; }
.data_loading { position: fixed; padding: 25%; top: 0; left: 0; right: 0; bottom: 0; height: 100%; width: 100%; z-index: -1; background-color: rgba(0, 0, 0, 0.8); transition: .3s; z-index: 9999999; text-align: center; }
.dot_loading { margin: 0 auto; position: relative; width: 20px; height: 20px; border-radius: 100px; background-color: var(--color2); color: var(--color2); animation: dot_loading 1s infinite linear alternate; animation-delay: 0.5s; }
.dot_loading:before, .dot_loading::after { content: ""; display: inline-block; position: absolute; top: 0; }
.dot_loading:before { left: -35px; width: 20px; height: 20px; border-radius: 100px; background-color: var(--color2); color: var(--color2); animation: dot_loading 1s infinite alternate; animation-delay: 0s; }
.dot_loading:after { left: 35px; width: 20px; height: 20px; border-radius: 100px; background-color: var(--color2); color: var(--color2); animation: dot_loading 1s infinite alternate; animation-delay: 1s; }
.template_detail_wrapper { display: flex; flex-direction: column; align-items: center; justify-content: center; opacity: 0; pointer-events: none; position: fixed; top: 0; left: 0; z-index: 99999; background-color: rgba(0, 0, 0, 0.75); width: 100%; height: 100%; }
.template_detail_wrapper.opened { opacity: 1; pointer-events: inherit; }
.bei_rooms_tpl .template_detail_wrapper .content_detail_wrapper { padding: 30px; max-width: 670px; background-color: var(--white); line-height: 1.3; border: 3px solid var(--color2); max-height: 100vh; overflow: auto; }
.bei_rooms_tpl .template_detail_wrapper .content_detail_wrapper::-webkit-scrollbar { width: 4px; }
.bei_rooms_tpl .template_detail_wrapper .content_detail_wrapper::-webkit-scrollbar-thumb { background-color: var(--color1);}

.step_content_wrapper > .template_detail_wrapper .content_detail_wrapper { max-width: 1440px; }
.step_content_wrapper > .template_detail_wrapper .slick-list { padding: 0 70px; }
.step_content_wrapper > .template_detail_wrapper .gallery .slick-list .slick-track { padding-bottom: 0; }
.step_content_wrapper > .template_detail_wrapper .row:has(.slick-slider) { padding-bottom: 0; }
.step_content_wrapper > .template_detail_wrapper button.slick-next { position: absolute; top: 50%; transform: translateY(-50%); right: 0; }
.step_content_wrapper > .template_detail_wrapper button.slick-prev { position: absolute; top: 50%; transform: translateY(-50%); left: 0; }
.step_content_wrapper > .template_detail_wrapper .gallery button.slick-next:before, .step_content_wrapper > .template_detail_wrapper .gallery button.slick-prev:before { color: var(--white); }
.step_content_wrapper > .template_detail_wrapper .close_detail { position: absolute; top: 30px; right: 30px; background-color: var(--color2); width: 35px; height: 35px; border-radius: 100%; cursor: pointer; color: var(--white); text-align: center; line-height: 35px; }
.step_content_wrapper > .template_detail_wrapper .close_detail:before { font-family: var(--font-icon); content: '\f00d'; }
.bei_rooms_tpl .template_detail_wrapper .caption-cnt { flex-direction: column; }
.bei_rooms_tpl .template_detail_wrapper :where(.caption, .caption-alt) { width: 100%; }
.bei_rooms_tpl .template_detail_wrapper .caption-add { display: none; }
.bei_rooms_tpl .template_detail_wrapper .close_detail { margin-left: auto; background-color: var(--color1); width: 32px; height: 32px; border-radius: 100%; cursor: pointer; text-align: center; line-height: 32px; }
.bei_rooms_tpl .template_detail_wrapper .close_detail:before { font-family: var(--font-icon); content: '\f00d'; color: var(--white); }
.bei_rooms_tpl .template_detail_wrapper .ztextarea { margin-bottom: 15px; padding-bottom: 15px; border-bottom: 1px solid var(--light-grey); }
.bei_rooms_tpl .template_detail_wrapper .zlabel.g8 .fieldkey { color: var(--color1); text-transform: uppercase; font-weight: var(--font-weight-medium); font-size: var(--size-mini); }
.bei_rooms_tpl .template_detail_wrapper p { margin-bottom: 15px; }
.bei_rooms_tpl .template_detail_wrapper:not(.subcontents .template_detail_wrapper) .template_open_detail { width: 30px; height: 30px; background: red; }
.template_detail_wrapper .gallery .elem .caption-cnt img { min-width: unset; }
.bei_rooms_tpl .rate_detail .ztextarea.rate_details .fieldkey, .bei_rooms_tpl .rate_detail .ztextarea.rate_details:before { display: none; }
.bei_rooms_tpl .rate_detail .ztextarea.rate_details .fieldvalue { text-transform: initial; color: var(--grey)!important; font-size: var(--size-base)!important; font-weight: var(--font-weight-normal)!important; font-family: var(--sans)!important; }
.bei_rooms_tpl .rate_detail .ztextarea.rate_details .fieldvalue ul { list-style-type: disc; font-family: var(--sans)!important; color: var(--grey)!important; font-size: var(--size-base)!important; font-weight: var(--font-weight-normal)!important; }
.canc_costs { margin: 15px 0; padding-bottom: 15px; border-bottom: 1px solid var(--light-grey); }
.canc_costs_title, .payment_policy_label { color: var(--color1); text-transform: uppercase; font-weight: var(--font-weight-medium); font-size: var(--size-mini); }
.prepaid_details .prepaid_detail { display: flex; gap: 5px; }
.step_footer { padding: 15px; display: flex; align-items: center; justify-content: space-between; gap: 30px; position: fixed; bottom: -100px; left: 0; width: 100%; z-index: 998; background: var(--white); box-shadow: 0px -3px 4px 0px rgba(0, 0, 0, 0.10); transition: .8s all cubic-bezier(.215, .61, .355, 1)}
.step_footer #varscript_secure { display: inline-block; }
.step_footer.fired { bottom: 0; }
.step_footer .varscript { order: 0; }
.step_footer .totals { margin: 0 0 0 auto; display: flex; align-items: center; gap: 20px; order: 2; }
.total_upfront_title, .total_price_title { text-transform: uppercase; font-size: var(--size-micro); color: var(--color1); font-weight: var(--font-weight-medium);}
.total_amount { color: var(--color1); font-weight: var(--font-weight-medium); font-size: var(--size-medium); }
    
.upfront_amount { font-weight: var(--font-weight-medium); color: var(--color1); font-size: var(--size-medium); }
.step_footer .pf_step_button { padding: 20px 35px; background-color: var(--color1); color: var(--white); cursor: pointer; font-weight: var(--font-weight-bold); font-size: var(--size-mini); text-transform: uppercase; letter-spacing: var(--l-spacing); order: 3; }
.step_footer .step_footer_wrap { order: 1; margin: 0; width: 100%; display: flex; align-items: center; gap: 20px; order: 2; }
.step_footer .step_footer_total_wrap { margin-left: auto; }
.step_footer #cart_detail {  position: relative;}
.step_footer .cart_btn { display: inline-flex; align-items: center; gap: 5px; font-size: var(--size-nano); font-weight: var(--font-weight-medium); color: var(--color1); text-transform: uppercase; cursor: pointer; }
.step_footer .cart_btn:before { font-family: var(--font-icon); content: '\f05a'; color: var(--color2); }
.step_footer .cart_detail_wrapper { position: absolute; }
.step_footer .cart_detail_wrapper #cart_detail { position: absolute; z-index: 2; bottom: 30px;  width: 470px; background-color: var(--white); box-shadow: 0px 0 4px 0px rgba(0, 0, 0, 0.10); display: none;}
.step_footer .cart_detail_wrapper #cart_detail.fired {  display: block;}
.step_footer .cart_detail_wrapper .varsimple { padding: 10px 15px; background-color: var(--color1); color: var(--white); text-transform: uppercase; font-size: var(--size-nano); font-weight: var(--font-weight-medium); }
.step_footer .cart_detail_wrapper .close_btn { position: absolute; top: 0; right: 0; z-index: 2; color: var(--white); width: 34px; height: 34px; line-height: 34px; text-align: center; cursor: pointer; }
.step_footer .cart_detail_wrapper .close_btn:before { font-family: var(--font-icon); content: '\f00d'; }
.step_footer #cart_summary_wrapper { padding: 15px; }
.step_footer .cart_detail_wrapper .caption-cnt { align-items: center; justify-content: space-between; gap: 10px; }
.step_footer .cart_detail_wrapper .caption { display: flex; align-items: flex-start; gap: 5px; flex-wrap: wrap; }
.step_footer .cart_detail_wrapper .caption-add { display: none; }
.step_footer .cart_detail_wrapper .caption:not(.subcontents .title) { width: 100%; }
.step_footer .cart_detail_wrapper .ztemplate .title:not(.subcontents .title) { margin: 0 0 15px; padding: 0 0 5px 0; color: var(--color2); font-size: var(--size-base); font-weight: var(--font-weight-medium); border-bottom: 1px solid var(--grey); width: 100%; }
.step_footer .cart_detail_wrapper .ztemplate .subcontents .title { margin: 0; width: 100%; padding: 0; text-transform: uppercase; color: var(--color1); font-size: var(--size-nano); font-weight: var(--font-weight-medium); }
.step_footer .cart_detail_wrapper .zlabelprice .fieldkey { display: none; }
.step_footer .cart_detail_wrapper .zlabelprice .fieldvalue { color: var(--color1); font-weight: var(--font-weight-medium); font-size: var(--size-nano); }
.step_footer .cart_detail_wrapper .box { display: flex; flex-direction: column; gap: 15px; }
.step_footer .cart_detail_wrapper .rate_arrangement { text-transform: uppercase; font-weight: var(--font-weight-medium); color: var(--color2); font-size: var(--size-micro); }
.step_footer .cart_detail_wrapper .ztemplate .service_title .title:not(.subcontents .title) { margin: 0; width: 60%; padding: 0; text-transform: uppercase; color: var(--color1); font-size: var(--size-nano); font-weight: var(--font-weight-medium); border-bottom: unset; cursor: pointer; }
.step_footer .cart_detail_wrapper .ztemplate .service_title .title:not(.subcontents .title):before { margin-right: 5px; font-family: var(--font-icon); content: '\f0fe'; color: var(--color2); font-weight: var(--font-weight-light); font-size: var(--size-nano); }
.step_footer .cart_detail_wrapper .ztemplate .service_title .elem.fired .title:not(.subcontents .title):before { content: '\f146'; }

.step_footer .cart_detail_wrapper .ztemplate .service_title .price { margin-left: auto; color: var(--color1); font-weight: var(--font-weight-medium); font-size: var(--size-nano);}
.step_footer .cart_detail_wrapper .ztemplate .service_title .price:before { content: '\20AC'; margin-right: 3px;}   
.service_price_qty_order .fieldvalue { display: flex; gap: 5px; width: 100%; font-size: var(--size-mini); }
.service_price_qty_order { width: 100%; display: flex; flex-direction: column; gap: 5px; }
.service_price_qty_order .fieldvalue .name { order: 0; }
.service_price_qty_order .fieldvalue .date { order: 1; }
.service_price_qty_order .fieldvalue .quantity { order: 2; margin-left: auto; color: var(--color1); }
.service_price_qty_order .fieldvalue .quantity:after { margin-left: 3px; font-family: var(--font-icon); font-size: calc(var(--size-base) * .75); content: "\f00d";}
.service_price_qty_order .fieldvalue .price { order: 3; margin-left: 0!important;}

.step_footer .cart_detail_wrapper .box.service_title .elem { margin-top: 10px; padding-top: 10px; border-top: 1px solid var(--color1_10); }
.step_footer .cart_detail_wrapper .box.service_title .elem .subcontents { display: none; }
.step_footer .cart_detail_wrapper .box.service_title .elem.fired .subcontents { display: block; }
.step_footer .cart_detail_wrapper .box.service_title .caption { display: flex; }
.step_footer .dates { margin-bottom: 15px; gap: 10px; display: flex; align-items: center; color: var(--color1); font-weight: var(--font-weight-medium); text-transform: uppercase; font-size: var(--size-nano); }
.step_footer .dates .value:first-of-type:before { margin-right: 5px; font-family: var(--font-icon); content: '\e0d6'; color: var(--color2); font-size: var(--size-nano); font-weight: var(--font-weight-light); }
.step_footer .dates .value:first-of-type:after { margin-left: 10px; font-family: var(--font-icon); font-size: var(--size-micro); font-weight: var(--font-weight-light); content: '\f054'; }
.total_cost_wrap #varscript_secure { display: inline-block; }
.pf_no_results {margin: 0 auto 40px; padding: 90px 20px 20px 20px; background-color: var(--white); max-width: 1024px; line-height: 1.4; text-align: center; position: relative; }
.pf_no_results:before { font-family: var(--font-icon); content: '\f05a'; font-size: var(--size-icon); color: var(--color2); font-weight: var(--font-weight-extra-light); position: absolute; z-index: 1; left: 50%; top: 20px; transform: translateX(-50%); }
.service_ex_id { display: none; }

body.no_results .form-cnt { padding: 0; border: unset; background-color: transparent; }

/* Order */
#page.order .bei_rooms_tpl .service_title > .elem .subcontents .elem .caption { width: 100%; }
.service_price_qty_order .price { margin-left: auto; color: var(--color1); font-weight: var(--font-weight-medium); font-size: var(--size-nano);}
.service_price_qty_order .price:before { content: '\20AC'; margin-right: 3px;}
#page.order .bei_rooms_tpl .box.service_title .price { margin-left: auto; color: var(--color1); font-weight: var(--font-weight-medium); font-size: var(--size-nano);}
#page.order .bei_rooms_tpl .box.service_title .price:before { content: '\20AC'; margin-right: 3px; }
.city_tax { padding: 15px; margin-top: 20px; background-color: var(--white); text-align: center; font-size: var(--size-mini); font-weight: var(--font-weight-medium); color: var(--color1); }

/* Payment */
.syspay_payment input { margin-top: 30px; display: inline-block; background-color: var(--color1); padding: 20px 35px; cursor: pointer; color: var(--white); width: 100%; text-transform: uppercase; font-weight: var(--font-weight-bold); font-size: var(--size-mini);}

/* Thankyou */
.delete_reservation .fieldvalue { display: none;  }
.delete_reservation .fieldkey { margin-top: 10px; padding: 10px 25px; display: inline-block; cursor: pointer; background-color: var(--color1); font-weight: var(--font-weight-medium); font-size: var(--size-mini); color: var(--white); text-transform: uppercase;}
.delete_reservation .fieldkey:before { margin-right: 4px; font-family: var(--font-icon); color: var(--white); font-size: var(--size-mini); font-weight: var(--font-weight-light); content: '\e2b4'; }

/* */
.showcase #cnt_title .normal_text {font-family: var(--sans); color: var(--grey); font-size: var(--size-base); margin-top: 30px; line-height: 1.4; text-align: center; }
.showcase #cnt_title .normal_text p { margin-bottom: 15px; text-align: center!important; }
    

/* RWD */

@media (max-width: 1680px){
    header #booking_open .booking_cnt .top-cnt { padding: 80px 20px 20px; }
    #booking_open .booking_cnt form .caption-fields .field.date { padding: 0 20px 20px; }
    #booking_open .booking_cnt form .caption-fields .field { padding: 0 20px 20px; }
    header #booking_open .booking_cnt .sub-cnt input[type="submit"] { margin: 0 20px 15px; }
    header #booking_open .booking_cnt .fc-calendar .fc-row > div { padding: 10px; height: 50px; }
}

@media (max-width: 1560px){
    :is(.showcase_rooms_tpl, .rooms_details) :where(.zinput, .znumber) { margin-right: 5px; padding-right: 5px; }
    :is(.showcase_rooms_tpl, .rooms_details) :where(.zinput, .znumber):after { margin-left: 5px; }
    .other_rooms_cnt { padding: 120px 0; }

}

@media (max-width: 1440px){
    :root {
        --size-serif100: 80px;
        --size-serif80: 60px;
        --size-serif70: 55px;
        --size-serif60: 50px;
        --size-big: 35px;
        --size-serif35: 30px;
        --size-icon: 30px;
        --size-serif30: 25px;
    }
    #home .top .vareditor,
    .home_sections .vareditor { line-height: 1.2; }
    .home_sections_tpl .icon_box { bottom: 30px; }
    header .menu_cnt .menu_sx .first_menu .nav a:after { bottom: 3px; }
    .home_sections_tpl .icon_box a { padding: 10px 15px; font-size: var(--size-nano); }
    #home .top .vareditor, .home_general_view_tpl .caption, .home_sections .vareditor { font-size: var(--size-serif35); }
    #bio_arch .varlink a,
    .booking_btn .varsimple,
    .zsimplebutton a, .zlink a, .btn :where(a, .varsimple) { font-size: var(--size-micro); }
    .tns-controls { bottom: -7px; }
    .other_rooms_cnt .tns-controls { bottom: 34px; }
    #gallery .slide-counter { bottom: 5px; }

}

@media (max-width: 1320px){
    :root {
        --size-icon: 20px;
    }
    .home_sections_tpl .icon_box { gap: 10px; padding: 0 40px; }
    .home_sections_tpl .icon_box a { font-size: var(--size-micro); gap: 10px; }
    button.slick-next, button.slick-prev { bottom: 10px; }
    .home_general_view_tpl .caption .ztextarea.g3, #bio_arch { font-size: var(--size-base); }
    .tns-controls { bottom: -1px; }
    .other_rooms_cnt .tns-controls { bottom: 39px; }
    #gallery .slide-counter { bottom: 1px; }

    
}

@media (max-width: 1280px){
    header .menu_cnt { margin-top: 80px; }
    header .menu_cnt .menu_sx .first_menu .nav a { font-size: var(--size-serif60); }
}

@media (max-width: 1200px){
    :root {
        --size-serif100: 60px;
        --size-medium: 16px;
    }
    #hero .logo img { max-width: 150px; }
    .home_sections_tpl .box-1 .caption-alt { padding: 60px 0 60px 60px; }
    .home_sections_tpl .box-1 .title:after { left: 50px; width: calc(100% - 50px); }
    header .menu_cnt { margin-top: 0; }
    header .menu_cnt .menu_sx .first_menu .nav a { font-size: var(--size-big); }
    header .menu_cnt .menu_sx .first_menu .nav a:after { width: var(--size-big); height: var(--size-big); font-size: var(--size-nano); bottom: 1px;}
    header .menu_cnt .menu_sx .second_menu .nav { gap: 20px; }
    header .menu_cnt .menu_dx img { max-width: 190px; }
    .section_partners { flex-wrap: wrap; }
    header #booking_open .booking_cnt #vareditor_booking_seasons:before { display: none; }
    header #booking_open .booking_cnt .top-cnt { padding: 0; }
    header #booking_open .booking_cnt #vareditor_booking_seasons { padding: 20px 10px 20px 85px; }
    header #booking_open .booking_cnt { width: 480px; }
    header #booking_open .booking_cnt .fc-calendar .fc-head { font-size: var(--size-mini); }
    header #booking_open .booking_cnt .sub-cnt .form_element_title { font-size: var(--size-base); }
    body.body_offerta :where(img.left, img.right) { margin: 0 0 20px 0!important; width: 100%; float: none!important; }

}

@media (max-width: 1140px){
    .offers_tpl .title { font-size: 100%; }
    .offers_tpl .title a { font-size: 1.2rem; line-height: 1; }
    .offers_tpl .caption-alt { font-size: .9rem; }
}

@media (max-width: 1024px){
    .rooms_body_cnt { margin: 30px auto; gap: 30px; flex-wrap: wrap; }
    .rooms_body_cnt .col { padding: 0; width: 100%;}
    .rooms_body_cnt .col.amenities { padding: 15px; }
}

@media (max-width: 1023px) { 
    .section_submenu { min-width: unset; }
    .step_footer .varscript { display: none; }
 }

@media (max-width: 920px){
    
    .home_sections_tpl .box-1 .title { margin-bottom: 20px; gap: 15px; }
    .home_sections_tpl .box-1 .caption-alt { padding: 30px 0 30px 30px; }
    .home_sections_tpl .box-1 .title:after { left: 30px; width: calc(100% - 30px); }
    #home .video_cnt, #home #videoyt { height: calc(100vh - 153px - 40px); }
    #home .top .vareditor, .home_general_view_tpl .caption, .home_sections .vareditor,
    .home_sections_tpl .box-1.fullwidth .ztextarea { font-size: var(--size-serif30); }
    .footer_cnt { padding: 30px 10px; flex-direction: column; text-align: center; }
    .footer_cnt .col.logo { display: none; }
    .footer_cnt .col { width: 100%; }
    footer .col.first .vareditor:last-of-type:before { margin: 0 auto; right: 0; }
    .footer_cnt .col.last { justify-content: center; }
    .footer_menu { margin-top: 30px; flex-direction: row; flex-wrap: wrap; }
    .footer_menu a { font-size: var(--size-micro); font-weight: var(--font-weight-medium); font-family: var(--sans); text-transform: uppercase; }
    .footer_bottom_cnt { flex-wrap: wrap; gap: 10px; }
    #offers_section { margin-top: 60px; padding: 0 10px; }
    #offers_section .section_title:after { width: 100%; }
    #offers_section .section_title { gap: 0; }
    .offers_tpl .elem { margin: 0; }
    
    
}

@media (max-width: 767px){
    :root {
        --size-serif80: 35px;
    }
    #home .top .vareditor { padding: 50px 10px; }
    .other_rooms_cnt { padding: 60px 0 90px; }
    .home_sections_tpl .icon_box { display: none; }
    .home_sections_tpl .box-1 img:nth-of-type(1) { width: 100%; }
    .home_sections_tpl .box-1 img:nth-of-type(2) {  }
    .home_sections_tpl.ztemplate .elem .caption-cnt img:nth-of-type(2){position: absolute; z-index: 1; top: 40px; left: 40px; width: calc(100% - 80px); height: calc(100% - 80px); }
    .home_sections_tpl .box-1 .caption:before { z-index: 2; left: 0; width: 100%; }
    .home_sections_tpl .box-1 .caption-alt, .home_sections_tpl .box-1 .elem.odd .caption-alt { padding: 20px; left: 50%; bottom: 40px; transform: translateX(-50%); width: calc(100% - 80px); text-align: center;}
    .home_sections_tpl .box-1 .title:after { margin-left: 0; width: 100%; }
    .home_general_view_tpl .caption-alt img:nth-of-type(3) { display: none; }
    .home_general_view_tpl .caption-alt img:nth-of-type(1) { top: 0; }
    .home_general_view_tpl .caption-cnt { gap: 50px; }
    .home_general_view_tpl .caption-alt { gap: 10px; }
    #bio_arch { padding: 5px 0; width: 100%; max-width: unset; text-align: center; }
    #bio_arch .varlink a { display: block; text-align: center; }
    #home .video_section { padding: 0 10px; }
    #home .video_cnt, #home #videoyt { height: 260px; }
    #home .video_cnt { margin-top: 0; }
    #home .video_section .bottom { justify-content: center; }
    #home .video_section .bottom .ztemplate { display: none; }
    #home .video_section .bottom .varlink a { right: 0; }
    .home_general_view_tpl { padding: 40px 10px; }
    .home_sections_tpl { padding: 0 10px; }
    .home_sections_tpl .box-1 .elem {     margin-bottom: 55px; padding-bottom: 30px; }
    .footer_bottom .col { width: 100%; text-align: center; justify-content: center; gap: 15px; }
    .booking_btn .varsimple { padding: 10px; }
    .header_map.fired iframe { top: 60px; }
    .home_sections_tpl.ztemplate .elem .caption-cnt img { height: 60vh; }
    form .caption-fields .field { width: 100%; }
    img.left, img.right { float: none!important; width: 100%; margin: 0 0 15px!important; }
    .other_rooms_cnt { padding: 60px 15px; }
    .other_rooms_cnt .showcase_rooms_tpl img { min-height: unset; }
    .offer_link > div { width: 100%; }
    header #booking_open .booking_cnt { width: 100%; }
    header #booking_open .booking_cnt .b_mask .guests_wrapper { top: 0; left: 0; transform: unset; height: 100%; }
    header #booking_open .booking_cnt .fc-calendar .fc-row > div { height: 40px; }
    .step_footer .cart_btn .varsimple { font-size: 0; }
    .step_footer .totals { margin: 0; }
    .step_footer { justify-content: flex-start; }
    .step_footer .pf_step_button { margin-left: auto; }
    .step_footer .cart_detail_wrapper { left: 20px; width: calc(100vw - 50px); }
    #content_body { padding: 0 10px; }
    #menu_open .menu_dx { display: none; }
    #menu_open .menu_sx { width: 100%; }
    header .menu_cnt .menu_sx .first_menu .nav a { justify-content: center; }
    header .menu_cnt .menu_sx .first_menu .nav a:after { display: none; }
    header .menu_cnt .menu_sx .first_menu .nav a:hover { margin-left: 0; }
    header .menu_cnt .menu_sx .second_menu .nav { justify-content: center; gap: 10px; }
    .total_cost_wrap .varscript { display: none; }
    #page.order .col .selected_date { flex-wrap: wrap; }
    .ecommerce :where(.selected_date, .selected_date .dates, .selected_date .guests) { font-size: var(--size-mini); }
    .bei_rooms_tpl .template_detail_wrapper .content_detail_wrapper { padding: 10px; }
    #total_cost { margin-left: auto; padding-right: 20px; }
    #page.order .bei_rooms_tpl .room .subcontents .elem:not(.rate_detail .elem) .caption-cnt { flex-wrap: wrap; }
    .bei_rooms_tpl .zcheckbox { padding: 10px; }
    .other_rooms_cnt .tns-controls { bottom: 20px; }
    .showcase_rooms_tpl .carousel .caption-alt { padding: 13px; }
    .other_rooms_cnt .section_title .varsimple { font-size: var(--size-serif80); }
    .other_rooms_cnt .section_title { margin-bottom: 40px; }
    .gallery .tns-controls { bottom: 30px; }
}

/* Fix altezza schermo */
@media(max-height: 960px){
    :root {
        --size-serif70: 55px;
        --size-serif80: 35px;
    }
    header .menu_cnt { margin-top: 80px; }
    header .menu_cnt .menu_sx .first_menu .nav a:after { bottom: 3px; }
}

@media(max-height: 820px){
    :root {
        --size-serif70: 55px;
        --size-serif80: 35px;
        --size-big: 35px;
    }
    header .menu_cnt .menu_sx .first_menu .nav a { font-size: var(--size-big); }
    header .menu_cnt .menu_sx .first_menu .nav a:after { width: var(--size-big); height: var(--size-big); font-size: var(--size-nano); }
}

/* Smartphone */
.smartphone .home_sections_tpl .box-1.fullwidth .caption-alt { padding: 100px 40px; }
body.noslide.smartphone:where(.body_ecommerce_step, .body_ecommerce_order, .body_ecommerce_payment) { padding-top: 127px; }
.smartphone .section_partners { align-items: center; flex-wrap: nowrap; gap: 0; padding: 20px 30px; }
.smartphone .section_partners .partner { text-align: center; }
.smartphone .rooms_body_cnt .col.amenities .fieldvalue, .smartphone .bei_rooms_tpl .zcheckbox .fieldvalue { letter-spacing: unset; }
.smartphone .bei_rooms_tpl .bei_summary_fld { line-height: 1.2; }
.smartphone .ecommerce .smart_search_sum .selected_date { padding: 20px 10px 0; flex-direction: column; justify-content: flex-start; }
.smartphone .ecommerce .selected_date .varsimple { width: 100%; }
.smart_search_wrap { padding-bottom: 60px; overflow: auto; height: 100%; opacity: 0; transition: .8s all cubic-bezier(.215, .61, .355, 1);}
.smart_search_sum.fired .smart_search_wrap { opacity: 1; }
.smart_search_sum { position: fixed; top: 60px; left: 0; height: 31px; overflow: hidden; z-index: 9; width: 100%; transition: .8s all cubic-bezier(.215, .61, .355, 1);}
.smart_search_sum .selected_date { background-color: var(--white); height: auto; position: relative; top: -100vh; transition: .8s all cubic-bezier(.215, .61, .355, 1); z-index: 1;}
.smart_search_sum .my_searh_btn { padding: 10px; position: relative; z-index: 2; background-color: var(--color1); color: var(--white); text-align: left; display: flex; text-transform: uppercase; font-size: var(--size-micro); font-weight: var(--font-weight-medium); }
.smart_search_sum .my_searh_btn:before { margin-right: 5px; font-family: var(--font-icon); content: '\e0d6'; }
.smart_search_sum .my_searh_btn:after { margin-left: auto; font-family: var(--font-icon); content: '\f078'; transition: .8s all cubic-bezier(.215, .61, .355, 1);}
.smart_search_sum.fired .my_searh_btn:after { transform: rotate(180deg); }
.smart_search_sum.fired .selected_date { top: 0;}
.smart_search_sum.fired { background-color: var(--white); height: calc(100vh - 60px); }
.smartphone .bei_rooms_tpl :where(.zinput, .znumber) { margin-right: 5px; padding-right: 5px; }
.smartphone #cart_summary_wrapper { padding: 10px; }
.smartphone #cart_summary_wrapper .title,
.smartphone #page.order .bei_rooms_tpl .room .title { text-align: left; color: var(--color2); font-size: var(--size-icon); font-weight: var(--font-weight-medium);}
.smartphone #cart_summary_wrapper .subcontents .title,
.smartphone #page.order .smart_search_sum .bei_rooms_tpl .room .subcontents .title,
.smartphone #page.order .bei_rooms_tpl .room .subcontents .title:not(.rate_detail .title) { margin-bottom: 0; text-transform: uppercase; color: var(--color1); font-size: var(--size-nano); font-weight: var(--font-weight-medium); }

.smartphone #cart_summary_wrapper .box.service_title .caption { display: flex; width: 100%; }
.smartphone #cart_summary_wrapper .service_title .title:not(.subcontents .title),
.smartphone .smart_search_sum .bei_rooms_tpl .service_title .title { text-align: left; margin: 0; width: 60%; padding: 0; text-transform: uppercase; color: var(--color1); font-size: var(--size-nano); font-weight: var(--font-weight-medium); border-bottom: unset; cursor: pointer; }
.smartphone #cart_summary_wrapper .service_title .title:not(.subcontents .title):before,
.smartphone .smart_search_sum .service_title .title:not(.subcontents .title):before { margin-right: 5px; font-family: var(--font-icon); content: '\f0fe'; color: var(--color2); font-weight: var(--font-weight-light); font-size: var(--size-nano); }
.smartphone #cart_summary_wrapper .service_title .elem.fired .title:not(.subcontents .title):before { content: '\f146'; }
.smartphone #cart_summary_wrapper .service_title .price { margin-left: auto; color: var(--color1); font-weight: var(--font-weight-medium); font-size: var(--size-nano);}
.smartphone #cart_summary_wrapper .box.service_title .elem .subcontents { display: none; }
.smartphone #cart_summary_wrapper .box.service_title .elem.fired .subcontents,
.smartphone .smart_search_sum .service_title > .elem .subcontents { margin-top: 15px; display: block; }
.smartphone #page.order .bei_rooms_tpl .box.service_title { padding: 10px; border: 1px solid var(--light-grey); }

.smartphone #cart_summary_wrapper .subcontents .caption-cnt { flex-wrap: wrap; }
.smartphone #cart_summary_wrapper .subcontents .caption { display: flex; align-items: flex-start; flex-wrap: wrap; width: calc(100% - 90px); gap: 5px; text-align: left; }
.smartphone #cart_summary_wrapper .subcontents .caption .rate_arrangement { text-transform: uppercase; font-weight: var(--font-weight-medium); color: var(--color2); font-size: var(--size-micro);}
.smartphone #cart_summary_wrapper .subcontents .caption-alt { margin: 10px 0 0 auto; }
.smartphone #cart_summary_wrapper .subcontents .caption-alt .zlabelprice .fieldkey { display: none; }
.smartphone #cart_summary_wrapper .subcontents .caption-alt .zlabelprice { font-weight: var(--font-weight-medium); color: var(--color1); font-size: var(--size-medium);}
.smartphone #cart_summary_wrapper .subcontents .caption-add { display: none; }
.smartphone .step_footer { gap: 0; }
.smartphone #cart_summary_wrapper .elem:not(.subcontents .elem),
.smartphone #page.order .bei_rooms_tpl .room > .elem { margin-bottom: 5px; padding: 10px; border: 1px solid var(--light-grey); }
.smartphone #page.order #cnt_title .smart_search_sum .bei_rooms_tpl :where(.zinput, .znumber) { margin: 0; font-size: var(--size-micro); font-family: var(--sans); }
.smartphone .smart_search_sum .bei_rooms_tpl :where(.zinput, .znumber):after { margin: 0; }
.smartphone #page.order .smart_search_sum .bei_rooms_tpl .room > .elem > .caption-cnt { min-height: unset; margin-bottom: 0; }
.smartphone #page.order .smart_search_sum .bei_rooms_tpl:not(.subcontents .bei_rooms_tpl) { padding: 0 10px; }
.smartphone #page.order .smart_search_sum .bei_rooms_tpl .rate_details { margin-top: 5px; padding-top: 10px; width: 100%; border-top: 1px solid var(--alpha-black); } 
.smartphone #page.order .smart_search_sum .bei_rooms_tpl .bei_summary_fld { text-align: left; }
.smartphone .smart_search_sum .bei_rooms_tpl .zcheckbox .fieldvalue { text-align: left; }
.smartphone .bei_rooms_tpl .template_detail_wrapper :where(.caption, .caption-alt) { text-align: left; }
.smartphone .template_detail_wrapper { padding: 0 10px; }
.smartphone #page.order .col .title:not(.room .title) { font-size: var(--size-base); text-align: center; }
.smartphone .offers_tpl .title { font-size: 200%; }
.smartphone .offers_tpl .title a { font-size: var(--size-serif35); line-height: 1; }
.smartphone .offers_tpl .caption-alt { font-size: var(--size-base); }
.smartphone .home_sections_tpl.ztemplate .elem .caption-cnt img:nth-of-type(2) { top: 20px; left: 20px; width: calc(100% - 40px); height: calc(100% - 40px); }
body:is(.smartphone, .smartphone.scrolled, .smartphone.noslide) .wrap .col .logo img { /* max-height: 35px; */ max-height: 65px; }
.smartphone .zsimplebutton a, .smartphone .zlink a, .smartphone .btn :where(a, .varsimple) { padding: 15px 25px; }
.smartphone .footer_menu { justify-content: center; }
.smartphone .step_footer .step_footer_total_wrap { margin-left: 0; }
.smartphone .service_detail .caption:not(.subcontents .caption) { padding: 20px; }
.smartphone .service_detail .service_name { padding: 0 50px 0 0; }
.smartphone .step_content_wrapper > .template_detail_wrapper .close_detail { top: 10px; right: 10px; }
.smartphone .total_cost_wrap { padding: 0 15px; justify-content: center; }
.smartphone #total_cost { margin-left: 0; }
.smartphone .ecommerce.order :where(.selected_date, .smartphone .selected_date .dates, .selected_date .guests) { font-size: var(--size-mini); }
.smartphone #page.order #content_body .col { border: unset; padding: 0; }

.smartphone header #booking_open .booking_cnt .fc-calendar .fc-row > div { padding: 2px; }
.smartphone #booking_open .booking_cnt form .caption-fields .field.date { padding: 0 10px 10px; }
.smartphone .form-cnt form .caption-fields .field.checkbox_wrap.element_17 label:first-of-type:before { display: none; }
.smartphone .form-cnt form .caption-fields .field.checkbox_wrap.element_17 label { padding: 10px; margin: 0; width: 100%; border: 1px solid #dedede; border-radius: 5px; }
.smartphone .form-cnt form .caption-fields .field.checkbox_wrap.element_17 label input { padding: 0; }