body {
	background-color: #fff;
	padding: 0;
	margin: 0;
	font-family: 'Open Sans', sans-serif, Arial, Helvetica, sans-serif;
	font-weight: 400; 
	font-size: 13px;
}

a { /* color: #8bbe23; */ color: #666; text-decoration: none; }

h1 { font-size: 24px; padding: 20px; margin: 0; font-weight: normal; }

h2 { 
	font-size: 20px; padding: 0; margin: 0 0 1px 0;  font-weight: normal;  
}
	h2 a {
		display: block;
		color: #333; background: url(/img/mobile_ico_down.png) no-repeat right center #f2f2f2; padding: 20px; 
	}
	h2 span.noLink { /* per quando non ci sono linkMosNas */
		display: block;
		color: #333; background: #f2f2f2; padding: 20px; 	
	}
	

form { padding: 0; margin: 0; }
	input, textarea, select { font-family: 'Raleway'; font-weight: 400;  font-size: 13px; }
	input.inputGenerico,
	textarea.textareaGenerica { border: 1px solid #dedede; padding: 5px; font-size: 14px; color: #333; font-family: 'Raleway'; font-weight: 400; }
		input.inputGenerico { height: 24px; line-height: 24px; }
		input.pulsante,
		a.pulsante { /* pulsante generico (può essere sia un <input> che un <a> */
			font-family: 'Open Sans', sans-serif, Arial, Helvetica, sans-serif; font-weight: 400; font-size: 14px; height: 40px; line-height: 40px; padding: 0 15px; background-color: #999; color: #fff; font-size: 14px; text-decoration: none; border: 0; text-align: center;
			-webkit-appearance: none;
			-moz-appearance: none;
			appearance: none;
		}	
			a.pulsante { display: block; }
			input.pulsante:hover,
			a.pulsante:hover { background-color: #666; cursor: pointer; }

				

#wrapper { max-width: 680px; padding: 0 5px 10px 5px; margin: 0 auto; }

	#testata { }
		a#logo { display: block; text-decoration: none; width: 258px; height: 48px; margin: 20px auto; }
			a#logo img { width: inherit; height: inherit; border: 0;  }

		form#formCerca { height: 46px; margin: 0 auto; }
			form#formCerca div.fl_Left { float: left; position: relative; width: 78%; }
			form#formCerca div.fl_Right { float: right; width: 20%; }
				form#formCerca div .didascaliaErrore { color: #c00; font-size: 11px; position: absolute; z-index: 1; top: 48px; left: 0; width: 300px; }					
				form#formCerca div input.inputGenerico { 
					box-sizing: border-box;
					-moz-box-sizing:border-box; 
					padding: 10px 10px 10px 43px; width: 100%; height: 46px; /* <--- ridefinisco l'altezza a causa del box-sizing */ background: url(/img/ico_lente.png) left center no-repeat #fff;
				}
				form#formCerca div input.pulsante {
					box-sizing: border-box;
					-moz-box-sizing:border-box; 
					width: 100%; height: 46px; line-height: 46px; font-size: 16px; background-color: #7ba42a; color: #fff; 
				}

		ul#menu { margin: 0; padding: 0; list-style: none; display: block; height: 90px; overflow: hidden; text-transform: capitalize; }
			ul#menu li { padding: 0; margin: 0; height: inherit; display: block; float: left; }
			ul#menu li.cerca { width: 33%; }
			ul#menu li.dintorni { width: 34%; }
			ul#menu li.regioni { width: 33%; }
				ul#menu li a { display: block; padding: 50px 0 5px 0; height: 35px; line-height: 35px; background: #f2f2f2 top center no-repeat; color: #999; font-size: 14px; text-decoration: none; text-align: center; }
					ul#menu li.cerca a { background-image: url(/img/mobile_ico_cerca_sm.png); }
					ul#menu li.dintorni a { background-image: url(/img/mobile_ico_dintorni_sm.png); border-left: 1px solid #fff; border-right: 1px solid #fff; }
					ul#menu li.regioni a { background-image: url(/img/mobile_ico_regioni_sm.png); }
					
			#barra-regioni,
			#barra-cerca,			
			#barra-regioni-home,
			#barra-cerca-home { padding: 20px; background: #e5e5e5; margin: 1px 0 0 0; }
				#barra-regioni,
				#barra-regioni-home { padding: 10px 20px; }
					/* modificatore per l'elenco dentro questo div */
					#barra-regioni ul.elenco,
					#barra-regioni-home ul.elenco { }
					#barra-regioni ul.elenco li,
					#barra-regioni-home ul.elenco li,
					#barra-regioni ul.elenco li:last-child,
					#barra-regioni-home ul.elenco li:last-child { border-color: #ccc; } /* vedi codice più sotto */
				.js #barra-regioni,
				.js #barra-cerca,
				.js #barra-regioni-home,
				.js #barra-cerca-home { display: none; }

	#menuBottom { padding: 15px 0; margin: 15px auto 0 auto; border-top: 5px solid #ccc; height: 32px; }
		#menuBottom a { color: #999; display: block; height: inherit; line-height: 32px; font-size: 18px; text-transform: uppercase; }
			#menuBottom a.bt_home { float: left; padding-left: 32px; background: url(/img/mobile_ico_home.png) no-repeat left center; }
			#menuBottom a.bt_indietro { float: right; padding-right: 32px; background: url(/img/mobile_ico_back.png) no-repeat right center; }

	#footer { padding: 20px 0; margin: 15px auto 0 auto; x}
		ul#menuLingue { padding: 0; margin: 0 auto; width: 300px; height: 30px; list-style: none; display: block; }
			ul#menuLingue li { padding: 0; margin: 0; width: 20%; height: inherit; display: block; float: left; }
				ul#menuLingue li a { display: block; width: 100%; height: inherit; float: left; background-position: center center; background-repeat: no-repeat; text-decoration: none; }
					ul#menuLingue li a span { display: none; }
					/* modificatori di ul#menu li */
					ul#menuLingue li.bn_it a { background-image: url(/img/mobile_bn_it.gif); }
					ul#menuLingue li.bn_en a { background-image: url(/img/mobile_bn_en.gif); }
					ul#menuLingue li.bn_fr a { background-image: url(/img/mobile_bn_fr.gif); }
					ul#menuLingue li.bn_de a { background-image: url(/img/mobile_bn_de.gif); }
					ul#menuLingue li.bn_es a { background-image: url(/img/mobile_bn_es.gif); }
					
		#footer .esciSitoOttimizzato { padding: 15px; text-align: center; }


ul.elenco { display: block; list-style: none; padding: 0; margin: 20px 0; font-size: 18px; }
	ul.elenco li { position: relative; display: block; line-height: 30px; padding: 10px; margin: 0 10px; border-top: 1px solid #e5e5e5; /* text-transform: capitalize; */ }
			/* modificatore per l'elenco dentro questo div */
			#barra-regioni ul.elenco,
			#barra-regioni-home ul.elenco { }
			#barra-regioni ul.elenco li,
			#barra-regioni-home ul.elenco li,
			#barra-regioni ul.elenco li:last-child,
			#barra-regioni-home ul.elenco li:last-child { border-color: #ccc; } /* vedi codice più sopra */			
		ul.elenco li:last-child { border-bottom: 1px solid #e5e5e5;}
		ul.elenco li a { display: block; background: url(/img/mobile_ico_freccina.png) no-repeat right center; line-height: 30px; padding-right: 35px; }
			ul.elenco li a span.distanza { font-size: 16px; color: #999; }		
		ul.elenco li ul {
			display: block;
			list-style: none;
			padding: 0;
			margin: 0 0 0 15px;
		}
			ul.elenco li ul li { 
				line-height: 30px;			
				padding: 10px 10px 10px 15px; 
				border-top: 0;
				background: url(/img/submenu.gif) left center no-repeat;
			}
				ul.elenco li ul li:last-child { border-bottom: 0; }
				ul.elenco li ul li a { display: block; background: none; line-height: 30px; }
				
				
ul.elencoStruttura { display: block; list-style: none; padding: 0; margin: 20px 0; font-size: 18px; border-bottom: 1px solid #e5e5e5; /* non uso last-child perché in qusto caso non funziona */  }
	ul.elencoStruttura li { display: block; line-height: 40px; padding: 10px; margin: 0 10px; border-top: 1px solid #e5e5e5; }
		/* ul.elencoStruttura li:last-child { border-bottom: 1px solid #e5e5e5; } */
		ul.elencoStruttura li a { display: block; background: no-repeat left center; line-height: 40px; padding-left: 35px; text-transform: uppercase; }	
			/* modificatori di ul.elencoStruttura li */
			ul.elencoStruttura li.el_Email a { background-image: url(/img/mobile_ico_el_email.png); }
			ul.elencoStruttura li.el_Tel a { background-image: url(/img/mobile_ico_el_tel.png); }
			ul.elencoStruttura li.el_Cell a { background-image: url(/img/mobile_ico_el_cell.png); }
			ul.elencoStruttura li.el_Mappa a { background-image: url(/img/mobile_ico_el_mappa.png); }
			ul.elencoStruttura li.el_Foto a { background-image: url(/img/mobile_ico_el_foto.png); }
			

/*
ul.elencoPaginaStruttura { display: block;	list-style: none; padding: 0; margin: 20px 0; font-size: 18px; }
	ul.elencoPaginaStruttura li { position: relative; display: block; margin: 0 0 1px 0; }
		ul.elencoPaginaStruttura li a { display: block; line-height: 70px; padding: 10px 70px; 10px 10px; background-color: #f2f2f2; background-position: right center; background-repeat: no-repeat; }*/
			/* mofificatori di ul.elencoPaginaStruttura li a */
			/*
			a.lnk_email { background-image: url(/img/mobile_ico_email_flat.png); }
			a.lnk_mappa { background-image: url(/img/mobile_ico_mappa_flat.png); }
			a.lnk_telefono { background-image: url(/img/mobile_ico_telefono_flat.png); }
			a.lnk_foto { background-image: url(/img/mobile_ico_foto_flat.png); }									
			*/

.separatore { clear: both; height: 1px; line-height: 1px; overflow: hidden; font-size: 1px; }
.linea { height: 15px; margin-bottom: 15px; overflow: hidden; border-bottom: 1px solid #ccc; clear: both; }	

.alert,
.alertVerde,
.alertRosso { text-align: center; padding: 10px; margin: 15px; font-size: 12px; font-weight: bold; background: #FFFF99; }
	.alertVerde {  background: #d4ffda; }
	.alertRosso {  background: #f03; color: #fff; }	

ul.sottoMenu { padding: 0; margin: 0 auto 15px auto; list-style: none; display: block; height: 60px; background: url(/img/mobile_linea_verticale.gif) repeat-y center center; }
	ul.sottoMenu li { padding: 0; margin: 0; height: inherit; display: block; width: 50%;  }
		ul.sottoMenu li.ordinaPrezzo,
		ul.sottoMenu li.annullaOrdinaPrezzo { float: left; }
		ul.sottoMenu li.trovaVicinoA { float: right; }
			ul.sottoMenu li a { display: block; padding: 37px 0 5px 0; margin: 0; line-height: 18px; height: 18px; font-size: 11px; font-weight: bold; text-align: center; width: 100%; background: top center no-repeat; }
				ul.sottoMenu li.ordinaPrezzo a,
				ul.sottoMenu li.annullaOrdinaPrezzo a { float: left; background-image: url(/img/mobile_ico_euro.png);  }
				ul.sottoMenu li.trovaVicinoA a { float: right; background-image: url(/img/mobile_ico_poi.png);  }			



/* classi per ritagliare un'immagine con margini negativi, dentro a un box con overlay hidden (es. foto gestore, thumb foto struttura, foto lista, ecc.) */
img.img_adatta_w_h { width: 100%; height: 100%; border: 0; } /* adatta in entrambi i lati (altezza e larghezza) */
img.img_adatta_h { width: auto; height: 100%; border: 0; } /* adatta in altezza */
img.img_adatta_w { width: 100%; height: auto; border: 0; } /* adatta in larghezza */

.boxStruttura { position: relative; margin: 0 0 15px 0; padding: 0; border: 1px solid #ccc;  }
	/* .wrapper .boxStruttura:first-child { border-top: 1px solid #ccc; } */
	.boxStruttura a.icoElemento { position: absolute; display: block; top: 10px; left: 10px; width: 100px; height: 75px; text-decoration: none; overflow: hidden; }
		.boxStruttura a.icoElemento img { /* vedi css sopra "img.img_adatta_w_h", "img.img_adatta_w" e "img.img_adatta_h" */ }

	.boxStruttura a.infoStruttura { 
		box-sizing: border-box; -moz-box-sizing: border-box;
		display: block;  min-height: 75px; padding-left: 110px; color: #333;
		margin: 10px; overflow: hidden;
	}
		.boxStruttura a.infoStruttura span.titolo { font-size: 16px; text-transform: uppercase; color: #555; font-weight: 700; font-family: 'Roboto Slab'; }
		.boxStruttura a.infoStruttura span.descrizione { color: #666; }	
	

/*
a.pulsanteGenerico { display: block; margin: 15px; padding: 15px; text-align: center; border: 1px solid #ccc; font-size: 18px; }
*/

.indirizzo { padding: 15px; font-size: 14px; line-height: 20px; }

.prezziContainer { padding: 15px; font-size: 14px; }
	.prezziContainer .prezzi { line-height: 20px; padding-right: 15px; float: left; }
	.prezziContainer a.notePrezzi { display: block; float: left; height: 20px; line-height: 20px; font-size: 11px; background: url(/img/mobile_ico_plus.png) #f2f2f2 left center no-repeat; color: #666; padding: 0 5px 0 20px; margin: 20px 0 0 0; text-transform: uppercase; }

	#notePrezziContainer { padding: 15px; margin-top: 15px; background: #f2f2f2; }

.containerTesto { padding: 15px; font-size: 16px; line-height: 25px; text-align: justify; }


#prenotazioneStruttura { padding: 0 20px 20px 20px; margin-bottom: 15px; }
	#prenotazioneStruttura form { border: 1px solid #ccc; padding: 15px; margin: 0 15px; background: #f2f2f2; }
	
/* box a scomparsa, elenchi nascosti, ecc. */
.boxScomparsa,
.elencoNascosto { }
	.js .elencoNascosto, /* elementi per nascondere le voci in elenchi troppo lunghi */ 
	.js .boxScomparsa { display: none; } /* box a scomparsa (modulo email, note prezzi, ecc)  */	
	
.loadingAjax { height: 30px; line-height: 30px; text-align: center; background-color: #f2f2f2; color: #666; font-weight: bold; } /* viene generato da jquery */
	.loadingAjax div { background-image: url(/img/ico_loading_animated.gif); background-repeat: no-repeat; background-position: 5px 5px; padding: 0 30px; width: 80px; margin: 0 auto; text-align: left; }	
	
#fotoStrutturaContainer { display: none; }
	#fotoStrutturaContainer .fotoStruttura { text-align: center; padding: 0 20px 15px 20px;	}	
		#fotoStrutturaContainer .fotoStruttura img { border: 0px none; width: 100%; height: auto; }

	
/* --- FORM / MODULI CONTATTO --- */
	/* classi base per moduli (uno sopra l'altro) */
	/* .privacy { padding: 5px; font-size: 11px; } */
	
	.rigaForm { padding: 5px; }
		.rigaForm .etichetta { font-weight: bold; color: #666; font-size: 12px; margin-bottom: 2px; /* line-height: 17px; width: 24%; float: left; text-align: right; */ }
		.rigaForm .campo { /* width: 75%; float: right; */ }
			.rigaForm .campo .didascalia,
			.rigaForm .campo .didascaliaErrore { padding: 3px; font-size: 11px; }
				.rigaForm .campo .didascaliaErrore { color: #c00; font-weight: bold; /* didascalia errore viene generto da jquery */ }
			.rigaForm .campo input.inputGenerico, 
			.rigaForm .campo textarea.textareaGenerica { width: 93%; }
			.rigaForm .campo select.selectGenerica { width: 50%; }
				/* modificatori di .rigaForm .campo input.inputGenerico */
				.rigaForm .campo input.inputCorto { width: 20%; }
				.rigaForm .campo input.inputMedio { width: 50%; }	
		.rigaForm .pulsanteForm { }
			.rigaForm .pulsanteForm input.pulsante { }
				.rigaForm .pulsanteForm .didascaliaErrore { padding: 5px; font-size: 11px; color: #ff7e00; font-weight: bold; font-style: italic; } /* la didascaliaErrore, in prossimità di pulsanti form, cambia leggermente aspetto */			
				
		.avvisoErrore { /* avviso "fixed" in alto */
			position: fixed; top: 0; left: 0; right: 0; z-index: 999;
			padding: 20px; margin-bottom: 20px; background: #fff6cb; font-weight: bold; text-align: center;
		 }							
			
			
/* link in home page */	
.boxHome { }

	a.linkHome { display: block; height: 50px; text-decoration: none; margin: 0 0 1px 0; padding: 45px 115px 45px 30px; background: right center no-repeat #f2f2f2; text-transform: capitalize; }
			/* modificatori di a.linkHome */
			a.lnk_cerca { background-image: url(/img/mobile_ico_cerca.png); }
			a.lnk_dintorni { background-image: url(/img/mobile_ico_dintorni.png); }
			a.lnk_regioni { background-image: url(/img/mobile_ico_regioni.png); }
		a.linkHome span.lnk_tit1 { display: block; height: 30px; line-height: 30px; overflow: hidden; font-size: 18px; color: #666; }
		a.linkHome span.lnk_tit2 { display: block; height: 20px; line-height: 20px; overflow: hidden; font-size: 12px; color: #999; }		

/* paginazione */
.paginazione { height: 50px; }
	.paginazione a { 
		box-sizing: border-box;
		-moz-box-sizing:border-box; 	
		display: block; height: inherit; line-height: 50px; font-weight: bold; padding: 0 15px; border: 1px solid #ccc; width: 48%; font-size: 14px; text-transform: capitalize; text-align: center; 
	}
		.paginazione a.pagIndietro { float: left; }
		.paginazione a.pagAvanti { float: right; }	
		
		
/* recensioni */
.recensioniContainer { padding: 15px; }
	/* modifiche a .recensioniContainer serve per diversificare alcuni stili quando recensioni viene modificato nella lista strutture, a scomparsa */
	.boxScomparsaStruttura .recensioniContainer { padding: 15px; }
	
	.col_recensioniTot_sx,
	.col_recensioni_sx { /* float: left; */ }
	.col_recensioniTot_dx,
	.col_recensioni_dx { /* float: right; */ }
		.col_recensioniTot_dx { background: #f2f2f2; padding: 10px; margin-bottom: 10px; }
		.col_recensioniTot_sx { /* width: 69%; */  padding: 10px; /* float: right; */ background: #f2f2f2; }
		.col_recensioni_sx { /* width: 28%; */ }
		.col_recensioni_dx { /* width: 69%; */ }	
		
		.recensioniTotale { height: 94px; padding: 10px; text-align: center; color: #fff; font-weight: bold; background-color: #ff9000; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px;  }
			.recensioniTotale .giudCompl { height: 36px; line-height: 18px; font-size: 13px; margin-top: 5px; text-transform: uppercase; color: #ffc880; }
			.recensioniTotale .giudVoto { height: 30px; line-height: 30px; margin: 3px 0; font-size: 24px; font-weight: bold; }
			.recensioniTotale .giudTxt { height: 20px; line-height: 20px; font-size: 12px; }			
	
		.recCaratteristica { position: relative; line-height: 18px; height: 18px; overflow: hidden; color: #666; border-bottom: 1px dotted #ccc; font-weight: bold; font-size: 10px; }
			.recCaratteristica span { position: absolute; top: 2px; right: 0; display: block; width: 151px; height: 14px;line-height: 14px; }
				.recCaratteristica span img { border: 0; width: 100%; height: 100%; }
			/* .recCaratteristica:first-child { border-top: 1px dotted #ccc; } */

		.recTxt { position: relative; color: #666; padding: 15px 0; }
			.recTxt .recFreccina { display: none; /* position: absolute; z-index: 1px; left: -14px; top: 30px; width: 14px; height: 19px; background: url(/img/rec_freccina_sx.png) 0 0 no-repeat; */ }			
				/* modifiche a .recTxt serve per diversificare alcuni stili quando recensioni viene modificato nella lista strutture, a scomparsa */
				.boxScomparsaStruttura .recTxt { background: #fff; }
					.boxScomparsaStruttura .recTxt .recFreccina { background: url(/img/rec_freccina_sx_bianca.png) 0 0 no-repeat; }
			
		.recRisposta { color: #666; position: relative; margin: 10px 0 0 0; background-color: #e5e5e5; padding: 10px; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; }
			.recRisposta .recFreccina { position: absolute; z-index: 1; left: 30px; top: -9px; width: 18px; height: 9px; background: url(/img/rec_freccina_up.png) 0 0 no-repeat; }
			.recRisposta .titRisposta { font-size: 12px; font-weight: bold; margin-bottom: 5px; }
				
		.nomeRecensore { color: #999; font-size: 12px; margin: 5px 0; }
			.nomeRecensore strong { font-weight: bold; color: #ff9000; font-size: 16px; text-transform: capitalize; }	
			
		.recensioniContainer .separatoreAlto { height: 5px; margin-bottom: 10px; border-bottom: 3px solid #f2f2f2; /* overflow: hidden; clear: both; */ }
			
		a.linkScheda { display: block; padding: 15px 0; margin: 0 15px; border-top: 1px dotted #ccc; text-align: center; } /* compare solo nella lista strutture */
		
		/* link per google translate */
		a.linkTraduciRecensione { display: block; height: 16px; line-height: 16px; font-weight: bold; font-size: 11px; padding-left: 20px; margin: 10px 0 0 0 ; background: url(/img/ico_translate.png) left center no-repeat; color: #999; text-decoration: underline; }
			a.linkTraduciRecensione:hover { color: #666; text-decoration: none; }

		/* link alle recensioni in altre lingue rispetto a quella corrente */
		a.linkRecensioniAltreLingue { display: block; padding: 10px 10px 10px 30px; border-bottom: 1px solid #f2f2f2; font-weight: bold; background: left center no-repeat; }
			a.linkRecensioniAltreLingue:hover { background-color: #f2f2f2; }
			/* modificatori di a.linkRecensioniAltreLingue */
			a.bandiera_en { background-image: url(/img/bn_en.gif); }
			a.bandiera_de { background-image: url(/img/bn_de.gif); }
			a.bandiera_fr { background-image: url(/img/bn_fr.gif); }			
			a.bandiera_es { background-image: url(/img/bn_es.gif); }						
			a.bandiera_it { background-image: url(/img/bn_it.gif); }
			a.bandiera_ru { background-image: url(/img/bn_ru.gif); }
			a.bandiera_ro { background-image: url(/img/bn_ro.gif); }
			a.bandiera_nl { background-image: url(/img/bn_nl.gif); }			
			a.bandiera_hu { background-image: url(/img/bn_hu.gif); }						
			a.bandiera_fi { background-image: url(/img/bn_fi.gif); }
			a.bandiera_da { background-image: url(/img/bn_da.gif); }						
			a.bandiera_ca { background-image: url(/img/bn_ca.gif); }
			a.bandiera_pt { background-image: url(/img/bn_pt.gif); }
		.contenitoreRecLingua { display: none; padding: 15px 0; }
		
		/* totale recensioni su colonna destra */
		.recensioniTotaleColonna { 
			height: 94px; padding: 10px; text-align: center; color: #666; font-weight: bold; border: 1px solid #ccc;
			-webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; 
		}
			.recensioniTotaleColonna .giudCompl { height: 30px; line-height: 15px; color: #666; font-size: 14px; margin-top: 5px; }
			.recensioniTotaleColonna .giudVoto { height: 30px; line-height: 30px; margin: 3px 0; font-size: 24px; color: #f60; }
			.recensioniTotaleColonna .giudTxt { height: 19px; line-height: 19px; font-size: 12px; }
			
		/* icona della struttura */			
		a.icoStruttRecensioni { display: block; background-position: center center; background-repeat: no-repeat; width: 60px; height: 60px; float: right; margin: 0 0 0 5px; }
			a.icoStruttRecensioni span { display: none; }					
			

@media screen and (min-width: 540px) { /* smartphone in landscape (e risoluzioni superiori) */

	/* oltre i 410px la barra della testata si vede affiancata */
/*
	a#logo { float: left; }
	a#logoHome { }
	#testata form#formCerca { float: right; }
	*/

}