/* general elements */

* {
    padding:0;
    margin:0;
}

ul {
	margin-left:15px;
}

body {
    font-family:Helvetica,Verdana,Arial,sans-serif;
    color: #222222;
    font-weight: normal;
    padding: 0 15px 40px 15px;
    overflow-y: scroll;
    font-size: 12px;
    background-color:#FFF;
    background-image: url(../images/layout/background.png);
	background-repeat: repeat-x;
	line-height: 1.5em;
}

a, .ui-widget-content a, .ui-state-highlight a, .ui-widget-content .ui-state-highlight a {
    color:#444;
    text-decoration:none;
    font-weight:bold;
}

a:hover {
	color:#327abf;
}

a.pc-clickable:hover {
	color:#222;
}

a.pc-clickable {
	font-size:10px;
	padding:2px 10px 2px 10px;
	line-height:1.9em;
	font-weight:bold !important;
}

a img {
	border:1px solid #9fc5ea;
}

a img:hover {
	border-color:#327abf;
}

h1 {
    font-size: 24px;
    padding-left: 10px;
    margin: 15px 0 20px 10px;
    font-style:italic;
    border:0 !important;
    line-height:1.6em;
}

h2 {
    font-size: 24px;
    margin-left: 6px;
}

h3 {
    font-size: 16px;
    font-weight: bold;
    margin-top: 25px;
    margin-bottom:10px;
}

h4 {
	font-size:12px;
	margin-bottom:5px;
}

#content h4 {
    margin-top:15px;
}

p {
    margin: 5px 0 10px 0;
}

.new {
	background-color: #fffbab;
}

#content .hint {
	font-style:italic;
	font-size:11px;
}

/* layout */

#header {
	background-color:#FFF;
	margin-bottom:10px;
	height:180px;
	background-image:url(../images/layout/header.jpg);
	position:relative;
}

#languageChooser {
	display:none;
	position:absolute;
	top:5px;
	right:3px;
}

#languageChooser img {
	border:0;
}

img#logo {
    border: 0;
    position:absolute;
    top:5px;
    left:10px;
}

#topNavigation {
	position:absolute;
	bottom:0;
	left:186px;
	font-size:20px;
}

#topNavigation div {
	float:left;
	height:22px;
	background: url(topNaviBg.png);
	padding: 7px 10px 4px 10px;
	margin-right:6px;
	font-weight:bold;
	cursor:pointer;
}

#topNavigation div:hover {
	color:#222;
	background:#e5ecf2;
}

div#container {
	position:relative;
    margin: 0 auto;
    width: 980px;
}

div#sidebar {
	display:inline;
	float:left;
    width: 165px;
    background-color:white;
    padding:5px;
    border:1px solid #c9c9c9;
}

div#content {
	display:inline;
	float:right;
	width:793px;
    background-color:white;
    padding-bottom:15px;
    border:1px solid #c9c9c9;
}

div#pageBody {
	margin: 10px 15px 0 10px;
}

/* sidebar */

div.navigation a {
    text-decoration: none;
}

div.navigation li {
    list-style-type: none;
    margin-top: 4px;
    cursor:pointer;
}

div.navigation div {
	line-height:23px;
	padding-left: 5px;
}

div.navigation ul {
	margin-left:0;
}

div.navigation ul.subNavigation li {
	padding-right: 5px;
	line-height:1.5em;
	margin-top:0;
	cursor:default;
}

div.navigation ul.subNavigation li.highlight a {
	color:#E50101;
}

div.navigation ul.subNavigation li.highlight a:hover {
	color:#327abf;
}

div.navigation ul.subNavigation li a {
	font-weight:bold;
}

.kodama {
	margin-top: 20px;
}

.kodama img {
	border:0;
}

/* calendar */

.ui-datepicker-calendar {
	line-height:1.4em;
}

.event-default, .event-default a {
	border-color: #d3cdfd;
	background-color: #d3cdfd;
}

.event-boogie, .event-boogie a {
	border-color: #ffc094;
	background-color: #ffc094;
}

.event-competition, .event-competition a {
	border-color: #ffb6ba;
	background-color: #ffb6ba;
}

.event-course, .event-course a {
	border-color: #c2f2d0;
	background-color: #c2f2d0;
}

.event-firstJumpCourse, .event-firstJumpCourse a {
	border-color: #a4ff86;
	background-color: #a4ff86;
}

.fc-day-number {
	color:#222;
}

.fc-today {
	border:1px solid #327abf !important;
	background: #e6f0f5 !important;
}

.fc-content a {
	color:#222;
}

.legend {
	margin-top:5px;
}

#content .legend {
	margin-top:15px;
}

.legend div {
	float:left;
	width: 113px;
	font-size: 0.85em;
	padding:1px 3px 0 6px;
	color:#222;
	font-weight:bold;
	margin-right:3px;
}

.eventDetails tr td:first-child {
	font-weight:bold;
	width:70px;
}

.eventImage {
	float:left;
	margin-right:10px;
	margin-bottom:5px;
}

/* lightbox */

#content a.pc-lightbox.floatleft {
	float:left;
	margin: 5px 8px 0 0;
}

#content a.pc-lightbox.floatright {
	float:right;
	margin: 5px 0 0 8px;
}

#pc-lightboxOverlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: black;
	z-index:2001;
	-moz-opacity: 0.8;
	opacity:.80;
	filter: alpha(opacity=80);
	cursor:pointer;
}

#pc-lightboxContent {
	border: 15px #FFFFFF solid;
	position: absolute;
	z-index:2002;
	background-color:white;
	overflow: hidden;
	cursor:pointer;
}

/* dialogs and overlays */

#pc-busyOverlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #3786d2;
	z-index:2003;
	-moz-opacity: 0.5;
	opacity:.50;
	filter: alpha(opacity=50);
}

#pc-busyContent {
	border:1px #c9c9c9 solid;
	position:absolute;
	z-index:2004;
	background-color:white;
	overflow:hidden;
	width:200px;
	height:150px;
}

#pc-busyContent img {
	margin-top:45px;
}

.pc-busyContent {
	text-align:center;
}

/* forms, errors and messages */

label {
    font-weight:bold;
}

input, textArea, select {
	margin-bottom:3px;
}

select {
	margin-left: 5px;
}

#content form {
	width:500px;
	margin-bottom:20px;
}

#content input[type=text], #content input[type=password] {
	width:250px;
}

#content input[type=checkbox] {
	margin-left:5px;
}

#content textArea {
	width:250px;
	height:100px;
}

#content input[type=submit], button.pc-clickable, .ui-dialog button {
	font-size:10px;
	font-weight:bold !important;
	padding:2px 8px 2px 8px;
	cursor:pointer;
}

#content form .inputHint {
	font-style:italic;
	font-size:11px;
}

#content form {
	width:500px;
	margin-bottom:20px;
}

form p {
	margin-bottom:10px;
}

form p.buttons {
	margin-top:25px;
	text-align:right;
}

.formErrors li {
	margin: 0 0 5px 0;
	list-style-type:none;
}

.formErrors ul {
	color: #db0000;
	border: 1px solid #db0000;
	background: #fef1ec;
	margin-left:0;
	margin-bottom:15px;
	padding: 5px 5px 0 5px;
}

button.big, #content input[type=submit] {
	font-size:12px;
}

.flashMessage {
    background: #ffe298;
    border: 1px solid #f3b822;
    margin: 5px;
    padding: 3px;
    font-weight:bold;
    margin-bottom:20px;
}

.flashMessage li {
	list-style-type:none;
}

.flashMessage .info {
	color: #001870;
}

.flashMessage .error {
	color: #e50101;
}

#footer {
	position:relative;
    margin: 0 auto;
    margin-top:30px;
    width: 980px;
	font-size:10px;
	color:#aaa;
	text-align:right;
}

#footer a {
	color:#aaa;
	font-weight:normal;
}

/* eventBoxes */

.eventBox {
	float: right;
	width: 180px;
	margin: 0 0 10px 10px;
}

.eventBox .ui-widget-header {
	font-size:14px;
	padding:0 3px 0 3px;
	text-align:center;
	line-height:1.8em;
}

.eventBox .ui-widget-content {
	padding:5px 6px 10px 6px;
}

.eventBox .ui-widget-content p {
	margin-top:0;
}

.eventBox ul {
	margin-left:0;
	margin-bottom:20px;
}

.eventBox li, #tandemDialogSelection li {
	font-size:10px;
	font-weight:bold;
	margin-bottom:5px;
	cursor:pointer;
	padding:3px 8px 3px 8px;
	list-style-type:none;
}

.eventBox li:hover, #tandemDialogSelection li.selected {
	color:#222;
	background:#327abf;
}

.eventBox .button {
	margin-bottom:8px;
}

/* school */

ul.nextCourses li {
	list-style-type:none;
	font-weight:bold;
	color: #222;
	background-color:#92e044;
}

/* tandems */

#tandemDialogDateChooser {
	position:absolute;
	width:420px;
}

#tandemDialogDateChooser .lots a {
	background:#92e044;
}

#tandemDialogDateChooser .few a {
	background:#ffeb43;
}

#tandemDialogDateChooser .none span {
	background:#ff7563;
}

#tandemDialogTimeChooser h3 {
	margin-top:0;
}

#tandemDialogSelection {
	padding-top:5px;
	float:left;
	margin-right:10px;
}

#tandemDialogSelection ul {
	width:130px;
	margin-left:0;
}

/* #tandemDialogSelection li --> see eventBox */

/* #tandemDialogSelection li.selected --> see eventBox */

#tandemDialogOptions, #tandemDialogChooseOptions {
	width:240px;
	float:right;
}

#tandemDialogOptions p, #tandemDialogChooseOptions p {
	margin-bottom:10px;
}

.tandemSlot-none, .tandemSlot-none a {
	border-color:#ff7563;
	background-color:#ff7563;
	color:#222;
}

.tandemSlot-few, .tandemSlot-few a {
	border-color:#ffeb43;
	color:#222;
	background-color:#ffeb43;
}

.tandemSlot-lots, .tandemSlot-lots a {
	border-color:#92e044;
	color:#222;
	background-color:#92e044;
}

.bookingAssistance {
	margin-top:15px;
	padding:4px;
}

.makeAppointment #visibleAppointmentTime, .makeAppointment #visibleAppointmentLocation {
	font-size:20px;
	font-weight:bold;
}

.makeAppointment button.changeTime {
	margin-left:15px;
}

form[name=bookingForm] .visibleAppointmentTime {
	font-size:14px;
	font-weight:bold;
}

#checkoutCalc {
	width:100%;
	border-spacing:0;
	margin-top:5px;
}

#checkoutCalc #calcQuantity {
	text-align:right;
	width: 50px;
	padding-right:10px;
}

#checkoutCalc .price {
	width: 100px;
	text-align:right;
}

#checkoutCalc #calcSum td {
	font-weight:bold;
	border-top:1px solid #222;
}

#checkoutCalc #calcSum .price {
	border-bottom:double #222;
}

.checkoutButton {
	margin-top:15px;
	text-align:right;
}

#checkoutButton {
	margin-top:4px;
}

.voucherCode {
	font-size:16px;
	font-weight:bold;
}

.confirmAppointment li {
	margin-bottom:10px;
}

/* gallery */

.galleryPreview {
	float:left;
	margin-right:8px;
	margin-bottom:9px;
	background-color:#9fc5ea;
	border: 1px solid #9fc5ea;
}

.galleryPreview:hover {
	background-color:#327abf;
	border: 1px solid #327abf;
}

.galleryPreview p.galleryInfo {
	color:#222;
	margin:0;
	margin-top:-4px;
	padding: 0 3px 0 3px;
}

.galleryDescription {
	font-size:14px;
	margin-bottom:20px;
}

.gallery .thumbnail {
	float: left;
	margin-right:10px;
	margin-bottom:6px;
}

.gallery .pageNavigation {
	float:right;
}

.gallery .galleryNavigation {
	float:left;
}

.gallery .image, .gallery .description {
	text-align:center;
}

.gallery .copyright {
	font-size:10px;
	color:#222;
	text-align:right;
}

/* members */

.memberThumbnail {
	float:left;
	margin-right:5px;
	margin-bottom:5px;
}

.memberDetailImage {
	float:left;
	margin-right:5px;
	margin-bottom:5px;
	border: 1px solid #c9c9c9;
}

/* forum */

.forumEntry {
	margin-top:20px;
	padding-bottom:3px;
	border-bottom: 1px solid #c9c9c9;
}

.forumEntry .forumEntryText, .createForumEntry {
	font-size:14px;
}

.forumEntry .forumEntryMetadata {
	color:#888;
	font-weight:bold;
	margin-top:3px;
}

#newEntryDialog textArea {
	width: 99%;
	height:120px;
}

/* pagination */

.pagination {
	margin-top:10px;
}

.pagination a, .pagination .currentStep {
	margin-right:5px;
}

/* wall */

.wall {
	width:550px;
}

.wall ul {
	margin-left:0;
}

.wall li {
	list-style-type:none;
	padding-top:3px;
	padding-bottom:3px;
	border-bottom: 1px solid #c9c9c9;
}

.wall li .wallItemTime {
	padding:0  3px 0 3px;
	font-weight:bold;
}

.wall li .wallItemText {
	padding: 0 3px 0 3px;
}

.wall li.sticky {
	border:1px solid #f32c2c;
	background:#fff1f1;
	margin-bottom:4px;
}


/* contact */

table.contact td  {
	padding-right:20px;
}

.contactMember {
	float:left;
	width:50%;
	margin-top:10px;
	margin-bottom:15px;
}

.contactMember img {
	float:left;
	margin-right:10px;
}

.contactMember h4 {
    margin-top:0 !important;
}

/* pages */

p.breakline {
    font-size:14px;
    text-align:center;
    font-style:italic;
    color:#AAA;
    margin:25px 0 25px 0;
}

p.breakimage {
	color:#888;
    text-align:center;
    font-size: 10px;
    font-weight:bold;
    margin:25px 0 25px 0;
    line-height:1em;
}

table.pricelist td, table.pricelist th {
	padding-right:10px;
}

table.pricelist td.price {
	text-align:right;
}

.flashVideo {
	text-align:center;
	margin:15px 0 25px 0;
}

.httpError {
  text-align:center;
  font-size:16px;
}

.httpError img, p.breakimage img {
	border: 1px solid #c9c9c9;
}

/* browser fixes */

.ui-helper-clearfix { /* IE7 */
	clear:both;
}