/* --------------------------------------------------- 
MEDIA_QUERIES.CSS contains responsive design styles to
effect the design layout based on screen resolution
--------------------------------------------------- */



/* Small Screens / Tablets */
@media screen and (max-width: 1150px) {
	
	html {
	-webkit-text-size-adjust:none;
	}
		
		#none {
		-moz-transition:all .3s ease-out;
		-webkit-transition:all .3s ease-out;
		transition:all .3s ease-out;
		box-sizing:border-box;
		-webkit-box-sizing:border-box;
		-moz-box-sizing:border-box;
		-ms-box-sizing:border-box;
		}
	
		img {
		max-width: 100%;
		height: auto;
		width: auto\9; /* ie8 */
		}
		
		embed,
		object,
		iframe,
		.map-holder {
		max-width:100%;
		width:100%;
		}
		
		
	.img-left,
	.img-right {
	max-width:50%;
	}
	
	
	/* Hide/show element that should only show on mobile */
	.hide-on-mobile {display:none;}
	.show-on-mobile {display:inline;}
		
	
	#container2,
	#container-header,
	#container-navigation,
	#container-flash,
	#container-bread,
	#container-intro,
	#container-main,
	#container-main-top,
	#container-main-bottom,
	#container-footer,
	#container-base {
	width:100%;
	}
	
	
	#container-header {
	position:relative;
	}
		.home #container-header {position:absolute;}
	
	#container-flash {
	min-height:0px;
	}
	
	
	#container1,
	.wrap {
	width:100%;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	-ms-box-sizing:border-box;
	}
		.wrap {
		padding:0 50px;	
		}
	
		#header {
		height:auto;
		text-align:center;
		}
		
			#header  #logo {
			float:none;
			}
		
			#top-nav {display:none;}

			#header #search {}
			
				#header #search #search-box-input {
				width:150px;
				}
	
	
	#navigation,
	#breadcrumb,
	.auth-details,
	#main,
	#footer,
	#base {
	padding-left:0px;
	padding-right:0px;
	}
	

	#navigation {
	clear:both;
	float:none;
	display:block;
	height:auto;
	padding-top:10px;
	}
	
		#navigation ul {
		float:none;
		display:inline-block;
		margin-left:auto;
		margin-right:auto;	
		}
	
	
			#site-messages .wrap {padding:0 0px;}
						
			#site-messages .error-message,
			#site-messages .alert-message,
			#site-messages .success-message {
			padding:15px 20px;
			}
	
		
	
	
	
	
	#slidebox {display:none;}
	

	#desktop-link {display:inline;}
	
	
	.main {
	padding:40px 0;
	}
	
	.container-main-top + .container-main .main {
	padding:30px 0 40px 0;	
	}
	
	.main-top {
    padding:40px 0 0 0;
	}
	
	
	
	.product-item {
	width:32%;
	margin-right:2%;
	}
			
		.products-holder div:nth-child(4n+4) {margin-right:2%;}
		.products-holder div:nth-child(4n+5) {clear:none;}
		.products-holder div:nth-child(3n+3) {margin-right:0%;}
		.products-holder div:nth-child(3n+4) {clear:both;}
	
}



@media screen and (max-width: 1024px) {
	
	
	h1 {
	font-size:36px;
	line-height:1.2;
	padding:20px 0 20px 0;
	}
	
	h2 {
    font-size:32px;
	}
	
	h3 {
	font-size:26px;
	}
	
	
	.container-main-bottom.background-image {
	background-position:center top;
	background-repeat:no-repeat;
	background-size:cover;
	background-attachment:inherit;
	position:relative;
	}
	
		.container-main-bottom.background-image .main-bottom {
		color:#ffffff;
		text-align:center;
		padding:60px 0;
		}
	
	
	#navigation a:hover::before {
	left:50%;
	width:0;
	}
	
}







@media screen and (max-width: 1000px) {
	
	
	#footer .footer-left {
	clear:left;
	float:left;
	width:40%;
	text-align:left;
	padding-bottom:30px;
	}
	
	#footer .footer-left-2 {
	clear:left;
	float:left;
	width:40%;
	text-align:left;
	}
	
	#footer .footer-right {
	clear:right;
	float:right;
	width:40%;
	text-align:right;
	padding-bottom:30px;
	}
	
	#footer .footer-right-2 {
	clear:right;
	float:right;
	width:40%;
	text-align:right;
	}
	
}



	    



@media screen and (max-width: 880px) {
	
	.flex-caption {}
	
		.flex-caption h2 {
		font-size:75px;
		}
		
		.flex-caption h3 {
		font-size:26px;
		}
	
}



/* Small Tablets */
@media screen and (max-width: 750px) {
	
	
	#header {
	padding-bottom:20px;
	position:relative;
	}
	
		#header #logo {
		float:left;
		}
	
		#top-nav {
		clear:right;
		}

		#header #search {}
	
	
	
	#mobile-navigation {
		
	}
	
	
	
	#navigation {
	display:none;
	height:auto;
	font-size:18px;
	line-height:20px;
	color:#ffffff;
	padding:14px 20px 4px 20px;
	}
		#navigation ul {
		margin:0 0 0 0;
		padding:0 0 0 0;
		}
			#navigation ul li {
			float:none;
			width:100%;
			box-sizing:border-box;
			-webkit-box-sizing:border-box;
			-moz-box-sizing:border-box;
			-ms-box-sizing:border-box;
			display:block;
			line-height:18px;
			}
			
			#navigation ul li.mobile-item {
			display:block;
			}
	
		#navigation a {
		float:none;
		display:block;
		height:auto;
		line-height:28px;
		text-align:left;
		color:#ffffff;
		padding:0 10px;
		margin-bottom:6px;
		}
			#navigation a strong,
			#navigation a b {
			display:block;
			height:auto;
			line-height:28px;
			}	
			
		#navigation .nav-div {display:none;}
		
		#navigation .sub-nav {
		position:inherit !important;
		float:none;
		display:block;
		width:100%;
		top:0px !important;
		left:0px !important;
		font-size:18px;
		line-height:20px;
		margin:0 0 0 0;
		padding:0 0 0 0;
		}
			#navigation .sub-nav li {
			float:none;
			width:100%;
			display:block;
			margin:0 0 0 0;
			padding:0 0 0 0;
			box-sizing:border-box;
			-webkit-box-sizing:border-box;
			-moz-box-sizing:border-box;
			-ms-box-sizing:border-box;
			padding-left:20px;
			line-height:18px;
			}
				#navigation .sub-nav a {
				float:none;
				display:block;
				width:100%;
				line-height:28px;
				margin:0 0 0 0;
				padding:0 0 0 0;
				height:auto;
				background:none;
				border:none;
				margin-bottom:6px;
				}
					#navigation .sub-nav a:hover {
					float:none;
					display:block;
					margin:0 0 0 0;
					padding:0 0 0 0;
					background:none;
					border:none;
					margin-bottom:6px;
					}
					
					
	#mobile-menu a {
	display:inline-block;
	}
		
	
	
	.phone-hide {display:none;}
	.phone-show {display:inherit;}
		
	
	
	.main {}	
		
		.main .thirds {}
			.main .main-third {
			float:none;
			width:100%;
			margin-right:0;
			margin-top:10px;
			margin-bottom:18px;	
			}
			
		
		.three-content,
		.three-left,
		.three-right {
		float:none;
		clear:both;
		width:100% !important;	
		margin-right:0 !important;
		}
	
			
			
		#footer .footer-image {
		margin-left:-100px;
		width:200px;
		height:200px;
		top:0px;
		bottom:auto;
		-ms-transform:rotate(180deg);
		-webkit-transform:rotate(180deg);
		transform:rotate(180deg);
		}

	

	
	/* Gallery */
	.gallery-holder .gallery-item {
	width:30%;
	margin-right:5%;
	}
	
	.gallery-holder .gallery-item-textover {
	width:30%;
	margin-right:5%;
	}
	
		.gallery-holder div:nth-child(3n+3) {margin-right:0%;}
		.gallery-holder div:nth-child(3n+4) {clear:left;}

	.gallery-cat-holder .gallery-item {
	width:45%;
	margin-right:10%;
	}
	
		.gallery-cat-holder div:nth-child(2n+2) {margin-right:0%;}
		.gallery-cat-holder div:nth-child(2n+3) {clear:left;}
		
	.gallery-cat-holder .gallery-item-textover {
	width:45%;
	margin-right:10%;
	}
	
	
	/* Before and After */
	.beforeafter-holder .beforeafter-item {
	width:45%;
	margin-right:10%;
	}
		.beforeafter-holder div:nth-child(3n+3) {margin-right:10%;}
		.beforeafter-holder div:nth-child(3n+4) {clear:none;}
		.beforeafter-holder div:nth-child(2n+2) {margin-right:0%;}
		.beforeafter-holder div:nth-child(2n+3) {clear:left;}
		
	
	/* Videos */
	.video-holder .video-item {
	width:45%;
	margin-right:10%;
	}
		.video-holder div:nth-child(3n+3) {margin-right:10%;}
		.video-holder div:nth-child(3n+4) {clear:none;}
		.video-holder div:nth-child(2n+2) {margin-right:0%;}
		.video-holder div:nth-child(2n+3) {clear:left;}
		
		
	.subscription-plans .subscription-plan {
	width:47%;
	margin-right:6%;
	}
		.subscription-plans  div.subscription-plan:nth-child(3n+3) {margin-right:6%;}
		.subscription-plans  div.subscription-plan:nth-child(3n+4) {clear:none;}
		.subscription-plans  div.subscription-plan:nth-child(2n+2) {margin-right:0%;}
		.subscription-plans  div.subscription-plan:nth-child(2n+3) {clear:left;}
		
	
	.pricelist {}
	
		.pricelist-header {}
			.pricelist-header .pricelist-price,
			.pricelist-header .pricelist-inclusive {display:none;}
	
		.pricelist-product {
		float:left;
		width:75%;
		margin-right:2%;
		padding-bottom:6px;
		}
		
		.pricelist-price {
		clear:left;
		float:left;
		width:auto;
		display:inline-block;
		margin-right:2%;
		}
		
		.pricelist-inclusive {
		float:left;
		width:auto;
		display:inline-block;
		margin-right:2%;
		}
		
		.pricelist-qty {
		float:right;
		width:23%;
		}
		
	
	.product-item {
	width:47%;
	margin-right:6%;
	}
			
		.products-holder div:nth-child(3n+3) {margin-right:6%;}
		.products-holder div:nth-child(3n+4) {clear:none;}
		.products-holder div:nth-child(2n+2) {margin-right:0%;}
		.products-holder div:nth-child(2n+3) {clear:both;}
		
		
	form {}
	
		.form-item {}

		.form-item .label,
		.form-item .label2 {
		margin-bottom:2px;	
		}

		.form-item .label,
		.form-item .label2,
		.form-item .input,	
		.form-item .select,
		.form-item .checkbox,
		.form-item .radio,
		.form-item .textarea,
		.form-item .label-padding,
		.form-item .subbut,
		.form-item .g-recaptcha, 
		#recaptcha_image {
		width:100% !important;
		padding-left:0px;
		margin-left:0%;
		}
		
		.form-item .g-recaptcha > div > div {max-width:100%;overflow:hidden;}
		
		.recaptcha_input .input {padding-right:0px;}
		
		.recaptcha_options li a {top:0px;}
		
		
				
	.shopping-cart-list {}

		.shopping-cart-list .shopping-cart-list-header {display:none;}
		
		.shopping-cart-list .shopping-cart-list-items {
		padding:4px 10px;
		border:solid #f0e8e6 1px;
		border-radius:3px;
		margin-bottom:15px;
		position:relative;
		}
		
			.shopping-cart-list .scl-image {
			float:right;
			position:absolute;
			text-align:center;
			right:5px;
			top:8px;
			width:20%;
			max-height:60px;
			}
				.shopping-cart-list .scl-image img {
				max-height:60px;
				}
			
			.shopping-cart-list .scl-products {
			width:100%;
			min-height:60px;
			padding-right:0%;
			}
				.shopping-cart-list .scl-products-title {
				float:left;
				width:68%;
				}
				
				.shopping-cart-list .scl-products-additional {
				clear:both;
				width:100%;
				}
				
				.shopping-cart-list .scl-products  .cart-msg-box,
				.shopping-cart-list .scl-products .cart-msg-type,
				.shopping-cart-list .scl-products .cart-msg-messages {
				width:98%;
				}
				
				.msg-small {
				font-size:13px;
				line-height:17px;
				}
			
			
			.shopping-cart-list .scl-quantity {
			clear:both;
			width:59%;
			text-align:left;
			padding-right:0px;
			margin-top:8px;
			padding-top:8px;
			border-top:solid #f0e8e6 1px;
			}
				.shopping-cart-list .scl-quantity .scl-quantity-text {
				float:left;
				display:inline-block;
				padding-right:3%;
				line-height:26px;
				font-size:14px;
				}
			
				.shopping-cart-list .scl-quantity input {
				float:left;
				font-size:15px;
				display:inline-block;
				margin-right:12%;
				}
				
				.shopping-cart-list .remove-link {
				float:left;
				display:inline-block;
				text-align:left;
				line-height:26px;
				font-size:12px;
				}
			
			.shopping-cart-list .scl-price {
			width:40%;
			font-size:16px;
			font-weight:600;
			text-align:right;
			padding-right:1%;
			padding-top:5px;
			margin-top:8px;
			padding-top:8px;
			border-top:solid #f0e8e6 1px;
			}
			
			
			
			.shopping-cart-totals .shopping-cart-total-item .totals-space,
			.shopping-cart-totals .shopping-cart-total-final .totals-space,
			#sc-subtotals .totals-space-base {display:none;}
			
			
			.shopping-cart-totals .shopping-cart-total-item,
			.shopping-cart-totals .shopping-cart-total-final {
			display:block;
			}
				
				.shopping-cart-totals .shopping-cart-total-item .totals-text,
				.shopping-cart-totals .shopping-cart-total-final .totals-text {
				float:left;
				width:66%;
				text-align:left;
				padding-right:0;
				padding-left:4%;
				margin:0 0 0 0;
				}
				
				.shopping-cart-totals .shopping-cart-total-item .totals-value,
				.shopping-cart-totals .shopping-cart-total-final .totals-value {
				float:left;
				width:26%;
				font-size:15px;
				padding-right:4%;
				margin:0 0 0 0;
				}
		
		
	.address-selector {}
		.address-selector li {
		width:48%;
		}
		
			.address-selector .address-selector-button {}
			.address-selector .address-selector-address {}
			
			
	.cart-checkradio-holder {}
		.cart-checkradio-holder .checkradio {width:50%;}
			
	
	.payment-holder-table {}
	.payment-radio-holder {width:10%;}
		.payment-holder {width:90%;}
		
		
		.document-grid-holder .document-grid-item {width:49%; margin-right:2%;}		
			.document-grid-holder .document-grid-item:nth-child(3n+3) {margin-right:2%;}
			.document-grid-holder .document-grid-item:nth-child(3n+4) {clear:none;}
			.document-grid-holder .document-grid-item:nth-child(2n+2) {margin-right:0;}
			.document-grid-holder .document-grid-item:nth-child(2n+3) {clear:both;}
			
			

			#contactform .form-item {
			clear:both;
			float:left;
			width:100%;
			max-width:500px;
			}
				#contactform .form-item:nth-child(2n+2) {
				float:left;
				}
				
				#contactform .edit51423ed0ea959-item {
				clear:both;
				float:left;
				width:100%;
				max-width:500px;
				}
				
				#contactform .edit51423ed0ea959-item + .form-item {
				clear:both;
				float:left;
				}
				
				#contactform .form-item:last-child {
				clear:both;
				float:left;
				}
	
}



/* Phones */
@media screen and (max-width: 580px) {

	html {
	-webkit-text-size-adjust:none;
	}
		
		img {
		max-width: 100%;
		height: auto;
		width: auto\9; /* ie8 */
		}
		
		embed,
		object,
		iframe,
		.map-holder {
		max-width:100%;
		width:100%;
		height:auto;
		}
		
		
	ul {}
	ul li {
	line-height:26px;
	padding-bottom:8px;
	background-position:5px 9px;
	}
		
	
	#container1 {
	width:100%;
	}
	
	#container2 {
	width:100%;
	}
	
		.wrap {
		padding:0 25px;	
		}
		
	
	#container-header,
	.home #container-header {
	position:relative;
	}
	
		.home #container-header {
		/*border-bottom:none;
		background-color:#544433;*/
		border-bottom: solid #ebe7e3 1px;
		}
		
	.home #container-flash {display:none;}
	
	
	#container-header .wrap {
	padding:0 25px 0 15px;	
	}
	
	#header {
	height:auto;
	position:relative;
	}
		#header #logo {
		max-width:60%;
		-webkit-box-sizing:border-box;
		-moz-box-sizing:border-box;
		-ms-box-sizing:border-box;
		box-sizing:border-box;
		display:inline-block;
		}
			#header #logo img {
			width:100%;
			}
			
			#top-nav,
			#header #search {display:none;}

		#container-header #mobile-link {display:block;}
			
			#container-header #mobile-link a {
			clear:both;
			float:none;
			width:100%;
			display:inline-block;
			height:50px;
			line-height:30px;
			padding:0 12px;
			padding-left:40px;
			margin-top:10px;
			color:#fff;
			background-image:url(../../images/phone_icon_white.png);
			background-position:5px center;
			background-size:contain;
			background-repeat:no-repeat;
			background-color:#b40337;
			border: solid 10px #b40337;
			-webkit-box-sizing:border-box;
			-moz-box-sizing:border-box;
			-ms-box-sizing:border-box;
			box-sizing:border-box;
			font-size:20px;
			}
			
				#container-header #mobile-link h4 {display:none;}
					#container-header #mobile-link:hover a {color:#fff;background-color:#544433; border-color:#544433;}
		
	
	#mobile-menu a {
	position:absolute;
	top:50%;
	right:0;
	padding:10px 15px;
	margin-top:-22px;
	float:none;
	}
	
		#mobile-menu a .icon-menu {
		margin-right:0px;
		}
		
			#mobile-menu a .mobile-menu-hide {display:none;}
	
		
		
	
	.container-main-top + .container-main .main {
	padding:25px 0 25px 0;	
	}
	
	.main-top {
    padding:25px 0 0 0;
	}
		
	.main {
	width:100%;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	-ms-box-sizing:border-box;
	box-sizing:border-box;
	padding:25px 0;
	}
		
		.main .main-full,
		.main .main-content,
		.main .full-left,
		.main .full-right,
		.main .main-left,
		.main .main-right {
		float:none;
		display:block;
		width:100%;
		margin:0 0 0 0;
		box-sizing:border-box;
		-webkit-box-sizing:border-box;
		-moz-box-sizing:border-box;
		-ms-box-sizing:border-box;
		}
			.main .main-content {
			margin-bottom:20px;
			}
		
		.main .img-left,
		.main .img-right,
		.main .img-center {
		float:none;
		display:block;
		width:100%;
		max-width:none;
		padding:10px 0;
		margin:0 0 0 0;
		box-sizing:border-box;
		-webkit-box-sizing:border-box;
		-moz-box-sizing:border-box;
		-ms-box-sizing:border-box;
		}
		
		
		
	.main,
	.main .main-right p,
	.main .main-left p,
	.main .main-right .side-holder,
	.main .main-left .side-holder {font-size:16px;line-height:24px;}
	
	.main h1 {font-size:38px;line-height:38px;}
	.main h2 {font-size:32px;line-height:32px;}
	.main h3 {font-size:26px;line-height:24px;}
	.main h4 {font-size:22px;line-height:24px;}
	.main .main-right h5,
	.main .main-left h5 {font-size:18px;line-height:24px;}
	.main .main-right h6,
	.main .main-left h6 {font-size:18px;line-height:24px;}
	
	.small {font-size:15px;line-height:23px;}
	.large {font-size:17px;line-height:25px;}
		
		
	
	#footer .footer-image {
	margin-left:0px;
	width:160px;
	height:160px;
	left:auto;
	right:25px;
	top:auto;
	bottom:0px;
	-ms-transform:rotate(0deg);
	-webkit-transform:rotate(0deg);
	transform:rotate(0deg);
	}
	
	
	#footer .footer-left,
	#footer .footer-left-2,
	#footer .footer-right,
	#footer .footer-right-2 {
	float:none;
	display:block;
	width:100%;
	text-align:left;
	padding-bottom:18px;
	}
	
	
	#desktop-link {display:inline;}
			
	
	
	/* Site Map */
	.sitemap-holder {
	width:100%;	
	}
	
	
	.subscription-plans .subscription-plan {
	width:100%;
	margin-right:0%;
	}
		.subscription-plans  div.subscription-plan:nth-child(2n+2) {margin-right:0%;}
		.subscription-plans  div.subscription-plan:nth-child(2n+3) {clear:none;}
		
		
	.subscription-table {}
	
		.subscription-table .subscription-left,
		.subscription-table .subscription-middle,
		.subscription-table .full-subscription-middle,
		.subscription-table .subscription-right {
		float:none;
		width:100%;
		text-align:left;
		padding-left:10px;
		padding-right:10px;
		box-sizing:border-box;
		-webkit-box-sizing:border-box;
		-moz-box-sizing:border-box;
		-ms-box-sizing:border-box;
		border:solid #f1f1f1 1px;
		}
		
		.subscription-table .subscription-left {
		padding-top:8px;
		border-bottom:none;	
		}
		
		.subscription-table .subscription-middle {
		border-top:none;
		border-bottom:none;
		}
		
		.subscription-table .full-subscription-middle {
		padding-bottom:8px;
		border-top:none;
		}
		
		.subscription-table .subscription-right {
		padding-bottom:8px;
		border-top:none;
		}
	
	
	/* Gallery */	
	.gallery-holder .gallery-item,
	.gallery-cat-holder .gallery-item,
	.gallery-cat-holder .gallery-item-textover,
	.gallery-holder .gallery-item-textover {
	width:100%;
	margin-right:0%;
	}
	
	
	/* Before and After */	
	.beforeafter-holder .beforeafter-item,
	.beforeafter-details .before-image,
	.beforeafter-details .after-image {
	width:100%;
	margin-right:0%;
	}

		.beforeafter-details .before-image {margin-bottom:12%;}
	
	
	/* Video */	
	.video-holder .video-item {
	width:100%;
	margin-right:0%;
	}
	
	
	.product-item {
	width:100%;
	margin-right:0%;
	}
			
		.products-holder div:nth-child(3n+3) {margin-right:0%;}
		
	
	/* FTP Details */
	.document-thumbnails-holder .document-thumbnails-item {
	width:100%;
	margin:0;
	padding:0;	
	}
	
	.document-grid-item .document-grid-item-image {max-height:none;}
	.document-grid-holder .document-grid-item {width:100% !important; margin-right:0 !important; clear:both;}	
	
		.document-image-list-item .document-image-list-image,
		.document-image-list-item .document-image-list-text {width:100%; clear:both;}
		
		
	.address-selector {}
		.address-selector li {
		width:100%;
		margin-bottom:18px;
		}
		
			.address-selector .address-selector-button {}
			.address-selector .address-selector-address {}
			
	.cart-checkradio-holder {}
		.cart-checkradio-holder .checkradio {width:100%;}
		
		
		
	/* iPhone zoom fix */
	select,
	textarea, 
	input[type="text"], 
	input[type="password"], 
	input[type="datetime"], 
	input[type="datetime-local"], 
	input[type="date"], 
	input[type="month"], 
	input[type="time"], 
	input[type="week"], 
	input[type="number"], 
	input[type="email"], 
	input[type="url"], 
	input[type="search"], 
	input[type="tel"], 
	input[type="color"] {
	font-size:16px !important;
	}

}



@media screen and (max-width: 400px) {
	
	#header #logo {
	max-width:70%;
	}
	
	
	
	#footer {
	padding-bottom:200px;
	}
	
		#footer .footer-image {
		margin-left:-100px;
		width:200px;
		height:200px;
		left:50%;
		right:auto;
		top:auto;
		bottom:0px;
		-ms-transform:rotate(0deg);
		-webkit-transform:rotate(0deg);
		transform:rotate(0deg);
		}
	
}
