/*
Theme Name: ALBERT 
Theme URI: http://www.ansonika.com/albert/
Author: Ansonika
Author URI: http://themeforest.net/user/Ansonika/

[Table of contents] 

1. SITE STRUCTURE and TYPOGRAPHY
- 1.1 Typography
- 1.2 Buttons
- 1.3 Structure

2. CONTENT
- 2.1 Home
- 2.2 Room list
- 2.3 Room details
- 2.4 About
- 2.5 Gallery
- 2.6 Faq
- 2.7 Contact us

3. COMMON
- Preloader
- Spacing
- Containers
- Input form style
- Incrementer
- List
- Tooltips
- Parallax
- Carousel, Tabs, Collapse
- etc

/*============================================================================================*/
/* 1.  SITE STRUCTURE and TYPOGRAPHY */
/*============================================================================================*/

/*-------- Allert for old browsers IE8 and below --------*/
.chromeframe{background:#ddd;color:#000;padding: 0.2em;position: fixed; top: 0; left: 0; text-align: center; z-index:9999; width: 100%;}
.chromeframe a{color:#ed1c24;}

/*-------- 1.1 Typography --------**/
/* This is for popins font for firefox */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 400;
  src: url(https://fonts.gstatic.com/s/poppins/v1/2fCJtbhSlhNNa6S2xlh9GyEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
  unicode-range: U+02BC, U+0900-097F, U+1CD0-1CF6, U+1CF8-1CF9, U+200B-200D, U+20A8, U+20B9, U+25CC, U+A830-A839, U+A8E0-A8FB;
}
/* This is for popins font for firefox */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 400;
  src: url(https://fonts.gstatic.com/s/poppins/v1/UGh2YG8gx86rRGiAZYIbVyEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
  unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
}
/* This is for popins font for firefox */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 400;
  src: url(https://fonts.gstatic.com/s/poppins/v1/yQWaOD4iNU5NTY0apN-qj_k_vArhqVIZ0nv9q090hN8.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
}

body {background:#fff; font-size:15px; line-height:1.5; font-family:"Poppins", Arial, sans-serif; color:#555;-webkit-font-smoothing: antialiased; font-weight:300;}

h1, h2, h3, h4, h5, h6{-webkit-font-smoothing:antialiased; color:#222; font-weight:300;}

h1.main_title_in {border-bottom:1px solid #ededed; text-align:center; padding:15px 15px 30px 15px; margin:0;}

h1.main_title, h2.main_title{text-align:center; margin:0 0 30px  0; padding:0; font-size:42px; color:#594a42; text-transform:uppercase;}
h1.main_title.with_subtitle{margin-bottom:0px;}
h2.sub_title{text-align:center; margin:0 0 30px  0; padding:0; font-size:22px; color:#999; text-transform:none;}
h2.home_sub{padding-top:15px!important;padding-bottom:5px!important;}
h1.main_title span, h2.main_title span {display:block; color:#999; font-size:24px; text-transform:none;}
h1.main_title em, h2.main_title em{ display:block; width:40px; height:4px; background-color:#ededed; margin:auto;-webkit-border-radius: 5  px;-moz-border-radius: 5px;border-radius: 5px; margin-bottom:20px; }

h3.main_title {text-align:center; margin:0 0 45px  0; padding:0; font-size:36px; color:#594a42; text-transform:uppercase;}
h3.main_title span {display:block; color:#999; font-size:18px; text-transform:none;}

.cky-consent-bar.cky-banner{
	z-index: 9999!important;
}

.promo_full_wp div h3{
	font-size:48px;
	text-transform:uppercase;
	font-weight:300;
	color:#fff;
	margin-bottom:30px;
}
.promo_full_wp div h3 span{
	color:#fff;
	display:block;
	text-transform:none;
	font-size:24px;
}
.parallax-window#short #subheader h1{
	background-color:rgba(0, 0, 0, 0.8);
	display:inline-block;
	margin:0;
	padding:15px 20px;
	font-size:32px;
	color:#fff;
}
.caption h3{
	background-color:rgba(0, 0, 0, 0.8);
	display:inline-block;
	margin:0;
	padding:15px 20px;
	font-size:24px;
	color:#fff;
}

p {margin-bottom:20px;}

p.lead.styled {text-align:center; font-size:18px; padding:0 10%; margin-bottom:45px; margin-top:45px;}

label{ font-size:15px; font-weight:600;}

/** Layes slider typography **/  
#layerslider{ margin-top:60px;}
h3.slide_typo {letter-spacing:-1px; font-size: 42px; white-space:nowrap; color:#fff !important; font-weight:300; background-color:rgba(0, 0, 0, 0.8); padding:10px 25px;}
h3 .slide_typo strong {font-weight:normal;}
.slide_typo_2{color:#fff; font-size:18px; white-space:nowrap;}

h3.caption_header{letter-spacing:-1px; font-size: 42px; white-space:nowrap; color:#fff !important; font-weight:300; background-color:rgba(0, 0, 0, 0.8); padding:15px 25px; display:inline-block; margin-bottom:30px;}

/*General links color*/
a {color: #111;text-decoration: none;-webkit-transition: all 0.2s ease;transition: all 0.2s ease; outline:none;}
a:hover,a:focus {color:#594a42;text-decoration: none; outline:none;}
strong a{color:#555;}

/*-------- 1.2 Buttons --------*/
a.btn_full, .btn_full{
	border: none;
	font-family: inherit;
	font-size: inherit;
	color:#fff;
	width:100%;
	background: #594a42;
	cursor: pointer;
	padding: 12px 20px;
	display: inline-block;
	outline: none;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	text-transform:uppercase;
	display:block;
	text-align:center;
	font-weight:600;
}
a.btn_full:hover, .btn_full:hover{
	background:#333;
}
a.btn_outline, .btn_outline{
	border: 2px solid #333;
	font-family: inherit;
	font-size: inherit;
	color:#333;
	width:100%;
	cursor: pointer;
	padding: 8px 20px;
	display: inline-block;
	outline: none;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	text-transform:uppercase;
	display:block;
	text-align:center;
	font-weight:600;
	text-transform:none;
}
a.btn_outline:hover, .btn_outline:hover{
	background:#333;
	color:#fff;
}
a.btn_1, .btn_1{
	border: none;
	font-family: inherit;
	font-size: inherit;
	color:#fff;
	background: #594a42;
	cursor: pointer;
	padding: 12px 20px;
	display: inline-block;
	outline: none;
	font-size:17px;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 10px;
	font-weight:500;
}
a.btn_1:hover, .btn_1:hover{
	background: #333;
}

a.btn_1_outline, .btn_1_outline{
	border: none;
	font-family: inherit;
	font-size: inherit;
	color:#594a42;
	border:2px solid #594a42;
	cursor: pointer;
	padding: 7px 15px;
	display: inline-block;
	outline: none;
	font-size:13px;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	font-weight:500;
}
a.btn_1_outline:hover, .btn_1_outline:hover{
background: #333;
border:2px solid #333;
color:#fff;
}

.btn_aggiungi{
	padding: 7px 15px;
	font-size:15px;
}

.btn_modifica{
	padding: 7px 15px;
	font-size:14px;
	background: #9a877!important;
}

a.btn_modifica:hover, .btn_modifica:hover {
	background: #333!important;
}

#riepilogo_step, #riepilogo_importi{
	font-size:16px!important;
}

a.btn_slider, .btn_slider{
	border: none;
	font-family: inherit;
	font-size: inherit;
	color:#fff;
	background: #594a42;
	cursor: pointer;
	padding: 8px 20px;
	display: inline-block;
	outline: none;
	font-size:16px;
	-webkit-transition: background 0.3s !important;
	-moz-transition: background 0.3s !important;
	transition: background 0.3s !important;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	font-weight:500;
}
a.btn_slider:hover, .btn_slider:hover{
background: #fff;
color:#594a42;
}

a.btn_1.white, .btn_1.white  {background: #594a42; color:#fff;}
a.btn_1.white:hover, .btn_1.white a:hover, .btn_1.white:hover  {background: #fff; color:#594a42 !important;}

.link_slider
{
	color: #ffffff;
}

.form-check-input:checked{
	background-color: #198754;
	border-color: #198754;
}

/*-------- 1.3 Structure --------*/

/* Header  */
header{
	padding:5px 0;
	background-color:#fff;
	width:100%;
	position:fixed;
	top:0;
	left:0;
	z-index:9999;
}
header.sticky{
	border-bottom:1px solid #ededed;
}
#logo img{
	height:40px;
	width:auto;
	margin:8px 0;
}
ul#lang_top{
	float:right;
	list-style:none;
	margin:14px 0 0 20px;
	padding:5px 15px;
	background-color:#f6f7f9;
	-webkit-border-radius: 15px;
	-moz-border-radius: 15px;
	border-radius: 15px;
	font-size:14px;
	font-weight:500;
}
ul#lang_top li{
	display:inline-block;
	margin-left:5px;
}
ul#lang_top li:first-child{
	margin-left:0;
}
ul#lang_top li a.active{
	color:#999;
}

/* Footer  */
footer {
	background:#2f2f2f;
	padding:30px 0 10px 0;
	color:#fff;
	width:100%;
}
#logo_footer {
	margin:15px 0 15px 0;
}
footer h3{
	font-size:18px;
	color:#9a8779;
	font-weight:500;
}
footer a{
	color: #fff;
}
footer a:hover{
	color: #594a42;
}
footer ul{
	margin:0;
	padding: 0 0 20px 0;
	list-style:none;
}
#social{
	float:left;
	padding-top:30px;
	margin-top:30px;
}
#social p{
	color:#fff;
}
#social ul{
	margin:0;
	padding:0 0 10px 0;
	text-align:center;
}
#social ul li{
	display:inline-block;
	margin:0 5px 10px 5px;
}
#social ul li a{
	color:#fff;
	text-align:center;
	opacity:1;
	border:1px solid #FFF;
	line-height:45px;
	display:block;
	font-size:25px;
	width:45px;
	height:45px;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
}
#social ul li a:hover{
	background:#fff;
	color:#594a42;
}
#social_footer{
	text-align:center;
	padding-top:30px;
	margin-top:30px;
}
#social_footer p{
	color:#fff;
}
#social_footer ul{
	margin:0;
	padding:0 0 10px 0;
	text-align:center;
}
#social_footer ul li{
	display:inline-block;
	margin:0 5px 10px 5px;
}
#social_footer ul li a{
	color:#fff;
	text-align:center;
	opacity:1;
	border:1px solid #FFF;
	line-height:34px;
	display:block;
	font-size:16px;
	width:35px;
	height:35px;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
}
#social_footer ul li a:hover{
	background:#fff;
	color:#594a42;
}
ul#contact_details_footer{
	list-style:none;
	margin:0 0 20px 0;
	padding:0;
}
ul#contact_details_footer li{
	margin-bottom:10px;
}
input#email_newsletter_2.form-control{
	border:none;
	 -webkit-box-shadow: none;
     box-shadow: none;
 	 -webkit-transition: none;
}

/*============================================================================================*/
/* 2.  CONTENT  */
/*============================================================================================*/
/*-------- 2.1 Home --------*/
#book_container{
	background-color:rgba(0,0,0,0.7);
	text-align: left;
	display:inline-block;
	padding:5px 15px 10px 10px;
	position:relative;
	z-index:9998;
}
#booking #sub_content{
  	padding:50px 20px 0 20px;
}
#container_1, #container_2, #container_3, #container_4, #container_5, #container_6{
	display:inline-block;
	padding: 0 5px 10px 10px;
	position:relative;
}
#group_1, #group_2, #group_3{
	display:inline-block;
}
#container_1, #container_2{
	width:360px;
}
#container_1 .input-icon, #container_2 .input-icon{
	top:33px;
	right:10px;
}
#container_5, #container_6{
	width:230px;
}
#container_7{
	position:absolute;
	bottom:-50px;
	left:0;
	text-align:center !important;
	width:80%;
}
#container_7 .btn_1{
	font-size:16px;
}
#container_7 .btn_1:hover{
	color:#594a42;
	background-color:#fff;
}
#container_7 .loader{
	position:absolute;
	font-size:14px;
	top:7px;
}
#container_8{
	position:absolute;
	bottom:-50px;
	right:0;
	text-align:center !important;
	width:80%;
}
#container_8 .btn_1{
	font-size:16px;
}
#container_8 .btn_1:hover{
	color:#594a42;
	background-color:#fff;
}
#container_8 .loader{
	position:absolute;
	font-size:14px;
	top:7px;
}
.room_pic{
	position:relative;
}
.room_pic span{
	position:absolute;
	top:50%;
	right:-50px;
	background-color:#594a42;
	width:100px;
	height:120px;
	margin-top:-60px;
	color:#fff;
	font-size:18px;
	font-weight:500;
	padding:15px;
	box-sizing:border-box;
	text-align:center;
	line-height:1.1;
	padding-top:45px;
}
.room_pic.left span{
	left:-50px;
}
.room_pic span sup{
	position:relative;
	top:-5px;
}
.room_pic span small{
	display:block;
	font-size:12px;
}
.mosaic_container{
	position:relative;
}
.mosaic_container .caption_2{
	position:absolute;
	left:0;
	bottom:0;
	width:100%;
	z-index:9;
	background: url(../img/shadow.png) repeat-x left bottom;
	display:block;
	font-size:18px;
	padding:10px 15px;
	color:#fff;
	line-height:1.2;
}
.promo_full {
	height:auto;
	background: url(../img/promo_bg_inverno.jpg) no-repeat center center;
	background-attachment:fixed;
	background-size:cover;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	position:relative;
}
.promo_full_wp {
    display: table;
   width:100%;
  height:auto;
  background-color: rgba(0,0,0,0.5);

}
.promo_full_wp > div{
  display: table-cell;
  padding:8% 0;
   vertical-align: middle;
	text-align:center;
	color:#fff;
	font-size:16px;
	box-sizing: content-box;
}
.img_full {
	height:auto;
	background: url(../img/img_info_full.jpg) no-repeat center center;
	/*background-attachment:fixed;*/
	background-size:cover;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	position:relative;
}
.img_full_wp {
    display: table;
   width:100%;
  height:auto;
  min-height:200px;
}
.img_full_wp > div{
  display: table-cell;
  padding:3% 0;
   vertical-align: middle;
	text-align:center;
	color:#fff;
	font-size:16px;
	box-sizing: content-box;
}
.box_overlay{
	/*background-color:rgba(0,0,0,0.7);
	padding:25px 25px 25px 225px;*/
	color:#fff;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	position:relative;
		font-size:14px;
		text-align:left;
}
.pic{
	position:absolute;
	left:25px;
	top:25px;
	width:190px;
	height:80px;
}
.pic h4{
	position:absolute;
	left:95px;
	top:0px;
	color:#fff;
	font-size:14px;
	font-weight:500;
}
.pic h4 small{
	display:block;
	color:#fff;
	margin-top:3px;
}
.pic figure{
	width:80px;
	height:80px;
	overflow:hidden;
}
.pic figure img{
	width:80px;
	height: auto;
	border:5px solid rgba(0,0,0,0.2);
}
.comment{
	border-left: 1px solid rgba(255,255,255,0.5);
	padding-left:25px;
}
.header-video {
  position: relative;
  overflow: hidden;
   background: #000;
}
#hero_video {
	position: relative;
    background-size: cover;
    color:#fff;
	width: 100%;
	font-size:16px;
	display:table;
	height:100%;
	z-index:99;
	text-align:center;
}
#hero_video > div{
	display: table-cell;
	vertical-align: middle;
	text-align:center;
	padding:0 10%;
}
#hero_video > div h1{
	margin-top:70px;
}
video {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  opacity:0.95;
}
iframe {
  height: 100%;
  width: 100%;
}
video {
  width: 100%;
}
.teaser-video {
  width: 100%;
  height: auto; 
}
.header-video--media {
  width: 100%;
  height: auto;
}
.morphext > .animated {
    display: inline-block;
}
/*-------- 2.2 Room list --------*/
.room_desc{
	padding:15px 0;
	border-top: 1px solid #ddd;
}
.room_desc:hover{
	background-color:#fafbfd;
	/*cursor:pointer;*/
}
.room_list_desc h3{
	color:#594a42;
	font-size:22px;
	margin-top:0px;
	padding-top:0px;
}
#camera_prezzi{
	background-color: rgb(248, 244, 244);
	margin:15px 5px;
	border-top-left-radius: 4px;
	border-bottom-left-radius: 4px;
	border-top-right-radius: 4px;
	border-bottom-right-radius: 4px;
}
#camera_prezzi h3{
	font-weight:600;
	color: #555;
}
#camera_prezzi input{
	font-size:24px;
	margin-top:14px;
	font-weight:600;
	color: #555;
}
#errore_connessione{
	background-color: transparent;
	margin:5px 5px 25px;
	border-top-left-radius: 4px;
	border-bottom-left-radius: 4px;
	border-top-right-radius: 4px;
	border-bottom-right-radius: 4px;
}
#errore_connessione h3{
	font-weight:400;
	font-size:20px;
	color: #E64B4B;
}
.room_list_desc ul, .room_desc_home ul{
	list-style:none;
	margin:0 0 25px 0;
	padding:5px 0;
	border-top: 1px solid #ededed;
	border-bottom: 1px solid #ededed;
}
.room_list_desc ul li, .room_desc_home ul li{
	display:inline-block;
	margin-right:10px;
	font-size:24px;
}
.room_list_desc .price {
	line-height:1.2;
}
.room_list_desc .price strong{
	font-size:20px;
}
.room_list_desc .price small{
	display:block;
	color:#999;
}
.room_list_desc .dettagli_camera {
	line-height:1.2;
}
.room_list_desc .dettagli_camera strong{
	font-size:13px;
	color:#594a42;
}
.room_list_desc .dettagli_camera small{
	display:block;
	color:#594a42;
}
.room_list_desc .dettagli_camera span{
	display:block;
	color:#594a42;
	cursor:pointer;
}
#general_facilities ul{
	list-style:none;
	padding:0;
	margin:0;
	line-height:34px;
}
#general_facilities ul li i{
	font-size:22px;
	float:left;
	margin:0 10px 0 0;
}
#general_facilities ul li:last-child{
	margin:0;
}
#general_facilities h3{
	margin:0 0 20px 0;
	padding:0;
	font-size:18px;
}

/*-------- 2.3 Room details --------*/
#single_room_feat ul{
	list-style:none;
	padding:0;
	margin:15px 0 30px 0;
	display:table;
	border-bottom:1px solid #ededed;
	font-size:13px;
}
#single_room_feat ul li{
	display:table-cell;
    width:1%;
	vertical-align:middle;
	text-align:center;
	padding: 0 10px 20px 10px;
	white-space:nowrap;
}
#single_room_feat ul li:last-child{
	margin-right:0;
}
#single_room_feat ul li i{
	font-size:36px;
	display:block;
}
#room_detail_desc h3{
	font-size:22px;
	margin-top:5px;
}
#room_detail_desc h4{
	line-height:20px;
	font-size:18px;
}
ul#policies{
	list-style:none;
	padding:0;
	margin:20px 0 0 0;
}
ul#policies  li{
	padding-left:50px;
	position:relative;
}
ul#policies  li h5{
	font-weight:500;
}
ul#policies li i{
	font-size:34px;
	position:absolute;
	left:-10px;
	top:-5px;
	color:#594a42;
}
a#phone_2{
	display:block;
	text-align:center;
	margin-top:10px;
}
#score{
	float:right;
	font-size:11px;
	margin-top:5px;
}
#score_detail span{
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	display: inline-block;
	width:45px;
	height:45px;
	border:2px solid #555;
	line-height:42px;
	font-size:14px;
	font-weight:bold;
	color:#555;
	margin-right:5px;
	text-align:center;
}
#score_detail{
	font-size:14px;
	margin-bottom:15px;
}
#score_detail small{
	color:#999;
}
#rating_summary ul{
	list-style:none;
	margin:0 0 -5px 0;
	padding:0;
}
#rating_summary ul li{
	margin-bottom:5px;
}
#rating_summary ul li .rating{
	display:inline-block;
	font-size:14px;
	float:right;
}
.review_strip_single{
	position:relative;
	padding:30px 0 20px 0;
	margin:30px 0 25px 0;
	border-bottom:1px solid #ededed;
}
.review_strip_single.last{
	margin-bottom:0;
	border-bottom:0;
}
.review_strip_single img{
	top:-15px;
	position:absolute;
	left:0;
	border:4px solid #fff;
}
.review_strip_single h4{
	font-size:18px;
	margin:-12px 0 35px 90px;
	padding:0;
}
.review_strip_single small{
	float:right;
	font-size:12px;
	margin-top:-10px;
	font-style:italic;
}
.review_strip_single .rating{
	font-size:16px;
}
.rating{color:#F90;}

.modal-dialog {
	 margin-top:110px;
}
.modal-content {
  border:0;
  border:0;
  border-radius: 12px;
}
.modal-header,.modal-body,.modal-footer {
  padding: 20px;
}

/*-------- 2.4 About--------*/
.box_feat{
	margin-bottom:0px;
	text-align:center;
	/*border:1px solid #ededed;*/
	padding:30px 30px 20px 30px;
	/*border-top: 1px solid #594a42;
	background-color:#fff;*/
}
.box_feat i{
	font-size:40px;
	line-height:85px;
	text-align:center;
	color:#fff;
	margin:0;
	display: inline-block;
	border: 5px solid #ffe0d9;
	margin-bottom:15px;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	width:90px;
	height:90px;
	background-color:#594a42;
}

/*-------- 2.5 Gallery--------*/
.grid ul {
    margin: 0;
    padding: 0;
    width: 100%;
	text-align:center;
}
.grid ul li {
	display:inline-block;
	margin:0;
	padding:10px;
	margin:-3px;
    min-height: 100%;
    /*background-color: #000;*/
    list-style: none;
}
.grid figure {
    position: relative;
    overflow: hidden;
	margin-bottom:-3px;
}
.grid figure img {
    width: 100%;
    height: 100%;
    -webkit-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}
.grid figure:hover img, .grid figure:focus img {
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
}
.grid figcaption {
    position: absolute;
    top: 0;
    left: 0;
    padding: 25% 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.70);
    text-align: center;
    font-size: 14px;
    opacity: 0;
    -webkit-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}
.grid figcaption a {
    color: #fff;
	display:block;
	width:100%;
	height:100%;
}
.grid figcaption a:hover, .grid figcaption a:focus {
    color: #594a42;
}
.grid figure:hover figcaption, .grid figure:focus figcaption {
    opacity: 1;
}
.visible {
    opacity: 1;
}
.grid figure.cs-hover figcaption {
    opacity: 1;
}
.grid figcaption i {
    font-size: 30px;
}
.grid figcaption p {
    margin-bottom: 0;
	margin-top:10px;
    text-transform: uppercase;
    font-weight: 400;
}
.grid figcaption .caption-content {
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -30px;
    margin-left: -100px;
    width: 200px;
    -webkit-transform: translate(0px, 15px);
    -ms-transform: translate(0px, 15px);
    transform: translate(0px, 15px);
    -webkit-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}
.grid figure:hover figcaption .caption-content, .grid figure:focus figcaption .caption-content {
    -webkit-transform: translate(0px, 0px);
    -ms-transform: translate(0px, 0px);
    transform: translate(0px, 0px);
}

/*-------- 2.6 Faq --------*/
ul#cat_nav{
	list-style:none;
	margin: 0;
	padding:0;
	border: 1px solid #ededed;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}
ul#cat_nav li{
	 border-bottom: 1px solid #ededed;
}
ul#cat_nav li a{
	position:relative;
	color:#555;
}
ul#cat_nav li a span{
	font-size:11px;
	color:#999;
}
ul#cat_nav li a:after{
	font-family: "fontello";
	content: "\e89b";
	position:absolute;
	right:15px;
	top:15px;
}
ul#cat_nav li:last-child{
	 border-bottom: 0;
	 padding-bottom:0;
}
ul#cat_nav li:first-child a:hover, ul#cat_nav li:first-child a.active{
	-webkit-border-top-left-radius: 3px;
	-webkit-border-top-right-radius: 3px;
	-moz-border-radius-topleft: 3px;
	-moz-border-radius-topright: 3px;
	border-top-left-radius: 3px;
	border-top-right-radius: 3px;
}
ul#cat_nav li:last-child a:hover, ul#cat_nav li:last-child a.active{
	-webkit-border-bottom-right-radius: 3px;
	-webkit-border-bottom-left-radius: 3px;
	-moz-border-radius-bottomright: 3px;
	-moz-border-radius-bottomleft: 3px;
	border-bottom-right-radius: 3px;
	border-bottom-left-radius: 3px;
}
ul#cat_nav li a{
	display:block;
	padding:15px 10px;
}
ul#cat_nav li a:hover, ul#cat_nav li a.active{
	background:#f8f8f8;
	color:#594a42;
}
/*-------- 2.7 Contact us --------*/
#map {
	width:100%;
	height:500px;
}
.box_contact{
	padding-left:60px;
	position:relative;
}
.box_contact i{
	position:absolute;
	left:0;
	top:0;
	font-size:32px;
	
}
.box_contact h4{
	font-weight:500;
}
/*============================================================================================*/
/* 1.  COMMON */
/*============================================================================================*/
/*Preloader*/
#preloader {
	position: fixed;
	top:0;
	left:0;
	right:0;
	width:100%;
	height:100%;
	bottom:0;
	background-color:#fff; 
	z-index:999999; 
}
[data-loader="circle-side"]
{
    position: absolute;

    width: 50px;
    height: 50px;
	
	top:50%;
	left:50%;
	margin-left:-25px;
	margin-top:-25px;

    -webkit-animation: circle infinite .95s linear;
       -moz-animation: circle infinite .95s linear;
         -o-animation: circle infinite .95s linear;
            animation: circle infinite .95s linear;

    border: 2px solid #594a42;
    border-top-color: rgba(0, 0, 0, .2);
    border-right-color: rgba(0, 0, 0, .2);
    border-bottom-color: rgba(0, 0, 0, .2);
    border-radius: 100%;
}
@-webkit-keyframes circle
{
    0%
    {
        -webkit-transform: rotate(0);
            -ms-transform: rotate(0);
             -o-transform: rotate(0);
                transform: rotate(0);
    }
    100%
    {
        -webkit-transform: rotate(360deg);
            -ms-transform: rotate(360deg);
             -o-transform: rotate(360deg);
                transform: rotate(360deg);
    }
}
@-moz-keyframes circle
{
    0%
    {
        -webkit-transform: rotate(0);
            -ms-transform: rotate(0);
             -o-transform: rotate(0);
                transform: rotate(0);
    }
    100%
    {
        -webkit-transform: rotate(360deg);
            -ms-transform: rotate(360deg);
             -o-transform: rotate(360deg);
                transform: rotate(360deg);
    }
}
@-o-keyframes circle
{
    0%
    {
        -webkit-transform: rotate(0);
            -ms-transform: rotate(0);
             -o-transform: rotate(0);
                transform: rotate(0);
    }
    100%
    {
        -webkit-transform: rotate(360deg);
            -ms-transform: rotate(360deg);
             -o-transform: rotate(360deg);
                transform: rotate(360deg);
    }
}
@keyframes circle
{
    0%
    {
        -webkit-transform: rotate(0);
            -ms-transform: rotate(0);
             -o-transform: rotate(0);
                transform: rotate(0);
    }
    100%
    {
        -webkit-transform: rotate(360deg);
            -ms-transform: rotate(360deg);
             -o-transform: rotate(360deg);
                transform: rotate(360deg);
    }
}

/*Spacing*/
.add_bottom_10 {margin-bottom:10px;}
.add_bottom_15 {margin-bottom:15px;}
.add_bottom_20 {margin-bottom:20px;}
.add_bottom_25 {margin-bottom:25px;}
.add_bottom_30 {margin-bottom:30px;}
.add_bottom_40 {margin-bottom:40px;}
.add_bottom_45 {margin-bottom:45px;}
.add_bottom_60 {margin-bottom:60px;}
.add_bottom_75 {margin-bottom:75px;}
.add_top_10 {padding-top:10px;}
.add_top_15 {padding-top:15px;}
.add_top_20 {padding-top:20px;}
.add_top_25 {padding-top:25px;}
.add_top_30 {padding-top:30px;}
.add_top_40 {padding-top:40px;}
.add_top_60 {padding-top:60px;}
.margin_40 {margin-top:40px; margin-bottom:40px;}
.margin_60 {padding-top:60px; padding-bottom:60px;}
.margin_40_35 {padding-top:40px; padding-bottom:35px;}
.margin_60_35 {padding-top:60px; padding-bottom:35px;}
.margin_70_35 {padding-top:70px; padding-bottom:35px;}
.margin_90 {margin-top:90px; margin-bottom:90px;}
.margin_30 {margin-top:30px; margin-bottom:30px;}
.nomargin_top {margin-top:0;}
.nopadding {margin: 0 !important;padding: 0 !important;}
.nomargin {margin: 0 !important;}
.add_left_0 {padding-left:0px;}
.add_left_5 {padding-left:5px;}
.add_left_10 {padding-left:10px;}
.add_left_15 {padding-left:15px;}
.add_left_20 {padding-left:20px;}
.add_left_30 {padding-left:30px;}
.add_left_50 {padding-left:50px;}
.add_right_0 {padding-right:0px;}
.add_right_15 {padding-right:15px;}
.add_right_20 {padding-right:20px;}
.add_right_30 {padding-right:30px;}

/*Containers*/
.container_styled_1{
	background:#fafbfd;
}
.box_style_1{
	background-color: #f6f7f9;
	padding:25px 25px 15px 25px ;
	margin-bottom:20px;
	border-radius:12px;
}
.box_style_1 hr{
  margin: 10px -25px 20px -25px;
  border: 0;
  border-top:2px solid #fff;
}
.box_style_2{
	text-align:center;
	padding:10px 20px 20px 20px;
	border:1px solid #ddd;
	border-radius:12px;
}
.box_style_2 a.phone{
	font-size:26px;
	display:block;
	margin-bottom:20px;
	color:#00a651;
}
.box_style_2 a.phone:hover{
	color:#333;
}
.box_style_2 i{
	font-size:52px;
	margin-top:10px;
	display:inline-block;
}
.box_style_3{
	background-color: #fafbfd;
	padding:25px 25px 15px 25px ;
	margin-bottom:20px;
	border-radius:12px;
}

/* Input form style */   
.form-control{
  color: #333;
  height:38px;
  border-radius: 14px;
  line-height:1.5 !important;
}
select.form-control{
 -webkit-appearance: none;
 -webkit-border-radius: 2px;
}
textarea.form-control{
	max-width:100%;
}
.form-control[readonly]{
	background-color:#fff;
}
.form-group{ position:relative}
.input-icon{position:absolute; right:6px; top:33px; width:28px; height:24px; background-color:transparent; pointer-events:none; text-align:right;}
.input-icon i { color:#999; font-size:20px;}
.index-icon{top:30px;}
.form-control:focus {
  border-color: #594a42;
  outline: 0;
  -webkit-box-shadow:none;
   box-shadow:none;
}
.form-control:focus.qty {
  border-color:#ccc;
}
.input-group button { background-color:#594a42; color:#fff; border-color:#594a42; height:38px; font-weight:500;}
.input-group button:hover, .input-group button:focus { background-color:#333; color:#fff; border-color:#333}

.error_testo {
    color: #a94442
}

.error::-webkit-input-placeholder {
    color: #a94442!important;
}

#book_container .error_message{
	font-size:12px;
	padding-left:10px;
	color:#FC0;
}
.error_message{
	font-size:12px;
	color: #F33;
}

 #check_avail .loader {
	 position:absolute;
	right:10px;
	bottom:12px;
	color:#fff;
}

/* Quantity incrementer input */   
.qty-buttons{ position:relative; width:110px; height:38px;  }
input.qty { width:80px;border-left:0; border-right:0; padding-left:52px  }
input.qtyminus, input.qtyplus, input.qtyplus:focus {position:absolute; width:35px; height:38px; 	border: 1px solid #cccccc;  outline:none; cursor:pointer;-webkit-box-shadow: none;box-shadow: none;-webkit-transition: none; z-index:1 }
input.qtyplus {
	background:#fff url(../img/plus.png) no-repeat center center; 
	right:0; top:0; 
	text-indent:-9999px;  
	-webkit-border-top-right-radius: 2px;
     -webkit-border-bottom-right-radius: 2px;
	-moz-border-radius-topright: 2px;
	-moz-border-radius-bottomright: 2px;
	border-top-right-radius: 2px;
	border-bottom-right-radius: 2px;
	border-left: 1px solid #cccccc;
}
input.qtyminus {
	background:#fff url(../img/minus.png) no-repeat center center;
	text-indent:-9999px;
	-webkit-border-top-left-radius: 2px;
	-webkit-border-bottom-left-radius: 2px;
	-moz-border-radius-topleft: 2px;
	-moz-border-radius-bottomleft: 2px;
	border-top-left-radius: 2px;
	border-bottom-left-radius: 2px;
	left:0; top:0; 
	border-right: 1px solid #cccccc;
}

/*List*/
ul.list_ok {
	list-style:none;
	margin: 0 0 20px 0;
	padding:0;
	line-height:26px;
}
.list_detail {
	margin-bottom:10px;
}
ul.list_ok li {
	position:relative;
	padding-left:25px;
}
ul.list_ok li:before {
 font-style: normal;
  font-weight: bold;
  font-family: "icon_set_1";
  font-size:14px;
  content: "\6c";
  color:#86b535;
  position:absolute;
  left:0;
  top:0;
}
.room_list_desc ul.list_ok{
  margin-top:15px;
  border-top:0px;
  border-bottom:0px;
}
.room_list_desc ul.list_ok li{
  font-size:14px;
  margin-right:0px;
  /*width:100%;*/
}
hr.more_margin {
	margin:45px 0;
}
/** Img frame in general page **/   
.img-responsive.styled{
	/*border:5px solid#fff;*/
	-webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.2);
	-moz-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.2);
	box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.2);
}

.img-responsive { border-radius:12px; }

/* Parallax bg */
.parallax-window {
    min-height: 550px;
	background:transparent;
	position:relative;
}
.parallax-window#home {
    min-height: 550px;
}
.parallax-window#booking {
    min-height: 550px;
}
.parallax-window#short {
    height: 350px;
	min-height:inherit;
}
.parallax-content{
	color:#fff;
	text-align:center;
	display: table;
    width:100%;
    height:470px;
}

.parallax-window#short #subheader {
	position:absolute;
	width:100%;
	bottom:20px;
	left:0;
	text-align:center;
}
#subheader_home{
	color:#fff;
	text-align:center;
	  display: table;
   width:100%;
   height:550px;
}
#sub_content{
	 display: table-cell;
  	padding:70px 15% 0 15%;
    vertical-align: middle;
	text-align:center;
	font-size:22px;
}
#sub_content p{
	margin-bottom:0;
}
#sub_content h1{
	margin:0 0 0 0;
	font-size:60px;
	font-weight:300;
	color:#fff;
}

#booking_home{
	color:#fff;
	text-align:center;
	  display: table;
   width:100%;
   height:150px;
   margin-top:-180px;
}
#booking_content{
	 display: table-cell;
  	/*padding:50px 15% 50px 15%;*/
    vertical-align: middle;
	text-align:center;
	font-size:22px;
}
#booking_content p{
	margin-bottom:0;
}
#booking_content h1{
	margin:0 0 0 0;
	font-size:60px;
	font-weight:300;
	color:#fff;
}

/* Tooltips */
.tooltip_styled {
	display: inline-block; /* Importante per il posizionamento */
	position: relative;
	padding-left: 5px; /* Spazio tra testo e icona */
}
.tooltip-item {
	cursor: pointer;
	display: inline-block;
}
.tooltip-item::after {
	content: '';
	position: absolute;
	width: 200px;
	height: 20px;
	bottom: 100%;
	left: 50%;
	pointer-events: none;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
.tooltip_styled:hover .tooltip-item::after {
	pointer-events: auto;
}
.tooltip-content {
	position: absolute;
	z-index: 999;
	width: 150px;
	left: 50%;
	margin: 0 0 20px -75px;
	bottom: 100%;
	text-align: left;
	line-height: 20px;
	display: block;
	padding: 15px;
	text-align:center;
	font-size:14px;
	color: #fff;
	box-shadow: -5px -5px 15px rgba(48,54,61,0.2);
	background: #333;
	opacity: 0;
	cursor: default;
	pointer-events: none;
}
.tooltip-booking {
	width: 260px !important;    /* Larghezza fissa del fumetto */
	left: 50% !important;       /* Lo posiziona a metà dell'icona */
	margin-left: -130px !important; /* Sposta indietro della metà esatta (260/2) per centrarlo */
	margin-bottom: 15px !important;
	text-align: center !important;
	border-radius:10px;
}
.tooltip-booking::after {
	left: 50% !important;
	margin-left: -10px !important;
}
.tooltip-effect-1 .tooltip-content {
	-webkit-transform: translate3d(0,-10px,0);
	transform: translate3d(0,-10px,0);
	-webkit-transition: opacity 0.3s, -webkit-transform 0.3s;
	transition: opacity 0.3s, transform 0.3s;
}
.tooltip-effect-2 .tooltip-content {
	-webkit-transform-origin: 50% calc(100% + 10px);
	transform-origin: 50% calc(100% + 10px);
	-webkit-transform: perspective(1000px) rotate3d(1,0,0,45deg);
	transform: perspective(1000px) rotate3d(1,0,0,45deg);
	-webkit-transition: opacity 0.2s, -webkit-transform 0.2s;
	transition: opacity 0.2s, transform 0.2s;
}
.tooltip-effect-3 .tooltip-content {
	-webkit-transform: translate3d(0,10px,0) rotate3d(1,1,0,25deg);
	transform: translate3d(0,10px,0) rotate3d(1,1,0,25deg);
	-webkit-transition: opacity 0.3s, -webkit-transform 0.3s;
	transition: opacity 0.3s, transform 0.3s;
}
.tooltip-effect-4 .tooltip-content {
	-webkit-transform-origin: 50% 100%;
	transform-origin: 50% 100%;
	-webkit-transform: scale3d(0.7,0.3,1);
	transform: scale3d(0.7,0.3,1);
	-webkit-transition: opacity 0.2s, -webkit-transform 0.2s;
	transition: opacity 0.2s, transform 0.2s;
}
.tooltip_styled:hover .tooltip-content {
	pointer-events: auto;
	opacity: 1;
	-webkit-transform: translate3d(0,0,0) rotate3d(0,0,0,0);
	transform: translate3d(0,0,0) rotate3d(0,0,0,0);
}
.tooltip_styled.tooltip-effect-2:hover .tooltip-content {
	-webkit-transform: perspective(1000px) rotate3d(1,0,0,0deg);
	transform: perspective(1000px) rotate3d(1,0,0,0deg);
}
.tooltip-content::after {
	content: '';
	top: 100%;
	left: 50%;
	border: solid transparent;
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: transparent;
	border-top-color: #333;
	border-width: 10px;
	margin-left: -10px;
}
.tooltip-content .label {
	margin-left:10px;
}
.tooltip-content i{
	font-size:20px !important;
	top:3px !important;
	left:-3px !important;
	position:relative;
}
.tooltip-content h4 {
	display:block;
	margin: 0 0 10px 0;
	line-height:14px;
	font-size:14px;
	color:#fff;
	text-transform:uppercase;
}
.tooltip-content a {
	font-weight: bold;
}

/* Tooltip flip */
.tooltip_flip {
	position: relative;
}
.tooltip_flip::after {
	content: '';
	position: absolute;
	width: 100%;
	height: 20px;
	bottom: 100%;
	pointer-events: none;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
.tooltip_flip:hover::after {
	pointer-events: auto;
}
.tooltip-content-flip {
	position: absolute;
	z-index: 999;
	width: 80px;
	height: 80px;
	left:-40%;
	bottom: 100%;
	text-align: center;
	color: #fff;
	opacity: 0;
	margin-bottom: 7px;
	cursor: default;
	pointer-events: none;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-transition: opacity 0.3s, -webkit-transform 0.3s;
	transition: opacity 0.3s, transform 0.3s;
}

.strip_all_tour_list .tooltip-content-flip {left:-65%;}

.tooltip-effect-1 .tooltip-content-flip {
	-webkit-transform: translate3d(0,10px,0);
	transform: translate3d(0,10px,0);
}
.tooltip_flip:hover .tooltip-content-flip {
	opacity: 1;
	pointer-events: auto;
	-webkit-transform: translate3d(0,0,0);
	transform: translate3d(0,0,0);
}
.tooltip-content-flip > span {
	float: left;
	width: 100%;
	padding-left:5px;
	padding-right:5px;
	height: 100%;
	position: relative;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
}
.tooltip-back {
	background: #e04f67;
	font-size: 12px;
	line-height:14px;
	padding-top:25px;
	-webkit-transform-origin: 0% 50%;
	transform-origin: 0% 50%;
	-webkit-transform: perspective(1000px) rotate3d(0,1,0,90deg);
	transform: perspective(1000px) rotate3d(0,1,0,90deg);
}
.tooltip_flip:hover .tooltip-content-flip > span {
	-webkit-transform: perspective(1000px) rotate3d(0,1,0,0deg);
	transform: perspective(1000px) rotate3d(0,1,0,0deg);
}
.tooltip-content-flip .tooltip-front::after,
.tooltip-content-flip .tooltip-back::after {
	content: '';
	position: absolute;
	top: 100%;
	width: 0;
	height: 0;
}
.tooltip-content-flip .tooltip-front::after {
	right: 0;
	border-top: 10px solid #e64b50;
	border-left: 10px solid transparent;
}
.tooltip-content-flip .tooltip-back::after {
	left: 45%;
	border-top: 10px solid #e64b50;
	border-right: 10px solid transparent;
}

/* Carousel */
.carousel_in{
	margin-top:60px;
}
.owl-item {
    -webkit-backface-visibility: hidden;
    -webkit-transform: translateZ(0) scale(1.0, 1.0);
}
.caption {
	position:absolute;
	bottom:20px;
	left:0;
	text-align:center;
	width:100%;
	opacity:0;
	-webkit-transition: opacity 1s ease-in-out;
        -moz-transition: opacity 1s ease-in-out;
        -ms-transition: opacity 1s ease-in-out;
        -o-transition: opacity 1s ease-in-out;
        transition: opacity 1s ease-in-out;
}
.owl-item.active.center .caption {
	opacity:1;
}

/*Collapse*/   
.panel {
  border-radius: 3px;
  -webkit-box-shadow: none;
  box-shadow:none;
  border-color:#ededed;
}
.panel-title a {display:block; color:#444;}
.panel-default > .panel-heading {
  background-color: #f9f9f9;
  padding:20px;
  border-bottom:1px solid #ddd;
}
.panel-heading {
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
}
.panel-group .panel {
  border-radius: 3px;
}
.panel-body {
	padding:30px;
	line-height:1.6 !important;
}
.panel-title a .indicator{
	color:#594a42;
}
.panel-title a:hover .indicator{
	color:#333;
}

/*Tabs*/   
.tab-content{
	padding:30px; 
	background-color:#fff; 
	border:1px solid #ddd; 
	border-top:none; 
	margin-bottom:25px;
	-webkit-border-bottom-right-radius: 3px;
	-webkit-border-bottom-left-radius: 3px;
	-moz-border-radius-bottomright: 3px;
	-moz-border-radius-bottomleft: 3px;
	border-bottom-right-radius: 3px;
	border-bottom-left-radius: 3px;
}

/* Scroll top button */      
#toTop {
	width:40px; 
	height:40px;
	background-color:rgba(0, 0, 0, 0.6);
	text-align:center;
	padding:10px;
	line-height:20px;
	position:fixed;
	bottom:30px;
	right:30px;
	cursor:pointer;
	display:none;
	color:#fff;
	font-size:20px;
	z-index:9999;
}
#toTop:before{
	font-style: normal;
  font-weight: normal;
  font-family: "fontello";
  content: "\e899";
}

#ScrolltoTop {
	width:40px; 
	height:40px;
	background-color:rgba(0, 0, 0, 0.6);
	text-align:center;
	padding:10px;
	line-height:20px;
	position:fixed;
	bottom:30px;
	right:30px;
	cursor:pointer;
	display:none;
	color:#fff;
	font-size:20px;
	z-index:9999;
}
#ScrolltoTop:before{
	font-style: normal;
  font-weight: normal;
  font-family: "fontello";
  content: "\e899";
}

.divider{
	width:100%;
	height:9px;
	background:url(../img/divider.png) no-repeat center top;
	margin:60px 0;
}

/* INSTAGRAM */

.instagram-id {

}


.instagram-id div {

}

video .instagram-media {
	position:relative;
}


/* Video.js play button */
.vjs-default-skin
.vjs-big-play-button:before {
  color: #fff !important;
  text-shadow: none !important;
  line-height: 0 !important;
}
.vjs-default-skin
.vjs-big-play-button {
  background-color: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  left: 50% !important;
  top: 50% !important;
  font-size: 8em !important;
  margin-left: -30px !important;
  height: 0 !important;
  width: 0 !important;
}
.vjs-default-skin:hover .vjs-big-play-button,
.vjs-default-skin .vjs-big-play-button:focus {
  background-color: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
  outline: 0 none !important;
  transition: none !important;
}

.links-footer li{
		padding-top:10px;
	}

#reservation-form label{
	font-size:16px!important;
}

#reservation-form .btn_1{
	font-size:18px!important;
}

#input_messaggio_covid19
{
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border: 1px solid;
	margin: 0 0 15px 0px;
	padding: 12px 10px 5px 10px;
	display: none;
	border-color: #eeeeee;
	background: #eeeeee;
	color: #8d0d0d;
	text-align:left;
}

#input_messaggio_covid19 p
{	
	margin: 0 0 8px 0; 
	padding-left: 30px;
	min-height: 16px;
	background: url(../booking/images/notice_warn.png) 0 50% no-repeat;
	text-align:left;
}

#input_messaggio_covid19_home
{
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border: 1px solid;
	margin: 0 0 15px 0px;
	padding: 12px 10px 5px 10px;
	display: none;
	border-color: #eeeeee;
	background: #eeeeee;
	color: #8d0d0d;
	text-align:left;
}

#input_messaggio_covid19_home p
{	
	margin: 0 0 8px 0; 
	padding-left: 30px;
	min-height: 16px;
	text-align:center;
	font-size: 17px;
}

.p_home{
	font-size: 17px!important;
}

.covid_info{
	font-size:26px;
	font-weight:500;
	/*text-shadow: 2px 2px 4px #000000;*/
}
.covid_button{
	font-size:18px!important;
}
.sistemazioni_button{
	font-size:14px!important;
}
.center{
	text-align: center;
}
.height_300{
	height:300px!important;
}

.wrapper-cta {
    position: fixed;
    z-index: 10;
    top: 15%;
    right: 0;
}

.wrapper-cta a {
    width: 100%;
    text-align: center;
    color: #fff;
    padding: 10% 5px 10% 5px;
    text-transform: uppercase;
    margin-bottom: 7px;
    line-height: initial;
    display: block;
    white-space: nowrap;
    font-size: 17px;
}

.wrapper-cta .cta.tel {
    background-color: #f49000;
}    

#stripe_payment_div{
	display: none;
}
 
.img_pagamento{
	 border: 1px solid #cccccc;
	 padding: 10px;
	 border-radius: 5px;
	 cursor: pointer;
}
.highlight { border: 2px solid #9a8779; }

.custom-col {
	position: relative;
	width: auto; /* o la larghezza desiderata */
	padding-right: 15px;
	padding-left: 15px;
}
.prezzo_grid{
	font-size:20px;
	color: #9a8779;
}
.card{
	border-radius:12px!important;
}
.card-title{
	font-size:21px!important;
	/*min-height:60px;*/
}
.suppl{
	padding-left:0px!important;
}
.btn-prenota{
	background: #619f76;
	color: #ffffff;
}
.btn-prenota:hover {
	background: #71b989;
    color: #ffffff;
}
.btn-dettagli{
	background: #666666;
	color: #ffffff;
}
.btn-dettagli:hover {
	background: #787878;
    color: #ffffff;
}
.btn-check {
	position: absolute;
	clip: rect(0,0,0,0);
	pointer-events: none;
}
.form-switch .form-check-input{
	width: 4em!important;
}
.form-check-input{
	height: 2em!important;
	width: 2em!important;
}
.form-switch {
	padding-left: 1.5em!important;
}
.alert-dismissible .close {
position: absolute;
top: 0;
right: 0;
padding: 0.75rem 1.25rem;
color: inherit;
}

button.close {
padding: 0;
background-color: transparent;
border: 0;
-webkit-appearance: none;
}
.close {
	float: right;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1;
	color: #000;
	text-shadow: 0 1px 0 #fff;
	opacity: .5;
}
/* Stile per il placeholder più leggero */
form input::placeholder,
form textarea::placeholder {
	color: #999; /* Colore del testo più leggero, puoi personalizzarlo */
	opacity: 0.4; /* Opacità del testo del placeholder */
}

/* Quando il campo è attivo o ha del testo, rendi il testo del placeholder completamente visibile */
form input:focus::placeholder,
form textarea:focus::placeholder {
	opacity: 1;
}
.form-select {
	font-weight:200 !important;
	font-size:14px !important;
	color:#333 !important;
	border-radius:10px!important
}
.form-control {
	font-weight:200 !important;
	font-size:14px !important;
}
.form-control::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
			color: #333;
			opacity: 1; /* Firefox */
}

.form-control:-ms-input-placeholder { /* Internet Explorer 10-11 */
			color: color: #333;
;
}

.form-control::-ms-input-placeholder { /* Microsoft Edge */
			color: ;
			color: #333;
 }
 
 .guest_card img{
	 width:100% !important;
	 height:auto !important;
	 cursor: pointer;
	 max-width:800px !important;
	 border-radius:14px;
 }
 
 
 
 
.hotel-section {
   display: grid;
   grid-template-columns: 1fr;
   gap: 20px;
   margin-bottom: 70px;
 }
 
 .hotel-img img {
   width: 100%;
   border-radius: 14px;
   height: auto;
   object-fit: cover;
 }
 
 #video-cover {
   height: 250px; /* fallback mobile */
 }
 
 @media (min-width: 992px) {
   #video-cover {
	 height: 420px;
   }
 }
 
 /* Effetto Pulse per il pulsante Play */
 @keyframes video-pulse {
   0% {
	 box-shadow: 0 0 0 0 rgba(35, 196, 121, 0.7);
   }
   70% {
	 box-shadow: 0 0 0 18px rgba(35, 196, 121, 0);
   }
   100% {
	 box-shadow: 0 0 0 0 rgba(35, 196, 121, 0);
   }
 }
 
 .play-pulse {
   animation: video-pulse 2s infinite;
 }
 
 /* Transizione smooth per hover sul contenitore */
 #video-wrapper:hover #play-btn-container {
   transform: translate(-50%, -50%) scale(1.08);
 }
 
 .hotel-card {
   background: #fff;
   padding: 30px;
   border-radius: 14px;
   box-shadow: 0 10px 30px rgba(0,0,0,0.08);
   text-align: center;
   position: relative;
 }
 
 .hotel-card h3 {
   font-size: 25px;
   font-weight: 300;
   margin-bottom: 12px;
 }
 
 .hotel-card p.short {
   font-size: 17px;
   margin-bottom: 10px;
   color: #555;
 }
 
 .more {
   display: none;
   margin-top: 10px;
   font-size: 16px;
   color: #444;
 }
 
 .toggle-more {
   background: none;
   border: 0;
   color: #198754;
   font-weight: 600;
   cursor: pointer;
   margin-top: 10px;
 }
 
 /* DESKTOP */
 
 @media (min-width: 992px){
 
   .hotel-section {
	 grid-template-columns: 1fr 1fr;
	 align-items: center;
   }
 
   .hotel-img img {
	 height: 420px;
   }
 
   .reverse .hotel-img {
	 order: 2;
   }
 
   .reverse .hotel-card {
	 order: 1;
   }
   
	.hotel-card .more {
		display: block !important;
	}
	
	.toggle-more {
		display: none;
	}
 
 }
 
 /* MOBILE */
 
 @media (max-width: 767px){
 
   .hotel-card {
	 padding: 20px;
   }
 
   .hotel-card h3 {
	 font-size: 22px;
	 font-weight:300;
   }
 
   .hotel-card p {
	 font-size: 14px;
   }
   
   .modal-dialog {
		margin-bottom:70px;
   }
 
 }
 
 /* IMMAGINE TOP HEADER HOME E TOOLTIP OFFERTA PER DESKTOP E MOBILE */
 
 #hero_fixed {
		 background: url('../img/slides/top22.jpg') no-repeat center center;
		 background-size: cover;
		 height: 500px;
		 position: relative;
		 display: flex;
		 align-items: center;
		 justify-content: center;
	 }
	 /* Overlay più scuro per far leggere il bianco */
	 #hero_fixed::before {
		 content: "";
		 position: absolute;
		 top: 0; left: 0; width: 100%; height: 100%;
		 background: rgba(0,0,0,0.45); 
	 }
	 .hero_text { position: relative; color: #fff; text-align: center; z-index: 1; padding: 0 15px; }
	 
	 /* Titolo H1 ottimizzato per SEO */
	 .hero_text p { font-size: 20px; text-shadow: 1px 1px 5px rgba(0,0,0,0.8); margin-top: 10px; }
 
	.hero_text h1 { 
		font-size: 48px; 
		font-weight: 700; 
		text-shadow: 2px 2px 10px rgba(0,0,0,0.8); 
		margin: 0; 
		color:#ffffff!important;
	}
	
	/* Gestione Mobile del Titolo */
	@media (max-width: 767px) {
		#hero_fixed { height: 250px; } /* Immagine più bassa su mobile */
		
		/* Nascondiamo il testo SOPRA l'immagine */
		#hero_fixed .hero_text { display: none; }
		
		/* Rendiamo visibile il titolo SEO alternativo sotto il calendario */
		.seo-title-mobile { 
			display: block !important; 
			text-align: center; 
			padding: 20px 15px 0 15px;
		}
		.seo-title-mobile h1 { 
			font-size: 24px; 
			color: #333; 
			font-weight: 700;
			margin: 0;
		}
	}
	
	/* Su Desktop il titolo alternativo è nascosto */
	.seo-title-mobile { display: none; }
 
	 .booking-row {
		 background: #f8f9fa;
		 padding: 30px 0;
		 border-bottom: 1px solid #eee;
		 margin-top: -40px;
		 position: relative;
		 z-index: 10;
		 border-radius: 8px;
		 box-shadow: 0 10px 25px rgba(0,0,0,0.1);
	 }
	 
	 /* Animazione specifica per Mobile (dal basso) */
	 @keyframes slideUpMobile {
		 from { transform: translate(-50%, 20%); opacity: 0; }
		 to { transform: translate(-50%, 0); opacity: 1; }
	 }
	 
	 /* Stili per il box offerta su Mobile */
	 @media (max-width: 767px) {
		 .promo-mobile-hero {
			 display: block !important; /* Forza la visibilità su mobile */
			 position: absolute;
			 top: 30%; /* Lo posiziona sopra l'immagine */
			 left: 50%;
			 transform: translateX(-50%);
			 z-index: 100;
			 width: 90%;
			 max-width: 350px;
			 animation: slideUpMobile 0.8s ease-out 1.2s forwards;
			 opacity: 0;
		 }
	 }
	 
	 /* Nascondi la versione mobile su desktop */
	 @media (min-width: 768px) {
		 .promo-mobile-hero { display: none; }
	 }
	 
	 .promo-animated, .promo-mobile-hero {
		 pointer-events: all !important; /* Forza la cliccabilità */
	 }
	 
	 /* Assicurati che il bottone non abbia filtri che bloccano il mouse */
	 .alert button {
		 pointer-events: auto !important;
	 }
	 
	 .camera-card {
		 transition: all .25s ease;
		 border: 2px solid transparent;
	 }
	 
	 .selection-box:hover {
		 background-color: #f8fdfa !important;
		 border-color: #198754 !important;
	 }
	 
	 /* Evidenzia la box se il radio interno è selezionato */
	 .selection-box:has(input:checked) {
		 border-color: #198754 !important;
		 background-color: #f0f9f4 !important;
		 /*box-shadow: 0 0 0 1px #198754;*/
	 }
	 
	 .button-book {
	   background: #FF7A00!important;
	   color: #fff;
	 }
	 
	 .button-book:hover {
	   background: #e66d00!important;
	 }
	 
	 .info-sidebar{
		 color: #198754!important;
	 }
