@charset "UTF-8";


html {
	background-color:#FFFFFF;
	height:100%;
}

body {
	font-family: "proxima-nova";
	font-weight: 300;
	color:#343434;
	height:100%;
}

a {
	text-decoration: none;
	color:#343434;
}

button, input[type='text'], select, textarea {
	-webkit-appearance:none;
}

button:focus, input:focus, select:focus, textarea:focus {
	outline: 0;
}




.ui-tooltip {
	font-family: "proxima-nova";
	font-weight: 300;
	border:none;
	color:#FFFFFF;
	padding:0px;
	box-shadow:none;
	border-radius:5px;
	overflow:hidden;
}

.ui-tooltip-content {
	background-color:#999999;
	padding:10px 15px;
	margin:0;
	font-size:14px;
}

.zoom {
	cursor:pointer;
}


.left-column {
	position:fixed;
	width:220px;
	left:0;
	height:100%;
	top:0;
}


.logo {
	padding:46px 25px;
	height:190px;
	box-sizing:border-box;
	text-align:center;
}


.logo img {
	max-width:170px;
	height:auto;
	max-height:98px;
}


header {
	height:190px;
	width:100%;
	box-sizing:border-box;
	padding:65px 0 0 50px;
	position:relative;
}

header h1 {
	font-size:27px;
	font-weight:400;
	color:#FFFFFF;
	padding-bottom:12px;
}

header p {
	font-size:15px;
	font-weight:400;
	color:#FFFFFF;
	padding-bottom:8px;
}

header .edit-link {
	font-size:15px;
	line-height:22px;
	font-weight:400;
	color:#FFFFFF;
}

header .edit-link i {
	display:inline-block;
	padding-right:5px;
}

header .basket-link {
	width:150px;
	height:95px;
	right:30px;
	position:absolute;
	bottom:0;
	box-sizing:border-box;
	padding:17px;
	color:#FFFFFF;
	line-height:19px;
	font-size:15px;
}

header .close-link {
	width:30px;
	height:30px;
	color:#FFFFFF;
	position:absolute;
	text-align:center;
	line-height:30px;
	right:25px;
	top:25px;
	font-size:28px;
}



nav {
	line-height:55px;
	font-size:13px;
	padding-left:50px;
}

nav .md {
	color:#999999;
	display:inline-block;
	padding:0 15px;
}

nav a {
	color:#999999;
}



.right-column {
	position:fixed;
	left:220px;
	height:100%;
	top:0;
	right:0;
	overflow-y: scroll; /* has to be scroll, not auto */ 
}

.momentum {
	-webkit-overflow-scrolling: touch;
}


.product-list {
	padding:0 0 0 50px;
}

.product-list h2 {
	font-size:16px;
	color:#999999;
	font-weight:400;
	clear:left;
	padding-top:50px;
}


.product-list article {
	width:150px;
	height:205px;
	margin:20px 20px 0 0 ;
	float:left;
	-webkit-transition: all 0.2s; /* Safari */
    transition: all 0.2s;
    position:relative;
}

.product-list article .added {
	position:absolute;
	width:16px;
	height:16px;
	top:5px;
	right:5px;
	color:#FFFFFF;
	font-size:12px;
	line-height:16px;
	text-align:center;
	border-radius:16px;
}



.product-list article:hover {
	background-color:rgba(0,0,0,0.05);
	-webkit-transition: all 0.2s; /* Safari */
    transition: all 0.2s;
}

.product-list p {
	margin:15px;
	font-size:16px;
	line-height:19px;
}

.product-list a {
	color:#343434;
}


.product-list .thumbnail {
	width:150px;
	height:120px;
	box-sizing:border-box;
	padding:20px;
	background-color:#FFFFFF;
	text-align:center;
}


.product-list .thumbnail img {
	max-height:80px;
	width:auto;
	max-width:110px;
}


.checkout-items {
	padding:0 0 0 50px;
	
}


.detail {
	padding:30px 0 200px 50px;
	overflow:hidden;
}

.detail .image {
	width:360px;
	background-color:#FFFFFF;
	border:10px solid #FFFFFF;
	box-sizing:border-box;
	margin:20px 50px 0 0;
	float:left;
	text-align: center;
}

.detail .image img {
	width:100%;
	max-width:360px;
	height:auto;
}

.detail .description .add-container {
	height:80px;
}

.available {
	width:150px;
	float:left;
	font-size:19px;
	font-weight:400;
	height:30px;
	line-height:30px;
}

.detail .add {
	float:left;
	height:32px;
	line-height:32px;
}

.detail .add input {
	height:30px;
	border:1px solid #CCCCCC;
	padding:0 3px;
	-webkit-appearance:none;
	font-family: "proxima-nova";
	font-size:15px;
	width:50px;
	float:left;
	font-weight:300;
}

.detail .add button {
	height:32px;
	border:none;
	line-height:28px;
	font-size:14px;
	padding:0 13px;
	float:left;
	margin-left:10px;
	cursor:pointer;
	color:#FFFFFF;
}

.detail .description h1 {
	font-size:35px;
	line-height:38px;
	padding:20px 100px 40px 0px;
}

.detail .description h1 i {
	font-size:15px;
	margin-left:15px;
	height:24px;
	width:24px;
	background-color:blue;
	color:white;
	line-height:24px;
	text-align:center;
	display:inline-block;
	position:relative;
	top:-10px;
	border-radius:12px;
}

.detail .description p {
	font-size:18px;
	line-height:24px;
	padding-right:60px;
}



.related {
	clear:both;
	float:none;
	position:fixed;
	bottom:0;
	left:220px;
	height:150px;
	right:0;
	z-index:100;
	overflow-y: scroll; /* has to be scroll, not auto */
  	-webkit-overflow-scrolling: touch;
}

.related-inner {
	position:relative;
	padding-left:50px;
	height:100%;
	min-width:100%;
	box-sizing:border-box;
	background-color:rgba(0,0,0,0.05);
	white-space: nowrap;
}


.related article {
	width:140px;
	height:110px;
	overflow:hidden;
	margin:20px 20px 0 0px;
	float:left;
	position:relative;
}

.related p {
	margin:7px 10px 0 10px;
	font-size:14px;
	line-height:17px;
}

.related a {
	color:#343434;
}

.related .thumbnail {
	width:140px;
	height:60px;
	box-sizing:border-box;
	padding:10px;
	background-color:#FFFFFF;
	text-align:center;
}

.related .added {
	position:absolute;
	width:16px;
	height:16px;
	top:5px;
	right:5px;
	color:#FFFFFF;
	font-size:12px;
	line-height:16px;
	text-align:center;
	border-radius:16px;
}



.related .thumbnail img {
	max-height:40px;
	width:auto;
	max-width:120px;
}



.checkout-list {
	padding:50px;
}


.checkout-list article {
	height:70px;
	margin:0 0 15px 0;
	background-color:rgba(0,0,0,0.05);
}

.checkout-list article .image {
	height:70px;
	width:80px;
	text-align:center;
	background-color:#FFFFFF;
	float:left;
}

.checkout-list article img {
	margin-top:5%;
	max-width:90%;
	max-height:85%;
}

.checkout-list article p {
	font-size:16px;
	line-height:70px;
	padding-left:25px;
	float:left;
}

.checkout-list .add {
	width:100px;
	float:right;
	height:70px;
}

.checkout-list .add input {
	height:30px;
	border:1px solid #CCCCCC;
	padding:0 3px;
	-webkit-appearance:none;
	font-family: "proxima-nova";
	font-size:15px;
	width:35px;
	float:left;
	margin-top:19px;
}

.delete-line {
	height:32px;
	width:32px;
	border:none;
	line-height:32px;
	font-size:25px;
	float:right;
	cursor:pointer;
	color:#CCCCCC;
	margin-top:19px;
	margin-right:15px;
}


.save-changes {

	padding:12px 16px;
	background-color:grey;
	color:#FFFFFF;
	font-size:16px;
	-webkit-appearance:none;
	font-family: "proxima-nova";
	border:none;
	cursor:pointer;
	margin-top:35px;
	clear:left;
	display:block;

}

.confirm {
	padding:12px 16px;
	background-color:grey;
	color:#FFFFFF;
	font-size:16px;
	-webkit-appearance:none;
	font-family: "proxima-nova";
	border:none;
	cursor:pointer;
	clear:left;
	display:block;
}

.add-event {
	padding:12px 16px;
	background-color:grey;
	color:#FFFFFF;
	font-size:16px;
	-webkit-appearance:none;
	font-family: "proxima-nova";
	border:none;
	cursor:pointer;
	clear:left;
	display:block;
}


.finalise {
	clear:both;
	float:none;
	left:220px;
	width:100%;
	margin-top:10px;
	background-color:rgba(0,0,0,0.05);
	padding:30px 50px;
	box-sizing:border-box;
	overflow:hidden;
	padding-bottom:100px;
}

.buttons {
	clear:both;
	padding-top:30px;
}


.finalise label, .new-form label {

	display:block;
	width:15%;
	min-width:170px;
	float:left;
	clear:left;
	line-height:36px;

}

.finalise input, .finalise select, .finalise textarea, .new-form input {
	float:left;
}

.finalise input.standard, .finalise input.short, .finalise textarea.standard, .new-form input.standard, .new-form input.short, .product-search {
	height:36px;
	margin:0 0 15px 0;
	width:80%;
	max-width:400px;
	font-family: "proxima-nova";
	font-weight: 300;
	font-size:16px;
	padding:0 0 0 8px;
	box-sizing:border-box;
	border:1px solid #F1F1F1;
}

.product-search {
	float:right;
}

.search-container {
	float:right;
	width:300px;
	position:relative;
	margin-right:35px;
}

.product-search-button {
	width:36px;
	height:36px;
	border:none;
	background:none;
	position:absolute;
	right:0;
	top:0;
	font-size:20px;
	cursor:pointer;
}


.finalise input.short, .new-form input.short {
	width:40%;
	max-width:200px;
}

select.standard {
	background-color:#FFFFFF;
	height:36px;
	margin:0 0 15px 0;
	width:80%;
	max-width:400px;
	font-family: "proxima-nova";
	font-weight: 300;
	font-size:16px;
	padding:0 0 0 8px;
	box-sizing:border-box;
	border:1px solid #F1F1F1;
	-webkit-appearance:none;
	background-image:url(/resources/img/select_icon.png);
	background-repeat:no-repeat;
	background-position:center right;
	clear:right;
}

.finalise textarea.standard {
	padding-top:5px;
	height:100px;
}

.finalise h2 {
	clear:both;
	float:none;
	padding:40px 0 20px 0;
	font-weight:400;
	font-size:14px;
	border-bottom:1px solid rgba(0,0,0,0.1);
	margin-bottom:30px;
}


.welcome, .new-form {
	padding:60px 50px;
	overflow:hidden;
}

.welcome h1 {
	font-size:25px;
	padding-bottom:20px;
}

.new-form h2, .event-list h2 {
	font-size:14px;
	color:#999999;
	padding-bottom:15px;
	margin-bottom:15px;
	
}

.welcome p {
	font-size:16px;
	line-height:22px;
}

.new-form {
	padding-top:40px;
	background-color:rgba(0,0,0,0.05);
}

.event-list {
	padding:40px 50px 100px 50px;
}


.event-list h2 {
	margin-bottom:0px;
}


.event-list article {
	height:100px;
	margin:0 0 0 0;
	padding-right:20px;
	padding-top:15px;
	box-sizing:border-box;
	position:relative;
	margin-bottom:1px;
	padding-bottom:15px;
	background-color:#FFFFFF;
}

.event-list article a {
}

.event-list article .date {

	width:100px;
	height:70px;
	float:left;
	margin-left:15px;
	box-sizing:border-box;
	margin-right:30px;
	font-size:13px;
	font-weight:400;
	line-height:16px;
	text-align:center;
	padding-top:18px;
}

.event-list article p.name {
	font-size:20px;
	padding-top:15px;
}


.event-list article p.owner {
	font-size:15px;
	color:#999999;
	padding-top:5px;
}

.event-list article .additional {
	float:right;
	height:25px;
	margin-left:10px;
	margin-top:20px;
	line-height:25px;
	font-size:14px;
	color:#999999;
	display:inline-block;
	padding:0 10px;
	border:1px solid #BBBBBB;
	border-radius: 5px;
}






.dim {
	display:none;
	position:fixed;
	z-index:9998;
	left:0;
	top:0;
	height:100%;
	width:100%;
	background-color:rgba(0,0,0,0.8);
}

.detail-window {
	display:none;
	position:fixed;
	z-index:9999;
	left:30px;
	top:30px;
	right:30px;
	bottom:30px;
	padding:50px;
	background-color:#FFFFFF;
}

.confirm-window {
	display:none;
	position:fixed;
	z-index:9999;
	width:300px;
	height:150px;
	left:50%;
	top:50%;
	margin-left:-150px;
	margin-top:-75px;
	box-sizing:border-box;
	padding:30px;
	background-color:#FFFFFF;
	line-height:150%;
}

.detail-image {
	background-size:contain;
	background-repeat: no-repeat;
	background-position:center;
	position:relative;
	top:0;
	left:0;
	width:100%;
	height:100%;
	-ms-behavior: url(/resources/js/backgroundsize.min.htc);
}

.close-detail {
	width:30px;
	height:30px;
	font-size:30px;
	position:absolute;
	top:0;
	right:0;
	color: #999999
}


.checkouts {
	display:none;
	width:400px;
	height:500px;
	overflow-y: scroll; /* has to be scroll, not auto */
  	-webkit-overflow-scrolling: touch;
	position:fixed;
	top:50%;
	left:50%;
	margin-left:-200px;
	margin-top:-250px;
	background-color:#FFFFFF;
	z-index:9999;
}

.checkouts-header {
	padding:25px;
	background-color:#FFFFFF;
}

.checkouts-header h1 {
	font-size:24px;
	line-height:29px;
	font-weight:400;
	padding-bottom:20px;
}
.checkouts-header h2, .checkouts-header h3 {
	font-size:18px;
	padding-top:5px;
	font-weight:400;
}


.bar {
	height:10px;
}



.confirm-message {
	padding-top:100px;
}



a.availability:hover {
	text-decoration:underline;
}






.signin-logo {
	height:120px;
	margin-bottom:30px;
	width:200px;
	left:50%;
	margin-left:-100px;
	top:50%;
	margin-top:-260px;
	position:absolute;
	background-position:center;
	background-size:contain;
	background-repeat:no-repeat;
	-ms-behavior: url(/resources/js/backgroundsize.min.htc);
}




.signin, .signin-slug {
	background-color:#F1F1F1;
	border-bottom:1px solid #E6E6E6;
	width:380px;
	height:420px;
	position:absolute;
	left:50%;
	margin-left:-190px;
	top:50%;
	margin-top:-210px;
	text-align:center;
	box-sizing:border-box;
	padding-top:40px;
}

.signin-slug {
	height:340px;
	margin-top:-110px;
}

.signin div, .signin-slug div {
	text-align:left;
	padding-top:15px;
	padding-left:10%;
	margin-left:-10px;
	font-size:13px;
	font-weight:400;
	color:#BBBBBB;
}

.signin div input, .signin-slug div input {
	display:inline-block;
	margin-left:10px;
}


.signin h1, .signin-slug h1 {
	line-height:50px;
	font-size:40px;
	text-align:center;
	margin-bottom:40px;
}

.signin input.textfield, .signin-slug input.textfield {
	height:45px;
	width:80%;
	border:none;
	margin-bottom:16px;
	font-family: "proxima-nova";
	-webkit-appearance:none;
	color:#252525;
	background-color:#FFFFFF;
	font-size:18px;
	padding-left:10px;
	padding-right:10px;
	border-radius:0px;
}


.signin .signin-link, .signin-slug .signin-link {
	position:absolute;
	width:100%;
	height:50px;
	color:#FFFFFF;
	bottom:0;
	left:0;
	display:block;
	text-decoration:none;
	font-weight:bold;
	font-size:19px;
	height:50px;
	width:100%;
	line-height:50px;
}



.signin-slug .signin-error {
	padding-top:30px;
	color:red;
}


.menu {
	padding:30px;
	position:absolute;
	top:160px;
	width:100%;
	box-sizing:border-box;
	display:block;

}

.menu li {
	line-height:40px;
	font-size:14px;
	display:block;
	border-top:1px solid rgba(0,0,0,0.05);
	position:relative;
}

.menu li .md {
	display:inline-block;
	margin-right:5px;
}

.menu li a {
	position:relative;
	height:100%;
	width:100%;
	display:block;color:#999999;
}

.menu li a:hover {
	display:block;color:#3B3B3B;
}


.to-top {
	clear:both;
	float:none;
	font-size:12px;
	padding-top:20px;
}

.to-top a {
	color:#CCCCCC;
}





.msg {
	height:36px;
	float:left;
	clear:right;
	line-height:36px;
	padding-left:10px;
	font-size:15px;
	color:red;
}

.msg i {
	display:inline-block;
	margin-right:2px;

}





.topmsg {
	height:25px;
	width:300px;
	font-size:15px;
	text-align:center;
	font-weight:400;
	color:#FFFFFF;
	position:fixed;
	top:-25px;
	left:50%;
	margin-left:-150px;
	border-bottom-right-radius: 6px;
	border-bottom-left-radius: 6px;
	line-height:26px;
	z-index:99999;
}

.topmsg i {
	display:inline-block;
	margin-right:2px;
}

.topmsg.msg_red {
	
}

.mobile-top, .mobile-date {
	display:none;
}

#jump {
	margin-left:50px;
}


.user-record {
	padding-bottom:10px;
}

.submit, .form-container .cancel {
	display:block;
	height:36px;
	line-height:36px;
	padding:0 15px;
	border:none;
	border-radius:5px;
	color:#FFFFFF;
	font-size:15px;
	cursor:pointer;
	box-sizing:border-box;
	-webkit-transition: all 0.2s; /* Safari */
    transition: all 0.2s;
    float:left;
    margin-right:15px;
}

.submit i.md, .form-container .cancel i.md {
	font-size:17px;
	display:inline-block;
	padding-right:5px;
}











@media only screen and (min-width:600px) and (max-width: 1000px)  {
	
	.welcome, .new-form, .event-list, header, nav, .product-list, .checkout-list, .finalise {
		padding-left:30px;
		padding-right:30px;
	}

	.detail, .related-inner {
		padding-left:30px;
	}

	#jump {
		margin-left:30px;
	}

	.checkout-list article .image {
		display:none;
	}

	.checkout-list article p {
		font-size:15px;
	}

	.checkout-list .add {
		width:100px;
	}

	.checkout-list .add input {
		width:35px;
	}

	.left-column {
		display:none;
	}

	.mobile-top {
		height:80px;
		clear:both;
		display:block;
		background-color:#FFFFFF;
	}

	.mobile-logo img {
		height:50px;
		margin:15px;
		margin-left:25px;
		width:auto;
	}

	.mobile-menu {
		float:right;
	}

	.mobile-menu li {
		float:left;
		margin-right:30px;
		margin-left:0px;
		line-height:80px;
	}

	.right-column {
		position:fixed;
		left:0;
		height:100%;
		top:0;
		right:0;
		overflow-y: scroll; /* has to be scroll, not auto */ 
	}


	.related {
		clear:both;
		float:none;
		position:fixed;
		bottom:0;
		left:0;
		height:150px;
		right:0;
		z-index:100;
		overflow-y: scroll; /* has to be scroll, not auto */
	  	-webkit-overflow-scrolling: touch;
	}



}


@media only screen and (max-width: 599px)  {
	
	.left-column {
		display:none;
	}


	.right-column {
		position:fixed;
		left:0;
		height:100%;
		top:0;
		right:0;
		overflow-y: scroll; /* has to be scroll, not auto */ 
	}

	.mobile-top {
		height:80px;
		clear:both;
		display:block;
		background-color:#FFFFFF;
	}

	.mobile-logo img {
		height:50px;
		margin:15px;
		margin-left:25px;
		width:auto;
	}

	.mobile-menu {
		float:right;
	}

	.mobile-menu li {
		float:left;
		margin-right:20px;
		margin-left:0px;
		line-height:80px;
	}

	.welcome, .new-form, .event-list, header, nav, .product-list, .checkout-list, .finalise {
		padding-left:30px;
		padding-right:30px;
	}

	.detail, .related-inner {
		padding-left:30px;
	}

	#jump {
		margin-left:30px;
	}
	

	.finalise label, .new-form label {clear:right;}
	
	.finalise input.standard, .new-form input.standard {
		width:100%;
		max-width:none;
	}

	.finalise input.short, .new-form input.short {
		width:80%;
		max-width:none;
	}





	/* granular mobile adjustments */

	.event-list article .date {
		display:none;
	}
	.event-list article .additional {
		font-size:12px;
	}

	.event-list article p.name {
		padding-top:5px;
		margin-left:20px;
		font-size:17px;
	}

	.event-list article p.owner {
		padding-top:5px;
		margin-left:20px;
		font-size:13px;
	}

	.event-list article p.mobile-date {
		display:block;
		font-size:13px;
		color:#999999;
		padding-top:5px;
		margin-left:20px;
	}

	header {
		padding-top:25px;
	}

	header h1 {
		width:90%;
	}

	header .basket-link {
		width:100%;
		height:35px;
		right:0;
		left:0;
		bottom:0px;
		padding:0;
		line-height:35px;
		padding-left:30px;
	}

	.mobile-hide {
		display:none;
	}

	.product-search {
		width:100%;
	}

	.product-list article {
		width:48%;
		margin-right:2%;
	}

	.product-list .thumbnail {
		width:100%;
	}

	nav .md {
		padding:0 5px;
	}

	nav {
		line-height:140%;
		padding:15px 30px;
	}

	.product-search-button {
		right:30px;
	}

	.detail .image {
		width:30%;
		margin-right:30px;
	}

	.search-container {
		width:100%;
		float:none;
		padding-right:30px;
		padding-left:30px;
		margin-right:30px;
		box-sizing:border-box;
		overflow:hidden;
	}
	.product-search {
	}

	.detail .description h1 {
		font-size:28px;
		line-height:140%;
		padding-right:20px;
	}

	.detail .description .add-container {
		clear:both;
		padding-top:30px;
	}

	.related {
		display:none;
	}

	header .close-link {
		display:none;
	}


	.checkout-list article .image {
		display:none;
	}

	.checkout-list article p {
		font-size:15px;
	}

	.checkout-list .add {
		width:100px;
	}

	.checkout-list .add input {
		width:35px;
	}


	.checkout-list article {
		background:none;
		padding:0;
		border-bottom:1px solid #CCCCCC;
		overflow:hidden;
		height:auto;
	}

	.checkout-list article p {
		line-height:140%;
		padding-left:0;
	}

	.checkout-list .add {
		float:none;
		clear:both;
	}


	.signin, .signin-slug {
		background-color:#F1F1F1;
		border-bottom:1px solid #E6E6E6;
		width:90%;
		margin-left:5%;
		left:0;
	}


}



