/*
Theme Name:   	Coppard
Theme URI:    	https://github.com/stuartduff/storefront-child-theme
Author:       	Bamboo Nine
Author URI:     https://www.bamboonine.co.uk
Template:     	storefront
Description:  	Bespoke theme for Coppard
Version:      	1.15.0
*/

/* Coppard design tokens */
:root {
	--color-primary: #ffcc00;
	--color-secondary: #f6f6f3;
	--color-dark: #333333;
	--color-light: white;
	--font-weight-extra: 800;
	--font-weight-semi: 700;
	--font-weight-bold: 600;
	--border-style: 3px solid var(--color-dark);
	--size-container: 1432px;
	--sizing-space-s: 10px;
	--sizing-space-m: 20px;
	--sizing-space-l: 40px;
	--sizing-space-xl: 80px;
	--admin-offset: 32px;
	--js-nav-offset: 0;
	--scroll-offset: var(--js-nav-offset, 4rem);
	--chevron: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='Layer_2' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 31.47 30.4'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23fc0;%7D%3C/style%3E%3C/defs%3E%3Cg id='Layer_1-2'%3E%3Cg id='Group_34'%3E%3Cpolygon class='cls-1' points='2.12 30.4 0 28.28 13.08 15.2 0 2.12 2.12 0 17.32 15.2 2.12 30.4'/%3E%3Cpolygon class='cls-1' points='16.26 30.4 14.14 28.28 27.22 15.2 14.14 2.12 16.26 0 31.47 15.2 16.26 30.4'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
	--chevron-dark: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='Layer_2' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 31.47 30.4'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23000;%7D%3C/style%3E%3C/defs%3E%3Cg id='Layer_1-2'%3E%3Cg id='Group_34'%3E%3Cpolygon class='cls-1' points='2.12 30.4 0 28.28 13.08 15.2 0 2.12 2.12 0 17.32 15.2 2.12 30.4'/%3E%3Cpolygon class='cls-1' points='16.26 30.4 14.14 28.28 27.22 15.2 14.14 2.12 16.26 0 31.47 15.2 16.26 30.4'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}

@media screen and (max-width: 782px) {
	:root {
		--admin-offset: 46px;
	}
}

@media screen and (max-width: 600px) {
	.admin-bar {
		--scroll-offset: calc(var(--js-nav-offset, 4rem) - var(--admin-offset));
	}
}

/*
Generated using the utopia.fyi fluid type scale calculator.
@see https://utopia.fyi/type/calculator?c=320,16,1.125,1140,16,1.25,8,1,&s=0.5,2|3|4|5|6|8,s-l
*/

:root {
	--step--1: clamp(0.80rem, calc(0.92rem + -0.17vw), 0.89rem);
	--step-00: clamp(0.88rem, calc(0.83rem + 0.24vw), 1.00rem);
	--step-0: clamp(1.00rem, calc(1.00rem + 0.00vw), 1.00rem);
	--step-1: clamp(1.13rem, calc(1.08rem + 0.24vw), 1.25rem);
	--step-2: clamp(1.27rem, calc(1.15rem + 0.58vw), 1.56rem);
	--step-3: clamp(1.42rem, calc(1.22rem + 1.03vw), 1.95rem);
	--step-4: clamp(1.60rem, calc(1.27rem + 1.64vw), 2.44rem);
	--step-5: clamp(1.80rem, calc(1.31rem + 2.44vw), 3.05rem);
	--step-6: clamp(2.03rem, calc(1.33rem + 3.49vw), 3.82rem);
	--step-7: clamp(2.28rem, calc(1.31rem + 4.85vw), 4.77rem);
	--step-8: clamp(2.57rem, calc(1.24rem + 6.62vw), 5.96rem);
}

/*
Generated using the utopia.fyi fluid space calculator.
@see https://utopia.fyi/space/calculator/?c=320,10,1.125,1140,20,1.2,8,1,&s=0.5,1.5|2|3|4|5|6,s-l|2xl-xl|l-2xl
*/

:root {
	--space-2xs: clamp(0.19rem, calc(0.11rem + 0.37vw), 0.38rem);
	--space-xs: clamp(0.31rem, calc(0.19rem + 0.61vw), 0.63rem);
	--space-s: clamp(0.63rem, calc(0.38rem + 1.22vw), 1.25rem);
	--space-m: clamp(0.94rem, calc(0.57rem + 1.83vw), 1.88rem);
	--space-l: clamp(1.25rem, calc(0.76rem + 2.44vw), 2.50rem);
	--space-xl: clamp(1.88rem, calc(1.14rem + 3.66vw), 3.75rem);
	--space-2xl: clamp(2.50rem, calc(1.52rem + 4.88vw), 5.00rem);
	--space-3xl: clamp(3.13rem, calc(1.91rem + 6.10vw), 6.25rem);
	--space-4xl: clamp(3.75rem, calc(2.29rem + 7.32vw), 7.50rem);

	/* One-up pairs */
	--space-xs-s: clamp(0.31rem, calc(-0.05rem + 1.83vw), 1.25rem);
	--space-s-m: clamp(0.63rem, calc(0.14rem + 2.44vw), 1.88rem);
	--space-m-l: clamp(0.94rem, calc(0.33rem + 3.05vw), 2.50rem);
	--space-l-xl: clamp(1.25rem, calc(0.27rem + 4.88vw), 3.75rem);
	--space-xl-2xl: clamp(1.88rem, calc(0.66rem + 6.10vw), 5.00rem);
	--space-2xl-3xl: clamp(2.50rem, calc(1.04rem + 7.32vw), 6.25rem);
	--space-3xl-4xl: clamp(3.13rem, calc(1.42rem + 8.54vw), 7.50rem);

	/* Custom pairs */
	--space-s-l: clamp(0.63rem, calc(-0.11rem + 3.66vw), 2.50rem);
	--space-2xl-xl: clamp(2.50rem, calc(2.01rem + 2.44vw), 3.75rem);
	--space-l-2xl: clamp(1.25rem, calc(-0.21rem + 7.32vw), 5.00rem);
}

* {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
}

body {
	margin: 0;
	font-family: 'Inter', sans-serif;
	font-weight: 400;
	line-height: 1.618;
	text-rendering: optimizeLegibility;
	color: var(--color-dark);
}

body,
.site {
	overflow-x: unset;
}

.site-main,
.hentry {
	margin: 0 !important;
}

a {
	color: var(--color-dark);
	text-decoration: none;
}

a:not(.wp-block-coppard-tile):not(.wp-block-coppard-action):not(.searchwp-live-search-result):not(.searchwp-live-search-result__heading):hover {
	text-decoration: underline !important;
	text-decoration-color: var(--color-primary) !important;
}

/* Reset things */

p {
	margin: 0;
	padding: 0;
}

b,
strong {
	font-weight: 600;
}

ol,
ul {
	list-style-type: none;
	padding: 0;
}

h1,
h2,
h3,
h4,
h6 {
	margin: 0;
	padding: 0;
	color: var(--color-dark);
	letter-spacing: unset;
	line-height: 1.214;
}

textarea {
	overflow: auto;
	vertical-align: top;
	width: 100%;
}

*:not(.wp-block-table):not(.wp-block-coppard-calculator__container) > table {
	border-spacing: 0;
	width: 100%;
	margin: 0 0 1.41575em;
	border-collapse: separate;
}

*:not(.wp-block-table):not(.wp-block-coppard-calculator__container) > table td,
*:not(.wp-block-table):not(.wp-block-coppard-calculator__container) > table th {
	padding: 1em 1.41575em;
	text-align: left;
	vertical-align: top;
}

*:not(.wp-block-table):not(.wp-block-coppard-calculator__container) > table th {
	font-weight: 600;
}

button,
input[type=button],
input[type=reset],
input[type=submit],
.button {
	cursor: pointer;
}

input[type=text],
input[type=number],
input[type=email],
input[type=tel],
input[type=url],
input[type=password],
input[type=search],
textarea,
.input-text {
	padding: .6180469716em;
}

button.disabled,
button:disabled,
input[type=button].disabled,
input[type=button]:disabled,
input[type=reset].disabled,
input[type=reset]:disabled,
input[type=submit].disabled,
input[type=submit]:disabled,
.button.disabled,
.button:disabled {
	opacity: 0.5;
}

img {
	display: block;
	height: auto;
	max-width: 100%;
	border-radius: 0;
}

img,
.hentry .wp-post-image {
	margin: 0;
	padding: 0;
}

.hentry .entry-content a:not(.wp-block-coppard-action) {
	text-decoration: none;
}

/* Column width */
.col-full {
	max-width: 100%;
	padding: 0;
	margin: 0 auto;
	padding: 0 var(--sizing-space-l);
}

#content .col-full {
	padding: 0;
}

main .entry-content > *:not(.alignfull):not(.wp-block-coppard-panel),
.woocommerce-page .site-main > *:not(.alignfull):not(header):not(.wp-block-coppard-panel) {
	max-width: var(--size-container);
	margin-left: auto !important;
	margin-right: auto !important;
	padding: 0 var(--space-s);
}

.alignfull {
	margin-left: 0 !important;
	margin-right: 0 !important;
}

main .entry-content > *:not(section):not(.alignfull),
.woocommerce-page .site-main > *:not(header):not(.alignfull):not(.wp-block-coppard-panel) {
	padding: 0 var(--space-s);
}

.right-sidebar .content-area {
	margin: 0 !important;
}

.no-clear {
	clear: unset;
}

main .entry-content > ol,
main .entry-content > ul {
	left: var(--space-m) !important;
	margin-top: var(--space-xs);
	margin-bottom: var(--space-xs);
	position: relative;
	line-height: 1.8;
}

ul,
ol {
	line-height: 1.8;
}

.wp-block-group__inner-container ul {
	margin: 0;
}

.wp-block-group__inner-container p + ul {
	margin-top: var(--space-s);
}

.wp-block-group__inner-container {
	padding: var(--space-l);
	margin-top: var(--space-s);
}

main .entry-content > h2 {
	font-size: var(--step-3);
	font-weight: var(--font-weight-semi);
	margin-bottom: var(--space-xs);
}

main .entry-content > h3 {
	font-size: var(--step-2);
	font-weight: var(--font-weight-semi);
	margin-top: var(--space-s);
	margin-bottom: var(--space-xs);
}

h3 + .wp-block-media-text {
	margin-top: var(--space-xs);
}

h2 + .wp-block-media-text {
	margin-top: var(--space-xs);
}

main .entry-content > p + h2 {
	margin-top: var(--space-l);
}

.wp-block-media-text p + p,
main .entry-content > p + p {
	margin-top: var(--space-s);
}

body:not(.home, .page-id-2575) main .type-page .entry-content a:not(.wp-block-coppard-tile):not(.wp-block-coppard-action) {
	text-decoration: underline;
}

a.wp-block-button__link {
	padding: 14px var(--sizing-space-m) !important;
}

a.wp-block-button__link:hover {
	text-decoration-color: var(--color-dark) !important;
}

.wp-block-media-text {
	margin-top: var(--space-xl);
	margin-bottom: var(--space-xl);
}

.wp-block-media-text .wp-block-media-text__content {
	padding: 0 var(--space-xl);
	padding-top: var(--space-xs);
	padding-bottom: var(--space-xs);
}

.wp-block-media-text:not(.has-media-on-the-right) .wp-block-media-text__content {
	padding-right: 0;
}

.wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {
	padding-left: 0;
}

@media (max-width: 600px) {
	.wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__content {
		padding-left: 0;
		padding-right: 0;
		margin-top: var(--space-l);
	}
}

/* Remove the sidebar */
body #primary {
	width: 100%;
}

/* Weird storefront bug */
img {
	max-width: auto;
}

h2 a {
	font-weight: inherit;
}

*:not(.wp-block-table):not(.wp-block-coppard-calculator__container) > table td,
*:not(.wp-block-table):not(.wp-block-coppard-calculator__container) > table th {
	padding: var(--space-s);
	font-size: var(--step-00);
}

*:not(.wp-block-table):not(.wp-block-coppard-calculator__container) > table {
	margin: 0;
}

/* header */
.site-header {
	margin-bottom: 0 !important;
	border: 0 !important;
	background-color: var(--color-primary);
	z-index: 20;
}

.woocommerce main h1.product_title {
	font-size: var(--step-4);
	font-weight: var(--font-weight-semi);
	display: flex;
}

.woocommerce main h1.product_title:before {
	margin-top: var(--space-xs) !important;
}

.custom-logo-link {
	filter: opacity(0.8);
}

/* Menu */
.handheld-navigation .cp-pricing-toggle a {
	padding: 0;
	margin: 0;
	margin-bottom: var(--space-s);
}

.main-navigation.toggled .handheld-navigation .cp-pricing-toggle {
	display: flex !important;
	justify-content: flex-end;
}

.main-navigation ul li a {
	display: block;
}

.main-navigation ul li a:hover,
.main-navigation ul li:hover > a,
.site-title a:hover,
.site-header ul.menu li.current-menu-item > a {
	color: var(--color-dark);
	text-decoration: underline;
}

.main-navigation > * {
	transition: none !important;
}

button.menu-toggle {
	cursor: pointer;
	text-align: left;
	float: right;
	position: relative;
	border: 2px solid rgba(0, 0, 0, 0);
	box-shadow: none;
	border-radius: 2px;
	background-image: none;
	padding: .6180469716em .875em .6180469716em 2.617924em;
	font-size: .875em;
	max-width: 120px;
	background-color: transparent;
}

button.menu-toggle::before,
button.menu-toggle::after,
button.menu-toggle span::before {
	content: "";
	display: block;
	height: 2px;
	width: 14px;
	position: absolute;
	top: 50%;
	left: 1em;
	margin-top: -1px;
	transition: all, ease, .2s;
	border-radius: 3px;
	background-color: #333333;
}

.toggled button.menu-toggle::before,
.toggled button.menu-toggle::after {
	transform: rotate(45deg);
}

.toggled button.menu-toggle::after {
	transform: rotate(-45deg);
}

.toggled button.menu-toggle span::before {
	opacity: 0;
}

button#site-navigation-menu-toggle {
	border: 0;
	padding-left: 0 !important;
	padding-right: var(--space-l) !important;
	margin-left: auto;
	margin-right: var(--space-s);
	top: 50%;
	transform: translateY(-50%);
	border-radius: 0;
}

button.menu-toggle::before,
button.menu-toggle::after,
button.menu-toggle span::before {
	width: 100%;
	left: unset;
}

button.menu-toggle::before {
	transform: translateY(calc(var(--space-xs) * -1));
}

button.menu-toggle::after {
	transform: translateY(calc(var(--space-xs) * 1));
}

.site-header .main-navigation {
	width: 100% !important;
}

.storefront-primary-navigation {
	display: none;
}

.site-header ul#menu-main-menu {
	height: 100%;
	justify-content: space-between;
	margin: 0 auto;
	display: flex;
	align-items: center;
	gap: var(--space-s);
	max-width: var(--size-container);
	box-sizing: border-box;
	flex-wrap: wrap;
}

.site-header .main-navigation div {
	font-size: 16px;
	font-weight: var(--font-weight-bold);
}

.site-header .main-navigation ul#menu-main-menu > li > a {
	display: block;
	padding: var(--sizing-space-s) 0;
	margin: 0 !important;
}

.site-header .main-navigation ul#menu-main-menu > li > a:hover {
	color: inherit;
	text-decoration: underline !important;
	text-decoration-color: var(--color-dark);
}

#masthead > .col-full {
	display: flex;
	align-items: center;
	gap: var(--space-s);
	padding: 0;
	margin: 0 auto;
	max-width: var(--size-container);
	min-height: var(--space-xl);
	box-sizing: border-box;
	flex-wrap: wrap;
	flex-grow: 1;
}

#masthead .main-navigation {
	flex: 0;
}

.storefront-primary-navigation > .col-full {
	max-width: var(--size-container);
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
}

#masthead {
	padding-top: var(--space-m);
	position: sticky;
	top: 0;
}

.admin-bar #masthead {
	top: var(--admin-offset);
}

@media screen and (max-width: 600px) {
	.admin-bar #masthead {
		top: 0;
	}
}

.nav--open #masthead,
.cp__header__numbers--open + #masthead {
	top: 0;
	position: relative;
}

@media screen and (min-width: 1150px) {
	#masthead,
	.nav--open #masthead,
	.cp__header__numbers--open + #masthead {
		position: sticky;
		top: calc((var(--space-xl) + var(--space-m)) * -1);
	}

	.admin-bar #masthead,
	.admin-bar.nav--open #masthead,
	.admin-bar .cp__header__numbers--open + #masthead {
		position: sticky;
		top: calc(var(--admin-offset) + (var(--space-xl) + var(--space-m)) * -1);
	}
}

.site-header .site-branding {
	width: unset !important;
	float: unset !important;
	margin: unset !important;
	flex-shrink: 0;
}

.site-header .site-branding a {
	display: block;
}

.site-header .site-branding img {
	display: block;
	width: auto;
	max-height: var(--space-xl) !important;
	max-width: 210px;
}

@media (min-width: 768px) {
	.site-header .site-branding img {
		max-width: 230px;
	}
}

.cp-pricing-toggle {
	margin-left: auto;
	display: none;
}

.col-full:before,
.col-full:after {
	content: unset !important;
}

.cp-toggle {
	width: 50px;
	height: 30px;
	background: white;
	display: inline-block;
	border-radius: 30px;
}

.cp-pricing-toggle a {
	display: flex;
	align-items: center;
	gap: 10px;
	font-weight: var(--font-weight-bold);
	margin-right: var(--space-m);
}

.cp-pricing-toggle a:active,
.cp-pricing-toggle a:focus {
	outline: none;
}

.cp-pricing-toggle.cp-pricing-toggle--consumer .cp-toggle:after {
	content: '';
	width: 20px;
	height: 20px;
	background: var(--color-dark);
	display: block;
	border-radius: 100%;
	margin-top: 5px;
	margin-left: 5px;
	transition: all .2s linear;
}

.cp-pricing-toggle.cp-pricing-toggle--consumer.cp-pricing-toggle--active .cp-toggle:after {
	margin-left: 25px;
}

.cp-pricing-toggle.cp-pricing-toggle--trade .cp-toggle:after {
	content: '';
	width: 20px;
	height: 20px;
	background: var(--color-dark);
	display: block;
	border-radius: 100%;
	margin-top: 5px;
	margin-left: 25px;
	transition: all .2s linear;
}

.cp-pricing-toggle.cp-pricing-toggle--trade.cp-pricing-toggle--active .cp-toggle:after {
	margin-left: 5px;
}

.cp__account {
	display: none;
}

@media screen and (min-width: 1150px) {
	.cp-pricing-toggle {
		display: block;
	}

	.cp__account {
		display: block;
	}
}

.main-navigation.toggled ul li a,
.cp__header__numbers--open ul li a {
	padding: var(--space-s) var(--space-m, );
	margin: var(--space-s) 0;
	border: var(--border-style);
	font-size: var(--step-00);
}

.cp__header__numbers--open ul li a {
	display: flex;
}

.cp__header__numbers--open ul li a span:first-child {
	font-weight: var(--font-weight-bold);
}

.cp__header__numbers--open ul li a span + span {
	margin-left: auto;
}

.main-navigation.toggled .handheld-navigation {
	background: var(--color-primary);
}

.main-navigation:not(.toggled) .handheld-navigation {
	display: none;
}

.site-header .main-navigation.toggled .handheld-navigation {
	position: absolute;
	/* 5px extra is to avoid a responsive gap at some sizes */
	top: calc(var(--space-xl) + var(--space-m) + var(--space-m) - 5px) !important;
	left: 0;
	width: 100%;
	padding: var(--space-s);
}

@media screen and (min-width: 1150px) {
	.main-navigation.toggled ul li a,
	.cp__header__numbers--open ul li a {
		padding: 0;
		margin: 0;
		border: 0;
		font-size: inherit;
	}

	.cp__header__numbers--open ul li a span + span {
		margin-left: 0;
	}

	.main-navigation.toggled .primary-navigation {
		display: block !important;
	}

	#masthead .main-navigation {
		height: 4rem;
	}
}

.menu-toggle,
.handheld-navigation,
.main-navigation.toggled .handheld-navigation,
.main-navigation.toggled div {
	display: block;
}

.site-header ul#menu-main-menu {
	display: none;
}

#masthead {
	display: flex;
	padding-bottom: var(--space-m);
}

@media screen and (min-width: 1150px) {
	.site-header .primary-navigation {
		height: 100%;
	}

	.site-header ul#menu-main-menu {
		display: flex;
	}

	#masthead {
		display: block;
		padding-bottom: 0;
	}
}

@media screen and (min-width: 1150px) {
	.menu-toggle,
	.handheld-navigation,
	.main-navigation.toggled .handheld-navigation,
	.main-navigation.toggled div {
		display: none;
	}
}

/* Open account */
a.util__button_style.cp__account {
	height: 50px;
	border-color: var(--color-dark);
	background: var(--color-dark);
	padding: 10px var(--sizing-space-m);
	flex-shrink: 0;
}

/* Number nav */

.cp__header__numbers {
	padding-top: 10px;
	display: none;
	flex-wrap: wrap;
	background: var(--color-primary);
	justify-content: center;
	column-gap: 25px;
	row-gap: 10px;
	font-size: 14px;
	position: relative;
}

.cp__header__numbers.cp__header__numbers--open {
	display: block;
	position: absolute;
	top: var(--js-nav-offset);
	width: 100%;
	z-index: 999;
	padding: var(--space-s);
}

.admin-bar .cp__header__numbers.cp__header__numbers--open {
	top: calc(var(--js-nav-offset) + var(--admin-offset));
}

@media screen and (min-width: 1150px) {
	.cp__header__numbers {
		font-size: 0.875rem;
		background-color: #f3c201;
		overflow: hidden;
		padding: 0 var(--space-s);
	}

	.cp__header__numbers.cp__header__numbers--open {
		display: flex;
		position: relative;
		top: 0;
		padding: 0;
	}

	.admin-bar .cp__header__numbers.cp__header__numbers--open {
		top: 0;
	}

	.cp__header__numbers ul {
		display: flex;
		margin: 0 auto;
		width: 100%;
		max-width: var(--size-container);
	}

	.cp__header__numbers ul li {
		flex-grow: 1;
		list-style-type: none;
	}

	.cp__header__numbers ul li a {
		display: flex;
		flex-direction: column;
		flex-wrap: wrap;
		column-gap: 0.5rem;
		padding: 0.5rem;
		line-height: 1.5rem;
	}

	.cp__header__numbers ul li a:hover {
		background-color: var(--color-primary);
	}

	.cp__header__numbers ul li span:first-child {
		font-weight: var(--font-weight-bold);
	}
}

@media screen and (min-width: 1440px) {
	.cp__header__numbers {
		display: flex;
		padding: 0;
	}

	.cp__header__numbers.cp__header__numbers--open {
		padding: 0;
	}

	.cp__header__numbers ul li a {
		flex-direction: row;
	}

	.cp__mobile_call {
		display: none !important;
	}
}

#enquiry__modal h2:before,
.woocommerce main h1.product_title:before,
.cp__product_page__header_additional:before,
.cp__product_page__header_operator:before,
.cp__product_page__header_related:before {
	content: '';
	background-image: var(--chevron);
	display: inline-block;
	background-size: contain;
	background-repeat: no-repeat;
	width: calc(var(--space-xl) - var(--space-xs));
	height: var(--space-m);
	flex-shrink: 0;
}

.cp__product_page__header_operator,
.cp__product_page__header_additional,
.cp__product_page__header_related {
	display: flex;
}

.cp__product_page__header_operator:before .cp__product_page__header_additional:before,
.cp__product_page__header_related:before {
	margin-top: 3px;
}

/* Product card - Compact */
.cp__product_card {
	border: var(--border-style);
	display: flex;
	flex-direction: column;
}

.cp__product_card .cp__product_card__image_wrapper {
	order: -3;
	aspect-ratio: 424 / 270;
	position: relative;
	overflow: hidden;
	background: var(--color-secondary);
	border-bottom: var(--border-style);
}

.cp__product_card .cp__product_card__image_wrapper--placeholder:before {
	content: '';
	background-image: url("./assets/img/logo.svg");
	background-size: 50%;
	background-position: center;
	background-repeat: no-repeat;
	width: 100%;
	height: 100%;
	position: absolute;
	opacity: 0.1;
	filter: grayscale(1);
	mix-blend-mode: hard-light;
}

.cp__product_card > *:not(.cp__product_card__image_wrapper) {
	margin: var(--space-l);
}

.cp__product_card .cp__product_card__image_wrapper img {
	object-fit: cover;
	width: 100%;
	height: 100%;
}

.cp__product_card > h3:not(.cp__product_card__image_wrapper),
.cp__product_card > h3:not(.cp__product_card__image_wrapper) a {
	font-weight: var(--font-weight-extra);
	margin-top: 0;
	margin-bottom: 0;
	overflow: hidden;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	line-height: 1.35;
	font-size: var(--step-2);
}

.cp__product_card > a:hover {
	background: var(--color-dark);
	color: var(--color-primary);
}

.cp__product_card > a {
	display: block;
	background: var(--color-primary);
	color: var(--color-dark);
	text-decoration: none;
	font-weight: var(--font-weight-extra);
	padding: 15px var(--sizing-space-m);
}

.cp__product_page__breadcrumb,
.cp__product_card .cp__product_card__breadcrumb {
	padding-left: 2px;
	order: -2;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	margin-bottom: 6px;
	margin-top: var(--space-m);
	font-size: var(--step-00);
}

.cp__product_page__breadcrumb a,
.cp__product_card .cp__product_card__breadcrumb a {
	color: var(--color-dark);
	text-decoration: none;
}

.cp__product_page__breadcrumb a:last-of-type,
.cp__product_card .cp__product_card__breadcrumb a:last-of-type {
	font-weight: var(--font-weight-bold);
}

.cp__product_card__button {
	font-weight: var(--font-weight-bold) !important;
}

.cp__product_page__breadcrumb {
	margin-top: 0;
	grid-row: 1;
	margin-left: calc(var(--space-xl) - var(--space-xs));
}

.single-product .product .cp-considerations-container {
	margin-top: var(--space-xl);
	background: var(--color-primary);
	padding: var(--space-2xl);
	outline: var(--border-style);
	outline-offset: calc(var(--space-l) * -1);
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	gap: var(--space-l);
}

.single-product .product .cp-considerations-container h2 {
	font-size: var(--step-3);
	font-weight: var(--font-weight-semi);
	margin: 0;
	margin-top: var(--space-2xl);
}

.single-product .product .cp-considerations-container h2:before {
	content: '';
	width: 32px;
	height: 45px;
	margin-top: -65px;
	background: no-repeat;
	position: absolute;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30.406' height='44.547' viewBox='0 0 30.406 44.547'%3E%3Cpath id='Path_2' data-name='Path 2' d='M-20218.326-11003.913h20v20' transform='translate(-22048.111 6529.716) rotate(135)' fill='none' stroke='%23333' stroke-width='3'/%3E%3Cpath id='Path_3' data-name='Path 3' d='M-20218.326-11003.913h20v20' transform='translate(-22048.111 6543.858) rotate(135)' fill='none' stroke='%23333' stroke-width='3'/%3E%3C/svg%3E%0A");
}

.single-product .product .cp-consideration a {
	display: flex;
	width: 100%;
	gap: var(--space-m);
	align-items: center;
	font-size: var(--step-1);
	font-weight: var(--font-weight-bold);
	overflow: hidden;
	text-overflow: ellipsis;
	flex-direction: row;
}

.single-product .product .cp-considerations > * {
	flex: 1;
	display: flex;
	align-items: flex-start;
	justify-content: center;
	min-width: 0;
}

.single-product .product .cp-considerations {
	display: flex;
	flex-direction: column;
	flex-grow: 1;
	flex-wrap: wrap;
	gap: var(--space-l);
	min-width: 0;
	max-width: 912px;
}

.single-product .product .cp-consideration img {
	max-width: var(--space-2xl);
	margin: 0;
	align-self: center;
	position: relative;
}

@media screen and (min-width: 600px) {
	.single-product .product .cp-consideration a {
		display: block;
		white-space: nowrap;
		text-align: center;
	}

	.single-product .product .cp-consideration img {
		left: 50%;
		margin-bottom: var(--space-m);
		transform: translateX(-50%);
	}

	.single-product .product .cp-considerations {
		flex-direction: row;
	}
}

/* Product card - Compact - Pricing */
.cp__product_card__price {
	display: flex;
	justify-content: space-between;
	color: var(--color-dark);
	margin: 0 var(--space-l) !important;
}

.cp__product_card__price > * {
	padding: 10px var(--space-s);
}

.cp__product_card__price > * > span {
	display: block;
}

.cp__product_card__price > * > span:last-of-type {
	font-weight: var(--font-weight-extra);
	font-size: var(--step-2);
	text-align: center;
}

.cp__product_card__price > *:first-of-type {
	border: var(--border-style);
}

/* Product card - Compact Glance */
.cp__product_card__glance,
.cp__glance__items {
	margin-top: var(--space-xs) !important;
	display: flex;
	color: var(--color-dark);
	background: var(--color-secondary);
}

.cp__glance__item {
	width: 100%;
	margin: 13px var(--sizing-space-s);
	text-align: center;
	position: relative;
}

.cp__glance__items > * + *:after,
.cp__product_card__glance > * + *:after {
	content: '';
	position: absolute;
	top: 0;
	left: calc(var(--sizing-space-s) * -1);
	height: 100%;
	width: 100%;
	border-left: 2px solid var(--color-primary);
}

.cp__glance__link {
	font-weight: var(--font-weight-bold);
	font-size: 16px;
	display: block;
	text-align: right;
	margin-top: var(--space-m);
	margin-bottom: var(--space-l);
	position: relative;
	padding-right: 26px;
}

.cp__glance__link:after,
.cp__glance__link:before {
	content: '';
	width: 10px;
	height: 10px;
	top: 7px;
	border-right: 2px solid var(--color-primary);
	border-bottom: 2px solid var(--color-primary);
	position: absolute;
	right: 10px;
	transform: rotate(315deg);
	transform-origin: center center;
	transition: right 0.1s linear;
}

.cp__glance__link:before {
	right: 4px;
}

.cp__glance__link:hover:after,
.cp__glance__link:hover:before {
	border-color: var(--color-dark);
}

/* Glance */
.cp__glance__item__name {
	font-weight: var(--font-weight-bold);
	overflow: hidden;
	font-size: 14px;
}

.cp__glance__item__value:empty:after {
	content: '-'
}

.cp__glance__item {
	display: flex;
	flex-flow: column;
	justify-content: space-between;
	min-width: 0;
}

/* Description */
.cp__products .cp__product_card__description {
	display: none;
}

@media screen and (min-width: 1200px) {
	.cp__products .cp__product_card__description {
		display: block;
	}
}

/* Hide the product description when full cards are not displayed */
.cp__products:not(.cp__products--full) .cp__product_card__description {
	display: none;
}

@media screen and (min-width: 1200px) {
	/* Product card - Full */
	.cp__products.cp__products--full {
		grid-template-columns: 1fr;
	}

	.cp__products.cp__products--full .cp__product_card {
		display: grid;
		grid-template-columns: 500px auto;
		position: relative;
		grid-template-rows: auto min-content;
	}

	.cp__products.cp__products--full .cp__product_card .cp__product_card__image_wrapper {
		aspect-ratio: unset;
		grid-row-start: 1;
		grid-row-end: 7;
		border: 0;
	}

	.cp__products.cp__products--full .cp__product_card .cp__product_card__image_wrapper img {
		aspect-ratio: 4/3;
	}

	.cp__products.cp__products--full .cp__product_card > *:not(.cp__product_card__image_wrapper) {
		height: min-content;
	}

	.cp__products.cp__products--full .cp__product_card .cp__product_card__description:empty {
		height: 0;
		margin: 0;
	}

	.cp__products.cp__products--full .cp__product_card .cp__product_card__description:empty ~ .cp__product_card__glance {
		margin-top: var(--sizing-space-m) !important;
	}

	.cp__products.cp__products--full .cp__product_card .cp__product_card__glance {
		margin-top: var(--sizing-space-l) !important;
	}

	.cp__products.cp__products--full .cp__product_card .cp__product_card__description {
		margin-bottom: 0 !important;
	}

	.cp__products.cp__products--full .cp__product_card .cp__product_card__price {
		justify-content: flex-start;
		align-self: flex-end;
		margin-bottom: var(--sizing-space-l) !important;
	}

	.cp__products.cp__products--full .cp__product_card > a {
		padding: 0;
		background: unset;
		display: flex;
		justify-content: flex-end;
		margin-top: 0;
		padding-right: calc(var(--sizing-space-m) * 2);
		position: absolute;
		bottom: 0;
		right: 0;
	}

	.cp__products.cp__products--full .cp__product_card > a:hover {
		color: var(--color-dark);
	}

	.cp__products.cp__products--full .cp__product_card .util__chevron:after,
	.cp__products.cp__products--full .cp__product_card .util__chevron:before {
		border-color: var(--color-primary);
		top: 7px;
		right: calc(var(--sizing-space-m) - 10px);
	}

	.cp__products.cp__products--full .cp__product_card .util__chevron:before {
		right: calc(var(--sizing-space-m) - 16px);
	}

	.cp__products.cp__products--full .cp__product_card .util__chevron:hover:after,
	.cp__products.cp__products--full .cp__product_card .util__chevron:hover:before {
		border-color: var(--color-dark);
	}

	.cp__products.cp__products--full .cp__product_card .util__chevron:hover:after {
		right: calc(var(--sizing-space-m) - 4px);
	}
}

/* Disable sorting */
.woocommerce-shop:not(.search-results) .storefront-sorting {
	display: none;
}

/* Shop sort buttons */
.storefront-sorting {
	display: flex;
	gap: var(--space-m);
	column-gap: var(--space-xs);
	justify-content: flex-end;
	align-items: flex-end;
	align-items: center;
	flex-wrap: wrap;
	overflow: hidden;
}

.cp__sort {
	display: none;
	gap: var(--space-xs);
	margin-right: var(--space-s);
}

@media screen and (min-width: 1200px) {
	.cp__sort {
		display: flex;
	}
}

.cp__sort button {
	all: unset;
	height: 33px;
}

.cp__sort button * {
	fill: #747471;
	pointer-events: none;
}

.cp__sort button:hover * {
	fill: var(--color-primary);
	cursor: pointer !important;
}

.cp__sort .cp__sort--active * {
	fill: var(--color-dark);
}

.woocommerce-ordering select {
	border: var(--border-style);
	padding: var(--space-xs) var(--space-s);
	font-size: var(--step-0);
	box-sizing: border-box;
	font-weight: 400;
	font-family: 'Inter';
	border-radius: 0;
	background: white !important;
}

.woocommerce-ordering {
	max-width: 50%;
	margin: 0;
}

.woocommerce-notices-wrapper {
	display: none;
}

.storefront-sorting {
	margin-bottom: var(--space-l);
}

.storefront-sorting::after {
	all: unset;
}

.facets {
	display: none;
	position: relative;
	width: 100%;
	background-color: var(--color-secondary);
	padding: var(--space-l);
	gap: var(--space-l);
}

.facets:empty {
	display: none;
}

.facets--visible {
	display: grid;
	gap: var(--space-m);
}

.facets__facet p {
	padding-left: 2px;
	order: -2;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	margin-bottom: 6px;
	font-size: var(--step-00);
	font-weight: var(--font-weight-bold);
}

.facets__facet .facetwp-facet {
	display: grid;
	grid-template-columns: auto auto 50px;
	gap: var(--sizing-space-s);
	margin: 0;
	width: 100%;
}

.facets__facet .facetwp-facet > * {
	min-width: 0;
}

.facets__facet {
	min-width: 0;
	position: relative;
}

.facets__facet input {
	background: transparent;
	border: 2px solid #747471;
	box-shadow: none;
	font-size: 14px;
	font-weight: 400;
	font-family: 'Inter';
}

input.facetwp-submit {
	padding: 0;
	min-width: 50px !important;
	font-weight: var(--font-weight-bold);
	background-color: var(--color-primary);
	border-color: var(--color-primary);
	color: var(--color-dark);
}

@media screen and (min-width: 1150px) {
	.facets--visible {
		display: flex;
	}

	.facets__facet .facetwp-facet {
		display: flex;
	}

	.facets > * + *:after {
		content: '';
		position: absolute;
		top: 0;
		left: calc(var(--space-s) * -1);
		height: 100%;
		width: 100%;
		border-left: 2px solid var(--color-primary);
		pointer-events: none;
	}
}

/* Pagination */
.facetwp-type-pager,
.woocommerce-pagination {
	margin-top: var(--sizing-space-l);
	margin-bottom: 0 !important;
}

.facetwp-type-pager .facetwp-pager,
.woocommerce-pagination ul {
	display: flex;
	gap: var(--sizing-space-m);
}

.facetwp-page {
	margin: 0 !important;
}

.woocommerce-pagination ul:after {
	all: unset !important;
}

.facetwp-type-pager a,
.woocommerce-pagination li > * {
	position: relative;
	font-size: 16px;
	background: none !important;
	font-weight: var(--font-weight-semi);
	line-height: 1;
	border: var(--border-style);
	border-color: #747471;
	border-left-width: unset !important;
	width: 45px;
	height: 45px;
	display: grid !important;
	place-content: center;
}

.facetwp-page.active,
.woocommerce-pagination li .current {
	border-color: var(--color-dark);
	color: var(--color-dark) !important;
}

.facetwp-page.prev:after,
.woocommerce-pagination .prev:after {
	position: absolute;
	content: "" !important;
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
	background-position: 55% center;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14.748' height='14.748' viewBox='0 0 14.748 14.748'%3E%3Cpath id='Path_614' data-name='Path 614' d='M0,0H9.428V9.428' transform='translate(8.081 14.041) rotate(-135)' fill='none' stroke='%23747471' stroke-width='2'/%3E%3C/svg%3E%0A");
}

.facetwp-page.prev:hover:after,
.woocommerce-pagination .prev:hover:after {
	content: "" !important;
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
	background-position: 55% center;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14.748' height='14.748' viewBox='0 0 14.748 14.748'%3E%3Cpath id='Path_614' data-name='Path 614' d='M0,0H9.428V9.428' transform='translate(8.081 14.041) rotate(-135)' fill='none' stroke='%23333' stroke-width='2'/%3E%3C/svg%3E%0A");
}

.facetwp-page.next:after,
.woocommerce-pagination .next:after {
	position: absolute;
	content: "" !important;
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
	background-position: 45% center;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14.748' height='14.748' viewBox='0 0 14.748 14.748'%3E%3Cpath id='Path_613' data-name='Path 613' d='M0,0H9.428V9.428' transform='translate(6.667 0.707) rotate(45)' fill='none' stroke='%23797979' stroke-width='2'/%3E%3C/svg%3E%0A");
}

.facetwp-page.next:hover:after,
.woocommerce-pagination .next:hover:after {
	content: "" !important;
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
	background-position: 45% center;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14.748' height='14.748' viewBox='0 0 14.748 14.748'%3E%3Cpath id='Path_613' data-name='Path 613' d='M0,0H9.428V9.428' transform='translate(6.667 0.707) rotate(45)' fill='none' stroke='%23333' stroke-width='2'/%3E%3C/svg%3E%0A");
}

.facetwp-page:hover,
.woocommerce-pagination a:hover {
	color: var(--color-dark) !important;
	border-color: var(--color-dark);
}

/* Product Page */
.cp__product_page__price.alignfull:before {
	content: '';
	width: 100%;
	background: var(--color-secondary);
	position: absolute;
	height: 4px;
	top: -4px;
	left: 0;
	z-index: -1;
}

.cp__product_page__price {
	background: var(--color-secondary);
	position: sticky;
	top: var(--js-nav-offset);
	z-index: 10;
	color: var(--color-dark);
	padding: 0;
}

.cp__product_page__price__container {
	display: flex;
	gap: var(--space-s);
	padding: var(--sizing-space-m) 0;
	margin: 0 auto;
	max-width: var(--size-container);
}

.cp__product_page__price .cp__price__dropdown {
	position: absolute;
	display: flex;
	flex-direction: column;
	justify-content: start;
	background-color: var(--color-secondary);
	gap: var(--space-xs);
	cursor: pointer;
	height: 51px;
	overflow: hidden;
}

.cp__header__numbers--open + header + #content .cp__product_page__price,
.nav--open .cp__product_page__price {
	display: none;
}

.cp__product_page__price .cp__price__dropdown > *:first-of-type:not(a) {
	border: var(--border-style);
}

.cp__product_page__price .cp__price__dropdown > * {
	padding: 7px var(--space-s);
}

.cp__product_page__price .cp__price__dropdown > * > span {
	display: block;
}

.cp__product_page__price .cp__price__dropdown > * > span:last-of-type {
	font-weight: var(--font-weight-extra);
	font-size: var(--step-2);
	text-align: center;
}

.cp__product_page__price .cp__price__dropdown .cp__product_page__price__per > span:last-of-type {
	display: flex;
	font-size: var(--step-1);
	text-align: start;
	justify-content: space-between;
	gap: var(--space-xs);
}

.cp__product_page__price .cp__price__dropdown .cp__product_page__price__per > span:last-of-type::after {
	content: '';
	width: 10px;
	height: 10px;
	margin-top: 6px;
	border-right: 2px solid var(--color-dark);
	border-bottom: 2px solid var(--color-dark);
	right: calc(var(--sizing-space-m) + 10px);
	transform: rotate(45deg);
	transform-origin: center center;
	transition: right 0.1s linear;
	margin-left: var(--space-xs);
}

.cp__product_page__price .cp__price__dropdown div.cp__product_page__price__per:not(:first-of-type) > span:last-of-type::after {
	border-color: transparent;
}

.cp__product_page__price .cp__price__dropdown .cp__product_page__price__per > span:first-of-type {
	display: none;
}

.cp__product_page__price .cp__price__dropdown .cp__product_page__price__per > span:last-of-type::before {
	content: 'day';
	font-size: var(--step-1);
	font-weight: 500;
	margin-right: auto;
}

.cp__product_page__price .cp__price__dropdown div.cp__product_page__price__per:nth-of-type(2) > span:last-of-type::before {
	content: 'week'
}

.cp__product_page__price .cp__price__dropdown div.cp__product_page__price__per:nth-of-type(3) > span:last-of-type::before {
	content: 'month'
}

.cp__product_page__price .cp__price__dropdown ~ .cp__product_page__price__link {
	padding: 12px var(--space-s);
}

.cp__product_page__price .cp__price__dropdown.cp__price__dropdown--open {
	height: auto;
}

.admin-bar .cp__product_page__price {
	top: calc(var(--js-nav-offset) + var(--admin-offset));
}

.cp__product_page__price__link {
	display: block;
	background: var(--color-primary);
	color: var(--color-dark);
	text-decoration: none;
	font-weight: var(--font-weight-bold);
	padding: 15px var(--space-s);
	height: max-content;
	width: 140px;
	align-self: center;
	margin-left: auto;
}

.cp__product_page__price__link:hover {
	background: var(--color-dark);
	color: var(--color-primary);
}

.util__chevron.cp__product_page__price__link::before,
.util__chevron.cp__product_page__price__link::after {
	top: 19px;
}

@media screen and (min-width: 740px) {
	.util__chevron.cp__product_page__price__link::before,
	.util__chevron.cp__product_page__price__link::after {
		top: 21px;
	}

	.cp__product_page__price .cp__price__dropdown {
		position: relative;
		flex-direction: row;
		height: auto;
	}

	.cp__product_page__price .cp__price__dropdown .cp__product_page__price__per > span:last-of-type {
		display: block;
		font-size: var(--step-2);
		text-align: center;
	}

	.cp__product_page__price .cp__price__dropdown .cp__product_page__price__per > span:last-of-type::after {
		content: none;
	}

	.cp__product_page__price .cp__price__dropdown .cp__product_page__price__per > span:first-of-type {
		display: block;
	}

	.cp__product_page__price .cp__price__dropdown .cp__product_page__price__per > span:last-of-type::before,
	.cp__product_page__price .cp__price__dropdown div.cp__product_page__price__per:nth-of-type(2) > span:last-of-type::before,
	.cp__product_page__price .cp__price__dropdown div.cp__product_page__price__per:nth-of-type(3) > span:last-of-type::before {
		content: none;
	}

	.cp__product_page__price .cp__price__dropdown ~ .cp__product_page__price__link {
		padding: 15px var(--space-s);
	}
}

.single-product div.product {
	overflow: visible !important;
}

.single-product .product {
	display: grid;
	grid-column-gap: var(--sizing-space-l);
	grid-template-columns: 100%;
	margin-top: calc(var(--sizing-space-l) + var(--sizing-space-s));
	margin-bottom: calc(var(--sizing-space-l) + var(--sizing-space-s));
}

.single-product .product > * {
	float: unset !important;
	grid-column: 1;
}

.single-product div.product .summary {
	width: 100% !important;
}

.single-product .product .summary {
	grid-row-start: 2;
	margin-bottom: var(--space-l) !important;
}

@media screen and (min-width: 1100px) {
	.single-product .product {
		grid-template-columns: 540px auto;
	}

	.single-product .product > * {
		grid-column-start: 1;
		grid-column-end: 3;
	}
}

.price {
	display: none;
}

.entry-summary {
	margin: 0 !important;
}

.single-product .product .woocommerce-product-gallery {
	position: relative;
	grid-row-start: 3;
	grid-row-end: 5;
	grid-column: 1;
	margin: 0 !important;
	width: 100% !important;
}

.single-product .product .woocommerce-product-gallery img {
	aspect-ratio: 1;
	object-fit: cover;
}

.single-product .product .woocommerce-product-gallery .flex-viewport {
	margin-bottom: 1.618em;
}

.single-product .product .woocommerce-product-gallery .flex-control-thumbs li {
	cursor: pointer;
}

.single-product .product .woocommerce-product-gallery .flex-control-thumbs li img {
	opacity: .5;
	transition: all, ease, .2s;
}

.single-product .product .woocommerce-product-gallery .flex-control-thumbs li:hover img,
.single-product .product .woocommerce-product-gallery .flex-control-thumbs li img.flex-active {
	opacity: 1;
}

.woocommerce-product-gallery .flex-control-thumbs {
	display: flex;
	overflow-x: scroll;
	gap: var(--space-s);
	scroll-snap-type: x mandatory;
	scroll-behavior: smooth;
}

.woocommerce-product-gallery .flex-control-thumbs::-webkit-scrollbar {
	height: 6px;
}

.woocommerce-product-gallery .flex-control-thumbs::-webkit-scrollbar-track {
	background: var(--color-secondary);
	display: block;
}

.woocommerce-product-gallery .flex-control-thumbs::-webkit-scrollbar-thumb {
	background: var(--color-dark);
}

.woocommerce-product-gallery .flex-control-thumbs::-webkit-scrollbar-thumb:hover {
	background: var(--color-primary);
}

.woocommerce-product-gallery .flex-control-thumbs:before,
.woocommerce-product-gallery .flex-control-thumbs:after {
	display: none !important;
}

.woocommerce-product-gallery .flex-control-thumbs li {
	margin: 0 !important;
	width: 100px !important;
	flex-shrink: 0;
	scroll-snap-align: start;
	margin-bottom: var(--sizing-space-s) !important;
}

.woocommerce-product-gallery img {
	width: 100%;
	max-height: 700px;
	object-fit: cover;
	object-position: center 90%;
}

@media screen and (min-width: 1100px) {
	.woocommerce-product-gallery img {
		max-height: 500px;
	}

	.single-product .product .cp__glance__container {
		grid-column: 2;
		grid-row: 3;
	}

	.single-product .product .cp-description {
		grid-column: 2;
		grid-row-start: 4;
		grid-row-end: 8;
	}
}

.single-product .product .cp-description p:not(:first-of-type) {
	margin-top: var(--space-s);
}

.single-product .product .cp-description ul {
	margin: var(--sizing-space-m);
	list-style-type: disc;
}

.single-product .product .cp-description ~ h2 {
	font-size: var(--step-4);
	font-weight: var(--font-weight-semi);
	margin-bottom: var(--space-l);
	margin-top: var(--space-xl);
}

.single-product .product .cp-description ~ h2:before {
	margin-top: 6px;
}

.single .product .cp__product_page__header_related {
	margin-bottom: calc(var(--sizing-space-l) + var(--sizing-space-m));
}

.single-product div.product .edit-link {
	display: none;
}

.single-product .product h2 {
	font-size: var(--step-1);
	font-weight: var(--font-weight-bold);
	margin-bottom: 20px;
	text-transform: capitalize;
}

.single-product .woocommerce-product-gallery__image--placeholder img {
	height: 300px;
}

.single-product .woocommerce-product-gallery__image--placeholder > img {
	opacity: 0;
}

.single-product .woocommerce-product-gallery__image--placeholder {
	background: var(--color-secondary);
	position: relative;
}

.woocommerce-product-gallery__image--placeholder:before {
	content: '';
	background-image: url("./assets/img/logo.svg");
	background-size: 50%;
	background-position: center;
	background-repeat: no-repeat;
	width: 100%;
	height: 100%;
	position: absolute;
	opacity: 0.1;
	filter: grayscale(1);
	mix-blend-mode: hard-light;
}

.single-product .product .cp-data-sheet-container {
	grid-column-start: 1;
	grid-column-end: 2;
	grid-row: 5;
}

.single-product .product .cp-data-sheet-container a {
	display: flex;
	justify-content: space-between;
	background: var(--color-secondary);
	border: var(--border-style);
	margin-top: var(--space-l);
	margin-bottom: var(--space-xl);
	padding: var(--space-s);
	font-size: 20px;
	font-weight: var(--font-weight-bold);
}

.single-product .product .cp-data-sheet-container a:after {
	content: '';
	width: 25px;
	height: 32px;
	background-size: contain;
	background-repeat: no-repeat;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='37.252' height='47.02' viewBox='0 0 37.252 47.02'%3E%3Cpath id='Path_616' data-name='Path 616' d='M25.838.363A1.138,1.138,0,0,0,25.021,0H6.678A6.2,6.2,0,0,0,.5,6.167V40.852A6.2,6.2,0,0,0,6.678,47.02h24.9a6.2,6.2,0,0,0,6.178-6.167V13.311a1.222,1.222,0,0,0-.329-.795Zm.329,3.646,7.757,8.143H28.882a2.7,2.7,0,0,1-2.715-2.7Zm5.406,40.739H6.678a3.934,3.934,0,0,1-3.907-3.9V6.167a3.934,3.934,0,0,1,3.907-3.9H23.9V9.449a4.969,4.969,0,0,0,4.986,4.975h6.6V40.852A3.926,3.926,0,0,1,31.574,44.748Zm0,0' transform='translate(-0.5)' fill='%23333'/%3E%3Cpath id='Path_617' data-name='Path 617' d='M109,401.934H90.308a1.136,1.136,0,0,0,0,2.271h18.706a1.136,1.136,0,1,0-.011-2.271Zm0,0' transform='translate(-81.029 -365.022)' fill='%23333'/%3E%3Cpath id='Path_618' data-name='Path 618' d='M125.576,187.492a1.127,1.127,0,0,0,1.658,0l6.656-7.144a1.133,1.133,0,1,0-1.658-1.545l-4.691,5.031v-12.4a1.136,1.136,0,1,0-2.271,0v12.4L120.59,178.8a1.133,1.133,0,1,0-1.658,1.545Zm0,0' transform='translate(-107.78 -154.658)' fill='%23333'/%3E%3C/svg%3E%0A");
}

.single-product .product .cp-technical-images-container {
	grid-column-end: 2 !important;
}

.single-product .product table {
	height: max-content;
}

.single-product .product table.cp-pricing-container:before {
	content: 'Pricing Breakdown';
	font-size: 20px;
	font-weight: var(--font-weight-bold);
	margin-bottom: var(--sizing-space-m);
	display: block;
	width: 300px;
}

.single-product .product table:not(.cp-pricing-container):before {
	content: 'Full Specification';
	font-size: 20px;
	font-weight: var(--font-weight-bold);
	margin-bottom: var(--sizing-space-m);
	display: block;
	width: 200px;
}

.single-product .cp__product_page__header_additional {
	margin-top: var(--sizing-space-xl);
	margin-bottom: var(--sizing-space-l);
}

@media screen and (min-width: 1100px) {
	.single-product .product .cp-data-sheet-container a {
		margin-bottom: 0;
	}
}

h2#spec {
	scroll-margin-top: calc(var(--js-nav-offset) + 126px);
}

*:not(.wp-block-table):not(.wp-block-coppard-calculator__container) > table:not(.has-background) th {
	background: unset;
	width: 30%;
	max-width: 350px;
}

*:not(.wp-block-table):not(.wp-block-coppard-calculator__container) > table:not(.has-background) tr:nth-of-type(odd) th {
	background: var(--color-secondary);
}

*:not(.wp-block-table):not(.wp-block-coppard-calculator__container) > table:not(.has-background) tbody tr:nth-child(2n) td {
	background: unset;
}

*:not(.wp-block-table):not(.wp-block-coppard-calculator__container) > table:not(.has-background) tbody td {
	background: var(--color-secondary);
}

/* Call button */
.cp__mobile_call {
	all: unset;
	display: grid;
	height: 100%;
	place-items: center;
	margin-left: auto;
}

.cp__mobile_call:hover {
	background: none;
	border: none;
}

@media screen and (min-width: 1150px) {
	.cp__mobile_call {
		margin-left: 0;
	}
}

/* Helpers */
.util__sep {
	color: var(--color-primary);
	padding: 0 5px;
}

.util__chevron {
	position: relative;
}

.util__chevron:after,
.util__chevron:before {
	content: '';
	width: 10px;
	height: 10px;
	top: 21px;
	border-right: 2px solid var(--color-dark);
	border-bottom: 2px solid var(--color-dark);
	position: absolute;
	right: calc(var(--sizing-space-m) + 10px);
	transform: rotate(315deg);
	transform-origin: center center;
	transition: right 0.1s linear;
}

.util__chevron:before {
	right: calc(var(--sizing-space-m) + 4px);
}

.util__chevron:hover:after {
	right: calc(var(--sizing-space-m) + 20px);
}

.util__chevron:hover:after,
.util__chevron:hover:before {
	border-color: var(--color-primary);
}

.util__auto_grid {
	--auto-grid-min-size: 400px;
	display: grid;
	grid-template-columns: 100%;
	grid-column-gap: var(--space-s-l);
	grid-row-gap: var(--space-l);
}

.util__auto_grid__small {
	--auto-grid-min-size: 300px;
	display: grid;
	grid-template-columns: 100%;
	grid-column-gap: var(--space-s-l);
	grid-row-gap: var(--space-l);
}

@media screen and (min-width: 380px) {
	.util__auto_grid__small {
		grid-template-columns: repeat(auto-fill, minmax(var(--auto-grid-min-size), 1fr));
	}
}

@media screen and (min-width: 440px) {
	.util__auto_grid {
		grid-template-columns: repeat(auto-fill, minmax(var(--auto-grid-min-size), 1fr));
	}
}

.util__expander {
	flex-grow: 1;
	margin: 0 !important;
}

.util__button_style {
	border: var(--border-style);
	border-color: var(--color-primary);
	padding: 14px var(--sizing-space-m);
	font-size: 16px;
	font-weight: var(--font-weight-bold);
	color: var(--color-primary);
	width: max-content;
}

#masthead > .col-full,
.site-header ul#menu-main-menu,
.cp__product_page__price__container {
	padding-left: var(--space-s);
	padding-right: var(--space-s);
}

@media screen and (min-width: 1150px) {
	.cp__header__numbers ul {
		padding-left: calc(var(--space-s) - 0.5rem);
		padding-right: calc(var(--space-s) - 0.5rem);
	}
}

/* Focus styles */
.site-header .main-navigation ul#menu-main-menu > li > a:focus {
	outline: 2px solid var(--color-dark);
	outline-offset: var(--space-2xs);
}

a.util__button_style:not(.cp__account):focus {
	outline-color: var(--color-primary) !important;
}

.cp__product_page__breadcrumb a,
.cp__product_card__breadcrumb a {
	outline-offset: 0 !important;
}

.cp__product_card a {
	outline: 0 !important
}

*:not(#content) .cp__product_card a:focus {
	text-decoration: underline;
}

.woocommerce-shop:not(.search-results) .cp__products a:focus {
	text-decoration: underline;
	outline: 0 !important;
}

.cp__header__number a:focus {
	outline: 0 !important;
	text-decoration: underline;
}

/* Modal */
#enquiry__modal[open] h2 {
	display: flex;
	grid-column: span 2;
	color: white;
	font-weight: var(--font-weight-bold);
	font-size: var(--step-3);
}

#enquiry__modal[open] h2:before {
	margin-top: 3px;
}

#enquiry__modal[open] {
	color: white;
	background: var(--color-dark);
	display: grid;
	grid-template-columns: 2fr 4fr;
	padding: var(--space-l);
	max-width: calc(100vw - var(--space-xl));
	gap: var(--space-l);
	row-gap: var(--space-s);
	outline: 3px solid #5c5c5c;
	outline-offset: calc(var(--space-s) * -1);
	border: var(--space-s) solid var(--color-dark);
	overflow-x: hidden;
}

@media screen and (min-width: 1000px) {
	#enquiry__modal[open] {
		max-width: 1000px;
	}
}

#enquiry__modal[open] form:not([method="dialog"]) {
	grid-template-columns: 1fr 1fr;
	display: grid;
	box-sizing: border-box;
	gap: var(--space-s);
	row-gap: var(--space-xs);
	margin: 0;
}

#enquiry__modal[open] form:not([method="dialog"]) > * {
	grid-column: span 2;
}

#enquiry__modal[open] form input:not([name="gdpr"]) {
	width: 100%;
}

#enquiry__modal[open] form input[readonly][type="text"] {
	color: var(--color-primary);
	border-color: var(--color-primary);
}

#enquiry__modal[open] form input,
#enquiry__modal[open] form textarea {
	background: #5c5c5c;
	border: 1px solid white;
	color: white;
	border-width: 3px;
	font-size: var(--step-0);
	font-family: 'Inter';
	padding: calc(var(--space-xs) / 1.6) var(--space-xs);
}

#enquiry__modal[open] form input:focus,
#enquiry__modal[open] form textarea:focus {
	outline: none;
}

#enquiry__modal[open] form p {
	position: relative;
}

@media screen and (min-width: 1150px) {
	#enquiry__modal[open] form > label:has([data-name="your-tel"]),
	#enquiry__modal[open] form > label:has([data-name="your-email"]) {
		grid-column: span 1;
	}
}

#enquiry__modal[open] *[name="your-message"] {
	height: 100px;
}

#enquiry__modal[open] label {
	font-weight: 400;
	font-size: var(--step-00);
}

#enquiry__modal[open] label:has(input[disabled]) {
	color: var(--color-primary);
}

#enquiry__modal[open]::backdrop {
	background: #333333;
	opacity: .6;
}

.enquiry__modal__info {
	grid-column: span 2;
	font-weight: 400;
	font-size: var(--step-0);
	margin-bottom: var(--space-s);
}

#enquiry__modal[open] h3 {
	color: white;
	font-size: var(--step-2);
	font-weight: var(--font-weight-bold);
	margin-bottom: Var(--space-xs);
}

#enquiry__modal[open] .wpcf7-submit {
	border: 0 !important;
	padding: var(--space-xs) !important;
	font-size: var(--step-0) !important;
	font-weight: var(--font-weight-bold);
	color: var(--color-dark);
}

#enquiry__modal[open] .wpcf7-submit {
	background: var(--color-primary);
}

#enquiry__modal[open] .wpcf7-list-item {
	margin: 0;
}

.cp__form__number span {
	font-size: var(--step-1);
}

.cp__form__number a {
	color: var(--color-primary);
	display: block;
	font-size: var(--step-0);
	font-variant-numeric: tabular-nums;
}

@media screen and (min-width: 500px) {
	.cp__form__number a {
		font-size: var(--step-1);
	}
}

.cp__form__number span {
	font-size: var(--step-0);
}

.wpcf7-not-valid-tip {
	color: #ff5722;
	font-size: var(--step--1);
	margin-top: 2px;
	font-weight: normal;
	display: block;
}

#enquiry__modal[open]::-webkit-scrollbar {
	height: 6px;
	width: 6px;
}

#enquiry__modal[open]::-webkit-scrollbar-track {
	background: var(--color-secondary);
	display: block;
}

#enquiry__modal[open]::-webkit-scrollbar-thumb {
	background: var(--color-primary);
}

#enquiry__modal[open]::-webkit-scrollbar-thumb:hover {
	background: var(--color-dark);
}

.enquiry__modal__info p {
	font-size: var(--step-0);
}

#enquiry__modal > form {
	position: absolute;
	top: var(--space-l);
	right: var(--space-l);
	font-size: var(--step--1);
}

#enquiry__modal > form > button {
	padding: 0;
	width: 30px;
	height: 30px;
	border: var(--border-style);
	background: none;
	border-color: var(--color-primary);
	color: var(--color-primary);
	font-weight: var(--font-weight-bold);
	display: grid;
	place-items: center;
	padding-top: 2px;
	border-width: 2px;
}

.wpcf7-form > * {
	display: block;
}

.wpcf7-response-output {
	grid-column: span 2;
	color: #46b450;
	font-size: var(--step-0);
	padding: calc(var(--space-xs) / 1.6) var(--space-xs) !important;
}

.wpcf7-spinner {
	border: 3px solid var(--color-dark);
	border-bottom-color: transparent;
	border-radius: 50%;
	-webkit-animation: 1s cf7cs-02 linear infinite;
	animation: 1s cf7cs-02 linear infinite;
	position: absolute;
	background-color: transparent !important;
	top: calc(var(--space-xs) + var(--step-00) / 4);
	right: var(--space-s);
	opacity: 1;
	margin: 0;
	height: var(--space-s);
	width: var(--space-s);
}

.wpcf7-spinner:before {
	content: unset;
}

@-webkit-keyframes cf7cs-02 {
	0% {
		transform: rotate(0deg);
	}

	100% {
		transform: rotate(360deg);
	}
}

@keyframes cf7cs-02 {
	0% {
		transform: rotate(0deg);
	}

	100% {
		transform: rotate(360deg);
	}
}

.enquiry__modal__phone,
.enquiry__modal__form {
	grid-column: span 2;
}

@media screen and (min-width: 1000px) {
	.enquiry__modal__phone,
	.enquiry__modal__form {
		grid-column: unset;
	}
}

.cp_form__numbers {
	--auto-grid-min-size: 125px;
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(var(--auto-grid-min-size), 1fr));
	grid-gap: var(--space-xs);
	grid-column-gap: var(--space-l);
}

@media screen and (min-width: 500px) {
	.cp_form__numbers {
		--auto-grid-min-size: 150px;
	}
}

/* Remove the header when it's added to a product loop for some strange reason */
.cp__products header {
	display: none;
}

.woocommerce-info:before,
.woocommerce-info:after {
	content: unset;
}

.woocommerce-info {
	border: 0;
	border-radius: 0;
	padding: var(--space-s) !important;
	background: var(--color-dark);
	color: var(--color-primary) !important;
}

.cp__filter {
	display: none;
}

.cp__filter button {
	background: var(--color-primary);
	color: var(--color-dark);
	font-family: 'Inter', sans-serif;
	font-weight: 500;
	font-size: 16px;
	border: 1px solid var(--color-primary);
	padding: var(--space-xs) var(--space-s);
}

.cp__filter button:hover {
	text-decoration: underline;
}

.flex-direction-nav {
	margin: var(--space-m) 0 0;
	padding: 0;
	list-style: none;
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 40px;
}

.flex-prev,
.flex-next {
	position: relative;
	display: block;
	display: flex;
	align-items: center;
	font-weight: 600;
	gap: var(--space-xs);
	background: var(--color-primary);
	padding: var(--space-xs) var(--space-s);
	font-size: 14px;
}

.flex-next:after {
	margin-top: 2px !important;
	content: '';
	width: 8px;
	height: 8px;
	display: block;
	top: 21px;
	border-right: 2px solid var(--color-dark);
	border-bottom: 2px solid var(--color-dark);
	right: calc(var(--sizing-space-m) + 10px);
	transform: rotate(315deg);
	transform-origin: center center;
	transition: right 0.1s linear;
}

.flex-prev:before {
	margin-top: 2px !important;
	content: '';
	width: 8px;
	height: 8px;
	display: block;
	top: 21px;
	border-right: 2px solid var(--color-dark);
	border-bottom: 2px solid var(--color-dark);
	right: calc(var(--sizing-space-m) + 10px);
	transform: rotate(135deg);
	transform-origin: center center;
	transition: right 0.1s linear;
}

/* Restyle glance */
.cp__products:not(.cp__products--full) .cp__product_card__glance,
.cp__products:not(.cp__products--full) .cp__glance__items,
.cp__products--full .cp__product_card__glance {
	flex-direction: column;
}

.cp__products:not(.cp__products--full) .cp__glance__item,
.cp__products--full .cp__glance__item {
	flex-direction: row;
	width: auto;
	padding: var(--sizing-space-s) 13px;
	margin: unset;
	text-align: left;
}

.cp__products:not(.cp__products--full) .cp__glance__items > * + *:after,
.cp__products:not(.cp__products--full) .cp__product_card__glance > * + *:after {
	border-left: unset;
	border-top: 2px solid var(--color-primary);
	left: unset;
	top: -2px;
	width: calc(100% - 26px);
}

.cp__products:not(.cp__products--full) .cp__glance__item__value {
	text-align: right;
}

.cp__glance__container .cp__glance__items {
	flex-direction: column;
}

.cp__glance__container .cp__glance__item {
	flex-direction: row;
	width: auto;
	padding: var(--sizing-space-s) 13px;
	margin: unset;
	text-align: left;
}

.cp__glance__container .cp__glance__items > * + *::after,
.cp__glance__container .cp__product_card__glance > * + *::after,
.cp__products--full .cp__glance__items > * + *::after,
.cp__products--full .cp__product_card__glance > * + *::after {
	border-left: unset;
	border-top: 2px solid var(--color-primary);
	left: unset;
	top: -2px;
	width: calc(100% - 26px);
}

.cp__glance__container .cp__glance__item__value,
.cp__products--full .cp__glance__item__value {
	text-align: right;
}

@media screen and (min-width: 1300px) {
	.cp__glance__container .cp__glance__items,
	.cp__products--full .cp__product_card__glance {
		flex-direction: row;
	}

	.cp__glance__container .cp__glance__item,
	.cp__products--full .cp__glance__item {
		width: 100%;
		padding: 0;
		margin: 13px var(--sizing-space-s);
		text-align: center;
		flex-direction: column;
	}

	.cp__glance__container .cp__glance__item__value,
	.cp__products--full .cp__glance__item__value {
		text-align: center;
	}

	.cp__glance__container .cp__glance__items > * + *::after,
	.cp__glance__container .cp__product_card__glance > * + *::after,
	.cp__products--full .cp__glance__items > * + *::after,
	.cp__products--full .cp__product_card__glance > * + *::after {
		border-left: 2px solid var(--color-primary);
		border-top: 0;
		left: -2px;
		top: 0;
		width: 0;
	}
}

/* Add metric */
.woocommerce-product-attributes-item__value p:after,
.cp__glance__item__value:after {
	content: attr(data-metric);
	color: #333333;
	font-size: 14px;
	margin-left: 3px;
}

.woocommerce-product-attributes-item__value p:after {
	margin-left: unset;
}

/* Header Overrides */

.site-main > header.wp-block-coppard-panel + *:not(.wp-block-coppard-panel),
.woocommerce-shop:not(.search-results) .site-main > header.wp-block-coppard-panel + .storefront-sorting + *:not(.wp-block-coppard-panel) {
	margin-top: var(--space-l);
}

.site-main > header.wp-block-coppard-panel:has(p:empty) h1 {
	margin-top: 0;
}

/* Google reCAPTCHA */

.grecaptcha-badge {
	visibility: hidden;
}

.wpcf7-grecaptcha-message {
	order: 20;
	font-size: 0.875rem;
	font-style: italic;
	opacity: 0.8;
}

.wpcf7-grecaptcha-message a {
	color: inherit;
	text-decoration: underline !important;
}

@media screen and (min-width: 1150px) {
	.wpcf7-grecaptcha-message {
		grid-column: span 2;
	}
}

/* Elementor */

.elementor-widget-video .elementor-wrapper:has(div.elementor-video:empty) {
	display: none;
}

.elementor-widget-video .elementor-widget-container:has(div.elementor-video:empty)::after {
	display: block;
	content: 'Accept cookies to view this video';
	background-color: var(--color-secondary);
	padding: var(--space-s);
}
