/*

COLORI REGIONALE

BLU scuro 3a6c9c - chiaro ccd5de - scuro rgb 58, 108, 156
VERDE scuro 4b9649 - chiaro badbb8

COLORI SITO NAZIONALE

#f38430 arancione menu + link in testo
#ec5552 rosato menu selezionato
#549c71 verde pastello scuro menu campagna
#78c499 verde acqua 
#534741 grigio scuro barra sopra accedi
#f2f2f2 bianco leggermente grigino sfondo testata e pagine

#f8a131 arancione marker mappa

#f15a24 arancione link footer

#e6e6e6 grigio bordino box
#f2f2f2 grigino sfondo

#d0d0d0 >>> grigio nuovo bordino box
#e6e6e6 >>> grigio un po' pił scuro per sfondo 

*/

* { 
  -moz-box-sizing: border-box; 
  -webkit-box-sizing: border-box; 
   box-sizing: border-box; 
}

.imground { border-radius: 50%; }

body { background: #fff; margin: 0; padding: 0; font-family: "Source Sans Pro"; }

input, textarea { font-family: "Source Sans Pro"; }

.btn { margin: 0 0 10px 0; font-weight: 600; font-size: 14px; display: block; width: 100%; background: transparent; color: #fff !important; border: 1px solid #ddd; padding: 10px; text-decoration: none; transition: all 0.3s ease-out 0s; }
.btn:hover { text-decoration: none !important; background: rgba(128, 128, 128, 0.5); color: #fff !important; }

.btnh { margin: 0 0 10px 0; font-weight: 600; font-size: 14px; display: block; width: 100%; background: #f38430; color: #fff !important; border: 1px solid #ddd; padding: 10px; text-decoration: none; transition: all 0.3s ease-out 0s; }
.btnh:hover { text-decoration: none !important; background: #ec5552; }

@media only screen and (min-width: 768px) {
.btn { margin: 0 5px 5px 0; display: inline-block; width: auto; }
.btnh { margin: 0 5px 5px 0; display: inline-block; width: auto; }
}

#brand { text-align: center; padding: 5px; }
#brand img { width: 125px; }

#payoff { text-align: center; background: #f38430; padding: 20px; }
#payoff > h1 { color: #fff; margin:0;padding:0; font-weight: 600; text-transform: uppercase;}

#main-all-regions { padding: 10px; overflow: auto; position: relative; }
#main-all-regions > h1 { text-align: center; line-height: 48px; font-size: 48px; text-shadow: 2px 2px #333; background: none; padding: 0px; color: #fff; margin: 0 30px 30px 30px; font-weight: 600; text-transform: uppercase;}
#main-all-regions > h1 > span { line-height: 32px; font-size: 32px; display: inline-block; background: #fff; color: #666; padding: 2px 7px; text-shadow: none; }
#main-all-regions > div { font-size: 20px; background: rgba(32, 32, 32, 0.6); border-radius: 0 0 20px 20px; padding: 20px; color: #ddd; }
#main-all-regions > div > h2 { color: #fff; text-transform: uppercase; font-weight: 600; margin: 0px; padding: 0px; }
#main-all-regions > div:first-of-type { margin-bottom: 3px; border-radius: 20px 20px 0 0; }

#main-single-step { padding: 10px; overflow: auto; position: relative; }
#main-single-step > h1 { text-align: center; line-height: 48px; font-size: 48px; text-shadow: 2px 2px #333; background: none; padding: 0px; color: #fff; margin: 0 30px 30px 30px; font-weight: 600; text-transform: uppercase;}
#main-single-step > h1 > span { line-height: 32px; font-size: 32px; display: inline-block; background: #fff; color: #666; padding: 2px 7px; text-shadow: none; }
#main-single-step > div { font-size: 20px; background: rgba(32, 32, 32, 0.6); border-radius: 0 0 20px 20px; padding: 20px; color: #ddd; }
#main-single-step > div > h2 { color: #fff; text-transform: uppercase; font-weight: 600; margin: 0px; padding: 0px; }
#main-single-step > div > p { line-height: 24px; font-size: 16px; }
#main-single-step > div:first-of-type { margin-bottom: 3px; border-radius: 20px 20px 0 0; }

#main-single-step > div > div#pref { border: 1px solid #999; padding: 5px; /*border-radius: 20px;*/ overflow: auto; }
#main-single-step > div > div#pref img { height: 48px; float: left; margin-right: 10px; }
#main-single-step > div > div#pref h5 { font-size: 12px; text-transform: uppercase; margin:0;padding:0; font-weight: 600; padding-top: 3px; }
#main-single-step > div > div#pref h4 { margin:0;padding:0; font-weight: 600; font-size: 20px; color: #fff;}

#main-single-step > div > table { margin-bottom: 20px; width: 100%; border-collapse: collapse; }
#main-single-step > div > table tr:first-child td { color: #fff; text-transform: uppercase; font-weight: 600; text-align: left; font-size: 24px; }
#main-single-step > div > table tr:first-child td { border-bottom: 2px solid #fff; }
#main-single-step > div > table tr td:nth-child(2) { text-align: right; }

.bg { display: block; background-size: cover; background-position: top center; background-repeat: no-repeat; position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; z-index: -10; }
#bg2, #bg3, #bg4, #bg5, #bg6, #bg7, #bg8, #bg9, #bg10 { display: none; }
#main-all-regions > .bg {  background-position: center center; }

.pbminititle {
	font-weight: 600;
	margin: 0px;
	padding: 0px;
	text-transform: uppercase;
	font-size: 12px;
	height: 12px;
	line-height: 12px;
	position: relative;
}

#rs_progressbar2 + .pbminititle { margin-bottom: 20px; }

#rs_progressbar1, #rs_progressbar2 {
  margin: 0px;
  width: 100%;
  height: 26px;
  position: relative;
  font-weight: 600;
  font-size: 20px;
  margin-bottom: 20px;
  text-shadow: 1px 1px #333;
}

#step1lim { width: 12.5%; border-right: 2px solid #ddd; height: 26px; font-size: 20px; position: absolute; top: 0px; left: 0px; }
#step2lim { width: 37.5%; border-right: 2px solid #ddd; height: 26px; font-size: 20px; position: absolute; top: 0px; left: 0px; }

#rs_progressbar2 { margin: 0px; }

#step1label { text-align: left; width: 12.5%; position: absolute; top: 0px; left: 0px; font-size: 12px; height: 12px;	line-height: 12px; }
#step2label { text-align: center; width: 25%; position: absolute; top: 0px; left: 12.5%; font-size: 12px; height: 12px;	line-height: 12px; }
#step3label { text-align: right; width: 62.5%; position: absolute; top: 0px; left: 37.5%; font-size: 12px; height: 12px;	line-height: 12px; }

#step1label a, #step2label a, #step3label a { color: inherit; text-decoration:none; }

.infoblock { padding: 60px 30px 30px 30px; overflow: auto; }
.infoblock > h2 { margin-top: 0px; font-weight: 600; text-align: center; margin-bottom: 30px; /*color: #f38430;*/ }
.infoblock > h2 > span { border-bottom: 3px solid #f38430; }
.infoblock > h3 { font-weight: 600; }
.infoblock > p { margin-bottom: 0px; line-height: 24px; }
.infoblock > div.blk3 { background: #e6e6e6; margin-top: 30px; }
.infoblock > div.blk3:first-of-type { margin-top: 0px; }
.infoblock > div.blk3 > img { display: block; width: 100%; }
.infoblock > div > h4 { font-weight: 600; margin: 0px; text-align: center; padding: 20px; color: #999; }
.infoblock > div > h4 > span { color: #333; }
.infoblock > div > p { margin: 0px; padding: 20px; line-height: 24px; }
.infoblock > div > iframe { margin: 0px; padding: 0px; width: 100%; }
.infoblock > div.blk3 > div { margin: 0px; padding: 20px; border-top: 1px solid #fff; font-weight: 600; color: #999; }
.infoblock > div.blk3 > div > span { color: #333; }

#socialfb { background: #3B5998 !important; }
#socialfb > div { padding: 0px !important; border-top: 0px solid #fff; }
.attivati > h4 { border-bottom: 1px solid #fff; }
.attivati > p { line-height: 24px; }
#platformfunctions > div.blk3 { background: #fff; border: 1px solid #e6e6e6; }
#platformfunctions > div > h4 { border-bottom: 1px solid #e6e6e6; }
#platformfunctions > div.blk3 > div { border-top: 1px solid #e6e6e6; }

.eventblock { padding: 60px 30px 30px 30px; overflow: auto; }
.eventblock > h2 { margin-top: 0px; font-weight: 600; text-align: center; margin-bottom: 30px; /*color: #f38430;*/ }
.eventblock > h2 > span { border-bottom: 3px solid #f38430; }
.eventblock > div { background: #e6e6e6; margin-top: 30px; text-align: center; }
.eventblock > div:first-of-type { margin-top: 0px; }
.eventblock > div > h3 { font-weight: 600; margin: 0px; padding: 20px; }
.eventblock > div > img { display: block; width: 100%; }
.eventblock > div > p { margin: 0px; padding: 20px; }

.eventblock > div > div.eventblock-when { line-height: 24px; font-size: 16px; display: inline-block; margin: 10px 10px 10px 0; }
.eventblock > div > div.eventblock-when > .eventblock-day { font-weight: 600; border-radius: 5px 0 0 5px; border: 1px solid #bbb; color: #666; padding: 1px 6px; }
.eventblock > div > div.eventblock-when > .eventblock-month { font-weight: 600; border-radius: 0 5px 5px 0; border: 1px solid #bbb; color: #666; padding: 1px 6px; /*margin-left: 2px;*/ text-transform: uppercase; border-left: 0px; }

.eventblock > div > div.eventblock-where { line-height: 24px; font-size: 16px; display: inline-block; margin-top: 10px; }
.eventblock > div > div.eventblock-where > .eventblock-city { border-radius: 5px; border: 1px solid #fff; /*vertical-align: 3px;*/ background: #fff; color: #666; padding: 1px 6px; }
.eventblock > div > div.eventblock-where > .eventblock-city > img { vertical-align: -3px; margin-right: 5px; height: 17px; }

.eventblock > div > div.eventblock-more { margin: 0px; padding: 20px; border-top: 1px solid #fff; font-weight: 600; color: #999; }
.eventblock > div > div.eventblock-more > span { color: #333; }

.rssblock { padding: 60px 30px 30px 30px; overflow: auto; }
.rssblock > h2 { margin-top: 0px; font-weight: 600; text-align: center; margin-bottom: 30px; /*color: #f38430;*/ }
.rssblock > h2 > span { border-bottom: 3px solid #f38430; }
.rssblock > div { background: #e6e6e6; margin-top: 30px; text-align: center; }
.rssblock > div:first-of-type { margin-top: 0px; }
.rssblock > div > h3 { font-weight: 600; margin: 0px; padding: 20px; }
.rssblock > div > a > img { display: block; width: 100%; }
.rssblock > div > p { margin: 0px; padding: 20px; }

.rssblock > div > div.rssblock-when { color: #666; line-height: 24px; font-size: 16px; display: inline-block; margin: 10px 10px 10px 0; }

#main-single-step > div > p a, .infoblock > div.blk3 a, .eventblock > div a, .rssblock > div a { color: #f38430; transition: all 0.3s ease-out 0s; text-decoration: none; }
#main-single-step > div > p a:hover, .infoblock > div.blk3 a:hover, .eventblock > div a:hover, .rssblock > div a:hover { color: #ec5552; transition: all 0.3s ease-out 0s; text-decoration: underline; }


#mapblock { padding: 0; background: #e6e6e6; overflow: auto; }
#mapblock h2 { /*color: #f38430;*/ margin: 0px; font-weight: 600; text-align: center; padding: 60px 30px 30px 30px; background: #e6e6e6; border-bottom: 1px solid #fff; border-top: 3px solid #fff; }
#mapblock h2 > span { border-bottom: 3px solid #f38430; }
#mapblock h3 { font-weight: 600; margin-top: 0px; }
#mapblock h4 { font-weight: 600; }
#mapblock h4 > span.s10 { display: inline-block; width: 22px; height: 22px; border: 2px solid #f38430; background: rgba(243, 132, 48, 0.5); vertical-align: -4px; margin-right: 2px; }
#mapblock h4 > span.s20 { display: inline-block; width: 22px; height: 22px; border: 2px solid #ec5552; background: rgba(236, 85, 82, 0.5); vertical-align: -4px; margin-right: 2px; }
#mapblock h4 > span.s30 { display: inline-block; width: 22px; height: 22px; border: 2px solid #3a6c9c; background: rgba(58, 108, 156, 0.5); vertical-align: -4px; margin-right: 2px; }
#mapblock h4 > span.s31 { display: inline-block; width: 22px; height: 22px; border: 2px solid #4b9649; background: rgba(75, 150, 73, 0.5); vertical-align: -4px; margin-right: 2px; }
#mapblock p { margin-bottom: 0px; line-height: 24px; }

#rmap { height: 600px; width: 100%; }
#rmaptext { height: 600px; width: 100%; padding: 30px; }

#partners { padding: 30px; background: #e6e6e6; text-align: center; }
#partners h2 { margin: 0px 0px 30px 0px; color: #666; font-weight: 600; }
#partners h2 > span { border-bottom: 3px solid #fff; }
#partners img { height: 50px; margin: 0 10px; }

#bottom { background: #534741; padding: 30px; color: #fff; margin: 0px; text-align: center; }
#bottom a { color: inherit; text-decoration: none; transition: all 0.3s ease-out 0s; }
#bottom a:hover { text-decoration: none; color: #f15a24; }
#bottom img { width: 50px; display: inline-block; margin-right: 15px; }
#bottom p { display: inline-block; text-align: center; padding: 0px; margin: 0px; }

@media only screen and (min-width: 768px) {
	#brand { padding: 10px; }
	#brand img { width: 200px; }
	#main-single-step { padding: 30px 0; }
	.bg { background-size: auto; }
	/*#main > div { width: 45.5%; display: block; margin: 0 3% 0 1.5%; float: left; }
	#main > div:first-of-type { margin: 0 1.5% 0 3%; }*/
	#main-single-step > div { width: 46.9%; display: block; margin: 0 3% 0 0.1%; float: left; border-radius: 0 20px 20px 0; }
	#main-single-step > div:first-of-type { margin: 0 0.1% 0 3%; border-radius: 20px 0 0 20px; }
	#main-all-regions { padding: 30px 0; }
	#main-all-regions > div { width: 46.9%; display: block; margin: 0 3% 0 0.1%; float: right; border-radius: 0 20px 20px 0; }
	#main-all-regions > div:first-of-type { margin: 0 0.1% 0 3%; border-radius: 20px 0 0 20px; }
	.infoblock > div.blk3 { width: 31%; display: block; margin: 0 0 0 3.5%; float: left; /*border-radius: 20px;*/ }
	.infoblock > div.blk3d { width: 65.5%; display: block; margin: 0 0 0 3.5%; float: left; /*border-radius: 20px;*/ }
	.infoblock > div:first-of-type { margin: 0; }
	#platformfunctions > div.blk3:nth-of-type(3n+1) { margin: 0; }
	#platformfunctions > div.blk3:nth-of-type(n+4) { margin-top: 30px; }
	.eventblock > div { width: 23.5%; display: block; margin: 0 0 0 2%; float: left; /*border-radius: 20px;*/ }
	.eventblock > div:nth-of-type(4n+1) { margin-left: 0; }
	.eventblock > div:nth-of-type(n+5) { margin-top: 30px; }
	.rssblock > h2 { margin-bottom: 10px; }
	.rssblock > div { width: 18.4%; display: block; margin: 20px 0 0 2%; float: left; /*border-radius: 20px;*/ }
	.rssblock > div:nth-of-type(5n+1) { margin: 20px 0 0 0; }
	#rmap { width: 50%; float: right; }
	#rmaptext { width: 50%; float: left; }
	#bottom p { text-align: left; }
}

@media only screen and (min-width: 1500px) {
	#main-single-step { padding: 30px 0; }
	#main-single-step > div { width: 29.9%; display: block; margin: 0 20% 0 0.1%; float: left; border-radius: 0 20px 20px 0; }
	#main-single-step > div:first-of-type { margin: 0 0.1% 0 20%; border-radius: 20px 0 0 20px; }
	/*#main-all-regions { padding: 30px 0; }
	#main-all-regions > div { width: 46.9%; display: block; margin: 0 3% 0 0.1%; float: right; border-radius: 0 20px 20px 0; }
	#main-all-regions > div:first-of-type { margin: 0 0.1% 0 3%; border-radius: 20px 0 0 20px; }*/
	.infoblock { width: 1200px; padding: 60px 30px 30px 30px; margin: 0 auto; overflow: auto; }
}

/* Pizza Override */

#wintable tr > td:nth-child(3) { text-align: right; /*text-align-last: justify;*/ word-break: keep-all; white-space: nowrap; }

.stdformbutton { font-weight: 600; font-size: 14px; background: transparent; color: #999 !important; border: 1px solid #ddd; padding: 10px; border-radius: 0px; }
.stdformbutton:hover { background: #eee; }
.stdhformbutton{ font-weight: 600; font-size: 14px; background: #f38430; color: #fff !important; border: 1px solid #ddd; padding: 10px; border-radius: 0px; }
.stdhformbutton:hover { background: #ec5552; }

#winform #gdprinfo a { color: #f38430; transition: all 0.3s ease-out 0s; text-decoration: none; }
#winform #gdprinfo a:hover { color: #ec5552; transition: all 0.3s ease-out 0s; text-decoration: underline; }