a {
	color: var(--colors-green)
}

h1 {
	font-size: 2.5em;
	line-height: 1.125em;
	font-weight: 500;
}

sup {
  vertical-align: super;
  font-size: smaller;
}

h3,
.woocommerce ul.products li.product .woocommerce-loop-category__title,
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h3 {
	color: #878787;
	font-size: 1.25em;
	line-height: 1.25em;
	font-weight: 600;
}

.woocommerce ul.products li.product h3 {
	margin: 1rem 0;
}

.woocommerce ul.products li.product .wp-block-buttons { margin-bottom: 0; }

.woocommerce ul.products li.product a { text-decoration: none; }

h4 {
	color: #878787;
	font-size: 1.25em;
	line-height: 1.25em;
	font-weight: 600;
}

h2 {
	color: #878787 !important;
	font-size: .875em;
	font-weight: 500;
	font-family: 'AeonikFono-Regular', sans-serif;
	position: relative;
	padding-left: 1.25em;
	text-transform: uppercase;
	margin-bottom: 1.7857142857142858em;
}

h2.wc-block-components-title.wc-block-components-title {
	color: #878787;
	font-size: .875em;
	font-weight: 500;
	font-family: 'AeonikFono-Regular', sans-serif;
	position: relative;
	padding-left: 1.25em;
	text-transform: uppercase;
	margin-bottom: 1.7857142857142858em;
}

h2::before {
	content: "↳";
	font-family: 'AeonikFono-Regular', sans-serif;
	color: var(--colors-grey-dark);
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	font-size: 14px;
	width: 1em;
	height: .75em;
}

ul { list-style-type: unset; list-style-position: outside;  margin-left: 1.5rem; }
ol { list-style-type: decimal; list-style-position: outside;  margin-left: 1.5rem; }

li::marker { color: var(--colors-green); }
li { margin-bottom: 1rem; }

p {

	line-height: 1.25em;
	margin-bottom: 1rem;
}

:root :where(.wp-block-cover h1:not(.has-text-color)),
:root :where(.wp-block-cover h2:not(.has-text-color)),
:root :where(.wp-block-cover h3:not(.has-text-color)),
:root :where(.wp-block-cover h4:not(.has-text-color)),
:root :where(.wp-block-cover h5:not(.has-text-color)),
:root :where(.wp-block-cover h6:not(.has-text-color)),
:root :where(.wp-block-cover p:not(.has-text-color)) {
	color: #878787;
}

p strong {
	font-weight: 600;
}

.is-style-with-icon {
	display: flex;
	align-items: center;
	gap: 1.25em;
}

h4.is-style-with-plusminus {
	display: flex !important;
	align-items: flex-start;
	line-height: 1.75em;
	cursor: pointer;
	color: #9A9A9A;
}

h4.is-style-with-plusminus span {
	border-radius: 9999px;
	background: var(--colors-green);
	height: 2rem;
	width: 2rem;
	position: relative;
	display: inline-block;
	margin-right: .875em;
}

h4.is-style-with-plusminus span::before,
h4.is-style-with-plusminus span::after
{
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate3d(-50%,-50%,0);
	width: 1rem;
	height: 3px;
	background: white;
	border-radius: 1px;
}

h4.is-style-with-plusminus span::before {
	transform: translate3d(-50%,-50%,0) rotate(-90deg);
	transition: transform .12s linear;
}
h4.is-style-with-plusminus span::after {
	transform: translate3d(-50%,-50%,0) rotate(0deg);
}

h4.is-style-with-plusminus.wp-block-accordion__item--active { color: #878787; }
h4.is-style-with-plusminus.wp-block-accordion__item--active span::before {
	transform: translate3d(-50%,-50%,0) rotate(0deg);
}

.is-style-rounded {
	border-radius: 40px;
}

.wp-block-image {
	margin: 0;
}

.wp-block-columns {
	gap: 1rem;
}

.wp-block-cover.alignfull {
	overflow: visible;
	padding: 0;
	position: relative;
	z-index: 2;
}

.wp-block-cover.page-hero {
	height: calc(100dvh - 96px);
}

.wp-block-cover.alignfull .wp-block-cover__image-background,
.wp-block-cover.alignfull .wp-block-cover__background {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate3d(-50%,0,0);
	width: 100dvw;
	z-index: 1;
}

.wp-block-cover.alignfull .wp-block-cover__inner-container {
	position: relative;
	z-index: 2;
	padding: 3.5em 0;
}

.wp-block-cover.page-hero .wp-block-cover__inner-container {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	align-items: flex-start;
	height: 100%;
}

.wp-block-cover.page-hero .wp-block-cover__inner-container > * {
	margin-left: 0 !important;
}

.wp-block-group {
	position: relative;
	z-index: 3;
}

@media all and (min-width: 960px) {
	.wp-block-cover.page-hero {
		height: calc(100dvh - 108px);
	}
}
@media all and (min-width: 1280px) {
	.wp-block-cover.page-hero {
		max-height: 600px;
	}

	.wp-block-cover.alignfull .wp-block-cover__inner-container {
		padding: 0 6.25em;
		justify-content: center;
	}
}


/* Columns media query size fix */
@media (max-width: 959px){
	.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column {
		flex-basis: 100% !important;
	}
}
@media (min-width: 960px){
	.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column {
		flex-basis: 0 !important;
		flex-grow: 1 !important;
	}
}

@media (max-width: 959px){
	.wp-block-columns {
		flex-wrap: wrap !important;
	}
}
@media (min-width: 960px){
	.wp-block-columns {
		flex-wrap: nowrap !important;
	}
}

/* hoop image mask */

.is-style-hoop-mask:not(.wp-block) {
	mask-image: url('../img/hoop-solid.svg');
	mask-repeat: no-repeat;
	mask-position: center;
	mask-size: contain;
	position: relative;
}

.is-style-hoop-mask::after {
	content: "";
	background: url('../img/hoop.svg') center center no-repeat;
	background-size: contain;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	z-index: 4;
}

.is-style-hoop-mask img {
	vertical-align: baseline;
}

/* heading with underline */
.is-style-with-underline {}
h4.is-style-with-underline {
	margin-bottom: 1.5rem;
}

h3.is-style-with-underline {
	margin-bottom: 2rem;
}

h3.is-style-with-underline + .wp-block-group {
	margin-bottom: 1rem;
}

p + h4.is-style-with-underline {
	margin-top: 1.5rem;
}

@media all and (min-width: 960px) {
	h3.is-style-with-underline,
	h4.is-style-with-underline {
		margin-bottom: 2rem;
	}

	h3.is-style-with-underline,
	h4.is-style-with-underline,
	h4.is-style-with-plusminus {
		display: block;
		border-bottom: 1px solid rgba(0,0,0,.1);
		min-height: 3.5rem;
	}

	/* If they ever want sticky left column */
	/*h2.is-style-with-underline {
		position: sticky;
		top: 12rem;
	}*/

	p + h4.is-style-with-underline {
		margin-top: 2rem;
	}
}

.wp-block-social-links .wp-social-link span:not(.screen-reader-text) {
	color: #878787;
	font-size: 1.25rem;
}

.wp-block-table table tr th,
.wp-block-table table tr td {
	font-size: 1.25em;
	padding: 1rem 0;
}

.wp-block-table table tbody tr td,
.wp-block-table table tr th
{
	border-bottom: 1px solid rgba(0,0,0,.1) !important;
}

.wp-block-table table tr th,
.wp-block-table table tfoot tr td {
	font-weight: 600;
}

.wp-block-news-events {
	display: grid;
	grid-template-columns: 1fr;
	gap: 4rem;
	position: relative;
	z-index: 3;
}

.wp-block-news-item-row {
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
}

.wp-block-news-item-row h4 {
	margin-bottom: 2rem;
}

.wp-block-news-item-row__image { border-radius: 40px; overflow: hidden; aspect-ratio: 436/320; max-width: 436px; }
.wp-block-news-item-row__image img { width: 100%; height: 100%; object-fit: cover; }

.wp-block-news-item-row__date {
	color: var(--colors-green);
	display: block;
	font-size: 0.9375em;
	margin-bottom: 1rem;
}

.wp-block-news-item-row .wp-block-buttons { margin-top: 2rem; }

@media all and (min-width: 768px) {
	.wp-block-news-item-row {
		display: grid;
		grid-template-columns: .85fr 1fr;
		gap: 3rem;
	}
}
@media all and (min-width: 1280px) {
	.wp-block-news-item-row {
		gap: 6rem;
	}
}

/* form stuffs */

.wpcf7-form {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	margin-bottom: 3rem;
}

.wpcf7-form button.submit-button {
	align-self: flex-start;
	margin-top: 2rem;
}

.wpcf7-form-control  {
	background: #F4F4F4;
	color: rgba(0,0,0,0.5);
	font-size: 0.875em;
	font-family: 'AeonikFono-Regular', sans-serif;
	border-radius: 40px;
	border: 0;
	text-transform: uppercase;
	padding: 1.2857142857142858em 1.6428571428571428em;
	width: 100%;
}

.woocommerce-form-login__rememberme {
	margin-bottom: 1rem;
}

.woocommerce-form-login p.form-row:not(.form-row-wide) {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-end !important;
}

.woocommerce-form-login .lost_password {
	text-align: right;
}

textarea {
	resize: none;
}


/* category-accordion */
.search-with-filters {
	background: #f4f4f4;
	border-radius: 40px;
	padding: 8px 9px;
	margin-bottom: 4rem;
}

.search-with-filters__inner {
	background: white;
	border-radius: 40px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 12px 14px;
}

.search-with-filters__inner form {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 1rem;
}

.search-with-filters__inner form input[type="text"] {
	border: 0;
	background: white;
	text-transform: uppercase;
	color: rgba(0,0,0,.3);
}

.filters-container {
	display: grid;
	grid-template-rows: 0fr;
	transition: grid-template-rows .2s ease-in;
}

.filter-open { cursor: pointer; }

.filters-container__inner {
	overflow: hidden;
}

.filters-container.filters--open {
	grid-template-rows: 1fr;
}

.category-accordion {
	list-style-type: none;
	margin: 0;
	padding: 2rem .875rem 2rem .5rem;
}

.category-accordion li {
	font-size: 1.25rem;
	width: 100%;
	margin-bottom: 1rem;
}

.category-accordion li:last-of-type {
	margin-bottom: 0;
}

.category-accordion li a {
	color: #9A9A9A;
	text-decoration: none;
	font-weight: 600;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: .765em;
}

.category-accordion li a span.open-close {
	margin-left: auto;
	width: 2rem;
	height: 2rem;
}

.category-accordion li img { filter: grayscale(100%); opacity: .5; width: 40px; }

.filter-submenu {
	display: grid;
	grid-template-rows: 0fr;
	transition: grid-template-rows .2s ease-in;
}

a.sub-menu--active + .filter-submenu {
	grid-template-rows: 1fr;
}

a.sub-menu--active img { filter: none; opacity: 1; }

a.sub-menu--active span { color: #878787; }

.filter-submenu__inner {
	overflow: hidden;
}

.filter-submenu ul {
	padding: 1rem 0;
}
.filter-submenu li {
	margin-bottom: .25rem;
}

.filter-submenu li a {
	font-weight: 400;
	position: relative;
	padding-left: 20px;
}

.filter-submenu li a:hover,
.filter-submenu li a.filter-menu--active {
	text-decoration: underline;
	color: var(--colors-green);
}

.filter-submenu li a::before {
	content: "↳";
	color: #9A9A9A;
	opacity: .5;
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	font-size: 20px;
	width: 1.2em;
	height: 24px;
	transform: translate3d(0,-50%,0);
}

.filter-reset-filters {
	display: flex;
	align-items: center;
	gap: .5rem;
	font-size: .875rem;
	text-transform: uppercase;
	color: rgba(0,0,0,.5);
	text-decoration: none;
	margin: 0 0 1rem 1.15em;
}

@media all and (min-width: 768px) {

	.search-with-filters { background: none; padding: 0; }

	.search-with-filters__inner {
		background-color: #f4f4f4;
	}

	.search-with-filters__inner form input[type="text"] {
		background-color: #f4f4f4;
	}

	.search-with-filters .filter-open { display: none; }

	.filter-submenu__inner ul {
		padding-left: 2rem;
	}

	.category-accordion li {
		padding-bottom: 1rem;
		border-bottom: 1px solid #f4f4f4;
	}

	.filter-submenu li { padding-bottom: 0; border-bottom: 0; }

	.filter-reset-filters {
		margin: 0 0 1rem .5em;
	}

}

@media all and (min-width: 960px) {
	.wp-block-knowledge-hub .wp-block-columns {
		gap: 8rem;
	}

	.wp-block-knowledge-hub .wp-block-columns .wp-block-column:first-of-type {
		max-width: 410px;
	}

	.filters-container {
		grid-template-rows: 1fr;
	}

}

.wp-block-kb-items-list {
	display: grid;
	grid-template-columns: 1fr;
	gap: 6.0625rem;
}

.wp-block-kb-item__content {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.category-description-text {
	font-size: 1.875em;
}


.wp-block-medi-cat-list {
	margin: 2rem 0;
}
.wp-block-medi-cat-list__inner {
	display: grid;
	grid-template-columns: 1fr;
	gap: 2rem;
}

.wp-block-medi-cat,
.wp-block-medi-cat__info {
	display: flex;
	flex-direction: column;
	gap: 2rem;
}
.wp-block-medi-cat__image {
	border-radius: 40px;
	background-color: #fafafa;
	padding: .5rem;
	overflow: hidden;
}

.wp-block-medi-cat__image img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.wp-block-medi-cat__info {text-align: center;}
.wp-block-medi-cat__info h3 a {
	 color: inherit;
	text-decoration: none;
}

@media all and (min-width: 768px) {
	.wp-block-medi-cat-list__inner { grid-template-columns: repeat(2, 1fr); }
}
@media all and (min-width: 1024px) {
	.wp-block-medi-cat-list__inner { grid-template-columns: repeat(3, 1fr); }
}

.wp-block-buttons-is-layout-flex {
	display: flex;
	flex-direction: column;
	gap: 2em;
	margin: 2em 0;
}

@media all and (min-width: 768px) {
	.wp-block-buttons-is-layout-flex {
		flex-direction: row;
	}
}

.mediplus-single-product-image,
.wp-block-media-gallery {
	margin: 2em auto;
	position: relative;
}

.wp-block-media-gallery__button {
	position: absolute;
	top: 50%;
	z-index: 3;
}

.wp-block-media-gallery__button--prev {
	left: 0;
	transform: translate3d(-50%,-50%,0);
}

.wp-block-media-gallery__button--next {
	right: 0;
	transform: translate3d(50%,-50%,0);
}

.wp-block-media-gallery .slick-dots {
	bottom: 2em;
}

.wp-block-media-gallery .slick-dots li button::before {
	color: white;
	opacity: 1;
}

.wp-block-media-gallery .slick-track {
	display: flex !important;
}

.wp-block-media-gallery .slick-slide
{
	height: inherit !important;
}

.wp-block-media-gallery__item {
	border-radius: 40px;
	overflow: hidden;
	position: relative;
}

.wp-block-media-gallery__item::before {
	display: block;
	content: "";
	width: 100%;
	padding-top: 61%;
}

.mg-block-media-gallery__item-inner {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

.wp-block-media-gallery__item img {
	display: block;
	height: 100%;
	width: 100%;
	object-fit: contain;
}

.wp-block-media-gallery__video {
	position: relative;
	height: 100%;
	width: 100%;
}

.wp-block-media-gallery__video video { width: 100%; height: 100%; object-fit: cover; }

.wp-block-media-gallery__video-play {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate3d(-50%,-50%,0);
	width: 120px;
	height: 120px;
}

.wp-block-media-gallery__video-play:hover svg path {
	fill: var(--colors-orange);
}

.wp-block-media-gallery__video svg {
	width: 100%;
	height: 100%;
}


@media all and (min-width: 768px) {
	.mediplus-single-product-image,
	.wp-block-media-gallery {
		margin: 4em auto;
	}
}
@media all and (min-width: 1024px) {
	.mediplus-single-product-image,
	.wp-block-media-gallery {
		margin: 6em auto;
	}
}

/* Product accordion */

.wp-block-product-accordion {
	border-top: 1px solid rgba(0,0,0,.1);
	padding-top: .25rem;
}

.wp-block-product-accordion--large-top-margin {
	margin-top: 4rem;
}

.wp-block-product-accordion__item {
	border-bottom: 1px solid rgba(0,0,0,.1);
	padding-bottom: .5rem;
	padding-top: 1rem;
	display: flex;
	flex-wrap: wrap;
	gap: 0;
	justify-content: flex-end;
	width: 100%;
}

.wp-block-product-accordion__item:last-of-type { border-bottom: 0; }

.wp-block-product-accordion__item h4 {
	display: block;
	line-height: 1.75em;
	cursor: pointer;
	color: #9A9A9A;
	margin-right: auto;
	order: 1;
}

.wp-block-product-accordion__content {
	display: grid;
	grid-template-rows: 0fr;
	transition: grid-template-rows .2s linear;
	order: 3;
}

.wp-block-product-accordion__item--active .wp-block-product-accordion__content {
	grid-template-rows: 1fr;
}

.wp-block-product-accordion__content--inner {
	overflow: hidden;
	padding-top: .5rem;
}

.wp-block-product-accordion__icon {
	border-radius: 9999px;
	background: var(--colors-green);
	height: 2rem;
	width: 2rem;
	position: relative;
	display: inline-block;
	margin-right: .875em;
	order: 2;
}

@media all and (min-width: 768px) {
	.wp-block-product-accordion__item {
		gap: 0 1rem;
	}
}

@media all and (min-width: 960px) {
	.wp-block-product-accordion__item {
		gap: 0 2rem;
		flex-wrap: nowrap;
	}
	.wp-block-product-accordion__content { order: 2; }
	.wp-block-product-accordion__icon {
		order: 3
	}

	.wp-block-product-accordion__content {
		max-width: 410px;
	}
}

.wp-block-product-accordion__icon::before,
.wp-block-product-accordion__icon::after
{
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate3d(-50%,-50%,0);
	width: 1rem;
	height: 3px;
	background: white;
	border-radius: 1px;
}

.wp-block-product-accordion__icon::before {
	transform: translate3d(-50%,-50%,0) rotate(-90deg);
	transition: transform .12s linear;
}
.wp-block-product-accordion__icon::after {
	transform: translate3d(-50%,-50%,0) rotate(0deg);
}

.wp-block-product-accordion__item--active h4 { color: #878787; }
.wp-block-product-accordion__item--active .wp-block-product-accordion__icon::before {
	transform: translate3d(-50%,-50%,0) rotate(0deg);
}

@media all and (min-width: 1024px) {

	.wp-block-product-accordion__item {

	}

}

ul.products.columns-4 {
	margin: -4.25em 0 0;
	display: grid;
	gap: 1rem;
	width: 100%;
}

@media all and (min-width: 768px) {
	ul.products.columns-4 {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media all and (min-width: 960px) {
	ul.products.columns-4 {
		grid-template-columns: repeat(3, 1fr);
	}
}

@media all and (min-width: 1280px) {
	ul.products.columns-4 {
		grid-template-columns: repeat(4, 1fr);
	}
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
	border-radius: 40px;
	background: white;
	overflow: hidden;
	padding: 2rem 1.5rem;
	text-align: center;
	margin: 0;
	width: auto !important;
	float: none !important;
	clear: both !important;
	max-width: 299px;
	display: flex;
	flex-direction: column;
}

.woocommerce ul.products::before,
.woocommerce ul.products::after,
.woocommerce-page ul.products::before,
.woocommerce-page ul.products::after {
	display: none;
}

.woocommerce ul.products li.product .wp-block-buttons {
	justify-content: center;
	margin-top: auto;
}

.woocommerce ul.products li.product h3,
.woocommerce ul.products li.product p
{ color: #878787; }

.woocommerce ul.products li.product img { mix-blend-mode: multiply; }

.woocommerce #content div.product div.images,
.woocommerce div.product div.images,
.woocommerce-page #content div.product div.images,
.woocommerce-page div.product div.images {
	float: none;
	width: auto;
	margin: 4rem 1rem 2rem;
	border-radius: 40px;
	overflow: hidden;
}

.variation-table thead {
	border: none;
	clip: rect(0 0 0 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
}

.variation-table tr {
	display: block;
	border-bottom: 1px solid rgba(0,0,0,0.1);
}

.variation-table td {
	display: block;
	padding: .5rem 0;
}

.variation-table tr:not(:first-of-type) td:first-of-type { padding-top: 2rem; }

.variation-table td::before {
	/*
	* aria-label has no advantage, it won't be read inside a table
	content: attr(aria-label);
	*/
	content: attr(data-label);
	display: block;
	font-weight: bold;
	text-transform: uppercase;
	margin-bottom: .5rem;
}

.variation-table td .wp-block-buttons {
	margin: 0 0 1rem;
}

.variation-table td .product-sku {
	line-height: 1.5em;
}

.variation-table td .product-sku::before {
	content: "Product code: ";
}

@media all and (min-width: 960px) {


	.variation-table tr { display: table-row; }
	.variation-table td { display: table-cell; }

	.variation-table thead { clip: revert; height: auto; margin: 0; overflow: visible; width: 100%; position: relative; }
	.variation-table td::before { display: none; }

	.variation-table td:first-of-type { width: 10%; font-weight: bold; }
	.variation-table td:nth-of-type(2) { width: 40%; padding-right: 4rem; }
	.variation-table td:nth-of-type(3) { width: 10%; }
	.variation-table td:nth-of-type(4) { width: 10%; }
	.variation-table td:nth-of-type(5) { width: 15%; min-width: 190px; }

	.variation-table td,
	.variation-table th {
		border-bottom: 1px solid rgba(0,0,0,0.1);
	}

	.variation-table th {
		padding: .5rem 0 2rem;
	}
	.variation-table td {
		padding: 1.5rem 0;
	}
	.variation-table tr:last-of-type td {
		border-bottom: 0;
	}

	.variation-table .wp-block-buttons-is-layout-flex {
		margin: 0;
	}

}

.variations_form {
	display: none;
}

.wp-block-gallery.is-style-3-vert-stack .wp-block-image {

	width: 100%;
}

.wp-block-gallery.is-style-3-vert-stack .wp-block-image {
	border-radius: 30px;
	background: #F7F7F7;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 2em !important;
	aspect-ratio: 517/280;
	position: relative;
}

.wp-block-gallery.is-style-3-vert-stack figure.wp-block-image figcaption {
	background: none;
	position: absolute;
	bottom: 1rem;
	left: 2rem;
	z-index: 2;
	margin-left: 1em;
	font-size: 0.9375rem;
	font-weight: 600;
	color: var(--colors-green);
	padding: 0;
	text-align: left;
	box-sizing: border-box;
	max-height: none;
	overflow: unset;
	scrollbar-color: #0000 #0000;
	scrollbar-gutter: stable both-edges;
	scrollbar-width: thin;
	width: 100%;
	will-change: transform;
}

.wp-block-gallery.is-style-3-vert-stack .wp-block-image figcaption::before {
	content: "•";
	color: #878787;
	display: inline-block;
	width: .775em;
	margin-left: -.5em;
}


.wp-block-gallery.is-style-3-vert-stack .wp-block-image img {
	mix-blend-mode: multiply;
	width: 80%;
	height: auto;
	object-fit: contain;
	position: relative;
	z-index: 1;
}

.wp-block-gallery.is-style-single-large {}

.wp-block-gallery.is-style-single-large .wp-block-image {
	border-radius: 30px;
	background: #F7F7F7;
	overflow: hidden;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 2em !important;
	aspect-ratio: 517/600;
	position: relative;
}


.wp-block-gallery.is-style-grid {}

.wp-block-video {
	border-radius: 40px;
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
	overflow: hidden;
}

.wp-block-custom-account .acf-innerblocks-container {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.wp-block-custom-account .woocommerce-MyAccount-navigation,
.wp-block-custom-account .woocommerce-MyAccount-content {
	float: none;
	width: 100%;
}

.woocommerce-MyAccount-content .form-row label { margin-bottom: .5rem; }

.woocommerce-MyAccount-content form h3 {
	margin-bottom: 1rem;
}

.wp-block-custom-account .woocommerce-MyAccount-navigation {
	background: #f4f4f4;
	border-radius: 20px;
	padding: 2rem;
}

.wp-block-custom-account .woocommerce-MyAccount-navigation ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 1.25em;
}

.wp-block-custom-account .woocommerce-MyAccount-navigation ul li { margin: 0; }
.wp-block-custom-account .woocommerce-MyAccount-navigation ul li a { text-decoration: none; color: #878787; }
.wp-block-custom-account .woocommerce-MyAccount-navigation ul li.is-active a { font-weight: 600; }
.wp-block-custom-account .woocommerce-MyAccount-navigation ul li a:hover { text-decoration: underline; color: var(--colors-green); }

@media all and (min-width: 960px) {

	.wp-block-custom-account .acf-innerblocks-container {
		flex-direction: row;
		justify-content: space-between;
		gap: 2rem;
	}

	.wp-block-custom-account .woocommerce-MyAccount-navigation,
	.wp-block-custom-account .woocommerce-MyAccount-content {
		width: auto;
	}

	.wp-block-custom-account .woocommerce-MyAccount-navigation {
		flex-basis: 30%;
		max-width: 250px;
	}

	.wp-block-custom-account .woocommerce-MyAccount-content {
		flex-grow: 1;
	}

}

@media all and (min-width: 1280px) {
	.wp-block-custom-account .acf-innerblocks-container {
		gap: 4rem;
	}
}

.woocommerce-info {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding-right: 1.5em;
}

.woocommerce-info::before {
	top: 50%;
	transform: translate3d(0,-50%,0);
}

.woocommerce-info::after { display: none; }

.woocommerce-page .woocommerce-info .button {
	margin-left: 1em;
}

.woocommerce-Address-title {
	display: flex;
	align-items: baseline;
	gap: 1rem;
	margin: 0 0 1em;
}

.woocommerce-form-row input + span {
	font-size: 0.75rem;
	display: inline-block;
	margin-top: .35rem;
}

.woocommerce .woocommerce-EditAccountForm fieldset legend {
	font-weight: 600;
	margin: 0 0 1rem;
}




/* Basket */

.mediplus-basket {
	width: 100%;
	text-align: right;
	border-collapse: collapse;
	margin-top: 4rem;
}

.mediplus-basket .actions { padding: 0; border-bottom: 0; }

.mediplus-basket thead tr th {
	border-bottom: 1px solid rgba(0,0,0,0.1);
	font-weight: 600;
	font-size: 1.25rem;
	padding: .5rem 0 1.5625rem;
}

.mediplus-basket thead tr th:first-of-type {
	font-size: 1.5625rem;
}

.mediplus-basket td:nth-of-type(2),
.mediplus-basket th:nth-of-type(2) {
	display: none;
}

/* .mediplus-basket .actions button { display: none; } */

.mediplus-basket tbody tr td {
	vertical-align: middle;
	border-bottom: 1px solid rgba(0,0,0,0.1);
	padding: 1.25rem .5rem;
	font-size: 1rem;
}

.mediplus-basket td.actions {
	padding-top: 1rem;
}

.mediplus-basket .woocommerce-shipping-methods {
	margin-left: 50%;
}

.woocommerce-shipping-totals td {
	background: none !important;
	padding: 2rem 0;
}

.woocommerce-shipping-totals ul {
	list-style-type: none;
	margin-left: 0 !important;
}

.mediplus-basket .product-name { text-align: left; line-height: 1.35em; display: table-cell; }
.mediplus-basket .product-name .variation { margin-left: .35em; display: flex; gap: .35rem; }
.mediplus-basket .product-name .variation dt { text-transform: capitalize; }
.mediplus-basket .product-name .variation p { margin: 0; padding: 0; line-height: inherit; }
.mediplus-basket .product-quantity {text-align: left;}
.mediplus-basket td.product-name a { text-decoration: none; color: #878787; }
.mediplus-basket td.product-name a:hover { text-decoration: underline; color: var(--colors-green); }
.mediplus-basket td.product-code {
	color: #878787;
	opacity: .7;
}

.mediplus-basket .product-code {
	text-align: left;
}

.mediplus-basket th.product-subtotal,
.mediplus-basket td.product-subtotal
{ text-align: right;
}

@media all and (min-width: 960px) {
	.mediplus-basket tbody tr td {
		padding: 1.5625rem 0;
		font-size: 1.25rem;
	}

	.mediplus-basket .product-quantity {
		width: 25%;
	}

	.mediplus-basket .product-code {
		width: 15%;
	}

	.mediplus-basket th.product-subtotal,
	.mediplus-basket td.product-subtotal
	{
		width: 10%;
	}
}


.product-quantity-wrapper {
	background: #f4f4f4;
	border-radius: 40px;
	padding: .5rem 1.25rem;
	position: relative;
	max-width: 175px;
	margin-top: 1.5rem;
}

.product-quantity-wrapper::after {
	content: "";
	display: table;
	clear: both;
}

body .mediplus-basket .wqpmb_input_text { width: 60px; padding: 0 !important; }

body .mediplus-basket .qib-button-wrapper { width: 100%; justify-content: space-between }
body .mediplus-basket .qib-button-wrapper .minus.qib-button,
body .mediplus-basket .qib-button-wrapper .plus.qib-button {
	background: #C3C3C3;
	border-radius: 999px;
	color: #f4f4f4;
	width: 2rem;
	height: 2rem;
	display: flex;
	align-items: center;
	padding: 0;
	text-align: center;
	justify-content: center;
}

.woocommerce .cart-subtotal { display: none; }
.woocommerce .cart_totals h2 { display: none; }

.woocommerce .cart-collaterals .shop_table { text-align: left; width: auto !important; }

.woocommerce .cart-collaterals .shop_table tr.order-total { font-size: 1.875rem; font-weight: 600;  }

.woocommerce .cart-collaterals .shop_table tr.order-total th:first-of-type { width: 85px; }
.woocommerce .cart-collaterals .shop_table tr.order-total .woocommerce-Price-amount { color: var(--colors-green); }
.woocommerce .cart-collaterals .shop_table tr.order-total td { padding-bottom: 1rem; padding-top: 1rem; }

.woocommerce .cart-collaterals {
	padding-top: 2rem;
	padding-bottom: 3rem;
}

.woocommerce .cart-collaterals .cart_totals,
.woocommerce-page .cart-collaterals .cart_totals {
	display: flex;
	flex-direction: column;
	gap: .25em;
}

.woocommerce .wc-proceed-to-checkout {
	margin-top: 2rem;
}

.woocommerce form .form-row .required { text-decoration: none; }

.wp-block-mediplus-product-gallery {}
.wp-block-mediplus-product-gallery__slider {}
.wp-block-mediplus-product-gallery__slide {}
.wp-block-mediplus-product-gallery__slide img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.wp-block-product-interest-form {
	display: none; /* Hidden by default */
	position: fixed; /* Stay in place */
	z-index: 5; /* Sit on top */
	left: 0;
	top: 0;
	width: 100%; /* Full width */
	height: 100%; /* Full height */
	overflow: auto; /* Enable scroll if needed */
	background-color: rgb(0,0,0); /* Fallback color */
	background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
	align-items: center;
}

.wp-block-product-interest-form__inner {
	background-color: #fefefe;
	margin: auto;
	padding: 2rem;
	border: 1px solid #888;
	width: 80%;
	max-width: 750px;
	box-shadow: 0 4px 8px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19);
	animation-name: animatetop;
	animation-duration: 0.4s
}

.wp-block-product-interest-form__close { text-align: right; margin-bottom: 1rem; }

.wp-block-product-interest-form .wpcf7-form button.submit-button { margin-top: 0rem; }

/* Add Animation */
@keyframes animatetop {
	from {top: -300px; opacity: 0}
	to {top: 0; opacity: 1}
}

.wp-block-content-box .pagination,
.wp-block-content-box .woocommerce-pagination
{
	margin-top: 2rem;
	margin-right: 1rem;
	text-align: right;
}
.wp-block-content-box .pagination .nav-links,
.wp-block-content-box .woocommerce-pagination .page-numbers
{ display: flex; gap: .5rem; justify-content: flex-end; }

.wp-block-content-box .pagination .nav-links a {
	display: block;

}

.woocommerce-notices-wrapper {
}

.woocommerce-notices-wrapper .woocommerce-message {
	min-height: 2rem;
	background: white;
	border-radius: 40px;
	width: 100%;
	margin: 1rem auto;
	padding: 2rem;
	position: relative;
	z-index: 3;
	display: flex;
	flex-direction: column-reverse;
	gap: 1rem;
	align-items: start;
	justify-content: start;
}

.woocommerce-message:focus-visible {
	outline: none !important;
}

.woocommerce .woocommerce-error .button,
.woocommerce .woocommerce-info .button,
.woocommerce .woocommerce-message .button,
.woocommerce-page .woocommerce-error .button,
.woocommerce-page .woocommerce-info .button,
.woocommerce-page .woocommerce-message .button
{ float: none; }

@media all and (min-width: 960px) {
	.woocommerce-notices-wrapper .woocommerce-message {
		flex-direction: row-reverse;
		justify-content: space-between;
		align-items: center;
		padding: 1.5em 3.625em;
		margin: 3.25em auto 0;
	}
}

.wc-empty-cart-message {
	display: block;
	margin: 1rem 0;
}

.single-knowledge-hub .wp-block-hero .acf-innerblocks-container .site-wrapper {
	margin: 0 !important
}

.single-knowledge-hub .wp-block-content-box h3 + p,
.single-knowledge-hub .wp-block-content-box h4:not(.is-style-with-underline) + p
{
	margin-top: 1rem;
}

.single-knowledge-hub .wp-block-content-box p + h3 {
	margin-top: 2rem;
}

.single-knowledge-hub .wp-block-content-box blockquote {
	margin: 2rem 0;
}

/* Woocommerce error */

p.woocommerce-notice {
	display: block;
	margin: 0 0 1rem;
}

p.woocommerce-thankyou-order-failed-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
}

p.woocommerce-notice a.button {
	display: inline-block;
}

/* Order details */

.woocommerce-order-details {
	margin: 4rem 0;
}

form#order_review table,
.woocommerce-order-details table,
.woocommerce-orders-table {
	border: 1px solid var(--colors-grey-light);
	width: 100%;
}

.woocommerce-order-details table th,
.woocommerce-order-details table td,
form#order_review table th,
form#order_review table td,
table.woocommerce-orders-table th,
table.woocommerce-orders-table td
{
	padding: .75rem .75rem .5rem;
	text-align: left;
	border-bottom: 1px solid var(--colors-grey-light);
	line-height: 1.5em;
}

.woocommerce-order-details table thead th,
table.woocommerce-orders-table thead th,
form#order_review table thead th
{
	font-weight: 600;
}

.woocommerce-order-details table td:last-of-type,
table.woocommerce-orders-table td:last-of-type,
form#order_review table td:last-of-type,
.woocommerce-order-details table th:last-of-type,
table.woocommerce-orders-table th:last-of-type,
form#order_review table th:last-of-type
{
	border-left: 1px solid var(--colors-grey-light);
}

.woocommerce-orders-table__cell-order-actions .button {
	margin: 0 .15rem .15rem 0;
}

.woocommerce-orders-table__cell-order-actions .button {
	font-size: .75rem !important;
	padding: .75rem 1rem;
	min-width: 70px;
	text-align: center;
}

.woocommerce-orders-table__cell-order-actions .button::before { display: none; }

.woocommerce-order-details table tfoot th,
table.woocommerce-orders-table tfoot th,
form#order_review table tfoot th
{
	font-weight: 600;
	text-align: right;
}

.woocommerce-order-details .order_item {
	line-height: 1.5em;
}

.woocommerce-order-details .wc-item-meta strong,
.woocommerce-order-details .wc-item-meta p {
	display: inline;
}
.woocommerce-order-details .wc-item-meta li { margin-bottom: 0; }
.woocommerce-order-details .wc-item-meta p { padding-left: .15rem; margin-bottom: 0; padding-bottom: 0; }

.woocommerce-order .woocommerce-customer-details address {
	display: block;
	padding: 1rem;
	border: 1px solid var(--colors-grey-light);
}

.woocommerce-order .woocommerce-customer-details address p {font-weight: 600;}
.woocommerce-order .woocommerce-customer-details address p:first-of-type {
	margin-top: 1rem;
}

.woocommerce-order .woocommerce-customer-details address p {
	margin-bottom: 0;
}

.woocommerce-cart-form__contents.mediplus-basket {
	margin-top: 0;
}

.wc-block-components-product-metadata__description{
	display:none;
}

.wc-block-components-totals-footer-item-tax { font-size: 0; }
.wc-block-components-totals-footer-item-tax::after { margin: 1em 0 0; font-size: 0.9rem; content: "Including VAT"; display: inline-block; }