a { -webkit-transition: all .6s; -moz-transition: all .6s; -o-transition: all .6s; transition: all .6s; }
.text_dyn a, .text a, .text_dyn a:hover, .text a:hover, .text_dyn a:focus, .text a:focus, .text_dyn a:visited, .text a:visited { color:#3498DB; }
.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; }
#slideshow img { min-width: 100%; }
.clear { clear: both; }
.overflow { overflow: hidden; }
.documents, .videos { margin: 20px auto 40px auto; }
.documents_title { font-family: "OpenSans-Light"; font-size: 24px; color: #085679; text-transform: uppercase; text-align: center; line-height: 1; letter-spacing: 0; position: relative; margin: 30px auto -10px auto; }
.documents .document { margin: 10px; padding: 0  10px 10px 10px; display: block; clear:both; border-bottom: 1px solid #D5D5D5; overflow:hidden; }
.documents .document a { }
.documents .document a:before { margin:0px 10px 0px 0px !important; float:left; }
.documents .document .document_size { float:right; color: #D5D5D5; }
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; }
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; }

/* fix form lavora con noi */
form#form_6 .caption-fields .field.select { width: 50%; }
form#form_6  .caption-fields .form.field.select .form_select .current_value { height: 42px}

h1, h2, h3, h4, h5, h6 { margin: 0px; }
* { outline: none; }


#page h2 { font-size: 22px; position: relative; color: #10667E; margin-bottom: 20px }
#page h3 { margin-bottom: 5px; font-weight: bold; margin-bottom: 10px }
#page h2:before { width: 50px; height: 1px; background-color: #D8D8D8; text-align: left; z-index: 2; position: absolute; left: 1px; bottom: -10px; content: '';  }
#page h2:before { display: none; }
#page h3:before { display: none; }

/* Da qui specifico */
body { padding-top: 115px; overflow-x: hidden; font-family: "OpenSans-Regular"; }
.slick-dots li {margin: 0 2px}
.text_dyn p { margin-bottom: 15px }


/* Infosplash */
#infosplash #infosplash_container .infosplash_wrapper {max-width: 690px;}
#infosplash .ztemplate .row .box .elem .caption-cnt .caption-alt { padding: 30px; border: 8px solid #3498DB }

/* 404 */
.not_found_page { margin: 0 auto; padding-bottom: 150px!important }
.not_found_page .not-found {margin-bottom: 30px}

/* header */

header { border-bottom: 5px solid #3498DB; bottom: inherit; }
header .header_cnt #left_cnt #menu_btn {margin: 0 30px}
header .header_cnt #right_cnt { padding-right: 30px }
header .header_cnt #right_cnt #contacts_cnt .mail a { font-size: 0; color: transparent }
header .header_cnt #right_cnt #contacts_cnt .whatsapp a { border-top-left-radius: 50px; border-bottom-left-radius: 50px; padding-left: 15px; }
header .header_cnt #right_cnt #contacts_cnt .phone {margin-right: 10px}
header .header_cnt #right_cnt #contacts_cnt .phone a:before {margin-right: 5px}
header .header_cnt #right_cnt .language_cnt #language_btn { border-radius: 50px; padding-left: 50px; position: relative; width: 100px; transition: .3s }
header .header_cnt #right_cnt .language_cnt #language_btn:before { position: absolute; left: 10px; top: 14px; transition: .4s }
header .header_cnt #right_cnt .language_cnt #language_btn:after { position: absolute; left: 22px; top: 1px; transition: .4s }
header .header_cnt #right_cnt .language_cnt #language ul { margin: 0 }
header .header_cnt #right_cnt .language_cnt {border-radius: 50px; }
#language .nav-pills > li { margin: 0 5px }
header .header_cnt #right_cnt .language_cnt #language_btn .value { width: 50px; border-top-right-radius: 50px; border-bottom-right-radius: 50px; padding-left: 10px; transition: .4s }
header .header_cnt #right_cnt .language_cnt #language { width: 0; position: relative; transition: .4s; overflow: hidden; }
header .header_cnt #right_cnt .language_cnt #language ul { position: absolute;z-index: 2 }
header .header_cnt #right_cnt .language_cnt #language.fired { width: 155px }
header .header_cnt #right_cnt .language_cnt #language_btn.fired {  width: 50px; background: #3398db; }
header .header_cnt #right_cnt .language_cnt #language_btn.fired .value { opacity: 0 }
header .header_cnt #right_cnt .language_cnt #language_btn.fired:before { opacity: 0 }
header .header_cnt #right_cnt .language_cnt #language_btn.fired:after { font-size: 17px; left: 18px }
header .header_cnt #right_cnt .language_cnt #language a { color: transparent; transition: .2s }
header .header_cnt #right_cnt .language_cnt #language.fired a { color: #fff }
.phone_wrap { display: flex; gap: 10px; align-items: center; }

#cntlogo img { width: 100%; max-width: 320px;}

/* booking btn */
header .header_cnt #left_cnt #booking_btn { opacity: 0; z-index: -1; transition: .3s; }
header.scrolled .header_cnt #left_cnt #booking_btn {opacity: 1; z-index: 1}
header .header_cnt #left_cnt #booking_btn {padding: 10px 15px; overflow: hidden;  height: 40px;}
header .header_cnt #left_cnt #booking_btn #varsimple_booking_btn { position: relative; top: 0; opacity: 1; transition: .2s }
header .header_cnt #left_cnt #booking_btn #varsimple_close_btn { position: relative; top: 100%; opacity: 0; transition: .2s }
header .header_cnt #left_cnt #booking_btn.fired #varsimple_booking_btn { top: -100%; opacity: 0 }
header .header_cnt #left_cnt #booking_btn.fired #varsimple_close_btn { top: -15px; opacity: 1 }

/* Booking */
.section_booking { bottom: 0 }
.section_booking.scrolled { position: fixed; top: 0; bottom: inherit; opacity: 0; z-index: -1; transition: unset; }
.section_booking.fired { top: 143px; opacity: 1; z-index: 999; display: flex; width: 100% }
.section_booking.fired .booking_cnt { margin: 0 auto }
.section_booking .booking_cnt .booking form .caption-fields .form.field.date .date_from_html > div { padding: 0; text-transform: initial; margin: 0 3px }
.section_booking .booking_cnt .booking form .caption-fields .form.field.date .date_from_html { border: 0; }
.section_booking .booking_cnt .booking form .caption-fields .form.field.date .date_from_html .month_name_tiny { border: 0; }
.section_booking .booking_cnt .booking form .caption-fields .form.field.date .date_from_html:after { background-color: transparent; }
.section_booking .booking_cnt .booking form .caption-fields .form.field.date .date_from_html { border-bottom: 2px solid #D8D8D8; padding-bottom: 10px }
.section_booking .booking_cnt .booking form .caption-fields .form.field.select .form_select { background-color: transparent }
.section_booking .booking_cnt .booking form .caption-fields .form.field.select .form_select.html_select .current_value { background-color: transparent; transition: .4s; position: relative; }
.section_booking .booking_cnt .booking form .caption-fields .form.field.select .form_select .current_value:after { border: 0; position: absolute;z-index: 2; top: 3px }
.section_booking .booking_cnt .booking form .caption-fields .form.field.date { width: 130px; padding-bottom: 0 }
form .caption-fields .form.field.date .date_from_html:after { width: 18px }
.section_booking .booking_cnt .booking form .caption-fields .form.field.select { width: auto; padding: 0 5px 0 10px }
.section_booking .booking_cnt .booking form .caption-fields .form.field.select .form_select.html_select .current_value {border-bottom: 2px solid #D8D8D8;}
.section_booking .booking_cnt .booking form .caption-fields .field.element_12,
.section_booking .booking_cnt .booking form .caption-fields .field.element_13 { float: left; width: auto; }
.section_booking .booking_cnt .booking form .caption-fields .field.element_12 input,
.section_booking .booking_cnt .booking form .caption-fields .field.element_13 input { border-bottom: 2px solid #D8D8D8; }
.section_booking .booking_cnt .booking form .caption-fields .form.field .form_element_title { font-family: "OpenSans-Regular"; font-size: 14px; color: #085679; text-transform: uppercase; text-align: left; line-height: 1; letter-spacing: 0; }


.section_booking .booking_cnt .booking form .caption-fields .field.element_14 { width: auto; }
.section_booking .booking_cnt .booking form .caption-fields .form.field.select .form_select .current_value { padding: 5px 0 15px 0; }
.section_booking .booking_cnt .booking { padding: 10px 150px 10px 30px; height: 80px; position: relative; }
.section_booking .booking_cnt .section_top { margin-bottom: 10px; padding-left: 30px }
.section_booking .booking_cnt .section_top .section_left {padding: 15px}
.section_booking .booking_cnt .section_top .section_left > div:before { margin-right: 5px }
.section_booking .booking_cnt .section_top .section_left .best_price { margin-right: 20px }
.section_booking .booking_cnt .booking input[type="submit"] { position: absolute; right: 0; top: 0; bottom: 0; margin: 0; z-index: 1; width: 120px; white-space: pre-line; word-spacing: 200px; background-image: url('../images/bg/arrow_bg.svg'); background-repeat: no-repeat; background-position: 25% 75%; }
body.en .section_booking .booking_cnt .booking input[type="submit"] { background-position: 25% 92%; }
body.de .section_booking .booking_cnt .booking input[type="submit"] { background-position: 25% 92%; }
.section_booking .booking_cnt .section_top .section_right {padding: 15px}
.section_booking .booking_cnt .section_top .section_right a:before { margin-right: 8px }
.overlay { background-color: rgba(0,0,0,.7); position: fixed; top: 0; width: 100%; height: 100%; left: 0; z-index: -1; opacity: 0; transition: .4s }
.overlay.fired { z-index: 6; opacity: 1; }
/* nascondo il pulsante blastness tracking */
#be_tracking_form {display: none;}

/* Slideshow */
#slideshow_cnt { background-color: #effaff; max-height: calc(100vh - 115px); /* overflow:hidden; */}
#slideshow_cnt img { max-height: calc(100vh - 115px); object-fit: cover; }


/* menu */
.menu_section_left { transition: .4s }
.menu_section_right { transition: .4s }
.menu_section_left { background-image: url('../images/bg/menu_left_bg.jpg'); background-repeat: no-repeat; background-size: cover; }
.menu_section_right { background-image: url('../images/bg/menu_right_bg.jpg'); background-repeat: no-repeat; background-size: cover; }
.menu_section_left.fired { left: 0 }
.menu_section_right.fired { right: 0 }
.menu_section_left ul {margin-top: 0}
.menu_section_left ul.nav li { margin-bottom: 15px }
.menu_section_left ul.nav li.active a{ color: rgba(255, 255, 255, 1); }
.menu_section_left ul.nav li:before { transition: .4s }
.menu_section_left ul.nav li a { padding-left: 80px; transition: .4s }
.menu_section_left ul.nav li:hover a {padding-left: 100px}
.menu_section_right .section_contacts > div { margin-bottom: 15px }
.menu_section_right .section_contacts > div a:before { margin-right: 7px }
#wrapper { transition: .4s; }
#wrapper.fired { transform: scale(.98); transform-origin: center; }
.overlay_wrapper { background-color: rgba(0,0,0,.5); position: fixed; top: 0; width: 100%; height: 100%; left: 0; z-index: -1; opacity: 0; transition: .4s }
.overlay_wrapper.fired { z-index: 6; opacity: 1; }


/* intro */
.section_intro_text { padding: 70px 15px 60px; margin-bottom: 30px }
.section_intro_text.room { padding: 150px 15px 150px; margin-bottom: 0 }
.section_intro_text .container { max-width: 920px }
.section_intro_text.home { padding: 50px 15px 230px; overflow-x: hidden; border-bottom: 5px solid #ECECEC; margin-bottom: 0 }
.section_intro_text .section_link a { padding: 10px 15px; transition: .3s }
.section_intro_text .section_link a:hover {background-color: #3498DB; color: #fff}
.section_intro_text .top_seo {margin-bottom: 10px}


/* ztemplate_model_2 */
.ztemplate_model_2 .ztemplate .row .box .elem .caption-cnt .caption .zsimplebutton a,
.ztemplate_model_2 .ztemplate .row .box .elem .caption-cnt .caption .varlink a  { padding: 10px 15px; transition: .3s }
.ztemplate_model_2 .ztemplate .row .box .elem .caption-cnt .caption .ztextarea {margin: 30px 0}
.ztemplate_model_2 .ztemplate .row .box .elem .caption-cnt .caption .title:before {margin: 0 auto}
.ztemplate_model_2 .ztemplate .row .box .elem .caption-cnt .caption .zsimplebutton a:hover,
.ztemplate_model_2 .ztemplate .row .box .elem .caption-cnt .caption .varlink a:hover { background-color: #3498DB; color: #fff }
.ztemplate_model_2 .ztemplate .row .box .elem .caption-cnt .caption .zsimplebutton,
.ztemplate_model_2 .ztemplate .row .box .elem .caption-cnt .caption .varlink { display: inline-block; margin: 0 5px; }


/* section_offers */
.section_offers { margin: 0 0 50px 0; position: relative; text-align: center; top:-50px;}
.section_offers .vareditor { margin: 0 auto; display: inline-block; font-family: "OpenSans-Italic"; font-size: 18px; color: #085679; text-align: center; line-height: 20px; letter-spacing: 0; }
.section_offers .vareditor h2 { margin: 0 0 20px 0; padding: 0 0 15px 0; font-family: "OpenSans-Light"; font-size: 52px; color: #085679; text-transform: uppercase; text-align: center; line-height: 1; letter-spacing: 0; position: relative; }
.section_offers .vareditor h2:before { margin: 0 auto; width: 60px; height: 2px; background-color: #30207E; text-align: center; z-index: 1; position: absolute; left: 0; right: 0; content: ''; bottom: 0; }


/* ztemplate_model_3 */
.ztemplate_model_3 {max-width: 1125px; margin: 0 auto}
.ztemplate_model_3 .slick-track {padding: 50px 0;}
.ztemplate_model_3 .slick-list { overflow: initial; }
.ztemplate_model_3 .slick-slide { opacity: 0; transition: .6s }
.ztemplate_model_3 .slick-slide.slick-active { opacity: 1; }
.ztemplate_model_3 .ztemplate .row .box .elem .caption-cnt .caption .zsimplebutton a { font-size: 0; color: transparent; border: 5px solid #ECECEC; }
.ztemplate_model_3 .ztemplate .row .box .elem {padding: 0 5px; transition: .3s; z-index: 2; position: relative;}
.ztemplate_model_3 .ztemplate .row .box .elem:hover { transform: scale(1.12); z-index: 3 }
.ztemplate_model_3 .ztemplate .row .box .elem .caption-cnt .caption-alt {padding: 30px 15px 15px 15px}
.ztemplate_model_3 .ztemplate .row .box .elem .caption-cnt .caption-alt .ztextarea {margin-top: 15px}
/* variante vetrina */
.ztemplate_model_3.showcase .ztemplate .row .box { display: flex; flex-wrap: wrap; }
.ztemplate_model_3.showcase .ztemplate .row .box .elem { width: 33.333%; margin-bottom: 10px }
.ztemplate_model_3.showcase .ztemplate .row .box .elem:hover { transform: unset; }

/* ztemplate_model_4 */
.ztemplate_model_4 { width: 100%; position: relative; top: -190px }
.ztemplate_model_4:before { position: absolute; content: ''; background-color: #F4F9FC; width: 80%; height: 100%; top: -594px; z-index: -1 }

.section_services { position: relative; top: -150px;}

#page .section_services { text-align: center; top: 0; }
#page .ztemplate_model_5 .ztemplate .row .box .elem { float: none; display: inline-block; }


/* ztemplate_model_5 */
.ztemplate_model_5 { margin: 0 auto}
.ztemplate_model_5 .ztemplate .row .box .elem { float: left; width:20%; margin: 0; padding: 0 20px }
.ztemplate_model_5 .ztemplate .row .box .elem .caption-cnt .caption-alt {margin-top: 20px}
.ztemplate_model_5 .ztemplate .row .box .elem .caption-cnt .caption:before { width: calc(100% + 20px); left: -10px; right: -10px; height: 200px }
.ztemplate_model_5 .slick-dots { text-align: center; margin-top: 30px }
.ztemplate_model_5 .slick-dots li { text-align: left; }
.ztemplate_model_5 .slick-dots li button { width: 12px; height: 12px; border-radius: 8px; background-color: rgba(52, 152, 219, 0.23); text-align: left; }
.ztemplate_model_5 .slick-dots li.slick-active { text-align: left; }
.ztemplate_model_5 .slick-dots li.slick-active button { width: 12px; height: 12px; border-radius: 8px; background-color: #3498DB; text-align: left; }

/* ztemplate_model_15 */
.ztemplate_model_15 {margin-bottom: 50px;}
.ztemplate_model_15 .caption-cnt {position: relative;}
.ztemplate_model_15 .caption-cnt .caption {}
.ztemplate_model_15 .caption-cnt .caption-alt { position: absolute; top: 50%; left: 50%; max-width: 550px; transform: translateY(-50%); background-color: #ffffffeb; padding: 25px; display: flex; flex-direction: column; gap: 15px;}
.ztemplate_model_15 .ztemplate .row .box .elem .caption-cnt .title a { display: inline-block; font-family: "OpenSans-Light"; font-size: 34px; color: #085679; text-transform: uppercase; text-align: left; line-height: 36px; letter-spacing: 0; }
.ztemplate_model_15 .ztemplate .row .box .elem .caption-cnt .ztextarea { font-family: "OpenSans-Regular"; font-size: 15px; color: #606060; text-align: left; line-height: 20px; letter-spacing: 0; }
.ztemplate_model_15 .ztemplate .row .box .elem .caption-cnt .zsimplebutton {margin-top: 10px;}
.ztemplate_model_15 .ztemplate .row .box .elem .caption-cnt .zsimplebutton a { display: inline-block; border: 3px solid #3498DB; font-family: "OpenSans-Regular"; font-size: 15px; color: #3498DB; text-transform: uppercase; text-align: center; line-height: 20px; letter-spacing: 0; }
.ztemplate_model_15 .ztemplate .row .box .elem .caption-cnt .zsimplebutton a { padding: 10px 15px; transition: .3s }
.ztemplate_model_15 .ztemplate .row .box .elem .caption-cnt .zsimplebutton a:hover { background-color: #3498DB; color: #fff }

.smartphone .ztemplate_model_15 {width: 100%;}
.smartphone .ztemplate_model_15 .caption-cnt .caption img {height: 700px; object-fit: cover; width: 100vw;}
.smartphone .ztemplate_model_15 .caption-cnt .caption-alt {width: 80vw; left: 50%; transform: translate(-50%, -50%);}

/* footer */
footer {margin-top: 30px }
footer .section_social > div { text-align: center;}
footer .section_top .central .section_social .socialnet { margin: 0 10px }
footer .section_center > div { margin-right:  30px }
footer .section_center > div a:before { margin-right: 7px }
footer .section_bottom { padding: 15px }
footer .section_center { padding: 45px 15px; border-top: 1px solid #E0E8EC }
footer .section_bottom a { color: #085679 }
#CDSWIDCOE.widCOE { border: none!important; text-align: center; margin: 0 auto }

/* Page */
.section_intro_text .section_title { margin-bottom: 30px }
.section_intro_text .section_title:before {margin: 0 auto}
.section_intro_text .section_summary {margin-bottom: 20px}
#page_content.has_image { position: relative; top: -50px; margin-bottom: -50px }
#page_content.has_image img.left { float: none!important; margin: 0 0 20px 0!important }
#page.page #page_content .container { max-width: 820px }
#page_content { padding-bottom: 40px }
#page #page_content table {width: 100%!important; border: 1px solid #f3f3f3 }
#page #page_content table tr { background-color: #fff; font-size: 12px; height: auto!important }
#page #page_content table tr:nth-child(odd) { background-color: #f3f3f3 }
#page #page_content table tr td { padding: 10px; line-height: 1; vertical-align: baseline; height: auto!important }
#page.page.multiriga #page_content .container_multiriga { max-width: 1170px; }
#page.page.multiriga #page_content .section_text { text-align: left; }
#page.page.multiriga #page_content .section_text .img_cnt_left { float: left; margin: 0 20px 20px 0px !important; }
#page.page.multiriga #page_content .section_text .img_cnt_right { float: right; margin: 0 0px 20px 20px !important; }
#page.page.multiriga #page_content .img_cnt img { margin: 0 0 0px 0!important; }
#page.page.multiriga #page_content .img_cnt:before { bottom: -10px; }
#page.page.multiriga #page_content.has_image {top: 0}

#page #page_content ul { list-style-position: inside; }

#page_content .section_text .text_dyn .fieldvalue { margin-bottom: 30px; padding-bottom: 15px; border-bottom: 5px solid #F1F1F7 }
#page_content .section_text .text_dyn .fieldvalue:after { content: ''; display: block; width: 100%; position: relative; clear: both; }
#page_content .section_text .text_dyn .fieldvalue:last-of-type { border-bottom: unset; }
#page_content .section_text .text_dyn .fieldvalue.single { border-bottom: unset; margin-bottom: 0 }

.custom_list ul { list-style-type: none; padding-left: 0  }
.custom_list ul li { padding: 10px; background-color: #effaff; margin-bottom: 10px }

.gmap { border: 5px solid #effaff!important; box-shadow: 0 10px 15px 0 rgba(0,0,0,0.09); width: 100% }

/* Allegati */
.documents_cnt { background-color: #effaff; padding: 5px; margin-top: 30px; clear: both; }
.documents .document {text-align: left; }
.documents {margin: 0}
.documents .document .document_size {display: none;}
.documents .document a {display: block; font-family: "OpenSans-Regular"; font-size: 14px; color: #085679;}
.documents .document a:before { font-family: "FontAwesome5Pro-Regular"; font-size: 16px; color: #085679; content: '\f15c'; }
.documents .document a:after { font-family: "FontAwesome5Pro-Regular"; font-size: 16px; color: #085679; content: '\f381'; float: right; }
.documents .document:last-of-type { border-bottom: unset; padding-bottom: 0 }

/* contact form */
#page.page .form-cnt { padding: 0 15px 90px }
#page.page .form-cnt .container { max-width: 720px }
form input[type="submit"] { background-color: #3398db; }
form .caption-fields .form.field.select .form_select .elements_list {z-index: 2}
form #showprivacy { padding: 0 15px }
form .caption-fields .form.field.select .form_select { color: #055679 }
form .caption-fields .form.field.select .form_select .elements_list .option:first-of-type { display: none; }
form .caption-fields .form.field.select .form_select .elements_list { background-color: #055679 }
form .caption-fields .form.field.select .form_select .elements_list .option { padding: 5px; color: #fff; transition: .4s }
form .caption-fields .form.field.select .form_select .elements_list .option:hover { background-color: #3398db }
.form-cnt form .caption-fields .field input,
form .caption-fields .field.textarea textarea { color: #055679!important  }
.form-cnt .section_title{ font-family: "OpenSans-Light"; font-size: 24px; color: #085679; text-transform: uppercase; text-align: center; line-height: 1; letter-spacing: 0; position: relative; margin-bottom: 45px}
.form-cnt .section_title:before { width: 60px; height: 2px; background-color: #30207E; text-align: center; z-index: 2; position: absolute; left: 0; right: 0; bottom: -10px; content: ''; margin: 0 auto }


/* Offerte */
#page.offer #page_content .section_text {text-align: left;}


/* ztemplate_model_6 */
.ztemplate_model_6 .container { max-width: 720px }
.ztemplate_model_6 #template6 .row .box .elem {margin-bottom: 40px}
.ztemplate_model_6 #template6 .row .box .elem .caption-cnt .caption-alt .title {max-width: 420px}
.ztemplate_model_6 #template6 .row .box .elem .caption-cnt .caption {background-color: #000}
.ztemplate_model_6 #template6 .row .box .elem .caption-cnt .caption img {opacity: .8}

/* submenu */
.section_submenu {margin-top: 60px}
.section_submenu .section_subtitle:before {margin: 0 auto;}
.submenu #tree > li.active { display: none; }
.submenu #tree > li.active
.section_submenu .section_subtitle {margin-bottom: 30px}
.section_submenu .submenu {padding: 30px 45px; min-width: 690px; margin-top: 30px}
.submenu #tree > li, .section_submenu .submenu li { display: table; margin: 0 auto 10px; }
.section_submenu .submenu li a:before { opacity: 0; transition: .4s; left: -30px; position: relative; }
.section_submenu .submenu li a:after { opacity: 0; transition: .4s; right: -30px; position: relative; }
.section_submenu .submenu li:hover a:before { opacity: 1; left: -5px }
.section_submenu .submenu li:hover a:after { opacity: 1; right: -5px }
.section_submenu .submenu li:before { margin: 0 auto; width: 0; transition: .4s }
.section_submenu .submenu li:hover:before { width: 100% }
.submenu #tree > li#tree-item-35,
.submenu #tree > li#tree-item-30,
.submenu #tree > li#tree-item-60 { display: none; }
.section_submenu .submenu .title { margin-bottom: 0!important}


/* Gallery */
.gallery ul li { padding: 0 15px }
.section_gallery {margin: 60px 0; }
.section_gallery .slick-next { top: calc(50% - 25px); border-top-left-radius: 50px; border-bottom-left-radius: 50px }
.section_gallery .slick-prev { top: calc(50% - 25px); border-top-right-radius: 50px; border-bottom-right-radius: 50px }

/* Album */
.album_cnt { display: flex; justify-content: center; flex-wrap: wrap; max-width: 1200px; margin: 0 auto }
.album_cnt .album { width: calc(33.333% - 30px); margin: 15px }
.album_title { font-family: "OpenSans-Light"; font-size: 24px; color: #085679; text-transform: uppercase; text-align: center; line-height: 1; letter-spacing: 0; padding: 15px; background-color: #fff}

.album_media_cnt { max-width: 1200px; margin: 0 auto }
.album_media_cnt img { margin: 15px; width: calc(25% - 30px) }
.section_link a { display: inline-block; border: 3px solid #3498DB; font-family: "OpenSans-Regular"; font-size: 15px; color: #3498DB; text-transform: uppercase; text-align: center; line-height: 20px; letter-spacing: 0; padding: 10px 15px}
.inner_album .section_link { margin: 30px auto 15px }

.video { margin-bottom: 30px }

/* Covid */
.section_covid { display: flex; position: relative; flex-direction: column; width: 80%; justify-content: center; margin: 0 auto 30px auto; padding: 0 0 40px 0; align-items: center; }
.section_covid_title { display: block; text-align: center; }
.section_covid_title .vareditor { display: inline-block; background-color: #65b721; color: #FFFFFF; cursor: pointer; padding: 20px; text-transform: uppercase; border-radius: 30px; width: auto; text-align: center; font-family: "OpenSans-Regular"; font-size: 14px; margin-bottom: 40px; }
.section_covid_cnt { font-family: "OpenSans-Regular"; font-size: 15px; color: #606060; line-height: 25px; box-shadow: 0 10px 15px 0 rgba(0,0,0,0.09); padding: 40px 40px; }
.section_covid_cnt strong { font-family: "OpenSans-Bold"; }
.section_covid_cnt p { margin-bottom: 20px; }
.section_covid_cnt .varlink { display: block; text-align: center; margin-top: 40px; }
.section_covid_cnt .varlink a { border: 3px solid #65b721; font-family: "OpenSans-Regular"; font-size: 12px; color: #65b721; text-transform: uppercase; text-align: center; line-height: 1; letter-spacing: 0; cursor: pointer; padding: 10px; }
/* Configurazione per RWD */
/* Generic Mobile Devic Tablet */


footer .section_privacy { padding:30px 0 10px 0; text-align: center; clear: both; }
footer .section_privacy .varlink { display: inline-block; }
footer .section_privacy .varlink a { background-color: rgb(255, 255, 255); border: 1px solid rgb(195, 195, 195); border-bottom-color: rgb(184, 185, 186); border-top-color: rgb(208, 208, 208); border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; box-shadow: rgba(0, 0, 0, 0.08) 0px 1px 0px 0px; color: rgb(89, 99, 109); font-family: "Helvetica Neue", Helvetica, Arial, FreeSans, sans-serif; font-size: 11px; font-weight: 700; line-height: 18px; padding:2px 8px 3px 8px; text-decoration-color: rgb(89, 99, 109); text-decoration-line: none; text-decoration-style: solid; }

#icon_gif_voucher_cnt { display: block; position: fixed; top: 150px; right: 20px; cursor: pointer; z-index: 900; }
#icon_gif_voucher_cnt .icon_cnt { display: flex; height: 70px; width: 70px; justify-content: center; align-items: center; align-content: center; background-color: #2a80b9; color: #FFFFFF; }
#icon_gif_voucher_cnt .icon_cnt:after { font-family: "FontAwesome5Pro-Light"; font-size: 28px; color: #FFFFFF; text-transform: lowercase; content: "\f06b"; }
#icon_gif_voucher_cnt .varlink { background-color: #3498db; color: #FFFFFF; display: flex; height: 70px; justify-content: center; align-items: center; align-content: center; font-size: 16px; text-transform: uppercase; position: absolute; right: 70px; line-height: 20px; text-align: center; overflow-x: hidden; }
#icon_gif_voucher_cnt .varlink a { color: #FFFFFF; }
#icon_gif_voucher_cnt .varlink { width: 0px; transition: 0.2s ease-in; }
#icon_gif_voucher_cnt:hover .varlink { width: 200px; }
/* forzo la pubblicazione del testo per la versione desktop */
body.desktop #icon_gif_voucher_cnt .varlink { width: 200px; }


/* video */
#video {position: absolute;top: 50%;left: 50%; transform: translateY(-50%) translateX(-50%); z-index: 2999;width: 100px; height: 100px; text-align: center;}
.play_cnt { }
.play_cnt #play_btn {background-color: rgba(0,0,0,0.2);border-radius: 100%;display: flex;justify-content: center;align-items: center;color: #FFFFFF;font-size: 20px;margin: 0 auto; cursor: pointer; transition: 0.4s ease-in; width: 100px; height: 100px}
.play_cnt .play_label { margin: 20px auto 0px auto; cursor: pointer; }
#player_cnt {position: fixed;display: block;top: 0px;left: -120vw;width: 100%;height: 100vh;z-index: 999999;transition: 0.35s ease-in;}
#player_cnt.fired { left: 0px; transition: 0.25 ease-out; }
#player_cnt iframe { min-width: 100%; min-height: 100%; }
.play_cnt:hover #play_btn { background-color: rgba(0,0,0,0.3); transition: 0.2s ease-in; }


.section_video { height: calc(100% - 100px); position: absolute; top: 0px; width: 100%; }
.section_video .play_btn { display: flex; font-family: "Raleway-Medium"; font-size: 14px; color: #FFFFFF; text-transform: uppercase; text-align: left; line-height: 1; letter-spacing: 0; z-index: 2; position: absolute; left: calc(50% - 50px); bottom: 50%; align-items: center; cursor: pointer; width: 100px; height: 100px; border-radius: 100%; background-color: #FFFFFF66; display: flex; justify-content: center; align-items: center; align-content: center; flex-direction: column; }
.section_video .play_btn:before { font-family: "FontAwesome5Pro-Regular"; font-size: 25px; color: #FFFFFF; text-transform: lowercase; text-align: left; line-height: 25px; letter-spacing: 0; content: "\f04b"; margin: 20px auto 10px auto; }

/* RWD */
@media (max-width: 1440px){
	.phone_wrap { flex-direction: column; gap: 0; }
	header .header_cnt #right_cnt #contacts_cnt .phone a { font-size: 12px; }
}

@media (max-width: 1120px) {
	#cntlogo img { width: 100%; max-width: 260px;}
}

@media (max-width: 1100px){
	header .header_cnt #left_cnt #booking_btn { opacity: 1; z-index: 1 }
	.section_booking { position: fixed; top: 0; bottom: inherit; opacity: 0; z-index: -1; transition: unset; }
	.section_intro_text { padding-top: 60px!important }
	.section_booking .booking_cnt .section_top {justify-content: center; flex-direction: column; padding-left: 0}
	.section_booking .booking_cnt .booking {height: auto; display: flex; flex-wrap: wrap; max-width: 420px; padding: 15px }
	.section_booking .booking_cnt .booking input[type="submit"] {position: relative; clear: both; background-image: unset; word-spacing: unset; width: calc(100% - 30px); text-align: center; margin: 0 auto}
	.section_booking .booking_cnt .booking form .caption-fields .form.field.date { width: 50%; padding-bottom: 20px }
	.section_booking .booking_cnt .booking form .caption-fields .form.field.date .date_from_html {width: 100%}
	.section_booking .booking_cnt .booking form .caption-fields .form.field.date .date_from_html:after { position: absolute; right: 0 }
	.section_booking .booking_cnt .booking form .caption-fields .form.field.select {width: 33.333%; padding:0 15px 20px 15px}
	.section_booking .booking_cnt .booking form .caption-fields .field.element_12, .section_booking .booking_cnt .booking form .caption-fields .field.element_13 { width: 50% }
}



@media (max-width: 1023px) {

	 header .header_cnt #right_cnt #contacts_cnt .phone a {font-size: 0; transition: unset;}
	 header .header_cnt #right_cnt #contacts_cnt .phone { margin: 0; }
	.phone_wrap:before { cursor: pointer; font-family: "FontAwesome5Pro-Solid"; font-size: 20px; color: #3498DB; text-transform: lowercase; text-align: left; line-height: 24px; letter-spacing: 0; content: "\f095"; position: absolute; top: -30px; right: 0; }
	.phone_wrap { gap: 10px; border-radius: 5px; position: relative; top: 47px; padding: 0; background-color: #fff; margin-right: 20px; height: 60px;}
	header .header_cnt #right_cnt #contacts_cnt .phone a:before { display: none; }
	header .header_cnt #right_cnt #contacts_cnt .phone_wrap.fired .phone a {font-size: 14px;}
	.phone_wrap.fired { padding: 10px; gap: 10px; border: 1px solid #3498DB; }

}

@media (max-width: 991px) {
	.ztemplate_model_3.showcase .ztemplate .row .box .elem {width: 50%}
	#cntlogo img { width: 100%; max-width: 220px;}
}


@media (max-width: 768px) {
	header .header_cnt #right_cnt #contacts_cnt .mail { width: 20px }
}


@media (max-width: 767px) {
	body { padding-top: 160px; }
	header .header_cnt #left_cnt #booking_btn { position: absolute; top: 100%; width: 100%; background-color: #3398db; color: #fff }
	.section_booking.fired { top: 180px }
	header .header_cnt #left_cnt #menu_btn { margin: 0 15px; position: relative; z-index: 3 }
	header .header_cnt #right_cnt {margin-right: 15px; padding-right: 0 }
	header .header_cnt { flex-wrap: wrap; }
	header .header_cnt #left_cnt {order: 2; width: 60px}
	header .header_cnt #central_cnt {order: 3; width: calc(100% - 60px); position: relative; left: -30px}
	header .header_cnt #right_cnt { order: 1; width: 100%; padding: 5px 10px 5px 5px; margin-right: 0; background-color: #effaff }
	header .header_cnt #right_cnt #contacts_cnt .phone a { background-color: #effaff }
	header .header_cnt #right_cnt #contacts_cnt .whatsapp a {height: 30px; width: 55px; padding-left: 10px}
	header .header_cnt #right_cnt #contacts_cnt .mail a { height: 30px; width: 45px; justify-content: flex-start; padding-left: 10px; background-color: #effaff }
	header .header_cnt #right_cnt #contacts_cnt .whatsapp a:before,
	header .header_cnt #right_cnt #contacts_cnt .mail a:before {font-size: 16px}
	header .header_cnt #right_cnt .language_cnt #language_btn .value {line-height: 30px}
	header .header_cnt #right_cnt .language_cnt #language_btn:before {top: 3px}
	header .header_cnt #right_cnt .language_cnt #language_btn:after {line-height: 30px; font-size: 18px; top: 0}
	header .header_cnt #right_cnt .language_cnt #language a {line-height: 30px}
	header .header_cnt #right_cnt #contacts_cnt .phone a:before {font-size: 16px}
	header .header_cnt #right_cnt .language_cnt #language_btn.fired { width: 30px; padding-left: 0; }
	header .header_cnt #right_cnt .language_cnt #language_btn.fired:after {left: 7px; font-size: 18px}
	header .header_cnt { height: 120px }
	.menu_section_right {display: none;}
	.menu_section_left {top: 120px; width: 100%; left: -100%; align-items: flex-start; padding-top: 15px}
	.menu_section_left ul.nav li a,
	.menu_section_left ul.nav li:hover a {padding-left: 0; text-align: center; font-size: 20px; }
	.menu_section_left ul.nav li,
	.menu_section_left ul.nav li:hover { text-align: center; margin-bottom: 12px }
	.menu_section_left .navbar-collapse { margin: 0 auto }
	.menu_section_left ul.nav li:hover:before { width: 35px }
	.section_intro_text.home,
	.section_intro_text.room,
	.section_intro_text { padding: 30px 15px!important }
	.section_offers {top: 0;margin: 50px 20px;}
	.section_offers .vareditor { margin: 0 0 20px 0;font-size: 16px; }
    .section_offers .vareditor h2 { font-size: 28px;  }
    .section_offers .vareditor h2:before { width: 30px; }
	.ztemplate_model_3 .ztemplate .row .box .elem:hover { transform: unset; }
	.ztemplate_model_4 {width: 100%; top: 0; }
	.ztemplate_model_4 .ztemplate .row .box .elem .caption-cnt .caption .title { left: 15px; bottom: 15px; right: 15px; padding: 25px; background: rgba(31, 67, 99, 0.7); top: 50%; bottom: inherit; transform: translateY(-50%); }
	.ztemplate_model_4 .ztemplate .row .box .elem .caption-cnt .caption .title a { font-size: 32px; display: block; text-align: center; }
	.ztemplate_model_4 .ztemplate .row .box .elem .caption-cnt .caption img { height: 320px; object-fit: cover }
	.ztemplate_model_5 .ztemplate .row .box .elem {float: none; width: 100%; margin: 0 auto 40px; max-width: 320px}
	.section_services { top: 0; margin-top: 30px }
	footer .section_top { flex-direction: column; padding-bottom: 20px }
	footer .section_top .central {order: 1; width: 100%}
	footer .section_top .first {order: 2; width: 100%}
	footer .section_top .last {order: 3; width: 100%; margin-top: 30px}
	footer .section_center { flex-direction: column; padding: 25px 15px; gap: 15px; }
	footer .section_top .central .section_social {margin: 30px auto}
	footer .section_center .section_fax {margin: 0 auto}

	.section_submenu .submenu { min-width: unset; width: 100%; padding: 20px 15px }
	.section_submenu .submenu li a {font-size: 14px}
	.submenu #tree > li {margin-bottom: 5px}
	.gallery ul li {margin-bottom: 15px}
	.section_intro_text .section_title {font-size: 18px}

	.form-cnt form .caption-fields .field { width: 100% }
	.ztemplate_model_3.showcase .ztemplate .row .box .elem { width: 100% }
	.section_services { padding: 0 15px }

	#page.page.multiriga #page_content .section_text { text-align: center; padding: 15px }
	#page.page.multiriga #page_content .section_text .img_cnt_left { margin: 0px !important; margin-bottom: 25px!important }
	#page.page.multiriga #page_content .section_text .img_cnt_right { margin: 0px !important; margin-bottom: 25px!important }
	#page.page.multiriga #page_content .section_text .text_dyn .fieldvalue { border-bottom: 0; }
	#page_content { padding: 0 15px 40px 15px }
	.grecaptcha-badge {}
	.album_cnt {flex-direction: column;}
	.album_cnt .album { width: calc(100% - 30px) }
	.album_media_cnt img { margin: 7px; width: calc(50% - 16px); }
	#wrapper.fired {transform: unset;}

	.section_covid { width: 100%; }
	.section_covid_cnt { padding: 10px 10px 25px 10px; width: calc(100% - 20px); }

	#icon_gif_voucher_cnt { top: 170px; right: 10px; }
	#icon_gif_voucher_cnt .varlink { font-size: 12px; height: 40px; right: 40px; }
	#icon_gif_voucher_cnt .icon_cnt:after { font-size: 18px; }
	#icon_gif_voucher_cnt .icon_cnt { height: 40px; width: 40px; }
	#icon_gif_voucher_cnt .varlink { width: 200px; }

	.section_video { height: 100%; }
	.section_video .play_btn { width: 50px; height: 50px; bottom: 40%; left: calc(50% - 25px); }
	.section_video .play_btn:before { margin: 30px auto 20px auto; }
	form#form_6 .caption-fields .field.select { width: 100%}

}

@media (max-width: 500px){
	.ztemplate_model_3 .slick-track {padding: 0;}
	.ztemplate_model_3 .slick-list { overflow: hidden; }
	.section_booking .booking_cnt .booking form .caption-fields .form.field.date .form_element_title,
	.section_booking .booking_cnt .booking form .caption-fields .form.field.select .form_element_title {font-size: 11px}
	#page.page #page_content .container { padding: 0 }
	#page #page_content table tr td { width: calc(100% / 6)!important; padding: 5px }
	#page #page_content table tr {font-size: 10px}
	#page.page.multiriga #page_content .section_text .img_cnt_left,
	#page.page.multiriga #page_content .section_text .img_cnt_right { float: none; }
}


@media (max-width: 320px){
	.section_booking .booking_cnt .section_top .section_left {display: none;}
	.section_booking.fired {top: 160px}
	.section_booking .booking_cnt .section_top .section_right {padding-bottom: 0}
	.section_booking .booking_cnt .booking { max-width: unset; }
}

/* Generic Mobile Devic Phone */
@media (max-width: 480px) { }
@media (max-width: 767px) { }
@media (max-width: 768px) { }

/* iPad landscape | Kindle landscape width: 1024px */
@media (min-width: 980px) and (max-width: 1199px) { }

/* Large Desktop */
@media (min-width: 1200px) { }
@media (min-width: 1680px) { }
