body { background:#F6F6F6 url(../../../../themes/rezdy-booking/images/bg.png); }
img { max-width:100%; }
.wrap { background:#fff; padding-bottom:10px; margin-bottom:20px; -webkit-box-shadow:0 1px 10px #888; -moz-box-shadow:0 1px 10px #888; box-shadow:0 1px 10px #888; }

.main-content,
.breadcrumbs,
.footnote,
.container-pad { padding-left:20px; padding-right:20px; position:relative; }

a.disabled { pointer-events: none; }

.main-content { margin-bottom:60px; position:relative; }
.breadcrumbs { margin-top:10px; margin-bottom:10px; }
.footnote { text-align:right; color:#888; }
.footnote p { margin:0; }
.help-block { color:#888; }

ul.inline, ol.inline {margin-left: 0;list-style: none;}
ul.inline > li, ol.inline > li {display: inline-block;padding-right: 5px;padding-left: 5px;}

#map_canvas label { width: auto; display:inline; }
#map_canvas img { max-width: none; }

/* =============================================================================
	JavaScript Helpers
   ========================================================================== */
	/* Stops Highlighting when clicking/double-clicking. Useful on buttons. */
	.disableTextSelect { -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }

/* =============================================================================
	Text Align Classes
   ========================================================================== */
	.text-left   { text-align: left;   }
	.text-center { text-align: center; }
	.text-right  { text-align: right;  }

/* =============================================================================
	Add / Remove buttons
   ========================================================================== */

 	.btn .btn-text { float:left; position:relative; top:2px; }

	.btn-add,
	.btn-remove,
	.btn-edit,
	.btn-copy { float:left; position:relative; top:2px; margin-right:6px; width:16px; height:16px; display:inline-block; vertical-align:middle; }

	.btn-add { background:transparent url('../../../../themes/rezdy-booking/images/icons/plus-circle.png') no-repeat center center; }
	.btn-remove { background:transparent url('../../../../themes/rezdy-booking/images/icons/minus-circle.png') no-repeat center center;	}
	.btn-edit { background:transparent url('https://dyhq0dx2pdkyt.cloudfront.net/themes/rezdy-booking/images/icons/document-pencil.png') no-repeat center center; }
	.btn-copy { background:transparent url('https://dyhq0dx2pdkyt.cloudfront.net/themes/rezdy-booking/images/icons/ui-toolbar--arrow.png') no-repeat center center; }

	.btn-add.btn-bg-rounded,
	.btn-remove.btn-bg-rounded { padding:2px; background-color:#eee; -webkit-border-radius:999px; -moz-border-radius:999px; border-radius:999px; }

/* =============================================================================
	VERTICAL ALIGN IN DIV - PARENT DIV NEEDS A HEIGHT
   ========================================================================== */
	.valign-parent {
	  -webkit-transform-style: preserve-3d;
	  -moz-transform-style: preserve-3d;
	  transform-style: preserve-3d;
	}
	
	.valign-parent .valign-child {
	      position: relative;
	      top: 50%;
	      transform: translateY(-50%);
	    }

/* =============================================================================
	LANGUAGE SELECTOR
   ========================================================================== */
	.language-toolbar { float:right; display:inline-block;margin-left:10px;margin-bottom: 10px};
	.language-toolbar a:link,
	.language-toolbar a:visited { color:#888; text-decoration:none; display:block; }
	.language-toolbar ul { list-style:none; padding:0; margin:0; position:relative; }
	.language-toolbar .current-language { position:relative; border:1px solid #ddd;}
	.language-toolbar .current-language a { padding-right:16px;  background:rgba(240,240,240,0.8); padding:4px 10px; width:90px; display:block; }
	.language-toolbar .language-list {  position:absolute; display:none; top:26px; right:0; width:90px; padding:10px; z-index:100; background:#fff; border:1px solid #ddd; }
	.language-toolbar .language-list ul { margin:0; float:none; }
	.language-toolbar .caret { position:absolute; top:10px; right:10px; }
    .iframe-body .language-toolbar { position:relative; top:6px; margin-bottom: 10px;}

/* =============================================================================
	HERO UNIT
   ========================================================================== */
  	.hero-unit { padding:0; position:relative; max-height:260px; overflow:hidden; background:#fff; }
	.hero-unit img { max-width:100%; max-height:260px; }
	.hero-unit h1 { font-size: 40px; padding: 20px 0 10px 30px;}
	.hero-unit h1 a:hover,
	.hero-unit h1 a:active { text-decoration:none; opacity:0.8; }


/* =============================================================================
	SHARE BAR
   ========================================================================== */
	.share-bar {margin-bottom: 10px;}
	.share-bar .google-share-container { margin-left: 30px; }
	.share-bar {display: inline-block;float:right;}
	.product-details .share-bar { top:-60px; }
	.sharrre a.btn.dropdown-toggle {
		text-align: left;
		width: 102px;
	    background-color: rgba(240,240,240,0.8) !important;
	    border: 1px solid #ddd !important;
	    font-weight: normal !important;
	    font-size: 13px !important;
	    border-radius: 0 0 0 0 !important;
	    float-right;
	    box-shadow:none;
	}
	.sharrre a.btn.dropdown-toggle .caret {float: right;display: none;}
	.sharrre a.btn.dropdown-toggle .label {float: right;}

	.iframe-body .sharrre a.btn.dropdown-toggle {
		top:6px;
		margin-bottom: 10px;
	}



/* =============================================================================
	PRODUCTS
   ========================================================================== */
	.products-price { font-weight:bold; line-height:21px; }
	.products-price .from { display:block; font-size:16px; margin-bottom:4px; }
	.products-price .price { display:block; font-size:28px; }


/* =============================================================================
	EXTRAS
   ========================================================================== */

	.extras-price { font-weight:bold; line-height:21px; }
	.extras-price .price { display:block; font-size:22px; }
  	.extras-read-more .extras-price { margin:0 0 20px; }
  	/*Extras input has weird margin on right*/
  	.extras-read-more .input-quantities {margin-right: -4px;}

  	@-moz-document url-prefix() {
	    .extras-read-more .input-quantities {margin-right: 0px;}
	}

	/*	LIST
	-------------------------------------------------------------------------- */
	.product-results { display:none; }

	.products-list { margin-top:20px; }

	.products-list-image {float:left;}
	.products-list-image a { float:left; }
	.products-list-image img { max-width:200px; min-width:200px; width:200px; }

  	.products-list-item { border-top:1px solid #eee; padding-top:20px; padding-bottom:20px; }
    .session-picker .products-list-item { border:0; }
  	.products-read-more .products-price { margin:0 0 20px; }
  	.products-list-item-side { float:left; }
  	.products-list-item-overview h2 { margin-bottom:10px; font-size:21px; }
  	.products-list-item-overview h2 a:link,
  	.products-list-item-overview h2 a:visited { color:#333; }
  	.products-list-item-overview p { word-wrap:break-word; }


	.extras-list-image {float:left;}
	.extras-list-image a { float:left; }
	.extras-list-image img { max-width:100px; min-width:50px; width:100px; }

	/*	DETAILS
	-------------------------------------------------------------------------- */
	.product-overview h1 { margin-bottom:10px; }
	.product-details .fb_iframe_widget { width:300px; }
   	.product-details { margin-top:0; }
	.product-details .product-main-image { float:left; margin-right:10px; }
	.product-details .product-overview { margin-bottom:40px; }
	.product-description h3 { text-transform:uppercase; color:#666; margin:0 0 10px; font-size:18px; }
	.product-description { color:#666; }
	.product-details .elastislide { margin:0 0 30px; }

	/*	SIDE COLUMN
	-------------------------------------------------------------------------- */
   	.side-column { overflow:hidden; background:#fafafa; border:1px solid #ddd; margin:0 20px 40px; }
   	.side-column .in { padding:20px; }
   	.side-column h3 { color:#fff; padding:10px 20px; position: relative; font-size: 20px }

	.side-column h3:after {
	    content: '';
	    width: 0;
	    height: 0;
	    border-left: 10px solid transparent;
	    border-right: 10px solid transparent;
	    position: absolute;
	    bottom: -10px;
	    left: 20px;
	}
	.side-column .btn-lg {
		padding:10px 15px;
		display: block;
		text-align: center;
		border-radius: 20px;
		-webkit-box-shadow: 1px 1px 0px 0px rgba(136,136,136,0.75);
		-moz-box-shadow: 1px 1px 0px 0px rgba(136,136,136,0.75);
		box-shadow: 1px 1px 0px 0px rgba(136,136,136,0.75);
	}

   	.side-column h4 { margin-bottom:10px; position: relative; }
   	.side-column h4 small {color:inherit;}
   	.side-column select { font-weight:bold; padding: 4px 0  4px 4px}

	.side-column h4:not(.hr):before {
	    content: '';
	    width: 0;
	    height: 0;
	    border-top: 10px solid transparent;
	    border-bottom: 10px solid transparent;
	    border-left: 10px solid #ddd;
	    position: absolute;
	    bottom: 50%;
	    margin-bottom: -10px;
	    left: -20px;
	}

	.side-column em.required,
	.side-column span.required { display:none;}

	.ui-datepicker {
		margin-bottom: 10px;
	}


   	.calendar-widget { padding: 20px; position:relative; }
   	.calendar-widget .participants { margin-bottom:10px; }
   	.calendar-widget .control-label { float:left; text-align:left; width: calc(100% - 100px); color:#888;}
   	.calendar-widget .controls { margin-left:100px; margin-bottom: 10px;}
   	.calendar-widget .controls.price-shown { padding-top: 7px;}
   	.calendar-widget .control-group {margin-bottom: 0}
   	.calendar-widget .price-unit { display: block; font-size: 11px; font-weight:normal; margin-top: -3px;}
	.calendar-widget .button-spacer {line-height: 2; float:left; margin-right: 10px; color:#888; margin-bottom: 10px;}
	.calendar-widget .no-cookies {display:none; background: rgba(180,180,180,0.9); position: absolute; bottom: 0; left: 0; width: 100%; height: 180px; color: #d82824; text-align: center; border-radius: 0px 0px 5px 5px; z-index: 9999;}
	.calendar-widget .no-cookies p {margin-top: 55px; font-size: 1.1em;}
	.calendar-widget .no-cookies a {color: #d82824; text-decoration:underline; font-size:0.9em;}
	.calendar-widget .no-cookies a:hover {text-decoration:none;}
	.calendar-widget hr {border-top-color: #aaaaaa;}
	input.input-quantities { width:20px; text-align: center}
	.change-quantity {text-align: right}
	.change-quantity i { cursor:pointer; /* margin:2px; */ color:#aaa; opacity:0.5; }
	.change-quantity .increase { padding:15px; background: url("../../../../themes/rezdy-booking/images/icons/plus-medium-01.png") no-repeat -3px 11px; }
	.change-quantity .decrease { padding:15px; background: url("../../../../themes/rezdy-booking/images/icons/minus-medium-01.png") no-repeat 10px 11px; }
	.side-column.contact-us { margin-bottom:10px; }
	.side-column a.btn-contactus:link,
	.side-column a.btn-contactus:visited { background:transparent url(../../../../themes/rezdy-booking/images/icons/mail-01.png) no-repeat right center; width:91%; display:block; padding:10px 5% 8px; text-align:left; color:#fff; font-weight:bold; }
	.side-column a.btn-contactus:hover,
	.side-column a.btn-contactus:active { opacity:0.8; text-decoration:none; }
	.side-column .note { font-size:12px; color:#888; }
	.side-column h4 { color:#888; }
	.calendar-widget .timepicker-trigger {width:60px}

	/* SIDE COLUMN FOR TRANSFERS */
	.calendar-widget .transfer .controls { margin-left:80px; }
	.calendar-widget .transfer .control-label { width:80px; }
	.calendar-widget .transfer .checkbox-label {float:left; margin: 10px 0;}
	.calendar-widget .transfer .onewayreturn label {margin: 7px 0;}
	.calendar-widget .transfer select {max-width: 100%; margin-bottom: 5px;}
	.calendar-widget .transfer input {max-width: 125px; margin-bottom: 5px;}
	.calendar-widget .transfer .onewayreturn label {float:left; padding: 0 10px 0 5px;}
	
	/* Book now button */
	.booknow-button {
		text-transform: uppercase;
	}

/* =============================================================================
	SESSION PICKER / AVAILABILITY
   ========================================================================== */
 	.session-picker { margin:20px 0; }
 	.session-picker th,
	.session-picker td.session-cell { font-size:14px; padding:16px 8px 12px; text-align:center;width:9%; }
	.session-picker .book-now { display:block; text-transform:uppercase; font-size:12px; margin-top:2px; }

	/* Empty session */
	.session-picker td.session-empty { background:#eee !important; color:#aaa; font-size:24px; line-height:.5; } /* Empty sessions */
	.session-picker td.session-empty:hover { background:#eee !important; }

	/* Selected session */
	.session-picker th.session-selected { background:#000; }
	.session-picker .session-selected { color:#fff; font-weight:bold; border-top:none; } /* remove table cell double border for selected column */
	.session-picker td.session-cell { cursor:pointer; }

	/* Top row (date navigation) */
	.session-picker .session-date-nav { background:#eee; }
	.session-picker .session-date-nav th { font-size: 14px; }
	.session-picker .session-date-nav a:link,
	.session-picker .session-date-nav a:visited { color:#888; font-size:14px; text-transform: uppercase; }
	.session-picker .session-date-nav i { margin-top: 1px; }
	/*
	Links are already inline-blocks. Not sure why we have this.
	.session-picker .session-date-nav .next-week { display:inline-block; }
	.session-picker .session-date-nav .prev-week { display:inline-block; }
	*/

	/* Availability participants */
	.availability-participants { margin:10px 0 30px; color:#666; }
	.availability-participants .badge { margin-right:4px; font-weight:normal; cursor:default; padding-top:2px; }
	.availability-participants label {margin-right: 25px;}

    .session-picker .product-title { text-align:left; }
    .session-picker .product-title a:link,
    .session-picker .product-title a:visited { color:#333 !important; font-weight:normal; }
    .session-picker .product-title a:hover,
    .session-picker .product-title a:active { color:#888 !important; }

    .session-picker .current-date { width:60%; margin:0 auto; }
    .session-picker .current-date input { position:relative; top:-2px; }
    .session-picker .current-date small { color:#888; font-size:14px; display:inline-block; padding:0 10px; font-weight:normal; }
    .session-picker .session-date { font-size:12px; }
    .session-picker .session-date span { display:block; text-transform:uppercase; }
    .session-picker .session-date .session-date-day { font-size:21px; }
    .session-picker .choose-quantity { display:none; }
    .session-picker .choose-quantity td { background:#f8f8f8 !important; }
    .session-picker .choose-quantity td:hover { background:transparent; }
    .session-picker .products-image { width:20%; }
    .session-picker .products-image img { border:6px solid #fff; }
    .session-picker .product-description { width:76%; text-align:left; font-size:16px;  }
    .session-picker .product-duration { margin:10px 0; }
    .session-picker .participants { margin:20px 0; }
    .session-picker .choose-quantity .control-label { float:left; padding-top: 5px; text-align:left; width:120px; color:#888; }
    .session-picker .choose-quantity .controls { margin-left:120px; }
    .session-picker .choose-quantity .controls.price-shown { padding-top: 7px;}
    .session-picker .choose-quantity .control-group {margin-bottom: 0}
    .session-picker .choose-quantity .price-unit { display: block; font-size: 11px;}
    .session-picker .choose-quantity .session-close-link { float:right; opacity:0.6; }

    .session-picker .product-title { text-align:left; width: 37%;}
    .session-picker .product-title a:link,
    .session-picker .product-title a:visited { color:#333 !important; font-weight:normal; }
    .session-picker .product-title a:hover,
    .session-picker .product-title a:active { color:#888 !important; }

    .session-picker .current-date { width:60%; margin:0 auto; }
    .session-picker .current-date input { position:relative; top:-2px; }
    .session-picker .current-date small { color:#888; font-size:14px; display:inline-block; padding:0 10px; font-weight:normal; }
    .session-picker .session-date { font-size:12px; }
    .session-picker .session-date span { display:block; text-transform:uppercase; }
    .session-picker .session-date .session-date-day { font-size:21px; }
    .session-picker .choose-quantity { display:none; }
    .session-picker .choose-quantity td:hover { background:transparent; }
    .session-picker .products-image { width:20%; }
    .session-picker .products-image img { border:6px solid #fff; }
    .session-picker .product-description { width:76%; text-align:left; font-size:16px;  }
    .session-picker .product-duration { margin:10px 0; }
    .session-picker .participants { margin:20px 0; clear:both; }
    .session-picker .participants .btn-submit { margin-top:20px; }
    .session-picker .choose-quantity h1 { font-size:21px; }
    .session-picker .choose-quantity .control-label { float:left; padding-top: 5px; text-align:left; width:120px; color:#888; }
    .session-picker .choose-quantity .controls { margin-left:120px; white-space: nowrap;}
    .session-picker .choose-quantity .controls.price-shown { padding-top: 7px;}
    .session-picker .choose-quantity .control-group {margin-bottom: 0}
    .session-picker .choose-quantity .price-unit { display: block; font-size: 11px;}
    .session-picker .choose-quantity .session-close-link { float:right; opacity:0.6; }
    .session-picker .filter td { text-align:center; padding:16px 0 8px; color:#888; }
    .session-picker .filter select { position:relative; top:-4px; margin:0 4px; }
    .session-picker .book-actions { clear:both; }
    .session-picker .timepicker {width:80px}

    .session-picker .transfer .checkbox-label {float:left; margin: 10px 0;}
    .session-picker .transfer .onewayreturn label {margin: 7px 0;}
	.session-picker .transfer .onewayreturn label {float:left; padding: 0 10px 0 5px;}
    .session-picker .transfer select {max-width: 135px; margin-bottom: 5px;}
	.session-picker .transfer input {max-width: 125px; margin-bottom: 5px;}

	.session-picker.no-cookies {display:none; background: rgba(180,180,180,0.9); position: absolute; top: 0; left: 0; width: 100%; height: 100%; color: #d82824; text-align: center; border-radius: 0px 0px 5px 5px; z-index: 9999;}
	.session-picker.no-cookies p {margin-top: 55px; font-size: 1.1em;}
	.session-picker.no-cookies a {color: #d82824; text-decoration:underline; font-size:0.9em;}
	.session-picker.no-cookies a:hover {text-decoration:none;}

	/* Make the Session Picker a little tigther so we can see more. */
	.session-picker.duration-based th { padding: 10px 8px; }
	.session-picker.duration-based th.session-date { padding: 5px 8px; }

	.session-picker td.session-cell { height: 65px; padding: 5px 8px; vertical-align: middle; }
	.session-picker.duration-based td.session-cell { vertical-align: top; }
	.session-picker.inventory-visible-based td.session-empty { vertical-align: middle; }


	.session-picker td.session-empty { vertical-align: middle; }
	.session-picker tr.session-row th:first-child { vertical-align: middle; }

	.session-picker td.session-empty, .session-picker td.session-cell.session-fade { cursor: default; }
	.session-picker .session-fade { -moz-opacity: 0.70; -khtml-opacity: 0.70; opacity: 0.70; -ms-filter:"progid:DXImageTransform.Microsoft.Alpha"(Opacity=70); filter: progid:DXImageTransform.Microsoft.Alpha(opacity=70); filter:alpha(opacity=70); }
	.session-picker .session-fade a { cursor: default; }
	.session-picker .session-fade .sold-out { font-weight: bold; font-size: 1.2em; }

	.session-picker .waitlist-session {position: relative;  line-height: 12px;}
	.session-picker .waitlist-session .session-waitlist-available{padding-top:20px;}
	.session-picker .waitlist-session strong {font-size: 11px;}
	.session-picker .waitlist-session .book-now {font-size: 11px;}
	.session-picker .waitlist-session .count {position: absolute;top: 5px; right: 5px; left: 5px; text-align: center;font-size: 9px;color:#ff0000;padding-bottom:10px;}
	.session-picker td.session-cell:not(.session-fade):hover .count {color: white}
	
	.session-picker .waitlist-session .icon {position: absolute;top: 5px; left: 5px;font-size: 10px;}
	
	.session-picker .session-cell { position: relative; }
	.session-picker .session-cell span { display: block; }
	.session-picker .session-cell .prompt-session-start, .session-picker .session-cell .prompt-session-end { margin-top: 10px;  }
	.session-picker .session-seats-available, .session-picker .session-not-enough  { font-size: 0.8em; margin: 10px; }
	.session-picker .session-cell .session-detail .duration { font-size: 0.8em; text-transform: capitalize; }
	.session-picker.duration-based td.active .session-detail { -moz-opacity: 0.50; -khtml-opacity: 0.50; opacity: 0.50; -ms-filter:"progid:DXImageTransform.Microsoft.Alpha"(Opacity=50); filter: progid:DXImageTransform.Microsoft.Alpha(opacity=50); filter:alpha(opacity=50); }
	.session-picker .reset-selection { margin-bottom: 0; }
	.session-picker .reset-selection a { font-weight: normal; }
	.session-picker .reset-selection a i { margin: 1px 0 0 5px; }

	.session-picker .days-5,
	.session-picker .days-3 { display: none; }

	.ui-datepicker-inline .ui-datepicker-current { display: none;}
	.ui-datepicker .ui-datepicker-header {background-color: #fff;}

	.ui-icon-circle-triangle-e { background-position: -32px -16px; }
	.ui-icon-circle-triangle-w { background-position: -96px -16px; }
	
	.multiple-prices-list {width: 100% !important;}
/* =============================================================================
	CHECKOUT
   ========================================================================== */
	.checkout table { margin-top:20px; }
	.checkout .table-header { background:#eee; }
	.checkout .surcharge td,
	.checkout .cart-total td,
	.checkout .gst td,
	.checkout .due-now td { border:0; }
	.checkout .due-now td { font-weight:bold; }
	.checkout .total,
	.checkout .gst,
	.checkout .due-now { background:#eee;}

	.checkout .itemrow td { border:0; border-bottom:1px solid #ddd; }
	.checkout thead th { border-bottom:1px solid #ccc; }
	.checkout .page-header { margin-top:50px; }
	.checkout .terms { color:#888; }

	.checkout .table tbody tr:hover td, .checkout .table tbody tr:hover th {background-color: inherit;}
	.checkout small {font-size:11px; color:#999; font-style:italic; display:block; margin:5px 0 15px}
	.checkout .extra-image {max-width:1px;white-space:nowrap;}
	.checkout .extra-image img {max-width:30px;height: auto;}

   /* Checkout credit cards select */
   
   	.checkout .input-group {position: relative; display: table; border-collapse: separate;}
   	.checkout .input-group .input-group-addon {
		display: table-cell;
    	white-space: nowrap;
    	vertical-align: middle;
    	border-radius: 0;
    	text-align: center;
    	line-height: 1;
		margin: 0;
	    background: #ebeff0;
	    border: 1px solid #e6e8e9;
	    color: #2b3c4e;
	    font-weight: 400;
	    font-size: 12px; 
	    padding: 0 12px;   	
		height: 26px;
    	background-image: -webkit-linear-gradient(top,#fff 0,#ebeff0 100%);
    	background-image: linear-gradient(to bottom,#fff 0,#ebeff0 100%);
    	background-repeat: repeat-x;	    
   	}
   	.checkout .input-group .input-group-addon img {
   	    max-width: 26px!important;
    	width: 26px!important;
    	margin: 0 2px;
    	display: inline-block;
   	}
	.checkout .select-credit-cards { float:left; }
	.checkout .icns-credit-cards { margin:0; padding:0; list-style:none; overflow:hidden; float:left; margin-left:20px; position:relative; top:-3px; }
	.checkout .icns-credit-cards li { float:left; margin:0 4px; opacity:0.2; }
	.checkout label { font-weight:bold; cursor:pointer; }
	.checkout .alert { clear:both; }

	.item-remove a:link,
	.item-remove a:visited { color:#888; }

	.check-out-submit input[type="submit"] { font-size:21px; padding:10px 30px; }

	.checkout .item-custom-label { max-width: 60%; float:left; }
   	.checkout .item-price { float:right; }
   	.checkout .payment-logos { float:right; display: none; }
   	.checkout .payment-logos.active { display: block; }

   	.checkout .field-coupon { margin-right:10px; }

	.checkout .agent-code {float:right; padding-bottom:10px;}

    .checkout #contact_details .control-group > span.required { display:none; }

	.checkout .payment-options {line-height: 28px;}
	.checkout .payment-radio {padding:5px;}
	.checkout .payment-options input[type="radio"] {float: left; margin-right: 10px;}
	.checkout .payment-option {line-height: 28px;}

	.checkout .scrollable-text { padding:10px;	max-height:240px; max-width:540px; overflow-y: auto; border:1px solid #ccc; border-radius:3px}

	@media (max-width: 767px) {
		.checkout .payment-option-creditCard .span1 { width: 50px; }
	}
/* =============================================================================
	OPTIONAL SERVICES
   ========================================================================== */
   .os .change-quantity p { margin-left:35px; }

/* =============================================================================
	Contact Form.
   ========================================================================== */
.contact-form-modal { width: 95% !important; }

/* =============================================================================
	OVERRIDE
   ========================================================================== */
	h2 { line-height:30px; }
	.calendar-widget .ui-datepicker { width:100%; border:1px solid #ddd; padding: 0;}
	.control-label { font-weight:bold; }
	.btn { font-weight:bold;}
	.btn-submit { font-size:14px;  min-width: 90px; padding: 7px 15px 8px; }
	.btn.btn-inverse { color:#fff; border:0;}
	.alert { padding:16px 16px 8px; }
	.alert ul { margin-top:10px; }
	.redeem {text-align: center; margin-top: 50px; }
	.checkout .ui-datepicker { width:17em; }

	/*	ELASTISLIDE
	-------------------------------------------------------------------------- */
	.es-carousel-wrapper,
	.es-carousel { background-color:#fafafa; }
	.es-carousel ul li a { border-color:#fff; }
	.product-details .es-carousel ul li a img { max-height:80px; }

	/** For iphone like devices, hide the slider image gallery, and show the simple image corousel. **/
	/* Always hide the backup carousel unless a media query can be fulfilled */
	.carousel-backup-wrapper { display: none; }

	@media (max-width : 568px) {
		.carousel-backup-wrapper { display: block; }
		.es-carousel-wrapper { display: none; }
		.product-main-image { display: none; }
		.carousel .carousel-control { cursor: pointer; }
		.carousel-control.left { left: 5px; }
		.carousel-control.right { right: 5px; }
		.carousel-control { color: #FFF !important; width: 20px; height: 20px; font-size: 30px; margin-top: 10px; line-height: 15px; }
	}

	/*	DATEPICKER
	-------------------------------------------------------------------------- */
	.ui-datepicker .ui-datepicker-buttonpane button
	{
		opacity: 1;
	}
	.ui-datepicker td a.ui-state-default { font-weight:bold; }

	#order-item-form .ui-datepicker { width:100%; box-sizing: border-box; border-radius: 3px 3px 0 0;}
	.ui-datepicker-calendar .full { width:auto; }

	.ui-datepicker td .ui-state-default { color:#000; }
	.ui-datepicker td a.ui-state-default { /* moved to colours.css color:#00ADD4; */ font-weight:bold; }
	.ui-datepicker td a.ui-state-default.ui-state-active,
	.ui-datepicker td a.ui-state-default:hover { /* moved to colours.css background:#00ADD4; */ color:#fff; } /* Override effect for over and selected day */
	.ui-datepicker td span.ui-state-default:hover { background:none; color:#000; } /* Override effect for over day (span, not link) */

	.ui-state-default,
	.ui-widget-content .ui-state-default,
	.ui-widget-header .ui-state-default { border:0; box-shadow:none; -moz-box-shadow:none; -webkit-box-shadow:none; } /* Remove border and text shadows */

	.ui-datepicker .ui-datepicker-prev,
	.ui-datepicker .ui-datepicker-next { cursor:pointer; top:4px; }

		/* Today */
		.ui-datepicker td.ui-datepicker-today a:link,
		.ui-datepicker td.ui-datepicker-today a:visited,
		.ui-datepicker td.ui-datepicker-today span,
		.ui-datepicker td.ui-datepicker-today span:hover { background:#ccc; color:#000; -webkit-border-radius:4px; -moz-border-radius:4px; border-radius:4px; font-weight:bold; }
		.ui-datepicker td.ui-datepicker-today a.ui-state-active { /* moved to colours.css background:#00ADD4; */ color:#fff; } /* Selected today */

		/* Full */
		.ui-datepicker td.full a:link,
		.ui-datepicker td.full a:visited { color:#bf3131; background:#ffe0e0; -webkit-border-radius:4px; -moz-border-radius:4px; border-radius:4px; }
		.ui-datepicker td.full.ui-datepicker-current-day a,
		.ui-datepicker td.full a:hover,
		.ui-datepicker td.full a:active { color:#ffe0e0; background:#bf3131; }

	.ui-datepicker .datepicker-loading {width:222px; height:52px; position:absolute; z-index:99999; background:url(../../../../themes/rezdy-booking/images/date_loading.gif) no-repeat 48% 60% rgba(255,255,255,0.6); padding:80px 0; text-align:center;}

	/* Loading overlay */
	.availabilitypicker { position: relative; }	
	.rezdy-overlay-loader {
	  position: absolute;
	  top: 0;
	  left: 0;
	  right: 0;
	  bottom: 0;
	  background: rgba(111, 204, 227, 0.7);
	  z-index: 1000;
	  display: none;
	}
	.rezdy-overlay-loader .fa {
	  position: absolute;
	  top: 50%;
	  left: 50%;
	  margin-top: -20px;
	  margin-left: -10px;
	  z-index: 1001;
	}
	.rezdy-overlay-loader:after {
	  content: "Loading...";
	  font-size: 14px;
	  position: absolute;
	  bottom: 50%;
	  margin-bottom: -25px;
	  width: 100%;
	  text-align: center;
	  font-weight: 300;
	}
	.rezdy-overlay-loader.active {
	  display: block;
	  display: table-cell;
	}

	/* Timepicker
	------------------------------------------------------------------------- */
	.ui-timepicker-div .ui-widget-header { border:0; font-weight:bold; width:100%; padding:4px 0; background:whiteSmoke; color:gray; }
	.ui-timepicker-div dl { width:80%; margin:20px auto; }
	.ui-timepicker-div dt { width:40px; float:left; clear:left; line-height: 40px;}
	.ui-timepicker-div dd { margin:0 0 0 50px; line-height: 40px;}
	.ui-timepicker-div + .ui-datepicker-buttonpane { display:none; }
	.ui-timepicker-div select {width:110px; position:relative; top:5px;}

	/* Loader Container
	------------------------------------------------------------------------- */
	.loading-container { position: relative; }
	.loading-container .loading-splash { background: rgba(255, 255, 255, 0.5); position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
	.loading-container p { padding: 10px 20px; margin: 5px auto; width: 120px; font-size: 1.2em; background: rgba(0, 0, 0, 0.15); -webkit-border-radius: 20px; -moz-border-radius: 20px; border-radius: 20px; }

/* =============================================================================
	ERRORS
   ========================================================================== */
	.wrap.wrap-error { margin:80px 0; }
	.wrap.wrap-error .main-content { padding:20px; margin:0; }

	.errorSummary .alert { margin-top:0px;background-color: transparent; border: none; padding: 0; }
	.alert { background-color:#f2dede; border-color:#eed3d7; color:#b94a48;	}
	.alert-success { background-color:#dff0d8; border-color:#d6e9c6; color:#468847; }

	.errorSummary {
	    background-color: rgba(163,41,41,.1);
	    color: #c03;
	    padding: 5px 5px;
	    margin: 0 auto 10px;
	    position: relative;
	}
	.erroSummary a {
    	color: #c03;
  	}
	
	.errorSummary ul {
	    list-style: none;    
	    padding: 0;
	    margin: 0;
	}

    .errorSummary ul li {
      border-bottom:1px solid rgba(163,41,41,.2);
      display: block;
      padding:5px 0;
    }
    
    .errorSummary ul li:last-child {
        border-bottom:none;
    }

/* =============================================================================
	FOOTER
   ========================================================================== */
	.footnote a:link,
	.footnote a:visited { color:#666; text-decoration:underline; }
	.footnote a:hover,
	.footnote a:active { text-decoration:none; }

/* =============================================================================
	HELPERS
   ========================================================================== */

	/* For image replacement */
	.ir { border: 0; font: 0/0 a; text-shadow: none; color: transparent; background-color: transparent; }

	/* Hide from both screenreaders and browsers: h5bp.com/u */
	.hidden { display: none !important; visibility: hidden; }

	/* Hide only visually, but have it available for screenreaders: h5bp.com/v */
	.visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }

	/* Extends the .visuallyhidden class to allow the element to be focusable when navigated to via the keyboard: h5bp.com/p */
	.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }

	/* Hide visually and from screenreaders, but maintain layout */
	.invisible { visibility: hidden; }

	/* Contain floats: h5bp.com/q */
	.clearfix:before, .clearfix:after { content: ""; display: table; }
	.clearfix:after { clear: both; }
	.clearfix { *zoom: 1; }

	.tar { text-align:right !important; }
	.tal { text-align:left !important; }
	.tac { text-align:center !important; }
	.r0	{ -webkit-border-radius:0; -moz-border-radius:0; border-radius:0; }
	.r4 { -webkit-border-radius:4px; -moz-border-radius:4px; border-radius:4px; }
	.image-border { padding:5px; border:1px solid #eee; background:#fff; border:1px solid #DDD; }
	em.required,
	span.required { color:red;}
	.borderless { border:0; }

	.fl {float:left; }
	.fr { float:right; }

	.control-label + span.required {float: left;padding-top: 5px;padding-left: 5px;}

/* =============================================================================
	IE FIXES
   ========================================================================== */
	.lt-ie9 .wrap {
		overflow:hidden;
		zoom: 1;
	  	filter:
	         progid:DXImageTransform.Microsoft.Shadow(Color=#888888, Strength=2, Direction=90),
	         progid:DXImageTransform.Microsoft.Shadow(Color=#888888, Strength=2, Direction=180),
	         progid:DXImageTransform.Microsoft.Shadow(Color=#888888, Strength=2, Direction=270);
	}




/* =============================================================================
	NEW CHECKOUT BOOKING FORM
   ========================================================================== */


/*Utils*/
.text-right {text-align:right !important;}
.text-center {text-align:center !important;}
.text-left {text-align:left !important;}
.strong {font-weight:bold}
.mb {margin-bottom:10px;}
.ml {margin-left:20px;}
.nmt {margin-top:0 !important;}
.nmb{margin-bottom:0 !important;}

.checkout a.remove {
  color:gray;
  font-size:24px;
}
.checkout a.remove:hover {
  text-decoration:none;
}

/*Checkout Images*/
.checkout .product-image {
  max-width: 50px;
}
.checkout .extras-image {
  max-width: 25px;
}
.checkout .product-image img, .checkout .extras-image img {
  display:block;
  margin-bottom:15px;
}
/*Checkout Table*/
.checkout table {margin-top:10px;}
.checkout td strong {
  word-break: break-word;
}
.checkout .extras small {
	margin:-2px 0 15px
}

.checkout .table-compact {
  width:100%;
  margin:10px 0 10px;
}
.checkout .table-compact tr td {
  padding:4px 0;
  background: #fff;
  border-bottom: 1px dotted #f9f9f9;
  border-top: none;
}
.checkout .table-compact td.qty {
  padding-left:30px;
  padding-right: 2px;
  color:gray;
}
  
.checkout .table-bordered {
  border:none;
  margin-top:30px;
}
.checkout .table-bordered thead th {
  border:none;
}
.checkout .table-bordered td,
.checkout .table-bordered th {
  border:none;
  vertical-align:top !important;
  padding-top:15px;
  padding-bottom:15px;
}
.checkout .item-product td {
  border-top:1px solid #ddd;
  border-bottom:0;
}
.checkout .item-product.extras td {
  border-top:1px dotted #ddd;
  border-bottom:0;
}

.checkout .voucher {
  border-top:1px solid #ddd;
  background:#fff;

}
.checkout .voucher .inner {
  padding:20px;
}

.checkout .table-total {
  margin-top:0 !important;
}

.checkout .table-bordered h3, .checkout .table-total h3, .checkout .voucher h3 {
  font-size:16px;
  line-height:20px;
  margin:5px 0;
}


/*Checkout Columns*/
.checkout .table-header th {
  background:#fff;
  font-weight:bold;
  padding-bottom:10px;
  border-bottom:none;
}
.checkout td.thumb {
  text-align:right;
}

.checkout td.total,.checkout td.total:hover {
  text-align:right;
  vertical-align:top !important;
  background:#f9f9f9 !important;
  white-space:nowrap;
}
.checkout tr.total td {
  background:#f9f9f9;
  text-align:right;
  padding-left: 2px;
  padding-right: 2px;
}

.checkout tr.total td:first-child {
  width:75%;
}

.checkout tr.total td:last-child {
  width:25%;
}


.checkout tr.total.grand td {
  border-top:1px solid #ddd !important;
  border-bottom:1px solid #ddd !important;
  font-weight:bold;
  font-size:16px;
}

.checkout .date, .checkout .gray {
  font-weight:normal;
  display:block;
  color:gray;
  margin-bottom:5px;
}
.checkout .bt {
  padding-top:2px;
  text-align:right;
  padding-bottom:2px;
  border-top:1px solid #fff;
}
.checkout .bt:last-child {
  border-bottom:1px solid #fff;
}

.checkout .btn-pay {
  background: #62ba37;
  border:2px solid #519b2e;
  color: #fff !important;
  font-size: 16px;
  font-weight: bold;
  display: block;
  border-radius: 3px;
  padding:15px 15px;
  -webkit-box-shadow: 2px 2px 0 0 #519b2e;
  -moz-box-shadow: 2px 2px 0 0 #519b2e;
  box-shadow: 2px 2px 0 0 #519b2e;
  text-align: center;
  text-transform: uppercase;
  min-width: 250px;
}


.checkout .btn-pay:hover {
    background: #60b444;

}

.checkout h3 sup {
	font-size: 10px;
	margin-left: 2px;
	font-weight: normal;
}

@media (max-width: 781px) {
  .checkout a.remove {
    margin-top: 5px;
  }
  .checkout .btn-pay {
      width: calc(100% - 30px);
  }
  .checkout .bt {
    text-align:left;
  }
  .checkout .table-bordered td,
  .checkout .table-bordered th {
    width:auto;
  } 
  .checkout .hidden-phone {
    display:none !important;
  }
  
  .checkout th.qty {
    text-align:left !important;
  } 
    
  .checkout .table-bordered h3, .checkout tr.total.grand td {
    font-size:16px;
    line-height:20px;
  }
  
  .checkout .voucher {
    text-align:left;
  }
  .checkout .voucher .btn {
    margin-top:10px;
    margin-bottom:20px;
  }
  
  .checkout .voucher .inner {
    padding-bottom:0px;
  }
  .checkout .table-bordered h3, .checkout .table-total h3, .checkout .voucher h3, .checkout tr.total.grand td {
    font-size:14px;
    line-height:18px;
  }

  .checkout tr.total .item {
    text-align: left !important; 
  }

}

/* =============================================================================
	SOCIAL MEDIA NAV PILLS
   ========================================================================== */

   .socialmedia .nav-pills > li > a {margin:10px 0 0 10px; padding:1px; width: 24px; height:24px;border-radius: 100%}
   .socialmedia .nav-pills > li > a:hover {opacity:0.8;}
   .socialmedia {background-color: #fff}

/* =============================================================================
	NAV TABS DROP
   ========================================================================== */
   .nav-tabs {position:relative;}
   .nav-tabs .tabdrop {float:right;}
   .nav-tabs .dropdown-toggle .caret {border-top-color: #888; border-bottom-color: #888; margin-top: 6px;}
   .nav-tabs .dropdown-toggle:hover .caret{border-top-color: #fff; border-bottom-color: #fff;}

   .dropdown-menu li a:hover {background-color: #888}
   .dropdown-menu {border-radius: 0; border:1px solid #ddd;}

/* =============================================================================
	LINE TRHOUGH STYLE
   ========================================================================== */
	h4.hr {display: table; white-space: nowrap;margin:10px auto;}
	h4.hr:before,
	h4.hr:after {
      border-top: 1px solid #888;
      content: '';
      display: table-cell;
      position: relative;
      top: 0.5em;
      width: 45%;
    }
    h4.hr:before {right: 1.5%;}
    h4.hr:after {left: 1.5%;}

/* =============================================================================
	NUMBER STEPPER FOR NUMERIC INPUT FIELDS
   ========================================================================== */
/* For Firefox */
input[type='number'] {
    -moz-appearance:textfield;
}
input[type=number]::-webkit-inner-spin-button, 
input[type=number]::-webkit-outer-spin-button { 
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
margin: 0; 
}





/* =============================================================================
	SESSION TIME AVAILABILITY & PRICE - UNDER CALENDAR
   ========================================================================== */
	.session-container {
	    min-height: 0;
	    width: 100%;
	    /*padding: 15px 10px;*/
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	    /*border-radius: 0 0 3px 3px;*/
	    /*margin-top: -2px;*/
	    /*background-color: #fff;*/
	    /*border:1px solid #ddd;*/
	    /*text-align: center;*/
	}

	.session-container select {
		width: auto;
		/*max-width: 190px;*/
	}
	.total-price h4 { 
		line-height:60px;
		vertical-align:bottom;
		margin-bottom: 0;
	}
	.total-price h4 .total-price-value {
		float:right;
		font-size:20px;
		font-weight:900;
	}

	.book-now-container {
		margin-top: 15px;
		text-align: center;
	}

	.gift-voucher-container {
		text-align: center;
	}

	.input-right {
		text-align: right;
	}



/* =============================================================================
	RESPONSIVE!
   ========================================================================== */

   	@media (min-width: 900px) {
   		.products-list-item-side { width:74%; margin-left:20px; }
        .session-picker .products-list-item-side  { width:70%; }
   		.products-list-item-overview { width:69%; float:left; margin-right:20px; }
   		.products-read-more { float:right; text-align:right; }
   		.extras-read-more { text-align:right; }
   	}

	/* Landscape phone to portrait tablet */
	@media (max-width: 768px) {
		.form-checkout .product-image { display:none; }
		.input-xxlarge {max-width: 100%;}
		.form-availability { overflow-x:scroll; }
		.participants-quantities { width: 50px !important; }
		#CreditCard_expiryMonth.span2 {display: inline-block; width: 100px; }
		#CreditCard_expiryYear.span2 {display: inline-block; width: 140px; }

		.checkout .payment-logos, .checkout .payment-logos.active { display: none; }
	}

	@media (min-width: 768px) and (max-width: 900px) {
		.products-list-item-side { width:60%; margin-left:20px; }

		/* Reset details page columns */
		.product-details-wrap .span4,
		.product-details-wrap .span8 { width:auto; float:none; }

	}

	/* Landscape phones and down */
	@media (max-width: 480px) {
		body { padding: 0; background: none; }
		.wrap {margin-bottom: 0}
	   	.calendar-widget .participants .controls { margin-left:0; }
		.calendar-widget .control-group > label { float:left; width: 60%; }
		.calendar-widget .control-group > .change-quantity { float: right; }

	   	.products-list-image img { max-width:100%; }
	   	.products-list-image { margin-bottom:10px; }

        .session-day-3, .session-day-5, .session-day-6 { display:none; }


		/* Catalog Widget starts from left to right, not centered. Can't knock off first and last columns. */
		.session-picker.catalog-widget .session-day-0,
		.session-picker.catalog-widget .session-day-1,
		.session-picker.catalog-widget .session-day-2 { display: inline-block; display: table-cell; }
		.session-picker.catalog-widget .session-day-3,
		.session-picker.catalog-widget .session-day-4,
		.session-picker.catalog-widget .session-day-5,
		.session-picker.catalog-widget .session-day-6 { display: none; }

		/* Force table to not be like tables anymore */
		.responsive-table table, .responsive-table thead, .responsive-table tbody, .responsive-table th, .responsive-table td, .responsive-table tr { display: block; }
		.responsive-table thead tr { position: absolute; top: -9999px; left: -9999px; }
		.responsive-table tr { border: 1px solid #ccc; }
		.responsive-table td { border: none; border-bottom: 1px solid #eee; position: relative; padding-left: 50%; }
		.responsive-table td:before { position: absolute; top: 6px; left: 6px; width: 45%; padding-right: 10px; white-space: nowrap; }
		.responsive-table td.tar { text-align:left!important; }
		.responsive-table tr.itemrow td:nth-of-type(2):before { content: "Product"; }
		.responsive-table tr.itemrow td:nth-of-type(3):before { content: "Price"; }
		.responsive-table tr.itemrow td:nth-of-type(4):before { content: "Quantity"; }
		.responsive-table tr.itemrow td:nth-of-type(5):before { content: "Total"; }
		.responsive-table .item-remove .btn-remove { float:none; font:inherit; color: inherit; background: none;}
		.responsive-table .checkout .item-price {float: none; }

		.responsive-watch.input-xxlarge { width: 100%; }
		
		.calendar-widget .transfer select {font-size: 16px;}
		.calendar-widget .transfer select:focus {font-size: 16px;}
		.calendar-widget .transfer input {font-size: 16px;}
		.calendar-widget .transfer input:focus {font-size: 16px;}

	}

	@media (min-width:481px) and (max-width:768px) {
		.products-list-item-side { width:42%; margin-left:20px; }
        .session-day-5,.session-day-6 { display:none;}
		.session-picker .days-7 { display: none; }

		/* Catalog Widget starts from left to right, not centered. Can't knock off first and last columns. */
		.session-picker.catalog-widget .session-day-0,
		.session-picker.catalog-widget .session-day-1,
		.session-picker.catalog-widget .session-day-2,
		.session-picker.catalog-widget .session-day-3,
		.session-picker.catalog-widget .session-day-4 { display: inline-block; display: table-cell; }
		.session-picker.catalog-widget .session-day-5,
		.session-picker.catalog-widget .session-day-6 { display: none; }

		.control-group {position: relative;}
		.change-quantity, .controls {text-align: left}
		.session-container select {max-width: 100%}
		.calendar-widget .control-label {width: 160px}
		.input-right {text-align: left}
   
	}

    @media (max-width: 580px) {
        .session-day-3, .session-day-4, .session-day-5,.session-day-6 { display:none; }
        .session-picker .days-3 { display: inline-block; }
        .breadcrumbs {margin-top:10px;}
        .language-toolbar, .share-bar {float: left}
        .language-toolbar{margin-left: 0; margin-right: 10px;}
    }

	@media (max-width: 480px) {
		.session-picker .date-select .current-date {
			margin-top: 25px;
			width: auto;
		}
		.session-picker .date-select .current-date .datepicker.span2 {
			width: 94px;
		}
        .session-picker .days-7 { display: none; }
	}

	@media (min-width: 481px) and (max-width: 768px) {
		.session-picker .date-select .current-date small {
			display: block;
			margin: 0 auto;
		}
		.session-picker .date-select .current-date .datepicker.span2 {
			display: block;
			margin: 5px auto 0 auto;
			width: 94px;
		}
	}

    @media (min-width: 581px) and (max-width:768px) {
        .session-picker .days-5 { display: inline-block; }
    }

	/* Large desktop */
	@media (min-width: 1200px) {
		/*.products-list-item-side { width:78%; }*/
   		/*.products-list-item-overview { width:76%; }*/
	}