.shop-section {
	padding-bottom: 5em;
}

.shop-desc {
	padding: 6em 0;
}

.post-type-archive-product.woocommerce-shop #main::before {
	content: none;
}

.shop-titles {
	text-align: center;
	margin-bottom: 2em;
}

.shop-titles + .container {
	max-width: 1440px;
}

.products.columns-4 .woocommerce-LoopProduct-link.woocommerce-loop-product__link {
	display: block;
}

.products.columns-4 .woocommerce-LoopProduct-link.woocommerce-loop-product__link img {
	width: 100%;
	height: auto;
	padding: 2px;
}

.shop-section .product.type-product:hover {
	opacity: 0.75;
}

.woocommerce-LoopProduct-link.woocommerce-loop-product__link:hover {
	text-decoration: none;
}


/*Single product*/

.back-to-shop {
	margin-bottom: 4em;
}

.product-cat {
	margin-bottom: 1em;
}

.product-cat a {
	font-family: 'Work Sans';
	font-style: normal;
	font-weight: 500;
	font-size: 14px;
	line-height: 16px;
	letter-spacing: 0.185em;
	text-transform: uppercase;
	color: #121F47;
}

.product-desc {
	color: #76787C;
	max-width: 25em;
}

h1.product_title.entry-title {
	font-size: 3.43em;
}

.button.button-grey {
	background: #C8C8C8;
	padding: 0.85em;
	margin-bottom: 2em;
	border: none;
}

h1.product_title.entry-title + .button.button-grey {
	pointer-events: none;
}

#main > h1.product_title.entry-title {
	border-bottom: 1px solid #EFEFEF;
	padding-bottom: 0.2em;
	margin-bottom: 0.5em;
}

.product-short-desc {
	font-weight: 500;
	font-size: 16px;
	line-height: 136.8%;
	color: #141414;
	max-width: 33em;
	margin-bottom: 1.3em;
}

.product-details h2 {
	font-size: 2em;
	line-height: 1.3;
	letter-spacing: 0.075em;
	text-transform: uppercase;
	margin-bottom: 0.7em;
}

.product-details ul {
	padding-left: 1em;
	margin-bottom: 2em;
}

.product-details ul li {
	line-height: 136.8%;
	color: #141414;
	margin-bottom: 0.7em;
}

.flexible-tiles {
	display: flex;
	text-align: center;
	background: #EFF2F5;
	padding: 2em 1em;
	margin-bottom: 2em;
	font-weight: 600;
	font-size: 12px;
	line-height: 136.8%;
	text-transform: uppercase;
}

.flexible-tiles-item {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

.flexible-tiles-item-content {
	margin-top: 1em;
}

.flexible-tiles-item-content .h6 {
	margin-bottom: 0;
}

.summary.entry-summary .h6 {
	font-weight: 700;
	letter-spacing: 0.075em;
	text-transform: uppercase;
	color: #121F47;
}

.product-flexible-fullwidth table {
	width: 100%;
}

.product-flexible-fullwidth table tr {
	background: #EFF2F5;
	border-bottom: 5px solid #fff;
	text-align: center;
	letter-spacing: 0.075em;
	text-transform: uppercase;
	color: #1E1E1E;
}

.product-flexible-fullwidth table td {
	padding: 1em;
}

.product-flexible-fullwidth table tr th {
	background: #121F47;
	color: #fff;
	padding: 1em;
	border-right: 1px solid #fff;
}

.flexible-center {
	margin-top: 2em;
}

.product-flexible-fullwidth {
	margin-bottom: 2.5em;
}

.product-flexible-imagedesc {
	background: #EFF2F5;
	padding: 3em 5em;
	margin-bottom: 8em;
}

.product-flexible-imagedesc > .h6 {
	font-weight: 600;
	text-align: center;
	letter-spacing: 0.075em;
	text-transform: uppercase;
	margin-bottom: 1.7em;
}

.product-flexible-imagedesc-item {
	display: flex;
	align-items: center;
}

.product-flexible-imagedesc-item img {
	max-width: 12em;
	margin-right: 1.8em;
}

.product-flexible-imagedesc-item-content .h6 {
	font-weight: 600;
	text-transform: uppercase;
}

.related-projects h3,
.up-sells.upsells.products h2 {
	font-weight: 600;
	font-size: 1em;
	letter-spacing: 0.075em;
	text-transform: uppercase;
	color: #121F47;
	margin-bottom: 3em;
}

.project-item-info .desc {
	line-height: 126.8%;
	color: #76787C;
}

.gallery-item img {
	height: 23em;
	object-fit: cover;
	margin-bottom: 1.4em;
}

.all-swatches {
	display: grid;
	grid-template-columns: repeat(6,1fr);
	grid-gap: 25px;
	margin-bottom: 4em;
}

.all-swatches > * {
	width: 100%;
	max-width: 80px;
	height: 72px;
}

.modal-swatch {
	width: 100%;
	height: 100%;
	max-width: 100%;
}

.color-swatch-large {
	height: 210px;
	width: 210px;
	max-width: 90vw;
}

.modal-swatch .modal-swatch {
	max-width: 90vw;
}

.modal-swatch .modal-close.modal-exit {
	top: -30px;
	right: -30px;
}

.color-swatch > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.flexible-right {
	margin-bottom: 4em;
}

.product-shapes > .h6 {
	margin-bottom: 1.2em;
}

.product-shapes .col-md-6 {
	margin-bottom: 1.5em;
}

.product-shapes-item {
	display: flex;
}

.product-shapes-item-img {
	margin-right: 1.5em;
}

.product-shapes-item-content > div {
	line-height: 1.5;
}

.woocommerce-product-attributes.shop_attributes {
	width: 100%;
	margin-bottom: 5em;
	margin-top: 3em;
}

.woocommerce-product-attributes-item__label {
	font-weight: 600;
	font-size: 14px;
	line-height: 126.8%;
	text-transform: uppercase;
	color: #121F47;
}

.woocommerce-product-attributes-item__value p {
	margin: 0;
	text-align: right;
}

.woocommerce-product-attributes-item > * {
	padding: 1em 0;
}

.woocommerce-product-attributes-item {
	border-bottom: 1px solid #F1E8E8;
}

.woocommerce-product-gallery__image img {
	height: auto;
	margin-bottom: 2em;
}

.product-shapes-item-content {
	max-width: 53%;
}

@media (max-width: 767px){
	.flexible-tiles {
		flex-wrap: wrap;
		justify-content: center;
	}

	.flexible-tiles-item {
		max-width: 50%;
		padding: 1em;
	}

	.product-flexible-fullwidth {
		overflow: scroll;
	}

	.product-flexible-imagedesc {
		padding: 3em 3em;
	}

	.product-flexible-imagedesc-item {
		margin-bottom: 2em;
	}

	.all-swatches {
		grid-gap: 15px;
	}

	.product-shapes .col-md-6 {
		-ms-flex: 0 0 50%;
		flex: 0 0 50%;
		max-width: 50%;
	}

	.product-shapes-item {
		flex-direction: column;
		align-items: center;
	}

	.product-shapes-item-content {
		max-width: 100%;
	}

	.product-shapes-item-img {
		margin-bottom: 0.3em;
		margin-right: 0;
		height: 8em;
	}

	.product-shapes-item-img img {
		object-fit: scale-down;
		height: 100%;
		object-position: center;
	}
}

@media (max-width: 480px){
	.all-swatches {
		grid-template-columns: repeat(4,1fr);
	}
}