.wait-for-font { opacity:0; }
.fonts-loaded .wait-for-font { opacity:1; }

*{box-sizing:border-box;}html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}

html, body { background-color:#34383F; color:#FFFFFF; font: 300 16px/1.5 'mr-eaves-modern','Helvetica Neue',Helvetica,sans-serif; padding:0; margin:0 auto; height:100%; overflow-x: hidden; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; -webkit-text-size-adjust: none; }
::-webkit-scrollbar { width: 10px; }
::-webkit-scrollbar-thumb { background: #b29d73; border-radius:5px; border: 2px solid #34383F; }
::-webkit-scrollbar-track { background: #34383F; border-left: 1px solid #4D5158; }

body { width:100%; height:100%; }
header, footer { flex:0 0 auto; }
main { flex:1 0 auto; }

h1, h2 { margin-top:0; margin-bottom:2rem; font-weight:300; }
h3, h4, h5, h6 { margin-top:0; margin-bottom:0.5rem; font-weight:500; }
p + h3, p + h4, p + h5, p + h6, ul + h3, ul + h4, ul + h5, ul + h6, ol + h3, ol + h4, ol + h5, ol + h6 { margin-top:1rem; }
h1 { font-size:1.7rem; }
h2 { font-size:1.6rem; }
h3 { font-size:1.5rem; }
h4 { font-size:1.4rem; }
h5 { font-size:1.2rem; }
h6 { font-size:1.2rem; }
p { margin-top:0; margin-bottom:0.5rem; font-size:1.125rem; }
b { font-weight: 500; }

::selection {
	background: #FFFFFF;
	color: #34383F;
}
::-moz-selection {
	background: #FFFFFF;
	color: #34383F;
}

img { display:block; width:100%; height:auto;}
a { color:#ccad70; font-weight: 400; text-decoration:none; }

hr { border: 0; height: 0; border-bottom: 1px solid rgba(255,255,255,0.15); margin: 1rem auto; padding: 0; clear: both; }
hr.short { width:33%; }
hr.or { position: relative; }
hr.or::after { content:"OR"; font-size:0.9rem; font-weight: 700; color:#C2C8C4; position: absolute; padding:0 1rem; background-color:#4D5158; left:50%; transform: translateX(-50%); }

.nowrap { white-space: nowrap; }

.hide { display:none; }

header { background-color:#34383F; position:fixed; width:calc(100% - 10px); z-index: 999; }
main { padding-top:4rem; }

header a { display: block; text-decoration:none; color:#FFFFFF; font-weight:300; line-height: 2rem; text-align: center; padding:0.5rem 1rem; }
header ul { list-style:none; margin:0; padding:0; display: flex; align-items: stret; white-space: nowrap; flex-wrap: nowrap; flex:0 0 auto; min-width: 0; }
header ul.right { justify-content:flex-end; }

.tre-logo { display:inline-block; margin:0 auto; padding:1rem; vertical-align: middle; }
.tre-logo img { display:block; height:2rem; width:12.5625rem; margin:0 auto; }

.tre-artisan-logo { display:inline-block; margin:0 auto; padding:1rem; vertical-align: middle; }
.tre-artisan-logo img { display:block; height:2rem; width:16.875rem; margin:0 auto; }	

.artisan-logo { display:inline-block; margin:0 auto; padding:1rem; vertical-align: middle; }
.artisan-logo img { display:block; height:2rem; width:16.875rem; margin:0 auto; }	

.menu-toggle, .tre-header-menu a { display:block; width:4rem; height:4rem; text-decoration:none; color:#FFFFFF; font-weight:300; line-height: 2rem; text-align: center; padding:1rem; transition: all 200ms; }
.menu-toggle:hover, .tre-header-menu a:hover { color:#b29d73; }
.clearnav .menu-toggle:hover, .clearnav .tre-header-menu a:hover { background: #272B32;  }

.menu-toggle { display:none; position: fixed; z-index: 1002; }
.menu-toggle .fa-times { display: none; }
.menu-open .menu-toggle .fa-bars { display: none; }
.menu-open .menu-toggle .fa-times { display: inline-block; }

nav { position: fixed; left: -16rem; width: 16rem; top: 0; bottom: 0; overflow-y: auto; transition: left 200ms; background-color:#272B32; z-index:1001; border-right: 1px solid rgba(255,255,255,0.15); }
.menu-open nav { left:0; }
.nav-header { position:fixed; background-color:#34383F; padding: 0 0 0 4rem; width:16rem; }
.nav-header a { display:block; color:#FFFFFF;  font-weight:300; height:4rem; padding:1rem; line-height: 2rem; }
.nav-header a:hover { background-color:#272B32; }

.no-text { line-height: 0; font-size: 0; color: transparent; }

.external-link { position: relative; padding-right:3rem; }
.external-link::after { position: absolute; font-family: "Font Awesome 5 Pro"; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; font-weight: 300; font-size:0.9rem; line-height: 1; content: "\f08e"; right:1rem; top: 50%; transform: translateY(-50%); }

.content { position:relative; left:0; transition:left 200ms; display: flex; flex-direction: column; height: 100%; }
.menu-open .content { left:16rem; }
.menu-open .menu-toggle { background-color:#34383F; color:#FFFFFF; }
.menu-open .menu-toggle:hover { background-color:#272B32; color:#b29d73; }

nav ul { list-style:none; padding:0 0 0 1rem; font-size:1rem; }
nav>ul { margin:5.5rem 0 0 0; padding:0 1rem; }
nav ul li { margin:0; padding:0.2rem 0; }
nav ul li a { display: block; line-height: 1rem; padding:0.5rem 1rem; color:#FFFFFF; font-weight:300; border-radius: 0.25rem; }
nav ul li a:hover { background-color:#34383F; }
nav ul li.active>a { background-color:#b29d73; }

.trade { margin:0.5rem 0 0; padding:0; font-size:1rem; font-weight:700; color:#858991; text-transform:uppercase; }

.webCartCount { background-color:#b29d73; border:2px solid #FFF; font-weight: 700; font-size: 2.5rem; top: -0.25rem; right: -0.25rem; }
a:hover .webCartCount { border-color:#b29d73; }

.container { max-width:72rem; width:100%; margin:0 auto; }
.container-lg { max-width:96rem; }
.container-md { max-width:64rem; }
.container-sm { max-width:48rem; }
.container-xs { max-width:40rem; }

.coupon-hero { background-color:#f2857c;background-position:50% 50%; background-repeat: repeat; text-align: center; padding:3rem 1rem; color: #FFF; height: 30vh; min-height:300px; max-height:400px; }
.coupon-hero h1, .coupon-hero h2, .coupon-hero h3, .coupon-hero p { margin-bottom:0; line-height:1.2; }

.coming-soon { background-color:#4E4B4C; color:#FFF; }
.coming-soon .container { background-image: radial-gradient(400px at 60% 50%, #918F8F, #4E4B4C); }

.side-panel { padding:2rem; background: #272B32; }

.category-title { padding: 1rem 2rem; background-color: #272B32; position: relative; margin-top: 3rem; display:block; }
.category-title h1 { color: #FFF; line-height:1; margin:0; padding:0; height: 2rem; }
.category-title:first-child { margin-top: 0; }
.category-title .ribbon { position: relative; left: -2rem; top: -0.375rem; }

.category-title-img { padding: 0; position: relative; display:block; }

footer { background-color:#34383F; padding:5rem 0 0; color:#858991; font-size:12px;  }
footer a { color:#FFFFFF; font-size: 0.9rem; font-weight: 300; display: inline-block; padding:0.1rem 0; }
footer a:hover { color:#ccad70; }
footer.bottom { padding:1rem 2rem; }

footer .text-label { display:inline-block; }
footer ul { list-style:none; padding:0; margin:0 0 1rem; }
footer h3 { margin-top:0; }
footer p { margin:0; font-size:0.9rem; }

a:hover { color:#FFFFFF; text-decoration:none; }

a.white { color:#FFFFFF; text-decoration:none; }
a.white:hover { color:#34383F; text-decoration:none; }

a.gold { color:#ccad70; text-decoration:none; }
a.gold:hover { color:#34383F; text-decoration:none; }

a.dark { color:#34383F; text-decoration:none; }
a.dark:hover { color:#FFFFFF; text-decoration:none; }

.socials { }
.socials svg { height: 0.8rem; text-align: center; width: 1.25em; margin:0 0.5rem -2px 0; }

.list-none { list-style:none; padding:0; margin:0; }
.list-none li { margin-bottom:0.5rem; }
.list-double-space li { margin-bottom:1rem; }

.hover-buttons { position: fixed; bottom: 1rem; right: 1rem; background: #272B32; padding: 0.25rem 0.5rem; font-size: 1rem; border-radius: 0.25rem; border:1px solid #4D5158; }

.breadcrumbs { list-style:none; margin:0 0 1rem; padding:0; }
.breadcrumbs li { margin:0; padding:0; display:inline-block; }
.breadcrumbs li.breadcrumb-child {
	position: relative;
	padding:0 0 0 1rem;
}
.breadcrumbs li.breadcrumb-child::before {
	font-family: "Font Awesome 5 Pro";
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	font-weight: 300;
	line-height: 1;
	content: "\f105";
	font-size:0.9rem;
	position:absolute;
	left:0.5rem;
	top:50%;
	transform:translate(-50%,-50%);
	color:#858991;
}
.breadcrumbs li:first-child a span { font-size:0; }


.slick-slider { position: relative; display: none; box-sizing: border-box; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-touch-callout: none; -khtml-user-select:none; -ms-touch-action: pan-y; touch-action: pan-y; -webkit-tap-highlight-color: transparent; max-height: 550px; }
.slick-initialized { display: block; max-height: none; }
.slick-list { position: relative; display: block; overflow: hidden; margin: 0; padding: 0; }
.slick-list:focus { outline: none; }
.slick-list.dragging { cursor: pointer; cursor: hand; }
.slick-slider .slick-track,
.slick-slider .slick-list { -webkit-transform: translate3d(0, 0, 0); -moz-transform: translate3d(0, 0, 0); -ms-transform: translate3d(0, 0, 0); -o-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }
.slick-track { position: relative; top: 0; left: 0; display: block; margin-left: auto; margin-right: auto; }
.slick-track::before, .slick-track:after { display: table; content: ''; }
.slick-track:after { clear: both; }
.slick-loading .slick-track { visibility: hidden; }
.slick-slide { display: none; float: left; height: 100%; min-height: 1px; outline:none; }
.slick-slide>picture>img { width: 100%; max-width: 100vw; height: auto; max-height: none; }
.slick-slide.slick-loading img { display: none; }
.slick-slide.dragging img { pointer-events: none; }
.slick-initialized .slick-slide { display: block; opacity: 0.5; padding:0 5px; -webkit-animation: slick-fade-out 400ms; -moz-animation: slick-fade-out 400ms; }
.slick-initialized .slick-slide.slick-center { opacity: 1; -webkit-animation: slick-fade-in 400ms; -moz-animation: slick-fade-in 400ms; }
.slick-loading .slick-slide { visibility: hidden; }
.slick-vertical .slick-slide { display: block; height: auto; border: 1px solid transparent; }
.slick-arrow.slick-hidden { display: none; }

.slick-lightbox { background-color: rgba(52, 56, 63, 0.9); }
.slick-lightbox-slick-item { opacity:1 !important; }

.slick-lightbox-slick-item-inner { position:relative; min-width: 12rem; min-height: 12rem; }
.slick-lightbox-slick-caption { display:inline-block; position: absolute; bottom: 1rem; left: 1rem; font-size: 1rem; line-height: 1; font-weight: 300; padding: 0.5rem 1rem; border-radius: 0.25rem; background-color: rgba(52, 56, 63, 1); color: rgba(255, 255, 255, 1); transition: all 200ms; text-align: left; white-space: nowrap; }

.pulsating-circle { display:block; position: absolute; left: 50%; top: 75%; transform: translate(-50%,-50%); width: 50px; height: 50px; }
.pulsating-circle::before { content: ''; position: relative; display: block; width: 150%; height: 150%; box-sizing: border-box; top: -25%; left: -25%; border-radius: 45px; background-color: rgba(52, 56, 63, 1); animation: pulse-ring 1.25s cubic-bezier(0.215, 0.61, 0.355, 1) infinite; }
.pulsating-circle::after { content: ''; position: absolute; left: 30%;  top: 30%; display: block; width: 40%; height: 40%; background-color: #FFFFFF; border-radius: 15px; box-shadow: 0 0 8px rgba(52, 56, 63, 0.5); animation: pulse-dot 1.25s cubic-bezier(0.455, 0.03, 0.515, 0.955) -.4s infinite; }

.home-fader {
	position: relative;
	width: 100vw;
	height: 90vh;
	max-height: 100vw;
}
.home-fader .slick-slide {
	display: flex;
	overflow: hidden;
	padding:0;
	width: 100vw;
	height: 90vh;
	max-height: 100vw;
}
.home-fader .slick-slide img {
	object-fit: cover;
	height: auto;
	width: auto;
	min-width: 100%;
	min-height: 100%;
	animation-duration: 10s;
	animation-iteration-count: infinite;
	animation-timing-function: linear;
}

.home-fader .slide-down.go img {
	animation-name: slide-down;
}
.home-fader .slide-up.go img {
	animation-name: slide-up;
}
.home-fader .slide-right.go img {
	animation-name: slide-right;
}
.home-fader .slide-left.go img {
	animation-name: slide-left;
}

@keyframes slide-down {
	0% {
		object-position: 50% 25%;
	}
	100% {
		object-position: 50% 75%;
	}
}
@keyframes slide-up {
	0% {
		object-position: 50% 75%;
	}
	100% {
		object-position: 50% 25%;
	}
}

@keyframes slide-right {
	0% {
		object-position: 75% 100%;
	}
	100% {
		object-position: 25% 100%;
	}
}
@keyframes slide-left {
	0% {
		object-position: 25% 100%;
	}
	100% {
		object-position: 75% 100%;
	}
}

@keyframes pulse-ring {
	0% {
		transform: scale(.5);
	}
	80%, 100% {
		opacity: 0;
	}
}

@keyframes pulse-dot {
	0% {
		transform: scale(.8);
	}
	50% {
		transform: scale(1);
	}
	100% {
		transform: scale(.8);
	}
}

.slick-prev,
.slick-next {
	display: inline-block;
	position: absolute;
	width: 4rem;
	height: 6rem;
	top: 50%;
	bottom: 0;
	transform: translateY(-50%);
	padding: 0;
	font-size: 0;
	line-height: 0;
	z-index: 1;
	cursor: pointer;
	background: rgba(52, 56, 63, 0.25);
	color: transparent;
	border: none;
	outline: none;
	text-align: center;
	transition: all 200ms;
}

.slick-prev, .slick-lightbox .slick-prev { left:0; }
.slick-next, .slick-lightbox .slick-next { right:0; }
.slick-prev.slick-disabled::before, .slick-next.slick-disabled::before { opacity: .25; }

.slick-prev::before {
	font-family:"Font Awesome 5 Pro";
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	font-weight:300;
	line-height:1;
	content:"\f104";
	font-size:2rem;
	margin:0 auto;
	font-size:3rem;
	color: rgba(255, 255, 255, 0.5);
	transition: all 200ms;
}
.slick-next::before {
	font-family:"Font Awesome 5 Pro";
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	font-weight:300;
	line-height:1;
	content:"\f105";
	font-size:2rem;
	margin:0 auto;
	font-size:3rem;
	color: rgba(255, 255, 255, 0.5);
	transition: all 200ms;
}
.slick-prev:hover, .slick-prev:focus, .slick-next:hover, .slick-next:focus { background: rgba(52, 56, 63, 0.5);  }
.slick-prev:hover::before, .slick-prev:focus::before, .slick-next:hover::before, .slick-next:focus::before { color: #FFFFFF; }

@-webkit-keyframes slick-fade-in {
		0% { opacity: 0.5; }
	100% { opacity: 1; }
}
@-moz-keyframes slick-fade-in {
		0% { opacity: 0.5; }
	100% { opacity: 1; }
}

@-webkit-keyframes slick-fade-out {
		0% { opacity: 1; }
	100% { opacity: 0.5; }
}
@-moz-keyframes slick-fade-out {
		0% { opacity: 1; }
	100% { opacity: 0.5; }
}

.tips { padding: 0.25rem 0; font-size: 0.9rem; text-align: center; }
.slick-tips { position: absolute; left: 0; right: 0; top: 100%; padding: 0.25rem 0; font-size: 0.9rem; text-align: center; }
.touch-device, .non-touch-device { display:none; }
.non-touch .non-touch-device { display:inline; }
.touch .touch-device { display:inline; }

.breadcrumbs li.breadcrumb-child::before {
	font-family: "Font Awesome 5 Pro";
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	font-weight: 300;
	line-height: 1;
	content: "\f105";
	font-size:0.9rem;
	position:absolute;
	left:0.5rem;
	top:50%;
	transform:translate(-50%,-50%);
	color:#858991;
}

#powerTip { max-width: 20rem; padding: 0.5rem 1rem; font-size: 1rem; border-radius: 0.25rem; text-align: center; white-space: normal;  background-color: rgba(39, 43, 50, 1); border-color: rgba(39, 43, 50, 1); }
.gallery #powerTip { background-color: rgba(52, 56, 63, 1); border-color: rgba(52, 56, 63, 1); }
#powerTip .fa-angle-right { transform: translateY(2px); }
.powertip { cursor: help; }
.powertip .svg-inline--fa { vertical-align: middle; }

.products, .product-filter { padding:0; }
.product-filter-container { background-color:#484c52; color:#FFFFFF;  margin-bottom:2rem; }
.product-filters { padding:2rem 2rem 1rem; }
.product-filter-prompt { padding:1rem 3rem; text-align: center; font-size:1rem; position: relative; cursor: pointer; }
.product-filter-prompt:hover { background-color:#ccad70; }
.product-filter-prompt::before, .product-filter-prompt::after {
	font-family: "Font Awesome 5 Pro";
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	font-weight: 300;
	line-height: 1;
	content: "\f107";
	font-size: 1.5rem;
	position:absolute;
	top:50%;
	transform: translateY(-50%);
}
.product-filter-prompt::before { left:1rem; }
.product-filter-prompt::after { right:1rem; }

.product-filters h3:first-child { margin-top:0; }
.product-filters ul { list-style:none; margin:0; padding:0; }
.product-filters ul li {  }
.product-filters ul li a { color:#FFFFFF; display: block; line-height: 1.8; padding:0 0 0 1.5rem; position: relative; }
.product-filters ul li a:hover { color:#ccad70; }
.product-filters ul li.active a { font-weight:400; color:#ccad70; }
.product-filters ul li.active a:hover { color:#FFFFFF; }

.product-filter .product-filter-prompt { display: block; }
.product-filter.visible .product-filter-prompt { display: none; }
.product-filter .product-filters { display: none; }
.product-filter.visible .product-filters { display: block; }

.filter-list li a::before {
	font-family: "Font Awesome 5 Pro";
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	font-weight: 300;
	line-height: 1;
	content: "\f0c8";
	position: absolute;
	left: 0;
	top: 0.4rem;
}
.filter-list li.active a::before {
	font-weight: 900;
	content: "\f14a";
}


.filter-check-box { width:100%; margin:2rem 0 0; padding: 0.5rem; background-color: #34383F; color:#FFF; border-radius: 0.5rem; text-align: left; }
.filter-check-box a { color:#FFFFFF; padding:0 0.5rem 0.5rem 2rem; display: block; position: relative; }
.filter-check-box a:hover { color:#ccad70; }
.filter-check-box.active a { font-weight:400; color:#ccad70; }
.filter-check-box.active a:hover { color:#FFFFFF; }
.filter-check-box a::before {
	font-family: "Font Awesome 5 Pro";
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	font-weight: 300;
	content: "\f0c8";
	position: absolute;
	left: 0.5rem;
}
.filter-check-box.active a::before {
	font-weight: 900;
	content: "\f14a";
}
.filter-check-box p { border-top:1px solid rgba(255,255,255,0.15); padding:0.5rem 0.5rem 0; margin:0; font-size:1rem; }

.product-filters ul#colour-filter { list-style:none; margin:0; padding:0; max-width:18rem; align-items:center; }
.product-filters ul#colour-filter li { flex: 0 0 20%; }
.product-filters ul#colour-filter li a { display:block; width:calc(100% - 4px); padding:0; border-radius:100%; border:2px solid transparent; position:relative; box-sizing: content-box; color:#FFF; background-size: 120% 120%; background-position: 50% 50%; }
.product-filters ul#colour-filter li a:hover { border-color: #FFFFFF; }
.product-filters ul#colour-filter li.active a svg { position:absolute; top:50%; left:50%; transform: translate(-50%, -50%); }

.product-filters ul#colour-filter li.active a:after {
	font-family: "Font Awesome 5 Pro";
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	font-style: normal;
	font-variant: normal;
	font-weight: 300;
	line-height: 1;
	content:"\f00c";
	font-size:1rem;
	position: absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
}
.product-filters ul#shape-filter { list-style:none; margin:0; padding:0; align-items:center; max-width:22rem; }
.product-filters ul#shape-filter li { flex: 0 0 25%; }
.product-filters ul#shape-filter li a { display:block; width:calc(100% - 1rem); padding:0; border-radius:100%; border:2px solid transparent; position:relative; box-sizing: content-box; color:#FFF; background-size: 120% 120%; background-position: 50% 50%; }
.product-filters ul#shape-filter li a:hover img { filter: brightness(0) saturate(100%) invert(64%) sepia(38%) saturate(301%) hue-rotate(2deg) brightness(92%) contrast(89%); }

.product-filters ul#shape-filter li.active img { filter: brightness(0) saturate(100%) invert(64%) sepia(38%) saturate(301%) hue-rotate(2deg) brightness(92%) contrast(89%); }

/* .colour-black-charcoal { background-image: linear-gradient(180deg, rgba(74,74,74,1) 5%, rgba(30,30,30,1) 120% ); }
.colour-grey { background-image: linear-gradient(180deg, rgba(171,171,171,1) 5%, rgba(30,30,30,1) 120% ); }
.colour-white-cream { background-image: linear-gradient(180deg, rgba(255,255,255,1) 5%, rgba(30,30,30,1) 120% ); }
.colour-neutral-beige { background-image: linear-gradient(180deg, rgba(196,164,132,1) 5%, rgba(30,30,30,1) 120% ); }
.colour-red { background-image: linear-gradient(180deg, rgba(222,74,74,1) 5%, rgba(30,30,30,1) 120% ); }
.colour-orange { background-image: linear-gradient(180deg, rgba(222,112,74,1) 5%, rgba(30,30,30,1) 120% ); }
.colour-yellow { background-image: linear-gradient(180deg, rgba(222,180,74,1) 5%, rgba(30,30,30,1) 120% ); }
.colour-green { background-image: linear-gradient(180deg, rgba(74,222,98,1) 5%, rgba(30,30,30,1) 120% ); }
.colour-blue { background-image: linear-gradient(180deg, rgba(74,148,222,1) 5%, rgba(30,30,30,1) 120% ); }
.colour-purple-pink { background-image: linear-gradient(180deg, rgba(200,74,222,1) 5%, rgba(30,30,30,1) 120% ); } */

#colour-filter li.active a.colour-neutrals { color:#272B32; }
#colour-filter li.active a.colour-orange { color:#272B32; }
#colour-filter li.active a.colour-yellows { color:#272B32; }

.filter-summary { font-size:1rem; line-height:1rem; }
.pill { background-color:#FFFFFF; color:#34383F; font-size:0.9rem; line-height: 1rem; display: inline-block; margin: 0.25rem 0.25rem; padding:0.25rem 0.5rem; border-radius: 0.25rem; }
.pill-small { padding:0.125rem 0.5rem; }
.pill-large { padding:0.5rem 2rem; font-size: 1.5rem; line-height: 1.5rem; border-radius: 0.5rem; }
.pill i { font-size: 75%; font-style: normal; vertical-align: middle; }
.pill svg { vertical-align: middle; margin-top: -2px; }	
a.pill:hover { color:#FFFFFF; background-color:#656262; }
.pill-gold { color:#272B32; background-color: #b29d73; }
.pill-grey { color:#FFFFFF; background-color: #858991; }

.price { color:#f2857c; display: flex; flex-direction: column; justify-content: center; line-height: 1; }
.price-rrp { text-decoration: line-through; display: block; opacity: 0.8; }

.from { position:relative; }
.from::before { content: "FROM"; position: absolute; right: 0; bottom: 100%; font-size: 0.6rem; }

.text-label { font-size:0.9rem; font-weight: 700; text-transform:uppercase; display: block; line-height: 1.5rem; }

.optional { position: relative; }
.optional:after { content:"OPTIONAL"; color:#C2C4C8; font-weight:300; font-size: 1rem; position: absolute; top:0.25rem; right:0.75rem; }
dt.optional:after { right:0; }
.form-danger { background-color:rgba(185,28,35,0.1); border-color:#f2857c !important; color:#FFFFFF !important; }

.select-wrapper {
	font-size: 1rem;
  padding: 0;
  height: 2.25rem;
  color: #FFFFFF;
  border-radius: 0.25rem;
	border: 1px solid #858991;
  outline: none;
	background-color: #4D5158;
	font-family:'mr-eaves-modern','Helvetica Neue',Helvetica,sans-serif;
	font-weight:300;
	display:flex;
	align-items: center;
	white-space: nowrap;
	flex-wrap: nowrap;
	position: relative;
}
.select-wrapper::after {
	font-family: "Font Awesome 5 Pro";
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	font-style: normal;
	font-variant: normal;
	font-weight: 300;
	line-height: 1;
	content:"\f0d7";
	position:absolute;
	right:0.75rem;
	font-size:1rem;
  pointer-events: none;
}
.select-wrapper select {
	box-shadow:none;
	border:0;
	margin:0;
	background: none;
	-webkit-appearance: none;
	font-size: 1rem;
	line-height: 1.25rem;
	font-weight:300;
	flex: 1 1 100%;
	padding: 0 2.125rem 0 0.75rem;
  color:#FFFFFF;
  outline: none;
  cursor: pointer;
  height:100%;
}
.select-wrapper select:disabled {
	background-color:#e9e8e8;
	cursor: not-allowed !important;
}

dl { }
dt { margin:0; }
dd { margin:0 0 1rem; }

.optional { position: relative; }
.optional:after { content:"OPTIONAL"; color:#C2C4C8; font-weight:300; font-size: 0.9rem; position: absolute; top:0.25rem; right:0.75rem; }
dt.optional:after { right:0; }

input {
	font-size: 1rem;
  padding: 0.5rem 0.75rem;
  height: 2.25rem;
  color: #FFFFFF;
  border-radius: 0.25rem;
	border: 1px solid #858991;
  outline: none;
	background-color: #4D5158;
	font-family:'mr-eaves-modern','Helvetica Neue',Helvetica,sans-serif;
	font-weight:300;
}
input[type=number]::-webkit-inner-spin-button, input[type=number]::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
::-webkit-input-placeholder, ::-moz-placeholder, :-ms-input-placeholder { font-family:'mr-eaves-modern','Helvetica Neue',Helvetica,sans-serif; font-weight:300; }
textarea {
	font-size: 1rem;
  padding: 0.5rem 0.75rem;
	height: 10rem;
  color: #FFFFFF;
  border-radius: 0.25rem;
	border: 1px solid #858991;
  outline: none;
	background-color: #4D5158;
	font-family: 'mr-eaves-modern','Helvetica Neue',Helvetica,sans-serif;
	font-weight: 300;
}
textarea.short {
	height: 5rem;
}
.input-100 {
	width: 100%;
}

.input-group { display: flex; flex-wrap: nowrap; }
.input-group .input-addon { width:2.5rem; text-align:center; font-size: 1rem; padding: 0.5rem 0; line-height: 1; white-space: nowrap; color: #FFFFFF; border-radius: 0.25rem; border: 1px solid #858991; background-color: #4D5158; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }
.input-group .input-spacer { font-size: 1rem; padding: 0.5rem 0.75rem; line-height: 1; white-space: nowrap; color: #FFFFFF; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }
.input-group .input-group-middle { border-radius: 0; border-right:0; }
.input-group .input-group-left { border-radius: 0.25rem 0 0 0.25rem; }
.input-group .input-group-right { border-radius: 0 0.25rem 0.25rem 0; }

.input-group > * { flex: 0 0 auto; min-width:0; }
.input-group .input-group-left, .input-group .input-group-middle { border-right-width:0; }
.input-group-combined .input-group-right { border-left-width: 0; }

.input-group .sort-by { font-size:1rem; padding:0; line-height:calc(2.25rem - 2px); width:4.25rem; text-align: right; }
/*
input.input-group-left, .input-group-left select { padding-right:0; }
input.input-group-right, .input-group-right select { padding-left:0; }
*/

.radio { display: block; position: relative; cursor: pointer; font-size: 1rem; }
.radio input { position: absolute; z-index: -1; opacity: 0; width:auto; height:auto; }
.radio .radio-indicator { position: relative; top: 2px; left: 0; height: 1rem; width: 1rem; background: #656262; display:inline-block; border-radius: 50%; z-index: 1; }
.radio input:focus ~ .radio-indicator { background: #4e4b4c; }
.radio:hover input ~ .radio-indicator, .radio input:checked:focus ~ .radio-indicator { background: #52bfad; }
.radio input.form-danger ~ .radio-indicator { background: #f2857c; }
.radio input:checked ~ .radio-indicator { background: #52bfad; }
.radio input:disabled ~ .radio-indicator { background: #e9e8e8; opacity: 0.6; pointer-events: none; }
.radio .radio-indicator:after { content: ''; position: absolute; display: none; }
.radio input:checked ~ .radio-indicator:after { display: block; }
.radio .radio-indicator:after { left: 0.25rem; top: 0.25rem; height: 0.5rem; width: 0.5rem; border-radius: 50%; background: #FFFFFF; }
.radio input:disabled ~ .radio-indicator:after { background: #e9e8e8; }

.checkbox-box { padding:0 0 1rem 0; }

.checkbox { display: block; position: relative; cursor: pointer; font-size: 1rem; }
.checkbox input { position: absolute; z-index: -1; opacity: 0; width:auto; height:auto; }
.checkbox .checkbox-indicator { position: relative; top: 2px; left: 0; height: 1.2rem; width: 1.2rem; border:1px solid #858991; border-radius: 0.25rem; color:#858991; display:inline-block; z-index: 1; margin-right:1rem; }
.checkbox input:focus ~ .checkbox-indicator { background: #4D5158; }
.checkbox:hover input ~ .checkbox-indicator, .checkbox input:checked:focus ~ .checkbox-indicator { border-color:#FFFFFF; }
.checkbox input.form-danger ~ .checkbox-indicator { color:#f2857c; border-color:#f2857c; }
.checkbox input:checked ~ .checkbox-indicator { color:#FFFFFF; border-color:#FFFFFF; }
.checkbox input:disabled ~ .checkbox-indicator { opacity: 0.6; pointer-events: none; }
.checkbox .checkbox-indicator:after { content:"\f00c"; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; display: inline-block; font-style: normal; font-variant: normal; text-rendering: auto; line-height: 1; font-family: "Font Awesome 5 Pro"; font-weight: 300; position: absolute; display: none; top:0rem; left:0.1rem; color:#FFFFFF; }
.checkbox input:checked ~ .checkbox-indicator:after { display: block; }
.checkbox input:disabled ~ .checkbox-indicator:after { }

.btn { border: 1px solid #B29D73; background-color:#B29D73; color:#FFFFFF; cursor:pointer; text-transform:uppercase; border-radius:0.25rem; padding:0 1rem; font-size: 1rem; line-height: calc(2rem - 2px); font-weight: 300; font-family: 'mr-eaves-modern','Helvetica Neue',Helvetica,sans-serif; outline:none; }
a.btn { display:inline-block; }
.btn:not([disabled]):hover, .btn:not([disabled]):active { background-color:#A59066; color:#FFFFFF; outline:none; }
.btn[disabled] { opacity:0.6; cursor: not-allowed !important; }

.btn-input { border-color:#858991; background: #4D5158; color:#FFFFFF; }
.btn-input:not([disabled]):hover, .btn-input:not([disabled]):active { background-color:#B29D73; color:#FFF; outline:none; }

.btn-outline { border-color:#858991; background: transparent; color:#FFFFFF; }
.btn-outline-gold { background: transparent; color:#ccad70; border-color:#ccad70; }

.btn-outline:not([disabled]):hover, .btn-outline:not([disabled]):active { background-color:#B29D73; color:#FFF; outline:none; }
.btn-outline-gold:not([disabled]):hover, .btn-outline-gold:not([disabled]):active { background-color:#B29D73; color:#FFF; outline:none; }

.btn-link { border:none; background-color:transparent; color:#B29D73; font-size: 1rem; padding:0; }
.btn-link:not([disabled]):hover, .btn-link:not([disabled]):active { border:none; background-color:transparent; color:#FFFFFF; }

.btn-xsmall { font-size:1rem; line-height: 1rem; padding:0 0.5rem; }
.btn-small { font-size:1rem; line-height: 1.5; }
.btn-large { padding:0.25rem 1rem; font-size:1rem; }
.btn-block { padding:0.5rem 2rem; font-size:1.25rem; display: block; width:100%; text-align: center; }
.btn-light { background-color:#e9e8e8; color:#272B32; }
.btn-light:not([disabled]):hover, .button-light:not([disabled]):active { background-color:#FFF; color:#272B32; }

.btn-success { border-color:#52bfad; background-color:#52bfad; }
.btn-success:not([disabled]):hover, .button-success:not([disabled]):active { background-color:#658a5a; color:#FFF; }
.btn-danger { border-color:#f2857c; background-color:#f2857c; }
.btn-danger:not([disabled]):hover, .button-danger:not([disabled]):active { background-color:#935f5e; color:#FFF; }
.btn-info { border-color:#5492cc; background-color:#5492cc; }
.btn-info:not([disabled]):hover, .button-info:not([disabled]):active { background-color:#5f839f; color:#FFF; }
.btn-warning { border-color:#f4d07f; background-color:#f4d07f; }
.btn-warning:not([disabled]):hover, .button-warning:not([disabled]):active { background-color:#94845f; color:#FFF; }

#zip-button { background-color:#24295E; font-family: "Helvetica Neue"; font-weight: 500; font-size:87.5%; }
#zip-button img { height:1.3125em; display: inline-block; vertical-align:bottom; }

.spinner { width:6rem; display: inline-flex; height: 2rem; line-height: 2rem; }
.spinner .minus { width:2rem; height: 2rem; font-size:1rem; padding:0; flex:1 1 100%; text-align: center; cursor: pointer; border-top-right-radius:0; border-bottom-right-radius: 0; }
.spinner .plus { width:2rem; height: 2rem; font-size:1rem; padding:0; flex:1 1 100%; text-align: center; cursor: pointer; border-top-left-radius:0; border-bottom-left-radius: 0; }
.spinner input { width:2rem; height: 2rem; font-size:1rem; padding:0; flex:1 1 100%; text-align: center; border-left:0; border-right:0; border-radius:0; box-shadow: none; }

ul.tabs{ margin: 0px; padding: 0px; list-style: none; }
ul.tabs li { display: inline-block; cursor: pointer; }
ul.tabs li a { display: block; padding: 0.5rem 1rem; color: #656262; text-decoration:none; border: 1px solid transparent; border-bottom: 0; }
ul.tabs li a:hover, ul.tabs li a:active { border-color: #656262; }
ul.tabs li.current a { border:1px solid #656262; border-bottom:0; color: #f2857c; background-color: #FFF; }
.tab-content { display: none; padding:1rem 1rem 0.5rem; border:1px solid #656262; margin-top:-1px; }
.tab-content.current { display: inherit; }

.alert { width:100%; padding: 1rem 1rem 1rem 0; background-color: transparent; color:#FFF; border:1px solid #FFF; border-radius: 0.5rem; text-align: left; font-size:1rem; font-weight:400; display: flex; align-items: center; min-height: 3rem }
.alert .alert-icon { width:3rem; text-align: center; }
.alert .alert-text { width:calc(100% - 3rem); text-align: left; }

.alert-dark { background-color: #34383F; border-color: #34383F; color:#FFFFFF; }
.alert-grey { background-color: #4D5158; border-color: #4D5158; color:#FFFFFF; }
.alert-tip { background-color: #4D5158; border-color: #4D5158; color:#FFFFFF; }
.alert-success { background-color: #52bfad; border-color:#52bfad; color:#34383F; }
.alert-danger { background-color: #f2857c; border-color:#f2857c;  color:#34383F; }
.alert-info { background-color: #5492cc; border-color:#5492cc; color:#FFFFFF; }
.alert-warning { background-color: #f4d07f; border-color:#f4d07f; color:#34383F; }

.toast { position:fixed; z-index:9999; width:auto; bottom:1rem; right:auto; left:50%; transform: translateX(-50%); text-align: center; width: 100%; padding: 0 2rem; }
.toast .alert { border-width:0; opacity: 0; transition: opacity 200ms; margin-top:1rem; font-size: 1rem; width: auto; display: inline-flex; margin: 0 auto; text-align: left; }
.toast .alert-show { opacity:1; }

.cart-toast { position:fixed; z-index:9998; top:50%; left:50%; width:100%; transform:translate(-50%,-50%); max-width:36rem; }
.cart-toast .cart-popup { opacity: 0; transition: opacity 200ms; background-color:#272B32; padding:3rem; text-align:center; color:#FFF; box-shadow: 0 0 2rem rgba(39,43,50,0.25); margin:1rem; }
.cart-toast .cart-popup-show { opacity:1; }
.cart-toast .cart-popup-icon { margin-bottom:2rem; }
.cart-toast .cart-popup-icon .fa-stack-1x { top: 17%; }
.cart-toast .cart-popup-buttons { margin-top:2rem; }
.cart-toast .cart-popup-buttons .button { margin: 0.25rem; }

.cart-header { display:none; }
.remove-link { color:#f2857c; display:inline-block; }
.remove-link:hover { color:#000; }

.cart-value { display:block; }
.cart-value .select-wrapper { min-width:6rem; }

.cart-products { vertical-align: top; }
.cart-sidebar { vertical-align: top; padding:1rem; background:#272B32; border-radius:0.5rem; }

.cart-image { max-width: 10rem; }

.cart-items {  }
.cart-item { position:relative; align-items: center; padding:1rem; border-radius:0.5rem; background-color:#4D5158; margin-bottom:1rem; min-height:4.5rem; }
.cart-item:last-child { margin-bottom:0; }

.cart-quantity { border-color:#B29D73; }
.cart-trash { position:absolute; right:0.5rem; display: block; width: 2rem; height: 2rem; line-height: 2rem; text-align: center; cursor: pointer; }
.cart-pricing { text-align: right; margin-left: auto; display: flex; justify-content: flex-end; flex-direction: column; }
.cart-price-was { display: inline-block; text-decoration: line-through; color: #858991; line-height: 2rem; white-space: nowrap; }
.cart-price { display: inline-block; margin-left: 1rem; font-weight:700; line-height: 2rem; white-space: nowrap; }

.inspo-tile { position: relative; width:100%; padding-bottom: 75%; }
.inspo-tile>a::after { content:" "; display:block; position: absolute; top:0; left:0; width:100%; height:100%; background-color:rgba(52,56,63,0.25); }
.inspo-tile>a { position: absolute; height: 100%; width: 100%; }
.inspo-tile picture { width: 100%; height: 100%; display: flex; overflow:hidden; }
.inspo-tile picture img { object-fit: cover; height: auto; width: auto; min-width: 100%; min-height: 100%; transition: all 200ms; object-position:center center; }
.non-touch .inspo-tile:hover picture img { transform: scale(1.1); }
.inspo-tile h3 { position: absolute; left: 50%; top: 50%; transform:translate(-50%,-50%); font-weight: 700; color:#FFF; text-shadow: 0px 0px 5px rgba(52,56,63,0.75); line-height: 1; white-space: nowrap; z-index: 1; }

.checkout-items, .checkout-shipping, .checkout-payment { padding:1rem; border-radius:0.5rem; background-color:#4D5158; margin-bottom: 3rem; }
.checkout-item { align-items: center; padding-bottom:1rem; margin-bottom:1rem; border-bottom: 1px solid rgba(255,255,255,0.15); }
.checkout-item:last-child { padding-bottom:0; margin-bottom:0; border-bottom:0; }
.checkout-terms { font-size:0.9rem; text-align: center; }

.address { width:100%; position: relative; border-radius: 0.25rem; border: 1px solid #858991; }
.address input, .address .select-wrapper { border:0; width: 100%; }
.address label { display:block; text-transform: uppercase; color:#C2C4C8; font-size:0.9rem; line-height: 1; font-weight:700; padding:0.5rem 0.75rem 0; }

.payment-cards { margin-top:1rem; }
.payment-cards svg { margin:0 0.5rem; }
.built-with-square { height: 2rem; width: auto; margin:1rem auto; }

.street { border-top-left-radius:0; border-bottom-left-radius:0; border-bottom-right-radius:0; }
.street2 { border-radius:0; border-top-width:0; }
.suburb { border-radius:0; border-top-width:0; }
.state { border-radius:0; border-top-width:0; }
.postcode { border-top-left-radius:0; border-bottom-left-radius:0; border-top-right-radius:0; border-left-width:0; border-top-width:0; border-left-width:0; }
@media (min-width: 40rem) {
	.checkout-items, .checkout-shipping, .checkout-payment { padding:3rem; }
	.state { border-left-width:0; }
}

.sq-card-form-wrapper { border:1px solid #858991; height: 2rem; padding:0 0.5rem; }
#sq-card-icon-container { width:1.5rem; min-width: auto !important; }

.card { width:100%; position: relative; border-radius: 0.25rem; border: 1px solid #858991; }
/* .address input, .address .select-wrapper { border:0; width: 100%; } */
.card label { display:block; text-transform: uppercase; color:#C2C4C8; font-size:0.9rem; line-height: 1; font-weight:700; padding:0.5rem 0.75rem 0; }
.card iframe { display:block; }
.card-number { border-top-left-radius: 0; border-bottom-left-radius:0; border-bottom-right-radius: 0; }
.card-expiry { border-radius:0; border-top-width:0; }
.card-cvv { border-top-left-radius:0; border-bottom-left-radius:0; border-top-right-radius:0; border-left-width:0; border-top-width:0; border-left-width:0; padding-right: 0.25rem; }

.masonry { margin-top:-1rem; }
.masonry-item { float: left; transition: all 200ms; }
.masonry-content { margin: 1rem; position: relative; }
.masonry-content picture { margin: 0 auto; }
.masonry-content picture img { width:auto; height:auto; max-width: 100%; max-height: 32rem; margin: 0 auto; transition: all 200ms; }
.masonry-content .product-label { left:50%; transform:translateX(-50%); }

.non-touch .masonry-content:hover picture img { transform: scale(1.1); }

.capsule-header { background-color:#34383F; border-radius:0.25rem 0.25rem 0 0; padding:1rem 2rem 0.5rem; margin:0 auto; font-family: 'mr-eaves-sans',Georgia,serif; }
.capsule-header h1 { margin-bottom:0; }
.capsule-header p { width:100%; padding:0 2rem; margin:0 auto 1rem; }

.capsule-menu-item { position: relative; }
.capsule-menu-item span { position: absolute; right:0; top:50%; transform: translateY(-50%); margin:0; }

.capsule.overlay-open { position: fixed; overflow-y:scroll }
.capsule-overlay { position:fixed; top:0; left:0; bottom:0; right:0; background-color:rgba(52,56,63,0.9); padding:0 1rem 1rem; z-index:2000; text-align:center; overflow-y:scroll; display: none; }
.capsule.overlay-open .capsule-overlay { display: block; }
.capsule-overlay .capsule-logo img { height:2rem; width:12.5625rem; }

.capsule-closer { position: absolute; top:0; right:0; padding: 0 1rem; line-height: 42px; }

.capsule-container { border:1px solid #b29d73; padding:1rem; text-align:left; position: relative; }

.capsule-overlay .product-swatch { border-color: #b29d73; }

.capsule-terms { text-align:center; }
.capsule-terms p { margin:2rem auto 0; padding:0 2rem; max-width:40rem; font-size:0.9rem; }

.capsule-tiles { }
.capsule-tile { background-color: #484c52; }

.capsule-tile picture { width: 100%; height: 100%; display: flex; aspect-ratio: 1 / 1; }
.capsule-tile picture img { object-fit: cover; height: auto; width: auto; min-width: 100%; min-height: 100%; transition: all 200ms; object-position:center center; }

.capsule-tile .capsule-overview { display:none; }

.capsule-tile.has-flatshot { border:1px solid #484c52; display: block; }
.capsule-tile.has-flatshot:hover, .capsule-tile.has-flatshot.active { border:1px solid #b29d73; }

.capsule-tile.has-flatshot:hover .capsule-swatch, .capsule-tile.has-flatshot.active .capsule-swatch { display:none; }
.capsule-tile.has-flatshot:hover .capsule-overview, .capsule-tile.has-flatshot.active .capsule-overview { width: 100%; height: 100%; display: flex; padding:1rem 1rem 0; }
.capsule-tile.has-flatshot:hover .capsule-overview img, .capsule-tile.has-flatshot.active .capsule-overview img { object-fit: contain; }

.capsule-particulars { padding: 1rem; font-size: 1rem; font-weight: 300; }
.capsule-tile .capsule-label { display: block; color:#FFFFFF; font-weight: 500; font-size:1.2rem; line-height: 1; }
.capsule-tile .capsule-size { display: block; color:#FFFFFF; }

.home.overlay-open { position: fixed; overflow-y:scroll }
.form-overlay { position:fixed; top:0; left:0; bottom:0; right:0; background-color:rgba(52,56,63,0.75); padding:0 1rem 1rem; z-index:2000; text-align:center; overflow-y:scroll; display: none; }
.home.overlay-open .form-overlay { display: block; }
.form-overlay .overlay-logo img { height:2rem; }

.overlay-form { margin:0 2rem 2rem; }
.overlay-form form { margin:0 auto; padding:2rem; width:100%; max-width: 32rem; border:1px solid #FFF; text-align:left; background-color:rgba(52,56,63,0.75); position: relative; }

.form-closer { position: absolute; top:0; right:0; padding: 0 1rem; line-height: 42px; }

.btn-file { position: relative; overflow: hidden; display: inline-block; }
.btn-file input { position: absolute; top: 0; right: 0; margin: 0; height: 100%; opacity: 0; filter: alpha(opacity=0); font-size: 200px !important; direction: ltr; cursor: pointer; }

#upload-list { margin:0; padding:0; }
.upload-file { list-style:none; padding:1rem 0; margin:0; border-bottom: 1px solid rgba(255,255,255,0.15); }
.upload-file img { max-width:3rem; max-height:3rem; }

.progress-bar { background: #FFFFFF; border-radius: 0.25rem; height: 0.5rem; transition: background-color 250ms ease, width 100ms ease; }
.progress-bar.active { background: #FFFFFF; border-radius: 0.25rem; height: 0.5rem; }
.progress-bar.success { background: #b29d73 }
.progress-bar.cancelled { background: #f2857c }
.progress-bar.danger { background: #f2857c }


.last-chance.overlay-open { position: fixed; overflow-y:scroll }
.last-chance-overlay { position:fixed; top:0; left:0; bottom:0; right:0; background-color:rgba(52,56,63,0.9); padding:0 1rem 1rem; z-index:2000; text-align:center; overflow-y:scroll; display: none; }
.last-chance.overlay-open .last-chance-overlay { display: block; }

.last-chance-container { border:1px solid #FFFFFF; padding:1rem; text-align:left; position: relative; }
.last-chance-overlay-close { position: absolute; top:0; right:0; padding: 0 1rem; line-height: 42px; }

.last-chance-overlay .product-swatch { border-color: #FFFFFF; }

.last-chance-terms { text-align:center; }
.last-chance-terms p { margin:2rem auto 0; padding:0 2rem; max-width:40rem; font-size:1rem; }

.overlay { position:fixed; z-index:1000; width:100%; height:100%; top:0; left:0; right:0; bottom:0; background-color:rgba(52,56,63,0.75); display:none; transition:left 200ms; }
.overlay.show { display:block; -webkit-animation: fade-in 400ms; -moz-animation: fade-in 400ms; }

@-webkit-keyframes fade-in {
		0% { opacity: 0; }
	100% { opacity: 1; }
}
@-moz-keyframes fade-in {
		0% { opacity: 0; }
	100% { opacity: 1; }
}

.loading-spinner { position:fixed; z-index:10001; top:80%; left:50%; transform: translate(-50%,-50%); width: 6rem; height: 6rem; line-height: 6rem; font-size:2rem; text-align: center; border-radius:50%; background-color:#272B32; color:#FFF; display:none; box-shadow: 0 0 2rem rgba(52,56,63,0.75); }

.pos-r { position:relative; }
.pos-a { position:absolute; }
.pos-s { position:static; }
.pos-f { position:fixed; }

.h-100 { height: 100%; }

.p-0 { padding: 0 !important; }
.p-h { padding: 0.5rem !important; }
.p-1 { padding: 1rem !important; }
.p-2 { padding: 2rem !important; }
.p-3 { padding: 3rem !important; }
.pv-0 { padding-top: 0 !important; padding-bottom: 0 !important; }
.pv-q { padding-top: 0.25rem !important; padding-bottom: 0.25rem !important; }
.pv-h { padding-top: 0.5rem !important; padding-bottom: 0.5rem !important; }
.pv-1 { padding-top: 1rem !important; padding-bottom: 1rem !important; }
.pv-2 { padding-top: 2rem !important; padding-bottom: 2rem !important; }
.pv-3 { padding-top: 3rem !important; padding-bottom: 3rem !important; }
.pv-5 { padding-top: 5rem !important; padding-bottom: 5rem !important; }
.ph-0 { padding-left: 0 !important; padding-right: 0 !important; }
.ph-q { padding-left: 0.25rem !important; padding-right: 0.25rem !important; }
.ph-h { padding-left: 0.5rem !important; padding-right: 0.5rem !important; }
.ph-1 { padding-left: 1rem !important; padding-right: 1rem !important; }
.ph-2 { padding-left: 2rem !important; padding-right: 2rem !important; }
.ph-3 { padding-left: 3rem !important; padding-right: 3rem !important; }
.pl-0 { padding-left: 0 !important; }
.pl-h { padding-left: 0.5rem !important; }
.pl-1 { padding-left: 1rem !important; }
.pr-0 { padding-right: 0 !important; }
.pr-h { padding-right: 0.5rem !important; }
.pr-1 { padding-right: 1rem !important; }
.pr-2 { padding-right: 2rem !important; }
.pr-3 { padding-right: 3rem !important; }
.pt-0 { padding-top:0 !important; }
.pt-h { padding-top:0.5rem !important; }
.pt-1 { padding-top:1rem !important; }
.pt-2 { padding-top:2rem !important; }
.pt-3 { padding-top:3rem !important; }
.pb-2 { padding-bottom:2rem !important; }
.pb-0 { padding-bottom:0 !important; }
.pb-h { padding-bottom:0.5rem !important; }
.pb-1 { padding-bottom:1rem !important; }
.pb-2 { padding-bottom:2rem !important; }
.pb-3 { padding-bottom:3rem !important; }
.mv-0 { margin-top:0 !important; margin-bottom:0 !important; }
.mv-h { margin-top:0.5rem !important; margin-bottom:0.5rem !important; }
.mv-1 { margin-top:1rem !important; margin-bottom:1rem !important; }
.mv-2 { margin-top:2rem !important; margin-bottom:2rem !important; }
.mv-3 { margin-top:3rem !important; margin-bottom:3rem !important; }
.mh-0 { margin-left:0 !important; margin-right:0 !important; }
.mh-h { margin-left:0.5rem !important; margin-right:0.5rem !important; }
.mh-1 { margin-left:1rem !important; margin-right:1rem !important; }
.mh-2 { margin-left:2rem !important; margin-right:2rem !important; }
.mh-3 { margin-left:3rem !important; margin-right:3rem !important; }
.mt-0 { margin-top:0 !important; }
.mt-h { margin-top:0.5rem !important; }
.mt-1 { margin-top:1rem !important; }
.mt-2 { margin-top:2rem !important; }
.mt-3 { margin-top:3rem !important; }
.mb--1 { margin-bottom:-1rem !important; }
.mb-0 { margin-bottom:0 !important; }
.mb-h { margin-bottom:0.5rem !important; }
.mb-1 { margin-bottom:1rem !important; }
.mb-2 { margin-bottom:2rem !important; }
.mb-3 { margin-bottom:3rem !important; }
.ml-auto { margin-left:auto !important; }
.ml-q { margin-left:0.25rem !important; }
.ml-h { margin-left:0.5rem !important; }
.ml-1 { margin-left:1rem !important; }
.mr-auto { margin-right:auto !important; }
.mr-q { margin-right:0.25rem !important; }
.mr-h { margin-right:0.5rem !important; }
.mr-1 { margin-right:1rem !important; }

.b-1 { border:1px solid rgba(255,255,255,0.15); }
.bt-1 { border-top:1px solid rgba(255,255,255,0.15); }
.bb-1 { border-bottom:1px solid rgba(255,255,255,0.15); }
.bl-1 { border-left:1px solid rgba(255,255,255,0.15); }
.br-1 { border-right:1px solid rgba(255,255,255,0.15); }
.bb-3 { border-bottom:3px solid rgba(255,255,255,0.15); }

.text-dark { color: #34383F; }
.text-grey { color:#858991; }
.text-gold { color:#b29d73; }
.text-white { color:#FFFFFF; }
.text-red { color:#f2857c; }
.text-green { color:#52bfad; }
.text-blue { color:#5492cc; }
.text-muted { color:#656262; }

.text-success { color:#52bfad; }
.text-danger { color:#f2857c; }
.text-info { color:#5492cc; }
.text-warning { color:#f4d07f; }

.text-instock { color:#52bfad; }
.text-backorder { color:#5492cc; }
.text-custom { color:#858991; }

.b-light { border-color:rgba(255,255,255,0.15); }
.b-dark { border-color: #4d5158; }
.b-grey { border-color:#858991; }
.b-white { border-color:#FFFFFF; }
.b-red { border-color:#f2857c; }
.b-green { border-color:#52bfad; }
.b-blue { border-color:#5492cc; }
.b-gold { border-color:#b29d73 }

.bg-light { background-color:rgba(255,255,255,0.75); }
.bg-dark-grey { background-color:#272B32; color:#FFF; }
.bg-primary { background-color:#34383F; color:#FFF; }
.bg-grey { background-color:#4D5158; color:#FFF; }
.bg-red { background-color:#f2857c; color:#FFF; }
.bg-green { background-color:#52bfad; color:#FFF; }
.bg-blue { background-color:#5492cc; color:#FFF; }
.bg-gold { background-color:#b29d73; color:#FFF; }

.text-100 { font-weight:100; }
.text-300 { font-weight:300; }
.text-400 { font-weight:400; }
.text-700 { font-weight:700; }
.text-italic { font-style: italic; }
.text-normal { font-weight: 300; font-style: normal; }

.lh-1 { line-height:1 !important; }
.lh-2 { line-height:2 !important; }

.text-left { text-align:left; }
.text-center { text-align:center; }
.text-right { text-align:right; }
.text-justify { text-align:justify; }

.text-small { font-size:0.9rem !important; }
.text-medium { font-size:1rem !important; }
.text-1rem { font-size:1rem !important; }
.text-large { font-size:1.5rem !important; }
.text-2rem { font-size:2rem !important; }
.text-2hrem { font-size:2.5rem !important; }
.text-3rem { font-size:3rem !important; }
.text-3hrem { font-size:3.5rem !important; }
.text-4rem { font-size:4rem !important; }
.text-5rem { font-size:5rem !important; }
.text-uppercase { text-transform: uppercase; }

.float-left { float:left; }
.float-right { float:right; }
.float-none { float:none; }

.w-1-1 { width: 100%; }
.w-5-6 { width: 83.3333%; }
.w-4-5 { width: 80%; }
.w-3-4 { width: 75%; }
.w-2-3 { width: 66.6666%; }
.w-3-5 { width: 60%; }
.w-1-2 { width: 50%; }
.w-2-5 { width: 40%; }
.w-1-3 { width: 33.3333%; }
.w-1-4 { width: 25%;}
.w-1-5 { width: 20%; }
.w-1-6 { width: 16.6666%; }
.w-1-12 { width: 8.3333%; }

.w-1 { width:1rem !important; }
.w-2 { width:2rem !important; }
.w-3 { width:3rem !important; }
.w-4 { width:4rem !important; }
.w-5 { width:5rem !important; }
.w-6 { width:6rem !important; }
.w-8 { width:8rem !important; }

.flex-grid { display: flex; flex-flow: row;  flex-wrap: wrap; }
.flex-gutter { margin-top: -0.5rem !important; margin-left: -0.5rem !important; }
.flex-gutter > * { padding-top: 0.5rem !important; padding-left: 0.5rem !important; }
.flex-gutter-sm { margin-top: -0.5rem !important; margin-left: -0.5rem !important; }
.flex-gutter-sm > * { padding-top: 0.5rem !important; padding-left: 0.5rem !important; }
.flex-gutter-md { margin-top: -1rem !important; margin-left: -1rem !important }
.flex-gutter-md > * { padding-top: 1rem !important; padding-left: 1rem !important; }
.flex-gutter-lg { margin-top: -1.5rem !important; margin-left: -1.5rem !important; }
.flex-gutter-lg > * { padding-top: 1.5rem !important; padding-left: 1.5rem !important; }
.flex-r { flex-direction: row; }
.flex-c { flex-direction: column; }
.flex-r-reverse { flex-direction: row-reverse; }
.flex-c-reverse { flex-direction: column-reverse; }
.flex-h-right { justify-content: flex-end; }
.flex-h-center { justify-content: center; }
.flex-sb { justify-content: space-between; }
.flex-v-top { align-items: flex-start; }
.flex-v-bottom { align-items: flex-end; }
.flex-v-center { align-items: center; }
.flex-cell-top { align-self: flex-start; }
.flex-cell-bottom { align-self: flex-end; }
.flex-cell-center { align-self: center; }

.flex-gutter > .pt-0, .flex-gutter-md > .pt-0, .flex-gutter-lg > .pt-0 { padding-top: 0 !important; }

.flex-left { margin-right:auto !important; }
.flex-right { margin-left:auto !important; }

.flex-grid>[class^="flex-"] { min-width:0; }

.flex-1-1 { flex: 0 0 100%; }
.flex-5-6 { flex: 0 0 83.3333%; }
.flex-4-5 { flex: 0 0 80%; }
.flex-3-4 { flex: 0 0 75%; }
.flex-2-3 { flex: 0 0 66.6666%; }
.flex-3-5 { flex: 0 0 60%; }
.flex-1-2 { flex: 0 0 50%; }
.flex-2-5 { flex: 0 0 40%; }
.flex-1-3 { flex: 0 0 33.3333%; }
.flex-1-4 { flex: 0 0 25%;}
.flex-1-5 { flex: 0 0 20%; }
.flex-1-6 { flex: 0 0 16.6666%; }
.flex-1-8 { flex: 0 0 12.5%; }
.flex-1-10 { flex: 0 0 10%; }
.flex-1-12 { flex: 0 0 8.3333%; }
.flex-grow { flex:1 1 1rem; }
.flex-grid > .flex-break { height:0; flex:0 0 100%; padding:0 !important; }

.flex-1 { flex: 0 0 1rem; box-sizing: content-box; }
.flex-2 { flex: 0 0 2rem; box-sizing: content-box; }
.flex-3 { flex: 0 0 3rem; box-sizing: content-box; }
.flex-4 { flex: 0 0 4rem; box-sizing: content-box; }
.flex-5 { flex: 0 0 5rem; box-sizing: content-box; }
.flex-6 { flex: 0 0 6rem; box-sizing: content-box; }
.flex-8 { flex: 0 0 8rem; box-sizing: content-box; }
.flex-10 { flex: 0 0 10rem; box-sizing: content-box; }
.flex-12 { flex: 0 0 12rem; box-sizing: content-box; }
.flex-15 { flex: 0 0 15rem; box-sizing: content-box; }
.flex-20 { flex: 0 0 20rem; box-sizing: content-box; }
.flex-25 { flex: 0 0 25rem; box-sizing: content-box; }

.float-grid::after { content: ""; display: table; clear: both; }

.float-gutter { margin-top: -0.5rem !important; margin-left: -0.5rem !important; }
.float-gutter > * { padding-top: 0.5rem !important; padding-left: 0.5rem !important; }
.float-gutter-sm { margin-top: -0.5rem !important; margin-left: -0.5rem !important; }
.float-gutter-sm > * { padding-top: 0.5rem !important; padding-left: 0.5rem !important; }
.float-gutter-md { margin-top: -1rem !important; margin-left: -1rem !important }
.float-gutter-md > * { padding-top: 1rem !important; padding-left: 1rem !important; }
.float-gutter-lg { margin-top: -1.5rem !important; margin-left: -1.5rem !important; }
.float-gutter-lg > * { padding-top: 1.5rem !important; padding-left: 1.5rem !important; }
.float-gutter-lg { margin-top: -3rem !important; margin-left: -3rem !important; }
.float-gutter-lg > * { padding-top: 3rem !important; padding-left: 3rem !important; }

.float-gutter > .pt-0, .float-gutter-md > .pt-0, .float-gutter-lg > .pt-0 { padding-top: 0 !important; }

.float-1-1 { width: 100%; }
.float-5-6 { width: 83.3333%; }
.float-4-5 { width: 80%; }
.float-3-4 { width: 75%; }
.float-2-3 { width: 66.6666%; }
.float-3-5 { width: 60%; }
.float-1-2 { width: 50%; }
.float-2-5 { width: 40%; }
.float-1-3 { width: 33.3333%; }
.float-1-4 { width: 25%;}
.float-1-5 { width: 20%; }
.float-1-6 { width: 16.6666%; }
.float-1-8 { width: 12.5%; }
.float-1-10 { width: 10%; }
.float-1-12 { width: 8.3333%; }

.d-none { display:none !important }
.d-flex { display:flex !important }
.d-block { display:block !important }
.d-inline { display:inline !important }
.d-inline-block { display:inline-block !important }
@media (max-width: 25rem) {
	.hide-xs { display:none; }
}
@media (min-width: 25rem) {
	.w-xs-1-1 { width: 100%; }
	.w-xs-5-6 { width: 83.3333%; }
	.w-xs-4-5 { width: 80%; }
	.w-xs-3-4 { width: 75%; }
	.w-xs-2-3 { width: 66.6666%; }
	.w-xs-3-5 { width: 60%; }
	.w-xs-1-2 { width: 50%; }
	.w-xs-2-5 { width: 40%; }
	.w-xs-1-3 { width: 33.3333%; }
	.w-xs-1-4 { width: 25%;}
	.w-xs-1-5 { width: 20%; }
	.w-xs-1-6 { width: 16.6666%; }
	.w-xs-1-12 { width: 8.3333%; }

	.flex-xs-1-1 { flex: 0 0 100%; }
	.flex-xs-5-6 { flex: 0 0 83.3333%; }
	.flex-xs-4-5 { flex: 0 0 80%; }
	.flex-xs-3-4 { flex: 0 0 75%; }
	.flex-xs-2-3 { flex: 0 0 66.6666%; }
	.flex-xs-1-3-5 { flex: 0 0 60%; }
	.flex-xs-1-2 { flex: 0 0 50%; }
	.flex-xs-2-5 { flex: 0 0 40%; }
	.flex-xs-1-3 { flex: 0 0 33.3333%; }
	.flex-xs-1-4 { flex: 0 0 25%;}
	.flex-xs-1-5 { flex: 0 0 20%; }
	.flex-xs-1-6 { flex: 0 0 16.6666%; }
	.flex-xs-1-12 { flex: 0 0 8.3333%; }

	.flex-xs-5 { flex: 0 0 5rem; box-sizing: content-box; }
	.flex-xs-8 { flex: 0 0 8rem; box-sizing: content-box; }
	.flex-xs-10 { flex: 0 0 10rem; box-sizing: content-box; }
	.flex-xs-12 { flex: 0 0 12rem; box-sizing: content-box; }
	.flex-xs-15 { flex: 0 0 15rem; box-sizing: content-box; }
	.flex-xs-18 { flex: 0 0 18rem; box-sizing: content-box; }
	.flex-xs-20 { flex: 0 0 20rem; box-sizing: content-box; }

	.flex-xs-grow { flex:1 1 5rem; }

	.flex-xs-r { flex-direction: row; }
	.flex-xs-c { flex-direction: column; }
	.flex-xs-r-reverse { flex-direction: row-reverse; }
	.flex-xs-c-reverse { flex-direction: column-reverse; }

	.d-none-xs { display:none !important }
	.d-flex-xs { display:flex !important }
	.d-block-xs { display:block !important }
	.d-inline-xs { display:inline !important }
	.d-inline-block-xs { display:inline-block !important }

	.text-left-xs { text-align:left; }
	.text-center-xs { text-align:center; }
	.text-right-xs { text-align:right; }
}
@media (min-width: 35rem) {
	.w-sm-1-1 { width: 100%; }
	.w-sm-5-6 { width: 83.3333%; }
	.w-sm-4-5 { width: 80%; }
	.w-sm-3-4 { width: 75%; }
	.w-sm-2-3 { width: 66.6666%; }
	.w-sm-3-5 { width: 60%; }
	.w-sm-1-2 { width: 50%; }
	.w-sm-2-5 { width: 40%; }
	.w-sm-1-3 { width: 33.3333%; }
	.w-sm-1-4 { width: 25%;}
	.w-sm-1-5 { width: 20%; }
	.w-sm-1-6 { width: 16.6666%; }
	.w-sm-1-12 { width: 8.3333%; }

	.flex-sm-1 { flex: 1; }
	.flex-sm-1-1 { flex: 0 0 100%; }
	.flex-sm-5-6 { flex: 0 0 83.3333%; }
	.flex-sm-4-5 { flex: 0 0 80%; }
	.flex-sm-3-4 { flex: 0 0 75%; }
	.flex-sm-2-3 { flex: 0 0 66.6666%; }
	.flex-sm-1-3-5 { flex: 0 0 60%; }
	.flex-sm-1-2 { flex: 0 0 50%; }
	.flex-sm-2-5 { flex: 0 0 40%; }
	.flex-sm-1-3 { flex: 0 0 33.3333%; }
	.flex-sm-1-4 { flex: 0 0 25%;}
	.flex-sm-1-5 { flex: 0 0 20%; }
	.flex-sm-1-6 { flex: 0 0 16.6666%; }
	.flex-sm-1-12 { flex: 0 0 8.3333%; }

	.flex-sm-5 { flex: 0 0 5rem; box-sizing: content-box; }
	.flex-sm-8 { flex: 0 0 8rem; box-sizing: content-box; }
	.flex-sm-10 { flex: 0 0 10rem; box-sizing: content-box; }
	.flex-sm-12 { flex: 0 0 12rem; box-sizing: content-box; }
	.flex-sm-15 { flex: 0 0 15rem; box-sizing: content-box; }
	.flex-sm-18 { flex: 0 0 18rem; box-sizing: content-box; }
	.flex-sm-20 { flex: 0 0 20rem; box-sizing: content-box; }
	.flex-sm-25 { flex: 0 0 25rem; box-sizing: content-box; }
	.flex-sm-28 { flex: 0 0 28rem; box-sizing: content-box; }
	.flex-sm-30 { flex: 0 0 30rem; box-sizing: content-box; }

	.flex-sm-grow { flex:1 1 5rem; }

	.flex-sm-r { flex-direction: row; }
	.flex-sm-c { flex-direction: column; }
	.flex-sm-r-reverse { flex-direction: row-reverse; }
	.flex-sm-c-reverse { flex-direction: column-reverse; }

	.d-none-sm { display:none !important }
	.d-flex-sm { display:flex !important }
	.d-block-sm { display:block !important }
	.d-inline-sm { display:inline !important }
	.d-inline-block-sm { display:inline-block !important }

	.text-left-sm { text-align:left; }
	.text-center-sm { text-align:center; }
	.text-right-sm { text-align:right; }
}
@media (min-width: 40rem) {
	.masonry { margin-top:-2rem; }
	.masonry-content { margin: 2rem; }
	
	.capsule-overlay { padding:0 2rem 2rem; }
	.capsule-container { padding:2rem; }
	
	.last-chance-overlay { padding:0 2rem 2rem; }
	.last-chance-container { padding:2rem; }

	.flex-gutter { margin-top: -1rem !important; margin-left: -1rem !important }
	.flex-gutter > * { padding-top: 1rem !important; padding-left: 1rem !important; }
	.flex-gutter-sm { margin-top: -0.5rem !important; margin-left: -0.5rem !important }
	.flex-gutter-sm > * { padding-top: 0.5rem !important; padding-left: 0.5rem !important; }
	.flex-gutter-md { margin-top: -2rem !important; margin-left: -2rem !important }
	.flex-gutter-md > * { padding-top: 2rem !important; padding-left: 2rem !important; }
	.flex-gutter-lg { margin-top: -3rem !important; margin-left: -3rem !important; }
	.flex-gutter-lg > * { padding-top: 3rem !important; padding-left: 3rem !important; }

	.w-md-1-1 { width: 100%; }
	.w-md-5-6 { width: 83.3333%; }
	.w-md-4-5 { width: 80%; }
	.w-md-3-4 { width: 75%; }
	.w-md-2-3 { width: 66.6666%; }
	.w-md-3-5 { width: 60%; }
	.w-md-1-2 { width: 50%; }
	.w-md-2-5 { width: 40%; }
	.w-md-1-3 { width: 33.3333%; }
	.w-md-1-4 { width: 25%;}
	.w-md-1-5 { width: 20%; }
	.w-md-1-6 { width: 16.6666%; }
	.w-md-1-12 { width: 8.3333%; }

	.flex-md-1 { flex: 1; }
	.flex-md-1-1 { flex: 0 0 100%; }
	.flex-md-5-6 { flex: 0 0 83.3333%; }
	.flex-md-4-5 { flex: 0 0 80%; }
	.flex-md-3-4 { flex: 0 0 75%; }
	.flex-md-2-3 { flex: 0 0 66.6666%; }
	.flex-md-3-5 { flex: 0 0 60%; }
	.flex-md-1-2 { flex: 0 0 50%; }
	.flex-md-2-5 { flex: 0 0 40%; }
	.flex-md-1-3 { flex: 0 0 33.3333%; }
	.flex-md-1-4 { flex: 0 0 25%;}
	.flex-md-1-5 { flex: 0 0 20%; }
	.flex-md-1-6 { flex: 0 0 16.6666%; }
	.flex-md-1-12 { flex: 0 0 8.3333%; }

	.flex-md-5 { flex: 0 0 5rem; box-sizing: content-box; }
	.flex-md-8 { flex: 0 0 8rem; box-sizing: content-box; }
	.flex-md-10 { flex: 0 0 10rem; box-sizing: content-box; }
	.flex-md-12 { flex: 0 0 12rem; box-sizing: content-box; }
	.flex-md-15 { flex: 0 0 15rem; box-sizing: content-box; }
	.flex-md-18 { flex: 0 0 18rem; box-sizing: content-box; }
	.flex-md-20 { flex: 0 0 20rem; box-sizing: content-box; }
	.flex-md-25 { flex: 0 0 25rem; box-sizing: content-box; }
	.flex-md-28 { flex: 0 0 28rem; box-sizing: content-box; }
	.flex-md-30 { flex: 0 0 30rem; box-sizing: content-box; }

	.flex-md-grow { flex:1 1 5rem; }

	.flex-md-r { flex-direction: row; }
	.flex-md-c { flex-direction: column; }
	.flex-md-r-reverse { flex-direction: row-reverse; }
	.flex-md-c-reverse { flex-direction: column-reverse; }

	.ph-md-2 { padding-left:2rem; padding-right:2rem; }

	.order-md-1 { order:1; }
	.order-md-2 { order:2; }
	.order-md-3 { order:3; }
	.order-md-4 { order:4; }
	.order-md-5 { order:5; }

	.d-none-md { display:none !important }
	.d-flex-md { display:flex !important }
	.d-block-md { display:block !important }
	.d-inline-md { display:inline !important }
	.d-inline-block-md { display:inline-block !important }

	.text-left-md { text-align:left; }
	.text-center-md { text-align:center; }
	.text-right-md { text-align:right; }

	.cart-header { display:flex; }

	.cart-label-above { font-weight:700; display:block; width:auto; line-height:1.7; text-transform: uppercase; }
	.cart-value { display:inline-block; line-height:2.3125; }
}
@media (min-width: 56rem) {
	.w-lg-1-1 { width: 100%; }
	.w-lg-5-6 { width: 83.3333%; }
	.w-lg-4-5 { width: 80%; }
	.w-lg-3-4 { width: 75%; }
	.w-lg-2-3 { width: 66.6666%; }
	.w-lg-3-5 { width: 60%; }
	.w-lg-1-2 { width: 50%; }
	.w-lg-2-5 { width: 40%; }
	.w-lg-1-3 { width: 33.3333%; }
	.w-lg-1-4 { width: 25%;}
	.w-lg-1-5 { width: 20%; }
	.w-lg-1-6 { width: 16.6666%; }
	.w-lg-1-12 { width: 8.3333%; }

	.flex-lg-1 { flex: 1; }
	.flex-lg-1-1 { flex: 0 0 100%; }
	.flex-lg-5-6 { flex: 0 0 83.3333%; }
	.flex-lg-4-5 { flex: 0 0 80%; }
	.flex-lg-3-4 { flex: 0 0 75%; }
	.flex-lg-2-3 { flex: 0 0 66.6666%; }
	.flex-lg-3-5 { flex: 0 0 60%; }
	.flex-lg-1-2 { flex: 0 0 50%; }
	.flex-lg-2-5 { flex: 0 0 40%; }
	.flex-lg-1-3 { flex: 0 0 33.3333%; }
	.flex-lg-1-4 { flex: 0 0 25%;}
	.flex-lg-1-5 { flex: 0 0 20%; }
	.flex-lg-1-6 { flex: 0 0 16.6666%; }
	.flex-lg-1-12 { flex: 0 0 8.3333%; }

	.flex-lg-5 { flex: 0 0 5rem; box-sizing: content-box; }
	.flex-lg-8 { flex: 0 0 8rem; box-sizing: content-box; }
	.flex-lg-10 { flex: 0 0 10rem; box-sizing: content-box; }
	.flex-lg-12 { flex: 0 0 12rem; box-sizing: content-box; }
	.flex-lg-15 { flex: 0 0 15rem; box-sizing: content-box; }
	.flex-lg-18 { flex: 0 0 18rem; box-sizing: content-box; }
	.flex-lg-20 { flex: 0 0 20rem; box-sizing: content-box; }
	.flex-lg-25 { flex: 0 0 25rem; box-sizing: content-box; }
	.flex-lg-28 { flex: 0 0 28rem; box-sizing: content-box; }
	.flex-lg-30 { flex: 0 0 30rem; box-sizing: content-box; }

	.flex-lg-grow { flex:1 1 5rem; }

	.flex-lg-r { flex-direction: row; }
	.flex-lg-c { flex-direction: column; }
	.flex-lg-r-reverse { flex-direction: row-reverse; }
	.flex-lg-c-reverse { flex-direction: column-reverse; }

	.float-lg-left { float:left; }
	.float-lg-right { float:right; }
	
	.float-lg-1-1 { width: 100%; }
	.float-lg-5-6 { width: 83.3333%; }
	.float-lg-4-5 { width: 80%; }
	.float-lg-3-4 { width: 75%; }
	.float-lg-2-3 { width: 66.6666%; }
	.float-lg-3-5 { width: 60%; }
	.float-lg-1-2 { width: 50%; }
	.float-lg-2-5 { width: 40%; }
	.float-lg-1-3 { width: 33.3333%; }
	.float-lg-1-4 { width: 25%;}
	.float-lg-1-5 { width: 20%; }
	.float-lg-1-6 { width: 16.6666%; }
	.float-lg-1-8 { width: 12.5%; }
	.float-lg-1-10 { width: 10%; }
	.float-lg-1-12 { width: 8.3333%; }

	.ph-lg-2 { padding-left:2rem; padding-right:2rem; }

	.order-lg-1 { order:1; }
	.order-lg-2 { order:2; }
	.order-lg-3 { order:3; }
	.order-lg-4 { order:4; }
	.order-lg-5 { order:5; }

	.d-none-lg { display:none !important }
	.d-flex-lg { display:flex !important }
	.d-block-lg { display:block !important }
	.d-inline-lg { display:inline !important }
	.d-inline-block-lg { display:inline-block !important }

	.text-left-lg { text-align:left; }
	.text-center-lg { text-align:center; }
	.text-right-lg { text-align:right; }

	.bt-lg-1 { border-top:1px solid #D3D2D2; }
	.bb-lg-1 { border-bottom:1px solid #D3D2D2; }
	.bl-lg-1 { border-left:1px solid #D3D2D2; }
	.br-lg-1 { border-right:1px solid #D3D2D2; }
}
@media (min-width: 72rem) {
	.w-xl-1-1 { width: 100%; }
	.w-xl-5-6 { width: 83.3333%; }
	.w-xl-4-5 { width: 80%; }
	.w-xl-3-4 { width: 75%; }
	.w-xl-2-3 { width: 66.6666%; }
	.w-xl-3-5 { width: 60%; }
	.w-xl-1-2 { width: 50%; }
	.w-xl-2-5 { width: 40%; }
	.w-xl-1-3 { width: 33.3333%; }
	.w-xl-1-4 { width: 25%;}
	.w-xl-1-5 { width: 20%; }
	.w-xl-1-6 { width: 16.6666%; }
	.w-xl-1-12 { width: 8.3333%; }

	.flex-xl-1 { flex: 1; }
	.flex-xl-1-1 { flex: 0 0 100%; }
	.flex-xl-5-6 { flex: 0 0 83.3333%; }
	.flex-xl-4-5 { flex: 0 0 80%; }
	.flex-xl-3-4 { flex: 0 0 75%; }
	.flex-xl-2-3 { flex: 0 0 66.6666%; }
	.flex-xl-3-5 { flex: 0 0 60%; }
	.flex-xl-1-2 { flex: 0 0 50%; }
	.flex-xl-2-5 { flex: 0 0 40%; }
	.flex-xl-1-3 { flex: 0 0 33.3333%; }
	.flex-xl-1-4 { flex: 0 0 25%;}
	.flex-xl-1-5 { flex: 0 0 20%; }
	.flex-xl-1-6 { flex: 0 0 16.6666%; }
	.flex-xl-1-12 { flex: 0 0 8.3333%; }

	.flex-xl-5 { flex: 0 0 5rem; box-sizing: content-box; }
	.flex-xl-8 { flex: 0 0 8rem; box-sizing: content-box; }
	.flex-xl-10 { flex: 0 0 10rem; box-sizing: content-box; }
	.flex-xl-12 { flex: 0 0 12rem; box-sizing: content-box; }
	.flex-xl-15 { flex: 0 0 15rem; box-sizing: content-box; }
	.flex-xl-18 { flex: 0 0 18rem; box-sizing: content-box; }
	.flex-xl-20 { flex: 0 0 20rem; box-sizing: content-box; }
	.flex-xl-25 { flex: 0 0 25rem; box-sizing: content-box; }
	.flex-xl-28 { flex: 0 0 28rem; box-sizing: content-box; }
	.flex-xl-30 { flex: 0 0 30rem; box-sizing: content-box; }

	.flex-xl-grow { flex:1 1 5rem; }

	.flex-xl-r { flex-direction: row; }
	.flex-xl-c { flex-direction: column; }
	.flex-xl-r-reverse { flex-direction: row-reverse; }
	.flex-xl-c-reverse { flex-direction: column-reverse; }

	.d-none-xl { display:none !important }
	.d-flex-xl { display:flex !important }
	.d-block-xl { display:block !important }
	.d-inline-xl { display:inline !important }
	.d-inline-block-xl { display:inline-block !important }

	.text-left-xl { text-align:left; }
	.text-center-xl { text-align:center; }
	.text-right-xl { text-align:right; }

	.bt-xl-1 { border-top:1px solid #D3D2D2; }
	.bb-xl-1 { border-bottom:1px solid #D3D2D2; }
	.bl-xl-1 { border-left:1px solid #D3D2D2; }
	.br-xl-1 { border-right:1px solid #D3D2D2; }
}

.grecaptcha-badge { display: none !important; }

.floating-form { margin:0 auto; width:100%; max-width:36rem; background-color:rgba(52,56,63,0.9); padding: 2rem; border-radius: 0.5rem; }

.contact-hero { min-height:50rem; padding:9rem 2rem; background-position: 50% 50%; background-size: cover; background-repeat: no-repeat no-repeat; }

.showroom-tile { position: relative; width:100%; padding-bottom: 75%; }
.showroom-tile>a { position: absolute; height: 100%; width: 100%; }
.showroom-tile picture { width: 100%; height: 100%; display: flex; overflow:hidden; }
.showroom-tile picture img { object-fit: cover; height: auto; width: auto; min-width: 100%; min-height: 100%; transition: all 200ms; object-position:center center; }
.non-touch .showroom-tile:hover picture img { transform: scale(1.1); }
.showroom-label { position: absolute; left: 0.5rem; bottom: 0.5rem; font-size: 0.9rem; font-weight: 500; line-height: 1; padding: 0.25rem 0.5rem; border-radius: 0.25rem; background-color: rgba(52, 56, 63, 1); color: rgba(255, 255, 255, 1); transition: all 200ms; white-space: nowrap; }
.showroom-tile .showroom-label { font-size: 1rem; font-weight: 300; padding: 0.25rem 0.75rem; }

.showroom-name { line-height:1.2; min-height:2rem; margin:0 0 2rem; }

.showroom-rugs { padding: 3rem 0; background-color: #272B32; }

.showroom-logo { max-width: 12rem; margin:0 0 2rem; }

.showroom-module { position:relative; align-items: center; overflow:hidden; border-radius:0.5rem; background-color:#4D5158; margin-bottom:3rem; min-height:4.5rem; }
.showroom-module:last-child { margin-bottom:0; }

.showroom-module-image { width:100%; height:100%; }
.showroom-module-image picture { display: flex; overflow: hidden; width: auto; height: auto; min-width: 100%; min-height: 100%; }
.showroom-module-image picture img { object-fit: cover; width: auto; height: auto; min-width: 100%; min-height: 100%; }


.flex-inner {
	width: 200px;
	height: 200px;
	resize: both;
	overflow: auto;
}

.flex-inner a {
	display: flex;
	width: 100%;
	height: 100%;
	border: solid 1px #123;
}

#google-map { height:36rem; max-height:80vh; outline:none; margin: 0 auto; width: 100%; }
.tre-maps-infowindow { padding: 1rem; line-height: 1.5; }
.tre-maps-infowindow h3 { color: #34383F; }
.tre-maps-infowindow p { color: #34383F; margin: 1rem 0; }

.col-2 { column-count:2; }
.col-3 { column-count:3; }
.col-4 { column-count:4; }

.cfl-container { position: absolute; bottom: 0; width: 100%; height: 100%; display: flex; justify-content: flex-end; flex-direction: column; box-sizing: border-box; padding: 3rem 0; background: linear-gradient(to bottom, rgba(0,0,0,0) 50%, rgba(0,0,0,0.5) 100%); pointer-events: none }
.cfl { font-family: "austin-pen", cursive; font-weight: 400; font-style: normal; font-size:6vw; word-spacing:-0.3vw; color:#FFFFFF; text-shadow: 0px 0px 5px rgba(52,56,63,0.75); text-align: center; }
@media (min-width: 40rem) {
	.cfl { font-size:36px; word-spacing:-2.7px; }
}
.p404-hero { position: relative; }
.p404-hero picture { display: flex; overflow: hidden; width: 100%; height:45rem; max-height:80vh; }
.p404-hero picture img { object-fit: cover; height: auto; width: auto; min-width: 100%; min-height: 100%; transition: all 200ms; object-position: 50% 0%; }
.p404-lost { position: absolute; top:0; width: 100%; height: 100%; display: flex; justify-content: center; flex-direction: column; box-sizing: border-box; padding: 3rem 0; pointer-events: none; text-shadow:0px 0px 5px rgba(52,56,63,0.75); text-align: center; }
.p404-lost h1 { font-weight:700; font-size:6rem; margin:0; }
.p404-lost p { font-weight:400; font-size:2rem; line-height:1; margin:0; }

.qr-hero { position: relative; }
.qr-hero picture { display: flex; overflow: hidden; width: 100%; height:45rem; min-height:25rem; max-height:80vh; }
.qr-hero picture img { object-fit: cover; height: auto; width: auto; min-width: 100%; min-height: 100%; transition: all 200ms; object-position: 50% 50%; }
.qr-hmmm { position: absolute; top:0; width: 100%; height: 100%; display: flex; justify-content: end; flex-direction: column; box-sizing: border-box; padding: 3rem 0; pointer-events: none; text-shadow:0px 0px 5px rgba(52,56,63,0.75); text-align: center; }
.qr-hmmm h1 { font-weight:700; font-size:4rem; margin:0; }
.qr-hmmm p { font-weight:400; font-size:1rem; line-height:1; margin:0 auto; display: inline-block; max-width:80vw; padding:2rem 3rem; background:rgba(52,56,63,0.75);border-radius: 0.5rem; }

.thank-you-hero { position: relative; margin-bottom:3rem; }
.thank-you-hero picture { display: flex; overflow: hidden; width: 100%; height:45rem; max-height:80vh; }
.thank-you-hero picture img { object-fit: cover; height: auto; width: auto; min-width: 100%; min-height: 100%; transition: all 200ms; object-position: 50% 0%; }

.cleaning-hero { position: relative; }
.cleaning-hero picture { display: flex; overflow: hidden; width: 100%; height:45rem; max-height:80vh; }
.cleaning-hero picture img { object-fit: cover; height: auto; width: auto; min-width: 100%; min-height: 100%; transition: all 200ms; object-position: 50% 100%; }

.cleaning-header { background-color:#34383F; border-radius:0.25rem 0.25rem 0 0; padding:1rem 2rem 0.5rem; margin:0 auto; }
.cleaning-header h1 { margin-bottom:0; }

.careers-hero { position: relative; }
.careers-hero picture { display: flex; overflow: hidden; width: 100%; height:45rem; max-height:80vh; }
.careers-hero picture img { object-fit: cover; height: auto; width: auto; min-width: 100%; min-height: 100%; transition: all 200ms; object-position: 50% 40%; }

.careers-header { background-color:#34383F; border-radius:0.25rem 0.25rem 0 0; padding:1rem 2rem 0.5rem; margin:0 auto; }
.careers-header h1 { margin-bottom:0; }

.about-hero { position: relative; }
.about-hero picture { display: flex; overflow: hidden; width: 100%; height:45rem; max-height:80vh; }
.about-hero picture img { object-fit: cover; height: auto; width: auto; min-width: 100%; min-height: 100%; transition: all 200ms; object-position: 50% 100%; }

.about-content { font-family: 'mr-eaves-sans',Georgia,serif; padding:0; margin-top:3rem; }
.about-content h1 { font-family: 'mr-eaves-sans',Georgia,serif; width:100%; padding:0 2rem; margin:0 auto 1rem; }
.about-content p { width:100%; padding:0 2rem; margin:0 auto 1rem; }
.about-content figure, .about-content .multi-figure { width:100%; max-width:60rem; padding:0; margin:3rem auto; }
.about-content figure:last-child, .about-content .multi-figure:last-child { margin-bottom:0; }
.about-content figcaption { padding: 0.5rem 1rem; background-color: rgba(255,255,255,0.1); }

.about-content .multi-figure picture { position: relative; display: flex; overflow: hidden; width: 100%; height: 100%; }
.about-content .multi-figure picture img { object-fit: cover; height: auto; width: auto; min-width: 100%; min-height: 100%; object-position:center center; }	

.carpet-hero { position: relative; }
.carpet-hero picture { display: flex; overflow: hidden; width: 100%; height:45rem; max-height:80vh; }
.carpet-hero picture img { object-fit: cover; height: auto; width: auto; min-width: 100%; min-height: 100%; transition: all 200ms; object-position: 50% 100%; }

.carpet-content { font-family: 'mr-eaves-sans',Georgia,serif; padding:0; margin-top:3rem; }
.carpet-content h1 { font-family: 'mr-eaves-sans',Georgia,serif; width:100%; padding:0 2rem; margin:0 auto 1rem; }
.carpet-content p { width:100%; padding:0 2rem; margin:0 auto 1rem; }
.carpet-content figure, .carpet-content .multi-figure { width:100%; max-width:60rem; padding:0; margin:3rem auto; }
.carpet-content figure:last-child, .carpet-content .multi-figure:last-child { margin-bottom:0; }
.carpet-content figcaption { padding: 0.5rem 1rem; background-color: rgba(255,255,255,0.1); }

.carpet-content .multi-figure picture { position: relative; display: flex; overflow: hidden; width: 100%; height: 100%; }
.carpet-content .multi-figure picture img { object-fit: cover; height: auto; width: auto; min-width: 100%; min-height: 100%; object-position:center center; }

.collab-hero { position: relative; }
.collab-hero picture { display: flex; overflow: hidden; width: 100%; height:45rem; max-height:80vh; }
.collab-hero picture img { object-fit: cover; height: auto; width: auto; min-width: 100%; min-height: 100%; transition: all 200ms; object-position: 50% 75%; }

.collab-content { font-family: 'mr-eaves-sans',Georgia,serif; padding:0; margin-top:3rem; }
.collab-content h1 { font-family: 'mr-eaves-sans',Georgia,serif; width:100%; padding:0; margin:0 auto 1rem; }
.collab-content p { width:100%; padding:0; margin:0 auto 1rem; }
.collab-content figure, .collab-content .multi-figure { width:100%; max-width:60rem; padding:0; margin:3rem auto; }
.collab-content figure:last-child, .collab-content .multi-figure:last-child { margin-bottom:0; }
.collab-content figcaption { padding: 0.5rem 1rem; background-color: rgba(255,255,255,0.1); }

.collab-content .multi-figure picture { position: relative; display: flex; overflow: hidden; width: 100%; height: 100%; }
.collab-content .multi-figure picture img { object-fit: cover; height: auto; width: auto; min-width: 100%; min-height: 100%; object-position:center center; }

.cd-header h1 { /* font-family: "sweet-sans-pro", sans-serif; font-weight: 300; font-style: normal; */ letter-spacing:0.25rem; text-align: center; margin-bottom: 3rem; }
.tre-cd-logo { width:15rem; margin:0 auto 3rem; }
.cd-imagery {  }
.cd-products { clear:both; margin-top:6rem; }
.cd-product-picture {  }
.cd-product-image { width:auto; height:auto; max-height: 25rem; max-width: 100%; margin:0 auto; }

.item:hover {
		transform: translateY(-10px);
}

.custom-content, .custom-content h1, .custom-content p { font-family: 'mr-eaves-sans',Georgia,serif; }

.custom-hero { position: relative; }
.custom-hero picture { display: flex; overflow: hidden; width: 100%; height:45rem; max-height:80vh; }
.custom-hero picture img { object-fit: cover; height: auto; width: auto; min-width: 100%; min-height: 100%; transition: all 200ms; object-position: 50% 100%; }

.custom-video-module { position:relative; overflow: hidden; padding:6rem 0; }
.custom-video { width: auto; margin: 0; padding: 0; display: block; position: absolute; min-width: 100%; min-height: 100%; top: 50%; left: 70%; transform: translate(-50%,-50%); z-index: 1; }
.custom-video-overlay { background-color:rgba(52,56,63,0.75); position: relative; z-index: 2; padding:3rem 2rem; }

@media (min-width: 40rem) {
	.custom-video-module { min-height: auto; }
	.custom-video-overlay { border-radius: 0.25rem; width:20rem; }
}
@media (min-width: 56rem) {
	.custom-video { left:50%; }
}


.clearnav header { background:rgba(52,56,63,0.5); transition: background-color 500ms linear; }
.clearnav header.scrolled { background:#34383F;}
/* .clearnav header::before { content:""; position:absolute; top:0; left:0; width:100%; height:5rem; background: linear-gradient(180deg, rgba(52,56,63,0.6) 0px, rgba(,0) 5rem); z-index: -1 } */
.clearnav header.scrolled::before { content:none; }
.clearnav main { padding-top:0; }

.home-hero { position: relative; height:100%; }
.home-hero picture { display: flex; overflow: hidden; width: 100%; height:60rem; max-height:90vh;  }
.home-hero picture img { object-fit: cover; height: min(100%); width: min(100%); transition: all 200ms; object-position: 50% 50%; }
.home-label { display:inline-block; position: absolute; bottom: 1rem; left: 1rem; font-size: 1rem; line-height: 1; font-weight: 300; padding: 0.5rem 1rem; border-radius: 0.25rem; background-color: rgba(52, 56, 63, 1); color: rgba(255, 255, 255, 1); text-align: left; white-space: nowrap; }

.home-announcement { position: absolute; top: 0; left: 0; height:100%; width:100%; padding:4rem 0; text-align: center; align-content: flex-end; }
.home-announcement h1 { font-weight:700; font-size:2.2rem; margin-bottom:0; line-height:1.2; }
.home-announcement h2 { font-weight:500; font-size:1.5rem; margin-bottom:2rem; line-height:1.2; }
.home-announcement h3 { font-weight:500; font-size:0.9rem; margin-bottom:0; line-height:1.2; }

.home-announcement.holidays { align-content: center; }
.home-announcement.holidays h2 { font-family: 'mr-eaves-sans',Georgia,serif; font-weight: 700; letter-spacing: 0.5rem; text-align: right; padding:4rem 7% 4rem 0; display:none; }

@media (min-width: 40rem) {
	.home-announcement h1 { font-weight:700; font-size:3.5rem; margin-bottom:0; line-height:1.2; text-align: center; }
	.home-announcement h2 { font-weight:500; font-size:2.4rem; margin-bottom:3rem; line-height:1.2; text-align: center; }
	.home-announcement h3 { font-weight:500; font-size:1rem; margin-bottom:0; line-height:1.2; text-align: center; }
	
	.home-announcement.holidays h2 { display:block; }
}

.home-partner { position: absolute; text-align: center; margin:0 auto; top: 50%; left: 50%; width:100%; padding:2rem; transform: translate(-50%,-50%); color:#FFF; }
.home-partner.dark { color:#2E2E2E; }
.home-partner h2 { text-align: center; margin:0 auto; font-weight:500; }
.home-partner img { max-width:20rem; text-align: center; margin:0 auto 2rem; }
.home-partner p { text-align: center; font-weight:500; }

.home-video { width:100%; height:auto; }

.home-video { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%; }
.home-video iframe, .home-video object, .home-video embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

.home-instructions {  }
.home-instructions li { margin:1rem 0; }

.blog-hero { height:45rem; max-height:80vh; background-position: 50% 75%; background-size: cover; background-repeat: no-repeat no-repeat; }
.blog-header { background-color:#34383F; border-radius:0.25rem 0.25rem 0 0; padding:1rem 2rem 0.5rem; margin:4rem auto 0; font-family: 'mr-eaves-sans',Georgia,serif; }
.blog-header h1 { margin-bottom:0; }
.blog-date { font-family: 'mr-eaves-modern','Helvetica Neue',Helvetica,sans-serif; font-size:1rem; margin-bottom:0; }
.blog-content { font-family: 'mr-eaves-sans',Georgia,serif; padding:3rem 0; }
.blog-content h1, .blog-content h2, .blog-content h3, .blog-content h4, .blog-content h5, .blog-content h6, .blog-content p, .blog-content ul, .blog-content ol { width:100%; padding:0 2rem; margin:0 auto 1rem; }
.blog-content hr { margin:1rem auto; width:100%; }
.blog-content figure { width:100%; max-width:60rem; padding:0; margin:2rem auto; }
.blog-content h1 + figure, .blog-content h2 + figure, .blog-content h3 + figure, .blog-content h4 + figure, .blog-content h5 + figure, .blog-content h6 + figure { margin-top:1rem; }
.blog-content figcaption { padding: 0.5rem 1rem; background-color: rgba(255,255,255,0.1); }

.blog-card { display:block; position: relative; width:100%; height:0; padding:0 0 60% 0; overflow: hidden; }
.blog-card>a { position: absolute; height: 100%; width: 100%; color:#FFFFFF; }
.blog-card picture { width: 100%; height: 100%; display: flex; overflow:hidden; }
.blog-card picture img { object-fit: cover; height: auto; width: auto; min-width: 100%; min-height: 100%; transition: all 200ms; object-position:center center; }
.non-touch .blog-card:hover picture img { transform: scale(1.1); }
.blog-card-header { position:absolute; left:0; right:0; bottom:0; height:auto; background-color:rgba(52,56,63,0.75); padding:0.5rem 1rem; margin:0 auto; font-family: 'mr-eaves-sans',Georgia,serif; }
.blog-card-header h4 { white-space: nowrap; overflow:hidden; text-overflow: ellipsis; margin-bottom:0; }

.blog-nav { margin-top: 3rem; padding: 3rem 0; background-color: #272B32; }

.faq-hero { height:500px; max-height:80vh; background-position: 50% 75%; background-size: cover; background-repeat: no-repeat no-repeat; }
.faq-header { background-color:#34383F; border-radius:0.25rem 0.25rem 0 0; padding:1rem 2rem 0.5rem; margin:0 auto; font-family: 'mr-eaves-sans',Georgia,serif; }
.faq-header h1 { margin-bottom:0; }
.faq-content { font-family: 'mr-eaves-sans',Georgia,serif; padding:3rem 0; }
.faq-content hr { margin:1rem auto; width:100%; }
.faq-list { width:100%; padding:0 2rem; margin:0 auto 1rem; }
.faq-list div { padding-bottom:2rem; }
.faq-list dt { position: relative; background-color:#4D5158; border-top-left-radius: 0.25rem; border-top-right-radius: 0.25rem; padding:1rem 3rem 1rem 1rem; font-size:1.125rem; font-weight:700; }
.faq-list dd { position: relative; border:1px solid #4D5158; border-top:0; border-bottom-left-radius: 0.25rem; border-bottom-right-radius: 0.25rem; padding:1rem 3rem 1rem 1rem; font-size:1.125rem; margin-bottom:0; }
.faq-content h1, .faq-content h2, .faq-content dl, .faq-content hr, .faq-content p, .faq-content ul { width:100%; padding:0 2rem; margin:0 auto 1rem; max-width:72rem; }
.faq-content ul { width:100%; padding:0 2rem 0 4rem; margin:0 auto 1rem; }
.faq-content hr { margin:1rem auto; width:100%; }
.faq-glossary { width:100%; margin:0 auto; max-width:72rem; }


.gallery-hero { position: relative; }
.gallery-hero picture { display: flex; overflow: hidden; width: 100%; height:45rem; max-height:80vh; }
.gallery-hero picture img { object-fit: cover; height: auto; width: auto; min-width: 100%; min-height: 100%; transition: all 200ms; object-position: 50% 100%; }
.gallery-header { background-color:#34383F; border-radius:0.25rem 0.25rem 0 0; padding:1rem 2rem 0.5rem; margin:0 auto; font-family: 'mr-eaves-sans',Georgia,serif; }
.gallery-header h1 { margin-bottom:0; }
.gallery-content { font-family: 'mr-eaves-sans',Georgia,serif; padding:2rem 0; }
.gallery-content p { width:100%; padding:0 2rem; margin:0 auto 1rem; }

.gallery-tiles {}
.gallery-tile { position: relative; width:100%; padding-bottom: 100%; }
.gallery-tile-60 { padding-bottom: 60%; }
.gallery-tile>a { position: absolute; height: 100%; width: 100%; }

.gallery-tile picture { width: 100%; height: 100%; display: flex; overflow:hidden; }
.gallery-tile picture img { object-fit: cover; height: auto; width: auto; min-width: 100%; min-height: 100%; transition: all 200ms; object-position:center center; }
.non-touch .gallery-tile:hover picture img { transform: scale(1.1); }

.round-rugs .gallery-tile picture { overflow:visible; }

.gallery-label {
	position: absolute;
	left: 0.5rem;
	bottom: 0.5rem;
  font-size: 1rem;
  font-weight: 300;
	line-height: 1;
  padding: 0.25rem 0.5rem;
	border-radius: 0.25rem;
  background-color: #34383F;
  color: #FFF;
}
.gallery-image-label {
	position: absolute;
	left: 0.5rem;
	bottom: 0.5rem;
	font-size: 0.9rem;
	font-weight: 500;
	line-height: 1;
	padding: 0.25rem 0.5rem;
	border-radius: 0.25rem;
  background-color: #34383F;
  color: #FFF;
}

@media (min-width: 40rem) {
	.about-content h1, .about-content p { width:40rem; max-width:75vw; }
	.carpet-content h1, .carpet-content p { width:40rem; max-width:75vw; }

	.blog-header { margin-top:4rem; width:40rem; max-width:75vw; position: static; }
	.blog-header.hero { margin-top:1px; position: absolute; transform: translate(-50%,-99%); left: 50%; }
	.blog-content h1, .blog-content h2, .blog-content h3, .blog-content h4, .blog-content h5, .blog-content h6, .blog-content hr, .blog-content p, .blog-content ul, .blog-content ol { width:40rem; max-width:75vw; }

	.cleaning-header { width:100%; max-width:48rem; position: static; margin-top:0; position: absolute; transform: translate(-50%,-99%); left: 50%; }

	.careers-header { width:100%; max-width:48rem; position: static; margin-top:0; position: absolute; transform: translate(-50%,-99%); left: 50%; }

	.faq-header { margin-top:0; width:40rem; max-width:75vw; position: absolute; transform: translate(-50%,-99%); left: 50%; }

	.gallery-header { margin-top:2rem; width:40rem; max-width:75vw; position: static; }
	.gallery-header.hero { margin-top:0; position: absolute; transform: translate(-50%,-99%); left: 50%; }
	.gallery-content p { width:40rem; max-width:75vw; }
	
	.cd-header h1 { /* font-family: "sweet-sans-pro", sans-serif; font-weight: 200; font-style: normal; */ letter-spacing:0.25rem; text-align: center; margin-bottom: 3rem; }
	.tre-cd-logo { width:30rem; margin:0 auto 3rem; }
}
@media (min-width: 48rem) {
	.home-hero picture img { object-position: 50% 50%; }

	.faq-hero { height:600px; max-height:80vh; }
	.faq-header { margin-top:0; width:40rem; max-width:75vw; position: absolute; transform: translate(-50%,-99%); left: 50%; }
	.faq-list, .faq-glossary { column-count:2; column-gap:2rem; }
	.faq-list div { break-inside: avoid; padding-bottom:3rem; }
}

.product-module { position: relative; width:100%; padding-bottom: 100%; }
.product-module.single { padding-bottom: 75%; }
.product-module-parent { display: flex; flex-direction: column; text-align: center; position: absolute; height: 100%; width: 100%; outline: none; }
.product-module-parent h1 { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); padding: 0.25rem 0.5rem; max-width: 80%; margin: 0 auto; color: #FFF; text-transform: uppercase; width: auto; white-space: nowrap; text-align: center; border: 2px solid #FFF; background-color: rgba(40,40,40,0.4) }
.product-module-parent h1 span { display: block; font-size: 50%; line-height: 1; }
.product-module-hero { display: flex; flex: 1 0 75%; width: 100%; align-items: center; justify-content: center; overflow: hidden; position: relative; transition: all 200ms; }

.product-module-hero picture { position: absolute; width: 100%; height: 100%; display: flex; overflow:hidden; }
.product-module-hero picture img { object-fit: cover; height: auto; width: auto; min-width: 100%; min-height: 100%; transition: all 200ms; object-position:center center; }
.non-touch .product-module-hero:hover picture img { transform: scale(1.1); }

.product-module-herobg { width: 100%; height: 100%; background-repeat: no-repeat no-repeat; background-size: cover; background-position: center 65%; transition: all 200ms; transform-origin: bottom; }
.product-module-variants { display: flex; flex-direction: row; flex-basis: 25%; width: 100%; transition: all 200ms; }
.product-module-variant { flex: 1 0 5%; border-left:1px solid #34383F; transition: all 200ms; position: relative;	box-shadow: inset 0 0 3px rgba(52,56,63,0.75); }

.product-module-variant picture { position:absolute; width: 100%; height: 100%; display: flex; overflow:hidden; }
.product-module-variant picture img { object-fit: cover; height: auto; width: auto; min-width: 100%; min-height: 100%; transition: all 200ms; object-position:center center; }
.non-touch .product-module-variant:hover { flex-basis: 30%; }

/* .more-variants::after { content:""; background-color:rgba(52,56,63,0.5); position:absolute; top:0; left:0; width:100%; height:100%; } */
.more-variants span { position: absolute; top:50%; left:50%; transform: translate(-50%,-50%); color: #FFFFFF; font-size: 2rem; z-index:1;	text-shadow: 0 0 4px rgba(52,56,63,0.75); }

.product-tiles {}
.product-tile { position: relative; width:100%; padding-bottom: 100%; }
.product-tile>a { position: absolute; height: 100%; width: 100%; }

.product-tile picture { width: 100%; height: 100%; display: flex; overflow:hidden; }
.product-tile picture img { object-fit: cover; height: auto; width: auto; min-width: 100%; min-height: 100%; transition: all 200ms; object-position:center center; }
.non-touch .product-tile:hover picture img { transform: scale(1.1); }

.product-details { margin-top: 0 !important; margin-left:0 !important; }
.product-details > * { padding-top: 0 !important; padding-left:0 !important; }

.product-name { line-height:1.2; min-height:2rem; margin:0 0 2rem; }
.product-toolbar { height:2rem; font-size:0; text-align: right; }
.product-description { max-width:22rem; margin-bottom:1rem; }

.product-sample { max-width:22rem; margin:2rem 0 0; }

.product-variants { margin-top: 2rem; /* border-top:1px solid rgba(255,255,255,0.15); */ }
.product-variant { display: flex; flex-wrap: wrap; align-items: center; padding:1rem; border-radius:0.5rem; background-color:#4D5158; margin-bottom:1rem; /* padding: 0.5rem 0; border-bottom:1px solid #4D5158; */ min-height:4.5rem; }
.product-variant:last-child { margin-bottom:0; }
.product-shape { max-width: 3rem; max-height: 3.5rem; margin-right: 2rem; }
.product-size { text-align: left; line-height: 1.125rem; }
.product-size input { font-size:1rem; padding: 0.25rem 0 0.25rem 0.25rem; width:3rem; height: 1.5rem; border-right:0; }
.product-size .input-addon { padding: 0.25rem; line-height: 1; font-size:0.9rem; }
.product-size .input-spacer { padding: 0.25rem; line-height: 1; }
.product-size span { white-space: nowrap; }

.product-pricing { text-align: right; line-height: 1.125rem; white-space: nowrap; padding-left:1rem; }
.product-price-was { display: inline-block; margin-right: 1rem; text-decoration: line-through; color: #C2C4C8; }
.product-price { display: inline-block; }
.product-buy { text-align: right; margin-left: 2rem; }

.product-child-header { padding:0.5rem 1rem; }
.product-child-header h3 { margin:0; }

.product-siblings { padding: 3rem 0; }
.product-pairings { padding: 3rem 0; background-color: #272B32; }

.product-overview-container { position:relative; }
.product-overview { display:block; min-height:25rem; }
.product-overview img { max-width:100%; max-height: 60rem; width: auto; height: auto; margin: 0 auto; }
.product-swatch { display:block; position:absolute; bottom:-1rem; right:-1rem; max-width:45%; border-radius:50%; border:1px solid #FFF; overflow:hidden; box-shadow: 0px 0px 2rem 0.25rem rgb(39,43,50,0.3); }
.product-swatch img { object-fit: cover; }

.product-specifications { margin-top: 3rem; padding: 3rem 0; background-color: #272B32; }
.product-spec-list { margin: 0; padding: 0; }
.product-spec-list>div { display: flex; flex-flow: row; flex-wrap: wrap; padding:0; margin:0 0 1rem 0; }
.product-spec-list>div:first-child { padding: 0; }
.product-spec-list>div dt { flex: 1 1 100%; box-sizing: content-box; font-weight: 700; margin: 0; padding: 0; font-size: 1.125rem; line-height: 1.5rem; color: #C2C4C8; text-transform: uppercase; }
.product-spec-list>div dd { flex: 1 1 100%; margin: 0; padding: 0; font-size: 1.125rem; }

.product-thumbnail { width: 100%; height: 0; padding-bottom: 100%; position: relative; }
.product-thumbnail>a { position: absolute; height: 100%; width: 100%; display: flex; overflow: hidden; }
.product-thumbnail img { object-fit: cover; height: auto; width: auto; min-width: 100%; min-height: 100%; }

.product-banner { position: absolute; left: 0rem; top: 1rem; font-size: 0.9rem; font-weight: 500; line-height: 1; padding: 0.25rem 0.5rem; border-radius:0 0.25rem  0.25rem 0; text-transform: uppercase; background-color: #b29d73; color: rgba(255, 255, 255, 1); transition: all 200ms; white-space: nowrap; }
.product-label { position: absolute; left: 0.5rem; bottom: 0.5rem; font-size: 0.9rem; font-weight: 500; line-height: 1; padding: 0.25rem 0.5rem; border-radius: 0.25rem; background-color: rgba(52, 56, 63, 1); color: rgba(255, 255, 255, 1); transition: all 200ms; white-space: nowrap; }
.product-label.on-hover { background-color:rgba(52, 56, 63, 0.01); color:rgba(255, 255, 255, 0.01); }
.non-touch .product-module-variant:hover .product-label.on-hover { background-color:rgba(52, 56, 63, 1); color:rgba(255, 255, 255, 1); }
.product-status { position: absolute; right: 0.5rem; bottom: 0.5rem; font-size: 0.9rem; font-weight: 500; line-height: 1.25rem; width:1.25rem; height:1.25rem; border-radius: 50%; background-color: #34383F; color: #FFF; }
.product-module-hero .product-label { font-size: 1rem; font-weight: 300; padding: 0.25rem 0.75rem; }

@media (min-width: 25rem) {
	.product-spec-list>div { flex-wrap: nowrap; margin-bottom: 0.5rem; }
	.product-spec-list>div dt { flex: 0 0 12rem; }
	.product-spec-list>div dd { flex: auto; }
}
@media (min-width: 40rem) {
	.product-module, .product-module.single { padding-bottom: 65%; }
	.product-module-parent { flex-direction: row; }
	.product-module-hero { flex-basis: 75%; }
	.product-module-variants { flex-basis: 25%; flex-direction: column; }
	.product-module-parent:hover .product-module-variants { flex-basis: 60%; }
}

@media (min-width: 48rem) {
	.slick-slide>picture>img { display: block; width:auto; max-height: min(600px,60vw); }
}

@media (min-width: 56rem) {
	.product-module { position: relative; width:100%; padding-bottom: 100%; }
	.product-module.single { padding-bottom: 75%; }
	.product-module-parent { flex-direction: column; }
	.product-module-variants { flex-direction: row; }

	.product-details { margin-top: 0 !important; margin-left:-6rem !important; }
	.product-details > * { padding-top: 0 !important; padding-left:6rem !important; }
	.showroom-details { margin-top: 0 !important; margin-left:-6rem !important; }
	.showroom-details > * { padding-top: 0 !important; padding-left:6rem !important; }

	.product-description { max-width:20rem; }
	.showroom-description { max-width:20rem; }

	.product-sample { max-width:20rem; margin:2rem 0; }

	.product-variants { margin-top: 0; }
/* 	.product-variant { flex-wrap: nowrap; } */

	.product-shape { margin-right: 1rem; }
	.product-buy { margin-left: 1rem; }

	.product-spec-list>div { flex-wrap: wrap; margin-bottom:1rem; }
	.product-spec-list>div dt { flex: 1 1 100%; }
	.product-spec-list>div dd { flex: 1 1 100%; }

	.product-shape { margin-right: 2rem; }
	.product-buy { margin-left: 2rem; }
}

@media (min-width: 64rem) {
	.product-module, .product-module.single { padding-bottom: 65%; }
	.product-module-parent { flex-direction: row; }
	.product-module-hero { flex-basis: 75%; }
	.product-module-variants { flex-basis: 25%; flex-direction: column; }

	.product-details { margin-left:-10rem !important; }
	.product-details > * { padding-left: 10rem !important; }
	.showroom-details { margin-left:-10rem !important; }
	.showroom-details > * { padding-left: 10rem !important; }

	.product-spec-list>div { flex-wrap: nowrap; margin-bottom: 0.5rem; }
	.product-spec-list>div dt { flex: 0 0 12rem; }
	.product-spec-list>div dd { flex: auto; }

/* 	.product-label { font-size: 1rem; } */
}

@media (min-width: 80rem) {
	.product-module, .product-module.single { padding-bottom: 60%; }
}





/*! nouislider - 14.6.0 - 6/27/2020 */
/* Functional styling;
 * These styles are required for noUiSlider to function.
 * You don't need to change these rules to apply your design.
 */
.noUi-target,
.noUi-target * {
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-user-select: none;
  -ms-touch-action: none;
  touch-action: none;
  -ms-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.noUi-target {
  position: relative;
  padding:1rem;
}
.noUi-base,
.noUi-connects {
  width: 100%;
  height: 2px;
  position: relative;
  z-index: 1;
}
.noUi-base { background-color:#FFFFFF; }
/* Wrapper for all connect elements.
 */
.noUi-connects {
  overflow: hidden;
  z-index: 0;
  height: 1rem;
  top:-7px;
}
.noUi-connect,
.noUi-origin {
  will-change: transform;
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  -ms-transform-origin: 0 0;
  -webkit-transform-origin: 0 0;
  -webkit-transform-style: preserve-3d;
  transform-origin: 0 0;
  transform-style: flat;
}
.noUi-connect {
  height: 2px;
  width: 100%;
  background-color:#b29d73;
  top:7px;
}
.noUi-origin {
  height: 10%;
  width: 10%;
}
/* Offset direction
 */
.noUi-txt-dir-rtl.noUi-horizontal .noUi-origin {
  left: 0;
  right: auto;
}
/* Give origins 0 height/width so they don't interfere with clicking the
 * connect elements.
 */
.noUi-vertical .noUi-origin {
  width: 0;
}
.noUi-horizontal .noUi-origin {
  height: 0;
}
.noUi-handle {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  position: absolute;
}
.noUi-touch-area {
  height: 100%;
  width: 100%;
}
.noUi-state-tap .noUi-connect,
.noUi-state-tap .noUi-origin {
  -webkit-transition: transform 200ms;
  transition: transform 200ms;
}
.noUi-state-drag * {
  cursor: inherit !important;
}
/* Slider size and handle placement;
 */
.noUi-horizontal {
  height: 3rem;
}
.noUi-horizontal .noUi-handle {
  width: 1rem;
  height: 1rem;
  right: -0.5rem;
  top: -0.5rem;
}
.noUi-txt-dir-rtl.noUi-horizontal .noUi-handle {
  left: -17px;
  right: auto;
}
/* Handles and cursors;
 */
.noUi-draggable {
  cursor: ew-resize;
}
.noUi-vertical .noUi-draggable {
  cursor: ns-resize;
}
.noUi-handle {
  border-radius: 50%;
  background: #b29d73;
  cursor: default;
  outline:none;
}
/* Disabled state;
 */
[disabled] .noUi-connect {
  background: #c0c5ca;
}
[disabled].noUi-target,
[disabled].noUi-handle,
[disabled] .noUi-handle {
  cursor: not-allowed;
}
/* Base;
 *
 */
.noUi-pips,
.noUi-pips * {
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.noUi-pips {
  position: relative;
  color: #FFF;
}
/* Values;
 *
 */
.noUi-value {
  position: absolute;
  white-space: nowrap;
  text-align: center;
}
.noUi-value-sub {
  color: #ccc;
  font-size: 10px;
}
/* Markings;
 *
 */
.noUi-marker {
  position: absolute;
  background: #FFFFFF;
}
.noUi-marker-sub {
  background: #AAA;
}
.noUi-marker.highlight {
  background: #b29d73;
}
/* Horizontal layout;
 *
 */
.noUi-pips-horizontal {
  top: -4px;
  left: 0;
  width: 100%;
}
.noUi-value-horizontal {
  -webkit-transform: translate(-50%, 1rem);
  transform: translate(-50%, 1rem);
}
.noUi-rtl .noUi-value-horizontal {
  -webkit-transform: translate(50%, 50%);
  transform: translate(50%, 50%);
}
.noUi-marker-horizontal.noUi-marker {
  margin-left: -3px;
  width: 6px;
  height: 6px;
  border-radius:50%;
}
/* Vertical layout;
 *
 */
.noUi-pips-vertical {
  padding: 0 10px;
  height: 100%;
  top: 0;
  left: 100%;
}
.noUi-value-vertical {
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding-left: 25px;
}
.noUi-rtl .noUi-value-vertical {
  -webkit-transform: translate(0, 50%);
  transform: translate(0, 50%);
}
.noUi-marker-vertical.noUi-marker {
  width: 5px;
  height: 2px;
  margin-top: -1px;
}
.noUi-marker-vertical.noUi-marker-sub {
  width: 10px;
}
.noUi-marker-vertical.noUi-marker-large {
  width: 15px;
}
.noUi-tooltip {
  display: block;
  position: absolute;
  border: 1px solid #D9D9D9;
  border-radius: 3px;
  background: #fff;
  color: #000;
  padding: 5px;
  text-align: center;
  white-space: nowrap;
}
.noUi-horizontal .noUi-tooltip {
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  left: 50%;
  bottom: 120%;
}
.noUi-vertical .noUi-tooltip {
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  top: 50%;
  right: 120%;
}
.noUi-horizontal .noUi-origin > .noUi-tooltip {
  -webkit-transform: translate(50%, 0);
  transform: translate(50%, 0);
  left: auto;
  bottom: 10px;
}
.noUi-vertical .noUi-origin > .noUi-tooltip {
  -webkit-transform: translate(0, -18px);
  transform: translate(0, -18px);
  top: auto;
  right: 28px;
}

.fa-layers { position: relative; }
.fa-layers-counter { display: inline-block; position: absolute; text-align: center; background-color: #b29d73; border-radius: 1em; -webkit-box-sizing: border-box; box-sizing: border-box; color: #fff; height: 1.5em; line-height: 1; font-size: 2.5rem; top: -0.25rem; right: -0.25rem; max-width: 5em; min-width: 1.5em; overflow: hidden; padding: .25em; text-overflow: ellipsis; -webkit-transform: scale(.25); transform: scale(.25); -webkit-transform-origin: top right; transform-origin: top right; }
