/* form style */
.myform {
	position: relative;
	/*margin-top: 21px;*/
	font-family: 'Open Sans', 'Lucida Grande', LuxiSansBold, Arial, sans-serif;
	font-size: 14px;
	font-weight: 600;
	background: transparent;
}

/* nested fieldset */
/*.myform fieldset {
	position: relative;
	width: 410px;
	padding: 0;
	margin: 0 auto;
	background: #333;
	border: 0;
}*/

/* input field */
.myform input {
	display: block;
	position: relative;
	width: 100%;
	height: 42px;
	padding: 0 5px;
	margin: 0 0 21px 0;
	color: #333;
	font-family: 'Open Sans', 'Lucida Grande', LuxiSansBold, Arial, sans-serif;
	font-size: 14px;
	font-weight: 600;
	background-color: #fff/*transparent*/;
	border: 1px solid #ccc;
	border-radius: 0;
	-webkit-appearance: none;
}

.myform textarea {
	display: block;
	position: relative;
	width: 100%;
	margin: 0 0 21px 0;
	padding: 0 5px;
	color: #333;
	font-family: 'Open Sans', 'Lucida Grande', LuxiSansBold, Arial, sans-serif;
	font-size: 14px;
	font-weight: 600;
	line-height: 21px;
	background-color: #fff;
	border: 1px solid #ccc;
	border-radius: 0;
	-webkit-appearance: none;
	resize: none;
	overflow: auto;
}

.myform textarea.messageinput {
	height: 105px;
}

.myform textarea.quoteinput {
	height: 84px;
}

.myform textarea.questioninput {
	height: 105px;
}

.myform input[type="radio"] {
	z-index: 1000;
	display: none;
	position: absolute;
	left: 0;
	width: 30px;
	height: 30px;
	padding: 0;
	/*background-color: yellow;*/
}

.myform input[type="checkbox"] {
	z-index: 1000;
	display: none;
	position: absolute;
	left: 0;
	width: 30px;
	height: 30px;
	padding: 0;
}

/*#captcha {
	display: inline-block;
}*/

.myform input:focus, .myform textarea:focus { background-color: ivory; }
/*.myform input:active { background-color: #888; }*/
				
.myform select, #calhead select  {
	width: 100%;
	height: 42px;
	margin: 0 0 21px 0;
	padding: 0 5px;
	color: #000;
	font-family: 'Open Sans', 'Lucida Grande', LuxiSansBold, Arial, sans-serif;
	font-size: 14px;
	font-weight: 600;
	line-height: 21px;
	background: #fff url();
	border: 1px solid #ccc;	
	box-shadow: none;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	border-radius: 0;
	-webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
}

#calhead select  {
	width: 100px;
	height: 23px;
	margin: 0;
	background: #eee url(../../img/ui/selectarrowsmall.png) right center no-repeat;
	border-top: white;
	border-right: white;
}

.myform select option, #calhead select option {
	height: 42px;
	padding-top: 10px;
	box-shadow: none;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	border-radius: 0;
	-webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

#calhead select option {
	height: 21px;
	padding-top: 1px;
	border: none;
	box-shadow: none;
}

.myform select option:nth-child(even), #calhead select option:nth-child(even) { background: #eee; }

.selectbox select:focus, .selectboxbooking select:focus, #calhead select:focus {
    outline: none;
}

.selectbox select:-moz-focusring, .selectboxbooking select:-moz-focusring, #calhead select:-moz-focusring {
    color: transparent;
    text-shadow: 0 0 0 #000;
}

.selectbox:after, .selectboxbooking:after {
	z-index: 10000;
    position: absolute;
    top: 40px;
    left: 230px;
    height: 0;
    width: 0;
    margin-top: -2px;
    content: " ";
    pointer-events: none;
    border: solid transparent;
    border-color: rgba(0, 0, 0, 0);
    border-top-color: #000000;
    border-width: 10px; 
}

/*.myform .radiobuttons, .myform .radiobuttonsbooking, .myform .checkboxes {
	z-index: 1000;
	width: 100%;
	margin: 0 0 21px 0;
	background-color: white;
	border: 1px solid #ccc;
}*/

input.cityinput {  }

.myform #vouchercode {
	font-size: 2em;
	font-weight: bold;
	text-align: right;
	letter-spacing: .2em;
}

.x input:invalid {
  outline: 2px solid red;
}

.myform .submit, .myform .reset, #uploadbutton {
	float: left;
	/*width: 110px;*/
	height: 42px;
	/*margin-left: 40px;*/
	color: #44bbaa;
	/*font-family: 'Open Sans', 'Lucida Grande', LuxiSansBold, Arial, sans-serif;
	font-size: 14px;
	font-weight: 600;*/
	border: 1px solid #ccc;
	cursor: pointer;
}

.myform .submit, .myform .pay  {
	font-size: 1.5em;
}
.myform .submit:focus, .myform .reset:focus, #uploadbutton:focus { background-color: white; }
.myform .reset { border-right: none; }
.myform .submit:hover, .myform .reset:hover, #uploadbutton:hover { color: #f06 }

/* field label */
label {
	display: inline-block;
	width: 100%;
	height: 21px;
	padding: 0 5px;
	background-color: rgba(255,255,255,0.7);
	-webkit-user-select: none;
   	-moz-user-select: none;
    -ms-user-select: none;
}

	/*label.gender { width: 100px; padding: 0; }*/
	
	label.radiolabel, label.radiolabel2/*, label.checkboxlabel*/ {
		position: relative;
		float: left;
		width: 76px;
		height: 40px;
		padding: 9px 0 0 4px;
		/*background-color: cyan;*/
		cursor: pointer;
	}
		
		label.radiolabel2.wide0 { float: right; width: 49px; }
		label.radiolabel.wide1 { width: 83px; /*background-color: green;*/ }	
		label.radiolabel.wide2 { float: right; width: 84px; /*background-color: magenta;*/ }
		label.radiolabel.wide3 { width: 110px; /*background-color: cyan;*/ }
		label.radiolabel.wide4 { float: right; width: 108px; /*background-color: blue;*/ }

		/*label.checkboxlabel.wide1 { width: 56px; background-color: green; }		
		label.checkboxlabel.wide2 { float: right; width: 112px; background-color: magenta; }
		label.checkboxlabel.wide3 { width: 116px; background-color: cyan; }
		label.checkboxlabel.wide4 { float: right; width: 112px; background-color: blue; }*/
		
		label.radiolabel:before, label.radiolabel2:before/*, label.checkboxlabel:before*/ {
			content: "";
    		position: absolute;
    		top: 9px;
    		width: 24px;
    		height: 24px;
			background-color: #ddeeff;
			border-radius: 50%; 
    		box-shadow: inset 0px 2px 3px 0px rgba(0, 0, 0, .3), 0px 1px 0px 0px rgba(255, 255, 255, .8);
		}
		
		/*label.radiolabel:hover:not(:checked) ~ label.radiolabel:before {
			background-color: #4466dd;
		}*/
		
		/*label.checkboxlabel:before {
			padding 0;
			background-color: #ccccff;
			border-radius: 4px;
		}*/
		
		input[type=radio]:checked + label:before {
    		content: "\2022";
    		padding-left: 1px;
    		color: #bbddee;
    		font-size: 48px;
    		line-height: 23px;
    		text-align: center;
    		text-shadow: 2px 2px 2px rgba(0, 0, 0, .3);
    		background-color: #4466dd;
		}
		
		/*input[type=checkbox]:checked + label.checkboxlabel:before {
    		content: "\2713";
    		color: #ddeeff;
    		font-size: 20px;	
    		line-height: 24px;
    		text-align: center; 		
    		text-shadow: 1px 1px 1px rgba(0, 0, 0,0.3);
    		background-color: #6655cc;
		}*/
		
			/*label.radiolabel:last-of-type { margin: 0; }*/
			label.radiolabel span, label.radiolabel2 span, label.checkboxlabel span { padding-left: 30px; }
		
		.captchabox {
			float: left;
			background-color: #ccc;
			border-bottom-right-radius: 4px;
			border-bottom-left-radius: 4px;
		}
		
		.qrcodebox, .qrcodeboxbooking {
			float: right;
			/*background-color: #ddd;*/
		}
		
			.qrcode {
				width: 84px;
				height: 84px;
				background: url(../../img/ui/tarotQR.jpg) 0 0 no-repeat;
			}
		
			label.qrlabel { width: 84px; }
		
		.promobox {
			float: right;
			height: 105px;
			margin-left: 17px;
			/*background-color: #eee;*/
		}
			
			.promo {
				width: 40px;
				height: 84px;
				margin: 0; padding: 0;
				background: url(../../media/vouchericon.jpg) 0 0 no-repeat;
				border: 1px solid #ccc;
				cursor: pointer;
			}
			
			label.promolabel { width: 40px; }

			.req { color: #f06; }

/* error message */
.error {
	display: none;
	height: 23px;
	padding: 0 5px;
	color: #333;
	font-size: 14px;
	background-color: yellow;
}

.error em {
	display: block;
	position: absolute;
	left: 20px;
	bottom: -19px;
	width: 0;
	height: 0;
	border: 10px solid;
	border-color: #FFFF00 transparent transparent;
}

.error p { margin: 0; }

/* typography */
/*.myform h3 { margin: 0; color: #eee; text-align: center; }*/
.myform p { margin-bottom: 10px; color: #eee; font-size: 12px;	background: #333; }
.myform em, .myform i { color: #eee; font-size: 11px; line-height: 16px;}
.myform .footer { position: relative; width: 260px; margin-left: 80px; text-align: justify; }

.myform h3 {
	margin: 1px 0 19px 0;
	/*font-size: 3.72em;
	line-height: .82em;*/
	color: #4466dd;
	font-size: 52px;
	line-height: 42px;
	font-weight: bold;
}


/* Datepicker. For the details, see: http://flowplayer.org/tools/dateinput/index.html#skinning */

/* calendar root element */
#calroot {
    /* place on top of other elements. set a higher value if nessessary */
    z-index: 9999;
    display: none;
	position: absolute;
	top: 0px;
	right: 0;
	/*margin: 0 0 0 -7px;
	padding-top: 10px;*/
    /*width: 230px;
    height: 177px;*/
    width: 282px;
    height: 317px;     
    font-family: sans-serif;
    background-color: #fff;
    border: 1px solid #ccc;
    /*border-width: 0 1px 1px;*/
    -moz-border-radius-topleft:0;
    -moz-border-radius-topright:0;
    -webkit-border-top-left-radius:0;
    -webkit-border-top-right-radius:0;
}

/* head. contains title, prev/next month controls and possible month/year selectors */
#calhead {
    /*padding: 1px 0;
    height: 21px;
    padding: 10px;*/
    height: 42px;
    background-color: #333;
}

#caltitle {
    font-size: 14px;
    color: #4466dd;
    float: left;
    text-align: center;
    /*width: 174px;
    line-height: 20px;*/
    width: 200px;
    line-height: 42px;  
    text-shadow: 0 1px 0 #ddd;
    /*background-color: yellow;*/
}

#calnext, #calprev {
    display: block;
    float: left;
    width: 22px;
    height: 42px;
	margin: 0 11px 0 7px;
    background: transparent url(../../img/ui/transportsprite.png) -260px -84px no-repeat;
    cursor: pointer;
}

#calnext {
    float: right;
    margin: 0 7px 0 11px;
    background: transparent url(../../img/ui/transportsprite.png) -260px -126px no-repeat;
}

#calprev.caldisabled, #calnext.caldisabled {
    visibility: hidden;
}

/* year/month selector */
#caltitle select {
    /*font-size: 10px;*/
}

#calyear {
	
}

#calmonth select {

}

/* names of the days */
#caldays {
    height: 21px;
    border-bottom: 1px solid #ddd;
    background-color: lightseagreen;
}

#caldays span {
    display: block;
    float: left;
    /*width: 32px;*/
    width: 40px;
    text-align: center;
    /*font-size: 11px;*/
    font-size: 13px;
    line-height: 21px;
    -webkit-user-select: none;
   	-moz-user-select: none;
    -ms-user-select: none;
}

/* container for weeks */
#calweeks {
    background-color: #fff;
   /* margin-top: 1px;*/
}

/* single week */
.calweek {
    clear: left;
    /*height: 22px;*/
    height: 42px;
}

/* single day */
.calweek a {
    display: block;
    float: left;
    width: 40px;
    height: 42px;
    text-decoration: none;
    text-align: center;
    line-height: 44px;
    color: #666;
}

/* different states */
.calweek a:hover, .calfocus {
    background-color: #ddd;
}

/* date input trigger element */
.caltrigger {
    display: block;
	position: absolute;
	right: 0;
	top: 21px;
    width: 42px;
    height: 42px;
    background: url(../../img/ui/transportsprite.png) -260px 0 no-repeat;
}

/*.active .caltrigger {
    background-position: 0 -32px;
}*/

/* sunday */
a.calsun {
    color: red;
}

/* offmonth day */
a.caloff {
    color: #ccc;
}

a.caloff:hover {
    background-color: rgb(245, 245, 250);
}

/* unselecteble day */
a.caldisabled {
    background-color: #efefef !important;
    color: #ccc !important;
    cursor: default;
}

/* current date */
#calcurrent {
    background-color: #4466dd;
    color:#fff;
}

/* today */
#caltoday {
    background-color: #999;
    color: #fff;
}