﻿@charset "UTF-8";

html,body {
	font-family: "Raleway",sans-serif;
	min-width: 0;
}

.site-wrapper {
	max-width: 120rem;
	margin: 0 auto;
}

.floating-videos-link {
	color: #999;
	position: fixed;
	top: 200px;
	left: -5px;
	background-color: rgba(255,255,255,.85);
	border-color: rgba(0,0,0,.2);
	border-style: solid;
	border-width: 1px 1px 1px 1px;
	border-radius: 5px;
	padding: 10px 15px 10px 20px;
	z-index: 10;
	cursor: pointer;
	font-weight: 600;
}

.floating-videos-link:hover {
	color: #333;
	text-decoration: none;
	background-color: #fff;
}

.floating-videos-link i {
	margin-right: 5px;
}

@media screen and (max-width:29.9375rem) {
	.floating-videos-link {
		display: none;
	}
}

.grid-container.fluid {
	width: 100%;
}

h1,h2,h3,h4,h5,h6 {
	font-weight: 400;
	line-height: 1em;
	margin: 0 0 .5em 0;
	padding: 0;
}

a {
	text-decoration: none;
	color: #000;
}

a:hover {
	text-decoration: underline;
}

a.overlay {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 100;
}

a.button {
	display: inline-block;
	padding: 1.5rem 4rem;
	text-align: center;
	line-height: 1em;
	color: #666;
	border: 1px solid #ddd;
}

a.button:hover,a.button.green {
	background-color: #000;
	color: #fff;
	border-color: #000;
	text-decoration: none;
}

a.button.green:hover {
	opacity: .8;
}

a.button i {
	margin: 0 1em 0 0;
}

a.border-link {
	display: flex;
	align-items: center;
	padding: 1.5rem 0;
	border-top: 1px solid #ddd;
	font-size: 1.25rem;
	font-weight: 700;
	color: #4a4f54;
}

a.border-link:first-of-type {
	margin-top: 4rem;
}

a.border-link:last-of-type {
	border-bottom: 1px solid #ddd;
}

a.border-link:hover {
	color: #000;
	text-decoration: none;
}

a.border-link:hover::after {
	transform: scale(1.2);
}

a.border-link::after {
	font-family: "Font Awesome 5 Pro";
	font-weight: 900;
	content: "";
	display: block;
	color: #000;
	transform-origin: center;
	transition: transform .1s;
}

a.border-link span {
	display: block;
	flex: 1;
}

a.plus-link {
	display: inline-block;
	font-weight: 700;
	padding: 1rem;
}

a.plus-link::before {
	font-family: "Font Awesome 5 Pro";
	font-weight: 900;
	content: "";
	display: inline-block;
	color: #ddd;
	margin: 0 1em 0 0;
	transform-origin: center;
	transition: transform .1s;
}

a.plus-link:hover {
	text-decoration: none;
}

a.plus-link:hover::before {
	color: #000;
	transform: scale(1.2);
}

fieldset {
	border: 0;
	padding: 0;
	margin: 0;
}

fieldset>input,fieldset>textarea,fieldset>select {
	box-sizing: border-box;
}

fieldset>input[type=text],fieldset>input[type=password],fieldset>input[type=email],fieldset>input[type=tel],fieldset>textarea,fieldset>select {
	display: block;
	width: 100%;
	border: 1px solid #ddd;
	padding: 1em;
}

fieldset>input[type=text]:focus,fieldset>input[type=password]:focus,fieldset>input[type=email]:focus,fieldset>input[type=tel]:focus,fieldset>textarea:focus,fieldset>select:focus {
	outline: 0;
	border-color: #000;
}

fieldset~fieldset {
	margin-top: 1rem;
}

fieldset.check-group {
	border: 1px solid #ddd;
	padding: 1rem 1.5rem;
}

fieldset.check-group>strong {
	display: block;
	margin: 0 0 1rem 0;
}

fieldset.check-group .ei-container {
	margin: .5rem 0 0 0;
}

.split-fields {
	display: flex;
	margin: 1rem -.5rem;
}

.split-fields fieldset {
	flex: 1;
	margin: 0 .5rem;
}

.ei-container.ei-checkbox {
	display: flex;
}

.ei-container.ei-checkbox .ei-label {
	font-size: .875rem;
	color: #999;
	margin: 0 0 0 1rem;
}

.ei-input.ei-checkbox {
	border: 2px solid #000;
	box-shadow: none;
	min-width: 1.125rem;
}

.marketing-consent {
	font-size: .875rem;
	padding: 3rem 0;
}

.marketing-checkboxes {
	display: flex;
	flex-wrap: wrap;
	padding: 1rem 0 0 0;
}

.marketing-checkboxes .ei-c~.ei-c {
	padding: 0 0 0 3rem;
}

@media screen and (max-width:29.9375rem) {
	.marketing-checkboxes {
		display: block;
	}
}

.contact-form .cell.request-submit {
	text-align: center;
}

span.empty {
	display: block;
	color: #999;
	text-align: center;
	font-size: 1.125rem;
	width: 100%;
	flex-basis: 100%;
}

.cell.tall {
	min-height: 45rem;
}

.centre-links {
	text-align: center;
}

@media screen and (max-width:39.9375rem) {
	a.border-link {
		font-size: 1.125rem;
	}

	.grid-container.fluid {
		padding-left: 1rem;
		padding-right: 1rem;
	}

	.cell.tall {
		min-height: 25rem;
		flex: 1 1 25rem;
	}
}

.empty-label {
	display: block;
	text-align: center;
	font-size: 1.25rem;
	padding: 0 0 2rem 0;
	color: #999;
}

.validation-message {
	padding: 1rem 2rem;
	background-color: #d03a3a;
	color: #fff;
}

header.main {
	z-index: 2500;
	background-color: #fff;
	box-shadow: 0 0 0 0 rgba(0,0,0,0);
	transition: box-shadow .2s;
}

header.main.stuck {
	box-shadow: 0 0 10px 0 rgba(0,0,0,.25);
}

header.main ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

header.main li {
	display: inline;
}

header.main li.separator {
	display: inline-block;
	width: 1px;
	height: 1em;
	background-color: #ddd;
}

header.main a {
	color: #999;
	display: inline-block;
	transform-origin: center;
	transition: transform .1s;
}

header.main a:hover {
	color: #333;
}

header.main .cell {
	display: flex;
	align-items: center;
}

header.main .navigation {
	justify-content: flex-end;
	flex: 1;
}

header.main .navigation li:last-of-type a {
	color: #000;
	font-weight: 700;
}

header.main .actions a {
	font-size: 1.2rem;
	padding: 1.3rem .8rem;
	position: relative;
}

header.main .actions a:hover {
	transform: scale(1.2);
}

header.main .actions a .basket-count {
	position: absolute;
	top: 10px;
	right: 0;
	background: rgba(191,214,48,.7);
	border-radius: 50%;
	color: #fff;
	height: 22px;
	width: 22px;
	text-align: center;
	line-height: 21px;
	font-size: 13px;
}

header.main .actions li.contact-icon {
	display: none;
}

header.main .actions li:last-of-type a {
	color: #666;
}

header.main .actions li:last-of-type a:hover {
	color: #333;
}

nav.main {
	text-align: right;
}

nav.main a {
	padding: 1rem 1.5rem;
}

@media screen and (max-width:89.9375rem) {
	nav.main {
		display: none;
	}

	header .actions li.contact-icon {
		display: inline !important;
	}
}

@media screen and (max-width:39.9375rem) {
	header.main .cell.logo {
		padding: 2rem 0 0 0;
		text-align: center;
	}

	header.main .cell.logo a {
		margin: 0 auto;
	}

	header.main .cell.logo img {
		margin: 0 auto;
	}

	header.main .cell.actions {
		text-align: center;
		justify-content: center;
		padding-top: 0;
	}

	header.main .navigation {
		display: none;
	}
}

.search-outer {
	display: none;
}

.search-bar {
	display: flex;
	padding: 0 0 2rem 0;
}

.search-bar input {
	flex: 1;
	display: block;
	border: 0;
	border-bottom: 1px solid #ddd;
	padding: 1em;
	font-size: 1.25rem;
}

.search-bar input:focus {
	border-bottom-color: #000;
	outline: 0;
}

.search-bar a {
	font-size: 1.5rem;
	display: flex;
	align-items: center;
	width: 1em;
	height: 1em;
	line-height: 1em;
	padding: 1.25rem;
	box-sizing: content-box;
}

.search-bar a i {
	transition: transform .1s;
}

.search-bar a:hover {
	text-decoration: none;
}

.search-bar a:hover i {
	transform: scale(1.2);
}

footer.main {
	background-color: #4a4f54;
	color: #fff;
	padding: 3rem 3rem 6rem 3rem;
}

.footer-grid {
	justify-content: space-between;
}

.footer-social {
	text-align: right;
}

.footer-social>a {
	color: #000;
	font-weight: 700;
}

.footer-social>a:hover {
	text-decoration: underline;
}

.footer-social .social-links {
	margin-right: -2rem;
	padding: 0 0 2rem 0;
}

.footer-social .social-links a {
	box-sizing: content-box;
	width: 1em;
	height: 1em;
	line-height: 1em;
	text-align: center;
	color: #fff;
	display: inline-block;
	padding: 2rem;
	font-size: 1.25rem;
	transform-origin: center;
	transition: transform .1s;
}

.footer-social .social-links a:hover {
	transform: scale(1.2);
}

.footer-column-1 {
	padding-right: 2rem;
}

.footer-links {
	max-width: 45rem;
	padding: 1.5rem 0;
	font-size: .875rem;
}

.footer-links ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.footer-links li {
	display: block;
	line-height: 2em;
}

.footer-links a {
	color: #fff;
	display: block;
}

.footer-links a:hover {
	text-decoration: underline;
}

.footer-links .large-shrink a {
	padding-right: 6rem;
}

@media screen and (max-width:63.9375rem) {
	footer.main {
		padding: 1rem 0 3rem 0;
	}

	.footer-social {
		display: flex;
		flex-direction: row-reverse;
	}

	.footer-social a {
		display: block;
		padding: 1rem 1rem 1rem 0;
	}

	.footer-social .social-links {
		flex: 1;
		margin-right: 0;
		padding: 0;
	}

	.footer-social .social-links a {
		padding: 1rem;
	}
}

@media screen and (max-width:47.9375rem) {
	.footer-links>.cell {
		padding-bottom: 1rem;
	}
}

@media screen and (max-width:29.9375rem) {
	.footer-column-1 {
		padding-right: 0;
	}

	.footer-links>.cell {
		width: 100%;
		flex-basis: 100%;
		text-align: center;
	}

	.footer-links .large-shrink a {
		padding-right: 0;
	}

	.footer-social {
		text-align: center;
		display: block;
	}

	.footer-social a {
		padding: 1rem;
	}
}

.fadein {
	opacity: 0;
	transform-origin: 50% 50%;
	transform: translateY(50px);
	-webkit-transform: translateY(50px);
	-moz-transform: translateY(50px);
	-o-transform: translateY(50px);
	-ms-transform: translateY(50px);
	transition: transform 600ms ease,opacity 600ms ease;
	-webkit-transition: transform 600ms ease,opacity 600ms ease;
}

.fadedin {
	opacity: 1;
	transform-origin: 50% 50%;
	transform: translateY(0);
	-webkit-transform: translateY(0);
	-moz-transform: translateY(0);
	-o-transform: translateY(0);
	-ms-transform: translateY(0);
}

.zoomin {
	opacity: 0;
	transform-origin: 50% 50%;
	transform: scale(1.1,1.1);
	-webkit-transform: scale(1.1,1.1);
	-moz-transform: scale(1.1,1.1);
	-o-transform: scale(1.1,1.1);
	-ms-transform: scale(1.1,1.1);
	transition: all 1000ms ease;
	-webkit-transition: all 1000ms ease;
}

.zoomedin {
	opacity: 1;
	transform-origin: 50% 50%;
	transform: scale(1,1);
	-webkit-transform: scale(1,1);
	-moz-transform: scale(1,1);
	-o-transform: scale(1,1);
	-ms-transform: scale(1,1);
}

ul.custom {
	list-style: none;
	margin: 0;
	padding: 0;
}

ul.custom li::before {
	content: "•";
	margin: 0 1em 0 0;
	color: #000;
}

ul.thumb-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

ul.thumb-list li {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	position: relative;
	padding: 0 0 2rem 0;
}

ul.thumb-list li:last-of-type {
	padding: 0;
}

ul.thumb-list li>a:hover~div {
	color: #000;
}

ul.thumb-list .text {
	flex: 1;
	padding: 0 0 0 2rem;
}

ul.thumb-list .text>span {
	display: block;
}

ul.thumb-list .name {
	font-size: 1.125rem;
	font-weight: 700;
	margin: 0 0 1rem 0;
}

ul.thumb-list .description {
	font-size: .875rem;
	line-height: 1.5em;
	color: #999;
}

@media screen and (max-width:39.9375rem) {
	ul.thumb-list {
		text-align: center;
	}

	ul.thumb-list .thumb,ul.thumb-list .text {
		flex-basis: 100%;
		padding: 0;
	}

	ul.thumb-list .text {
		padding-top: 1rem;
	}
}

.border-header {
	border-bottom: 3px solid #000;
	font-size: 1.5rem;
	font-weight: 700;
	color: #4a4f54;
	padding: 1.5rem 0;
	margin: 4rem 0 0 0;
}

.border-header.green {
	color: #000;
	border-bottom: 1px solid #ddd;
}

.border-header+a.border-link {
	border-top: 0;
	margin-top: 2rem;
}

.border-header~a.border-link {
	font-weight: normal;
	color: #999;
}

.border-header~a.border-link:hover {
	color: #000;
	font-weight: 700;
}

.page-spacer {
	height: 4rem;
}

.page-spacer.big {
	height: 8rem;
}

.page-separator {
	padding: 4rem 0;
}

.page-separator .separator {
	height: 1px;
	background-color: #eee;
}

.page-separator.no-top {
	padding-top: 0;
}

.page-separator.no-bottom {
	padding-bottom: 0;
}

@media screen and (max-width:63.9375rem) {
	.page-spacer.big {
		height: 4rem;
	}
}

.alert {
	background-color: #356bc1;
	padding: 1.5rem 2rem;
	color: #fff;
	font-size: 1.25rem;
	font-weight: 700;
}

.alert i {
	display: inline-block;
	margin: 0 1.5rem 0 0;
}

.alert.bushboard {
	background-color: #000;
	color: #333;
}

.alert.success {
	background-color: #4fb54f;
}

.alert.info {
	background-color: #356bc1;
}

.alert.error {
	background-color: #d03a3a;
}

.image-slider {
	outline: 0;
}

.image-slider .slick-arrow {
	outline: 0;
	cursor: pointer;
	position: absolute;
	bottom: 0;
	z-index: 10;
	display: block;
	box-sizing: content-box;
	background-color: #fff;
	font-size: 1.25rem;
	color: #999;
	width: 1em;
	height: 1em;
	line-height: 1em;
	text-align: center;
	padding: 1rem;
}

.image-slider .slick-arrow:hover {
	color: #666;
}

.image-slider .slick-prev {
	left: 0;
}

.image-slider .slick-next {
	right: 0;
}

.image-slider.under-title {
	margin-top: 2.5rem;
	display: none;
}

@media screen and (max-width:63.9375em) {
	.image-slider.under-title {
		display: block;
	}
}

@media screen and (max-width:63.9375em) {
	.image-slider.not-under-title {
		display: none;
	}
}

.image-slide {
	position: relative;
}

a.lightbox {
	transition: background-color .1s;
}

a.lightbox::before {
	font-family: "Font Awesome 5 Pro";
	font-weight: 900;
	content: "";
	color: #fff;
	display: block;
	position: absolute;
	z-index: 10;
	font-size: 2rem;
	text-align: center;
	width: 1em;
	height: 1em;
	line-height: 1em;
	top: calc(50% - .5em);
	left: calc(50% - .5em);
	transition: color .1s,transform .1s;
	transform-origin: center;
}

a.lightbox:hover {
	background-color: rgba(0,0,0,.2);
	text-decoration: none;
}

a.lightbox:hover::before {
	transform: scale(1.2);
}

a.lightbox.lightbox-video::before {
	font-family: "Font Awesome 5 Pro";
	font-weight: 900;
	content: "";
}

@media screen and (max-width:39.9375rem) {
	a.lightbox {
		display: none;
	}
}

.filter-grid {
	position: relative;
	z-index: 100;
}

.filter-bar {
	background-color: #ccc;
	color: #666;
	line-height: 1em;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.filter-bar .count {
	padding: 1.25rem 3rem;
}

.filter-bar .filters {
	flex: 1;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
}

.filter-bar .label {
	color: #fff;
	font-weight: 700;
	padding: 1.25rem 3rem;
	border-right: 1px solid;
}

.filter-bar a.drop-button,.filter-bar a.overflow-button {
	color: #fff;
}

.drop {
	display: none;
}

.dropdown {
	display: inline-block;
	position: relative;
}

.drop-button,.overflow-button {
	display: inline-block;
	padding: 1.25rem 3rem;
}

.drop-button i,.overflow-button i {
	display: inline-block;
	margin: 0 0 0 1rem;
	transform-origin: center;
	transition: transform .2s;
}

.drop-button.expanded i,.overflow-button.expanded i {
	transform: rotate(180deg);
}

.overflow-button {
	display: none;
}

.filter-dropdown {
	width: 12rem;
	padding: .5rem 1rem;
	text-align: left;
	background-color: #4a4f54;
	color: #fff;
	position: absolute;
	z-index: 1000;
	left: .5rem;
	top: calc(100% - .5rem - 1px);
}

.filter-dropdown ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.filter-dropdown li {
	padding: .5rem 0;
	display: flex;
	font-size: .875rem;
}

.filter-dropdown .ei-option {
	color: #4a4f54;
}

.filter-dropdown input[type=checkbox] {
	margin: 0 .5rem 0 0;
}

.filter-dropdown input[type=checkbox],.filter-dropdown input[type=radio],.filter-dropdown label {
	cursor: pointer;
}

.filter-dropdown input[type=text] {
	max-width: 100%;
	border: 0;
	padding: .75rem;
	margin: .5rem 0 0 0;
	font-size: .875rem;
}

.filter-dropdown a {
	display: block;
	padding: 1rem .5rem;
	color: #fff;
	border-bottom: 1px solid rgba(255,255,255,.2);
}

.filter-dropdown a.plus-link {
	text-align: right;
}

.filter-dropdown a:last-of-type {
	border-bottom: 0;
}

@media screen and (max-width:63.9375rem) {
	.filter-bar .count {
		padding: 1.5rem;
	}

	.filter-bar .label {
		padding: 1.5rem;
	}

	.filter-bar .drop-button,.filter-bar .overflow-button {
		padding: 1.5rem;
	}
}

@media screen and (max-width:47.9375rem) {
	.filter-bar .count {
		flex: 1;
	}

	.filter-bar .filters {
		display: none;
		flex-basis: 100%;
		width: 100%;
	}

	.filter-bar .label {
		display: none;
	}

	.filter-bar .overflow-button {
		display: block;
	}

	.filter-bar .dropdown {
		flex-basis: 100%;
		width: 100%;
	}

	.filter-bar .drop-button {
		display: block;
	}

	.filter-bar .drop-button i {
		float: right;
	}
}

.feature-tiles {
	display: flex;
}

.feature-tile {
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	flex: 1;
	display: flex;
	width: 100%;
	align-items: center;
	justify-content: center;
	padding: 4rem 0;
}

.feature-tile .content {
	background-color: rgba(0,0,0,.4);
	color: #fff;
	text-align: center;
	font-size: 2rem;
	line-height: 1em;
	font-weight: 300;
	padding: 4rem;
	max-width: 45rem;
	width: 100%;
	position: relative;
	transition: background-color .1s;
}

.feature-tile .content h1,.feature-tile .content h2 {
	color: #fff;
	font-weight: 400;
}

.feature-tile .content i {
	display: block;
	font-size: 3rem;
	margin: 3rem 0 0 0;
	color: #fff;
	transform-origin: center;
	transition: transform .1s;
}

.feature-tile .content:hover {
	background-color: rgba(0,0,0,.6);
}

.feature-tile .content:hover i {
	transform: scale(1.2);
}

.feature-tile .content.smaller i {
	font-size: 2rem;
	margin: 1rem 0 0 0;
}

.feature-tile h1,.feature-tile h2.big,.feature-tile .header {
	font-size: 4rem;
	line-height: 1em;
	font-weight: 400;
}

.page-header .feature-tile {
	padding: 6rem 0;
}

.page-header .feature-tile h1,.page-header .feature-tile .header {
	margin: 1rem 0 0 0;
}

.page-header .feature-tile .content:hover {
	background-color: rgba(0,0,0,.4);
}

@media screen and (max-width:79.9375rem) {
	.feature-tile h1 {
		font-size: 2.5rem;
	}

	.feature-tile .content {
		font-size: 1.25rem;
	}
}

@media screen and (max-width:39.9375rem) {
	.feature-tile .content {
		padding: 2rem;
	}

	.feature-tile h1 {
		font-size: 2rem;
	}
}

.featured-header {
	padding: 3rem 2rem 2rem 2rem;
	text-align: center;
	font-size: 1.125rem;
	color: #666;
}

.featured-header h1,.featured-header h2,.featured-header h3 {
	color: #4a4f54;
	font-weight: 700;
	font-size: 2.25rem;
	margin: 0 0 .5em 0;
	padding-left: 40px;
	padding-right: 40px;
}

.featured-header .sub-header {
	text-align: center;
	font-size: 1.125rem;
	color: #666;
	font-weight: normal;
}

.featured-header .slick-arrow {
	outline: 0;
	position: absolute;
	box-sizing: content-box;
	top: 3.25rem;
	font-size: 2rem;
	line-height: 1em;
	height: 1em;
	width: 1em;
	padding: 0 1rem 1rem 1rem;
	display: block;
	color: #999;
	cursor: pointer;
}

@media screen and (max-width:39.9375em) {
	.featured-header .slick-arrow {
		padding: 1rem;
	}
}

.featured-header .slick-arrow:hover {
	color: #666;
}

.featured-header .slick-next {
	right: 2rem;
}

.featured-header .slick-prev {
	left: 2rem;
}

.featured-cells {
	flex: 1;
	height: auto !important;
}

.featured-cells>.cell {
	display: flex;
	flex-direction: column;
}

.featured-cells>.cell>a {
	display: block;
	padding: 2rem 0;
	font-size: .875rem;
	color: #666;
}

.featured-cells>.cell>a strong {
	display: block;
	font-size: 1rem;
}

.featured-cells>.cell>a:hover {
	color: #000;
	text-decoration: none;
}

.featured-cells .image {
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	flex: 1;
	position: relative;
	min-height: 25rem;
}

.featured-cells .image i {
	display: block;
	padding: 1em;
	background-color: rgba(0,0,0,.4);
	color: #fff;
	width: 1em;
	height: 1em;
	line-height: 1em;
	text-align: center;
	box-sizing: content-box;
}

.featured-cells .image:hover~a {
	color: #000;
}

@media screen and (max-width:39.9375rem) {
	.featured-header {
		padding: 3rem 0;
	}

	.featured-header h2 {
		font-size: 1.75rem;
		padding: 0 2rem;
	}

	.featured-header .slick-arrow {
		top: 2.4rem;
		font-size: 1.5rem;
	}

	.featured-header .slick-next {
		right: 1rem;
	}

	.featured-header .slick-prev {
		left: 1rem;
	}

	.featured-cells {
		width: 100%;
		flex-basis: 100%;
	}

	.featured-cells>.cell {
		text-align: center;
	}
}

@media screen and (max-width:29.9375rem) {
	.featured-header h2 {
		font-size: 1.25rem;
	}

	.featured-header .slick-next {
		right: 0;
	}

	.featured-header .slick-prev {
		left: 0;
	}
}

.tiles {
	outline: 0;
}

.tiles .slick-slide {
	padding: 0 1rem;
	outline: 0;
}

.toilet-tiles .tile {
	max-height: 250px;
}

.tile {
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	max-height: 450px;
}

.tile::before {
	content: "";
	display: block;
	padding-top: 100%;
}

.tile .content {
	max-width: calc(100% - 4rem);
	width: 100%;
	background-color: rgba(0,0,0,.4);
	color: #fff;
	text-align: center;
	font-size: 1.25rem;
	line-height: 1em;
	padding: 2rem;
	transition: background-color .1s;
}

.tile .content i {
	display: block;
	padding: 1rem 0 0 0;
}

.tile:hover .content {
	background-color: rgba(0,0,0,.6);
}

.tile.large .content {
	font-size: 2rem;
	padding: 3rem 2rem;
}

@media screen and (max-width:63.9375rem) {
	.tiles {
		margin-bottom: -2rem;
	}

	.tile {
		margin-bottom: 2rem;
	}
}

@media screen and (max-width:39.9375rem) {
	.tile.large .content {
		font-size: 1.25rem;
	}
}

.links a {
	display: block;
	padding: 2rem;
	text-align: center;
	color: #fff;
	font-size: 1.5rem;
}

.links a::after {
	font-family: "Font Awesome 5 Pro";
	font-weight: 900;
	content: "";
	display: block;
	float: right;
	transform-origin: center;
	transition: transform .2s;
}

.links a:hover {
	opacity: .8;
	text-decoration: none;
}

.links>.cell:nth-child(3n-2) a {
	background-color: #000;
}

.links>.cell:nth-child(3n-1) a {
	background-color: #ddd;
	color: #666;
}

.links>.cell:nth-child(3n) a {
	background-color: #231f20;
}

.links.droppy a {
	font-size: 1rem;
	padding: 1.5rem;
}

.links.droppy a::after {
	font-family: "Font Awesome 5 Pro";
	font-weight: 900;
	content: "";
}

@media screen and (max-width:79.9375rem) {
	.links a {
		font-size: 1.25rem;
	}
}

@media screen and (max-width:39.9375rem) {
	.links a {
		padding: 1.5rem;
		font-size: .875rem;
	}
}

.newsletter {
	display: flex;
	flex-wrap: wrap;
	border: 1px solid #ddd;
	transition: border-color .1s;
}

.newsletter.focused {
	border-color: #000;
}

.newsletter input,.newsletter a {
	border: 0;
	line-height: 1.5rem;
	height: auto;
	box-sizing: content-box;
	padding: 2rem;
	min-width: 0;
}

.newsletter input {
	flex: 1;
	outline: 0;
}

.newsletter a {
	color: #333;
	font-size: 1.5rem;
	transition: transform .1s,color .1s;
	transform-origin: center;
}

.newsletter a:hover {
	transform: scale(1.2);
	color: #000;
}

.newsletter .validation-message {
	flex-basis: 100%;
}

@media screen and (max-width:39.9375rem) {
	.newsletter input,.newsletter a {
		padding: 1rem;
		font-size: 1rem;
	}
}

ul.social-links {
	list-style: none;
	margin: 0 0 0 -1rem;
	padding: 0;
}

ul.social-links:last-child {
	margin: 4rem 0 0 -1rem;
}

ul.social-links li {
	display: inline;
}

ul.social-links li.extra {
	float: right;
}

ul.social-links li.extra a {
	width: auto;
	height: auto;
	font-size: 1.125rem;
	line-height: 1.5rem;
	font-weight: 700;
	color: #4a4f54;
}

ul.social-links li.extra a:hover {
	color: #000;
}

ul.social-links li.extra a i {
	margin: 0 .5rem 0 0;
}

ul.social-links a {
	display: inline-block;
	box-sizing: content-box;
	color: #ccc;
	font-size: 1.5rem;
	width: 1em;
	height: 1em;
	padding: 1rem;
	line-height: 1em;
	text-align: center;
	transform-origin: center;
	transition: transform .1s,color .1s;
}

ul.social-links a:hover {
	color: #000;
	text-decoration: none;
	transform: scale(1.2);
}

ul.social-links .pin_it_iframe_widget {
	display: none;
}

@media screen and (max-width:47.9375rem) {
	ul.social-links {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		text-align: center;
		margin: 0;
	}

	ul.social-links li {
		flex: 1;
		flex-basis: 25%;
	}

	ul.social-links li.extra {
		flex-basis: 50%;
	}

	ul.social-links a {
		display: block;
		width: auto;
	}
}

@media screen and (max-width:39.9375rem) {
	ul.social-links li.extra {
		flex-basis: 100%;
		text-align: right;
	}
}

.tab-control .tab-nav {
	display: flex;
	flex-wrap: wrap;
	margin: 2rem 0;
	border-bottom: 1px solid #ddd;
}

.tab-control .tab-nav a {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 1;
	padding: 1.25rem;
	text-align: center;
	color: #999;
	font-size: .875rem;
}

.tab-control .tab-nav a:hover {
	background-color: #eee;
	text-decoration: none;
}

.tab-control .tab-nav a.current {
	cursor: default;
	background-color: #4a4f54;
	color: #fff;
}

.tab-control .tab {
	display: none;
}

.tab-control .tab:first-of-type {
	display: block;
}

.tab-control .tab ul {
	line-height: 2em;
}

@media screen and (max-width:39.9375rem) {
	.tab-control .tab-nav a {
		flex-basis: 100%;
	}
}

.download-group-inner {
	display: none;
	padding: 0 0 2rem 0;
}

a.download-link,a.download-group-header {
	display: block;
	font-weight: 700;
}

a.download-group-header {
	padding: 1.5rem 0;
	border-top: 1px solid #ddd;
	color: #999;
	font-size: 1.125rem;
	font-weight: 400;
}

a.download-group-header::after {
	font-family: "Font Awesome 5 Pro";
	font-weight: 900;
	content: "";
	display: inline-block;
	padding: 0 1rem;
	float: right;
	transform-origin: center;
	transition: transform .2s;
}

a.download-group-header.expanded::after {
	transform: rotate(180deg);
}

.rollover {
	position: absolute;
	top: 0;
	right: 1rem;
	bottom: 7.5rem;
	left: 1rem;
	background: rgba(0,0,0,.6);
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 2rem;
	color: #fff;
	font-weight: 600;
	opacity: 0;
	visibility: hidden;
	transition: visibility .1s,opacity .1s;
}

@media screen and (max-width:29.9375rem) {
	.rollover {
		display: none;
	}
}

.rollover[data-visible=false] {
	display: none;
}

.feature-block:hover .rollover {
	opacity: 1;
	visibility: visible;
}

.spotlight-container {
	position: relative;
	z-index: 1;
}

.home-slider {
	display: block;
	outline: 0;
}

.home-slider .feature-tile {
	padding: 8rem 0;
	min-height: 45rem;
}

.home-slider .slide {
	outline: 0;
}

@media screen and (max-width:565px) {
	.home-slider .slide .content {
		padding: 2rem 3rem;
	}
}

.home-slider button.slick-arrow {
	font-size: 3rem;
	display: block;
	position: absolute;
	top: calc(50% - .5em);
	line-height: 1em;
	height: 1em;
	width: 1em;
	box-sizing: content-box;
	text-shadow: 0 0 10px rgba(0,0,0,.5);
	color: #fff;
	cursor: pointer;
	z-index: 100;
	outline: 0;
}

.home-slider button.slick-arrow:hover {
	color: #000;
}

.home-slider button.slick-prev {
	left: 1em;
}

@media screen and (max-width:840px) {
	.home-slider button.slick-prev {
		left: .25em;
	}
}

.home-slider button.slick-next {
	right: 1em;
}

@media screen and (max-width:840px) {
	.home-slider button.slick-next {
		right: .25em;
	}
}

@media screen and (max-width:63.9375rem) {
	.home-slider button.slick-arrow {
		font-size: 2rem;
	}
}

.navigation-wrap .explore-header {
	display: none;
}

.navigation-wrap .explore-header a {
	background-color: #000;
	font-size: 1.2rem;
	padding: 1rem 1rem;
	display: block;
	text-align: center;
	color: #fff;
	transition: opacity .1s,background-color .1s;
	text-decoration: none;
}

.navigation-wrap .explore-header a:after {
	font-family: "Font Awesome 5 Pro";
	font-weight: 900;
	content: "";
	display: inline-block;
	transform-origin: center;
	transition: transform .2s;
	margin-left: 10px;
	font-size: .875rem;
}

.navigation-wrap .explore-header.expanded a:after {
	transform: rotate(180deg);
}

.navigation>.cell {
	position: relative;
}

.navigation>.cell>a {
	display: block;
	padding: 1.5rem;
	text-align: center;
	color: #fff;
	transition: opacity .1s,background-color .1s;
}

.navigation>.cell>a::after {
	font-family: "Font Awesome 5 Pro";
	font-weight: 900;
	content: "";
	display: block;
	float: right;
	transform-origin: center;
	transition: transform .2s;
}

.navigation>.cell>a:hover {
	opacity: .8;
	text-decoration: none;
}

.navigation>.cell>a.expanded {
	background-color: #4a4f54 !important;
	color: #fff !important;
}

.navigation>.cell>a.expanded:hover {
	opacity: 1;
}

.navigation>.cell>a.expanded::after {
	transform: rotate(180deg);
}

.navigation>.cell:nth-child(4n-3)>a {
	background-color: #000;
}

.navigation>.cell:nth-child(4n-2)>a {
	background-color: #231f20;
}

.navigation>.cell:nth-child(4n-1)>a {
	background-color: #ddd;
	color: #666;
}

.navigation>.cell:nth-child(4n)>a {
	background-color: #4a4f54;
}

.navigation .children {
	display: none;
	background-color: #4a4f54;
	padding: 3rem 4rem 5rem 4rem;
	position: absolute;
	top: 100%;
	width: 100%;
	z-index: 10000;
	transition: background-color .1s;
}

.navigation .children a {
	display: block;
	color: #fff;
	line-height: 1em;
	padding: .5rem 0;
}

.navigation .children a:hover {
	text-decoration: underline;
}

@media screen and (max-width:79.9375rem) {
	.navigation>.cell>a {
		font-size: .875rem;
		padding: 1.5rem 1rem;
	}
}

@media screen and (min-width:40em) {
	.navigation {
		display: flex !important;
	}
}

@media screen and (max-width:39.9375rem) {
	.navigation-wrap {
		margin-bottom: 25px;
	}

	.navigation-wrap .explore-header {
		display: block;
	}

	.navigation-wrap .navigation {
		display: none;
	}

	.navigation-wrap .navigation .drop-toggle a {
		background: #4a4f54;
		color: #fff;
		text-align: left;
		border-bottom: 1px solid rgba(255,255,255,.1);
		padding: 1.2rem 1rem;
	}

	.navigation-wrap .navigation .drop-toggle a span {
		font-weight: bold;
	}

	.navigation-wrap .navigation .drop-toggle a.expanded {
		background: #000 !important;
	}

	.navigation-wrap .navigation .drop-toggle .children {
		padding: 1rem 0;
		font-size: .875rem;
		position: relative;
		background: #000;
	}

	.navigation-wrap .navigation .drop-toggle .children a {
		padding: .75rem 1rem;
		background: #000;
		border: none;
	}

	.navigation-wrap .navigation .drop-toggle .children a:before {
		content: ">";
		display: inline-block;
		margin-right: 10px;
		vertical-align: 1px;
	}
}

.product-highlight {
	color: #999;
	padding: 4rem 0 4rem 2rem;
}

.product-highlight h2 {
	font-size: 3rem;
	font-weight: 700;
	margin: 0 0 .25em 0;
	color: #333;
}

.product-highlight .sub-header {
	display: block;
	font-size: 2rem;
}

.product-highlight p {
	font-size: 1.25rem;
}

.product-highlight a.button {
	margin: 4rem 0 0 0;
}

@media screen and (max-width:63.9375rem) {
	.product-highlight {
		padding: 0 0 4rem 0;
		text-align: center;
	}

	.product-highlight h2 {
		font-size: 2.5rem;
		margin: 0;
	}

	.product-highlight .sub-header {
		font-size: 1.25rem;
		margin: 2rem 0;
	}

	.product-highlight p {
		font-size: 1rem;
		max-width: 45rem;
		display: block;
		margin: 1em auto;
	}
}

.tier-navigation {
	position: relative;
	z-index: 1000;
}

.breadcrumbs a {
	display: inline-block;
	padding: 2rem;
	font-size: .875rem;
	color: #999;
}

.breadcrumbs a:hover {
	color: #666;
}

.breadcrumbs a:last-of-type {
	font-weight: 700;
	color: #000;
}

@media screen and (max-width:47.9375rem) {
	.breadcrumbs {
		display: none;
	}
}

.page-content .content {
	color: #666;
	font-size: .875rem;
}

.page-content .content .title {
	font-size: 2.5rem;
	line-height: 1em;
	color: #4a4f54;
	margin: 2rem 0 0 0;
}

.page-content .content .title span:nth-child(6n-5) {
	color: #ff647d;
}

.page-content .content .title span:nth-child(6n-4) {
	color: #ff7f40;
}

.page-content .content .title span:nth-child(6n-3) {
	color: #ffd400;
}

.page-content .content .title span:nth-child(6n-2) {
	color: #d9d9d9;
}

.page-content .content .title span:nth-child(6n-1) {
	color: #769d91;
}

.page-content .content .title span:nth-child(6n) {
	color: #7ba0c4;
}

.page-content .content .sub-title {
	font-size: 1.25rem;
	font-weight: 300;
	color: #666;
	margin: 1rem 0 0 0;
}

.page-content .content .detail-content {
	margin: 3rem 0;
}

.page-content.contact-content .content,.page-content.contact-content .highlight {
	font-size: 1.125rem;
}

@media screen and (max-width:39.9375rem) {
	.page-content.contact-content table tr,.page-content.contact-content table td {
		display: block;
		width: 100%;
	}
}

.page-content .highlight {
	font-weight: 700;
	font-size: 1rem;
	padding: 0 0 4rem 0;
	border-bottom: 3px solid #000;
	margin: 0 0 4rem 0;
}

.page-content .highlight.contact {
	font-weight: normal;
}

.page-content .highlight p:last-of-type {
	margin-bottom: 0;
}

.page-content h1,.page-content h2,.page-content h3 {
	font-weight: 700;
	color: #4a4f54;
}

.page-content p~h1,.page-content p~h2,.page-content p~h3 {
	margin-top: 2rem;
}

.page-content .image iframe {
	max-width: 100%;
}

.staff {
	text-align: center;
	padding: 0 0 5rem;
	color: #333;
}

.staff .name {
	font-weight: 700;
	padding: 2rem 0 0 0;
}

.staff .position {
	color: #999;
}

.faq {
	padding: 3rem 0;
	border-bottom: 1px solid #ddd;
	color: #4a4f54;
}

.faq .title {
	font-size: 2rem;
	font-weight: 700;
	margin: 0 0 1rem 0;
}

.faq .answer {
	color: #999;
	font-size: 1.125rem;
}

.faq.accordian {
	padding-top: 2rem;
	padding-bottom: 0;
}

.faq.accordian .title {
	font-size: 1.4rem;
	font-weight: 700;
	margin: 0 0 2rem 0;
	cursor: pointer;
	position: relative;
}

.faq.accordian .title:after {
	position: absolute;
	top: 0;
	right: 0;
	font-family: "Font Awesome 5 Pro";
	font-weight: 600;
	content: "";
}

.faq.accordian .answer {
	color: #999;
	font-size: 1rem;
	display: none;
	margin: 0 0 2rem 0;
}

.faq.accordian.open .title:after {
	content: "";
}

.faq.accordian.open .answer {
	display: block;
}

@media screen and (max-width:39.9375rem) {
	.faq .title {
		font-size: 1.5rem;
	}

	.faq .answer {
		font-size: 1rem;
	}
}

.history-slider {
	outline: 0;
}

.history-slider .slick-dots {
	list-style: none;
	margin: 5rem -.5rem 0 -.5rem;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.history-slider .slick-dots li {
	cursor: pointer;
	flex: 1;
	min-width: calc(16.6666666667% - 1rem);
	max-width: 15rem;
	margin: 1rem .5rem 0 .5rem;
}

.history-slide {
	outline: 0;
	background-color: #4a4f54;
}

.history-slide .title {
	font-size: 2.5rem;
	padding: 0 0 2rem 0;
}

.page-content .history-slide .title {
	color: #fff;
}

.history-slide .content {
	padding: 4rem 4rem 8rem 4rem;
	color: #fff;
	font-size: 1rem;
	display: flex;
	flex-direction: column;
	justify-content: center;
	position: relative;
}

.history-slide .arrows {
	text-align: center;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
}

.history-slide .arrows a {
	outline: 0;
	color: #fff;
	font-size: 1.25rem;
	padding: 1.5rem;
	display: inline-block;
}

@media screen and (max-width:63.9375rem) {
	.history-slider .slick-dots li {
		min-width: calc(33.3333333333% - 1rem);
	}
}

@media screen and (max-width:29.9375rem) {
	.history-slider {
		margin: 0 -2rem;
	}

	.history-slider .slick-dots {
		margin: 0;
		padding: 0 .5rem;
	}

	.history-slider .slick-dots li {
		min-width: calc(50% - 1rem);
	}

	.history-slide .content {
		padding: 2rem 2rem 5rem 2rem;
	}
}

.feature-block {
	position: relative;
	text-align: center;
}

.feature-block:not(.no-hover):hover .title {
	color: #000;
}

.feature-block .title,.feature-block p>strong:first-child {
	font-size: 1.5rem;
	font-weight: 700;
	color: #333;
	margin: 2rem 0 0 0;
}

.feature-block .title+img,.feature-block p>strong:first-child+img {
	margin: 2rem 0 0 0;
}

.feature-block .title.small,.feature-block p>strong:first-child.small {
	font-size: 1rem;
}

.feature-block .title.small+.description,.feature-block p>strong:first-child.small+.description {
	margin-top: 0;
}

.feature-block .description,.feature-block p {
	color: #999;
	margin: 1rem 0 4rem 0;
}

.feature-block .feature-image {
	min-height: 300px;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.feature-block.large-6 .feature-image {
	min-height: 400px;
}

.feature-block.large-8 {
	padding-bottom: 2rem;
}

.feature-block.large-8 .feature-image {
	min-height: 500px;
}

.feature-block.split-feature {
	display: flex;
	padding-bottom: 4rem;
}

.feature-block.split-feature.left-product {
	flex-direction: row-reverse;
}

.feature-block.split-feature .feature-image {
	flex: 1;
}

.feature-block.split-feature .feature-content {
	min-width: 20rem;
	padding: 3rem;
	flex: 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.model-code {
	font-weight: 700;
	display: block;
	margin: 2rem 0 0 0;
}

@media screen and (max-width:63.9375rem) {
	.feature-block.large-6 .feature-image {
		min-height: 300px;
	}

	.feature-block.large-8 .feature-image {
		min-height: 400px;
	}

	.feature-block.split-feature {
		display: block;
		padding-bottom: 0;
	}

	.feature-block.split-feature .feature-content {
		padding: 0;
		min-width: 0;
		display: block;
	}
}

@media screen and (max-width:47.9375rem) {
	.feature-block .feature-image,.feature-block.large-6 .feature-image,.feature-block.large-8 .feature-image {
		min-height: 200px;
	}
}

.related-range {
	margin: 2rem 0;
	position: relative;
}

.related-range .text {
	padding: 2rem 3rem 0 0;
}

.related-range .text p {
	margin: 0;
}

.related-range .name {
	display: block;
	font-size: 1.125rem;
	font-weight: 700;
	color: #4a4f54;
	margin: 0 0 2.5rem 0;
}

.product-actions {
	text-align: center;
	display: flex;
	justify-content: center;
	padding: 1rem;
}

.product-actions a {
	display: flex;
	align-items: center;
	color: #666;
	padding: 1rem;
}

.product-actions a:hover {
	text-decoration: none;
	color: #000;
}

.product-actions a i {
	color: #000;
	display: block;
	margin: 0 1rem 0 0;
}

.product-actions+a.border-link {
	margin-top: 0;
}

@media screen and (max-width:39.9375rem) {
	.related-range .text {
		padding: 2rem 0 0 0;
	}
}

.filter-summary {
	padding: 3rem 0;
	font-size: 1.25rem;
	color: #4a4f54;
}

.filter-summary span {
	font-size: 1.25em;
	font-weight: 700;
}

@media screen and (max-width:47.9375rem) {
	.filter-summary {
		font-size: 1rem;
	}
}

.sector-features .feature-content p {
	margin: 1rem 0 0 0;
}

.sector-features .feature-content p>strong:first-child {
	display: block;
	margin: 0 0 1rem 0;
}

.template-login-register .cell.error {
	margin: 0 0 2rem 0;
}

.sign-in h2,.sign-up h2,.signed-up h2 {
	color: #4a4f54;
	font-weight: 700;
	font-size: 2.5rem;
	display: block;
	flex-basis: 100%;
	margin: 0 0 1rem 0;
}

.sign-in .alert,.sign-up .alert,.signed-up .alert {
	margin: 2rem 0;
}

.sign-in a.plus-link,.sign-up a.plus-link,.signed-up a.plus-link {
	float: right;
	margin-left: auto;
}

.sign-in.cell {
	padding-right: 10rem;
}

.sign-in fieldset {
	margin-top: 1rem;
}

.sign-in fieldset:first-of-type {
	margin-top: 2rem;
}

.sign-in a.forgot {
	display: inline-block;
	padding: 1rem;
	font-weight: 700;
	font-size: .875rem;
	line-height: 1rem;
	color: #ccc;
}

.sign-up {
	display: flex;
	flex-flow: row wrap;
}

.sign-up fieldset {
	flex-basis: calc(50% - .5rem);
	margin-top: 1rem;
}

.sign-up fieldset:nth-child(2n) {
	padding-right: .5rem;
}

.sign-up fieldset:nth-child(2n-1) {
	padding-left: .5rem;
}

.sign-up fieldset.full {
	flex-basis: 100%;
	padding-right: 0;
	padding-left: 0;
}

.sign-up p {
	color: #4a4f54;
}

.sign-up p:first-of-type {
	margin-top: 0;
}

.sign-up .marketing-consent {
	font-size: .75rem;
	font-weight: 400;
	border-bottom: 1px solid #ddd;
	padding: 0 0 2rem 0;
	margin: 2rem 0;
}

@media screen and (max-width:63.9375rem) {
	.sign-in {
		padding-bottom: 4rem;
	}
}

@media screen and (max-width:39.9375rem) {
	.sign-in.cell {
		padding-right: 1rem;
	}

	.sign-up fieldset {
		flex-basis: 100%;
	}

	.sign-up fieldset:nth-child(2n),.sign-up fieldset:nth-child(2n-1) {
		padding-right: 0;
		padding-left: 0;
	}
}

.my-details-form fieldset {
	position: relative;
}

.my-details-form fieldset input:not([type=checkbox]),.my-details-form fieldset select {
	border-top-color: #fff;
	border-left-color: #fff;
	border-right-color: #fff;
	background-color: transparent;
	padding-right: 3rem;
}

.my-details-form fieldset select {
	cursor: pointer;
	appearance: none;
	-webkit-appearance: none;
}

.my-details-form fieldset::after {
	position: absolute;
	right: 1rem;
	top: .875rem;
	z-index: -1;
}

.my-details-form fieldset:not(.select)::after {
	font-family: "Font Awesome 5 Pro";
	font-weight: 900;
	content: "";
	color: #ffd400;
}

.my-details-form fieldset.select::after {
	font-family: "Font Awesome 5 Pro";
	font-weight: 900;
	content: "";
	color: #000;
}

.details-actions {
	display: flex;
}

.details-actions span.ei-c {
	display: block;
	padding: 0 3rem 0 0;
}

.details-actions a.plus-link {
	flex: 1;
	text-align: right;
	margin: -1rem;
}

@media screen and (max-width:79.9375rem) {
	.details-actions {
		display: block;
	}

	.details-actions span.ei-c {
		padding: 0 0 1rem 0;
	}

	.details-actions a.plus-link {
		float: right;
		margin: 1rem 0 0 0;
	}
}

@media screen and (max-width:63.9375rem) {
	.my-details-form fieldset {
		margin: 2rem 0 0 0;
	}
}

.template-news-media .latest-content {
	padding-right: 6rem;
}

.template-news-media .latest-content .pre-title {
	font-size: 1.5rem;
	font-weight: 300;
	color: #999;
	margin: 0 0 2.5rem 0;
	display: block;
}

.template-news-media .latest-content h2 {
	color: #4a4f54;
	font-size: 2rem;
	font-weight: 700;
	display: block;
	padding: 0 0 3rem 0;
	border-bottom: 2px solid #000;
	margin: 0 0 3rem 0;
}

.template-news-media .latest-content p {
	color: #999;
}

.template-news-media .latest-content a.plus-link {
	margin: 0 0 0 -1rem;
}

.template-news-media .feature-block .description {
	max-width: 30rem;
	margin: 2rem auto 1rem auto;
}

.template-news-media .feature-block .buttons {
	margin: 0 0 2rem 0;
}

.tweets {
	margin: 2rem 0 0 0;
	background-color: #4a4f54;
	padding: 4rem 6rem;
	color: #fff;
	overflow: auto;
}

.tweets i {
	font-size: 3rem;
}

.tweets .tweet {
	margin: 2rem 0 0 0;
}

@media screen and (max-width:79.9375rem) {
	.template-news-media .latest-content {
		padding-right: 1rem;
	}

	.template-news-media .latest-image {
		text-align: center;
		padding-top: 2rem;
	}
}

@media screen and (max-width:39.9375rem) {
	.tweets {
		padding: 4rem 2rem;
		margin: 2rem -2rem 0 -2rem;
	}
}

.article-row {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}

.article-row .article-thumb {
	flex: auto;
	max-width: 18rem;
	text-align: center;
}

.article-row .article-thumb img {
	width: 100%;
}

.article-row .article-preview {
	flex-basis: 75%;
	flex: 1;
	padding: 3rem;
}

.article-row .article-preview h2 {
	font-size: 2rem;
	font-weight: 700;
	color: #4a4f54;
}

.article-row .article-preview .date {
	color: #000;
	font-size: 1.125rem;
	display: block;
}

.article-row .article-preview p {
	color: #999;
	font-size: 1.125rem;
}

.article-row .article-preview a.plus-link {
	margin: 0 0 0 -1rem;
}

@media screen and (max-width:89.9375rem) {
	.article-row .article-thumb {
		flex-basis: 100%;
		max-width: none;
	}

	.article-row .article-thumb img {
		width: 100%;
	}

	.article-row .article-preview {
		flex-basis: 100%;
		padding: 4rem 0;
	}
}

.feature-block.video .image {
	position: relative;
}

.feature-block.video .image:not(.novideo)::before {
	font-family: "Font Awesome 5 Pro";
	font-weight: 900;
	content: "";
	box-sizing: content-box;
	width: 1em;
	height: 1em;
	line-height: 1em;
	text-align: center;
	display: block;
	position: absolute;
	font-size: 1.5rem;
	color: #4a4f54;
	top: calc(50% - 1.5em);
	left: calc(50% - 1.5em);
	background-color: #fff;
	border-radius: 100%;
	padding: 1em;
}

.feature-block.video .title {
	font-size: 1rem;
}

.feature-block.video .description {
	margin-top: 0;
}

.contact-form h2 {
	margin: 0 0 4rem 0;
	font-size: 2rem;
}

.contact-form .cell {
	text-align: left;
}

.contact-form .faint {
	color: #999;
	display: inline-block;
	padding: 2rem 0 0 0;
}

.contact-form a.plus-link {
	float: right;
	margin: 1rem 0 0 auto;
}

.contact-form .contact-message {
	height: 100%;
	position: absolute;
}

@media screen and (max-width:63.9375rem) {
	.contact-form .contact-middle {
		padding: 1rem;
	}

	.contact-form .contact-message {
		position: relative;
		height: auto;
	}
}

.delivery-option .title {
	color: #4a4f54;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1em;
}

.delivery-option .sub-title {
	font-size: 1.75rem;
	color: #999;
	margin: 1rem 0 0 0;
	line-height: 1em;
}

.delivery-option .description {
	color: #999;
	font-size: 1.125rem;
}

.delivery-option .delivery-links>a {
	margin-right: 2rem;
}

.delivery-option .delivery-links>a:first-of-type {
	padding-left: 0;
}

@media screen and (max-width:39.9375rem) {
	.delivery-option .title {
		font-size: 1.75rem;
	}

	.delivery-option .sub-title {
		font-size: 1.5rem;
	}

	.delivery-option .delivery-links>a {
		display: block;
		margin: 0;
		padding-left: 0;
	}
}

.download-categories {
	display: flex;
	flex-wrap: wrap;
}

.download-categories a {
	display: block;
	flex: 0 0 auto;
	width: calc(20% - .5rem);
	background-color: #4a4f54;
	color: #fff;
	padding: 1rem;
	text-align: center;
	font-size: 1.125rem;
	margin: .25rem;
}

.download-categories a:hover {
	text-decoration: none;
	opacity: .8;
}

.download-categories a.current {
	background-color: #000;
}

.downloads .description {
	margin: 1rem 0;
}

.downloads a.plus-link {
	margin: 0 0 4rem 0;
}

.downloads .feature-block .title {
	word-break: break-word;
}

@media screen and (max-width:63.9375rem) {
	.download-categories a {
		width: calc(50% - .5rem);
	}
}

@media screen and (max-width:29.9375rem) {
	.download-categories a {
		font-size: 1rem;
		padding: .75rem 1rem;
		width: 100%;
		margin: .25rem 0;
	}
}

.project-tile .image-options {
	visibility: hidden;
	opacity: 0;
	transition: visibility .1s,opacity .1s;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	background-color: rgba(0,0,0,.5);
}

.project-tile .image-options a {
	display: inline-block;
	padding: 1rem;
	color: #fff;
}

.project-tile .image-options a:hover {
	text-decoration: none;
	color: #000;
}

.project-tile .feature-image {
	position: relative;
}

.project-tile .feature-image:hover .image-options {
	visibility: visible;
	opacity: 1;
}

.project-tile .title {
	font-size: 1rem;
	padding: 0 0 1rem 0;
}

.project-tile .dates {
	display: flex;
	padding: 0 0 4rem 0;
}

.project-tile .dates div {
	flex: 1;
}

.project-tile .dates span {
	display: block;
	color: #999;
}

.project-tile .dates span.green {
	color: #000;
}

@media screen and (max-width:63.9375rem) {
	.project-tile .image-options {
		visibility: visible;
		opacity: 1;
	}
}

.sample {
	text-align: center;
	padding: 0 0 3rem 0;
}

.sample img {
	width: 120px;
}

.sample img.large {
	width: 160px;
}

.sample .title {
	color: #4a4f54;
	font-weight: 700;
	padding: 1rem 0 0 0;
}

.sample .actions a {
	display: block;
	font-size: .875rem;
	color: #4a4f54;
	line-height: 2em;
}

.sample .actions a.checkout {
	color: #000;
}

.sample .actions a i {
	margin: 0 .75em 0 0;
}

@media screen and (max-width:39.9375rem) {
	.sample-form-right {
		padding-top: 1rem;
	}
}

.colour-popup img {
	cursor: pointer;
}

#ep-window-colour-popup-window .ep-content {
	padding: 0;
}

#ep-window-colour-popup-window img {
	width: 480px;
	height: 480px;
}

#ep-window-colour-popup-window .colour-info {
	padding: 10px 15px;
	font-size: 16px;
	line-height: 26px;
}

.page-navigation {
	text-align: center;
	padding: 3rem 0 0 0;
}

.page-navigation a.button {
	padding: 1rem 2rem;
	margin: 0 .25rem;
}

.page-navigation a.button i {
	margin: 0;
}

.page-navigation a.button[data-disabled=true] {
	background-color: #eee;
	color: #ccc;
	cursor: default;
	pointer-events: none;
}

.account-form h2 {
	color: #4a4f54;
	font-weight: 700;
	font-size: 2.5rem;
	margin: 0 0 1rem 0;
}

.account-form p {
	color: #4a4f54;
	margin: 0 0 2rem 0;
}

.account-form a.plus-link {
	float: right;
	margin: 1rem 0 0 0;
}

.project-search {
	display: flex;
	flex-flow: row nowrap;
	padding: 0 0 2rem 0;
}

.project-search input {
	flex: 1;
	border: 0;
	border-bottom: 2px solid #eee;
}

.project-search input:focus {
	border-color: #000;
}

.project-search a {
	box-sizing: content-box;
	width: 1em;
	height: 1em;
	line-height: 1em;
	text-align: center;
	font-size: 1.5rem;
	padding: .5em;
	transform-origin: center;
	transition: transform .1s;
}

.project-search a:hover {
	transform: scale(1.2);
}

.project-list .project {
	display: flex;
	flex-flow: row wrap;
	color: #4a4f54;
	padding: 2rem 0;
}

.project-list .project .content {
	flex: 1;
}

.project-list .project .name {
	line-height: 1em;
	font-size: 1.5rem;
	font-weight: bold;
}

.project-list .project .name a {
	background-color: #000;
	color: #fff;
	font-size: 1rem;
	padding: .75rem 1rem;
	border-radius: 4px;
	line-height: 1em;
	margin: 0 0 0 1rem;
	display: inline-block;
}

.project-list .project .name a:after {
	font-family: "Font Awesome 5 Pro";
	font-weight: 900;
	content: "";
	margin-left: .75em;
}

.project-list .project .name a:hover {
	text-decoration: none;
	background-color: #4a4f54;
}

.project-list .project .specs {
	color: #666;
	margin: .5rem 0;
}

.project-list .project .products {
	display: flex;
	flex-flow: row wrap;
}

.project-list .project .products a,.project-list .project .products span {
	display: block;
	padding: .75em 1.25em;
	margin: .25rem .25rem 0 0;
	border-radius: 2px;
	line-height: 1em;
	font-size: .875rem;
	font-weight: bold;
	background-color: #eee;
	color: #666;
	user-select: none;
	-moz-user-select: none;
	-webkit-user-select: none;
	-ms-user-select: none;
}

.project-list .project .products a:hover {
	background-color: #000;
	color: #fff;
	text-decoration: none;
}

.project-list .project .products span {
	cursor: default;
}

.project-list .project .actions {
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
}

.project-list .project .actions a {
	padding: .75em;
	border: 1px solid #eee;
	border-radius: 2px;
}

.project-list .project .actions a i {
	box-sizing: content-box;
	width: 1em;
	height: 1em;
	line-height: 1em;
	text-align: center;
	font-size: 1.25rem;
	line-height: 1em;
	vertical-align: middle;
}

.project-list .project .actions a i+span {
	margin-left: .25rem;
}

.project-list .project .actions a span {
	font-size: .875rem;
	font-weight: 700;
	line-height: 1em;
	vertical-align: middle;
}

.project-list .project .actions a+a {
	margin-left: .25rem;
}

.project-list .project .actions a:hover {
	background-color: #000;
	border-color: #000;
	color: #fff;
	text-decoration: none;
}

.project-list .project .actions a.delete {
	color: #ccc;
}

.project-list .project .actions a.delete:hover {
	background-color: #d03a3a;
	border-color: #d03a3a;
	color: #fff;
}

.project-list .project+.project {
	border-top: 1px dotted #ddd;
}

@media screen and (max-width:63.9375rem) {
	.project-list .project .name a {
		width: 100%;
		margin: 1rem 0;
	}

	.project-list .project .name a::after {
		float: right;
	}

	.project-list .project .actions {
		width: 100%;
		margin-top: 1rem;
	}
}

@media screen and (max-width:47.9375rem) {
	.project-list .project .actions {
		flex-wrap: wrap;
	}

	.project-list .project .actions a {
		margin: .5rem .5rem 0 0;
	}

	.project-list .project .actions a+a {
		margin-left: 0;
	}
}

.design-tool-tablet {
	display: none;
}

@media screen and (max-width:63.9375rem) {
	.design-tool-tablet {
		display: block;
	}
}

@media screen and (max-width:29.9375rem) {
	.design-tool-tablet {
		margin: 0 -2rem;
	}
}

@media screen and (max-width:79.9375rem) {
	.design-tool-container .links a {
		font-size: .875rem;
	}
}

@media screen and (max-width:63.9375rem) {
	.design-tool-container .links {
		display: none;
	}
}

.template-design-tool span.empty:first-child {
	padding: 4rem 0 0 0;
}

@media screen and (max-width:63.9375rem) {
	.template-design-tool .tier-navigation {
		display: none;
	}

	.template-design-tool .tier-navigation+.breadcrumbs+.page-separator {
		display: none;
	}
}

.dt-share-panel {
	background-color: #4a4f54;
	color: #fff;
	padding: 3rem 2rem;
	text-align: center;
	line-height: 2em;
}

.dt-share-panel h2 {
	margin: 0 0 1em 0;
}

.dt-share-panel input {
	display: block;
	width: 100%;
	background: none;
	border: 0;
	border-bottom: 1px solid #999;
	text-align: center;
	padding: 1rem 0;
	color: #ccc;
	font-size: 1.25rem;
}

.dt-share-image {
	margin-bottom: 30px;
}

.dt-share-overview h3 {
	font-weight: 700;
	font-size: 24px;
}

.dt-share-overview div {
	font-size: 18px;
}

.dt-share-overview span {
	font-weight: 700;
}

.tool-container {
	position: relative;
}

@media screen and (max-width:47.9375rem) {
	.tool-container[data-step="3"] .dt-overlay,.tool-container[data-step="0"] .dt-overlay {
		position: relative;
		margin: 0 -2rem;
	}

	.tool-container[data-step="3"] .tool-view,.tool-container[data-step="0"] .tool-view {
		display: none;
	}
}

@media screen and (max-width:29.9375rem) {
	.tool-view,.mobile-selector {
		margin: 0 -2rem;
	}
}

.tool-steps {
	display: flex;
}

.tool-steps a {
	display: block;
	flex: 1;
	text-align: center;
	padding: .5rem 1rem;
	font-weight: 700;
	background-color: #96a424;
	color: rgba(255,255,255,.5);
}

.tool-steps a.current {
	background-color: #000;
	color: #fff;
}

.tool-steps a.current~a {
	pointer-events: none;
	cursor: default;
	user-select: none;
}

.tool-steps a.current~a:hover {
	color: rgba(255,255,255,.5);
}

.tool-steps a:hover {
	color: #fff;
	text-decoration: none;
}

@media screen and (max-width:63.9375rem) {
	.tool-steps {
		display: none;
	}
}

.tool-view {
	position: relative;
}

.image-layers,.image-layers div {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-size: 100%;
}

.mobile-selector {
	display: none;
}

.mobile-selector select {
	border: 1px solid #eee;
	background: #eee;
	padding: .75em;
}

@media screen and (max-width:63.9375rem) {
	.mobile-selector {
		display: block;
	}
}

.image-buttons {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

.image-buttons a.image-button {
	box-sizing: content-box;
	width: 1em;
	height: 1em;
	line-height: 1em;
	text-align: center;
	position: absolute;
	z-index: 100;
	background-color: #000;
	color: #fff;
	padding: .75rem;
	border-radius: 100%;
	transform-origin: center;
	transition: transform .2s;
	box-shadow: 0 3px 10px 2px rgba(0,0,0,.2);
}

.image-buttons a.image-button:hover {
	transform: scale(1.2);
}

.image-buttons a.image-button.current {
	background-color: #4a4f54;
}

.image-buttons a.image-button.selected i::before {
	font-family: "Font Awesome 5 Pro";
	font-weight: 900;
	content: "";
}

@media screen and (max-width:63.9375rem) {
	.image-buttons {
		visibility: hidden;
	}
}

.tool-arrows {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	display: flex;
	width: 100%;
	background-color: rgba(255,255,255,.5);
}

.tool-arrows a {
	display: block;
	flex: 1;
	padding: 1rem;
	font-weight: 700;
}

.tool-arrows a i {
	margin: 0 1rem;
}

.tool-arrows a.next {
	text-align: right;
}

@media screen and (max-width:63.9375rem) {
	.tool-arrows {
		position: relative;
	}
}

.step-options {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	padding: 2rem 0 2rem 0;
}

.step-options.finish-options {
	visibility: hidden;
}

.step-text {
	width: 100%;
	text-align: center;
	padding: 0 0 2rem 0;
}

.step-text .title {
	color: #4a4f54;
	font-size: 1.5rem;
	font-weight: 700;
	display: block;
	padding: 0 0 .5rem 0;
}

.step-text .text {
	display: block;
	color: #999;
	font-size: .875rem;
	margin: 0 auto;
}

.step-options-items {
	width: 100%;
}

.step-options-item {
	width: 100%;
}

.option-slider {
	text-align: center;
	padding: 0 2.75rem;
}

.option-slider .slick-arrow {
	position: absolute;
	left: 0;
	top: calc(35% - 1.25em);
	color: #000;
	cursor: pointer;
	padding: 1em;
	outline: 0;
}

.option-slider .slick-next {
	left: auto;
	right: 0;
}

.option-slider .option {
	display: block;
	color: #333;
	outline: 0;
}

.option-slider .option:hover {
	text-decoration: none;
}

.option-slider .option.current {
	color: #000;
	font-weight: 700;
}

.option-slider .option.current img {
	border-color: #000;
}

.option-slider img {
	max-width: 12rem;
	margin: 0 auto;
	border: 3px solid #fff;
}

.option-slider .name {
	display: block;
	padding: 1rem 0;
}

.swatch-slider {
	margin-top: -2rem;
}

.swatch-picker {
	outline: 0;
}

.swatch-picker .title {
	display: flex;
	align-items: center;
	text-align: center;
	font-size: 1.125rem;
}

.swatch-picker .title span {
	display: block;
	flex: 1;
	margin: 0 2rem;
	padding: 1rem 0;
	font-weight: 700;
	color: #4a4f54;
}

.swatch-picker .title span span {
	display: none;
	font-size: 1rem;
	padding: 0;
	margin: 0;
	font-weight: 400;
	color: #999;
}

@media screen and (max-width:79.9375rem) {
	.swatch-picker .title span span {
		display: block;
	}
}

.swatch-picker .title a {
	box-sizing: content-box;
	width: 1em;
	height: 1em;
	line-height: 1em;
	text-align: center;
	outline: 0;
	padding: 1rem;
}

.swatch-picker .swatches {
	display: flex;
	justify-content: center;
	margin: 0 -.25rem;
}

.swatch-picker a.swatch {
	display: block;
	min-height: 5rem;
	flex: 1;
	margin: 0 .2rem;
	transition: all .2s;
	min-width: 0;
	position: relative;
	outline: 0;
}

.swatch-picker a.swatch:hover {
	margin: -.5rem .2rem;
}

.swatch-picker a.swatch.current {
	min-width: 5rem;
}

.swatch-picker a.swatch.current:hover {
	margin: 0 .2rem;
}

.swatch-picker .swatch-tooltip {
	text-align: center;
	padding: 1rem 0;
	color: #666;
}

@media screen and (max-width:79.9375rem) {
	.swatch-picker .swatches {
		justify-content: flex-start;
		overflow-x: auto;
		overflow-y: hidden;
		padding: 0 0 .5rem 0;
	}

	.swatch-picker a.swatch {
		min-width: 2rem;
	}

	.swatch-picker a.swatch:hover {
		margin: 0 .2rem;
	}
}

.dt-overlay {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	display: flex;
	z-index: 100;
	align-items: center;
	justify-content: center;
	background-color: rgba(255,255,255,.5);
}

.dt-overlay~.tool-view .image-layers {
	display: none;
}

.dt-overlay-content {
	display: block;
	width: 100%;
	max-width: 30rem;
	background-color: #4a4f54;
	color: #fff;
	padding: 3rem;
	text-align: center;
}

.dt-overlay-content .title {
	font-size: 1.5rem;
	font-weight: 700;
	display: block;
	line-height: 1.5em;
	margin: 0 0 1rem 0;
}

.dt-overlay-content .text {
	display: block;
	font-size: 1.25rem;
	font-weight: 300;
}

.dt-overlay-content.project-save {
	display: none;
}

.dt-overlay-content.project-save a {
	display: block;
	font-size: 2rem;
	color: #fff;
	padding: 2rem 0 0 0;
	line-height: 1em;
}

.dt-overlay-content.project-save a:hover {
	color: #000;
}

.dt-overlay-content input {
	padding: 1rem 0;
	display: block;
	width: 100%;
	background: none;
	border: 0;
	border-bottom: 1px solid #ddd;
	text-align: center;
	color: #fff;
}

.dt-overlay-content .lighter {
	margin: -2rem -3rem 2rem -3rem;
	padding: 2rem;
	background-color: rgba(153,153,153,.5);
	font-size: 1.5rem;
	font-weight: 700;
}

@media screen and (max-width:63.9375rem) {
	.dt-overlay-content {
		padding: 1.5rem;
	}

	.dt-overlay-content .title {
		font-size: 1.25rem;
	}

	.dt-overlay-content .text {
		font-size: 1rem;
	}
}

@media screen and (max-width:47.9375rem) {
	.dt-overlay-content .lighter {
		font-size: 1.25rem;
		padding: 1.5rem;
		margin: -1rem -2rem 1rem -2rem;
	}
}

.overlay-menu {
	padding: 2rem 3rem;
}

.overlay-menu a {
	display: block;
	font-size: 1.5rem;
	padding: 1rem 0;
	font-weight: 700;
	color: #fff;
	white-space: nowrap;
}

.overlay-menu a span {
	margin-left: 1rem;
	margin-right: -1rem;
}

.overlay-menu a:hover {
	color: #000;
	text-decoration: none;
}

.overlay-menu a:hover span {
	color: #fff;
}

.overlay-menu a[data-disabled] {
	pointer-events: none;
	color: rgba(255,255,255,.5);
}

.overlay-menu a[data-disabled] span {
	pointer-events: auto;
}

.overlay-menu a[data-disabled]:hover {
	color: rgba(255,255,255,.5);
}

.overlay-menu.landing-menu>a {
	font-weight: 300;
	font-size: 1.125rem;
}

.overlay-menu.landing-menu .title {
	font-size: 2rem;
	line-height: 1em;
}

.overlay-menu .plus::after {
	font-family: "Font Awesome 5 Pro";
	font-weight: 900;
	content: "";
	font-size: 2rem;
	line-height: 1em;
	display: block;
	margin: 1rem 0 0 0;
}

@media screen and (max-width:47.9375rem) {
	.overlay-menu {
		padding: 2rem;
	}

	.overlay-menu>a {
		font-size: 1.25rem;
	}

	.overlay-menu>a span {
		display: none;
	}

	.overlay-menu.landing-menu>a {
		font-size: 1rem;
		white-space: normal;
		word-break: break-word;
	}

	.overlay-menu.landing-menu .title {
		font-size: 1.5rem;
	}
}

@media screen and (max-width:29.9375rem) {
	.overlay-menu>a {
		font-size: 1rem;
	}
}

a.dt-overlay-content:hover {
	text-decoration: none;
	opacity: .8;
}

a.dt-overlay-content::after {
	font-family: "Font Awesome 5 Pro";
	font-weight: 900;
	content: "";
	font-size: 2rem;
	line-height: 1em;
	display: block;
	margin: 1rem 0 0 0;
}

@media screen and (max-width:63.9375rem) {
	a.dt-overlay-content::after {
		display: none;
	}
}

.disclaimer {
	text-align: center;
	padding: 4rem 2rem;
	color: #666;
}

.disclaimer a {
	font-weight: 700;
}

.design-alert {
	font-weight: 700;
	color: #ff7a7a;
}

.step-container {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

.white-overlay {
	background-color: rgba(255,255,255,.9);
	padding: 4rem 2rem;
}

.white-overlay.centred {
	text-align: center;
}

.white-overlay.full {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

.white-overlay.flex {
	display: flex;
	align-items: center;
	justify-content: center;
}

.white-overlay.question {
	font-size: 1.5rem;
	font-weight: 700;
	color: #4a4f54;
}

.white-overlay.question .text {
	max-width: 30rem;
	margin: 0 auto;
}

.white-overlay.question a {
	display: inline-block;
	padding: 1em 2em;
	margin: 0 0 -1em 0;
}

.grey-panel {
	background-color: rgba(74,79,84,.95);
	padding: 3rem;
	color: #fff;
	max-height: 100%;
	overflow: auto;
}

.grey-panel.limit {
	max-width: 26rem;
}

.grey-panel input[type=text],.grey-panel textarea {
	background: none;
	border: 0;
	border-bottom: 1px solid #fff;
	padding: 1em;
	color: #fff;
	width: 100%;
	max-width: 100%;
}

.grey-panel input[type=text]:focus,.grey-panel textarea:focus {
	background: none;
	border-color: #000;
}

.grey-panel .lighter {
	margin: -3rem -3rem 3rem -3rem;
	padding: 1.5rem;
	background-color: rgba(153,153,153,.5);
	font-size: 1.25rem;
}

span.heading {
	display: block;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1em;
	margin: 0 0 1em 0;
}

.step-title span.heading {
	text-align: center;
	font-size: 1.5rem;
	color: #000;
}

.menu-list {
	user-select: none;
}

.menu-list ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.menu-list li+li {
	margin: 2em 0 0 0;
}

.menu-list a {
	display: block;
	color: #fff;
}

.menu-list a span {
	display: block;
	line-height: 1em;
}

.menu-list a span.header {
	font-size: 1.25rem;
	font-weight: 300;
}

.menu-list a span.sub-header {
	color: #000;
	margin: .5em 0 0 0;
	font-size: .875rem;
}

.menu-list a:hover {
	color: #000;
	text-decoration: none;
}

.menu-list a[data-disabled] {
	color: #999;
	cursor: none;
	pointer-events: none;
}

.menu-list a[data-disabled] span {
	color: #999;
}

.menu-list a[data-disabled]:hover {
	color: #999;
}

.menu-list.actions a {
	font-size: 1.5rem;
	font-weight: 700;
}

.product-carousel .product {
	outline: 0;
	padding: 2rem;
}

.product-carousel .product .title {
	font-size: 1.125rem;
	font-weight: 700;
	color: #4a4f54;
	padding: 1em 0;
}

.product-carousel .product .description {
	font-size: .875rem;
	color: #999;
}

.product-carousel .product .features strong {
	color: #4a4f54;
}

.product-carousel .product .features li {
	font-size: .875rem;
	color: #999;
	line-height: 1em;
}

.product-carousel .product .features li+li {
	margin: .5em 0 0 0;
}

.product-carousel.centred {
	text-align: center;
}

.action-buttons {
	text-align: center;
}

#spec-tool button.slick-arrow {
	color: #000;
	font-size: 2rem;
	position: absolute;
	top: -2.25em;
	padding: .5em;
	cursor: pointer;
	width: 1em;
	height: 1em;
	line-height: 1em;
	text-align: center;
	box-sizing: content-box;
}

#spec-tool button.slick-arrow.slick-prev {
	left: 1em;
}

#spec-tool button.slick-arrow.slick-next {
	right: 1em;
}

.template-search .search-outer {
	display: block;
}

.search-results {
	display: flex;
	flex-wrap: wrap;
}

.search-results .empty {
	padding: 4rem 0 0 0;
}

.search-result {
	display: flex;
	flex-basis: 50%;
	width: 50%;
	position: relative;
	padding: 3rem 0;
	border-bottom: 1px solid #ddd;
}

.search-result:only-child {
	flex-basis: 100%;
	width: 100%;
}

.search-result:hover {
	opacity: .8;
}

.search-result img {
	max-width: 12rem;
}

.search-result .search-content {
	flex: 1;
	padding: 0 2rem;
	justify-content: center;
	display: flex;
	flex-direction: column;
}

.search-result .search-content span {
	display: block;
}

.search-result .title {
	font-size: 1.5rem;
	font-weight: 700;
	color: #4a4f54;
}

.search-result .url {
	color: #000;
	font-weight: 700;
}

.search-content .description {
	color: #666;
	padding: 1rem 0 0 0;
}