/* -------------------------------------------------------------- 
   
   forms.css
   * esl.ch
   
-------------------------------------------------------------- */

form#form fieldset {
	padding:1.4em;
	#padding-top: 2em;
	margin: 0 0 1.5em 0;
	border: 1px solid #ccc;
	#position : relative;
	background: url('/img/form/fieldset_bg.png') bottom repeat-x;
}

form#form legend {
	font-weight: bold;
	color: #444;
	font-size: 1.1em;
	#position: absolute;
	#top: -.55em;
	#left: .2em;
	#margin-bottom: 1.4em;
	margin-bottom: 1.4em\9;
}

form#form strong.legend {
	color : #444;
	font-size : 1.1em;
	font-weight : bold;
	margin-top : 1.2em;
	text-align : left;
	width : 650px;
}

form#form h2 {
	color: #004885;
	margin : 1em 0 1.5em;
	padding-bottom: 10px;
	border-bottom: 1px dotted #666;
}

/* form fields
-------------------------------------------------------------- */

form#form input.text,
form#form input.title,
form#form textarea, 
form#form select {
  margin: 0;
  border: 1px solid #bbb;
}

form#form input.text:focus,
form#form input.title:focus,
form#form textarea:focus,
form#form select:focus {
  border:1px solid #666;
}

form#form input.text, 
form#form input.title   { width: 250px; padding:3px; }
form#form input.small   { width: 100px !important; }
form#form input.tiny   { width: 40px !important; }
form#form input.title   { font-size:1.5em; }
form#form textarea      { width: 250px; height: 100px; padding:3px; }
form#form select		{ width: 200px; }



/* General form structure
-------------------------------------------------------------- */

form#form {
	font-family: "Lucida Grande",Verdana,sans-serif;
	font-size: 11px;
	color: #666;
}

form#form strong {
	float: left;
	clear: both;
	display: block;
	width: 300px;
	margin: 0.8em 2.5em 0.5em 0;
	text-align: right;
	font-weight: normal;
}

form#form strong.required {
	font-weight: bold;
	color: #444;
}

form#form strong a {
	color: #004885;
}

form#form strong.required span {
	color: #E00;
}


form#form input,
form#form input.text,
form#form select,
form#form textarea {
	background : #FFF;
}

form#form label,
form#form input,
form#form input.text,
form#form select,
form#form textarea,
form#form .input {
	float: left;
	margin : 0.4em 0;
	#margin : 0.2em 0;
}

form#form select {
	height : 22px;
	padding: 2px;
	background: #FFF;
}

form#form .input {
	width: 310px;
	margin: 0.25em 0;
	#margin: 0;
	margin: 0\9;
}

form#form .input label.radio{
	margin-right: 6px;
	margin-left: 2px;
	margin: 1px\9
}

body:nth-of-type(1) form#form .input label.radio{
   margin-right: 9px;
}

form#form label {
	margin-right: 8px;
}

form#form .block label {
	display: block;
}

form#form .fixed label {
	display: block;
	float:left !important;
	width:75px;
	#width:95px;
}

form#form .input input.text {
	width: 80px;
	padding : 2px;
	margin: 0 5px 0 0;
}

form#form .block input.text {
	margin-top: -2.1em;
	width: 160px;
	float: right;
}

form#form .large strong {
	width : 100px;
}

form#form .submit strong.large {
	width : 100px !important;
}

form#form .large .list {
	width : 600px;
	float : left;
}

form#form .cbdest {
	float : left;
	width : 180px;
	margin : .4em 0;
}

form#form .cbdest input, form#form .cblng input{
	margin : 0 .4em 0 0;
}

form#form .cblng {
	float : left;
	width : 50px;
	margin : .4em 0;
}

form#form .input label,
form#form .input input,
form#form .input select,
form#form .input textarea {
	float: none;
}

form#form div.birthdate select{
	width : auto !important;
}

div.sep {
	clear: both;
}

form#form div.end {
	clear: both;
	font-size: 0;
	#height: 5px;
}

form#form div.submit {
	margin : 2.5em 0 0;
}

/*------------- feedback ------*/

form#form #feedback strong {
	width : 300px;
}

form#form #feedback .input {
	width : 330px;
}

form#form fieldset div.feedback input{
	margin : 0 3px 0 2px;
}

form#form #feedback textarea {
	height : 60px;
}

form#form div.first {
	margin-top : 10px;
}

form#form div.first strong {
	margin-top : 30px;
}

form#form div.first .input {
	padding-top : 25px;
	background : url('/img/smileys/all.png') 0 0 no-repeat;
}


/*---------------------------*/

.form {
background: #f3f7fc url(/img/form/bg.png) 0 -6px no-repeat;
width:732px;
margin-bottom:14px;
font-size:11px;
}

.form .bottom{
background: url(/img/form/bg.png) no-repeat;
font-size: 0;
height:6px;
margin-bottom:0px;
}

.form h2 {
background: url(/img/bg/greydot.gif) repeat-x top;
margin: 15px 15px 0;
padding: 25px 3px  10px !important;
}

.maintitle h2 {
	background: none;
}

.buttoncalc,
#blockbtn {
	text-align: center;
}

/*.text input,
.textnoarrow input {.
color:#666666;
border: none;
background:url(/img/form/inputright.gif) no-repeat right;
padding:6px 5px 5px 5px;
height:19px;
}
*/

.text input,
.textnoarrow input {
color:#666666;
border: none;
background:url(/img/form/inputright.gif) no-repeat right;
padding:6px 5px 5px 10px;
}

.text,
.textnoarrow,
.select {
/*background:url(/img/form/inputleft.gif) no-repeat left;*/
padding:0;
}

.select input{
color:#666;
padding-left:10px;
}

.text input {
width:340px;
}

/*select {
cursor: pointer;
border: none;
background: url(/img/form/selectright.gif) no-repeat right;
padding:5px 5px 5px 0;
width: 350px;
}*/

.nice_radio img {
background:transparent url(/img/form/nice_radio.png) repeat scroll 0pt 0pt;
}
.nice_radio_actif img {
background:transparent url(/img/form/nice_radio.png) repeat scroll 0pt 22px;
}

.nice_select_simple {
cursor:default;
background:transparent url(/img/form/selectright.gif) no-repeat scroll right center;
border:medium none;
height:18px;
padding:6px 5px 5px;
width:340px;
}

.nice_select_open {
background-color:#3a5a76;
color:white;
cursor:pointer;
position:absolute;
z-index:9999;
background:url(/img/form/line.gif);
opacity:0.9;
}

.nice_scroll_up{
background:transparent url(/img/form/nice_scroll.gif) no-repeat scroll 0pt 0%;
height:9px;
width:100%;
}
.nice_scroll_down{
height: 11px;
background:transparent url(/img/form/nice_scroll.gif) no-repeat 0pt 70%;
width: 100%;
}


.nice_select_open li{
padding:4px 4px 4px 9px;
min-height:12px;
}
.nice_selectHover{
background:#fdaf12 none repeat scroll 0%;
color:#375875;
}

.scrollUl{
margin:0px;
padding:0px;
}


span.btn{
float:left;
height:30px;
background:url(/img/form/btn_left.png) no-repeat;
}

span.btn:hover{
background-image:url(/img/form/btn_left_over.png);
}

.button{
cursor:pointer;
color:#316b9d;
text-transform:uppercase;
border:none;
padding:0 30px;
_padding:0 10px;
height:30px;
background:url(/img/form/btn_right.png) no-repeat right;
outline:none;
}

.button:hover{
background-image:url(/img/form/btn_right_over.png);
}

.formsep{
border-bottom:1px solid grey;
}

/* CSS TEMP FOR INPUT */

#formular input[type=text], #formular select{
border:1px solid #AAA;
padding:2px;
margin:2px;
}

#formular textarea {
padding:2px;
margin:2px;
border:1px solid #AAA;
font-family:"Lucida Grande",Verdana,sans-serif;
font-size:12px;
}

#formular .item_title{
margin:0px 15px 20px;
font-weight:bold;
}

#formular .leftcontent{
margin-left:25px;
text-align:left;
}
#tellafriend{
padding:20px;
}

#tellafriend .form{
width:450px;
}

/* Style dt form */

#formular div.cbdest{
width:170px;
float:left;
}

#formular td.lbl{
width:202px;
padding-left:10px;
vertical-align:top;
}

#formular td.lblright{
text-align:right;
vertical-align:middle;
}

#formular td.req{
font-weight:bold;
}

#formular table#dtinput{
width:100%;
margin-left:12px;
}

input.contact {
margin-left:37px;	
}

table#dtinput tr.item_title{
height:30px;
padding:0;
vertical-align:bottom;
}

/* QuickQuote */
#quickquote,
#quickquotejunior{
font-size:12px;
}

#year,
#level,
#course,
#course2,
#length,
#length2,
#startdate,
#accom,
#accomlength,
#currency{
width:203px;
}

.row{
float:left;
padding: 2px 0;
}

#infomsg{
padding:0 20px 10px;
}

.qqlabel{
font-weight:bold;
padding-left:20px;
width:212px;
display:block;
float:left;
}

.qqlabel input{
float:left;
}

.qqvalue{
width:500px;
display:block;
float:left;
}

#blockbtn{
	display:none;
}

#addcourse{
cursor:pointer;
}

.qqicon {
	position: absolute;
	margin-left: 5px;
}

#price,
#coursesupp{
display:none;
}

#qqformular #included .qqlabel {
	width : 250px;
}

#qqformular #included .qqvalue {
	width : 0;
}

#qqformular #included .row {
	padding-left: 25px;
	background: url(/img/icons/ok-blue.gif) no-repeat 15px top
}



#supplements .qqlabel,
#auxsupplements .qqlabel,
#included .qqlabel{
font-weight:normal;
width:400px;
}

#supplements .qqvalue,
#auxsupplements .qqvalue,
#included .qqvalue{
width:312px;
}

#offerprice{
padding:0 18px;
}


#offerprice td {
padding:3px 0;	
}

#offerprice .maininfo{

font-weight:bold;
}

#offerprice .supplements{
padding-left:10px;
width:300px;
}

#offerprice .total,
#offerprice .exchange{
height:30px;
}

#offerprice .total td{
border-top: 1px solid #333333;
padding-top: 10px;
}

#offersuppl .row{
padding:0px;
float:left;	
}
#offersuppl .row .qqlabel{
width:410px;
}
#offersuppl .row .qqvalue{
width:50px;
}
.offerinfo{
font-weight:bold;
display:block;
padding-left:20px;
}


#totalPriceCurrency{
border-bottom: 4px double #333333;
}

.loader	{
width:17px;
height:17px;
background: url(/img/form/loading.gif) no-repeat;
}

h2#blockbtn input {
	visibility:hidden;
}

/* Feedback */
#feedback{
width:732px;
position:relative;
padding-top:25px;
}

#inner{
width:4392px;
}

.step{
width:732px; 
float:left;
}

.step p {
font-weight:bold;
margin:0px;
padding:0px 15px 10px;
}

.errormsg{
position:absolute;
width:160px;
height:26px;
background:url(/img/school/bgwifi.gif);
opacity:0.8;
display:none;
font-weight:bold;
text-align:center;
padding-top:8px;
}

/*input.error,
select.error{
border-color:red !important;
background-color:yellow;
}

#oblinfo.error{
color:red;
}

div.error{
color:red;
}*/

#school_town, #sschool {
	width:200px;
}

#fblang {
	float: right;
	padding : 10px 15px;
	color : #004885;
	text-align:right;
	display : block;
	margin-top : -65px;
	_margin-top : 0;
}

#fblang br {
	margin:5px 0px;
}

/***** BO Feedback *****/
#bofb_form .bofb_sep {
	font-weight:bold;
	height:25px;
	vertical-align:bottom
}

#bofb_form td {
	height:18px;
}

#bofb_form .fobf_blue {
	background-color:#F3F7FC;
}

/***** CALENDAR *****/
input.calendar,
select.calendar {
	width: 99px;
}

button.calendar {
	background: url(/img/calendar/calendar-icon.gif);
	border: 0;
	cursor: pointer;
	height: 0px;
	padding: 0;
	width: 1px;
}

button.calendar:hover, button.calendar.active {
	background-position: 0 20px;
}

div.calendar {
	background: url(/img/calendar/calendar.png) no-repeat;
	height: 195px;
	padding: 0 6px;
	text-align: center;
	width: 147px;
}	
div.calendar * {
	margin: 0;
	padding: 0;
}	
div.calendar div {
	background: none !important;
	cursor: move;
	height: 185px;
	overflow: hidden;
	padding-top: 10px;
	position: relative;
	width: 147px;
}	

div.calendar caption {
	color: #333;
	font: normal 12px/16px Arial, Helvetica, sans-serif;
	padding-top: 6px;
	text-align: center;
	width: 100%;
}
div.calendar caption a {
	cursor: pointer;
	display: block;
	height: 12px;
	overflow: hidden;
	position: absolute;
	text-indent: -100px;
	top: 17px;
	width: 11px;
}
div.calendar caption a.prev {
	background-image: url(/img/calendar/calendar-prev.gif);
	left: 0;
}
div.calendar caption a.next {
	background-image: url(/img/calendar/calendar-next.gif);
	right: 0;
}
div.calendar caption a:hover {
	background-position: 0 12px;
}
div.calendar caption span {
	height: 25px;
	position: relative;
	text-align: center;
}
div.calendar caption span.month {
	padding-right: 8px;
}
div.calendar caption span.month:after {
	content: ',';
}

div.calendar table {
	background: #FFF;
	border: 0;
	border-collapse: collapse;
	border-spacing: 0;
	cursor: default;
	margin: 0 auto;
	overflow: hidden;
	width: 147px;
}
div.calendar td, div.calendar th {
	border: 0;
	color: #0597DB;
	font: normal 12px Arial, Helvetica, sans-serif;
	height: 21px;
	text-align: center;
	width: 21px;
}
div.calendar td {
	background: url(/img/calendar/calendar-td.gif);
	color: #FFF;
	font-size: 11px;
}
div.calendar td.invalid {
	color: #999;
}
div.calendar td.valid {
	background: url(/img/calendar/calendar-valid.gif);
	color: #0597DB;
	cursor: pointer;
}
div.calendar td.hilite {
	background: url(/img/calendar/calendar-hilite.gif);
}
div.calendar td.inactive {
	background: url(/img/calendar/calendar-td.gif) 0 100%;
	color: #FFF;
}
div.calendar td.active,
div.calendar td.hover {
	background: url(/img/calendar/calendar-valid.gif) 0 100%;
	color: #FFF;
	cursor: pointer;
}

/* Export */
.export_part2 {
	display:none;
}

span.export_s {
	display:inline-block;
	width:50px;
}

span.export_m {
	display:inline-block;
	width:200px;
}

span.export_l {
	display:inline-block;
	width:365px;
}

/* Conferences */
.conf_desc {
	border: none;
	margin: 0.8em 0 0.5em !important;
	padding: 0;
	font-weight: bold;
	width: 600px;
}


/* multipage form
-------------------------------------------------------------- */

#multipageform_w {
	width : 733px;
	overflow: hidden;
	position: relative;
	#padding-top: 10px;
}

#multipageform_s {
	width: 2199px;
	position: relative;
	left: 0;
}

#multipageform_1,
#multipageform_2,
#multipageform_3 {
	width: 733px;
	float: left;
}

#progressBar_w {
	background: url(/img/form/pBar.png);
	width: 731px;
	height: 20px;
	margin-bottom: 15px;
	padding: 0 1px;
}

#progressBar {
	background: url(/img/form/pBar.png) left -20px;
	width: 245px;
	height: 20px;
	font-size: 0;
}

.prBarLabels {
	float:left;
	width:233px;
	padding:2px 0 0 10px;
	font-weight:bold;
	cursor:pointer;		
}