/* http://meyerweb.com/eric/tools/css/reset/ | v2.0 | 20110126 |  License: none (public domain) */
a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:'';content:none}table{border-collapse:collapse;border-spacing:0}

/*********************/
/******  GRID  *******/
/*********************/
.grid{ display: -webkit-box; display: -ms-flexbox; display: flex;
-webkit-box-orient: horizontal;  -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row;
-ms-flex-wrap: wrap;  flex-wrap: wrap;
-webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start;
-webkit-box-align: stretch;  -ms-flex-align: stretch; align-items: stretch; }

.grid-align-center { -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
.grid-justify-center { -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }
.grid-justify-space-between{  -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }

.grid-container{ width: 100%; }

.grid-item{ -webkit-box-sizing: border-box; box-sizing: border-box;
-webkit-box-flex: 0; -ms-flex: 0 0 auto; flex: 0 0 auto;  }

.grid-gap{ margin-left: 8px; margin-right: 8px;}
.grid-gap > .grid-item, .grid-gapbox > .grid-item{ padding-left: 8px; padding-right: 8px; }
.grid-gapbox{ margin-left: -8px; margin-right: -8px; }

.grid-clearfix{ width:100%; height: 0; visibility: hidden; -webkit-box-flex: 0; -ms-flex: 0 0 auto; flex: 0 0 auto; }

.hidden-xs{ display: none; }

.grid-span1{ width: 8.33333%; }
.grid-span2{ width: 16.66666%; }
.grid-span3{ width: 25%; }
.grid-span4{ width: 33.33333%; }
.grid-span5{ width: 41.66666%; }
.grid-span6{ width: 50%; }
.grid-span7{ width: 58.33333%; }
.grid-span8{ width: 66.66666%; }
.grid-span9{ width: 75%; }
.grid-span10{ width: 83.33333%; }
.grid-span11{ width: 91.66666%; }
.grid-span12{ width: 100%; }

.grid-push1{ margin-left: 8.33333%; }
.grid-push2{ margin-left: 16.66666%; }
.grid-push3{ margin-left: 25%; }
.grid-push4{ margin-left: 33.33333%; }
.grid-push5{ margin-left: 41.66666%; }
.grid-push6{ margin-left: 50%; }
.grid-push7{ margin-left: 58.33333%; }
.grid-push8{ margin-left: 66.66666%; }
.grid-push9{ margin-left: 75%; }
.grid-push10{ margin-left: 83.33333%; }
.grid-push11{ margin-left: 91.66666%; }
.grid-push12{ margin-left: 100%; }


@media screen and (min-width: 35.5em) {
	/*.grid-container{ max-width: 568px; }*/

	.grid-gap{ margin-left: 15px; margin-right: 15px;}
	.grid-gap > .grid-item, .grid-gapbox > .grid-item{ padding-left: 15px; padding-right: 15px; }
	.grid-gapbox{ margin-left: -15px; margin-right: -15px; }

	.grid-span1-sm{ width: 8.33333%; }
	.grid-span2-sm{ width: 16.66666%; }
	.grid-span3-sm{ width: 25%; }
	.grid-span4-sm{ width: 33.33333%; }
	.grid-span5-sm{ width: 41.66666%; }
	.grid-span6-sm{ width: 50%; }
	.grid-span7-sm{ width: 58.33333%; }
	.grid-span8-sm{ width: 66.66666%; }
	.grid-span9-sm{ width: 75%; }
	.grid-span10-sm{ width: 83.33333%; }
	.grid-span11-sm{ width: 91.66666%; }
	.grid-span12-sm{ width: 100%; }

	.grid-push0-sm{ margin-left: 0%; }
	.grid-push1-sm{ margin-left: 8.33333%; }
	.grid-push2-sm{ margin-left: 16.66666%; }
	.grid-push3-sm{ margin-left: 25%; }
	.grid-push4-sm{ margin-left: 33.33333%; }
	.grid-push5-sm{ margin-left: 41.66666%; }
	.grid-push6-sm{ margin-left: 50%; }
	.grid-push7-sm{ margin-left: 58.33333%; }
	.grid-push8-sm{ margin-left: 66.66666%; }
	.grid-push9-sm{ margin-left: 75%; }
	.grid-push10-sm{ margin-left: 83.33333%; }
	.grid-push11-sm{ margin-left: 91.66666%; }
	.grid-push12-sm{ margin-left: 100%; }


	.hidden-xs{ display: inline-block; }
    .hidden-sm{ display: none; }

}


@media screen and (min-width: 48em) {
	/*.grid-container{ max-width: 768px; }*/

	.grid-span1-md{ width: 8.33333%; }
	.grid-span2-md{ width: 16.66666%; }
	.grid-span3-md{ width: 25%; }
	.grid-span4-md{ width: 33.33333%; }
	.grid-span5-md{ width: 41.66666%; }
	.grid-span6-md{ width: 50%; }
	.grid-span7-md{ width: 58.33333%; }
	.grid-span8-md{ width: 66.66666%; }
	.grid-span9-md{ width: 75%; }
	.grid-span10-md{ width: 83.33333%; }
	.grid-span11-md{ width: 91.66666%; }
	.grid-span12-md{ width: 100%; }

	.grid-push0-md{ margin-left: 0%; }
	.grid-push1-md{ margin-left: 8.33333%; }
	.grid-push2-md{ margin-left: 16.66666%; }
	.grid-push3-md{ margin-left: 25%; }
	.grid-push4-md{ margin-left: 33.33333%; }
	.grid-push5-md{ margin-left: 41.66666%; }
	.grid-push6-md{ margin-left: 50%; }
	.grid-push7-md{ margin-left: 58.33333%; }
	.grid-push8-md{ margin-left: 66.66666%; }
	.grid-push9-md{ margin-left: 75%; }
	.grid-push10-md{ margin-left: 83.33333%; }
	.grid-push11-md{ margin-left: 91.66666%; }
	.grid-push12-md{ margin-left: 100%; }

	.hidden-xs, .hidden-sm{ display: inline-block; }
    .hidden-md{ display: none; }

    .grid-reverse-md{ -webkit-box-orient: horizontal; -webkit-box-direction: reverse; -ms-flex-direction: row-reverse; flex-direction: row-reverse; }

}

@media screen and (min-width: 64em) {
	/*.grid-container{ max-width: 1024px; }*/

	.grid-span1-lg{ width: 8.33333%; }
	.grid-span2-lg{ width: 16.66666%; }
	.grid-span3-lg{ width: 25%; }
	.grid-span4-lg{ width: 33.33333%; }
	.grid-span5-lg{ width: 41.66666%; }
	.grid-span6-lg{ width: 50%; }
	.grid-span7-lg{ width: 58.33333%; }
	.grid-span8-lg{ width: 66.66666%; }
	.grid-span9-lg{ width: 75%; }
	.grid-span10-lg{ width: 83.33333%; }
	.grid-span11-lg{ width: 91.66666%; }
	.grid-span12-lg{ width: 100%; }

	.grid-push0-lg{ margin-left: 0%; }
	.grid-push1-lg{ margin-left: 8.33333%; }
	.grid-push2-lg{ margin-left: 16.66666%; }
	.grid-push3-lg{ margin-left: 25%; }
	.grid-push4-lg{ margin-left: 33.33333%; }
	.grid-push5-lg{ margin-left: 41.66666%; }
	.grid-push6-lg{ margin-left: 50%; }
	.grid-push7-lg{ margin-left: 58.33333%; }
	.grid-push8-lg{ margin-left: 66.66666%; }
	.grid-push9-lg{ margin-left: 75%; }
	.grid-push10-lg{ margin-left: 83.33333%; }
	.grid-push11-lg{ margin-left: 91.66666%; }
	.grid-push12-lg{ margin-left: 100%; }

	.hidden-xs, .hidden-sm, .hidden-md{ display: inline-block; }
    .hidden-lg{ display: none; }


	.grid-reverse-lg{ -webkit-box-orient: horizontal; -webkit-box-direction: reverse; -ms-flex-direction: row-reverse; flex-direction: row-reverse; }
}


@media screen and (min-width: 80em) {
	.grid-container{ max-width: 1280px; }

	.grid-span1-xl{ width: 8.33333%; }
	.grid-span2-xl{ width: 16.66666%; }
	.grid-span3-xl{ width: 25%; }
	.grid-span4-xl{ width: 33.33333%; }
	.grid-span5-xl{ width: 41.66666%; }
	.grid-span6-xl{ width: 50%; }
	.grid-span7-xl{ width: 58.33333%; }
	.grid-span8-xl{ width: 66.66666%; }
	.grid-span9-xl{ width: 75%; }
	.grid-span10-xl{ width: 83.33333%; }
	.grid-span11-xl{ width: 91.66666%; }
	.grid-span12-xl{ width: 100%; }

	.grid-push0-xl{ margin-left: 0%; }
	.grid-push1-xl{ margin-left: 8.33333%; }
	.grid-push2-xl{ margin-left: 16.66666%; }
	.grid-push3-xl{ margin-left: 25%; }
	.grid-push4-xl{ margin-left: 33.33333%; }
	.grid-push5-xl{ margin-left: 41.66666%; }
	.grid-push6-xl{ margin-left: 50%; }
	.grid-push7-xl{ margin-left: 58.33333%; }
	.grid-push8-xl{ margin-left: 66.66666%; }
	.grid-push9-xl{ margin-left: 75%; }
	.grid-push10-xl{ margin-left: 83.33333%; }
	.grid-push11-xl{ margin-left: 91.66666%; }
	.grid-push12-xl{ margin-left: 100%; }

	.hidden-xs, .hidden-sm, .hidden-md, .hidden-lg{ display: inline-block; }
    .hidden-xl{ display: none; }
}

/*********************/

html, body, input, textarea{ font-size: 18px; line-height: 1.2em; font-weight: 300;
    font-family: "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
    -ms-touch-action: manipulation; touch-action: manipulation; }
/* html { width: 100%; height: 100%; }
body{ width: 100%; min-height: 100%; } */

.fr-inputbox{ margin: 20px 0; display: block; }
.fr-inputbox-label{  color: #ff9800; margin-bottom: 10px; display: block; }
.fr-inputbox-input, .fr-inputbox-textarea{ display: block; width: 100%; padding: 5px; line-height: 20px; margin: 0; font-size: 16px; box-sizing: border-box;
	background: #F9F9F9; border: none; border-bottom: 1px solid #e0e0e0;  }
.fr-inputbox-input:focus, .fr-inputbox-textarea:focus{ outline: none; border-bottom-color: #ff9800; }

.fr-inputbox-radiogrouplabel{ margin: 20px 0 10; }
.fr-radiobox{ display: inline-block; }
.fr-radiobox-label, .fr-radiobox-radio{ display: inline-block; vertical-align: middle; margin: 0; padding: 0; margin-right: 2px; line-height: 30px; }

.fr-inputbox-error{ display: none; }

.fr-inputdatabox-input{ width: auto; text-align: right; display: inline-block; padding: 5px; }
.fr-inputdatabox-input option{  direction: rtl; }

.fr-inputbox-textarea{ resize: none; }

.btn{  -webkit-appearance: none; display: inline-block; margin: 0; padding:8px 15px; background-color: #448aff; color: #FFF; line-height: 20px; text-decoration: none;
	outline: none; cursor: pointer; border: none; border-radius: 2px; text-transform: uppercase; font-size: 16px;
	box-shadow: 0 2px 2px 0 rgba(0,0,0,.14), 0 3px 1px -2px rgba(0,0,0,.2), 0 1px 5px 0 rgba(0,0,0,.12); }
.btn:focus, .btn:hover { background-color: #549aff; box-shadow: 0 4px 5px 0 rgba(0,0,0,.14), 0 1px 10px 0 rgba(0,0,0,.12), 0 2px 4px -1px rgba(0,0,0,.2); }

.btn-grey{ background-color: #ececec; color:#333; }
.btn-grey:focus, .btn-grey:hover {  background-color: #d8d8d8; }


.marginTop, .margin{ margin-top: 30px; }
.marginBottom, .margin{ margin-bottom: 30px; }
.marginSmallTop, .marginSmall{ margin-top: 15px; }
.marginSmallBottom, .marginSmall{ margin-bottom: 15px; }
.marginBigTop, .marginBig{ margin-top: 50px; }
.marginBigBottom, .marginBig{ margin-bottom: 50px; }

.text-align-left{ text-align: left; }
.text-align-center{ text-align: center; }
.text-align-right{ text-align: right; }

.titolo1{ font-size: 34px; line-height: 1.2em; }

.alert{ display: block; padding: 16px; color: #FFF; background-color: #039be5; border-radius: 2;
	    box-shadow: 0 2px 2px 0 rgba(0,0,0,.14), 0 3px 1px -2px rgba(0,0,0,.2), 0 1px 5px 0 rgba(0,0,0,.12); }
.alert-success{ background-color: #4CAF50; }
.alert-danger{ background-color: #F44336; }

/*********************/
#layout{ position: absolute; top:0; left: 0; width: 100%; height: 100%;
    display: -webkit-box; display: -ms-flexbox; display: flex;
    -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column;
}

#header{ background-color: #ff9800; color: #FFF; padding: 5px 16px; position: relative; z-index: 10;
    box-shadow: 0 2px 2px 0 rgba(0,0,0,.14), 0 3px 1px -2px rgba(0,0,0,.2), 0 1px 5px 0 rgba(0,0,0,.12);
    -webkit-box-flex: 0; -ms-flex: 0 0 auto; flex: 0 0 auto; }

#content{ z-index: 1; padding: 32px 0;
    overflow-y: auto; overflow-x: hidden; -webkit-overflow-scrolling: touch;
    -webkit-box-flex: 1; -ms-flex: 1 1 auto; flex: 1 1 auto; }

.calendario-title{ display: block; color: #e0e0e0; position: relative; }
.calendario-title::after{ content:''; position: absolute; top:50%; left: 0; width: 100%; height: 0px; border-bottom: 1px solid; margin-top: -1px; }
.calendario-title-text{ display: inline-block; background-color: #FFF; padding: 5px; z-index: 2; position: relative; margin-left: 10px; color: #333; }

.calendario-prenotazione{ position: relative; padding: 10px; border-radius: 2px; border-left: 5px solid #0078d4; background-color: #0078d433; color: #0078d4; font-size: 16px; margin: 10px 0; }
.calendario-prenotazione-titolo{ font-weight: bold; margin-bottom: 5px; }

.calendario-prenotazione-label{ display: block; cursor: pointer; }
.calendario-prenotazione-desc, .calendario-prenotazione-radio{ display: inline-block; vertical-align: baseline; line-height: 26px; margin: 0; }


.tabbox{ position: relative; overflow: hidden;}
.tabhead{  display: -webkit-box; display: -ms-flexbox; display: flex;
	-webkit-box-orient: horizontal;  -webkit-box-direction: normal;  -ms-flex-direction: row;  flex-direction: row;
	-ms-flex-wrap: nowrap; flex-wrap: nowrap;
	-webkit-box-align: stretch; -ms-flex-align: stretch; align-items: stretch; }
.tabheaditem{ flex: 1 1 auto; width: 50%; padding: 8px 15px; box-sizing: border-box; border-bottom: 2px solid #ececec; cursor: pointer; }
.tabheaditem:first-child{  border-left: 0; }
.tabheaditem:hover{ background-color: #f0f0f0; }
.tabitem{ display: none; }
.tabinput{ position: absolute; top:0; left: -110%; z-index: -1; }

#cal-tabinput-sala-option-brescia:checked ~ .tabhead #cal-tabheaditem-sala-option-brescia,
#cal-tabinput-sala-option-milano:checked ~ .tabhead #cal-tabheaditem-sala-option-milano{ border-bottom-color: #ff9800; color: #ff9800; }

#cal-tabinput-sala-option-brescia:checked ~ .tabbody #cal-tabitem-sala-option-brescia,
#cal-tabinput-sala-option-milano:checked ~ .tabbody #cal-tabitem-sala-option-milano{ display: block; }

@media screen and (min-width: 48em) {
	.tabitem{ display: block !important; }
	.tabhead{ margin: 0 -16px;}
	.tabheaditem,.tabheaditemactive{ background: none !important; color: #ff9800 !important; border-bottom: 1px solid #ff9800 !important; margin: 0 16px; }

	#calendario-prenota .calendario-scrollerbox{ position: relative; }
	#calendario-prenota .calendario-scroller{ max-height: 50vh; overflow-y: auto; padding: 0 16px 0 0; }
	#calendario-prenota .calendario-scroller::after, #calendario-prenota .calendario-scrollerbox::before{ content: ''; display: block; height: 14px; width: 100%; }
	#calendario-prenota .calendario-scrollerbox::before{ position: absolute; bottom:0; left: 0; width: calc(100% - 16px ); height: 30px
		background-color: #F00; background: linear-gradient(rgba(255,255,255,0), rgba(255,255,255,1)); }
}
