﻿body {
	font-family: 'Lato', sans-serif, Arial;
	font-size: 18px;
	font-weight: 300;
	margin: 0;
	background-color: #ddd;
	color: #444;
}

div, section, article, nav {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

p {
	margin-top: 10px;
	margin-bottom: 20px;
}

a {
	cursor: pointer;
	color: #000;
	text-decoration: none;
}

h1, .h1 {
	font-weight: 300;
	font-size: 36px;
	color: #000;
	text-transform: uppercase;
	margin-bottom: 30px;
}

h2, .h2 {
	font-size: 30px;
	font-weight: 300;
	margin-bottom: 0;
	color: #000;
}

input[type=text],
input[type=email],
input[type=password],
select,
textarea {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	font-family: 'Lato', sans-serif, Arial;
	font-size: 14px;
}

.button {
	background-color: #444;
	color: #fff;
	padding: 15px 30px;
	display: inline-block;
	-moz-transition: all ease-in-out 0.2s;
	-o-transition: all ease-in-out 0.2s;
	-webkit-transition: all ease-in-out 0.2s;
	transition: all ease-in-out 0.2s;
	text-align: center;
}

.button:hover {
	background-color: #666;
}

.error {
	color: #f00;
	display: block;
	margin-top: 5px;
	margin-bottom: 5px;
}

.content {
	margin-bottom: 100px;
	width: 100%;
	padding-top: 10px;
	min-height: 775px;
	position: relative;
}

.content.with-fork {
	padding-left: 140px;
	background-image: url(/Images/fork.png);
	background-position: 0 38px;
	background-size: 120px auto;
	background-repeat: no-repeat;
}

.datepicker {
	background-image: url(/Images/datePickerIcon.png);
	background-repeat: no-repeat;
	background-position: right center;
}

.has-side-banner .content {
	padding-right: 380px;
}

.side-banner {
	position: absolute;
	top: 0;
	right: 0;
	width: 330px;
	height: 755px;
	background-repeat: no-repeat;
	background-position: right 0;
}

.form label {
	font-weight: 600;
	font-size: 14px;
	display: block;
	margin-bottom: 5px;
}

.form input[type=text],
.form input[type=email],
.form select,
.form textarea {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 10px;
	width: 100%;
	border: 1px solid #c2c1c1;
}

.form textarea {
	max-width: 100%;
	min-width: 100%;
	height: 150px;
}

.form select {
	padding: 9px 10px;
	background-color: #fff;
}

.form .form-column-container:after {
	content: ".";
	display: block;
	clear: both;
	visibility: hidden;
	line-height: 0;
	height: 0;
}

.form .form-row {
	margin-bottom: 20px;
}

.form .form-row.checkbox {
	overflow: hidden;
}

.form .form-row.checkbox input {
	float: left;
	margin-right: 5px;
}

.form .form-row.checkbox label {
	float: left;
	width: 90%;
}

.form .form-row.half {
	width: 48%;
	float: left;
}

.form .form-row.half.first {
	margin-right: 4%;
}

.form .button-container {
	text-align: right;
}

.form .inline-input {
	width: 100px;
	margin-right: 8px;
}

.form.horizontal-labels .form-row {
	overflow: hidden;
}

.form.horizontal-labels .label-container {
	width: 150px;
	float: left;
}

.form.horizontal-labels .label-container label {
	line-height: 35px;
}

.form.horizontal-labels .input-container {
	float: left;
}

.contact-details {
	overflow: hidden;
	margin-top: 40px;
}

.contact-details .contact-detail {
	background-repeat: no-repeat;
	padding-left: 50px;
	margin-right: 30px;
	display: inline-block;
	line-height: 40px;
	text-decoration: none;
	color: #444;
	background-size: auto 40px;
}

.contact-details .contact-detail.phone {
	background-image: url(/Images/phoneIcon.png);    
    font-size: 24px;
    background-position-y: 4px;
    float: left;
}

span.contact-detail.phone span {
    display: block;
    font-size: 12px;
    line-height: 17px;
    margin-bottom: -5px;
    font-weight: 500;
}

.contact-details .contact-detail.book-online {
	background-image: url(/Images/bookOnlineIcon.png);
    float: left;
    background-position-y: 4px;
    padding-top: 2px;
    padding-bottom: 2px;
    font-size: 24px;
}

.contact-details .contact-detail.email {
	background-image: url(/Images/emailIcon.png);
    float: left;
    background-position-y: 4px;
    padding-top: 2px;
    padding-bottom: 2px;
    font-size: 24px;
}

.contact-details .contact-detail.hours {
	background-image: url(/Images/hoursIcon.png);
}



.location-page .home-page {
    padding-top: 60px;
}

.location-page .home-page .location-banner {
    background-position: top;
    height: 500px;
    width: 49%;
    margin-left: 0;
}
.location-page .home-page .location-banner-2 {
    margin-left: .8%;
	float: right;
}

.location-page  .home-page .contact-details {
    position: absolute;
    bottom: 30px;
}

.location-page  .home-page .contact-details .contact-detail {
	background-repeat: no-repeat;
	padding-left: 50px;
	margin-right: 30px;
	display: inline-block;
	line-height: 40px;
	text-decoration: none;
	color: #fff;
	background-size: auto 40px;
}

.location-page  .home-page .contact-details .contact-detail.phone {
	background-image: url(/Images/phoneIcon_reverse.png);    
    font-size: 24px;
    background-position-y: 4px;
    float: left;
    text-align: left;
}

.location-page  .home-page span.contact-detail.phone span {
    display: block;
    font-size: 12px;
    line-height: 17px;
    margin-bottom: -5px;
    font-weight: 500;
}

.location-page  .home-page .contact-details .contact-detail.book-online {
	background-image: url(/Images/bookOnlineIcon.png);
    float: left;
    background-position-y: 4px;
    padding-top: 2px;
    padding-bottom: 2px;
}

.location-page  .home-page .contact-details .contact-detail.email {
	background-image: url(/Images/emailIcon_reverse.png);
    float: left;
    background-position-y: 4px;
    padding-top: 2px;
    padding-bottom: 2px;
}

.location-page  .home-page .contact-details .contact-detail.hours {
	background-image: url(/Images/hoursIcon.png);
}



.sub-menu {
	background-color: #444;
	display: block;
	color: #fff;
}

.sub-menu ul {
	display: block;
	margin: 0 auto;
	padding: 0;
	max-width: 1200px;
	text-align: center;
	text-transform: uppercase;
}

.sub-menu ul li {
	display: inline-block;
	position: relative;
}

.sub-menu ul li a {
	color: #fff;
	padding: 20px 25px;
	padding-right: 40px;
	display: inline-block;
	background-image: url(/Images/menuBullet.png);
	background-repeat: no-repeat;
	background-position: right center;
}

.sub-menu ul li:last-child a {
	background-image: none;
	padding-right: 25px;
}

.sub-menu .arrow {
	display: block;
	height: 12px;
	position: absolute;
	bottom: 0;
	width: 90%;
	background-image: url(/Images/menuArrow.png);
	background-repeat: no-repeat;
	background-position: center bottom;
	-moz-transition: all ease-in-out 0.2s;
	-o-transition: all ease-in-out 0.2s;
	-webkit-transition: all ease-in-out 0.2s;
	transition: all ease-in-out 0.2s;
}

.sub-menu .selected .arrow {
	bottom: -12px;
}

.page-head {
	background-color: #e9e9e9;
	border-bottom: 1px solid #ccc;
}

.page-head h1 {
	margin: 0;
	padding: 30px 0;
}

.page-head .search {
	width: 300px;
	position: absolute;
	right: 0;
	top: 20px;
	display: block;
	height: 65px;
	padding: 0 20px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	font-size: 18px;
	font-weight: 400;
	border: 1px solid #ccc;
}

.page-head .search-button {
	background-image: url(/Images/searchIcon.png);
	background-repeat: no-repeat;
	background-position: center;
	width: 34px;
	height: 34px;
	position: absolute;
	right: 15px;
	top: 35px;
	opacity: 0.7;
	-moz-transition: all ease-in-out 0.2s;
	-o-transition: all ease-in-out 0.2s;
	-webkit-transition: all ease-in-out 0.2s;
	transition: all ease-in-out 0.2s;
}

.page-head .search-button span {
	display: none;
}

.page-head .search-button:hover {
	opacity: 1;
}

.price {
	font-weight: 600;
	position: absolute;
	right: 0;
	top: 0;
}

.dollar {
	vertical-align: super;
	font-size: 50%;
}

.remove {
	display: block;
	width: 22px;
	height: 22px;
	background-image: url(/Images/removeIcon.png);
	background-repeat: no-repeat;
	-moz-backface-visibility: hidden;
	opacity: 0.7;
	-moz-transition: all ease-in-out 0.2s;
	-o-transition: all ease-in-out 0.2s;
	-webkit-transition: all ease-in-out 0.2s;
	transition: all ease-in-out 0.2s;
}

.remove:hover {
	-moz-backface-visibility: hidden;
	opacity: 1;
}

.remove span {
	display: none;
}

.outer-base {
	min-width: 900px;
}

.base {
	max-width: 1260px;
	margin: auto;
	position: relative;
	padding: 0 30px;
}

.logo {
	display: block;
	background-image: url(/Images/cafeVita.png);
	width: 340px;
	height: 170px;
	margin: auto;
	background-size: 100% auto;
	background-repeat: no-repeat;
}

.logo span {
	display: none;
}

.toggle-nav-button {
	display: none;
}

.popup-nav {
	display: none;
}

.main-header {
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	height: auto;
	background-size: 100% auto;
	position: relative;
}

.main-header .carousel-nav {
	position: absolute;
	bottom: 0;
	width: 90px;
	height: 90px;
	background-repeat: no-repeat;
	background-position: center;
	z-index: 2;
	-moz-transition: all ease-in-out 0.2s;
	-o-transition: all ease-in-out 0.2s;
	-webkit-transition: all ease-in-out 0.2s;
	transition: all ease-in-out 0.2s;
}

.main-header .carousel-nav > span {
	display: none;
}

.main-header .previous {
	left: 0;
	background-image: url(/Images/carouselPreviousIcon.png);
}

.main-header .next {
	right: 0;
	background-image: url(/Images/carouselNextIcon.png);
}

.main-header.single-carousel .previous, .main-header.single-carousel .next {
	display: none;
}

.main-header .header-inner {
	height: 140px;
	background-color: rgba(0, 0, 0, 0.6);
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	width: 100%;
	z-index: 2;
}

.main-header .header-inner .logo {
	position: absolute;
	left: 30px;
	top: 8px;
	width: 250px;
}

.main-header .main-nav-container .main-nav {
	position: absolute;
	right: 0;
	top: 69px;
	padding-left: 10px;
	padding-right: 10px;
	font-size: 18px;
	text-align: center;
}

.main-header .main-nav-container .main-nav a {
	color: #fff;
	text-transform: uppercase;
	font-weight: 300;
	text-align: center;
	padding: 10px 20px;
	text-decoration: none;
	border: 1px solid transparent;
	-moz-transition: all ease-in-out 0.2s;
	-o-transition: all ease-in-out 0.2s;
	-webkit-transition: all ease-in-out 0.2s;
	transition: all ease-in-out 0.2s;
}

.main-header .main-nav-container .main-nav a:hover {
	background-color: #000;
	border: 1px solid #999;
}

.main-header .main-nav-container .main-nav a.selected {
	border: 1px solid #999;
}

.main-header .popup-nav {
	display: none;
	-moz-transform: translate(-100%, 0);
	-ms-transform: translate(-100%, 0);
	-o-transform: translate(-100%, 0);
	-webkit-transform: translate(-100%, 0);
	transform: translate(-100%, 0);
}

.main-header .carousel-items {
	height: 550px;
	position: relative;
	top: 0;
	left: 0;
	right: 0;
	text-align: center;
	background-color: #444;
}

.main-header .carousel-items h2 {
	display: block;
	text-transform: uppercase;
	color: #fff;
	text-align: center;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
}

.main-header .carousel-items h2 a, .main-header .carousel-items h2 span {
	color: #fff;
	background-color: rgba(0, 0, 0, 0.6);
	display: inline-block;
	padding: 15px 40px;
	font-size: 36px;
}

.main-header .carousel-items .carousel-item {
	height: 100%;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	opacity: 0;
}

.main-header .carousel-items .carousel-item.current {
	z-index: 1;
}

.main-header .carousel-items .carousel-item.show {
	opacity: 1;
	-moz-animation-name: fadeIn;
	-o-animation-name: fadeIn;
	-webkit-animation-name: fadeIn;
	animation-name: fadeIn;
	-moz-animation-duration: 0.8s;
	-o-animation-duration: 0.8s;
	-webkit-animation-duration: 0.8s;
	animation-duration: 0.8s;
}

.main-header .carousel-items .carousel-grey {
	height: 225px;
}

.main-header .carousel-items .carousel-item, .main-header .carousel-items .carousel-grey {
	background-position: center;
	background-size: 100% auto;
}

.main-header .carousel-shade {
	position: absolute;
	width: 100%;
	left: 0;
	right: 0;
	bottom: 0;
	height: 100%;
	/*background-image: url(/Images/carouselShade.png);*/
	background-repeat: repeat-x;
	background-position: center bottom;
	margin-top: 20px;
}

.main-header, .header-inner {
	background-position: center 0;
}

.main-footer .smct-logo {
	position: absolute;
	top: 95px;
	width: 250px;
	height: 60px;
	background-image: url(/Images/smctLogo.png);
	background-position: center;
	background-repeat: no-repeat;
}

.main-footer .smct-logo span {
	display: none;
}

    .smct-logo {	
        display: none;
    }

.main-footer .social-links {
	overflow: hidden;
	position: absolute;
	right: 30px;
	top: 0;
}

.main-footer .social-links a {
	display: block;
	width: 40px;
	height: 40px;
	float: left;
	margin-left: 10px;
	opacity: 0.7;
	-moz-transition: opacity ease-in-out 0.2s;
	-o-transition: opacity ease-in-out 0.2s;
	-webkit-transition: opacity ease-in-out 0.2s;
	transition: opacity ease-in-out 0.2s;
	background-size: auto 100%;
}

.main-footer .social-links a > span {
	display: none;
}

.main-footer .social-links a:hover {
	opacity: 1;
}

.main-footer .social-links .pintrest {
	background-image: url(/Images/pintrestIcon.png);
}

.main-footer .social-links .facebook {
	background-image: url(/Images/facebookIcon.png);
}

.main-footer .social-links .instagram {
	background-image: url(/Images/instagramIcon.png);
}

.main-footer .social-links .urbanspoon {
	background-image: url(/Images/urbanspoonIcon.png);
}

.main-footer nav {
	border-top: 1px solid #bbb;
	margin-top: 30px;
	text-align: center;
	padding-top: 30px;
}

.main-footer nav a {
	display: inline-block;
	margin: 0 10px;
	text-transform: uppercase;
	font-size: 20px;
}

.main-footer nav a:last-child {
	margin-right: 0;
}

.main-footer .copyright {
	text-align: center;
	display: block;
	margin: 0;
	margin-bottom: 40px;
	margin-top: 10px;
}

.home-page .main-content-areas {
	margin: 0 -40px;
	margin-top: 40px;
	text-align: center;
	font-weight: 300;
	margin-bottom: 40px;
}

.home-page .main-content-areas article {
	float: left;
	width: 33.33%;
	padding: 0 40px;
	border-right: 1px solid #bbb;
}

.home-page .main-content-areas article h2 {
	margin: 0;
}

.home-page .main-content-areas article .image {
	display: block;
	height: 170px;
	background-size: 100% auto;
	background-repeat: no-repeat;
	background-position: center;
	margin-bottom: 30px;
}

.home-page .main-content-areas article .icon {
	background-repeat: no-repeat;
	background-position: center;
	display: block;
	margin: auto;
	width: 125px;
	height: 40px;
	margin-top: 30px;
}

.home-page .main-content-areas article:last-child {
	border-right: none;
}

.home-page .main-content-areas:after {
	content: ".";
	display: block;
	clear: both;
	visibility: hidden;
	line-height: 0;
	height: 0;
}

.home-page .location-banner {
	background-color: #f2f2f2;
	background-image: url(/Images/locationBackground1.png);
	/*background-size: 100% auto;*/
	background-repeat: no-repeat;
	background-position: center;
	height: 400px;
	border: 1px solid #bbb;
	/*border-left: none; border-right: none;*/
	position: relative;
	color: #fff;
    width: 49.6%;
    float: left;
}

section.location-banner.location-banner-2 {
    margin-left: .8%;
	background-image: url(/Images/locationBackground2.png);
}

.home-page .location-banner .open-times {
    position: absolute;
    right: 0px;
    top: 200px;
    bottom: 0;
    width: 100%;
    background-color: #444;
    color: #fff;
    padding: 30px;
    font-weight: 300;
}

.open-times .open-times-location {
    font-size: 36px;
    position: absolute;
    top: 30px;
    left: 30px;
}

.open-times .open-times-address {
    font-size: 20px;
    position: absolute;
    top: 95px;
    left: 30px;
}

.open-times .open-times-address span{
    display: block;
}

.open-times-hours-wrap {
    position: absolute;
    right: 60px;
    width: 140px;
    top: 30px;
}

.open-times-hours-wrap .open-times-hours {
    float: right;
    height: auto;
    padding: 0;
    margin: 0;
}

.home-page .location-banner .open-times p {
	margin: 0;
	margin-bottom: 8px;
}

.home-page .location-banner .open-times strong {
	font-weight: 600;
}

.home-page .location-banner .view-map {
    width: 100%;
    text-align: center;
    color: #ddd;
    position: absolute;
    left: 0;
    top: 90px;
}

.home-page .location-banner .view-map a {
    font-size: 20px;
    display: block;
    color: #fff;
    text-transform: uppercase;
}

.home-page .location-banner .view-map > div {
    width: 135px;
    margin: auto;
    background-color: #444;
    padding: 10px;
}

.generic-content-page .form {
	border-top: 1px solid #bbb;
	padding-top: 30px;
	margin-top: 30px;
}

.menu-page .selection-menu {
	background-image: url(/Images/fork.png);
	background-size: 130px auto;
	background-repeat: no-repeat;
	border-bottom: 1px solid #afafaf;
	padding-bottom: 30px;
	margin-bottom: 30px;
	position: relative;
}

.menu-page .selection-menu .menu-items {
	margin-right: 340px;
}

.menu-page .selection-menu .menu-images {
	position: absolute;
	right: 0;
	top: 0;
}

.menu-page .selection-menu .menu-images img {
	width: 300px;
	display: block;
	margin-bottom: 30px;
}

.menu-page .selection-menu h2 {
	margin-left: 140px;
}

.menu-page .menu-item {
	position: relative;
	margin-bottom: 30px;
}

.menu-page .menu-item .item-tags {
	position: absolute;
	left: 0;
	top: 0;
	width: 140px;
	text-align: right;
	padding-right: 20px;
}

.menu-page .menu-item .item-tags span {
	display: inline-block;
	width: 34px;
	height: 34px;
	margin: 1px 2px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}

.menu-page .menu-item .item-tags span span {
	display: none;
}

.menu-page .menu-item .item-tags span.vegetarian {
	background-image: url(/Images/tagVegetarian.png);
}

.menu-page .menu-item .item-tags span.spicy {
	background-image: url(/Images/tagSpicy.png);
}

.menu-page .menu-item .item-tags span.gluten-free {
	background-image: url(/Images/tagGlutenFree.png);
}

.menu-page .menu-item .description {
	margin-left: 140px;
}

.menu-page .menu-item .description h4 {
	margin: 0;
	margin-bottom: 5px;
}

.menu-page .menu-item .description p {
	margin: 0;
}

.shop-listings {
	position: relative;
	margin-bottom: 60px;
	overflow: hidden;
}

.cart {
	width: 25%;
	float: left;
	padding-right: 30px;
	font-weight: 400;
}

.cart h2 {
	font-size: 24px;
}

.cart .cart-items {
	border-top: 1px solid #ccc;
	margin-top: 15px;
}

.cart .cart-item {
	position: relative;
	border-bottom: 1px solid #ccc;
	padding: 10px 0;
}

.cart .price {
	font-size: 14px;
	top: 10px;
}

.cart .remove {
	position: absolute;
	left: 0;
	top: 10px;
}

.cart .cart-item-title {
	margin-left: 30px;
	margin-right: 50px;
	display: block;
	font-size: 16px;
}

.cart .cart-summary {
	margin-top: 20px;
	position: relative;
}

.cart .cart-summary .total-cost {
	position: absolute;
	right: 0;
	top: 10px;
	font-size: 30px;
}

.cart .cart-summary .total-cost sup {
	font-size: 18px;
}

.cart .empty-cart {
	margin-top: 10px;
	color: #999;
}

.products {
	width: 75%;
	float: right;
	border-left: 1px solid #ccc;
	padding-top: 30px;
}

.products .product {
	position: relative;
	border-bottom: 1px solid #ccc;
	padding: 0;
	padding-bottom: 20px;
	padding-top: 0;
	margin-bottom: 20px;
	margin-left: 40px;
	min-height: 160px;
}

.products .product img {
	position: absolute;
	left: 0;
	top: 0;
}

.products .product h3 {
	margin: 0;
}

.products .product h3 a {
	color: #444;
}

.products .product h3 a:hover {
	color: #000;
}

.products .product .product-description {
	margin-left: 160px;
	margin-right: 170px;
}

.products .product .per-arrangement, .products .product .postage {
	position: absolute;
	right: 0;
	top: 25px;
	font-size: 13px;
	font-weight: 400;
	color: #999;
}

.products .product .per-arrangement strong, .products .product .postage strong {
	color: #666;
}

.products .product:last-child {
	border-bottom: none;
}

.add-to-cart {
	position: absolute;
	right: 0;
	bottom: 20px;
}

.reoccurring-order-form {
	width: 70%;
	padding-right: 30px;
	clear: both;
}

.product-page {
	/*.reoccurring-order-form {
		border: 1px solid #ccc;
		padding: 30px;
	}*/
}

.product-page .product-description-container {
	margin-left: 25%;
	min-height: 500px;
	border-left: 1px solid #ccc;
	padding-left: 40px;
	padding-top: 40px;
	overflow: hidden;
}

.product-page .product-description-container h1 {
	margin: 0;
	border-bottom: 1px solid #ccc;
	padding-bottom: 20px;
	margin-bottom: 20px;
}

.product-page .product-description-container.no-image .product-description {
	width: 100%;
	padding-right: 0;
}

.product-page .product-description {
	width: 70%;
	float: left;
	padding-right: 30px;
}

.product-page .product-image {
	width: 30%;
	float: right;
}

.product-page .product-image img {
	max-width: 100%;
}

.product-page .add-area-container {
	text-align: center;
}

.product-page .add-area {
	display: inline-block;
	border: 1px solid #ccc;
	background-color: #fff;
	width: 330px;
	margin-top: 40px;
	overflow: auto;
	position: relative;
}

.product-page .add-area .price {
	position: relative;
	display: block;
	width: 50%;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	float: left;
	line-height: 43px;
	text-align: center;
}

.product-page .add-area .add-to-cart {
	position: relative;
	right: auto;
	bottom: auto;
	width: 50%;
	display: block;
	float: left;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	text-align: center;
}

.checkout-page .checkout-cart {
	border: 1px solid #ccc;
	border-bottom: none;
	background-color: #e9e9e9;
}

.checkout-page .checkout-cart article {
	border-bottom: 1px solid #ccc;
	padding: 10px;
	position: relative;
}

.checkout-page .checkout-cart article:hover {
	background-color: #fff;
}

.checkout-page .checkout-cart article strong {
	font-weight: 600;
}

.checkout-page .checkout-cart article .price {
	position: absolute;
	top: 10px;
	right: 100px;
	text-align: right;
}

.checkout-page .checkout-cart article .remove {
	position: absolute;
	top: 10px;
	right: 10px;
}

.checkout-page .checkout-cart article.checkout-summary {
	background-color: #fff;
}

.checkout-page .submit-order {
	margin-left: 150px;
}

.receipt {
	background-color: #fff;
	border: 1px solid #ccc;
	padding: 30px;
	position: relative;
}

.receipt h2 {
	margin-top: 0;
	margin-bottom: 30px;
}

.receipt table {
	border-collapse: collapse;
	font-weight: 400;
	width: 100%;
}

.receipt table tr {
	text-align: left;
	border-top: 1px solid #ccc;
}

.receipt table tr td, .receipt table tr th {
	padding: 10px 0;
}

.receipt table .cost {
	text-align: right;
	font-weight: 600;
}

.receipt table .total {
	font-size: 30px;
	text-align: right;
	font-weight: 500;
}

.receipt .transaction-date {
	position: absolute;
	top: 30px;
	right: 30px;
}

.gallery-page .gallery-show {
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	position: relative;
	width: 100%;
	height: 680px;
	margin-top: 50px;
	margin-bottom: 50px;
}

.gallery-page .close-image-popup {
	display: none;
}

.gallery-page .gallery-show .reel-container {
	position: absolute;
	left: 0;
	top: 0;
	width: 200px;
	bottom: 0;
	overflow: hidden;
}

.gallery-page .gallery-show .reel-container .slide-control {
	position: absolute;
	left: 40px;
	right: 40px;
	background-color: rgba(0, 0, 0, 0.7);
	z-index: 1;
	height: 40px;
	background-position: center;
	background-repeat: no-repeat;
	-moz-transition: all ease-in-out 0.2s;
	-o-transition: all ease-in-out 0.2s;
	-webkit-transition: all ease-in-out 0.2s;
	transition: all ease-in-out 0.2s;
}

.gallery-page .gallery-show .reel-container .slide-control span {
	display: none;
}

.gallery-page .gallery-show .reel-container .slide-control:hover {
	background-color: rgba(0, 0, 0, 0.9);
}

.gallery-page .gallery-show .reel-container .slide-control.up {
	top: 0;
	background-image: url(/Images/upIcon.png);
}

.gallery-page .gallery-show .reel-container .slide-control.down {
	bottom: 0;
	background-image: url(/Images/downIcon.png);
}

.gallery-page .gallery-show .reel-container .reel-slider {
	position: absolute;
	top: 0;
	left: 0;
	-moz-transition: all ease-in-out 0.3s;
	-o-transition: all ease-in-out 0.3s;
	-webkit-transition: all ease-in-out 0.3s;
	transition: all ease-in-out 0.3s;
}

.gallery-page .gallery-show .reel-container .reel-slider .thumb {
	display: block;
	opacity: 0.5;
	margin-bottom: 2px;
	width: 200px;
	height: 136px;
	background-size: 100% auto;
	background-position: center;
	-moz-transition: all ease-in-out 0.2s;
	-o-transition: all ease-in-out 0.2s;
	-webkit-transition: all ease-in-out 0.2s;
	transition: all ease-in-out 0.2s;
	cursor: pointer;
}

.gallery-page .gallery-show .reel-container .reel-slider .thumb.current {
	opacity: 1;
}

.gallery-page .gallery-show .reel-container .reel-slider .thumb:hover {
	opacity: 1;
}

.gallery-page .gallery-show .display-container {
	position: absolute;
	top: 0;
	left: 220px;
	right: 0;
	bottom: 0;
	overflow: hidden;
}

.gallery-page .gallery-show .display-container .nav-control {
	position: absolute;
	bottom: 0;
	width: 100px;
	height: 100px;
	z-index: 1;
	background-color: rgba(0, 0, 0, 0.7);
	background-repeat: no-repeat;
	background-position: center;
	-moz-transition: all ease-in-out 0.2s;
	-o-transition: all ease-in-out 0.2s;
	-webkit-transition: all ease-in-out 0.2s;
	transition: all ease-in-out 0.2s;
}

.gallery-page .gallery-show .display-container .nav-control span {
	display: none;
}

.gallery-page .gallery-show .display-container .nav-control:hover {
	background-color: rgba(0, 0, 0, 0.9);
}

.gallery-page .gallery-show .display-container .previous {
	left: 0;
	background-image: url(/Images/carouselPreviousIcon.png);
}

.gallery-page .gallery-show .display-container .next {
	right: 0;
	background-image: url(/Images/carouselNextIcon.png);
}

.gallery-page .gallery-show .display-container .gallery-images {
	width: 100%;
	height: 100%;
}

.gallery-page .gallery-show .display-container .image {
	width: 100%;
	height: 100%;
	background-size: 100% auto;
	background-repeat: no-repeat;
	background-position: center;
	background-color: #bbb;
	position: absolute;
	top: 0;
	left: 0;
}

.location-page h1 {
	margin-top: 40px;
}

.location-page h2.address-header {
	margin-bottom: 20px;
}

.location-page .view-map {
	position: absolute;
	top: 72px;
	right: 0;
	font-weight: 400;
	font-size: 14px;
}

.location-page .location-content {
	position: relative;
}

.location-page .location-content .contact-details {
	width: 30%;
	position: absolute;
	top: 0;
	right: 0;
	margin-top: 0;
	padding-left: 50px;
}

.location-page .location-content .contact-details .contact-detail {
	margin-bottom: 10px;
}

.location-page .location-content .contact-details .contact-detail.hours {
	line-height: normal;
}

.location-page .location-content .contact-details .contact-detail.hours strong {
	display: block;
	font-weight: 600;
}

.location-page .location-content .contact-details .contact-detail.hours span {
	display: block;
	margin-bottom: 15px;
}

.location-page .google-map {
	background-color: #444;
	height: 330px;
	border: 1px solid #bbb;
}

.location-page .booking {
	min-height: 300px;
}

.booking-complete {
	border: 1px solid #ccc;
	background-color: #fff;
	padding: 30px;
	overflow: hidden;
}

.booking-complete p {
	margin-top: 0;
}

.booking-loading {
	border: 1px solid #ccc;
	background-color: #fff;
	padding: 30px;
	text-align: center;
}

.details-container:after {
	content: '';
	display: table;
	clear: both;
}

.details-container > section {
	width: 50%;
	float: left;
}

@media (max-width: 1300px) {
	.main-header .carousel-items .carousel-item, .main-header .carousel-items .carousel-grey {
		background-size: auto 520px;
	}
}

@media (max-width: 1200px) {
	.home .main-content-areas {
		margin: 0;
	}

	.content {
		padding: 0 30px;
	}

	.main-footer .social-links {
		position: relative;
		margin: auto;
		display: table;
		right: 0;
		margin-top: 50px;
		margin-bottom: 50px;
	}

    
    
    .location-page .home-page .location-banner {
        background-position: top;
        height: 650px;
        font-size: 15px;
    }

        .location-page .home-page .location-banner .open-times-hours-wrap {
            position: absolute;
            left: 0;
            width: 140px;
            top: 155px;
            right: auto;
        }

    .location-page .home-page .open-times .open-times-location {
        font-size: 26px;
        position: absolute;
        top: 30px;
        left: 30px;
    }

    .location-page .home-page .home-page .location-banner {
        height: 510px;
        width: 44.6%;
        margin-left: 40px;
         background-position: 0 0;
    }

    .location-page .home-page .home-page .location-banner-2 {   
         /*background-position: 0 0;*/
    }

    .location-page .home-page .open-times .open-times-address {
        font-size: 18px;
        position: absolute;
        top: 82px;
        left: 30px;
    }

    .location-page .home-page .open-times-hours-wrap {
        position: absolute;
        left: 0;
        width: 140px;
        bottom: 30px;
        right: auto;
        top: auto;
    }

}

/* Tablet Horizontal */
@media (max-width: 1024px) {

	body {
		font-size: 15px;
	}

	h1, .h1 {
		font-size: 26px;
		margin-top: 60px;
	}

	h2, .h2 {
		font-size: 26px;
	}

	.outer-base {
		min-width: 0;
	}

	.base {
		padding: 0;
	}

    .smct-logo {
        display: block;
    }

    

	.main-footer .social-links a:first-child {
		margin-left: 0;
	}

	.main-footer .social-links a {
		opacity: 1;
	}


	.content, .content.with-fork {
		background-image: none;
		min-height: 0;
	}

	.content, .has-side-banner .content {
		padding: 0 40px;
	}

	.content {
		margin-bottom: 30px;
	}

	.side-banner {
		display: none;
	}

	.main-header .header-inner {
		height: 70px;
	}

	.main-header .header-inner .logo {
		position: relative;
		width: 120px;
		height: 60px;
		margin: auto;
		left: 0;
	}

	.main-header .main-nav-container .main-nav {
		display: none;
	}

	.popup-nav {
		display: block;
		background-color: rgba(0, 0, 0, 0.8);
		position: absolute;
		top: 70px;
		left: 0;
		color: #fff;
		width: 100%;
		height: 3000px;
		width: 100%;
		z-index: 100;
		-moz-transition: all ease-in-out 0.3s;
		-o-transition: all ease-in-out 0.3s;
		-webkit-transition: all ease-in-out 0.3s;
		transition: all ease-in-out 0.3s;
		-moz-transform: translate(-100%, 0);
		-ms-transform: translate(-100%, 0);
		-o-transform: translate(-100%, 0);
		-webkit-transform: translate(-100%, 0);
		transform: translate(-100%, 0);
		-webkit-backface-visibility: hidden;
		-moz-backface-visibility: hidden;
		backface-visibility: hidden;
	}

	.show-pop-nav .popup-nav {
		-moz-transform: translate(0, 0);
		-ms-transform: translate(0, 0);
		-o-transform: translate(0, 0);
		-webkit-transform: translate(0, 0);
		transform: translate(0, 0);
	}

	.popup-nav nav {
		display: block;
		border-top: 1px solid rgba(175, 175, 175, 0.5);
	}

	.popup-nav nav:after {
		content: '';
		display: table;
		clear: both;
	}

	.popup-nav nav a {
		display: block;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		float: left;
		width: 50%;
		color: #fff;
		padding: 20px;
		border-bottom: 1px solid rgba(175, 175, 175, 0.5);
		text-transform: uppercase;
	}

	.popup-nav nav a > span {
		display: block;
		height: 100%;
		background-image: url(/Images/navLinkArrow.png);
		background-repeat: no-repeat;
		background-position: right center;
		background-size: auto 14px;
	}

	.toggle-nav-button {
		cursor: pointer;
		display: block;
		background-image: url(/Images/navButton.png);
		width: 40px;
		height: 40px;
		background-size: contain;
		background-repeat: no-repeat;
		background-position: center;
		position: absolute;
		left: 14px;
		top: 14px;
	}

	.show-pop-nav .toggle-nav-button {
		background-image: url(/Images/closeButton.png);
	}

	.toggle-nav-button > span {
		display: none;
	}

	.main-header .carousel-items h2 a, .main-header .carousel-items h2 span {
		font-size: 30px;
	}

	.main-header .carousel-items {
		height: 350px;
	}

	.home-page .main-content-areas {
		margin: 40px;
		text-align: left;
	}

	.home-page .main-content-areas article {
		width: 100%;
		padding: 0;
		border: none;
		position: relative;
		min-height: 110px;
		margin-bottom: 40px;
	}

	.home-page .main-content-areas article:last-child {
		margin-bottom: 0;
	}

	.home-page .main-content-areas article p {
		margin-bottom: 0;
	}

	.home-page .main-content-areas article .summary {
		margin-left: 260px;
	}

	.home-page .main-content-areas article .image {
		width: 220px;
		height: 110px;
		position: absolute;
	}

	.home-page .main-content-areas article .icon {
		display: none;
	}

	.main-footer nav {
		display: none;
	}


    


    .open-times .open-times-location {
        font-size: 26px;
        position: absolute;
        top: 30px;
        left: 30px;
    }

    .home-page .location-banner {
        height: 510px;
        width: 44.6%;
        margin-left: 40px;
         background-position: 0 0;
    }

    .home-page .location-banner-2 {   
         /*background-position: 0 0;*/
    }

    .open-times .open-times-address {
        font-size: 18px;
        position: absolute;
        top: 82px;
        left: 30px;
    }

    .open-times-hours-wrap {
        position: absolute;
        left: 0;
        width: 140px;
        bottom: 30px;
        right: auto;
        top: auto;
    }

	.home-page .location-banner .open-times {
		/*width: 25%;
		padding: 20px;*/
	}

        .home-page .location-banner .view-map {
            width: 100%;
            text-align: center;
            color: #ddd;
            position: absolute;
            left: 0;
            top: 72px;
        }

	.home-page .location-banner .view-map > div {
		/*width: 50%;
		padding: 20px;*/
	}

	.home-page .location-banner .view-map a {
		    font-size: 18px;
	}

	.contact-details {
		display: block;
		margin: auto;
		margin-top: 50px;
		padding-top: 40px;
		border-top: 1px solid #afafaf;
	}

	.home-page .contact-details {
		border-top: none;
		margin-top: 0;
	}

	.contact-details > div {
		display: table;
		margin: auto;
	}




	.horicontal-rule {
		border-top: 1px solid #afafaf;
	}

	.main-footer .smct-logo {
		display: block;
		position: relative;
		margin: auto;
		top: 0;
		margin-top: 50px;
		margin-bottom: 20px;
		background-image: url(/Images/smctLogoCentre.png);
		background-size: 160px auto;
		height: 120px;
	}

	.main-footer .copyright {
		display: block;
		text-align: center;
		margin-bottom: 110px;
	}

	.menu-page .sub-menu {
		display: none;
	}

	.menu-page .selection-menu h2, .menu-page .menu-item .description {
		margin-right: 100px;
		margin-left: 0;
	}

	.menu-page .selection-menu {
		background-image: none;
		margin-bottom: 50px;
		padding-bottom: 0;
		border: none;
	}

	.menu-page .selection-menu .menu-images {
		display: none;
	}

	.menu-page .selection-menu .menu-items {
		padding: 0 40px;
		margin-right: 0;
	}

	.menu-page .menu-item .description h4 {
		font-size: 18px;
	}

	.menu-page .menu-item .description p {
		font-size: 18px;
	}

	.menu-page .menu-item .item-tags {
		position: relative;
		top: auto;
		left: auto;
		text-align: left;
		width: auto;
		padding: 0;
		margin-top: 10px;
	}

	.menu-page .selection-menu h2 {
		margin-right: 0;
	}

	.cart {
		position: fixed;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 10;
		width: 100%;
		background-color: #fff;
		padding: 20px 40px;
	}

	.empty-cart .cart {
		display: none;
	}

	.empty-cart .main-footer .copyright {
		margin-bottom: 50px;
	}

	.cart h2 {
		margin: 0;
	}

	.cart .empty-cart {
		margin: 0;
		display: table-cell;
		position: absolute;
		right: 40px;
		top: 0;
		bottom: 0;
		margin-top: 26px;
	}

	.cart .button {
	}

	.cart .cart-summary {
		position: absolute;
		right: 40px;
		top: -10px;
	}

	.cart .cart-summary .total-cost {
		right: 145px;
		top: 10px;
		font-weight: 600;
		font-size: 24px;
	}

	.cart .cart-summary .total-cost sup {
		font-size: 16px;
	}

	.cart .cart-item {
		display: none;
	}

	.products {
		width: auto;
		float: none;
		border-left: none;
	}

	.products .product {
		margin-left: 0;
		min-height: 170px;
		padding: 0 40px;
	}

	/*.price, .products .product .per-arrangement, .products .product .postage {
		right: 40px;
	}*/
	.price {
		font-size: 18px;
	}

	.products .product .price,
	.products .product .per-arrangement,
	.products .product .postage {
		right: 40px;
	}

	.menu-page .price {
		right: 0;
	}

	.add-to-cart {
		right: 40px;
		bottom: 30px;
	}

	.products .product img {
		left: 40px;
	}

	.page-head h1 {
		padding: 20px 40px;
	}

	.product-page .product-description-container {
		border-left: none;
		margin-left: 0;
		padding-right: 40px;
		min-height: 0;
	}

	.reoccurring-order-form {
		padding-right: 0;
		width: 100%;
	}

	.product-page .add-area-container {
		text-align: right;
	}

	.product-page .add-area {
		margin-top: 0;
	}

	/* Gallery */
	.gallery-page .gallery-show {
		height: auto;
	}

	.gallery-page .gallery-show .display-container {
		position: fixed;
		left: 0;
		right: 0;
		top: 0;
		bottom: 0;
		background-color: rgba(0,0,0,0.8);
		z-index: 200;
		display: none;
	}

	.gallery-page .gallery-show.show-popup .display-container {
		display: block;
	}

	.gallery-page .close-image-popup {
		display: block;
		background-image: url(/Images/closeButton.png);
		background-repeat: no-repeat;
		height: 41px;
		width: 41px;
		position: absolute;
		right: 30px;
		top: 90px;
		margin-bottom: 20px;
		background-size: auto 41px;
		background-position: right center;
	}

	.gallery-page .close-image-popup > span {
		display: none;
	}

	.gallery-page .gallery-show .display-container .display-container-inner {
		position: relative;
		height: 400px;
		margin: 30px;
		margin-top: 150px;
		box-shadow: rgba(0,0,0,0.5) 0 0 50px;
	}

	.gallery-page .gallery-show .display-container .nav-control {
		width: 70px;
		height: 70px;
		background-size: auto 22px;
	}

	.gallery-page .gallery-show .display-container .gallery-images {
		position: relative;
	}

	.gallery-page .gallery-show .display-container .image {
		background-size: cover;
	}

	.gallery-page .gallery-show .reel-container {
		width: 100%;
		position: relative;
	}

	.gallery-page .gallery-show .reel-container .reel-slider {
		width: 100%;
		padding-right: 20px;
		position: relative;
	}

	.gallery-page .gallery-show .reel-container .reel-slider:after {
		content: '';
		display: table;
		clear: both;
	}

	.gallery-page .gallery-show .reel-container .reel-slider .thumb {
		width: 100%;
		margin-bottom: 0;
		opacity: 1;
		background-size: cover;
	}

	.gallery-page .gallery-show .reel-container .reel-slider .thumb-container {
		width: 33.333%;
		float: left;
		padding: 20px;
		padding-right: 0;
		padding-bottom: 0;
	}

	.gallery-page .gallery-show .reel-container .slide-control {
		display: none;
	}

	.location-page .view-map {
		position: relative;
		top: auto;
		right: auto;
		display: block;
		text-align: center;
		margin-top: 20px;
	}

	.location-page .location-content .contact-details {
		right: 40px;
		padding-left: 20px;
		border-top: none;
	}

	.location-page .location-content .contact-details .contact-detail {
		background-image: none;
	}
}

@media (max-width: 968px) {
    
    .contact-details .contact-detail.phone {
        font-size: 15px;
    }

    span.contact-detail.phone span {
        font-size: 10px;
        margin-bottom: -12px;
    }

    .contact-details .contact-detail.email {
        margin-right: 0;
        font-size: 15px;
    }
    .contact-details .contact-detail.book-online {
        font-size: 15px;
    }
    .contact-details .contact-detail {
        margin-right: 30px;
    }
}

/* Tablet Vertical */
@media (max-width: 768px) {


	.details-container > section .form.horizontal-labels .form-row {
		padding-right: 20px;
	}

	.details-container > section:last-child .form.horizontal-labels .form-row {
		padding-right: 0;
		padding-left: 20px;
	}

	.details-container > section .form.horizontal-labels .label-container {
		width: 100%;
		float: none;
	}

	.details-container > section .form.horizontal-labels .input-container {
		float: none;
		width: 100%;
	}

	.checkout-page .submit-order {
		margin-left: 20px;
	}

    
    
    .location-page .home-page .location-banner {
        background-position: top;
        height: 700px;
    }


}

/* Mobile Horizontal */
@media (max-width: 680px) {
	.contact-details {
		display: block;
		margin: 0;
        padding: 35px 5px;
		/*padding: 35px 20px;*/
		border-bottom: 1px solid #afafaf;
		border-top: 1px solid #afafaf;
	}

	.contact-details > div {
		display: block;
	}

	.home-page .contact-details {
		border-top: none;
	}

	.contact-details .contact-detail {
		display: block;
		margin-bottom: 20px;
		font-size: 18px;
	}

	.contact-details .contact-detail.phone {
		font-size: 24px;
	    float: none;
	}
    span.contact-detail.phone span {
        font-size: 12px;
        margin-bottom: -8px;
    }

	.contact-details .contact-detail.book-online {
	    float: none;
	    font-size: 24px;
	}

	.contact-details .contact-detail.email {
	    float: none;
	    font-size: 24px;
	}

	.contact-details .contact-detail:last-child {
		margin-bottom: 0;
	}

	.main-footer .social-links {
		margin: 20px auto;
	}

	.main-footer .smct-logo {
		margin: 30px auto;
	}

	.content, .has-side-banner .content {
		padding: 0 20px;
		margin-bottom: 20px;
	}

	.main-header .carousel-items h2 a, .main-header .carousel-items h2 span {
		font-size: 20px;
	}

	.home-page .main-content-areas {
		margin: 20px;
	}

	.home-page .main-content-areas article .image {
		position: relative;
		width: 100%;
		height: 145px;
		margin-bottom: 20px;
		background-size: cover;
	}

	.home-page .main-content-areas article .summary {
		margin-left: 0;
		text-align: center;
	}

    .home-page .location-banner {
        height: 510px;
        width: 100%;
        margin-left: 0;
        background-position: 0 0;
        background-size: cover;
        overflow: hidden;
    }

    .home-page .location-banner-2 {
        margin-left: 0;
    }
    section.location-banner.location-banner-2 {
        margin-left: 0;
    }


        .home-page .location-banner .view-map {
            margin: 0;
            padding: 20px;
        }

            .home-page .location-banner .view-map > div {
                /*width: auto;
                margin: 55px auto;*/
            }
            .home-page .location-banner .view-map a {
                font-size: 18px;
            }

    .open-times .open-times-location {
        font-size: 26px;
        position: absolute;
        top: 30px;
        left: 0;
        width: 100%;
        text-align: center;
    }
    .location-page .home-page .open-times .open-times-location {
        top: 30px;
        left: 0;
        width: 100%;
    }

    .open-times .open-times-address {
        font-size: 18px;
        position: absolute;
        top: 82px;
        left: 0;
        text-align: center;
        width: 100%;
    }
    .location-page .home-page .open-times .open-times-address {
        top: 82px;
        left: 0;
        width: 100%;
    }

    .open-times-hours-wrap {
        position: absolute;
        left: 50%;
        width: 112px;
        bottom: 22px;
        right: auto;
        top: auto;
        margin-left: -56px;
        text-align: center;
    }
        .open-times-hours-wrap .open-times-hours {
            float: right;
            height: auto;
            padding: 0;
            margin: 0;
            text-align: center;
        }

    .home-page .location-banner .open-times {
        width: 100%;
        top: auto;
        text-align: center;
        height: 300px;
        bottom: 0;
    }
    
	.home-page .location-banner .open-times > div:last-child p {
		margin-bottom: 8px;
	}




    
    
    .location-page .home-page .location-banner {
        background-position: top;
         height: 760px;
            width: 100%;
    }
        .location-page .home-page .location-banner .open-times {
            width: 100%;
            top: auto;
            text-align: center;
            height: 545px;
            bottom: 0;
        }
        .location-page .home-page .location-banner .open-times-hours-wrap {
            position: absolute;
            left: 50%;
            width: 112px;
            top: 155px;
            right: auto;
        }
    .location-page .home-page .contact-details {
        border: none;
        width: 220px;
        bottom: 0;
    }

    .location-page .home-page .location-banner-2 {
        height: 760px;
        margin-left: 0;
    }

        .location-page .home-page .location-banner-2 .open-times {
            height: 545px;
        }




	.home-page .main-content-areas article .icon {
		display: block;
		margin-top: 0;
	}

	.menu-page .selection-menu h2, .menu-page .menu-item .description {
		margin-left: 0;
	}

	.menu-page .selection-menu .menu-items {
		padding: 0 20px;
	}

	.menu-page .menu-item .description {
		margin-right: 0;
	}

	.form .form-row.half {
		width: 100%;
		float: none;
	}

	.location-page .location-content .contact-details {
		position: relative;
		right: auto;
		width: 100%;
		padding: 0;
		margin-bottom: 30px;
		padding-bottom: 0;
		border: none;
	}

	.location-page .location-content .contact-details .contact-detail {
		padding-left: 0;
	}

	.location-page .booking {
		width: 100%;
	}

	.button {
		display: block;
	}

	.sub-menu ul li {
		display: block;
		border-bottom: 1px solid #ddd;
	}

	.sub-menu ul li a {
		background-image: none;
		padding: 15px 0;
	}

	.sub-menu .selected .arrow {
		display: none;
	}

	.sub-menu .selected {
		background-color: #fff;
		color: #444;
	}

	.sub-menu .selected a {
		color: #444;
	}

	.shop-page h1 {
		display: none;
	}

	.products .product {
		padding: 0 20px;
	}

	.products .product img {
		position: relative;
		margin: auto;
		display: block;
		left: auto;
	}

	.products .product .product-description {
		margin: 20px 0;
		text-align: center;
	}

	.products .product .price,
	.products .product .per-arrangement,
	.products .product .postage {
		display: block;
		position: relative;
		top: auto;
		right: auto;
		padding-top: 20px;
	}

	.products .product .price-order-container {
		display: block;
		background-color: #fff;
		border: 1px solid #ccc;
	}

	.products .product .price-order-container:after {
		content: '';
		display: table;
		clear: both;
	}

	.products .product .price-order-container .price,
	.products .product .price-order-container .add-to-cart {
		position: relative;
		display: block;
		width: 50%;
		float: left;
		left: auto;
		right: auto;
		top: auto;
		bottom: auto;
		padding: 0;
		height: 50px;
		line-height: 48px;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}

	.products .product .price-order-container .price {
		font-size: 25px;
		line-height: 42px;
	}

	.product-page .product-description-container {
		padding: 20px;
	}

	.product-page .product-description-container h1 {
		border-bottom: none;
		padding-bottom: 0;
		text-align: center;
	}

	.product-page .product-description {
		padding-right: 0;
		width: 100%;
		border-bottom: 1px solid #afafaf;
		padding-bottom: 20px;
		margin-bottom: 20px;
		text-align: center;
	}

	.product-page .product-image {
		width: auto;
		float: none;
		margin: auto;
	}

	.product-page .product-image img {
		display: block;
		margin: auto;
		margin-bottom: 20px;
	}

	.product-page .add-area {
		width: 100%;
	}

	.form label {
		font-size: 15px;
	}

	.product-page .add-area .add-to-cart {
		padding: 20px 0;
	}

	.product-page .add-area .price {
		font-size: 25px;
		line-height: 50px;
	}

	.cart {
		padding: 15px 20px;
	}

	.cart .cart-summary {
		right: 20px;
	}

	.cart h2 {
		font-size: 15px;
		width: 50px;
	}

	.details-container > section {
		width: 100%;
		float: none;
	}

	.details-container > section .form.horizontal-labels .form-row,
	.details-container > section:last-child .form.horizontal-labels .form-row {
		padding: 0;
	}


	.checkout-page .submit-order {
		margin: 0;
		margin-bottom: 40px;
	}

	.checkout-page .checkout-cart {
		margin: 0 -20px;
		border-left: none;
		border-right: none;
	}

	.checkout-page .checkout-cart article {
		padding: 10px 20px;
	}

	.checkout-page .checkout-cart article .price {
		right: 50px;
	}

	.checkout-page .checkout-cart article .remove {
		right: 20px;
	}

	.checkout-page .checkout-cart article strong {
		display: block;
		margin-right: 100px;
	}

	.main-header .carousel-nav {
		display: none;
	}
}

/* Mobile Horizontal (Low res iphone 5) */
@media (max-width: 480px) {
}

/* Mobile Vertical */
@media (max-width: 460px) {
}

@-moz-keyframes fadeIn {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}

@-webkit-keyframes fadeIn {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}

@keyframes fadeIn {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}
