a { -webkit-transition: all .6s; -moz-transition: all .6s; -o-transition: all .6s; transition: all .6s; }
.text_dyn a, .text_dyn a:hover, .text_dyn a:focus, .text_dyn a:visited { color:#5DB59A; }
.text_dyn .accordion a, .text_dyn .accordion a:hover, .text_dyn .accordion a:focus, .text_dyn .accordion a:visited { color:#3c3c3c; }
input[type="button"]:hover, input[type="reset"]:hover, input[type="submit"]:hover { opacity:0.9; }
.clear { clear: both; }
.overflow { overflow: hidden; }
.documents, .videos { margin: 20px auto 40px auto; clear: both; }
.documents { background: #eef3f4; padding: 15px;}
.documents .document { margin: 10px; padding: 0  10px 10px 10px; display: block; clear:both; border-bottom: 1px solid #D5D5D5; overflow:hidden; }
.documents .document a { font-family: "Avenir-Roman"; font-size: 16px; color: #1A1A1A; text-align: left; line-height: 22px; letter-spacing: 0; display: inline-flex; align-items: center; font-weight: bold}
.documents .document a:before { margin:0px 10px 0px 0px !important; float:left; font-family: "FontAwesome"; font-size: 30px; color: #05ACD6; text-align: center; content: '\f019' }
.documents .document .document_size { float:right; color: #D5D5D5; display: none; }
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; }
/* Da qui specifico */
body { font-family: "Avenir-Roman"; }
.certificate_section { background-color: #f8f8f8; padding: 15px }
.certificate_section ul { display: block; list-style-type: none; text-align: center;  }
.certificate_section ul li {display: inline-block; margin: 0 15px}

#showprivacy .privacy_field .show_privacy {color: #fff; font-family: "Futura-Medium"; font-size: 11px; text-align: left; line-height: 1; letter-spacing: 0; }
a.iubenda.iubenda_button.nostyle { margin: 0 5px; font-family: "Avenir-Heavy"; font-size: 12px; color: #FFFFFF; text-transform: uppercase; }

/* Pulsante bonus vacanza */
.button_model_1 a{  background-color: #01aad6; padding: 18px; color: #fff; text-transform: uppercase; font-family: 'Futura-Bold'; margin-right: 10px}

/* BANDO  */
#bando { padding: 30px 15px}
#bando .container { text-align: center;}
#bando img { max-width: 520px}

/* Custom popup con campanella (custom su richiesta) */
#template16 .caption-cnt { background-color: #fff }
#template16 .caption { max-width: 590px }
#template16 .caption-alt {padding: 28px!important}
#template16 .caption-alt .ztextarea {line-height: 16px!important}
#template16 .caption-alt .title { font-family: "Avenir-Black"; font-size: 30px; color: #5A5A5A; background: #fff; margin: 0 0 20px 0;  }
#template16 .caption-alt a { text-decoration: underline; color: #00abd6 }
#template16:after { font-family: "FontAwesome"; content: '\f0f3'; color: #fff; font-size: 45px; position: absolute; top: 0px; left: 0px; transform: translate( calc(-45px / 2) , calc(-45px / 2)); z-index: 3; transform-origin: top; animation: bell 2s infinite linear both;  }
#template16 {position: relative;}
#template16:before { position: absolute; top: -45px; left: -45px; width: 90px; height: 90px; border-radius: 100%; background-color: #71D759; z-index: 2; border: 10px solid #00abd6; }
@keyframes bell{
  from,50%{
		transform: translate( calc(-45px / 2) , calc(-45px / 2)) rotate(0deg);
	}
  5%, 15%, 25%, 35%, 45% {
    transform: translate( calc(-45px / 2) , calc(-45px / 2)) rotate(15deg);
  }
  10%, 20%, 30%, 40% {
    transform: translate( calc(-45px / 2) , calc(-45px / 2)) rotate(-15deg);
  }
}
@media (max-width: 767px){
	#template16:before { top: -45px; left: -10.5px; }
	#template16:after {top: 0px; left: 0px; transform: translate( calc(25px / 2) , calc(-45px / 2));  }
	@keyframes bell{
	  from,50%{
			transform: translate( calc(25px / 2) , calc(-45px / 2)) rotate(0deg);
		}
	  5%, 15%, 25%, 35%, 45% {
	    transform: translate( calc(25px / 2) , calc(-45px / 2)) rotate(15deg);
	  }
	  10%, 20%, 30%, 40% {
	    transform: translate( calc(25px / 2) , calc(-45px / 2)) rotate(-15deg);
	  }
	}
}


/* Unsubscribe newsletter */
form#privacy_email_req { padding: 20px 15px }
form#privacy_email_req .field.email { width: 100%;  }
form#privacy_email_req .form-title { font-family: "Futura-Bold"; font-size: 12px; color: #05ACD6; text-transform: uppercase; text-align: left; line-height: 1; letter-spacing: 1px; position: relative; padding-bottom: 8px; margin-bottom: 30px; }
form#privacy_email_req .form-title:before {width: 60px; height: 3px; background-color: #05ACD6; text-align: left; z-index: 504; position: absolute; left: 0px; bottom: 0px; content: "";  }
form#privacy_email_req .form-title:after { width: 100%; height: 1px;  background-color: #05ACD6; text-align: left; z-index: 462; position: absolute; left: 0; right: 0; bottom: 1px; content: ""; }
form#privacy_email_req .caption-fields .form_element_title { font-family: "Futura-Bold"; font-size: 9px; color: #05ACD6; text-transform: uppercase; text-align: left; line-height: 1; letter-spacing: 0.75px; }
form#privacy_email_req .field.email input {background-color: #f1f1f1}
form#privacy_email_req input[type="submit"] { background-color: #005BA9; font-family: "Futura-Bold"; font-size: 12px; color: #FFFFFF; text-transform: uppercase; padding: 15px 25px }

/* widget review pro */
#rpro-external-widget {position: fixed;bottom: 0; left: 0; z-index: 99}

#page_error { background: rgba(0,0,0,.5); position: fixed; z-index: 9999; width: 100%; height: 100% }
#page_error .cnt-message { display: flex; align-items: center; justify-content: center; height: 100%; }
#page_error .cnt-message .caption { background: #ea4b4b; padding: 30px; text-align: center; color: #fff; }
#page_error .cnt-message .caption .close { margin-bottom: 15px; cursor: pointer; }
#page_error .cnt-message .caption .message { font-size: 18px; line-height: 20px }

#static_form { padding: 60px 15px; text-align: center; font-family: "Avenir-Roman"; font-size: 20px; color: #1A1A1A; line-height: 22px; letter-spacing: 0; }

#content p{margin-bottom: 15px;}

/* fix */
.max_width{max-width: 1440px; margin: 0 auto;}
#wrapper {overflow: hidden;}

/* alert message */
.alert_message { transition: .3s; left: -320px; position: fixed; z-index: 999; top: 30%; background: #fff; width: 320px; padding: 20px; font-family: "Avenir-Book"; font-size: 15px; line-height: 22px; color: #141414; box-shadow: 0 2px 14px 0 rgba(0,0,0,0.08);}
.alert_message a { color: #05ACD6 }
.alert_btn { width: 60px; height: 60px; position: absolute; top: 0; left: 100%; background-color: #71D759; cursor: pointer;  }
.alert_btn:before { font-family: "FontAwesome"; font-size: 30px; color: #FFFFFF; text-align: center; z-index: 2; position: absolute; right: 17px; top: 0; line-height: 60px; content: "\f0f3"; }
.alert_message.fired { left: 0; }

/* 404 */

.not-found { position: absolute; left: 0; right: 0; margin: 0 auto; max-width: 920px; padding: 120px 25px; background-color: rgba(255,255,255,.8); top: 25%; z-index: 99 }
.not-found:before { top: 40px }

/* Infosplash */
#infosplash { position: fixed; background-color: rgba(0,0,0,.7); top: 0; z-index: 999; height: 100%; width: 100%; }
#infosplash_content {max-width: 820px;cursor: pointer; transition: .3s}
#infosplash_content.fired {opacity: 0}
#infosplash_container { display: flex; justify-content: center; align-items: center; height: 100%;}
.infosplash_wrapper {text-align: center;}
#infosplash .close { color: #fff; font-size: 22px; padding-bottom: 15px; cursor: pointer; }
#infosplash .close.fired {display: none;}

/* Infosplash template */
#infosplash .ztemplate .caption-alt .title a { display: block; font-family: "Avenir-Black"; font-size: 20px; color: #545454; text-align: center; line-height: 22px; letter-spacing: 0; }
#infosplash .ztemplate .caption-alt { background-color: #fff; padding: 15px; text-align: center; }
#infosplash .ztemplate .caption-alt .zsimplebutton { margin-top: 30px }
#infosplash .ztemplate .caption-alt .zsimplebutton a { display: inline-block; background-color: #71D759; font-family: "Futura-Bold"; font-size: 12px; color: #FFFFFF; text-transform: uppercase; text-align: center; line-height: 1; letter-spacing: 0; padding: 15px 25px; }
#infosplash .ztemplate .caption-alt .ztextarea { font-family: "Avenir-Roman"; font-size: 14px; color: #000000; text-align: left; line-height: 1; letter-spacing: 0; }



/* hidden form */
#room_form { clear: both; margin-top: 30px; }
#room_form.hidden_form { position: fixed; z-index: 999;  /* background-color: rgba(0,0,0,.7); */ top: 0; padding: 0; margin: 0; height: 100%; width: 100%; opacity: 0; transition: .3s; transform: scale(0);}
#room_form.hidden_form.fired {transform: scale(1); opacity: 1}
#room_form.hidden_form:before {display: none;}
#room_form.hidden_form form {margin: 0}
#room_form.hidden_form .form_content { display: flex; height: 100%; justify-content: center; align-items: center; }
form .caption-fields .form input[type="phone"]::placeholder { opacity: .4 }
#room_form.hidden_form .form_wrapper {text-align: center;}
#room_form.hidden_form .close { color: #fff; font-size: 22px; padding-bottom: 15px; cursor: pointer; }

body.noslide { padding-top: 120px; }

/* fix widget matrimonio.com */
#wp-widget-reviews { clear: both; padding-top: 30px; }

/* header */
header { padding: 20px; transition: .3s; }
/* header #menu_btn span { line-height: 78px; } */
header #menu_btn span { line-height: 50px; }
header #menu_btn span:before { bottom: -6px; }
header #contacts { padding: 15px; position: relative; }
header .logo img {width: 270px; height: 100%}
header #contacts #varlink_tel-cnt a { padding-left: 40px; }
header #contacts #varlink_tel-cnt a:before { content: '\f095'; padding: 7px; top: -8px; bottom: inherit; text-align: center; border-radius: 100%; height: 32px; width: 32px; }
header #contacts #varlink_tel-cnt { margin-left: 0px; }


/* icon social cnt */
header #contacts .icon_cnt { margin-left: 80px; display: flex; justify-content: flex-start; align-items: center; }
header #contacts .icon_cnt .varlink { text-align: left; }
header #contacts .icon_cnt .varlink a { display: block; font-family: "Avenir-Medium"; font-size: 0px; color: #FFFFFF; text-transform: lowercase; text-align: left; line-height: 1; letter-spacing: 0; position: relative; padding-left: 40px; }
header #contacts .icon_cnt .varlink a:before { border: 0px; font-family: "FontAwesome"; font-size: 22px; color: #FFFFFF; text-transform: lowercase; text-align: center; line-height: 1; z-index: 40; position: absolute; left: -10px; bottom: 0px; content: ""; padding: 7px; top: -18px; border-radius: 100%; height: 32px; width: 32px; }
header #contacts .icon_cnt #varlink_whatsapp-cnt.varlink a:before { content: '\f232'; padding: 0; border: 1px solid #71D759; background-color: #71D759; line-height: 32px; font-size: 20px }
header #contacts .icon_cnt #varlink_facetime-cnt.varlink a:before { content: '\f03d'; }


/* Header Booking Buttons */
/* header #booking_buttons { margin-left: 6px; padding: 10px; top: -2px; opacity: 1; transition: .6s } */
header #booking_buttons { margin-left: 6px; padding: 10px; position: absolute;top: 20px; height: 80px; right: 106px; opacity: 1; transition: .6s }
/* header.reveal_booking #booking_buttons { top: -2px; opacity: 1 } */
header #booking_buttons #varsimple_booking_btn { padding: 20px 25px; transition: .3s; position: relative; }
header #booking_buttons #varsimple_booking_btn.fired{color: transparent}
header #booking_buttons #varsimple_booking_btn:before { position: absolute; content: ''; width: 25px; height: 1px; background-color: #fff; top: 25px; left: 0; right: 0; margin: 0 auto; opacity: 0; transition: .3s; }
header #booking_buttons #varsimple_booking_btn:after { position: absolute; content: ''; width: 25px; height: 1px; background-color: #fff; top: 25px; left: 0; right: 0; margin: 0 auto; opacity: 0; transition: .3s }
header #booking_buttons #varsimple_booking_btn.fired:after{ opacity: 1; transform: rotate(45deg); }
header #booking_buttons #varsimple_booking_btn.fired:before { opacity: 1; transform: rotate(-45deg); }
header #booking_buttons #varlink_quotes-cnt {margin-top: 0; margin-left: 10px; }
header #booking_buttons #varlink_quotes-cnt a {padding: 20px 25px; }

.alliance_insurance_cnt { display: block; position: absolute; bottom: 20px; right: 20px; }
.alliance_insurance {width: 570px; margin: 0 auto; padding: 15px; background-color: #fff; display: flex; justify-content: space-between; font-family: "Avenir-Book"; font-size: 15px; color: #141414; text-align: left; line-height: 15px; letter-spacing: 0;}
.alliance_insurance a { color: #E20119 }
.alliance_insurance p {margin-bottom: 6px}
.alliance_insurance strong {color: #000; font-size: 18px; line-height: 18px}
.alliance { width: auto!important; height: auto!important; min-height: unset!important; object-fit: contain!important; }

/* Language */
header #contacts #language {height: 40px; width: 80px; overflow: hidden; position: absolute; top: 27px; left: 0; padding: 10px; transition: .3s }
header #contacts #language.fired{height: auto; background-color: #005BA9;}
header #contacts #language:after {top: 0; right: -60px; }
header #contacts #language li.active {bottom: inherit; top: 8px; left: 10px; margin: 0}
header #contacts #language li.active a {width: 18px;}
header #contacts #language li.active a:before {right: -35px}
header #contacts #language li {float: none; margin-top: 18px; position: relative;}
header #contacts #language li a { font-family: "Avenir-Medium"; font-size: 16px; color: #FFFFFF; text-transform: uppercase; padding-left: 15px; } /* fix */
header #contacts #language li#menu_lang_it a:after {position: absolute; content: ''; left: -6px; top: 1px; width: 18px; height: 12px; background-image: url('../images/flags/it.png'); background-size: contain; background-repeat: no-repeat;}
header #contacts #language li#menu_lang_en a:after {position: absolute; content: ''; left: -6px; top: 1px; width: 18px; height: 12px; background-image: url('../images/flags/en.png'); background-size: contain; background-repeat: no-repeat;}
header #contacts #language li#menu_lang_de a:after {position: absolute; content: ''; left: -6px; top: 1px; width: 18px; height: 12px; background-image: url('../images/flags/de.png'); background-size: contain; background-repeat: no-repeat;}



/* menu_open  */
#menu_open { left: calc(100%); padding: 50px 40px 40px 40px; transition: .6s; z-index: 9999 }
#menu_open.fired{left: calc(100% - 390px);}
#menu_open #menu2 ul li.active a {padding-bottom: 8px;}
#menu_open #menu2 ul li {margin-bottom: 15px;}
#menu_btn {transition: .3s; z-index: 99998;}
#menu_btn.fired{ background-color: transparent; }
#menu_btn.fired span{ font-size: 0;}
#menu_btn span:before{ transition: .3s}
#menu_btn span:after{ transition: .3s}
#menu_btn.fired span:before {transform: rotate(-45deg); width: 30px;}
/* #menu_btn span:after { width: 44px; height: 3px; background-color: #FFFFFF; position: absolute; left: 0; right: 0; bottom: -6px; content: ""; transition: .3s} */
#menu_btn span:after { width: 44px; height: 3px; background-color: #FFFFFF; position: absolute; left: 0; right: 0; bottom: -15px; content: ""; transition: .3s}

#menu_btn span.fixbar:after {display: none;}
#menu_btn span.fixbar:before{left: -44px; bottom: -25px}
#menu_btn.fired span.fixbar:before{display: none;}

#menu_btn.fired span:after {transform: rotate(45deg); width: 30px; height: 3px; background-color: #FFFFFF; position: absolute; left: 0; right: 0; bottom: -6px; content: "";}
#menu_open .logo {margin-bottom: 15px;}
#menu_open .logo img {width: 152px!important; height: inherit!important;}

#overlay {background-color: rgba(0,0,0,.7); position: fixed; top: 0; left: 100%; width: 100%; height: 100%; z-index: 998; opacity: 0; transition: .6s; }
#overlay.fired{opacity: 1; left: 0}

/* Slideshow */
#slideshow-cnt img { width: 100%; object-fit: cover; /* max-height: 820px; */ height: 89vh}
.slick-dots li { margin-right: 6px; }
.slick-dots li button { background-color: transparent; }

#varsimple_book_from_site { padding: 8px 8px 8px 0; margin-bottom: 10px; }

/*
#booking-cnt.scrolled{ opacity: 0; position: fixed; width: 100%; top: -120px; left: 0; width: 100%; background-color: #2391B2; z-index: 996; height: 240px; transition: .6s }
#booking-cnt.scrolled.fired{opacity: 1; top: 120px;}
#booking-cnt.scrolled #booking { background-color: #2391B2; margin: 0 auto; bottom: 0 }

*/

#booking-cnt{ opacity: 0; position: fixed; width: 100%; top: -120px; left: 0; width: 100%; background-color: #2391B2; z-index: 996; height: 500px; transition: .6s; display: flex; flex-direction: column; }
#booking-cnt.fired{opacity: 1; top: 120px;}
#booking-cnt #booking { background-color: #2391B2; margin: 0 auto; bottom: inherit; top: unset; position: relative; }

/* Booking engine */
#booking form .form-title {display: none;}
#booking { width: 590px; left: inherit; padding: 20px 20px 30px 20px; }
#booking.scrolled{ position: fixed; top: 0; bottom: inherit; left: 0; right: 0; }
#booking .form.field.date .date_from_html .year{ display: none; }
form .caption-fields .field.element_12, form .caption-fields .field.element_13{ /* display: none; */ }
#booking .form.field.date { margin: 8px; padding: 0; width: 100px; }
#booking .form.field.select { margin: 8px; padding: 0; width: 100px; }
#booking .form.field.date .form_element_title { padding: 8px; }
#booking .form.field.select .form_element_title { padding: 8px; }
#booking .form.field.date .date_from_html .month_name { padding: 3px; }
#booking .form.field.element_14 .form_element_title {background-color: transparent;}
#booking .form.field.element_14 { clear: both; position: relative; bottom: -16px; }
#booking .form.field.element_14.text {width: inherit;}
#booking .form.field.element_14 a {font-size: 10px}
#booking .form.field.element_14 a:before { padding-right: 8px; }
#booking input[type="submit"] { position: absolute; float: right; padding: 15px; width: 160px; right: 0; bottom: 6px; }
#booking .form.field.select .form_select .elements_list {padding: 10px;}
#booking .form.field.select .form_select .elements_list .option:first-of-type{display: none;}
#booking .form.field.select .form_select .elements_list .option {margin-bottom: 8px}
#booking .form.field.text {padding: 8px; width: 50%}
#booking .form.field.text .form_element_title {padding: 8px; margin-bottom: 0}
#booking .form.field.text input { text-transform: inherit; }
#booking .form.field.select .form_select:after { display: none; }
#booking .form.field.select .form_select .current_value:after { clear: both; display: block; font-family: "FontAwesome"; font-size: 16px; color: #FFFFFF; text-transform: lowercase; text-align: center; line-height: 1; letter-spacing: 0; content: ""; }
#booking .form.field.select .form_select .elements_list {top: 61px; background-color: #015ba9;}

/* Home intro */
#intro { float: right; width: 590px; /* top: -90px; */ top: 0; padding: 40px; z-index: 2; position: relative; margin: 0 }
#intro #varsimple_show_popup { padding: 15px 25px; display: inline-block; margin-top: 30px; }

/* Home Popup */
#home_popup{opacity: 0; overflow: scroll; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0,0,0,.8); transform: scale(0); transition: .6s; z-index: -1 }
#home_popup-cnt{max-width: 820px; margin-top: 90px; margin: 90px auto 0; position: relative;}
#home_popup.fired{opacity: 1; transform: scale(1); z-index: 99999}
.close_btn:before {transform: rotate(45deg);top: 13px;right: inherit;left: 0;}
.close_btn:after {transform: rotate(-45deg);right:  inherit;left:  0;top: 13px;}

/* Template9 */
#template9 .row .box .elem .caption-cnt .caption .title {padding: 20px; max-width: 440px; margin: 0 auto}
#template9 .row .box .elem .caption-cnt .caption-alt {padding: 30px;}
#template9 .row .box .elem .caption-cnt .caption-alt .ztextarea ul {padding: 20px; list-style-type: none;}
#template9 .row .box .elem .caption-cnt .caption-alt .ztextarea ul li{ padding-left: 18px; margin-bottom: 8px  }

/* Home Video */
#play {bottom: 40px;z-index: 1;right: 100%;}
#play:before { top: -30px; left: -90px; background-image: url(../images/icons/play.svg); background-repeat: no-repeat;     background-position: 55% 50%; cursor: pointer; }
#play #varsimple_play_video { padding-bottom: 8px; }

#home_video .close_btn{ top: 45px; right: 0; left: 0; margin: 0 auto; z-index: 99999999; position: fixed; display: none; }
#home_video.fired .close_btn{ display: block; }
#home_video .videos{ padding: 10%; position: fixed; overflow: scroll; top: 0; left: -100%; height: 100%; background-color: #000; width: 100%; z-index: 9999; margin: 0 auto; opacity: 0; transition: .6s }
#home_video.fired .videos{left: 0; opacity: 1; }

/* Offers */
#offers{ padding-top: 340px; }
.summary_section {  width: 40%; left: calc(100% - 40%); position: relative; }
#varsimple_specialoffers { padding-bottom: 8px; margin-bottom: 10px; }
#offer_summary { width: 30%; display: inline-block; padding: 90px 40px; }
#varlink_alloffers-cnt { text-align: left; margin-top: 30px; }
#varlink_alloffers-cnt a { padding: 15px 25px; text-transform: uppercase; }
#offers_display{ display: flex; max-width: 1440px; margin: 0 auto; width: 100%; }
#offer_detail { display: inline-block; width: 70%; position: relative; bottom: -60px; right: 0; }
#varsimple_bookandrelax { margin-bottom: 30px; text-transform: uppercase; }

/* template1 */
#template1 .row .box { bottom: -40px }
#template1 .row .box .elem { margin: 10px; }
#template1 .row .box .elem .caption-cnt .caption-alt { right: 20px; left: 20px; bottom: 20px; padding: 20px; background-color: rgba(255, 255, 255, .75); transition: .6s; overflow: hidden; }
#template1 .row .box .elem:hover .caption-cnt .caption-alt { background-color: rgba(255, 255, 255, 1);}
#template1 .row .box .elem .caption-cnt .caption-alt .zsimplebutton a { padding: 15px 25px; margin-top: 30px; }
#template1 .row .box .elem .caption-cnt .caption-alt .zsimplebutton { transition: .3s; opacity: 0; height: 0; position: relative; transform: scale(0); transform-origin: 0; }
#template1 .row .box .elem:hover .caption-cnt .caption-alt .zsimplebutton { opacity: 1; height: auto; transform: scale(1); }
#template1 button.slick-prev { position: absolute; right: 70px; top: -50px; left: inherit; }
#template1 button.slick-next { position: absolute; right: 10px; top: -50px; left: inherit; }

/* Section home rooms */

section#rooms { margin-top: 150px; padding-top: 90px }
#varsimple_rooms { padding-bottom: 8px; margin-bottom: 10px;}
#rooms_display{ max-width: 1440px; margin: 0 auto; }

/* template2 */
#template2 {margin-top: 90px}
#template2 .row .box .elem .caption-cnt .caption {z-index: -1; width: calc(100% - 624px + 120px);}
#template2 .row .box .elem .caption-cnt .caption-alt .title {padding-left: 150px;}
#template2 .row .box .elem .caption-cnt .caption-add .ztextarea.g2 {margin-bottom: 20px;}
#template2 .row .box .elem .caption-cnt .caption-add .ztextarea.g3 {margin-bottom: 30px;}
#template2 .row .box .elem .caption-cnt .caption-add .zsimplebutton {margin-top: 30px;}
#template2 .row .box .elem .caption-cnt .caption-add .zsimplebutton a {padding: 12px 35px;}
#template2 .row .box .elem .caption-cnt .caption-add {padding: 40px;}
#template2 .group-cnt{position: absolute; top: 40px; right: 0; width: 624px;}
#template2 button.slick-prev:before {bottom: 0; left: 0; right: 0; line-height: 50px;}
#template2 button.slick-next:before {bottom: 0; left: 0; right: 0; line-height: 50px;}
#template2 .row .box .elem .caption-cnt .caption-add .zinput {display: inline-block; margin: 15px 15px 15px 0;}
#template2 .row .box .elem .caption-cnt .caption-add .zinput .fieldkey{top: -34px; cursor: pointer; opacity: .5; transition: .3s}
#template2 .row .box .elem .caption-cnt .caption-add .zinput .fieldkey.fired{opacity: 1}
#template2 .row .box .elem .caption-cnt .caption-add .zinput .fieldvalue{ position: absolute; left: 0; top: 5px; opacity: 0; transition: .3s;  }
#template2 .row .box .elem .caption-cnt .caption-add .zinput .fieldvalue.fired{ opacity: 1;  }
#template2 .row .box .elem .caption-cnt .caption-add .detail-cnt{border-top: 1px solid #71D759; margin-top: 50px; position: relative;}
#template2 .row .box .elem .caption-cnt .caption-add .zinput .fieldkey.f5{left: 0}
#template2 .row .box .elem .caption-cnt .caption-add .zinput .fieldkey:before{left: 0; top: 17px; transition: .3s; width: 0;}
#template2 .row .box .elem .caption-cnt .caption-add .zinput .fieldkey.fired:before { width: 100%; }

/* Why booking */
#whybooking {background-image: url('../images/bg/bg_why.png'); background-repeat: no-repeat; background-position: 100%; margin-top: 90px; margin-bottom: 90px;}
/* #whybooking img {position: absolute; top: 50%; margin-left: 70px;} */
#why-cnt {max-width: 460px; position: relative; left: calc(50% - 420px); padding: 25px; }
#varlink_quotes-cnt {margin-top: 30px; }
#varlink_quotes-cnt a {padding: 12px 35px}

/* template3 */
#template3 .row .box .elem .caption-cnt .caption-alt .title { position: relative; width: 140%; padding-top: 20px;}
#template3 .row .box .elem .caption-cnt .caption {position: absolute; top: 50%; right: -470px;}


/* Section Experience */
#experience {padding-top: 190px; height: 640px; background-image: url('../images/bg/bg_experience.jpg'); background-repeat: no-repeat; background-size: cover; }
#varsimple_experience {padding-bottom: 8px; margin-bottom: 10px;}
#vareditor_experience {padding-right: 15px}

/* Template4 */
#template4 {margin: 50px auto 90px; }
#template4 button.slick-prev:before {bottom: 0; left: 0; right: 0; line-height: 50px;}
#template4 button.slick-next:before {bottom: 0; left: 0; right: 0; line-height: 50px;}
#template4 .row .box .elem {margin: 40px 15px 15px; position: relative; top: 0; transition: .3s}
#template4 .row .box .elem .caption-cnt .caption-alt {padding: 40px;}
#template4 .row .box .elem .caption-cnt .caption-alt .zsimplebutton a {padding: 12px 35px; text-transform: uppercase;}
#template4 button.slick-next {right: -120px; bottom: 220px;}
#template4 button.slick-prev {right: -60px; bottom: 220px;}
#template4 .row .box .elem:hover {border-color: #E7DCBD; top: -40px}

/* Spiaggia privata */
#private_beach{margin-top: 350px;}

/* Template5 */
#template5 .row .box .elem .caption-cnt .caption-alt {padding: 25px;}
#template5 .row .box .elem .caption-cnt .caption-alt .title a {padding-bottom: 8px; margin-bottom: 10px;}
#template5 .row .box .elem .caption-cnt .caption-alt .ztextarea.g2 {margin-bottom: 20px;}
#template5 .row .box .elem .caption-cnt .caption-alt .zsimplebutton a {padding: 12px 35px; margin-top: 20px;}
#template5 .row .box .elem .caption-cnt .caption img {height: 620px; object-fit: cover}

/* Sezione miniclub */
#miniclub{padding-top: 60px; height: 640px;}
#varsimple_miniclub {padding-bottom: 8px; margin-bottom: 10px;}

/* template6 */
#template6{margin-top: 60px;}
#template6 .row .box .elem .caption-cnt .caption {padding: 60px;}
#template6 .row .box .elem .caption-cnt .caption .title a {text-transform: uppercase;}
#template6 .row .box .elem .caption-cnt .caption .zsimplebutton a {padding: 12px 35px; margin-top: 30px;}

/* Section restaurant */
#restaurant {margin-top: 150px; background-image: url('../images/bg/bg_restaurant.jpg'); background-position: 15% 50%; background-repeat: no-repeat; background-size: inherit; height: 1200px;}
#varsimple_restaurant {padding-bottom: 8px; margin-bottom: 10px;}
#vareditor_restaurant2 {max-width: 490px; margin: 100px 0 0 60px;}

/* template7 */
#template7 {max-width: 920px;}
#template7 .row .box .elem .caption-cnt .caption-alt {max-width: 490px; padding: 60px;}
#template7 .row .box .elem .caption-cnt .caption-alt .title a {text-transform: uppercase;}
#template7 .row .box .elem .caption-cnt .caption-alt .zsimplebutton a {margin-top: 30px; padding: 12px 35px;}
#template7 .slick-list { overflow: visible; }
#template7 button.slick-prev { width: 50px; height: 50px; background-color: #05ACD6; text-align: center; z-index: 270; position: absolute; right: 60px; bottom: 121px; }
#template7 button.slick-prev:before { display: block; font-family: "FontAwesome"; font-size: 30px; color: #FFFFFF; text-transform: lowercase; text-align: center; line-height: 50px; letter-spacing: 0; z-index: 360; position: absolute; right: 0px; left: 0; bottom: inherit; top: 0; content: "\f104"; }
#template7 button.slick-next { width: 50px; height: 50px; background-color: #05ACD6; text-align: center; z-index: 120; position: absolute; right: 0px; bottom: 121px; }
#template7 button.slick-next:before { display: block; font-family: "FontAwesome"; font-size: 30px; color: #FFFFFF; text-transform: lowercase; text-align: center; line-height: 50px; letter-spacing: 0; z-index: 210; position: absolute; right: 17px; bottom: inherit; top: 0; content: "\f105"; }
#template7 button.slick-prev { position: absolute; left: 0; top: -60px;  }
#template7 button.slick-next { position: absolute; left: 60px; top: -60px;  }


/* Wedding section */
#wedding {margin-top: 60px; height: 520px; background-image: url('../images/bg/bg_wedding.jpg'); background-repeat: no-repeat; background-size: cover; }

/* Template8 */
#template8 .row .box .elem .caption-cnt .caption {  width: 40%; left: calc(100% - 40%); position: relative; top: -160px; }
#template8 .row .box .elem .caption-cnt .caption .title a {padding-bottom: 8px; margin-bottom: 10px;}
#template8 .row .box .elem .caption-cnt .caption .zsimplebutton a {padding: 12px 35px; margin-top: 30px;}
#template8 .row .box .elem .caption-cnt .caption .ztextarea {padding-right: 15px;}

/* newsletter */
#varsimple_newsletter {margin-bottom: 10px}
#newsletter{text-align: center; padding: 140px 15px 90px; background-color: #f8f8f8}
#newsletter #contact_form {max-width: 720px; width: 100%; display: inline-block; }
#newsletter #contact_form form {text-align: center; padding: 25px; margin-top: 30px}
#newsletter  #contact_form form .caption-fields .field {width: 100%}
#newsletter form .form-title {display: none;}
#newsletter #contact_form form .newsletter {text-align: center;}
#newsletter #contact_form form .caption-fields .field input {background-color: #fff; border-bottom: 2px solid #02ABD6; }
#newsletter #contact_form form input[type="submit"] {padding: 15px 25px; display: inline-block;}
#newsletter #contact_form form .caption-fields {text-align: center;}

/* Section certification */
#certification{padding: 60px 40px 60px 40px;}
#certification ul {padding-left: 0; display: block;}
#certification ul li {margin: 30px;}

#certificate {display: inline-flex; align-items: flex-end;}
#varscript_certificati{display: inline-flex; align-items: center;}


.certificate_section.top_fix { position: absolute; width: 50vw; background-color: transparent; z-index: 2; right: 100%; top: 0; display: flex; justify-content: flex-end; }

/* Vetrina Camere */
.showcase_rooms {padding: 60px 0;}
.showcase_rooms #container_name {padding-bottom: 8px; margin-bottom: 10px;}
#showcase_intro{ max-width: 820px; margin: 60px auto;  }
#room_services{margin-bottom: 60px; background-image: url('../images/bg/bg_rooms_services.jpg'); background-repeat: no-repeat; background-size: cover; height: 300px;}
#vareditor_all_services {position: relative; top: 22%}
#vareditor_all_services ul { column-count: 3; column-gap: 90px; max-width: 820px; margin: 0 auto; list-style-type: none; padding-left: 0; border: 1px solid #141414; padding: 40px 40px 20px 40px; column-rule: 1px solid #141414; }
#vareditor_all_services ul li{margin-bottom: 20px;}

/* template10 */
#template10 {margin: 0 auto; max-width: 1200px;}
#template10 .row .box .elem {margin-bottom: 40px;}
#template10 .row .box .elem .caption-cnt .caption-alt {padding: 40px; width: calc(50% - 20px); }
#template10 .row .box .elem.odd .caption-cnt .caption-alt { right: 20px; left: inherit; }
#template10 .row .box .elem .caption-cnt .caption-alt .ztextarea.g2 {margin-bottom: 15px;}
#template10 .row .box .elem .caption-cnt .caption-alt .zsimplebutton a {padding: 12px 45px; margin-top: 30px;}
#template10 .row .box .elem .caption-cnt .caption-alt .zinput {display: inline-block; margin: 15px 15px 15px 0;}
#template10 .row .box .elem .caption-cnt .caption-alt .zinput .fieldkey{top: -20px; cursor: pointer; opacity: .5; transition: .3s}
body.en #template10 .row .box .elem .caption-cnt .caption-alt .zinput .fieldkey.f6 { left: 110px }
#template10 .row .box .elem .caption-cnt .caption-alt .zinput .fieldkey.fired{opacity: 1}
#template10 .row .box .elem .caption-cnt .caption-alt .zinput .fieldvalue{ position: absolute; left: 0; opacity: 0; transition: .3s;  }
#template10 .row .box .elem .caption-cnt .caption-alt .zinput .fieldvalue.fired{ opacity: 1;  }
#template10 .row .box .elem .caption-cnt .caption-alt .detail-cnt{border-top: 1px solid #71D759; margin-top: 50px; position: relative;}
#template10 .row .box .elem .caption-cnt .caption-alt .zinput .fieldkey.f5{left: 0}
#template10 .row .box .elem .caption-cnt .caption-alt .zinput .fieldkey:before{left: 0; top: 17px; transition: .3s; width: 0;}
#template10 .row .box .elem .caption-cnt .caption-alt .zinput .fieldkey.fired:before { width: 100%; }
#template10 .row .box .elem .caption-cnt .caption img {object-fit: cover; height: 620px;}

/* Vetrina standard*/
.showcase #page_top #container_name { padding-bottom: 8px; margin-bottom: 10px; }
.showcase #showcase_display {width: 100%; max-width: 1440px; margin: 0 auto;}

/* Template12 */
#template12 .row .box { bottom: -40px }
#template12 .row .box .elem { padding: 10px; float: left; width: 25% }
#template12 .row .box .elem .caption-cnt .caption-alt { right: 20px; left: 20px; bottom: 20px; padding: 20px; background-color: rgba(255, 255, 255, .75); transition: .6s; overflow: hidden; }
#template12 .row .box .elem:hover .caption-cnt .caption-alt { background-color: rgba(255, 255, 255, 1);}
#template12 .row .box .elem .caption-cnt .caption-alt .zsimplebutton a { padding: 15px 25px; margin-top: 30px; }
#template12 .row .box .elem .caption-cnt .caption-alt .zsimplebutton { transition: .3s; opacity: 0; height: 0; position: relative; transform: scale(0); transform-origin: 0; }
#template12 .row .box .elem:hover .caption-cnt .caption-alt .zsimplebutton { opacity: 1; height: auto; transform: scale(1); }

/* Template13 */
#template13 .row .box { bottom: -40px }
#template13 .row .box .elem { padding: 10px; float: left; width: 25% }
#template13 .row .box .elem .caption-cnt .caption-alt { right: 20px; left: 20px; bottom: 20px; padding: 20px; background-color: rgba(255, 255, 255, .75); transition: .6s; overflow: hidden; }
#template13 .row .box .elem:hover .caption-cnt .caption-alt { background-color: rgba(255, 255, 255, 1);}
#template13 .row .box .elem .caption-cnt .caption-alt .zsimplebutton a { padding: 15px 25px; margin-top: 30px; }
#template13 .row .box .elem .caption-cnt .caption-alt .zsimplebutton { transition: .3s; opacity: 0; height: 0; position: relative; transform: scale(0); transform-origin: 0; }
#template13 .row .box .elem:hover .caption-cnt .caption-alt .zsimplebutton { opacity: 1; height: auto; transform: scale(1); }

/* fix */
#template13 .row .box {text-align: center;}
#template13 .row .box .elem {width: 33.333%; float: none; display: inline-block;}


/* Pagina standard */
#page #page_top #page_name {padding-bottom: 8px; margin-bottom: 10px;}
#page #page_top {padding: 60px 0;}
#page #content {padding: 40px 15px; }
#page #content .text {margin-bottom: 30px;}
#page #page_top #varsimple_show_gallery {padding: 12px 35px; text-transform: uppercase;}

#page #page_top .zlink a {padding: 12px 35px; text-transform: uppercase;}

#page.appartamento .apartment_book_btn { display: block; text-align: left; }
#page.appartamento .apartment_book_btn a { display: inline-block; border: 2px solid #025AA8; background-color: #025AA8; font-family: "Futura-Bold"; font-size: 12px; color: #FFFFFF; text-align: center; line-height: 1; letter-spacing: 0; cursor: pointer;padding: 12px 35px; text-transform: uppercase; }
#appartamento_btn_dest { margin: 30 auto 30px 0;  }
.col-md-3 #appartamento_btn_dest { margin: 30px auto 40px 0px; }
.col-md-3 #appartamento_btn_dest a { width: 100%; }

/* Album */
.album {display: inline-block; padding: 15px; margin: 20px;}
.album img { -webkit-clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%); clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%); transform: scale(.7); transition: .6s;}
.album:hover img{transform: scale(.8);}

#album_page .summary_section { padding: 60px 0 }
#album_page span.title {display: block; padding-bottom: 8px}
#album_page #media {margin-top: 90px; margin-bottom: 90px; }
#album_page #media img {width: 33.333%; float: left; padding: 10px;}

/* Gallery standard page */
#page_gallery {padding: 40px; background-color: #F5F5F5;}
#page_gallery .gallery li {width: 33.333%; float: left; padding: 10px;}


/* Interna Camera */
.room #content #disposition {padding: 30px; margin-top: 40px; }
.room #content #disposition .zinput:first-of-type{margin-bottom: 30px;}
.room #content #disposition .zinput .fieldkey {padding-bottom: 8px;}
.room #content #amenities {margin: 40px auto;clear: both; padding-top: 20px;}
.room #content #amenities .zcheckbox .fieldkey {padding-bottom: 8px; margin-bottom: 30px;}
.room #content #amenities .zcheckbox .fieldvalue {padding-left: 20px; margin-bottom: 12px}
.room #content #amenities .zcheckbox .fieldvalue:before {bottom: inherit; top: 3px}

/* Form camere */
.room .form_title{ display: block;}
#page #content form h2 {color: #fff!important}
#room_form{left: 0; top: 0; padding: 10px 0; margin-top: 40px;}
#room_form form {margin: 40px 0 40px 50px; padding: 30px}
#room_form form:before {left: -30px; }
#room_form form .caption-fields .field.date .date_from_html {padding: 10px; cursor: pointer;}
#room_form form .caption-fields .form input[type="phone"]::-webkit-input-placeholder {color: #FFFFFF}
.intl-tel-input.allow-dropdown.separate-dial-code .selected-dial-code {color: #fff;}
#room_form form .caption-fields .field.textarea {clear: both;}
#room_form form .caption-fields .field.textarea textarea {height: 150px; padding: 10px;}
#room_form form .caption-fields input[type="submit"] {padding: 12px 35px; background-color: transparent;}
#page #content #room_form .text {margin-bottom: inherit;}
#room_form form .caption-fields .field.select .form_select .current_value {padding: 10px; cursor: pointer;}
#room_form form .caption-fields .field.select .form_select .elements_list {top: 100%; max-height: 240px; overflow-y: scroll;}

form .caption-fields .field.select .form_select .elements_list::-webkit-scrollbar-track { -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3); border-radius: 10px; background-color: #71D759; }
form .caption-fields .field.select .form_select .elements_list::-webkit-scrollbar { width: 12px; background-color: transparent; }
form .caption-fields .field.select .form_select .elements_list::-webkit-scrollbar-thumb { border-radius: 10px; -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,.3); background-color: #02ABD6; }



#room_form form .caption-fields .field.select .form_select .elements_list .option {margin: 6px 0}
#room_form form .caption-fields .field.select .form_select::after { z-index: 1 }

#room_form form .caption-fields .field.checkbox .form_checkbox {padding: 12px}
#room_form form .caption-fields .field.checkbox .form_checkbox .checkbox { margin: 10px 40px; cursor: pointer; }
#room_form form .caption-fields .field.checkbox .form_checkbox .checkbox .check {left: -40px; top: -5px; transition: .3s}
#room_form form .caption-fields .field.checkbox .form_checkbox .checkbox.checked .check {left: -40px}
#room_form form .caption-fields .field.checkbox .form_checkbox .checkbox .check:before {top: 0; border-radius: 100%; left: 0; transition: .5s}
#room_form form #showprivacy a {display: inline-block;}

form .caption-fields .form.radio label { color: #fff; display: inline-block; width: auto;}
form .caption-fields .form { float: none; display: inline-block; }

/* fix form richiedi informazioni */
#room_form form#form_7 .caption-fields .field.element_1.text,
#room_form form#form_7 .caption-fields .field.element_-2.email { width: calc( 50% - 2px )  }
#room_form form .caption-fields .field { width: calc(33.333% - 3px); }
#room_form form#form_19 .caption-fields .field.element_1.text,
#room_form form#form_19 .caption-fields .field.element_-2.email { width: calc( 50% - 2px )  }
#room_form form#form_19 .caption-fields .field.element_4.number,
#room_form form#form_19 .caption-fields .field.element_12.number { width: calc(17% - 6px) }


/* Gallery camere */
#inner_gallery .gallery button.slick-prev:before {bottom: 0; left: 0; right: 0; line-height: 50px;}
#inner_gallery .gallery button.slick-next:before {bottom: 0; left: 0; right: 0; line-height: 50px;}

/* Offerte pagine interne */
body.no_offers #page #offers {display: none;}
#page #offers { padding-top: 50px; margin-bottom: 190px }
#page #offer_detail {width: 100%}
#template11 .row .box { bottom: -40px }
#template11 .row .box .elem { margin: 10px; }
#template11 .row .box .elem .caption-cnt .caption-alt { right: 20px; left: 20px; bottom: 20px; padding: 20px; background-color: rgba(255, 255, 255, .75); transition: .6s; overflow: hidden; }
#template11 .row .box .elem:hover .caption-cnt .caption-alt { background-color: rgba(255, 255, 255, 1);}
#template11 .row .box .elem .caption-cnt .caption-alt .zsimplebutton a { padding: 15px 25px; margin-top: 30px; }
#template11 .row .box .elem .caption-cnt .caption-alt .zsimplebutton { transition: .3s; opacity: 0; height: 0; position: relative; transform: scale(0); transform-origin: 0; }
#template11 .row .box .elem:hover .caption-cnt .caption-alt .zsimplebutton { opacity: 1; height: auto; transform: scale(1); }
#template11 button.slick-prev { position: absolute; right: 70px; top: -50px; left: inherit; }
#template11 button.slick-next { position: absolute; right: 10px; top: -50px; left: inherit; }

/* Submenu */
#varsimple_interest {padding-bottom: 8px; margin-bottom: 10px; }
.submenu {padding: 10px 15px;}
.submenu #tree > li.active {display: none;}
.submenu #tree > li {margin-bottom: 15px; border-bottom: 1px solid rgba(255,255,255,.25); padding-bottom: 15px;}
.submenu #tree > li:last-of-type{ border-bottom: 0; padding-bottom: 0 }

/* mappa */
.gm-style h2 {padding-bottom: 8px; margin-bottom: 10px; text-transform: uppercase;}

#page .videos .video { margin-bottom: 30px }



/* footer */
footer #top_footer {padding: 40px}

/* Social */
footer #top_footer #social ul {padding-left: 0; margin-left: -30px}
footer #top_footer #social ul li a {margin: 16px; position: relative;}
#social ul li a:before {z-index: 2!important}
footer #top_footer #social ul li #varlink_facebook-cnt a:before {content: '\f09a'; line-height:30px; top: 0; left: 0;}
footer #top_footer #social ul li #varlink_instagram-cnt a:before {content: '\f16d'; line-height:30px;top: 0; left: 0;}
footer #top_footer #social ul li #varlink_tripadvisor-cnt a:before {content: '\f262'; line-height:30px;top: 0; left: 0;}
footer #top_footer #social ul li #varlink_twitter-cnt a:before {content: '\f099'; line-height:30px;top: 0; left: 0;}
footer #top_footer #social ul li #varlink_flickr-cnt a:before {content: '\f16e'; line-height:30px;top: 0; left: 0;}
footer #top_footer #social ul li #varlink_gplus-cnt a:before {content: '\f0d5'; line-height:30px;top: 0; left: 0;}
footer #top_footer #social ul li #varlink_youtube-cnt a:before {content: '\f167'; line-height:30px;top: 0; left: 0;}
#varlink_holidaycheck-cnt a:before { content: ''; background-image: url(../images/icons/holidaycheck.svg); background-repeat: no-repeat; cursor: pointer; position: absolute; top: 13px }

#social ul li .varlink a:before {font-size: 22px!important; height: 35px!important; width: 35px!important; line-height: 35px!important}

footer #footer_contacts {background-image: url('../images/bg/bg_footer_contacts.svg'); background-repeat: no-repeat; height: 210px; background-size: cover; background-position: center; padding: 90px 0;}
footer #footer_contacts #col2, footer #footer_contacts #col3 {padding-left: 130px}
footer #footer_contacts .varsimple {margin-bottom: 10px;}
footer #footer_contacts .varlink a{padding-left: 20px}
footer #footer_contacts .varlink a:before{ top: -2px; z-index: 2!important }


footer #footer_credits{padding: 20px; text-align: center;}
footer #footer_credits a{ color: #fff }
footer #top_footer #social ul li a {margin: 18px!important;}
footer #footer_credits #menu3 {display: inline-block;}
footer #footer_credits #menu3 ul li {margin: 5px 8px}

#bando { padding: 10px 25px }
#bando img {height: auto;}

/* fix */
#booking-cnt {z-index: -1}
#booking-cnt.fired {z-index: 996 }
.section_green_link {margin-top: 30px}
.section_green_link a{padding: 15px 25px}
#template2 .row .box .elem .caption-cnt .caption-add .zsimplebutton a {border-color: #71D759; background-color: #71D759}
#template10 .row .box .elem .caption-cnt .caption-alt .zsimplebutton a {border-color: #71D759; background-color: #71D759}

/* CRO */
#form_16 .group_age { display: block; clear: both; }
#contact_form form#form_16  .caption-fields .group_age .field.select { width: 10%; }
#contact_form form .caption-fields .field.number {width: 18%}
#contact_form form .caption-fields .field.select{width: 19%}
#form_16 .group_age .field.select { display: none; }
#form_16 .group_age .field.select.show { display: inline-block; }
#form_16 .caption-fields input[type="submit"] { clear: both; }

body.body_home .header_alert { position: absolute; top: -30px; left: 0; width: 100%; height: 30px; background-color: #02ABD6; display: flex; justify-content: center; align-items: center; }
body.body_home .header_alert a { color: #FFFFFF; font-size: 16px; }
body.body_home header { top: 30px; }
body.body_home header.scrolled { top: 0px; }
body.body_home header.scrolled .header_alert { display: none; }
@media (max-width: 767px) {
	body.body_home .header_alert { text-align: center; }
	body.body_home .header_alert a { font-size: 12px; text-align: center; }
}

#infosplash_container { height: 90%; }
#infosplash_content { /* border: 10px solid #02ABD6; */ }
#infosplash .ztemplate .caption-alt .title a { /* color: #02ABD6; */ }
#infosplash_content img { width: calc(100% / 4 * 3) /* immagine ridotta di 1/4 */}

header #booking_buttons.appartamento form { display: none; }
header #booking_buttons form .form-title { display: none; }
header #booking_buttons.appartamento #varlink_quotes-cnt { margin-left: 0px; }
header #booking_buttons form .caption-fields input[type="submit"] { display: inline-block; background-color: #005BA9; font-family: "Futura-Bold"; font-size: 12px; color: #FFFFFF; text-transform: uppercase; text-align: center; line-height: 1; letter-spacing: 0; cursor: pointer; padding: 20px 25px; transition: .3s; position: relative; }
header #booking_buttons form:before { position: absolute; content: ''; width: 25px; height: 1px; background-color: #fff; top: 25px; left: 0; right: 0; margin: 0 auto; opacity: 0; transition: .3s; }
header #booking_buttons form:after { position: absolute; content: ''; width: 25px; height: 1px; background-color: #fff; top: 25px; left: 0; right: 0; margin: 0 auto; opacity: 0; transition: .3s }

/* FIX Tripadvisor */
#varscript_certificati .TA_cdsscrollingravenarrow img { height: 53px; max-width: 76px; }

/* Configurazione per RWD */


/* Responsive */
@media (max-width: 1366px){
	#play{width: 50%}
	#template4 button.slick-prev {top: -40px; left: 15px;}
	#template4 button.slick-next {top: -40px; left: 75px;}
	#template4 .row .box .elem:hover{top: -20px;}

	#template2 .row .box .elem .caption-cnt .caption img {height: 550px; object-fit: cover;}
	#template2 button.slick-prev, #template2 button.slick-next  {bottom: 0}

	#page.room #content .col-md-offset-2 {margin-left: 6.33333%} /* fix */
	#page.room #content .col-md-6 {width: 60%;} /* fix */
}

@media (max-width: 1240px){
  header #contacts #varlink_tel-cnt a { font-size: 0}
  header #contacts #varlink_tel-cnt a:before { top: -18px}
  .button_model_1 a { font-size: 9px}
  header #booking_buttons form .caption-fields input[type="submit"] { font-size: 9px}
  header #booking_buttons #varlink_quotes-cnt a { font-size: 9px}
}

@media (max-width: 1200px){
	#slideshow-cnt img {height: auto; min-height: 350px}
	#room_form.room form .caption-fields .field.element_1{ width: 100% }
	#room_form.room form .caption-fields .field.element_2{ width: 50% }
	#room_form.room form .caption-fields .field.element_3{ width: 50% }
	form .caption-fields .form, form .caption-fields .form.textarea { padding: 0 5px 20px 5px;}

	section#rooms {margin-top: 0;}

	#template12 .row .box .elem {width: 33.3333%}
	#template13 .row .box .elem {width: 33.3333%}


}

@media (max-width: 1145px){/* fix DE */


	body.de header #booking_buttons {top: -2px; opacity: 1; position: fixed; bottom: 0; top: initial!important; width: 100%; height: auto; left: 0; right: 0; margin: 0 auto; display: inline-block; text-align: center; background-color: #dedede; }
	body.de header #booking_buttons #varlink_quotes-cnt {display: inline-block!important;}

}

@media (max-width: 1100px){
	#intro {width: 100%; float: none; top: 0; padding: 15px}
	#play{position: relative; width: calc(100% - 50%); right: 0; bottom: 0; margin: 90px 0; left: 55%;}
	.certificate_section.top_fix {position: relative; right: 0; width: 100%; justify-content: center;}
	#offers {padding: 15px 0 15px 0}
}



@media (max-width: 1024px){
	.not-found { position: relative; font-size: 40px; line-height: 40px;  }
	.not-found:before { top: 20px }

	#play {width: 20%;}
	#template2 .group-cnt {width: 550px}
	#template2 .row .box .elem .caption-cnt .caption {width: 100%}
	#template2 .row .box .elem .caption-cnt .caption-alt .title { padding: 25px 15px 25px 35px; background-color: rgba(255, 255, 255,.8); margin-bottom: 0 }
	#template2 .row .box .elem .caption-cnt .caption-add {background-color: rgba(5,172,214,.8);}
	#template2 button.slick-prev, #template2 button.slick-next {bottom: -60px;}

	#vareditor_restaurant2 {margin-left: 0; padding: 0 15px 0 0; font-size: 24px; line-height: 30px; }

	.showcase_rooms {padding: 60px 15px;}

	#template13 .row .box .elem {width: 50%}
	header #contacts #language { width: 65px; }
	header #contacts #varlink_tel-cnt { margin-left: 0px; }
	header #contacts .icon_cnt #varlink_facetime-cnt { display: none; }
}


@media (max-width: 991px){ /* fix */
	#page.room #content .col-md-6 {width: 100%}
	#page.room #content .col-md-offset-2 {margin-left: 0;}
	.submenu {margin-bottom: 40px}
	header #contacts #varlink_tel-cnt a {font-size: 0}
	header #contacts #varlink_tel-cnt a:before {top: -16px}
	header #contacts #varlink_tel-cnt { margin-left: 60px }
	header #contacts {padding-right: 6px}
	header #contacts #language:after {display: none;}

	section#experience .container{width: 100%}

	#template10 .row .box .elem .caption-cnt {display: block;}
	#template10 .row .box .elem .caption-cnt .caption-alt, #template10 .row .box .elem.odd .caption-cnt .caption-alt {position: relative; width: 100%; top: 0; left: 0; height: auto; padding: 15px;}
	#template10 .row .box .elem .caption-cnt .caption img {height: auto; object-fit: contain;}

}

@media (max-width: 979px){
	#offers_display {display: block;}
	#offer_summary {width: 100%; padding: 30px 15px}
	#offer_detail {width: 100%; bottom: 0 }

	section#rooms {margin-top: 30px}
	#miniclub {height: inherit;}
	#template6 .row .box .elem .caption-cnt .caption {width: 100%; padding: 15px;}
	#template6 .row .box .elem .caption-cnt .caption-alt {width: 100%; padding: 15px; float: none;}

	#restaurant {margin-top: 40px;}
	#template12 .row .box .elem {width: 50%}
}

@media (max-width: 890px){
	header { background-color: #02ABD6; box-shadow: 0 2px 4px 0 rgba(0,0,0,0.18); padding: 5px; height: 71px}
	header #contacts #language {top: 16px}
	header .logo img{ height: 100%; width: 200px; }
	header #contacts {height: 60px; margin-left: 5px}
	header #menu_btn {height: 60px; width: 60px; padding-left: 4px;}
	header #menu_btn span {top: -9px}
	header #booking_buttons {top: -4px; opacity: 1; background-color: transparent; }
	#slideshow-cnt {margin-top: 71px;}
	#booking-cnt{ opacity: 0; position: fixed; width: 100%; top: -120px; left: 0; width: 100%; background-color: #2391B2; z-index: 996; /* height: 330px; */ transition: .6s }
	#booking-cnt.fired{opacity: 1; top: 120px;}
	#booking-cnt #booking { background-color: #2391B2; margin: 0 auto; bottom: 0; top: 0 }
	#booking-cnt.fired {top: 71px!important;}

	#certificate {display: block;}
	#varscript_certificati {display: inline-block;}
	#varscript_certificati > div {display: block; margin: 0 auto}

	.alliance { bottom: 15px }


}



@media (max-width: 767px){

	.alliance_insurance_cnt { display: block; position: relative; bottom: unset; right: unset; width: 100%; }

	#rpro-external-widget {position: relative; display: inline-block;margin-bottom: 0 auto; text-align: center;}

	header #booking_buttons #varlink_quotes-cnt {display: inline-block;}
	header #booking_buttons {top: -2px; opacity: 1; position: fixed; bottom: 0; top: initial!important; width: 100%; height: auto; left: 0; right: 0; margin: 0 auto; display: inline-block; text-align: center; background-color: #dedede; }
	header #contacts {padding: 6px;}
	header #contacts #varlink_tel-cnt {margin-left: 80px;}

	#page #content {padding: 40px 0}

	#template10 .row .box .elem .caption-cnt .caption-alt .detail-cnt {border-top: none;}
	#template10 .row .box .elem .caption-cnt .caption-alt .zinput {display: block;}
	#template10 .row .box .elem .caption-cnt .caption-alt .zinput .fieldkey {position: relative; opacity: 1; top: 0; left: 0; margin-bottom: 20px;}
	body.en #template10 .row .box .elem .caption-cnt .caption-alt .zinput .fieldkey.f6 {left: 0}
	#template10 .row .box .elem .caption-cnt .caption-alt .zinput .fieldvalue {position: relative; opacity: 1}
	#template10 .row .box .elem .caption-cnt .caption-alt .zinput .fieldkey:before {width: 60px;}
	#template10 .row .box .elem .caption-cnt .caption-alt .zinput .fieldkey.fired:before {width: 60px;}
	#template10 .row .box .elem .caption-cnt .caption-alt .zinput .fieldkey:after {width: 100%; position: absolute; left: 0; height: 1px; background-color: #71D759; content: ''; bottom: -7px}

	#template2 .row .box .elem .caption-cnt .caption-add .detail-cnt {border-top: none;}
	#template2 .row .box .elem .caption-cnt .caption-add .zinput {display: block;}
	#template2 .row .box .elem .caption-cnt .caption-add .zinput .fieldkey {position: relative; opacity: 1; top: 0; left: 0; margin-bottom: 20px;}
	#template2 .row .box .elem .caption-cnt .caption-add .zinput .fieldvalue {position: relative; opacity: 1}
	#template2 .row .box .elem .caption-cnt .caption-add .zinput .fieldkey:before {width: 60px;}
	#template2 .row .box .elem .caption-cnt .caption-add .zinput .fieldkey.fired:before {width: 60px;}
	#template2 .row .box .elem .caption-cnt .caption-add .zinput .fieldkey:after {width: 100%; position: absolute; left: 0; height: 1px; background-color: #71D759; content: ''; bottom: -7px}


	#menu_open .logo {display: none;}
	#menu_open #menu2 ul li a, #menu_open #menu2 ul li.active a {font-size: 16px;}
	#menu_open {width: 290px}
	#menu_open.fired {left: calc(100% - 290px)}

	#slideshow-cnt .slick-dots {bottom: 15px; left: 15px;}




	.summary_section {width: calc(100% - 15px); left: 15px; margin-bottom: 100px;}

	section#rooms {margin-top: 60px; padding-top: 0;}
	#template2 {margin-top: 40px}
	#template2 .group-cnt {position: relative; top: inherit; width: 100%; padding: 15px;}
	#template2 .row .box .elem .caption-cnt .caption img {height: initial;}
	#template2 .row .box .elem .caption-cnt .caption-alt .title {padding: 15px; margin: 0;}
	#template2 .row .box .elem .caption-cnt .caption-add {padding: 15px}
	#template2 button.slick-next {top: 15px; right: 15px;}
	#template2 button.slick-prev {top: 15px; right: 75px;}

	#whybooking {margin-top: 15px; padding: 15px; margin-bottom: 0;}
	#whybooking #why-cnt {width: 100%; left: 0; max-width: none; padding: 15px;}

	#template3 .row .box .elem .caption-cnt .caption {display: none;}
	#template3 .row .box .elem .caption-cnt .caption-alt .title {padding: 0; margin: 0; width: 100%}

	#experience {padding-top: 40px; height: initial;}

	#private_beach {margin-top: 0}
	#template5 .row .box .elem .caption-cnt .caption-alt {right: 0; left: 0; margin: 0 auto; width: 100%}

	#vareditor_restaurant {padding-right: 15px;}
	#vareditor_restaurant2 {max-width: none; margin: 15px 0; }
	#template7 .row .box .elem .caption-cnt .caption-alt {max-width: none; padding: 15px}
	#template7 .row .box .elem .caption-cnt {padding: 15px}
	#template7 .row .box .elem .caption-cnt .caption {display: none;}
	#template7 button.slick-prev { left: 20px }
	#template7 button.slick-next { left: 80px }


	#template8 .row .box .elem .caption-cnt .caption {width: calc(100% - 15px); left: 15px}
	#template8 .row .box .elem .caption-cnt .caption-alt {left: 0; right: 0; margin: 15px;}

	#room_services {height: auto; padding: 15px;}
	#vareditor_all_services ul {column-count: inherit; column-gap: inherit; max-width: 820px;}

	#room_form:before {display: none;}
	#room_form form {margin: 0 auto}
	#room_form.room form .caption-fields .field.element_2 {width: 100%;}
	#room_form.room form .caption-fields .field.element_3{width: 100%;}
	#room_form form .caption-fields .field.date {width: 100%}
	#room_form form .caption-fields .field {width: 100%}
	#room_form form .caption-fields .field.select {width: 100%}
	#room_form form#form_7 .caption-fields .field.element_1.text,
	#room_form form#form_7 .caption-fields .field.element_-2.email { width: 100%  }
	#room_form form#form_19 .caption-fields .field.element_1.text,
	#room_form form#form_19 .caption-fields .field.element_-2.email { width: 100%  }
	#room_form form#form_19 .caption-fields .field.element_4.number,
	#room_form form#form_19 .caption-fields .field.element_12.number { width: calc(50% - 2px) }
	.contact_page .col-md-8{padding: 0!important;} /* fix */

	#template11 .row .box .elem .caption-cnt .caption-alt { background-color: rgba(255, 255, 255, 1);}
	#template11 .row .box .elem .caption-cnt .caption-alt .zsimplebutton { opacity: 1; height: auto; transform: scale(1); }

	#booking-cnt {height: 100%!important; top: -100%; overflow: scroll!important;}
	#booking-cnt.scrolled { top: -100%;}
	#booking-cnt.fired {top: 55px!important}
	#booking-cnt #booking{width: 100%}
	#booking .form.field.date {width: calc(50% - 16px)}
	#booking .form.field.select {width: calc(100% - 15px); float: none; clear: both;}
	#booking-cnt #booking {bottom: inherit; top: 0}
	#booking input[type="submit"] {position: relative; float: none; bottom: 0; display: block; margin: 30px auto}
	#booking-cnt.scrolled #booking {position: relative;}
	form .caption-fields {padding-bottom: 0px}
	#booking .form.field.element_14 {display: block; bottom: 0; float: none;}

	#template12 .row .box .elem {width: 100%}
	#template12 .row .box .elem .caption-cnt .caption-alt { background-color: rgba(255, 255, 255, 1);}
	#template12 .row .box .elem .caption-cnt .caption-alt .zsimplebutton { opacity: 1; height: auto; transform: scale(1); }

	#template13 .row .box .elem {width: 100%}
	#template13 .row .box .elem .caption-cnt .caption-alt { background-color: rgba(255, 255, 255, 1);}
	#template13 .row .box .elem .caption-cnt .caption-alt .zsimplebutton { opacity: 1; height: auto; transform: scale(1); }

	#bando {padding-bottom: 90px; display: block;}
	#bando .col_2 {width: 100%;}
	#bando .col_2 #varsimple_finanziamenti_ue {text-align: center;}

	footer #footer_contacts {height: inherit;}
	/* footer {padding-bottom: 70px;} */
	footer #footer_contacts .varsimple{text-align: center!important;}
	footer #footer_contacts .varlink a{text-align: center!important; margin-bottom: 30px}
	footer #footer_contacts #col2, footer #footer_contacts #col3 {padding-left: 0}
	footer #footer_contacts .varlink a:before {position: relative!important; padding-right: 10px!important}

	#page_gallery .gallery li {width: 50%}

	.alliance { left: 0; right: 0; margin: 0 auto; bottom: 45px}
	#booking-cnt #booking {margin-bottom: 200px; order: 2}
	.alliance_insurance { order: 1; width: 100%; margin-top: 20px }

  header #booking_buttons { display: flex; justify-content: center; align-items: center; padding: 0}
  header #booking_buttons form .caption-fields input[type="submit"] { padding: 8px;}
  header #booking_buttons #varsimple_booking_btn, header #booking_buttons #varlink_quotes-cnt a { padding: 8px!important; margin: 0}
  .button_model_1 a { padding: 8px; margin-right: 5px}


}



@media (max-width: 480px) {
	header {height: 55px;}
	header #contacts #language {top: 8px}
	header .logo img {width: 150px;}
	header #contacts {height: 45px; width: calc(100% - 205px);}
	header #contacts #varlink_tel-cnt {margin-left: calc(100% - 35px);}
	header #contacts #varlink_tel-cnt a:before {top: -17px; }
	header #menu_btn {width: 45px; height: 45px;}
	#menu_btn span.fixbar:before {left: -39px }
	header #menu_btn span {top: -17px}
	header #menu_btn.fired { right: 15px; }
	header #menu_btn span {font-size: 9px; bottom: 15px;}
	header #menu_btn span:before {width: 36px;}
	header #menu_btn span:after {width: 36px;}
	header #menu_btn.fired span:before {bottom: 0; right: 25px;}
	header #menu_btn.fired span:after {bottom: 0; right: 25px;}

	#slideshow-cnt {margin-top: 55px;}
	header #booking_buttons #varlink_quotes-cnt {margin-left: 5px}

	header #booking_buttons #varsimple_booking_btn, header #booking_buttons #varlink_quotes-cnt a {padding: 15px}
	header #booking_buttons form {padding: 15px}
  header #booking_buttons form .caption-fields input[type="submit"] { padding: 8px; margin: 0}


	/* header #contacts #language li.active a:before { display: none; } */


	header #contacts #language li#menu_lang_it a:after,
	header #contacts #language li#menu_lang_en a:after,
	header #contacts #language li#menu_lang_de a:after { display: block; }
	header #contacts #language li a { padding-left: 0px; font-size: 12px; }
	header #contacts #language { width: 35px; padding: 10px 5px; }
	header #contacts #language li.active { left: 5px; }
	header #contacts #language li.active a { font-size: 14px; text-align: right; width: 32px}
	header #contacts .icon_cnt { margin-left: 55px; }
	header #contacts #varlink_tel-cnt { margin-left: 0px; }
	header #contacts #language {width: 45px}
	header #contacts #language li a {text-align: right;}
	header #contacts #language li.active {left: 10px}


}





/* Generic Mobile Devic Tablet */
@media (max-width: 979px) { }

/* 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) { }

 /* Regole per display ad alta densitÃƒÂ  */
@media only screen and (-webkit-min-device-pixel-ratio: 1.5),
only screen and (-o-min-device-pixel-ratio: 3/2),
only screen and (min--moz-device-pixel-ratio: 1.5),
only screen and (min-device-pixel-ratio: 1.5) {
}      
