.shape { width:0 !important; height:0 !important; line-height: 0 !important; padding: 0 !important; color: transparent !important; border: 0 solid transparent; font-size: 0 !important; text-indent: -999em !important; background: none !important; overflow: visible ; }

#redirection_notice { position: fixed; height: 80px; width: 250px; display: none; color: #fff; font-weight: bold; font-family: arial; padding: 20px 25px; text-align: center; overflow: hidden; font-size: 15px; }
#redirection_notice .bg { width: 100%; height: 100%; z-index: -1; position: absolute; top:0; left:0; background-color: #000; opacity: 0.7; filter: alpha(opacity=70); border-radius: 20px; -webkit-border-radius: 20px; -moz-border-radius: 20px;}
#redirection_notice .redirect { display: none; }
#redirection_notice a { display: inline-block; margin: 6px auto; width: auto; color: #666; }
#redirection_notice a:hover { color: #a7a7a7; }
#background { opacity: 0; filter: alpha(opacity=0); background-color: #000; position: fixed; top:0; left:0; display: none;}

#checkout { }
#checkout .box-content { height: 270px; }
#checkout .heading .text-event { font-size: 18px; }
#checkout .heading { height: 32px; }

#port>div>div, #datetime>div>div, #tickets>div>ul { margin: 20px 0 0 35px !important; padding: 0 0 20px;}
#port>div>div select { width: 350px; }
#port>div>div .shape, #times .shape, #tickets .subtotal label .shape { border: 12px solid transparent; border-left-color: #ff6000; position: relative; top: -8px;}
#port .description { list-style: none; width: 90%; margin: 0 auto;}
#port .description span { display: block; padding: 0 0 4px; margin: 0 0 4px; font-weight: bold; border-bottom: 1px solid #b7d7df; }

#datetime>div>div { overflow: hidden; }
#datetime #eventful_calendar { float: right; margin: 0 15px 0 0;}
#eventful_calendar td.unavailable,#eventful_calendar td.unavailable:hover { background-image: url(../images/stripes.png); }
#datetime #legend>span, #datetime #times>span:first-child { display: block; padding: 0 0 4px; margin: 0 0 4px; border-bottom: 1px solid #b7d7df; width: 135px; font-weight: bold; color: #4e8a98; text-transform: uppercase; }
#datetime #legend ul { margin:0; padding:0; list-style: none; }
#datetime #legend ul li { margin: 8px 0;}
#datetime #legend span.shape { display: block; margin: 0 10px 0 0; border: 8px solid #000;float: left; clear: left; }
.today span.shape { border-color: #6cafbf !important;}
.available span.shape { border-color: #e8e7e7 !important;}
.booked span.shape { border-width: 0 !important; width: 16px !important; height: 16px !important; background:  url(../images/stripes.png) 0 0 repeat !important;}

#times { display: none; }
#times { margin: 55px 0 0; }
#datetime #times>span:first-child { margin: 0 0 10px;}

#tickets ul { list-style: none; }
#tickets ul li { margin: 8px 0; position: relative; }
#tickets ul li .total { position: absolute; right:40px; top: 5px; color: #ff6000; font-family: verdana,arial,sans-serif; font-size: 17px; font-weight: bold; }
#tickets label { color: #393939; font-family: verdana,arial,san-serif; text-transform: uppercase; font-weight: bold; font-size: 20px; width: 270px; display: inline-block; position: relative; }
#tickets .subtotal { border-top: 1px solid #b7d7df; padding: 20px 0 0;}
#tickets .subtotal label { width: 340px;  }
#tickets .subtotal label .shape { position: absolute; right: 0; top: 0;}
#tickets .subtotal .total { color: #fff; display: inline-block; padding: 6px 12px; background: #ff6000; top: 13px; right: 26px}

#checkout ul { padding:0; width: 85%; margin: 40px auto 30px;}
#checkout li { position: relative; text-align: right; color: #4e8a98; font-size: 13px; list-style: none; margin: 12px 0; font-weight: bold; }
#checkout li label { position: absolute; top:0; left:0; text-align: left; text-transform: uppercase; font-size: 14px; color: #0a4f90; }

#online-booking { margin: 0; padding: 0 0 75px; list-style-type: none; }
.events-box { background-color: #fff; }

#online-booking select { font-size: 24px; color: #000; font-family: arial,sans-serif; }

#content #online-booking h3 { padding: 8px 6px 6px; color: #ff6000; cursor: pointer; font-family: arial,sans-serif; font-size: 20px; margin: 15px 0 10px 10px;}
#online-booking h3 span { display: block; float: left; margin: -12px 10px 0 0; border: 3px solid #ff6000; padding: 8px 9px; 
	-webkit-border-radius: 17px;
	   -moz-border-radius: 17px;
	     -ms-border-radius: 17px;
		    -o-border-radius: 17px;
			   border-radius: 17px;
}
#online-booking>li { overflow: hidden; border: 1px solid #ccc; position: relative; height: 55px;
	background: url(../../../themes/iceberg-quest/images/bg-long-box.gif) 0 0 no-repeat;
	-webkit-border-radius: 6px;
	   -moz-border-radius: 6px;
	     -ms-border-radius: 6px;
		    -o-border-radius: 6px;
			   border-radius: 6px;
}

#online-booking>li:first-child { height: 470px; }
#online-booking>li>div { border-top: 1px dotted #393939; position: absolute; top: 55px; width: 100%; left: 20px; width: 550px; }

#totalcost { color: #02254b; font-size: 18px; }

#payment label { width: 48%; float: left; }
#payment label span { display: block; margin: 10px 0 5px;}
#payment input, #payment select { font-family: verdana,arial,sans-serif; font-size: 12px; color: #393939; padding: 6px; border: 1px solid #ddd; height: auto !important; width: 80%; 
	-webkit-border-radius: 6px;
	   -moz-border-radius: 6px;
	     -ms-border-radius: 6px;
		    -o-border-radius: 6px;
			   border-radius: 6px;
}

label[for=cc_phone], #forphone { clear: left; }
label[for=cc_cardnumber],label[for=cc_csc], #forcardnumber, #forcsc { width: 100% !important; }
label[for=cc_expyear], #forexpyear { position: relative; left: -35px; }
#cc_cardnumber, #cc_expmonth,#cc_expyear,#cc_csc { text-align: center; }

label[for=cc_csc] { background: url(../images/csc.png) 180px 10px no-repeat;}
#cc_csc { width: 150px !important; }


#checkoutform>fieldset:first-child { overflow: hidden; padding: 0 0 20px; }
#cardinfo { clear: left; border: 1px solid #393939 !important; margin: 35px auto; width: 90%; padding: 10px;  background: #ececec url(../images/lock.png) 95% 18px no-repeat; }

#payment #visa, #payment #mc {
	display: inline-block;
	width: 105px;
	margin-left: 85px;
	background: url(../images/visa-mc.png) 0 -20px no-repeat;
	padding-top: 59px;
	overflow: hidden;
	height: 0 !important;
}

#payment #visa { background-position: 0 -75px; clear: left;}
#payment #mc { background-position: -105px -75px;}
#payment #visa.active { background-position: 0 -11px;}
#payment #mc.active { background-position: -105px -11px;}

#cardinfo button { font-family: arial,sans-serif; font-weight: bold; text-shadow: 1px 0 #fff; font-size: 15px; width: 40%; margin-top: 15px; padding: 8px; clear: both; float: right; }

#online-booking button.next { background: #ff6000; cursor: pointer; display: inline-block; padding: 4px; border-width:0; font-weight: bold; color: #fff; text-transform: uppercase; font-family: verdana,sans-serif; font-size: 14px; }
#online-booking button.next span { display: block; border: 1px solid #fff; padding: 2px 4px; }

#times button { margin: 10px 0 0 24px; }
#tickets button { margin: 10px 0 25px 32px; }