@import url('https://fonts.googleapis.com/css2?family=Roboto+Condensed:wght@300;700&family=Teko:wght@300&display=swap');

html {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	height: 100%;
}
*, *:before, *:after {
	-webkit-box-sizing: inherit;
	-moz-box-sizing: inherit;
	box-sizing: inherit;
}
body { margin: 0px; padding: 0px;}

/* OFFER DETAILS */
.h1.h1-offer {
	font-family: 'Roboto Condensed', sans-serif;
	font-size: 46px;
	font-weight: 400;
	text-transform: uppercase;
	padding: 40px 40px 20px 40px;
	margin: 0px;
}
.h2.h2-offer {
	font-family: 'Roboto Condensed', sans-serif;
	font-size: 26px;
	font-weight: 400;
	padding: 0px 40px 0px 40px;
	margin: 0px;
	text-transform: uppercase;
}
	.diff { display: inline-block;  width: 22px;  height: 22px;  background: #ddd;  border-radius: 50%; }
	.desc .diff { width: 22px; height: 22px;}
	.diff_1 { background: #63cc57; }
	.diff_2 { background: #f9a334; }
	.diff_3 { background: #e42124; }

#details {
	display: block;
	padding: 40px;
	font-family: 'Roboto Condensed', sans-serif;
	font-size: 18px;
	color: #444;
}
	.sub_title {
		display: inline-block;
		font-family: 'Roboto Condensed', sans-serif;
		font-size: 30px;
		font-weight: 400;
		color: #000;
		text-transform: uppercase;
		padding: 0px;
		margin: 40px 0px 20px 0px;
		border-bottom: 1px solid #000;
	}
	
	.sub_desc {}
	.sub_desc a, .sub_desc a:link, .sub_desc a:visited, .sub_desc a:active {
		text-decoration: underline;
		color: #000;
	}
	
	.dett_date_list table { margin: 20px 0px 10px;  border-collapse: collapse;}
	.dett_date_list table td {  padding: 5px 30px 5px 10px;  border-bottom: 1px solid #ccc;transition:all 0.3s ease 0s;}
	.dett_date_list table tr:first-child td {  border-top: 1px solid #ccc;}
	.dett_date_list table tr:hover td {  background:#fff;}
	#totale {  float: right;  margin: 20px 0;  border: 1px solid #fff;  padding: 10px 10px;opacity:0;transition:all 0.3s ease 0s;}
	#totale.visible {  opacity:1;}
	.dett_date{}
	.dett_date_list{line-height: 1.7em;}
	.dett_disp_ok{background: #0ba838;padding: 1px 7px;color: #fff;}
	.dett_disp_no{background: #ce1212;padding: 1px 7px;color: #fff;}
	.ended{background: #ce1212;padding: 1px 7px;color: #fff;}
	
	.offer-bt-con {
		display: block;
		margin: 60px 0px 60px 0px;
	}
	
	a.offer-in-bt, a.offer-in-bt:link, a.offer-in-bt:visited, a.offer-in-bt:active {
		display: inline-block;
		margin-right: 30px;
		font-size: 20px;
		text-transform: uppercase;
		text-decoration: none;
		color: #555;
		padding: 10px 20px 10px 20px;
		border: 1px solid #555;
	}
	
	a.offer-in-bt.offer-req {
		font-weight: 300;
		color: #000;
		border: 1px solid #000;
	}

	a.offer-in-bt:hover {
		box-shadow: 0px 10px 15px -3px rgba(0,0,0,0.3);
	}
	
	.img img {
		display: inline-block;
		width: 20%;
		margin-right: 20px;
	}


/* OFFERS LISTING */

.offers-main-con{ width: 100%; display: flex; flex-wrap: wrap; gap: 40px; padding: 40px; }

.offer-con{ 
	flex: 1 1 calc(30% - 20px); 
	border: 1px solid #aaa; 
	background: #f5f5f5; 
	text-decoration: none; 
	color: #000;
	background: #FFFFFF;
	background: linear-gradient(180deg, rgba(255, 255, 255, 1) 60%, rgba(240, 240, 240, 1) 100%);
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	border-radius: 2px;
	overflow: hidden;
	position: relative;
}
	.offer-con:hover { 
		opacity: 0.8; 
		border: 1 px solid #000; 
		background: #fff;
	}
	
	.offer-box-level { display: block; width: 30px; position: absolute; left: 5px; top: 5px; z-index: 2000;}
	.offer-box-level img {width: 100%;}

	.offer-image {
		position: relative; 
		width: 100%;
		height: 23vw;
		max-height: 450px;
		margin: 0 auto 30px;
		overflow: hidden; 
		background-size: cover;
		border-bottom: 10px solid #999;
	}
	.offer-title {
		font-family: 'Roboto Condensed', sans-serif;
		font-size: 31px;
		font-weight: 400;
		text-transform: uppercase;
		margin-bottom: 18px;
		display: block;
		width: 100%;
		padding: 10px 20px 0px 20px;
		text-align: center;
		overflow-wrap: break-word;
		word-wrap: break-word;  
		word-break: break-word; 
	}
	
	.offer-box-info {display: block; color:#666; padding-bottom: 10px; font-size: 16px; text-align: center;font-family: 'Roboto Condensed', sans-serif;font-size: 20px;}
	.offer-box-info span {color:#999; padding: 0px 5px 0px 5px;}
	
	.offer-date {
		font-family: 'Roboto Condensed', sans-serif;
	  font-size: 20px;
	  font-weight: 400;
	  text-transform: uppercase;
	  margin-bottom: 18px;
	  display: block;
	  width: 100%;
	  padding: 0px 20px 20px 20px;	
	  text-align: center;
	}

.offer-placeholder { pointer-events: none; visibility: hidden; }


@media screen and (max-width:1000px){
	.offer-con {flex: 1 1 calc(50% - 20px);}
	.offer-placeholder { display: none; }
	
	.img img {
		display: inline-block;
		width: 40%;
		margin-right: 20px;
	}
}


@media screen and (max-width:750px){
	.offer-con {flex: 1 0 calc(100% - 20px);}
	
	.img img {
		display: inline-block;
		width: 100%;
		margin-right: 0px;
		margin-bottom: 10px;
	}
	
	.offer-image {
		height: 60vw;
		max-height: auto;
		margin: 0 auto 30px;
	}
}
.offers-main { z-index: 1; position: relative;}




/*************************** filtro ******************************/
#FrmSearch { display: inline-flex; gap: 16px; flex-flow: wrap; width: 100%;}
.pro-buttons-main {position: relative;display: block;width: calc(100% - 80px);margin: 0 auto;font-family:'Roboto Condensed', sans-serif;z-index: 10;}
.pro-buttons-inner {position: relative; display: block; margin: 0 auto; max-width: 1800px;}
    .pro-buttons {position: relative;display: block; }
        .pro-button, #FrmSearch .multiselect {cursor:pointer;position: relative;display: inline-block;color: #fff;background-color: #999999;padding:15px 25px;margin: 20px 0px;border: 2px solid #999999;font-size: 19px;text-transform: initial;font-weight: 300;font-family: 'Roboto Condensed', sans-serif;
		/*width: 24%;min-width: 254px;*/display: inline-block;box-sizing: border-box;text-align: left;}
		.pro-button, #FrmSearch .multiselect-native-select{min-width:160px;flex: 1;}
		#FrmSearch .multiselect-native-select{margin: 20px 0px;padding: 0 25px;}
		#FrmSearch .multiselect { border-radius: 0;  margin: 0;  box-sizing: ;  box-shadow: none;width: 100%;overflow: hidden;} 
		#FrmSearch .btn-group { width: 100%;position: absolute;  left: 0;} 
		#FrmSearch .btn .caret {position: absolute;  right: 0;  top: 50%;}
		#FrmSearch .open > .dropdown-menu{width: 100%;}
		.pro-button option { background: #fff !important; color: #000;}
		.sub_desc a.altri_tour{color: #999999;font-weight: bolder;}
		.sub_desc a.altri_tour:hover{text-decoration:underline;}
		.schools .pro-buttons {display:flex;padding:0 50px;}
         .pro-triangle {position: absolute;z-index: 2;bottom: -25px;right: 5vw;padding-right: 50px;}
            .pro-triangle img {width: 30px;}
.date_delete {  position: absolute;  right: 8px;  top: 8px;  width: 20px;  height: 20px;  line-height: 20px;  text-align: center;  border-radius: 50%;  border: 1px solid #fff;  font-size: 10px;}
.date_delete.hidden { display:none;}
.diff {  display: inline-block;  width: 20px;  height: 20px;  background: #ddd;  border-radius: 50%;}
.desc .diff { width: 20px; height: 20px;}
.diff_1 {   background: #63cc57; }
.diff_2 {   background: #f9a334; }
.diff_3 {   background: #e42124; }


.dett_date{}
.dett_date_list{font-size:0.8em;line-height: 1.7em;}
.dett_disp_ok{background: #0ba838;padding: 1px 7px;color: #fff;font-size:0.8em;}
.dett_disp_no{background: #ce1212;padding: 1px 7px;color: #fff;font-size:0.8em;}
.ended{background: #ce1212;padding: 1px 7px;color: #fff;font-size:0.8em;}
.no_visible{display:none;}

.pro-button:hover {background-color: #fff; color: #999999;}


@media screen and (max-width:950px){
	.pro-button, #FrmSearch .multiselect-native-select{min-width: calc(33.33% - 10px);}
	
}
@media screen and (max-width:600px){
	.pro-button, #FrmSearch .multiselect {padding-left: 5px;}
	
}