:root {
	--dark-color: #29324B;
	--accent-blue: #649BF7;
	--success-green: #2AB527;
	--soft-blue: #e8f4fd;
	--border-color: rgba(169, 173, 183, 0.48);
	--color-navy: #082b63;
	--color-green: #00ad42;
	--color-blue: #1477e6;
	--color-bg-light: #f5f9fc;
	--color-product-media-bg: #EEEEEE;
	--color-border: #dfe8f1;
	--color-text: #203757;
	--color-muted: #60718f;
	--font-primary: 'Poppins', Arial, sans-serif;
	--container-width: 1400px;
	--radius: 8px;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html,
body {
	min-height: 100%;
}

body {
	color: var(--dark-color) !important;
	font-family: var(--font-primary);
	margin: 0;
	min-height: 100vh;
}

.site {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}

.site-main {
	flex: 1 0 auto;
	width: 100%;
}

.woocommerce-button.button.view {
	display: flex;
}

a:hover {
	text-decoration: none;
}

a {
	transition: all 0.3s;
}

.container,
.mc-container {
	margin: 0 auto;
	max-width: var(--container-width);
	padding-left: 16px;
	padding-right: 16px;
	width: 100%;
}

.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	overflow: hidden;
	position: absolute;
	white-space: nowrap;
	width: 1px;
}

.row {
	display: flex;
	flex-wrap: wrap;
	margin-left: -15px;
	margin-right: -15px;
}

.col {
	padding-left: 15px;
	padding-right: 15px;
	width: 100%;
}

.large-12 {
	flex: 0 0 100%;
	max-width: 100%;
}

.site-header,
.site-footer {
	background: #fff;
}

.site-footer {
	flex-shrink: 0;
}

.site-header__inner,
.site-footer__inner {
	align-items: center;
	display: flex;
	gap: 24px;
	justify-content: space-between;
	margin: 0 auto;
	max-width: var(--container-width);
	padding: 18px 15px;
}

.site-header__brand {
	color: var(--dark-color);
	font-weight: 700;
	text-decoration: none;
}

.site-header__navigation ul,
.site-footer ul {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.maris-announcement-bar {
	border-bottom: 1px solid rgba(41, 50, 75, 0.15);
	color: white;
	background: var(--dark-color);
	font-size: 16px;
	font-weight: 500;
	line-height: 1.4;
	text-align: center;
}

.maris-announcement-bar__inner {
	align-items: center;
	display: flex;
	gap: 8px;
	justify-content: center;
	margin: 0 auto;
	max-width: 1200px;
	padding: 10px 15px;
}

.maris-announcement-bar__icon {
	display: block;
	flex: 0 0 auto;
	height: 20px;
	width: 20px;
}

.maris-announcement-bar__amount {
	font-weight: 700;
}

/* Pages */
.mc-page {
	background: #fff;
	padding: 54px 0 84px;
}

.mc-page__article {
	margin: 0 auto;
	max-width: 1120px;
}

.mc-page__header {
	margin-bottom: 28px;
}

.mc-page__title {
	color: var(--color-navy);
	font-size: 44px;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1.12;
	margin: 0;
}

.mc-page__content {
	color: var(--color-text);
	font-size: 16px;
	line-height: 1.7;
}

.mc-page__content > :first-child {
	margin-top: 0;
}

.mc-page__content > :last-child {
	margin-bottom: 0;
}

.mc-page__content a {
	color: var(--color-blue);
	font-weight: 600;
}

.mc-page__content img {
	height: auto;
	max-width: 100%;
}

.woocommerce-cart .mc-page__article,
.woocommerce-checkout .mc-page__article,
.woocommerce-account .mc-page__article {
	max-width: var(--container-width);
}

/* Contact page */
.contact-page {
	background: #fff;
}

.contact-hero {
	background: #fff;
	overflow: hidden;
	padding: 58px 0;
	position: relative;
}

.contact-hero__inner {
	display: flex;
	justify-content: center;
	position: relative;
}

.contact-hero__content {
	max-width: 680px;
	padding-top: 0;
	position: relative;
	text-align: center;
	z-index: 2;
}

.contact-eyebrow {
	color: var(--color-green);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.18em;
	line-height: 1.2;
	margin: 0 0 12px;
	text-transform: uppercase;
}

.contact-hero h1,
.contact-info h2,
.contact-form-panel h2 {
	color: var(--color-navy);
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1.1;
	margin: 0;
}

.contact-hero h1 {
	color: var(--color-navy);
	font-size: 54px;
	margin-bottom: 18px;
}

.contact-hero__content p:not(.contact-eyebrow) {
	color: var(--color-text);
	font-size: 17px;
	line-height: 1.6;
	margin: 0;
}

.contact-section {
	padding: 0 0 96px;
	position: relative;
}

.contact-layout {
	align-items: stretch;
	display: grid;
	gap: 36px;
	grid-template-columns: minmax(330px, 0.52fr) minmax(0, 0.86fr);
	margin-top: -24px;
	position: relative;
	z-index: 3;
}

.gform-field-label--type-inline {
	cursor: pointer;
}

.contact-info,
.contact-form-panel {
	background: #fff;
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
	box-shadow: 0 18px 46px rgba(8, 43, 99, 0.08);
}

.contact-info {
	background: transparent;
	border: 0;
	box-shadow: none;
	display: grid;
	gap: 18px;
	padding: 0;
}

.contact-info h2,
.contact-form-panel h2 {
	font-size: 30px;
	margin-bottom: 14px;
}

.contact-info > p:not(.contact-eyebrow),
.contact-form-panel__header p:not(.contact-eyebrow) {
	color: var(--color-muted);
	font-size: 16px;
	line-height: 1.65;
	margin: 0;
}

.contact-info__list {
	display: grid;
	gap: 18px;
}

.contact-info__card,
.contact-trust-card {
	align-items: center;
	background: #fff;
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
	box-shadow: 0 18px 46px rgba(8, 43, 99, 0.06);
	display: grid;
	gap: 24px;
	grid-template-columns: 74px minmax(0, 1fr);
	min-height: 122px;
	padding: 24px 30px;
}

.contact-info__card > div > span {
	color: var(--color-navy);
	display: block;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.35;
	text-transform: none;
}

.contact-trust-card strong {
	color: var(--color-navy);
	display: block;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.2;
	text-transform: uppercase;
}

.contact-info__card strong,
.contact-info__card a {
	color: var(--color-text);
	font-size: 16px;
	font-weight: 400;
	line-height: 1.6;
	text-decoration: none;
}

.dashicons-shield-alt:before {
    content: "\f334";
    font-size: 32px;
}

.contact-info__card strong {
	display: block;
	margin-top: 8px;
}

.contact-info__card p {
	color: var(--color-text);
	font-size: 16px;
	line-height: 1.6;
	margin: 0;
}

.contact-trust-card p {
	color: var(--color-text);
	font-size: 15px;
	line-height: 1.6;
	margin: 8px 0 0;
}

.contact-info__icon {
	align-items: center;
	background: var(--color-bg-light);
	border-radius: 50%;
	color: var(--color-navy);
	display: flex;
	height: 74px;
	justify-content: center;
	line-height: 1;
	width: 74px;
}

.contact-info__icon-image {
	display: block;
	height: 32px;
	width: 32px;
}

.contact-info__icon--secure .contact-info__icon-image {
	height: 58px;
	width: 58px;
}

.contact-trust-card {
	background: #fff;
}

.contact-trust-card strong {
	color: var(--color-navy);
	font-size: 15px;
	text-transform: none;
}

.contact-form-panel {
	display: flex;
	flex-direction: column;
	overflow: hidden;
}

.contact-form-panel__header {
	background: #fff;
	border-bottom: 0;
	padding: 34px 38px 0;
}

.contact-form-panel__content {
	flex: 1 1 auto;
	padding: 28px 38px 38px;
}

.contact-form-panel__content > h1:first-child,
.contact-form-panel__content > h2:first-child {
	display: none;
}

.contact-form-panel .gform_wrapper,
.contact-form-panel form {
	margin: 0;
}

.contact-form-panel .gform_required_legend {
	color: var(--color-muted);
	font-size: 14px;
	margin: -50px 0 24px;
	text-align: right;
}

.contact-form-panel .gform_fields {
	display: grid;
	gap: 18px 18px;
	grid-template-columns: repeat(12, minmax(0, 1fr));
}

.contact-form-panel .gfield {
	grid-column: 1 / -1;
	margin: 0;
}

.contact-form-panel .gfield--width-half {
	grid-column: span 6;
}

.contact-form-panel .gfield--width-third {
	grid-column: span 4;
}

.contact-form-panel .gfield--width-quarter {
	grid-column: span 3;
}

.contact-form-panel .gfield_label,
.contact-form-panel label {
	color: var(--color-navy);
	display: block;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.35;
	margin: 0 0 8px;
}

.contact-form-panel .gfield_required {
	color: #b42318;
}

.contact-form-panel .ginput_complex {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.contact-form-panel .ginput_complex span {
	display: block;
}

.contact-form-panel .ginput_complex label,
.contact-form-panel .gfield_description,
.contact-form-panel .gform-field-label--type-sub {
	color: var(--color-muted);
	font-size: 13px;
	font-weight: 500;
	margin-top: 7px;
}

.contact-form-panel input[type="text"],
.contact-form-panel input[type="email"],
.contact-form-panel input[type="tel"],
.contact-form-panel input[type="url"],
.contact-form-panel input[type="number"],
.contact-form-panel select,
.contact-form-panel textarea {
	background: #fff;
	border: 1px solid var(--color-border);
	border-radius: 6px;
	color: var(--color-text);
	font-family: var(--font-primary);
	font-size: 15px;
	min-height: 50px;
	padding: 12px 14px;
	width: 100%;
}

.contact-form-panel textarea {
	min-height: 132px;
	resize: vertical;
}

.contact-form-panel input[type="text"]:focus,
.contact-form-panel input[type="email"]:focus,
.contact-form-panel input[type="tel"]:focus,
.contact-form-panel input[type="url"]:focus,
.contact-form-panel input[type="number"]:focus,
.contact-form-panel select:focus,
.contact-form-panel textarea:focus {
	border-color: rgba(20, 119, 230, 0.55);
	box-shadow: 0 0 0 3px rgba(20, 119, 230, 0.1);
	outline: 0;
}

.contact-form-panel input[type="radio"] {
	accent-color: var(--color-navy);
	margin: 0 8px 0 0;
}

.contact-form-panel .gfield_radio .gchoice,
.contact-form-panel .gfield_radio label {
	align-items: center;
	color: var(--color-text);
	display: flex;
	font-size: 15px;
	font-weight: 500;
	gap: 8px;
	line-height: 1.45;
	margin: 0;
}

.contact-form-panel .gform_footer {
	margin: 24px 0 0;
	padding: 0;
}

.contact-form-panel input[type="submit"],
.contact-form-panel button[type="submit"] {
	align-items: center;
	background: var(--color-green);
	border: 0;
	border-radius: 6px;
	color: #fff;
	cursor: pointer;
	display: inline-flex;
	font-family: var(--font-primary);
	font-size: 15px;
	font-weight: 700;
	justify-content: center;
	line-height: 1.2;
	min-height: 46px;
	padding: 12px 24px;
	transition: background-color 0.2s ease, transform 0.2s ease;
	width: 100%;
}

.contact-form-panel input[type="submit"]:hover,
.contact-form-panel input[type="submit"]:focus-visible,
.contact-form-panel button[type="submit"]:hover,
.contact-form-panel button[type="submit"]:focus-visible {
	background: #07963d;
	color: #fff;
	transform: translateY(-1px);
}

.contact-form-panel .validation_error,
.contact-form-panel .gform_validation_errors {
	background: #fff8f8;
	border: 1px solid #f0b4ba;
	border-radius: 6px;
	color: #b42318;
	margin: 0 0 20px;
	padding: 14px 16px;
}

.contact-form-panel .validation_message,
.contact-form-panel .gfield_validation_message {
	color: #b42318;
	font-size: 13px;
	font-weight: 600;
	margin-top: 7px;
}

@media (max-width: 1024px) {
	.contact-layout {
		grid-template-columns: 1fr;
	}

	.contact-layout {
		margin-top: -28px;
	}
}

@media (max-width: 700px) {
	.contact-hero {
		padding: 24px 0 58px;
	}

	.contact-hero h1 {
		font-size: 38px;
	}

	.contact-hero__content p:not(.contact-eyebrow) {
		font-size: 16px;
	}

	.contact-section {
		padding: 0 0 68px;
	}

	.contact-layout {
		margin-top: -20px;
	}

	.contact-info__card,
	.contact-trust-card {
		gap: 18px;
		grid-template-columns: 58px minmax(0, 1fr);
		min-height: auto;
		padding: 20px;
	}

	.contact-info__icon {
		height: 58px;
		width: 58px;
	}

	.contact-form-panel__header,
	.contact-form-panel__content {
		padding: 24px;
	}

	.contact-form-panel__header {
		padding-bottom: 0;
	}

	.contact-info h2,
	.contact-form-panel h2 {
		font-size: 28px;
	}

	.contact-form-panel .gform_required_legend {
		margin: 0 0 20px;
		text-align: left;
	}

	.contact-form-panel .ginput_complex {
		grid-template-columns: 1fr;
	}

	.contact-form-panel .gfield--width-half,
	.contact-form-panel .gfield--width-third,
	.contact-form-panel .gfield--width-quarter {
		grid-column: 1 / -1;
	}
}

/* My account */
.woocommerce-account .mc-page {
	background: linear-gradient(180deg, #f7fbff 0%, #fff 38%);
	padding-top: 42px;
}

.woocommerce-account .mc-page__header {
	margin-bottom: 24px;
}

.woocommerce-account .mc-page__title {
	font-size: 40px;
}

.woocommerce-account.logged-in .mc-page__content {
	align-items: start;
	display: grid;
	gap: 28px;
	grid-template-columns: 290px minmax(0, 1fr);
}

.woocommerce-account.logged-in .mc-page__content > .woocommerce,
.woocommerce-account.logged-in .mc-page__content > .wp-block-shortcode {
	display: contents;
}

.woocommerce-account .woocommerce-notices-wrapper,
.woocommerce-account .woocommerce-message,
.woocommerce-account .woocommerce-error,
.woocommerce-account .woocommerce-info {
	grid-column: 1 / -1;
}

.woocommerce-account .woocommerce-MyAccount-navigation {
	background: #fff;
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
	box-shadow: 0 18px 46px rgba(8, 43, 99, 0.08);
	float: none;
	grid-column: 1;
	overflow: hidden;
	position: sticky;
	top: 24px;
	width: 100%;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
	display: grid;
	gap: 0;
	list-style: none;
	margin: 0;
	padding: 10px;
}

.woocommerce-account .woocommerce-MyAccount-navigation li {
	margin: 0;
	padding: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation-link--downloads {
	display: none;
}

.woocommerce-account .woocommerce-MyAccount-navigation a {
	align-items: center;
	border-radius: 6px;
	color: var(--color-navy);
	display: flex;
	font-size: 15px;
	font-weight: 700;
	gap: 10px;
	min-height: 48px;
	padding: 12px 14px;
	text-decoration: none;
	transition: background 0.2s ease, color 0.2s ease;
}

.woocommerce-account .woocommerce-MyAccount-navigation a::before {
	background: var(--color-blue);
	border-radius: 999px;
	content: "";
	flex: 0 0 auto;
	height: 8px;
	opacity: 0.38;
	width: 8px;
}

.woocommerce-account .woocommerce-MyAccount-navigation a:hover,
.woocommerce-account .woocommerce-MyAccount-navigation a:focus-visible,
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a {
	background: var(--color-bg-light);
	color: var(--color-blue);
}

.woocommerce-account .woocommerce-MyAccount-navigation .is-active a::before {
	background: var(--color-green);
	opacity: 1;
}

.woocommerce-account .woocommerce-MyAccount-content {
	background: #fff;
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
	box-shadow: 0 18px 46px rgba(8, 43, 99, 0.08);
	color: var(--color-text);
	float: none;
	font-size: 16px;
	grid-column: 2;
	line-height: 1.65;
	min-width: 0;
	min-height: 360px;
	padding: 32px;
	width: 100%;
}

.woocommerce-account .woocommerce-MyAccount-content > :first-child {
	margin-top: 0;
}

.woocommerce-account .woocommerce-MyAccount-content a {
	color: var(--color-blue);
	font-weight: 700;
}

.mc-account-dashboard__intro {
	background: linear-gradient(135deg, var(--color-bg-light), #fff);
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
	padding: 28px;
}

.mc-account-dashboard__eyebrow {
	color: var(--color-green);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.04em;
	margin: 0 0 8px;
	text-transform: uppercase;
}

.mc-account-dashboard h2 {
	color: var(--color-navy);
	font-size: 32px;
	line-height: 1.15;
	margin: 0 0 12px;
}

.mc-account-dashboard__intro p:last-child {
	margin-bottom: 0;
	max-width: 760px;
}

.mc-account-dashboard__actions {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
	margin-top: 20px;
}

.mc-account-action {
	background: #fff;
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
	color: var(--color-text);
	display: grid;
	gap: 8px;
	min-height: 136px;
	padding: 22px;
	text-decoration: none;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.mc-account-action:hover,
.mc-account-action:focus-visible {
	border-color: rgba(20, 119, 230, 0.35);
	box-shadow: 0 16px 34px rgba(8, 43, 99, 0.1);
	transform: translateY(-2px);
}

.mc-account-action__label {
	color: var(--color-navy);
	font-size: 18px;
	font-weight: 700;
	line-height: 1.25;
}

.mc-account-action__text {
	color: var(--color-muted);
	font-size: 15px;
	font-weight: 500;
	line-height: 1.45;
}

.mc-account-dashboard__logout {
	color: var(--color-muted);
	font-size: 14px;
	margin: 20px 0 0;
}

.woocommerce-account .woocommerce-MyAccount-content h2,
.woocommerce-account .woocommerce-MyAccount-content h3,
.woocommerce-account .woocommerce-order-details__title,
.woocommerce-account .woocommerce-column__title {
	color: var(--color-navy);
	font-size: 24px;
	font-weight: 700;
	line-height: 1.2;
	margin: 0 0 18px;
}

.woocommerce-account .woocommerce-Addresses,
.woocommerce-account .u-columns,
.woocommerce-account .woocommerce-address-book,
.woocommerce-account .address-book {
	display: grid;
	gap: 18px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.woocommerce-account .woocommerce-Addresses::before,
.woocommerce-account .woocommerce-Addresses::after,
.woocommerce-account .u-columns::before,
.woocommerce-account .u-columns::after,
.woocommerce-account .woocommerce-address-book::before,
.woocommerce-account .woocommerce-address-book::after,
.woocommerce-account .address-book::before,
.woocommerce-account .address-book::after {
	content: none;
	display: none;
}

.woocommerce-account .u-columns .u-column1,
.woocommerce-account .u-columns .u-column2,
.woocommerce-account .u-columns .col-1,
.woocommerce-account .u-columns .col-2,
.woocommerce-account .woocommerce-Address {
	float: none !important;
	margin: 0 !important;
	max-width: none;
	width: auto !important;
}

.woocommerce-account .woocommerce-Address,
.woocommerce-account .woocommerce-customer-details address {
	background: var(--color-bg-light);
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
	padding: 22px;
}

.woocommerce-account .woocommerce-Address {
	display: flex;
	flex-direction: column;
	gap: 14px;
	min-width: 0;
}

.woocommerce-account .woocommerce-Address-title {
	align-items: center;
	display: flex;
	gap: 12px;
	justify-content: space-between;
	margin-bottom: 0;
	min-width: 0;
	flex-wrap: wrap;
}

.woocommerce-account .woocommerce-Address-title h2 {
	flex: 1 1 180px;
	margin: 0;
	min-width: 0;
}

.woocommerce-account .woocommerce-Address-title .edit {
	align-items: center;
	background: #fff;
	border: 1px solid var(--color-border);
	border-radius: 6px;
	color: var(--color-blue);
	display: inline-flex;
	float: none !important;
	font-size: 14px;
	font-weight: 700;
	justify-content: center;
	line-height: 1.2;
	margin-left: auto;
	min-height: 40px;
	padding: 8px 12px;
	position: static !important;
	text-decoration: none;
	white-space: nowrap;
}

.woocommerce-account .woocommerce-Address-title .edit:hover,
.woocommerce-account .woocommerce-Address-title .edit:focus-visible {
	background: #fff;
	border-color: rgba(20, 119, 230, 0.35);
	color: var(--color-navy);
}

.woocommerce-account .woocommerce-Address address,
.woocommerce-account .woocommerce-customer-details address {
	color: var(--color-text);
	font-style: normal;
	line-height: 1.65;
	margin: 0;
}

.woocommerce-account .woocommerce-Address address .button,
.woocommerce-account .woocommerce-Address address button,
.woocommerce-account .woocommerce-Address address input[type="submit"] {
	margin-top: 16px;
}

.woocommerce-account table.shop_table {
	border: 1px solid var(--color-border);
	border-collapse: separate;
	border-radius: var(--radius);
	border-spacing: 0;
	overflow: hidden;
	width: 100%;
}

.woocommerce-account table.shop_table th,
.woocommerce-account table.shop_table td {
	border: 0;
	border-bottom: 1px solid var(--color-border);
	color: var(--color-text);
	padding: 16px;
	text-align: left;
	vertical-align: middle;
}

.woocommerce-account table.shop_table th {
	background: var(--color-bg-light);
	color: var(--color-navy);
	font-size: 14px;
	font-weight: 700;
}

.woocommerce-account table.shop_table tr:last-child td {
	border-bottom: 0;
}

.woocommerce-account .button,
.woocommerce-account button.button,
.woocommerce-account input.button,
.woocommerce-account .woocommerce-button,
.woocommerce-account .woocommerce-MyAccount-content button:not(.edit),
.woocommerce-account .woocommerce-MyAccount-content button[type="submit"],
.woocommerce-account .woocommerce-MyAccount-content input[type="submit"],
.woocommerce-account .woocommerce-MyAccount-content input[type="button"],
.woocommerce-account .woocommerce-MyAccount-content input[type="reset"],
.woocommerce-account .woocommerce-Address + a:not(.edit),
.woocommerce-account .woocommerce-Addresses > a:not(.edit),
.woocommerce-account .woocommerce-Addresses > button,
.woocommerce-account .woocommerce-Addresses > input[type="submit"],
.woocommerce-account .woocommerce-Addresses > input[type="button"],
.woocommerce-account .woocommerce-Addresses > :not(.woocommerce-Address) a:not(.edit),
.woocommerce-account .woocommerce-Addresses > :not(.woocommerce-Address) button,
.woocommerce-account .woocommerce-Addresses > :not(.woocommerce-Address) input[type="submit"],
.woocommerce-account .woocommerce-Addresses > :not(.woocommerce-Address) input[type="button"],
.woocommerce-account .u-columns > a:not(.edit),
.woocommerce-account .u-columns > button,
.woocommerce-account .u-columns > input[type="submit"],
.woocommerce-account .u-columns > input[type="button"],
.woocommerce-account .u-columns > :not(.woocommerce-Address) a:not(.edit),
.woocommerce-account .u-columns > :not(.woocommerce-Address) button,
.woocommerce-account .u-columns > :not(.woocommerce-Address) input[type="submit"],
.woocommerce-account .u-columns > :not(.woocommerce-Address) input[type="button"],
.woocommerce-account .woocommerce-Address address a:not(.edit),
.woocommerce-account .woocommerce-address-book a:not(.edit),
.woocommerce-account .address-book a:not(.edit),
.woocommerce-account .woocommerce-MyAccount-content a:not(.edit)[href*="address-book"],
.woocommerce-account .woocommerce-MyAccount-content a:not(.edit)[href*="add-address"] {
	align-items: center;
	background: var(--color-navy) !important;
	border: 0 !important;
	border-radius: 6px;
	color: #fff !important;
	cursor: pointer;
	display: inline-flex;
	font-family: var(--font-primary);
	font-size: 15px;
	font-weight: 700;
	justify-content: center;
	line-height: 1.2;
	min-height: 44px;
	padding: 12px 18px;
	text-decoration: none;
	transition: background 0.2s ease, transform 0.2s ease;
	width: auto !important;
	-webkit-appearance: none;
	appearance: none;
}

.woocommerce-account .button:hover,
.woocommerce-account .button:focus-visible,
.woocommerce-account button.button:hover,
.woocommerce-account button.button:focus-visible,
.woocommerce-account input.button:hover,
.woocommerce-account input.button:focus-visible,
.woocommerce-account .woocommerce-button:hover,
.woocommerce-account .woocommerce-button:focus-visible,
.woocommerce-account .woocommerce-MyAccount-content button:not(.edit):hover,
.woocommerce-account .woocommerce-MyAccount-content button:not(.edit):focus-visible,
.woocommerce-account .woocommerce-MyAccount-content button[type="submit"]:hover,
.woocommerce-account .woocommerce-MyAccount-content button[type="submit"]:focus-visible,
.woocommerce-account .woocommerce-MyAccount-content input[type="submit"]:hover,
.woocommerce-account .woocommerce-MyAccount-content input[type="submit"]:focus-visible,
.woocommerce-account .woocommerce-MyAccount-content input[type="button"]:hover,
.woocommerce-account .woocommerce-MyAccount-content input[type="button"]:focus-visible,
.woocommerce-account .woocommerce-MyAccount-content input[type="reset"]:hover,
.woocommerce-account .woocommerce-MyAccount-content input[type="reset"]:focus-visible,
.woocommerce-account .woocommerce-Address + a:not(.edit):hover,
.woocommerce-account .woocommerce-Address + a:not(.edit):focus-visible,
.woocommerce-account .woocommerce-Addresses > a:not(.edit):hover,
.woocommerce-account .woocommerce-Addresses > a:not(.edit):focus-visible,
.woocommerce-account .woocommerce-Addresses > button:hover,
.woocommerce-account .woocommerce-Addresses > button:focus-visible,
.woocommerce-account .woocommerce-Addresses > input[type="submit"]:hover,
.woocommerce-account .woocommerce-Addresses > input[type="submit"]:focus-visible,
.woocommerce-account .woocommerce-Addresses > input[type="button"]:hover,
.woocommerce-account .woocommerce-Addresses > input[type="button"]:focus-visible,
.woocommerce-account .woocommerce-Addresses > :not(.woocommerce-Address) a:not(.edit):hover,
.woocommerce-account .woocommerce-Addresses > :not(.woocommerce-Address) a:not(.edit):focus-visible,
.woocommerce-account .woocommerce-Addresses > :not(.woocommerce-Address) button:hover,
.woocommerce-account .woocommerce-Addresses > :not(.woocommerce-Address) button:focus-visible,
.woocommerce-account .woocommerce-Addresses > :not(.woocommerce-Address) input[type="submit"]:hover,
.woocommerce-account .woocommerce-Addresses > :not(.woocommerce-Address) input[type="submit"]:focus-visible,
.woocommerce-account .woocommerce-Addresses > :not(.woocommerce-Address) input[type="button"]:hover,
.woocommerce-account .woocommerce-Addresses > :not(.woocommerce-Address) input[type="button"]:focus-visible,
.woocommerce-account .u-columns > a:not(.edit):hover,
.woocommerce-account .u-columns > a:not(.edit):focus-visible,
.woocommerce-account .u-columns > button:hover,
.woocommerce-account .u-columns > button:focus-visible,
.woocommerce-account .u-columns > input[type="submit"]:hover,
.woocommerce-account .u-columns > input[type="submit"]:focus-visible,
.woocommerce-account .u-columns > input[type="button"]:hover,
.woocommerce-account .u-columns > input[type="button"]:focus-visible,
.woocommerce-account .u-columns > :not(.woocommerce-Address) a:not(.edit):hover,
.woocommerce-account .u-columns > :not(.woocommerce-Address) a:not(.edit):focus-visible,
.woocommerce-account .u-columns > :not(.woocommerce-Address) button:hover,
.woocommerce-account .u-columns > :not(.woocommerce-Address) button:focus-visible,
.woocommerce-account .u-columns > :not(.woocommerce-Address) input[type="submit"]:hover,
.woocommerce-account .u-columns > :not(.woocommerce-Address) input[type="submit"]:focus-visible,
.woocommerce-account .u-columns > :not(.woocommerce-Address) input[type="button"]:hover,
.woocommerce-account .u-columns > :not(.woocommerce-Address) input[type="button"]:focus-visible,
.woocommerce-account .woocommerce-Address address a:not(.edit):hover,
.woocommerce-account .woocommerce-Address address a:not(.edit):focus-visible,
.woocommerce-account .woocommerce-address-book a:not(.edit):hover,
.woocommerce-account .woocommerce-address-book a:not(.edit):focus-visible,
.woocommerce-account .address-book a:not(.edit):hover,
.woocommerce-account .address-book a:not(.edit):focus-visible,
.woocommerce-account .woocommerce-MyAccount-content a:not(.edit)[href*="address-book"]:hover,
.woocommerce-account .woocommerce-MyAccount-content a:not(.edit)[href*="address-book"]:focus-visible,
.woocommerce-account .woocommerce-MyAccount-content a:not(.edit)[href*="add-address"]:hover,
.woocommerce-account .woocommerce-MyAccount-content a:not(.edit)[href*="add-address"]:focus-visible {
	background: var(--color-navy) !important;
	color: #fff !important;
	transform: translateY(-1px);
}

.woocommerce-account .woocommerce-Address + a:not(.edit),
.woocommerce-account .woocommerce-Addresses > a:not(.edit),
.woocommerce-account .woocommerce-Addresses > button,
.woocommerce-account .woocommerce-Addresses > input[type="submit"],
.woocommerce-account .woocommerce-Addresses > input[type="button"],
.woocommerce-account .woocommerce-Addresses > :not(.woocommerce-Address) a:not(.edit),
.woocommerce-account .woocommerce-Addresses > :not(.woocommerce-Address) button,
.woocommerce-account .woocommerce-Addresses > :not(.woocommerce-Address) input[type="submit"],
.woocommerce-account .woocommerce-Addresses > :not(.woocommerce-Address) input[type="button"],
.woocommerce-account .u-columns > a:not(.edit),
.woocommerce-account .u-columns > button,
.woocommerce-account .u-columns > input[type="submit"],
.woocommerce-account .u-columns > input[type="button"],
.woocommerce-account .u-columns > :not(.woocommerce-Address) a:not(.edit),
.woocommerce-account .u-columns > :not(.woocommerce-Address) button,
.woocommerce-account .u-columns > :not(.woocommerce-Address) input[type="submit"],
.woocommerce-account .u-columns > :not(.woocommerce-Address) input[type="button"] {
	justify-self: start;
	margin-top: 2px;
}

.woocommerce-account .woocommerce-orders-table__cell-order-actions {
	text-align: right;
	white-space: nowrap;
}

.woocommerce-account table.shop_table .button,
.woocommerce-account table.shop_table .woocommerce-button,
.woocommerce-account .woocommerce-orders-table__cell-order-actions .button,
.woocommerce-account .woocommerce-orders-table__cell-order-actions .woocommerce-button {
	box-shadow: none;
	min-width: 118px;
}

.woocommerce-account .woocommerce-orders-table__cell-order-actions .button + .button,
.woocommerce-account .woocommerce-orders-table__cell-order-actions .woocommerce-button + .woocommerce-button {
	margin-left: 8px;
}

.woocommerce-account form .form-row {
	margin: 0 0 18px;
	padding: 0;
}

.woocommerce-account form label {
	color: var(--color-navy);
	display: block;
	font-size: 14px;
	font-weight: 700;
	margin-bottom: 7px;
}

.ocwma_modal-content {
	padding-bottom: 37px;
}

.woocommerce-account #reference_field {
	display: none !important;
}

.woocommerce-account .input-text,
.woocommerce-account input[type="text"],
.woocommerce-account input[type="email"],
.woocommerce-account input[type="password"],
.woocommerce-account input[type="tel"],
.woocommerce-account select,
.woocommerce-account textarea {
	background: #fff;
	border: 1px solid var(--color-border);
	border-radius: 6px;
	color: var(--color-text);
	font-family: var(--font-primary);
	font-size: 16px;
	min-height: 46px;
	padding: 11px 13px;
	width: 100%;
}

.woocommerce-account .input-text:focus,
.woocommerce-account input[type="text"]:focus,
.woocommerce-account input[type="email"]:focus,
.woocommerce-account input[type="password"]:focus,
.woocommerce-account input[type="tel"]:focus,
.woocommerce-account select:focus,
.woocommerce-account textarea:focus {
	border-color: rgba(20, 119, 230, 0.55);
	box-shadow: 0 0 0 3px rgba(20, 119, 230, 0.1);
	outline: 0;
}

.woocommerce-account fieldset {
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
	margin: 24px 0;
	padding: 22px;
}

.woocommerce-account legend {
	color: var(--color-navy);
	font-size: 18px;
	font-weight: 700;
	padding: 0 8px;
}

.woocommerce-account .woocommerce-form-login,
.woocommerce-account .woocommerce-form-register {
	background: #fff;
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
	box-shadow: 0 18px 46px rgba(8, 43, 99, 0.08);
	margin: 0;
	padding: 28px;
}

.woocommerce-account .woocommerce-info,
.woocommerce-account .woocommerce-message,
.woocommerce-account .woocommerce-error {
	background: var(--color-bg-light);
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
	color: var(--color-text);
	list-style: none;
	margin: 0 0 18px;
	padding: 16px 18px;
}

@media (max-width: 980px) {
	.woocommerce-account.logged-in .mc-page__content {
		grid-template-columns: 1fr;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation,
	.woocommerce-account .woocommerce-MyAccount-content {
		grid-column: 1;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation {
		position: static;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation ul {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.mc-account-dashboard__actions,
	.woocommerce-account .woocommerce-Addresses,
	.woocommerce-account .u-columns {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 560px) {
	.woocommerce-account .mc-page {
		padding-top: 34px;
	}

	.woocommerce-account .mc-page__title {
		font-size: 34px;
	}

	.woocommerce-account .woocommerce-MyAccount-content,
	.mc-account-dashboard__intro,
	.woocommerce-account .woocommerce-form-login,
	.woocommerce-account .woocommerce-form-register {
		padding: 22px;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation ul {
		grid-template-columns: 1fr;
	}

	.woocommerce-account table.shop_table th,
	.woocommerce-account table.shop_table td {
		padding: 13px;
	}

	.woocommerce-account .woocommerce-Address-title {
		align-items: flex-start;
		flex-direction: column;
	}

	.woocommerce-account .woocommerce-Address-title .edit {
		margin-left: 0;
		width: 100% !important;
	}

	.woocommerce-account .woocommerce-orders-table__cell-order-actions {
		text-align: left;
		white-space: normal;
	}
}

.single-product-top {
	margin-top: 40px;
}

.title-single-product-page {
	margin-bottom: 0.3em;
}

.woocommerce-breadcrumb a:first-child {
	color: var(--accent-blue);
	font-weight: 600;
}

.woocommerce-breadcrumb a:first-child:hover {
	color: #7194CD;
}

.woocommerce-breadcrumb a {
	font-size: 14px;
}

.product-container {
	color: var(--dark-color);
}

.single-product .related.products,
.single-product .upsells.products,
.single-product #secondary,
.single-product .widget-area,
.single-product .woocommerce-sidebar {
	display: none !important;
}

.single-product .woocommerce-notices-wrapper .woocommerce-message {
	display: none;
}

.product-main {
	padding-top: 0;
	position: relative;
}

.product-main .content-row {
	align-items: flex-start;
}

.product-main .product-gallery {
	padding-right: 40px;
	position: relative;
}

.product-info .woocommerce-breadcrumb.breadcrumbs {
	display: none;
}

.product_meta .posted_in {
	display: none;
}

.product_meta .sku_wrapper {
	border-top: none;
	color: var(--dark-color);
	font-size: 14px;
	font-weight: 400;
}

.single-product .product-info .woocommerce-price-suffix,
.price .woocommerce-price-suffix {
	display: none;
}

.single-product .product-summary .woocommerce-Price-currencySymbol {
	font-size: 1em;
}

.small-prefix {
	font-size: 14px;
}

.product-main p.price.product-page-price {
	padding-bottom: 5px !important;
	padding-top: 0 !important;
}

.product-page-price bdi {
	color: var(--dark-color);
	font-size: 32px;
	font-weight: 400;
	letter-spacing: 0;
	line-height: 48px;
}

.product-short-description {
	color: var(--dark-color);
	font-size: 16px;
	font-weight: 400;
	line-height: 24px;
}

.stock.in-stock {
	align-items: center;
	color: var(--dark-color);
	display: flex;
	gap: 8px;
}

.stock.in-stock::before {
	content: url(../img/maris-green-check.svg);
	display: inline-block;
	height: 20px;
	width: 20px;
}

.product-info .cart,
.woocommerce-variation-add-to-cart {
	column-gap: 0;
	display: grid !important;
	margin-bottom: 40px;
	margin-top: 20px;
}

.product-info .quantity,
body .custom-quantity-container .quantity {
	border: 2px solid rgba(41, 50, 75, 0.4);
	margin-bottom: 0 !important;
	width: fit-content;
}

.product-info .input-text,
body .custom-quantity-container .input-text {
	border: none;
	height: auto;
}

.quantity.buttons_added {
	font-weight: 600;
}

.single .quantity .button {
	color: var(--dark-color);
	font-size: 22px;
	font-weight: 600;
}

body.single .single_add_to_cart_button {
	align-items: center;
	background-color: var(--success-green) !important;
	display: inline-flex;
	font-weight: 600;
	gap: 4px;
	justify-content: center;
	margin-bottom: 0;
	padding: 8px;
	width: 100%;
}

body.single .single_add_to_cart_button::before {
	background: currentColor;
	content: "";
	display: inline-block;
	flex: 0 0 25px;
	height: 25px;
	mask: url("../img/shopping_cart.svg") center / contain no-repeat;
	-webkit-mask: url("../img/shopping_cart.svg") center / contain no-repeat;
	width: 25px;
}

.is-form {
	border: none !important;
}

.maris-usps {
	grid-column: span 2;
	margin-top: 20px;
}

.maris-usps p {
	align-items: center;
	color: var(--dark-color);
	display: flex;
	font-size: 14px;
	font-weight: 400;
	gap: 10px;
	line-height: 21px;
}

.maris-usps p::before {
	content: url(../img/maris-green-check-2.svg);
	display: inline-block;
	height: 18px;
	width: 18px;
}

.woocommerce div.product .woocommerce-tabs ul.tabs,
.woocommerce-tabs .tabs {
	align-items: center;
	border-bottom: 1px solid rgba(169, 173, 183, 0.48);
	display: flex;
	flex-wrap: wrap;
	gap: 28px;
	list-style: none;
	margin: 0;
	overflow: visible;
	padding: 0;
}

.woocommerce div.product .woocommerce-tabs ul.tabs::before {
	display: none;
}

.woocommerce-tabs .tab-panels,
.woocommerce-tabs .woocommerce-Tabs-panel {
	padding-top: 30px;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li,
.woocommerce-tabs .tabs li {
	background: transparent !important;
	border: 0;
	border-radius: 0;
	margin: 0;
	padding: 0;
	position: relative;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce-tabs .tabs li::before {
	display: none;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li::after,
.woocommerce-tabs .tabs li::after {
	background-color: var(--dark-color);
	border: 0;
	border-radius: 0;
	bottom: -1px;
	box-shadow: none;
	content: "";
	height: 2px;
	left: 0;
	opacity: 0;
	position: absolute;
	right: auto;
	transition: width 0.2s ease, opacity 0.2s ease;
	width: 0;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active::after,
.woocommerce div.product .woocommerce-tabs ul.tabs li:hover::after,
.woocommerce div.product .woocommerce-tabs ul.tabs li:focus-within::after,
.woocommerce-tabs .tabs li.active::after,
.woocommerce-tabs .tabs li:hover::after,
.woocommerce-tabs .tabs li:focus-within::after {
	opacity: 1;
	width: 100%;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a,
.woocommerce-tabs .tabs a {
	color: var(--accent-blue);
	display: block;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.2;
	padding: 0 0 14px;
	text-decoration: none;
	transition: color 0.2s ease;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a,
.woocommerce div.product .woocommerce-tabs ul.tabs li a:hover,
.woocommerce div.product .woocommerce-tabs ul.tabs li a:focus-visible,
.woocommerce-tabs .tabs li.active a,
.woocommerce-tabs .tabs a:hover,
.woocommerce-tabs .tabs a:focus-visible {
	color: var(--dark-color);
}

.product-footer .woocommerce-tabs {
	border-top: none !important;
	padding-bottom: 20px;
}

.woocommerce-Tabs-panel p strong {
	color: var(--dark-color);
	font-weight: 700;
}

.product-icon-container {
	display: flex;
	flex-wrap: wrap;
}

.product-icon-single {
	align-items: center;
	display: flex;
	flex: 0 0 50%;
	font-size: 15px;
	max-width: 50%;
	padding-right: 40px;
}

.product-icon-s img {
	margin-right: 20px;
	max-width: 125px;
}

.product-text-s span {
	color: var(--dark-color);
	display: block;
	font-weight: 700;
}

.mc-review-container {
	align-items: center;
	display: flex;
	gap: 10px;
	margin-bottom: 20px;
}

.mc-review-rating {
	display: flex;
	gap: 4px;
}

.mc-review-rating img,
.mc-review-rating__icon {
	height: 24px;
	width: 24px;
}

.mc-review-text {
	color: var(--dark-color);
	font-size: 14px;
	font-weight: 400;
}

.mc-review-text p {
	margin-bottom: 0;
}

.single-template-reviews-section-inner {
	border-top: 1px solid rgba(169, 173, 183, 0.48);
	padding-top: 50px;
	width: 100%;
}

.single-template-reviews-section-inner .mc-review-container {
	margin-bottom: 0.8em;
}

.single-template-reviews-section-inner p {
	color: var(--dark-color);
	font-weight: 400;
}

.review-singles-grid {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.mc-single-review {
	border: 1px solid var(--border-color);
	padding: 24px;
}

.mc-single-review p {
	font-weight: 400;
}

.mc-single-review p:last-child {
	margin-bottom: 0;
}

.review-singles-grid .mc-single-review:last-child {
	margin-bottom: 20px;
}

.product-thumbnails .is-nav-selected a img,
.product-thumbnails img {
	height: 171px;
	object-fit: cover;
}

.sticky-bar-single-product {
	background-color: #fff;
	bottom: 0;
	box-shadow: 1px -1px 10px rgba(0, 0, 0, 0.15);
	min-width: 90px;
	padding: 12px 0;
	position: sticky;
	z-index: 10;
}

.sticky-bar-single-product .col {
	padding-bottom: 0;
}

.sticky-bar-inner {
	align-items: center;
	display: flex;
	gap: 10px;
	justify-content: space-between;
	min-width: 0;
}

.sticky-bar-inner img {
	width: 100px;
}

.sticky-bar-inner-left {
	display: flex;
	gap: 10px;
	min-width: 0;
}

.sticky-bar-text {
	margin: auto 0;
	min-width: 0;
}

.sticky-bar-text > p {
	color: var(--dark-color);
	font-weight: 700;
	margin-bottom: 0;
	overflow: hidden;
	text-overflow: ellipsis;
}

.sticky-bar-text .woocommerce-price-suffix {
	display: none;
}

body.single-product .sticky-bar-text .price,
body.single-product .sticky-bar-text .product-page-price,
body.single-product .sticky-bar-text .product-page-price bdi {
	color: var(--dark-color) !important;
	font-size: 15px !important;
	font-weight: 700;
	line-height: 1.2;
}

.sticky-bar-right {
	flex: 0 1 auto;
	min-width: 0;
}

.sticky-bar-button .cart {
	margin-bottom: 0;
	width: 100%;
}

.sticky-bar-button .single_add_to_cart_button {
	flex: 1 1 auto;
	margin-right: 0;
	max-width: 100%;
	min-width: 0;
	width: auto !important;
}

body.single .sticky-bar-button .single_add_to_cart_button.is-selection-needed {
	background: #f4f7fb !important;
	border: 1px solid var(--color-border);
	color: var(--dark-color);
	cursor: pointer;
}

body.single .sticky-bar-button .single_add_to_cart_button.is-selection-needed::before {
	display: none;
}

body.single .sticky-bar-button .single_add_to_cart_button.is-selection-needed:hover,
body.single .sticky-bar-button .single_add_to_cart_button.is-selection-needed:focus-visible {
	background: var(--soft-blue) !important;
	color: var(--color-blue);
}

.sticky-bar-single-product.is-selection-needed .custom-quantity-container .quantity {
	opacity: 0.65;
}

.sticky-bar-single-product.is-selection-needed .custom-quantity-container .qty,
.sticky-bar-single-product.is-selection-needed .custom-quantity-container .mc-qty-button {
	cursor: pointer;
}

.custom-quantity-container {
	align-items: stretch;
	display: flex;
	gap: 20px;
	justify-content: space-between;
	max-width: 100%;
	min-width: 0;
}

.sticky-bar-button .custom-quantity-container {
	gap: clamp(8px, 1.8vw, 20px);
	justify-content: flex-end;
	width: 100%;
}

body .custom-quantity-container .single_add_to_cart_button {
	padding: 8px 50px;
}

/* Cart */
.woocommerce-cart .mc-page {
	background: linear-gradient(180deg, #f7fbff 0%, #fff 42%);
	padding-top: 42px;
}

.woocommerce-cart .mc-page__content {
	max-width: var(--container-width);
}

.woocommerce-cart .mc-page__header {
	margin-bottom: 24px;
}

.woocommerce-cart .woocommerce-notices-wrapper {
	margin: 0 auto 18px;
	max-width: var(--container-width);
}

.woocommerce-Tabs-panel ul {
	padding-left: 20px;
}

.maris-cart {
	position: relative;
}

.maris-cart.is-updating {
	pointer-events: none;
}

.maris-cart.is-updating::after {
	background: rgba(255, 255, 255, 0.68);
	border-radius: var(--radius);
	content: "";
	inset: 0;
	position: absolute;
	z-index: 5;
}

.maris-cart.is-updating::before {
	animation: maris-cart-spin 0.8s linear infinite;
	border: 3px solid rgba(20, 119, 230, 0.18);
	border-radius: 999px;
	border-top-color: var(--color-blue);
	content: "";
	height: 34px;
	left: 50%;
	margin: -17px 0 0 -17px;
	position: absolute;
	top: 50%;
	width: 34px;
	z-index: 6;
}

@keyframes maris-cart-spin {
	to {
		transform: rotate(360deg);
	}
}

.maris-cart__layout {
	align-items: start;
	display: grid;
	gap: 32px;
	grid-template-columns: minmax(0, 1fr) 416px;
	width: 100%;
}

.maris-cart__items,
.woocommerce-cart .cart_totals {
	background: #fff;
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
	box-shadow: 0 18px 46px rgba(8, 43, 99, 0.08);
	overflow: hidden;
}

.woocommerce-cart .maris-cart__form,
.woocommerce-cart .cart-collaterals {
	float: none !important;
	margin: 0;
	min-width: 0;
	width: 100% !important;
}

.maris-cart__header {
	align-items: center;
	border-bottom: 1px solid var(--color-border);
	display: flex;
	gap: 18px;
	justify-content: space-between;
	padding: 24px 28px;
}

.maris-cart__header h2,
.woocommerce-cart .cart_totals h2 {
	color: var(--color-navy);
	font-size: 26px;
	font-weight: 700;
	line-height: 1.2;
	margin: 0;
}

.maris-cart__header p {
	color: var(--color-muted);
	font-size: 15px;
	font-weight: 600;
	margin: 6px 0 0;
}

.maris-cart__continue {
	color: var(--color-blue);
	font-size: 14px;
	font-weight: 700;
	white-space: nowrap;
}

.maris-cart__list {
	display: grid;
}

.maris-cart__columns {
	align-items: end;
	border-bottom: 1px solid var(--color-border);
	display: grid;
	gap: 20px;
	grid-template-columns: 86px minmax(250px, 1fr) 72px 108px 116px 34px;
	padding: 20px 28px 10px;
}

.maris-cart__column-label {
	color: var(--color-navy);
	font-size: 16px;
	font-weight: 700;
	line-height: 1.2;
}

.maris-cart__column-label--price {
	grid-column: 3;
}

.maris-cart__column-label--quantity {
	grid-column: 4;
	justify-self: center;
}

.maris-cart__column-label--subtotal {
	grid-column: 5;
}

.maris-cart-item {
	align-items: center;
	display: grid;
	gap: 20px;
	grid-template-columns: 86px minmax(250px, 1fr) 72px 108px 116px 34px;
	padding: 22px 28px;
	position: relative;
}

.maris-cart-item + .maris-cart-item {
	border-top: 1px solid var(--color-border);
}

.maris-cart-item__media {
	align-items: center;
	background: var(--color-bg-light);
	border: 1px solid var(--color-border);
	border-radius: 8px;
	display: flex;
	justify-content: center;
	overflow: hidden;
	width: 86px;
}

.maris-cart-item__media img {
	display: block;
	height: 100%;
	object-fit: contain;
	width: 100%;
}

.maris-cart-item__title {
	font-size: 17px;
	font-weight: 700;
	line-height: 1.35;
	margin: 0;
}

.maris-cart-item__title a {
	color: var(--color-navy);
	text-decoration: none;
}

.maris-cart-item__title a:hover,
.maris-cart-item__title a:focus-visible {
	color: var(--color-blue);
}

.maris-cart-item__content {
	min-width: 0;
}

.maris-cart-item .variation,
.maris-cart-item .backorder_notification {
	color: var(--color-muted);
	font-size: 13px;
	margin: 8px 0 0;
}

.maris-cart-item__price,
.maris-cart-item__quantity,
.maris-cart-item__subtotal {
	align-self: center;
	display: grid;
	gap: 7px;
	grid-template-rows: 60px;
}

.maris-cart-item__quantity {
	justify-self: center;
	transform: none;
}

.maris-cart-item__price > span,
.maris-cart-item__quantity > span,
.maris-cart-item__subtotal > span {
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	color: var(--color-navy);
	font-size: 16px;
	font-weight: 700;
	height: 1px;
	letter-spacing: 0;
	line-height: 18px;
	overflow: hidden;
	position: absolute;
	text-transform: none;
	white-space: nowrap;
	width: 1px;
}

.maris-cart-item__price strong,
.maris-cart-item__subtotal strong {
	align-items: center;
	color: var(--color-navy);
	display: flex;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.1;
	min-height: 36px;
}

.maris-cart-item__mobile-price {
	display: none;
}

.maris-cart-item__unit-price {
	display: none;
}

.maris-cart-qty {
	align-items: stretch;
	background: #fff;
	border: 2px solid rgba(41, 50, 75, 0.42);
	display: grid;
	grid-template-columns: 34px 36px 34px;
	height: 60px;
	width: 108px;
}

.maris-cart-qty .quantity {
	display: contents;
	margin: 0 !important;
}

.maris-cart-qty__button {
	align-items: center;
	background: #fff;
	border: 0;
	color: var(--dark-color);
	cursor: pointer;
	display: flex;
	font-family: var(--font-primary);
	font-size: 22px;
	font-weight: 600;
	height: 100%;
	justify-content: center;
	line-height: 1;
	padding: 0;
}

.maris-cart-qty__button:hover,
.maris-cart-qty__button:focus-visible {
	background-color: #f1f1f1;
	color: #000;
}

.maris-cart-qty__button:disabled {
	cursor: default;
	opacity: 0.45;
}

.maris-cart-qty input.qty {
	-moz-appearance: textfield;
	appearance: textfield;
	background: #fff;
	border: 0;
	border-radius: 0;
	color: var(--dark-color);
	font-family: var(--font-primary);
	font-size: 18px;
	font-weight: 600;
	height: 100%;
	line-height: 56px;
	min-height: 0;
	outline: 0;
	padding: 0;
	text-align: center;
	user-select: auto;
	width: 100% !important;
}

.maris-cart-qty input.qty:focus {
	box-shadow: inset 0 0 0 2px var(--dark-color);
}

.maris-cart-qty input.qty::-webkit-outer-spin-button,
.maris-cart-qty input.qty::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

.maris-cart-qty--single {
	align-items: center;
	color: var(--color-navy);
	display: inline-flex;
	font-weight: 700;
	justify-content: center;
	width: 108px;
}

.maris-cart-qty--single input[type="hidden"] {
	display: none;
}

.woocommerce-cart a.maris-cart-item__remove.remove {
	align-items: center;
	align-self: center;
	background: #fff;
	border: 1px solid var(--color-border);
	border-radius: 6px;
	color: var(--color-muted) !important;
	display: inline-flex;
	font-size: 0 !important;
	height: 32px;
	justify-content: center;
	line-height: 1;
	text-decoration: none;
	transform: none;
	width: 32px;
}

.maris-cart-item__remove-icon {
	display: block;
	height: 14px;
	position: relative;
	width: 14px;
}

.maris-cart-item__remove-icon::before,
.maris-cart-item__remove-icon::after {
	background: currentColor;
	border-radius: 999px;
	content: "";
	height: 2px;
	left: 0;
	position: absolute;
	top: 6px;
	width: 14px;
}

.maris-cart-item__remove-icon::before {
	transform: rotate(45deg);
}

.maris-cart-item__remove-icon::after {
	transform: rotate(-45deg);
}

.woocommerce-cart a.maris-cart-item__remove.remove:hover,
.woocommerce-cart a.maris-cart-item__remove.remove:focus-visible {
	background: #fff1f2;
	border-color: #f0b4ba;
	color: #b42318 !important;
}

.maris-cart__actions {
	align-items: end;
	background: var(--color-bg-light);
	border-top: 1px solid var(--color-border);
	display: flex;
	gap: 14px;
	justify-content: space-between;
	padding: 22px 28px;
}

.maris-cart-coupon {
	display: grid;
	gap: 8px;
	max-width: 460px;
	width: 100%;
}

.maris-cart-coupon label {
	color: var(--color-navy);
	font-size: 16px;
	font-weight: 700;
}

.maris-cart-coupon__fields {
	display: flex;
	gap: 10px;
}

.maris-cart-coupon input {
	background: #fff;
	border: 1px solid var(--color-border);
	border-radius: 6px;
	color: var(--color-text);
	font-family: var(--font-primary);
	font-size: 15px;
	min-height: 44px;
	padding: 10px 12px;
	width: 180px;
}

.woocommerce-cart .button,
.woocommerce-cart button.button,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
	align-items: center;
	background: var(--color-navy) !important;
	border: 0 !important;
	border-radius: 6px;
	color: #fff !important;
	cursor: pointer;
	display: inline-flex;
	font-family: var(--font-primary);
	font-size: 15px;
	font-weight: 700;
	justify-content: center;
	line-height: 1.2;
	min-height: 44px;
	padding: 12px 18px;
	text-decoration: none;
	transition: background 0.2s ease, transform 0.2s ease;
}

.woocommerce-cart .return-to-shop .button.wc-backward {
	align-items: center;
	display: inline-flex;
	height: 44px;
	justify-content: center;
	line-height: 1;
	padding-bottom: 0;
	padding-top: 0;
}

.woocommerce-cart .button:hover,
.woocommerce-cart .button:focus-visible,
.woocommerce-cart button.button:hover,
.woocommerce-cart button.button:focus-visible,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:focus-visible {
	background: var(--color-navy) !important;
	color: #fff !important;
	transform: translateY(-1px);
}

.maris-cart__summary {
	position: sticky;
	top: 24px;
}

.woocommerce-cart .cart-collaterals .cart_totals,
.woocommerce-cart .maris-cart__summary .cart_totals,
.woocommerce-cart .cart_totals {
	float: none !important;
	max-width: none;
	padding: 24px;
	width: 100% !important;
}

.woocommerce-cart .cart_totals h2 {
	margin-bottom: 20px;
}

.woocommerce-cart .cart_totals .shop_table {
	border: 1px solid var(--color-border);
	border-collapse: separate;
	border-radius: var(--radius);
	border-spacing: 0;
	overflow: hidden;
	table-layout: fixed;
	width: 100%;
}

.woocommerce-cart .cart_totals .shop_table th,
.woocommerce-cart .cart_totals .shop_table td {
	border: 0;
	border-bottom: 1px solid var(--color-border);
	color: var(--color-text);
	font-size: 16px;
	line-height: 1.45;
	padding: 14px 16px;
	text-align: left;
	vertical-align: top;
	word-break: normal;
	overflow-wrap: break-word;
}

.woocommerce-cart .cart_totals .shop_table th {
	color: var(--color-navy);
	font-weight: 700;
	width: 36%;
}

.woocommerce-cart .cart_totals .shop_table td {
	color: var(--color-navy);
	font-weight: 600;
	text-align: right;
	width: 64%;
}

.woocommerce-cart .cart_totals .shop_table td small,
.woocommerce-cart .cart_totals .shop_table td .includes_tax,
.woocommerce-cart .cart_totals .shop_table td .tax_label {
	color: var(--color-text);
	font-weight: 500;
}

.woocommerce-cart .cart_totals .shop_table td .woocommerce-Price-amount,
.woocommerce-cart .cart_totals .shop_table td strong {
	color: var(--color-navy);
	font-weight: 700;
}

.woocommerce-cart .cart_totals .shop_table tr:last-child th,
.woocommerce-cart .cart_totals .shop_table tr:last-child td {
	border-bottom: 0;
}

.woocommerce-cart .cart_totals .order-total th,
.woocommerce-cart .cart_totals .order-total td {
	background: var(--color-bg-light);
	color: var(--color-navy);
	font-size: 16px;
	font-weight: 700;
}

.woocommerce-cart .cart_totals .order-total td .includes_tax {
	display: block;
	font-size: 12px;
	line-height: 1.45;
	margin-top: 5px;
}

.woocommerce-cart .cart_totals .order-total td .includes_tax .woocommerce-Price-amount {
	font-size: 12px;
	font-weight: 700;
}

.woocommerce-cart .wc-proceed-to-checkout {
	padding: 20px 0 0;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
	font-size: 18px;
	min-height: 56px;
	width: 100%;
}

.maris-cart--empty {
	background: #fff;
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
	box-shadow: 0 18px 46px rgba(8, 43, 99, 0.08);
	margin: 0 auto;
	max-width: 860px;
	padding: 46px 36px;
	text-align: center;
}

.maris-cart-empty {
	align-items: center;
	display: flex;
	flex-direction: column;
	margin: 0 auto;
	max-width: 520px;
}

.maris-cart-empty h2 {
	color: var(--color-navy);
	font-size: 30px;
	font-weight: 700;
	line-height: 1.2;
	margin: 0 0 10px;
}

.maris-cart-empty p {
	color: var(--color-muted);
	font-size: 15px;
	font-weight: 600;
	line-height: 1.5;
	margin: 0;
}

.maris-cart--empty .return-to-shop {
	margin: 26px 0 0;
}

@media (max-width: 1180px) {
	.maris-cart__layout {
		grid-template-columns: 1fr;
	}

	.maris-cart__summary {
		position: static;
	}

	.maris-cart__columns {
		grid-template-columns: 86px minmax(180px, 1fr) 72px 108px 116px 34px;
	}

	.maris-cart-item {
		grid-template-columns: 86px minmax(180px, 1fr) 72px 108px 116px 34px;
	}
}

@media (max-width: 800px) {
	.woocommerce-cart .mc-page {
		padding-top: 30px;
	}

	.maris-cart__header,
	.maris-cart__actions {
		align-items: stretch;
		flex-direction: column;
		padding: 20px;
	}

	.maris-cart--empty {
		padding: 34px 20px;
	}

	.maris-cart-empty h2 {
		font-size: 24px;
	}

	.maris-cart__continue {
		white-space: normal;
	}

	.maris-cart__columns {
		display: none;
	}

	.maris-cart-item {
		align-items: start;
		gap: 16px 14px;
		grid-template-columns: 76px minmax(0, 1fr);
		padding: 16px 48px 16px 16px;
	}

	.maris-cart-item__media {
		height: 76px;
		width: 76px;
	}

	.maris-cart-item__content {
		min-width: 0;
	}

	.maris-cart-item__title {
		font-size: 16px;
		line-height: 1.28;
		padding-right: 2px;
	}

	.maris-cart-item__mobile-price {
		display: none;
	}

	.maris-cart-item__price {
		display: none;
	}

	.maris-cart-item__quantity,
	.maris-cart-item__subtotal {
		background: transparent;
		border: 0;
		border-radius: 0;
		grid-column: 1 / -1;
		grid-template-rows: none;
		padding: 0;
	}

	.maris-cart-item__quantity {
		align-self: start;
		grid-row: 2;
		justify-self: end;
	}

	.maris-cart-item__subtotal {
		align-self: start;
		display: grid;
		gap: 11px;
		grid-row: 2;
		justify-items: start;
		justify-self: start;
		height: 100%;
	}

	.maris-cart-item__quantity > span,
	.maris-cart-item__subtotal > span {
		display: none;
	}

	.maris-cart-item__subtotal strong {
		font-size: 16px;
		line-height: 1.2;
		min-height: 0;
	}

	.maris-cart-item__unit-price {
		color: var(--color-navy);
		display: block;
		font-size: 12px;
		font-weight: 600;
		line-height: 1.2;
	}

	.maris-cart-qty {
		grid-template-columns: 34px 36px 34px;
		height: 60px;
		width: 108px;
	}

	.woocommerce-cart a.maris-cart-item__remove.remove {
		background: transparent;
		border-color: transparent;
		height: 32px;
		position: absolute;
		right: 16px;
		top: 18px;
		transform: none;
		width: 32px;
		align-items: start;
	}

	.maris-cart-coupon__fields {
		flex-direction: column;
	}

	.maris-cart-coupon input,
	.maris-cart-coupon .button {
		width: 100%;
	}

	.woocommerce-cart .cart_totals {
		padding: 20px;
	}

	.woocommerce-cart .cart_totals .shop_table th,
	.woocommerce-cart .cart_totals .shop_table td {
		display: block;
		padding: 14px;
		width: 100%;
	}

	.woocommerce-cart .cart_totals .shop_table th {
		border-bottom: 0;
		padding-bottom: 4px;
	}
}

.cart_totals .shop_table .maris-cart-free-shipping-row td {
	border: 0;
	padding: 8px 14px 14px;
}

.cart_totals .shop_table .maris-cart-free-shipping-row td::before {
	display: none;
}

.maris-cart-free-shipping {
	border: 1px solid #a7d2f2;
	border-radius: 8px;
	padding: 12px 14px;
}

.maris-cart-free-shipping--progress {
	background: var(--soft-blue);
	color: var(--dark-color);
}

.maris-cart-free-shipping--success {
	background: rgba(0, 173, 66, 0.11);
	border-color: var(--color-green);
	color: var(--color-green);
}

.maris-cart-free-shipping__message {
	align-items: center;
	display: flex;
	font-size: 14px;
	font-weight: 500;
	gap: 8px;
	line-height: 1.35;
	margin-bottom: 10px;
}

.maris-cart-free-shipping__icon {
	display: block;
	flex: 0 0 auto;
	height: 17px;
	width: 17px;
}

.maris-cart-free-shipping__meter {
	background: rgba(41, 50, 75, 0.12);
	border-radius: 999px;
	height: 8px;
	overflow: hidden;
}

.maris-cart-free-shipping__meter span {
	background: #2a84c6;
	border-radius: inherit;
	display: block;
	height: 100%;
	width: 0;
}

.maris-cart-free-shipping__meter--0 span { width: 0%; }
.maris-cart-free-shipping__meter--5 span { width: 5%; }
.maris-cart-free-shipping__meter--10 span { width: 10%; }
.maris-cart-free-shipping__meter--15 span { width: 15%; }
.maris-cart-free-shipping__meter--20 span { width: 20%; }
.maris-cart-free-shipping__meter--25 span { width: 25%; }
.maris-cart-free-shipping__meter--30 span { width: 30%; }
.maris-cart-free-shipping__meter--35 span { width: 35%; }
.maris-cart-free-shipping__meter--40 span { width: 40%; }
.maris-cart-free-shipping__meter--45 span { width: 45%; }
.maris-cart-free-shipping__meter--50 span { width: 50%; }
.maris-cart-free-shipping__meter--55 span { width: 55%; }
.maris-cart-free-shipping__meter--60 span { width: 60%; }
.maris-cart-free-shipping__meter--65 span { width: 65%; }
.maris-cart-free-shipping__meter--70 span { width: 70%; }
.maris-cart-free-shipping__meter--75 span { width: 75%; }
.maris-cart-free-shipping__meter--80 span { width: 80%; }
.maris-cart-free-shipping__meter--85 span { width: 85%; }
.maris-cart-free-shipping__meter--90 span { width: 90%; }
.maris-cart-free-shipping__meter--95 span { width: 95%; }
.maris-cart-free-shipping__meter--100 span { width: 100%; }

.maris-cart-free-shipping--success .maris-cart-free-shipping__meter {
	background: rgba(0, 173, 66, 0.18);
}

.maris-cart-free-shipping--success .maris-cart-free-shipping__meter span {
	background: var(--color-green);
}

.maris-cart-free-shipping__amounts {
	color: var(--dark-color);
	font-size: 12px;
	font-weight: 400;
	line-height: 1.3;
	margin-top: 8px;
	text-align: right;
}

.cart_totals .woocommerce-shipping-methods {
	line-height: 1.3;
	margin: 0;
	text-align: right;
}

.cart_totals .woocommerce-shipping-methods li {
	align-items: center;
	display: flex;
	gap: 8px;
	justify-content: flex-end;
	line-height: 1.3;
	margin-bottom: 4px;
	margin-top: 0;
}

.cart_totals .woocommerce-shipping-methods li:last-child {
	margin-bottom: 0;
}

.cart_totals .woocommerce-shipping-methods label {
	color: var(--color-navy);
	display: inline-flex;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.3;
	margin: 0;
}

.cart_totals .shop_table tr.woocommerce-shipping-totals.shipping th,
.cart_totals .shop_table tr.woocommerce-shipping-totals.shipping td {
	line-height: 1.4;
	padding-bottom: 14px;
	padding-top: 14px;
	vertical-align: top;
}

.cart_totals .shop_table tr.woocommerce-shipping-totals.shipping th {
	white-space: nowrap;
}

.cart_totals .woocommerce-shipping-destination {
	color: var(--color-muted);
	font-size: 12px;
	font-weight: 500;
	line-height: 1.45;
	margin: 8px 0 0;
	text-align: right;
}

.cart_totals .woocommerce-shipping-destination strong {
	color: var(--color-text);
	font-weight: 600;
}

.cart_totals .shipping-calculator-button {
	color: var(--color-blue);
	display: inline-flex;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.3;
	margin-top: 6px;
}

.cart_totals .shipping-calculator-button::after {
	content: none;
	display: none;
}

.maris-shipping-label--paid {
	display: inline-block;
	white-space: nowrap;
}

.maris-shipping-label--free {
	color: var(--color-green);
	display: inline-block;
	white-space: nowrap;
}

/* Checkout */
.woocommerce-checkout .mc-page {
	background: linear-gradient(180deg, #f7fbff 0%, #fff 46%);
	padding-top: 42px;
}

.woocommerce-checkout .mc-page__content > .woocommerce {
	display: block;
}

.woocommerce-checkout .woocommerce-form-coupon-toggle,
.woocommerce-checkout .woocommerce-notices-wrapper,
.woocommerce-checkout form.checkout_coupon,
.woocommerce-checkout form.checkout {
	margin-left: auto;
	margin-right: auto;
	max-width: var(--container-width);
	width: 100%;
}

.woocommerce-checkout .woocommerce-info,
.woocommerce-checkout .woocommerce-message,
.woocommerce-checkout .woocommerce-error {
	background: #fff;
	border: 1px solid var(--color-border);
	border-left: 4px solid var(--color-navy);
	border-radius: var(--radius);
	box-shadow: 0 14px 34px rgba(8, 43, 99, 0.06);
	color: var(--color-text);
	font-size: 14px;
	line-height: 1.5;
	margin: 0 0 20px;
	padding: 16px 18px;
}

.woocommerce-checkout .woocommerce-error {
	border-left-color: #b42318;
}

.woocommerce-checkout .woocommerce-info::before,
.woocommerce-checkout .woocommerce-message::before,
.woocommerce-checkout .woocommerce-error::before {
	content: none;
	display: none;
}

.woocommerce-checkout .woocommerce-info a,
.woocommerce-checkout .woocommerce-message a {
	color: var(--color-blue);
	font-weight: 700;
}

.woocommerce-checkout form.checkout_coupon {
	background: #fff;
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
	box-shadow: 0 14px 34px rgba(8, 43, 99, 0.06);
	margin-bottom: 24px;
	padding: 20px;
}

.woocommerce-checkout form.checkout_coupon p {
	margin: 0 0 14px;
}

.woocommerce-checkout form.checkout_coupon .form-row {
	margin-bottom: 0;
}

.woocommerce-checkout form.checkout {
	align-items: start;
	display: grid;
	gap: 32px;
	grid-template-columns: minmax(0, 1fr) minmax(420px, 460px);
	justify-content: center;
}

.woocommerce-checkout form.checkout > .woocommerce-NoticeGroup,
.woocommerce-checkout form.checkout > .woocommerce-NoticeGroup-checkout {
	grid-column: 1 / -1;
}

.woocommerce-checkout .maris-checkout__main {
	display: grid;
	gap: 20px;
	grid-column: 1;
	min-width: 0;
}

.woocommerce-checkout .maris-checkout__summary {
	align-self: start;
	background: var(--soft-blue);
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
	box-shadow: 0 18px 46px rgba(8, 43, 99, 0.08);
	grid-column: 2;
	min-width: 0;
	overflow: hidden;
	position: sticky;
	top: 50px;
}

.woocommerce-checkout .maris-checkout__summary-toggle {
	align-items: center;
	cursor: pointer;
	display: flex;
	gap: 16px;
	justify-content: space-between;
	list-style: none;
	min-height: 88px;
	padding: 20px 24px;
}

.woocommerce-checkout .maris-checkout__summary[open] .maris-checkout__summary-toggle {
	border-bottom-color: transparent;
}

.woocommerce-checkout .maris-checkout__summary-toggle::-webkit-details-marker {
	display: none;
}

.woocommerce-checkout .maris-checkout__summary-label {
	align-items: center;
	color: var(--color-navy);
	display: inline-flex;
	font-size: 16px;
	font-weight: 600;
	gap: 8px;
	line-height: 1.2;
	min-width: 0;
}

.woocommerce-checkout .maris-checkout__summary-icon {
	background: currentColor;
	display: block;
	height: 14px;
	mask: url("../img/chevron-down.svg") center / contain no-repeat;
	-webkit-mask: url("../img/chevron-down.svg") center / contain no-repeat;
	transform: rotate(0deg);
	transition: transform 0.18s ease;
	width: 14px;
}

.woocommerce-checkout .maris-checkout__summary[open] .maris-checkout__summary-icon {
	transform: rotate(180deg);
}

.woocommerce-checkout .maris-checkout__summary-total {
	align-items: baseline;
	color: var(--color-navy);
	display: flex;
	flex-wrap: wrap;
	font-size: 16px;
	gap: 6px;
	justify-content: flex-end;
	line-height: 1.2;
	text-align: right;
}

.woocommerce-checkout .maris-checkout__summary-total strong {
	font-size: 16px;
	font-weight: 700;
	white-space: nowrap;
}

.woocommerce-checkout .maris-checkout__summary-total small {
	color: var(--color-navy);
	font-size: 12px;
	font-weight: 500;
}

.woocommerce-checkout .maris-checkout__summary-total .is-hidden {
	display: none;
}

.woocommerce-checkout .maris-checkout__summary-body {
	padding-bottom: 18px;
}

.woocommerce-checkout .maris-checkout__heading-desktop {
	display: none;
}

.woocommerce-checkout .maris-checkout__heading-mobile {
	display: inline;
}

.woocommerce-checkout #customer_details {
	display: grid;
	float: none;
	gap: 20px;
	width: 100%;
}

.woocommerce-checkout #customer_details::before,
.woocommerce-checkout #customer_details::after {
	content: none;
	display: none;
}

.woocommerce-checkout #customer_details .col-1,
.woocommerce-checkout #customer_details .col-2 {
	float: none;
	width: 100%;
}

.woocommerce-checkout .woocommerce-billing-fields,
.woocommerce-checkout .woocommerce-shipping-fields,
.woocommerce-checkout .woocommerce-additional-fields,
.woocommerce-checkout .maris-checkout__payment-card {
	background: #fff;
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
	box-shadow: 0 18px 46px rgba(8, 43, 99, 0.08);
	padding: 24px;
}

.woocommerce-checkout .woocommerce-billing-fields h3,
.woocommerce-checkout .woocommerce-shipping-fields h3,
.woocommerce-checkout .woocommerce-additional-fields h3,
.woocommerce-checkout .maris-checkout__payment-card h3,
.woocommerce-checkout #order_review_heading {
	color: var(--color-navy);
	font-size: 24px;
	font-weight: 700;
	line-height: 1.25;
	margin: 0 0 20px;
}

.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
.woocommerce-checkout .woocommerce-additional-fields__field-wrapper,
.woocommerce-checkout div.create-account {
	display: grid;
	gap: 14px 16px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.woocommerce-checkout .ocwma_select_shipping, .woocommerce-checkout .form_option_shipping {
	display: none;
}

.woocommerce-terms-and-conditions-checkbox-text {
	cursor: pointer;
}

.woocommerce-checkout .woocommerce-billing-fields > select,
.woocommerce-checkout .woocommerce-shipping-fields > select {
	margin-bottom: 14px;
}

.woocommerce-checkout .woocommerce-billing-fields > select.ocwma_select,
.woocommerce-checkout .woocommerce-shipping-fields > select.ocwma_select,
.woocommerce-checkout .woocommerce-billing-fields > select.ocwma_select ~ button,
.woocommerce-checkout .woocommerce-shipping-fields > select.ocwma_select ~ button,
.woocommerce-checkout .woocommerce-billing-fields > select.ocwma_select ~ input[type="button"],
.woocommerce-checkout .woocommerce-shipping-fields > select.ocwma_select ~ input[type="button"],
.woocommerce-checkout .woocommerce-billing-fields > select.ocwma_select ~ .button,
.woocommerce-checkout .woocommerce-shipping-fields > select.ocwma_select ~ .button {
	display: none !important;
}

.woocommerce-checkout .woocommerce-billing-fields > button,
.woocommerce-checkout .woocommerce-shipping-fields > button,
.woocommerce-checkout .woocommerce-billing-fields > input[type="button"],
.woocommerce-checkout .woocommerce-shipping-fields > input[type="button"],
.woocommerce-checkout .woocommerce-billing-fields > .button,
.woocommerce-checkout .woocommerce-shipping-fields > .button {
	align-items: center;
	background-color: var(--color-navy) !important;
	border: 0;
	border-radius: 6px;
	color: #fff;
	cursor: pointer;
	display: inline-flex;
	font-size: 13px;
	font-weight: 700;
	justify-content: center;
	line-height: 1.2;
	margin: 0 0 20px;
	min-height: 42px;
	padding: 11px 16px;
}

.woocommerce-checkout .woocommerce-billing-fields > button:hover,
.woocommerce-checkout .woocommerce-billing-fields > button:focus-visible,
.woocommerce-checkout .woocommerce-shipping-fields > button:hover,
.woocommerce-checkout .woocommerce-shipping-fields > button:focus-visible,
.woocommerce-checkout .woocommerce-billing-fields > input[type="button"]:hover,
.woocommerce-checkout .woocommerce-billing-fields > input[type="button"]:focus-visible,
.woocommerce-checkout .woocommerce-shipping-fields > input[type="button"]:hover,
.woocommerce-checkout .woocommerce-shipping-fields > input[type="button"]:focus-visible,
.woocommerce-checkout .woocommerce-billing-fields > .button:hover,
.woocommerce-checkout .woocommerce-billing-fields > .button:focus-visible,
.woocommerce-checkout .woocommerce-shipping-fields > .button:hover,
.woocommerce-checkout .woocommerce-shipping-fields > .button:focus-visible {
	background: var(--dark-color);
	color: #fff;
}

.woocommerce-checkout .form-row {
	float: none !important;
	margin: 0;
	padding: 0;
	width: auto !important;
}

.woocommerce-checkout .form-row-wide,
.woocommerce-checkout #billing_country_field,
.woocommerce-checkout #shipping_country_field,
.woocommerce-checkout #billing_address_1_field,
.woocommerce-checkout #shipping_address_1_field,
.woocommerce-checkout #billing_city_field,
.woocommerce-checkout #shipping_city_field,
.woocommerce-checkout #billing_phone_field,
.woocommerce-checkout #billing_email_field,
.woocommerce-checkout #order_comments_field,
.woocommerce-checkout .maris-checkout-account,
.woocommerce-checkout .create-account .form-row {
	grid-column: 1 / -1;
}

.woocommerce-checkout .maris-checkout-account {
	background: #f8fafc;
	border: 1px solid var(--color-border);
	border-radius: 6px;
	margin-top: 2px;
	padding: 18px;
}

.woocommerce-checkout .maris-checkout-account__toggle-row {
	margin: 0;
}

.woocommerce-checkout .maris-checkout-account__label {
	align-items: center;
	cursor: pointer;
	display: grid;
	gap: 14px;
	grid-template-columns: 48px minmax(0, 1fr);
	margin: 0;
	width: 100%;
}

.woocommerce-checkout #createaccount {
	height: 1px;
	margin: 0;
	opacity: 0;
	position: absolute;
	width: 1px;
}

.woocommerce-checkout .maris-checkout-account__switch {
	background: #c6d2de;
	border-radius: 999px;
	display: inline-block;
	height: 26px;
	position: relative;
	transition: background 0.2s ease;
	width: 46px;
}

.woocommerce-checkout .maris-checkout-account__switch::after {
	background: #fff;
	border-radius: 50%;
	box-shadow: 0 2px 6px rgba(8, 43, 99, 0.18);
	content: "";
	height: 20px;
	left: 3px;
	position: absolute;
	top: 3px;
	transition: transform 0.2s ease;
	width: 20px;
}

.woocommerce-checkout #createaccount:checked + .maris-checkout-account__switch {
	background: #caa45e;
}

.woocommerce-checkout #createaccount:checked + .maris-checkout-account__switch::after {
	transform: translateX(20px);
}

.woocommerce-checkout .maris-checkout-account__copy strong,
.woocommerce-checkout .maris-checkout-account__copy small {
	display: block;
}

.woocommerce-checkout .maris-checkout-account__copy strong {
	color: var(--color-navy);
	font-size: 14px;
	font-weight: 700;
	line-height: 1.35;
}

.woocommerce-checkout .maris-checkout-account__copy small {
	color: var(--color-muted);
	font-size: 12px;
	font-weight: 500;
	line-height: 1.45;
	margin-top: 3px;
}

.woocommerce-checkout .maris-checkout-account__fields {
	margin-top: 14px;
}

.woocommerce-checkout .maris-checkout-account__fields .form-row {
	grid-column: 1 / -1;
}

.woocommerce-checkout .maris-checkout-account__fields .form-row + .form-row {
	margin-top: 10px;
}

.woocommerce-checkout .maris-checkout-account__fields .form-row label {
	display: none;
}

.woocommerce-checkout #billing_postcode_field,
.woocommerce-checkout #shipping_postcode_field {
	grid-column: 1;
}

.woocommerce-checkout #billing_house_number_field,
.woocommerce-checkout #shipping_house_number_field {
	grid-column: 2;
}

.woocommerce-checkout .form-row label {
	color: var(--color-navy);
	display: block;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.35;
	margin: 0 0 7px;
}

.woocommerce-checkout .required {
	color: #b42318;
	text-decoration: none;
}

.woocommerce-checkout .woocommerce-input-wrapper {
	display: block;
	width: 100%;
}

.woocommerce-checkout input.input-text,
.woocommerce-checkout select,
.woocommerce-checkout textarea,
.woocommerce-checkout .select2-container .select2-selection--single {
	background: #fff;
	border: 1px solid var(--color-border) !important;
	border-radius: 6px;
	box-shadow: none;
	color: var(--color-text);
	font-family: var(--font-primary);
	font-size: 14px;
	min-height: 46px;
	outline: 0;
	padding: 11px 13px;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
	width: 100%;
}

.woocommerce-checkout textarea {
	min-height: 92px;
	resize: vertical;
}

.woocommerce-checkout input.input-text:focus,
.woocommerce-checkout select:focus,
.woocommerce-checkout textarea:focus,
.woocommerce-checkout .select2-container--open .select2-selection--single {
	border-color: var(--color-navy) !important;
	box-shadow: 0 0 0 3px rgba(8, 43, 99, 0.08);
}

.woocommerce-checkout .select2-container .select2-selection--single {
	align-items: center;
	display: flex;
	padding: 0 13px;
}

.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered {
	color: var(--color-text);
	line-height: 44px;
	padding-left: 0;
	padding-right: 22px;
}

.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow {
	height: 44px;
	right: 8px;
}

.woocommerce-checkout .maris-address-lookup-feedback,
.woocommerce-cart .maris-address-lookup-feedback {
	background: #fff8f8;
	border: 1px solid #f0b4ba;
	border-radius: 6px;
	color: #b42318;
	display: none;
	font-size: 13px;
	font-weight: 600;
	grid-column: 1 / -1;
	line-height: 1.45;
	margin-top: -4px;
	padding: 10px 12px;
}

.woocommerce-checkout .maris-address-lookup-feedback.is-visible,
.woocommerce-cart .maris-address-lookup-feedback.is-visible {
	display: block;
}

.woocommerce-checkout .woocommerce-form__label-for-checkbox,
.contact-form-panel .gfield_checkbox .gchoice {
	align-items: flex-start;
	color: var(--color-text);
	display: flex;
	font-size: 16px;
	gap: 10px;
	line-height: 1.5;
	width: 100%;
}

.contact-form-panel .gfield_checkbox label {
	color: var(--color-text);
	display: inline;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.5;
	margin: 0;
}

.woocommerce-checkout .woocommerce-form__label-for-checkbox:not(.maris-checkout-account__label) input[type="checkbox"],
.contact-form-panel .gfield_checkbox input[type="checkbox"] {
	appearance: none;
	background: #fff;
	border: 1.5px solid var(--color-border);
	border-radius: 4px;
	cursor: pointer;
	display: inline-grid;
	flex: 0 0 auto;
	height: 18px;
	margin: 2px 2px 0 0;
	place-content: center;
	transition: background 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
	width: 18px;
}

.woocommerce-checkout .woocommerce-form__label-for-checkbox:not(.maris-checkout-account__label) input[type="checkbox"]::before,
.contact-form-panel .gfield_checkbox input[type="checkbox"]::before {
	border: solid #fff;
	border-width: 0 2px 2px 0;
	content: "";
	height: 9px;
	margin-top: -2px;
	transform: rotate(45deg) scale(0);
	transition: transform 0.16s ease;
	width: 5px;
}

.woocommerce-checkout .woocommerce-form__label-for-checkbox:not(.maris-checkout-account__label) input[type="checkbox"]:checked,
.contact-form-panel .gfield_checkbox input[type="checkbox"]:checked {
	background: var(--color-navy);
	border-color: var(--color-navy);
}

.woocommerce-checkout .woocommerce-form__label-for-checkbox:not(.maris-checkout-account__label) input[type="checkbox"]:checked::before,
.contact-form-panel .gfield_checkbox input[type="checkbox"]:checked::before {
	transform: rotate(45deg) scale(1);
}

.woocommerce-checkout .woocommerce-form__label-for-checkbox:not(.maris-checkout-account__label) input[type="checkbox"]:hover,
.contact-form-panel .gfield_checkbox input[type="checkbox"]:hover {
	border-color: var(--color-navy);
}

.woocommerce-checkout .woocommerce-form__label-for-checkbox:not(.maris-checkout-account__label) input[type="checkbox"]:focus-visible,
.contact-form-panel .gfield_checkbox input[type="checkbox"]:focus-visible {
	box-shadow: 0 0 0 3px rgba(8, 43, 99, 0.12);
	outline: 0;
}

.woocommerce-checkout .woocommerce-terms-and-conditions-checkbox-text {
	color: var(--color-text);
	display: inline;
	font-size: 16px;
	line-height: 1.5;
}

.woocommerce-checkout .form-row label.maris-checkout-account__label,
.woocommerce-checkout .woocommerce-form__label-for-checkbox.maris-checkout-account__label {
	align-items: center;
	display: grid;
	gap: 14px;
	grid-template-columns: 48px minmax(0, 1fr);
	margin: 0;
}

.woocommerce-checkout input[type="radio"] {
	accent-color: var(--color-navy);
	margin-top: 3px;
}

.woocommerce-checkout #ship-to-different-address {
	margin-bottom: 0;
}

.woocommerce-checkout #ship-to-different-address label {
	margin-bottom: 0;
	cursor: pointer;
}

.woocommerce-checkout .shipping_address {
	margin-top: 18px;
}

.woocommerce-checkout #order_review_heading {
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	font-size: 20px;
	letter-spacing: 0;
	margin: 0;
	padding: 0 24px 12px;
	text-transform: uppercase;
}

.woocommerce-checkout #order_review {
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	overflow: visible;
}

.woocommerce-checkout #order_review .shop_table {
	border: 0;
	border-collapse: collapse;
	margin: 0;
	width: 100%;
}

.woocommerce-checkout #order_review .shop_table thead,
.woocommerce-checkout #order_review .shop_table tbody,
.woocommerce-checkout #order_review .shop_table tfoot {
	display: block;
	width: 100%;
}

.woocommerce-checkout #order_review .shop_table thead {
	display: none;
}

.woocommerce-checkout #order_review .shop_table tbody {
	display: grid;
	gap: 12px;
	padding: 0 16px 18px;
}

.woocommerce-checkout #order_review .shop_table tfoot {
	display: grid;
	gap: 4px;
	padding: 0 24px;
}

.woocommerce-checkout #order_review .shop_table tr {
	align-items: center;
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(78px, auto);
	width: 100%;
}

.woocommerce-checkout #order_review .shop_table tbody tr {
	border: 1px solid var(--color-navy);
	border-radius: 999px;
	gap: 12px;
	grid-template-columns: minmax(0, 1fr) minmax(78px, auto);
	padding: 10px 12px;
}

.woocommerce-checkout #order_review .shop_table tfoot tr {
	grid-template-columns: minmax(0, 1fr) minmax(150px, auto);
}

.woocommerce-checkout #order_review .shop_table th,
.woocommerce-checkout #order_review .shop_table td {
	border: 0;
	color: var(--color-text);
	font-size: 16px;
	line-height: 1.45;
	padding: 14px 16px;
	vertical-align: middle;
}

.woocommerce-checkout #order_review .shop_table tbody td,
.woocommerce-checkout #order_review .shop_table tfoot th,
.woocommerce-checkout #order_review .shop_table tfoot td {
	padding: 0;
}

.woocommerce-checkout #order_review .shop_table th {
	color: var(--color-navy);
	font-weight: 700;
	text-align: left;
}

.woocommerce-checkout #order_review .shop_table td {
	text-align: right;
}

.woocommerce-checkout #order_review .shop_table tfoot th,
.woocommerce-checkout #order_review .shop_table tfoot td {
	align-self: stretch;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.woocommerce-checkout #order_review .shop_table tfoot td {
	align-items: flex-end;
}

.woocommerce-checkout #order_review .product-name {
	text-align: left;
}

.woocommerce-checkout #order_review tbody .product-name {
	width: 100%;
}

.woocommerce-checkout #order_review tbody .product-total {
	color: var(--color-navy);
	font-weight: 700;
	padding-left: 0;
	white-space: nowrap;
}

.woocommerce-checkout .maris-checkout-product {
	align-items: center;
	display: grid;
	gap: 10px;
	grid-template-columns: 56px minmax(0, 1fr);
	text-align: left;
}

.woocommerce-checkout .maris-checkout-product__image {
	align-items: center;
	background: transparent;
	border: 0;
	border-radius: 6px;
	display: flex;
	height: 56px;
	justify-content: center;
	overflow: visible;
	position: relative;
	width: 56px;
}

.woocommerce-checkout .maris-checkout-product__image a {
	align-items: center;
	display: flex;
	height: 100%;
	justify-content: center;
	width: 100%;
}

.woocommerce-checkout .maris-checkout-product__image img {
	display: block;
	height: 100%;
	mix-blend-mode: multiply;
	object-fit: contain;
	width: 100%;
}

.woocommerce-checkout .maris-checkout-product__content {
	min-width: 0;
}

.woocommerce-checkout .maris-checkout-product__name {
	color: var(--color-navy);
	display: block;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.35;
}

.woocommerce-checkout .maris-checkout-product__quantity {
	align-items: center;
	background: #151515;
	border-radius: 999px;
	color: #fff;
	display: flex;
	font-size: 12px;
	font-weight: 500;
	height: 20px;
	justify-content: center;
	line-height: 1;
	min-width: 20px;
	padding: 0 6px;
	position: absolute;
	right: -7px;
	top: -7px;
}

.woocommerce-checkout .maris-checkout-product__quantity-text {
	display: none;
}

.woocommerce-checkout #order_review .variation {
	color: var(--color-muted);
	font-size: 12px;
	line-height: 1.35;
	margin: 6px 0 0;
}

.woocommerce-checkout #order_review .variation dt,
.woocommerce-checkout #order_review .variation dd {
	display: inline;
	margin: 0;
}

.woocommerce-checkout #order_review .product-total,
.woocommerce-checkout #order_review tfoot td {
	color: var(--color-navy);
	font-weight: 700;
}

.woocommerce-checkout #order_review #shipping_method {
	list-style: none;
	margin: 0;
	padding: 0;
}

.woocommerce-checkout #order_review #shipping_method li {
	margin: 0;
}

.woocommerce-checkout #order_review #shipping_method label {
	color: var(--color-navy);
	font-size: 16px;
	font-weight: 700;
	white-space: nowrap;
}

.woocommerce-checkout #order_review .order-total th,
.woocommerce-checkout #order_review .order-total td {
	background: transparent;
	color: var(--color-navy);
	font-size: 16px;
	font-weight: 700;
}

.woocommerce-checkout #order_review .order-total td > strong {
	display: block;
	line-height: 1.2;
}

.woocommerce-checkout #order_review .includes_tax {
	color: var(--color-text);
	display: none;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.45;
	margin-top: 5px;
	max-width: 190px;
	text-align: right;
	width: max-content;
}

.woocommerce-checkout #order_review .includes_tax .amount {
	display: inline;
	font-size: inherit;
	font-weight: 700;
	white-space: nowrap;
}

.woocommerce-checkout #payment {
	background: transparent;
	border-radius: 0;
	padding: 0;
}

.woocommerce-checkout #payment ul.payment_methods {
	border-bottom: 0;
	display: grid;
	gap: 6px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.woocommerce-checkout #payment ul.payment_methods li {
	background: #fff;
	border: 1px solid var(--color-border) !important;
	border-radius: 6px;
	box-shadow: none;
	color: var(--color-text);
	font-family: var(--font-primary);
	margin: 0;
	min-height: 46px;
	outline: 0;
	padding: 0 13px;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
	width: 100%;
}

.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.woocommerce-checkout #payment ul.payment_methods li input {
	margin: 0 !important;
}

.woocommerce-checkout #payment ul.payment_methods li:last-child {
	margin-bottom: 0;
}

.woocommerce-checkout #payment ul.payment_methods label {
	align-items: center;
	color: var(--color-navy);
	display: inline-flex;
	flex: 1;
	font-size: 16px;
	font-weight: 700;
	gap: 0;
	line-height: 1.35;
	margin: 0;
	cursor: pointer;
}

.woocommerce-checkout #payment ul.payment_methods img {
	margin-left: auto;
	max-height: 24px;
	max-width: 44px;
}

.woocommerce-checkout #payment div.payment_box {
	background: var(--soft-blue);
	border-radius: 6px;
	color: var(--color-text);
	flex: 0 0 100%;
	font-size: 13px;
	line-height: 1.5;
	margin: 12px 0 0;
	padding: 12px;
}

.woocommerce-checkout #payment div.form-row {
	padding: 20px 0 0;
}

.woocommerce-checkout .woocommerce-privacy-policy-text {
	color: var(--color-text);
	font-size: 13px;
	line-height: 1.6;
}

.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
	margin-top: 12px;
}

.woocommerce-checkout #place_order,
.woocommerce-checkout .button,
.woocommerce-checkout button.button {
	align-items: center;
	background: var(--color-navy) !important;
	border: 0 !important;
	border-radius: 6px;
	color: #fff !important;
	cursor: pointer;
	display: inline-flex;
	font-family: var(--font-primary);
	font-size: 16px;
	font-weight: 700;
	justify-content: center;
	line-height: 1.2;
	min-height: 52px;
	padding: 14px 22px;
	text-decoration: none;
	transition: background 0.2s ease, transform 0.2s ease;
}

.woocommerce-checkout #place_order {
	margin-top: 16px;
	width: 100%;
}

.woocommerce-checkout #place_order:hover,
.woocommerce-checkout #place_order:focus-visible,
.woocommerce-checkout .button:hover,
.woocommerce-checkout .button:focus-visible,
.woocommerce-checkout button.button:hover,
.woocommerce-checkout button.button:focus-visible {
	background: var(--dark-color) !important;
	color: #fff !important;
	transform: translateY(-1px);
}

@media (max-width: 1100px) {
	.woocommerce-checkout form.checkout {
		grid-template-columns: 1fr;
	}

	.woocommerce-checkout .maris-checkout__main,
	.woocommerce-checkout .maris-checkout__summary {
		grid-column: 1;
	}

	.woocommerce-checkout .maris-checkout__summary {
		position: static;
	}
}

@media (max-width: 700px) {
	.woocommerce-checkout .mc-page {
		padding-top: 24px;
	}

	.woocommerce-checkout form.checkout {
		gap: 20px;
	}

	.woocommerce-checkout .woocommerce-billing-fields,
	.woocommerce-checkout .woocommerce-shipping-fields,
	.woocommerce-checkout .woocommerce-additional-fields,
	.woocommerce-checkout .maris-checkout__payment-card {
		padding: 16px;
	}

	.woocommerce-checkout .woocommerce-billing-fields h3,
	.woocommerce-checkout .woocommerce-shipping-fields h3,
	.woocommerce-checkout .woocommerce-additional-fields h3,
	.woocommerce-checkout .maris-checkout__payment-card h3 {
		margin-bottom: 16px;
	}

	.woocommerce-checkout .maris-checkout__summary-toggle {
		align-items: flex-start;
		min-height: 86px;
		padding: 18px 16px;
	}

	.woocommerce-checkout .maris-checkout__summary-total {
		max-width: 48%;
	}

	.woocommerce-checkout #order_review_heading {
		padding: 0 16px 12px;
	}

	.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
	.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
	.woocommerce-checkout .woocommerce-additional-fields__field-wrapper,
	.woocommerce-checkout div.create-account {
		gap: 11px;
		grid-template-columns: 1fr;
	}

	.woocommerce-checkout .form-row label {
		margin-bottom: 5px;
	}

	.woocommerce-checkout input.input-text,
	.woocommerce-checkout select,
	.woocommerce-checkout textarea,
	.woocommerce-checkout .select2-container .select2-selection--single {
		min-height: 44px;
		padding: 10px 12px;
	}

	.woocommerce-checkout .maris-checkout-account {
		padding: 16px;
	}

	.woocommerce-checkout .maris-checkout-product {
		grid-template-columns: 56px minmax(0, 1fr);
	}

	.woocommerce-checkout .maris-checkout-product__image {
		height: 56px;
		width: 56px;
	}

	.woocommerce-checkout #order_review .shop_table tbody {
		padding: 0 12px 16px;
	}

	.woocommerce-checkout #order_review .shop_table tbody tr {
		border-radius: 8px;
		padding: 10px;
		background: white;
	}

	.woocommerce-checkout #order_review .shop_table tfoot {
		padding: 0 16px;
	}

	.woocommerce-checkout #billing_postcode_field,
	.woocommerce-checkout #shipping_postcode_field,
	.woocommerce-checkout #billing_house_number_field,
	.woocommerce-checkout #shipping_house_number_field {
		grid-column: 1;
	}

	.woocommerce-checkout #order_review .shop_table tbody td,
	.woocommerce-checkout #order_review .shop_table tfoot th,
	.woocommerce-checkout #order_review .shop_table tfoot td {
		padding: 0;
	}
}

@media (min-width: 701px) {
	.woocommerce-checkout .maris-checkout__main {
		order: 1;
	}

	.woocommerce-checkout .maris-checkout__summary {
		background: #fff;
		order: 2;
		overflow: hidden;
	}

	.woocommerce-checkout .maris-checkout__summary-toggle {
		display: none;
	}

	.woocommerce-checkout .maris-checkout__summary-body {
		border-bottom: 0;
		padding-bottom: 0;
	}

	.woocommerce-checkout .maris-checkout__heading-desktop {
		display: inline;
	}

	.woocommerce-checkout .maris-checkout__heading-mobile {
		display: none;
	}

	.woocommerce-checkout #order_review_heading {
		background: #fff;
		font-size: 24px;
		letter-spacing: 0;
		margin: 0;
		padding: 24px 24px 10px;
		text-transform: none;
	}

	.woocommerce-checkout #order_review {
		background: #fff;
		overflow: hidden;
	}

	.woocommerce-checkout #order_review .shop_table {
		border-collapse: collapse;
	}

	.woocommerce-checkout #order_review .shop_table thead,
	.woocommerce-checkout #order_review .shop_table tbody,
	.woocommerce-checkout #order_review .shop_table tfoot {
		display: block;
		padding: 0;
		width: 100%;
	}

	.woocommerce-checkout #order_review .shop_table tr,
	.woocommerce-checkout #order_review .shop_table tbody tr,
	.woocommerce-checkout #order_review .shop_table tfoot tr {
		border: 0;
		border-bottom: 1px solid var(--color-border);
		border-radius: 0;
		gap: 0;
		grid-template-columns: minmax(0, 1fr) minmax(78px, auto);
		padding: 0;
	}

	.woocommerce-checkout #order_review .shop_table tfoot tr {
		grid-template-columns: minmax(0, 1fr) minmax(150px, auto);
	}

	.woocommerce-checkout #order_review .shop_table th,
	.woocommerce-checkout #order_review .shop_table td,
	.woocommerce-checkout #order_review .shop_table tbody td,
	.woocommerce-checkout #order_review .shop_table tfoot th,
	.woocommerce-checkout #order_review .shop_table tfoot td {
		border-bottom: 0;
		font-size: 16px;
		padding: 14px 16px;
	}

	.woocommerce-checkout #order_review .shop_table tfoot th,
	.woocommerce-checkout #order_review .shop_table tfoot td {
		align-self: stretch;
		display: flex;
		flex-direction: column;
		justify-content: center;
	}

	.woocommerce-checkout #order_review .shop_table tfoot td {
		align-items: flex-end;
	}

	.woocommerce-checkout #order_review tbody .product-total {
		padding-left: 4px;
	}

	.woocommerce-checkout .maris-checkout-product {
		grid-template-columns: 52px minmax(0, 1fr);
	}

	.woocommerce-checkout .maris-checkout-product__image {
		background: var(--color-product-media-bg);
		border: 1px solid rgba(169, 173, 183, 0.42);
		height: 52px;
		overflow: hidden;
		width: 52px;
	}

	.woocommerce-checkout .maris-checkout-product__image img {
		padding: 6px;
	}

	.woocommerce-checkout .maris-checkout-product__name {
		color: var(--color-text);
		font-weight: 600;
	}

	.woocommerce-checkout .maris-checkout-product__quantity {
		display: none;
	}

	.woocommerce-checkout .maris-checkout-product__quantity-text {
		color: var(--color-navy);
		display: block;
		font-size: 13px;
		font-weight: 700;
		line-height: 1.35;
		margin-top: 3px;
	}

	.woocommerce-checkout #order_review .order-total th,
	.woocommerce-checkout #order_review .order-total td {
		background: var(--color-bg-light);
		font-size: 16px;
	}

	.woocommerce-checkout #order_review .includes_tax {
		display: block;
	}
}

@media only screen and (min-width: 1200px) {
	.large-up-8 {
		flex: 0 0 66.67%;
		max-width: 66.67%;
	}

	.large-up-4 {
		flex: 0 0 33.33%;
		max-width: 33.33%;
	}
}

@media only screen and (max-width: 1200px) {
	.sticky-bar-inner {
		margin-right: 50px;
	}
}

@media only screen and (max-width: 849px) {
	.sticky-bar-inner {
		margin-right: 0;
	}

	.product-main .product-gallery {
		padding-right: 15px;
	}
}

@media only screen and (max-width: 736px) {
	.sticky-bar-inner-left {
		display: none;
	}

	.sticky-bar-right {
		flex-grow: 1;
	}

	.product-icon-single {
		flex: 0 0 100%;
		max-width: 100%;
		padding-right: 0;
	}

	.mc-review-rating img,
	.mc-review-rating__icon {
		height: 18px;
		width: 18px;
	}
}

@media only screen and (max-width: 549px) {
	.maris-announcement-bar {
		font-size: 14px;
	}

	.maris-cart-free-shipping {
		padding: 12px;
	}

	.maris-cart-free-shipping__message {
		font-size: 14px;
	}

	.woocommerce div.product .woocommerce-tabs ul.tabs,
	.woocommerce-tabs .tabs {
		align-items: center;
		border-bottom: 0;
		flex-direction: row;
		flex-wrap: nowrap;
		gap: 8px;
		margin: 0 -20px 20px;
		overflow-x: auto;
		overflow-y: hidden;
		padding: 0 20px 5px;
		scroll-padding-left: 20px;
		scrollbar-width: none;
	}

	.woocommerce div.product .woocommerce-tabs ul.tabs::-webkit-scrollbar,
	.woocommerce-tabs .tabs::-webkit-scrollbar {
		display: none;
	}

	.woocommerce div.product .woocommerce-tabs ul.tabs li,
	.woocommerce-tabs .tabs li {
		flex: 0 0 auto;
	}

	.woocommerce div.product .woocommerce-tabs ul.tabs li::after,
	.woocommerce-tabs .tabs li::after {
		display: none;
	}

	.woocommerce div.product .woocommerce-tabs ul.tabs li a,
	.woocommerce-tabs .tabs a {
		align-items: center;
		border: 1px solid var(--color-border);
		border-radius: 999px;
		color: var(--color-navy);
		display: inline-flex;
		font-size: 14px;
		justify-content: center;
		min-height: 40px;
		padding: 0 16px;
		white-space: nowrap;
	}

	.woocommerce div.product .woocommerce-tabs ul.tabs li.active a,
	.woocommerce-tabs .tabs li.active a {
		background: var(--color-navy);
		border-color: var(--color-navy);
		color: #fff;
	}

	.product-main {
		padding-bottom: 0;
	}

	.product-short-description {
		display: none;
	}

	.product-info .cart {
		margin-bottom: 10px;
	}

	.product-info .product_meta {
		margin-bottom: 0;
	}

	.product-main .product-info .price.product-page-price {
		margin-top: 0 !important;
		padding-bottom: 0 !important;
		padding-top: 0;
	}

	.product-gallery .product-thumbnails {
		display: none;
	}

	.product-main .product-info {
		padding-top: 0;
	}

	.single-product-top {
		margin-top: 20px !important;
	}

	.single-template-reviews-section-inner {
		padding-top: 20px;
	}

	.product-footer .woocommerce-tabs {
		padding-bottom: 0;
	}
}

@media only screen and (max-width: 440px) {
	.sticky-bar-right {
		flex: 1 1 auto;
	}

	.sticky-bar-button .custom-quantity-container {
		gap: 8px;
	}

	body.single .sticky-bar-button .single_add_to_cart_button {
		font-size: 14px;
		padding-left: 10px;
		padding-right: 10px;
	}

	.sticky-bar-button .single_add_to_cart_button {
		flex-grow: 1;
	}
}

/* Single product */
body.single-product {
	background: #fff;
	color: var(--dark-color);
}

.single-product .single-product-container,
.single-product .product-main > .container,
.single-product .product-footer > .container,
.single-template-reviews-section .container {
	margin-left: auto;
	margin-right: auto;
	max-width: 1228px;
	padding-left: 30px;
	padding-right: 30px;
}

.single-product-top {
	margin-bottom: 24px;
	margin-top: 46px;
}

.single-product-top .woocommerce-breadcrumb {
	align-items: center;
	color: var(--color-muted);
	display: flex;
	flex-wrap: wrap;
	font-size: 13px;
	font-weight: 600;
	gap: 0 9px;
	line-height: 1.35;
	margin: 0 0 12px;
}

.single-product-top .woocommerce-breadcrumb a {
	color: var(--color-blue);
	font-size: inherit;
	font-weight: 700;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
	transition: color 0.2s ease, text-decoration-color 0.2s ease;
}

.single-product-top .woocommerce-breadcrumb a:hover,
.single-product-top .woocommerce-breadcrumb a:focus-visible {
	color: var(--color-navy);
	text-decoration-color: currentColor;
}

.mc-product-breadcrumb__separator {
	color: rgba(8, 43, 99, 0.28);
	font-weight: 500;
}

.single-product-top .mc-product-breadcrumb__back {
	align-items: center;
	color: var(--color-muted) !important;
	display: inline-flex;
	gap: 4px;
}

.single-product-top .mc-product-breadcrumb__back::before {
	content: none;
}

.title-single-product-page {
	color: var(--dark-color);
	font-size: 27px;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1.16;
	margin: 0 0 12px;
}

.single-product-top .mc-review-container {
	margin-bottom: 0;
}

.single-product .mc-review-rating {
	gap: 3px;
}

.single-product .mc-review-rating img,
.single-product .mc-review-rating__icon {
	display: block;
	height: 24px;
	width: 24px;
}

.single-product .mc-review-text {
	color: var(--dark-color);
	font-size: 15px;
	line-height: 1;
}

.single-product .product-main {
	padding: 0 0 36px;
}

.single-product .product-main .content-row {
	align-items: start;
	display: grid;
	gap: 56px;
	grid-template-columns: minmax(0, 1.55fr) minmax(360px, 1fr);
	margin-left: 0;
	margin-right: 0;
}

.single-product .product-main .product-gallery,
.single-product .product-main .product-info {
	flex: none;
	float: none;
	max-width: none;
	padding-left: 0;
	padding-right: 0;
	width: 100%;
}

.single-product div.product div.images,
.single-product div.product div.summary {
	float: none;
	margin-bottom: 0;
	width: 100%;
}

.single-product .woocommerce-product-gallery {
	display: grid;
	gap: 16px;
	opacity: 1 !important;
	position: relative;
	width: 100% !important;
}

.single-product .woocommerce-product-gallery .flex-viewport {
	background: var(--color-product-media-bg) !important;
}

.single-product .woocommerce-product-gallery .flex-direction-nav,
.single-product .woocommerce-product-gallery .flex-direction-nav a,
.single-product .product-gallery .flickity-prev-next-button,
.single-product .product-gallery .flickity-button,
.single-product .product-gallery .slider-nav-light,
.single-product .product-gallery .slider-nav-reveal,
.single-product .product-gallery .slider-nav-circle,
.single-product .product-gallery .slider-nav-push {
	display: none !important;
}

.single-product .woocommerce-product-gallery__trigger {
	align-items: center;
	background-color: rgba(255, 255, 255, 0.78);
	background-image: url("../img/expand.svg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: 22px 22px;
	border: 2px solid rgba(169, 173, 183, 0.68);
	border-radius: 50%;
	bottom: 16px !important;
	box-shadow: none;
	color: rgba(41, 50, 75, 0.34);
	display: flex;
	font-size: 0;
	height: 40px;
	justify-content: center;
	left: 16px !important;
	position: absolute;
	right: auto !important;
	text-decoration: none;
	top: auto !important;
	width: 40px;
	z-index: 5;
}

.single-product .woocommerce-product-gallery__trigger::before,
.single-product .woocommerce-product-gallery__trigger::after {
	content: none !important;
	display: none !important;
}

.single-product .woocommerce-product-gallery__trigger img,
.single-product .woocommerce-product-gallery__trigger span {
	display: none !important;
}

.single-product .woocommerce-product-gallery__trigger:hover,
.single-product .woocommerce-product-gallery__trigger:focus-visible {
	background-color: #fff;
	background-image: url("../img/expand.svg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: 22px 22px;
	border-color: var(--accent-blue);
	color: var(--accent-blue);
}

.single-product .woocommerce-product-gallery__wrapper {
	background: var(--color-product-media-bg) !important;
	display: block;
	margin: 0;
	min-height: 0;
	overflow: hidden;
}

.single-product .woocommerce-product-gallery__image {
	background: var(--color-product-media-bg) !important;
}

.single-product .woocommerce-product-gallery__image a {
	align-items: center;
	/* aspect-ratio: 3 / 2; */
	display: flex;
	justify-content: center;
	width: 100%;
}

.single-product .woocommerce-product-gallery__image img {
	display: block;
	height: 82%;
	margin: 0 auto;
	max-height: none;
	max-width: none;
	mix-blend-mode: multiply;
	object-fit: contain;
	width: 82%;
}

.single-product .woocommerce-product-gallery .zoomImg {
	display: none !important;
}

.single-product .woocommerce-product-gallery .flex-control-thumbs {
	display: flex;
	gap: 16px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.single-product .woocommerce-product-gallery .flex-control-thumbs li {
	border: 1px solid rgba(169, 173, 183, 0.48);
	cursor: pointer;
	flex: 0 0 160px;
	float: none;
	line-height: 0;
	overflow: hidden;
	width: 160px;
}

.single-product .woocommerce-product-gallery .flex-control-thumbs img {
	background: transparent !important;
	display: block;
	height: 100%;
	mix-blend-mode: multiply;
	object-fit: contain;
	opacity: 1;
	width: 100%;
}

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

.single-product .product-info {
	padding-top: 48px;
}

.single-product .product-info .price-wrapper {
	margin-bottom: 22px;
}

.single-product .product-main p.price.product-page-price {
	margin: 0;
	padding: 0 !important;
}

.single-product .product-page-price,
.single-product .product-page-price bdi {
	color: var(--dark-color) !important;
	font-size: 36px !important;
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.2;
}

.single-product .product-short-description {
	color: var(--dark-color);
	font-size: 17px;
	line-height: 1.45;
	margin-bottom: 18px;
	max-width: 410px;
}

.single-product .stock.in-stock,
.single-product .stock.available-on-backorder {
	align-items: center;
	color: var(--dark-color) !important;
	display: flex;
	font-size: 15px;
	font-weight: 700;
	gap: 8px;
	line-height: 1.35;
	margin: 0 0 18px;
}

.single-product .stock.available-on-backorder::before {
	content: url(../img/maris-green-check.svg);
	display: inline-block;
	height: 20px;
	width: 20px;
}

.single-product .product-info .cart,
.single-product .woocommerce-variation-add-to-cart {
	align-items: stretch;
	display: flex !important;
	flex-wrap: wrap;
	gap: 0 22px;
	margin: 0 0 24px;
}

.single-product .product-info form.variations_form.cart {
	display: block !important;
}

.single-product .variations_form table.variations,
.single-product .variations_form table.variations tbody {
	border: 0;
	display: block;
	margin: 0;
	width: 100%;
	margin-bottom: 20px;
}

.single-product .variations_form table.variations tr {
	align-items: center;
	display: grid;
	gap: 12px 20px;
	grid-template-columns: 40px minmax(0, 1fr);
	margin-bottom: 18px;
	width: 100%;
}

.single-product .variations_form table.variations th,
.single-product .variations_form table.variations td {
	border: 0;
	display: block;
	padding: 0;
	vertical-align: middle;
}

.single-product .variations_form table.variations label {
	color: var(--dark-color);
	font-size: 15px;
	font-weight: 700;
	line-height: 1.3;
	margin: 0;
}

.single-product .variations_form table.variations .value {
	align-items: center;
	display: block;
	position: relative;
	width: 100%;
}

.single-product .variations_form table.variations select {
	appearance: none;
	background: #fff url("../img/chevron-down.svg") right 16px center / 15px 15px no-repeat;
	border: 2px solid rgba(41, 50, 75, 0.42);
	border-radius: 0;
	color: var(--dark-color);
	cursor: pointer;
	display: block;
	font-family: var(--font-primary);
	font-size: 15px;
	font-weight: 600;
	min-height: 50px;
	min-width: 0;
	padding: 0 44px 0 16px;
	width: 100%;
}

.single-product .variations_form table.variations select:focus-visible {
	border-color: rgba(41, 50, 75, 0.64);
	box-shadow: 0 0 0 3px rgba(100, 155, 247, 0.16);
	outline: none;
}

.single-product .variations_form.is-needs-selection table.variations select {
	border-color: var(--accent-blue);
	box-shadow: 0 0 0 4px rgba(100, 155, 247, 0.18);
}

.single-product .mc-variation-prompt {
	background: var(--soft-blue);
	border-left: 4px solid var(--accent-blue);
	color: var(--dark-color);
	display: none;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.4;
	margin: -4px 0 18px;
	padding: 10px 14px;
}

.single-product .mc-variation-prompt.is-visible {
	display: block;
}

.single-product .variations_form .reset_variations {
	align-items: center;
	background: transparent;
	border: 0;
	border-radius: 0;
	color: var(--color-muted);
	display: inline-flex;
	font-size: 13px;
	font-weight: 600;
	justify-content: center;
	line-height: 1;
	min-height: 0;
	padding: 0;
	position: absolute;
	right: 0;
	text-decoration: underline;
	text-underline-offset: 3px;
	top: -24px;
	white-space: nowrap;
}

.single-product .variations_form .reset_variations:hover,
.single-product .variations_form .reset_variations:focus-visible {
	color: var(--color-blue);
	text-decoration: underline;
}

.single-product .single_variation_wrap {
	margin-top: 0;
}

.single-product .single_variation {
	margin-bottom: 16px;
}

.single-product .woocommerce-variation-price {
	margin: 0 0 20px;
}

.single-product .woocommerce-variation-price .product-page-price {
	display: block;
	margin: 0;
	padding: 0 !important;
}

.single-product .product-info .quantity,
.single-product .custom-quantity-container .quantity {
	align-items: stretch;
	background: #fff;
	border: 2px solid rgba(41, 50, 75, 0.42);
	display: grid;
	grid-template-columns: 34px 36px 34px;
	height: 60px;
	margin: 0 !important;
	width: 108px;
}

.single-product .quantity .qty,
.single-product .product-info .input-text,
.single-product .custom-quantity-container .input-text {
	-moz-appearance: textfield;
	appearance: textfield;
	background: #fff;
	border: 0;
	border-radius: 0;
	color: var(--dark-color);
	font-family: var(--font-primary);
	font-size: 18px;
	font-weight: 600;
	height: 100%;
	line-height: 56px;
	min-height: 0;
	outline: 0;
	padding: 0;
	text-align: center;
	width: 100%;
}

.single-product .quantity .qty:focus,
.single-product .product-info .input-text:focus,
.single-product .custom-quantity-container .input-text:focus {
	box-shadow: inset 0 0 0 2px var(--dark-color);
}

.single-product .quantity .qty::-webkit-outer-spin-button,
.single-product .quantity .qty::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

.single-product .mc-qty-button {
	align-items: center;
	background: #fff;
	border: 0;
	color: var(--dark-color);
	cursor: pointer;
	display: flex;
	font-family: var(--font-primary);
	font-size: 22px;
	font-weight: 600;
	height: 100%;
	justify-content: center;
	line-height: 1;
	padding: 0;
}

.woocommerce div.product form.cart::before {
	display: none;
}

.single-product .mc-qty-button:hover {
	background-color: #f1f1f1;
	color: #000 !important;
}

.single-product .mc-qty-button:hover,
.single-product .mc-qty-button:focus-visible {
	color: var(--accent-blue);
}

body.single .product-info .single_add_to_cart_button,
body.single .sticky-bar-button .single_add_to_cart_button {
	background-color: var(--success-green) !important;
	border: 0;
	border-radius: 0;
	color: #fff;
	font-family: var(--font-primary);
	font-size: 16px;
	font-weight: 700;
	gap: 8px;
	min-height: 60px;
	padding: 0 30px;
	white-space: nowrap;
	width: auto;
}

body.single .sticky-bar-button .single_add_to_cart_button {
	flex: 1 1 auto;
	font-size: clamp(13px, 3.6vw, 16px);
	min-width: 0;
	overflow: hidden;
	padding-left: clamp(10px, 2.4vw, 30px);
	padding-right: clamp(10px, 2.4vw, 30px);
	text-overflow: ellipsis;
}

body.single .product-info .single_add_to_cart_button {
	flex: 0 0 236px;
	flex-grow: 1;
}

body.single .product-info .single_add_to_cart_button.disabled,
body.single .product-info .single_add_to_cart_button.wc-variation-is-unavailable,
body.single .product-info .single_add_to_cart_button:disabled,
body.single .product-info .woocommerce-variation-add-to-cart-disabled .single_add_to_cart_button,
body.single .sticky-bar-button .single_add_to_cart_button.is-selection-needed {
	background-color: #9aa6b7 !important;
	color: #fff;
	cursor: not-allowed;
	opacity: 1;
}

.single-product .woocommerce-variation-add-to-cart-disabled .quantity {
	opacity: 0.58;
}

.single-product .maris-usps {
	flex-basis: 100%;
	grid-column: auto;
	margin-top: 14px;
}

.single-product .maris-usps p {
	font-size: 15px;
	line-height: 1.4;
	margin: 0 0 10px;
}

.single-product .product_meta {
	margin-top: 36px;
}

.single-product .product_meta .sku_wrapper {
	font-size: 15px;
}

.single-product .product-footer {
	padding-bottom: 46px;
}

@media only screen and (max-width: 980px) {
	.single-product .product-main .content-row {
		gap: 34px;
		grid-template-columns: 1fr;
	}

	.single-product .product-info {
		padding-top: 0;
	}
}

@media only screen and (max-width: 620px) {
	.single-product .single-product-container,
	.single-product .product-main > .container,
	.single-product .product-footer > .container,
	.single-template-reviews-section .container {
		padding-left: 20px;
		padding-right: 20px;
	}

	.title-single-product-page {
		font-size: 27px;
	}

	.single-product .woocommerce-product-gallery {
		gap: 10px;
	}

	.single-product .woocommerce-product-gallery .flex-viewport,
	.single-product .woocommerce-product-gallery__wrapper {
		background: transparent !important;
	}

	.single-product .woocommerce-product-gallery__image {
		background: transparent !important;
	}

	.single-product .woocommerce-product-gallery__image a {
		overflow: hidden;
	}

	.single-product .woocommerce-product-gallery__image img {
		height: auto;
		max-height: 100%;
		max-width: 100%;
		width: auto;
	}

	.single-product .woocommerce-product-gallery .flex-control-thumbs {
		gap: 10px;
		overflow-x: auto;
		overflow-y: hidden;
		padding-bottom: 4px;
		scrollbar-width: none;
	}

	.single-product .woocommerce-product-gallery .flex-control-thumbs::-webkit-scrollbar {
		display: none;
	}

	.single-product .woocommerce-product-gallery .flex-control-thumbs li {
		flex: 0 0 92px;
		height: 92px;
		width: 92px;
	}

	.single-product .woocommerce-product-gallery .flex-control-thumbs img {
		padding: 8px;
	}

	.single-product .product-info .cart,
	.single-product .woocommerce-variation-add-to-cart {
		gap: 14px;
	}

	.single-product .variations_form table.variations tr {
		gap: 8px;
		grid-template-columns: 1fr;
	}

	.single-product .variations_form .reset_variations {
		width: fit-content;
	}

	body.single .product-info .single_add_to_cart_button {
		flex: 1 1 190px;
	}
}

/* Buttons */
.mc-button {
	align-items: center;
	border: 1px solid transparent;
	border-radius: 6px;
	cursor: pointer;
	display: inline-flex;
	font-size: 15px;
	font-weight: 700;
	gap: 10px;
	justify-content: center;
	line-height: 1.2;
	min-height: 44px;
	padding: 12px 22px;
	text-decoration: none;
	text-transform: none;
	transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.mc-button:hover,
.mc-button:focus-visible {
	text-decoration: none;
}

.mc-button--primary,
.mc-button--product {
	background: var(--color-green);
	color: #fff;
}

.mc-button--primary:hover,
.mc-button--primary:focus-visible,
.mc-button--product:hover,
.mc-button--product:focus-visible {
	background: #07963d;
	color: #fff;
}

.mc-button--outline {
	background: #fff;
	border-color: var(--color-navy);
	color: var(--color-navy);
}

.mc-button--outline:hover,
.mc-button--outline:focus-visible {
	background: var(--color-navy);
	color: #fff;
}

.mc-button__icon {
	background: currentColor;
	display: block;
	height: 18px;
	mask: url("../img/arrow-right.svg") center / contain no-repeat;
	transition: transform 0.2s ease;
	-webkit-mask: url("../img/arrow-right.svg") center / contain no-repeat;
	width: 18px;
}

.mc-button:hover .mc-button__icon,
.mc-button:focus-visible .mc-button__icon {
	transform: translateX(4px);
}

.mc-icon-button {
	align-items: center;
	background: var(--color-navy);
	border: 0;
	border-radius: 6px;
	color: #fff;
	cursor: pointer;
	display: inline-flex;
	font-size: 18px;
	font-weight: 700;
	height: 40px;
	justify-content: center;
	line-height: 1;
	width: 48px;
}

.mc-icon-button:hover,
.mc-icon-button:focus-visible {
	background: var(--color-navy);
}

/* Header */
.site-header {
	background: #fff;
	box-shadow: 0 10px 32px rgba(8, 43, 99, 0.07);
	color: var(--color-navy);
	position: relative;
	z-index: 20;
}

.site-header__bar {
	background: var(--color-navy);
	height: 6px;
	width: 100%;
}

.site-header__main {
	background: #fff;
}

.site-header__main-inner {
	align-items: center;
	display: grid;
	gap: 28px;
	grid-template-columns: minmax(170px, 230px) minmax(280px, 1fr) auto;
	min-height: 76px;
}

.site-header__brand {
	align-items: center;
	display: flex;
	min-width: 0;
}

.site-logo {
	color: var(--color-navy);
	display: grid;
	grid-template-columns: 38px auto;
	grid-template-rows: auto auto;
	text-decoration: none;
	width: fit-content;
}

.site-logo--image {
	display: inline-flex;
}

.site-logo__image {
	display: block;
	height: auto;
	max-height: 54px;
	max-width: 230px;
	width: auto;
}

.site-logo__mark {
	align-self: center;
	background: linear-gradient(135deg, #6fd2ff 0%, #1b78ef 52%, #0c3980 100%);
	border-radius: 50%;
	grid-row: 1 / span 2;
	height: 32px;
	margin-right: 8px;
	position: relative;
	width: 32px;
}

.site-logo__mark::before {
	background: #fff;
	border-radius: 50%;
	content: "";
	inset: 8px 5px 8px 11px;
	position: absolute;
}

.site-logo__mark::after {
	background: #fff;
	border-radius: 0 999px 999px 0;
	content: "";
	height: 12px;
	position: absolute;
	right: -1px;
	top: 10px;
	width: 13px;
}

.site-logo__name {
	align-self: end;
	color: var(--color-blue);
	font-size: 28px;
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1;
}

.site-logo__name strong {
	color: var(--color-navy);
	font-weight: 700;
}

.site-logo__tagline {
	color: var(--color-muted);
	font-size: 11px;
	line-height: 1.1;
	margin-top: 3px;
}

.site-search {
	align-items: center;
	background: var(--color-bg-light);
	border: 1px solid var(--color-border);
	border-radius: 6px;
	display: flex;
	height: 44px;
	max-width: 640px;
	position: relative;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
	width: 100%;
}

.site-search:focus-within {
	border-color: rgba(20, 119, 230, 0.45);
	box-shadow: 0 0 0 3px rgba(20, 119, 230, 0.08);
}

.site-search input[type="search"] {
	background: transparent;
	border: 0;
	color: var(--color-text);
	flex: 1;
	font-size: 14px;
	height: 100%;
	min-width: 0;
	outline: 0;
	padding: 0 16px;
	padding-right: 0;
}

.site-search__button {
	background: transparent;
	border: 0;
	cursor: pointer;
	height: 44px;
	position: relative;
	width: 48px;
}

.site-search__button::before {
	background: var(--color-navy);
	border: 0;
	border-radius: 0;
	content: "";
	height: 22px;
	left: 13px;
	mask: url("../img/search.svg") center / contain no-repeat;
	-webkit-mask: url("../img/search.svg") center / contain no-repeat;
	position: absolute;
	top: 11px;
	width: 22px;
}

.site-search__button::after {
	display: none;
}

.site-search__results {
	background: #fff;
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
	box-shadow: 0 18px 46px rgba(8, 43, 99, 0.16);
	display: none;
	left: 0;
	overflow: hidden;
	position: absolute;
	right: 0;
	top: calc(100% + 10px);
	z-index: 80;
}

.site-search__results--open {
	display: block;
}

.site-search__list {
	display: grid;
	max-height: 430px;
	overflow-y: auto;
}

.site-search__result {
	align-items: center;
	color: var(--color-navy);
	display: grid;
	gap: 14px;
	grid-template-columns: 62px 1fr;
	min-height: 82px;
	padding: 10px 14px;
	text-decoration: none;
	transition: background 0.2s ease;
}

.site-search__result + .site-search__result {
	border-top: 1px solid var(--color-border);
}

.site-search__result:hover,
.site-search__result:focus-visible {
	background: var(--color-bg-light);
}

.site-search__result-media {
	align-items: center;
	aspect-ratio: 1 / 1;
	border-radius: 6px;
	display: flex;
	justify-content: center;
	overflow: hidden;
}

.site-search__result-media img {
	display: block;
	height: 100%;
	mix-blend-mode: multiply;
	object-fit: contain;
	width: 100%;
}

.site-search__result-content {
	display: grid;
	gap: 4px;
	min-width: 0;
}

.site-search__result-title {
	color: var(--color-navy);
	font-size: 14px;
	font-weight: 700;
	line-height: 1.25;
}

.site-search__result-price {
	color: var(--color-navy);
	font-size: 14px;
	font-weight: 700;
}

.site-search__message {
	color: var(--color-muted);
	font-size: 14px;
	line-height: 1.4;
	padding: 16px 18px;
}

.site-search__all {
	align-items: center;
	background: var(--color-bg-light);
	border-top: 1px solid var(--color-border);
	color: var(--color-blue);
	display: flex;
	font-size: 14px;
	font-weight: 700;
	justify-content: center;
	min-height: 46px;
	padding: 10px 16px;
	text-decoration: none;
}

.site-search__all:hover,
.site-search__all:focus-visible {
	color: var(--color-navy);
}

.site-header__actions {
	align-items: center;
	display: flex;
	gap: 22px;
	justify-content: flex-end;
}

.site-header__account,
.site-header__cart {
	align-items: center;
	color: var(--color-navy);
	display: inline-flex;
	font-size: 13px;
	font-weight: 700;
	gap: 8px;
	line-height: 1;
	text-decoration: none;
	transition: color 0.2s ease;
	white-space: nowrap;
}

.site-header__account:hover,
.site-header__account:focus-visible,
.site-header__cart:hover,
.site-header__cart:focus-visible {
	color: var(--color-blue);
}

.site-header__account-icon {
	display: block;
	flex: 0 0 28px;
	height: 28px;
	position: relative;
	width: 28px;
}

.site-header__account-icon::before {
	border: 2px solid currentColor;
	border-radius: 50%;
	content: "";
	height: 14px;
	left: 7px;
	position: absolute;
	top: 2px;
	width: 14px;
}

.site-header__account-icon::after {
	border: 2px solid currentColor;
	border-bottom: 0;
	border-radius: 14px 14px 0 0;
	content: "";
	height: 10px;
	left: 3px;
	position: absolute;
	top: 17px;
	width: 22px;
}

.site-header__cart {
	position: relative;
	margin-bottom: -3px;
}

.site-header__cart-icon {
	background: currentColor;
	display: block;
	height: 28px;
	mask: url("../img/shopping_cart.svg") center / contain no-repeat;
	-webkit-mask: url("../img/shopping_cart.svg") center / contain no-repeat;
	width: 28px;
	z-index: 2;
}

.site-header__cart-count {
	align-items: center;
	background: var(--color-green);
	border-radius: 999px;
	color: #fff;
	display: flex;
	font-size: 11px;
	font-weight: 700;
	height: 18px;
	justify-content: center;
	min-width: 18px;
	padding: 0 5px;
	position: absolute;
	right: -9px;
	top: -9px;
}

.maris-cart-toast {
	align-items: center;
	background: #fff;
	border: 1px solid var(--color-border);
	border-left: 4px solid var(--color-green);
	border-radius: var(--radius);
	box-shadow: 0 18px 46px rgba(8, 43, 99, 0.16);
	color: var(--color-navy);
	display: flex;
	gap: 12px;
	max-width: calc(100vw - 32px);
	min-height: 64px;
	opacity: 0;
	padding: 12px 14px;
	pointer-events: none;
	position: fixed;
	right: 24px;
	text-decoration: none;
	top: 24px;
	transform: translateY(-12px);
	transition: opacity 0.2s ease, transform 0.2s ease;
	width: 360px;
	z-index: 120;
}

.admin-bar .maris-cart-toast {
	top: 56px;
}

.maris-cart-toast.is-visible {
	opacity: 1;
	pointer-events: auto;
	transform: translateY(0);
}

.maris-cart-toast__icon {
	background: var(--color-green);
	display: block;
	flex: 0 0 auto;
	height: 26px;
	mask: url("../img/shopping_cart.svg") center / contain no-repeat;
	-webkit-mask: url("../img/shopping_cart.svg") center / contain no-repeat;
	width: 26px;
}

.maris-cart-toast__content {
	display: grid;
	gap: 4px;
	min-width: 0;
}

.maris-cart-toast__text {
	font-size: 14px;
	font-weight: 700;
	line-height: 1.25;
}

.maris-cart-toast__link {
	color: var(--color-blue);
	font-size: 13px;
	font-weight: 700;
	line-height: 1.2;
	text-decoration: underline;
}

.maris-cart-toast__link:hover,
.maris-cart-toast__link:focus-visible {
	color: var(--color-navy);
}

.site-header__menu-toggle,
.site-header__toggle-input,
.site-header__mobile-account {
	display: none;
}

.site-header__mobile-menu {
	display: none;
}

.site-header__nav-wrap {
	border-top: 1px solid var(--color-border);
}

.site-header__nav-inner {
	align-items: center;
	display: flex;
	gap: 32px;
	justify-content: space-between;
	min-height: 48px;
}

.site-nav__list {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 36px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.site-nav ul {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 36px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.site-nav__list--secondary {
	gap: 28px;
}

.site-nav--secondary ul {
	gap: 28px;
}

.site-nav__link,
.site-nav a {
	color: var(--color-navy);
	font-size: 14px;
	font-weight: 700;
	text-decoration: none;
	transition: color 0.2s ease;
}

.site-nav--secondary .site-nav__link,
.site-nav--secondary a {
	font-size: 13px;
	font-weight: 500;
}

.site-nav__link:hover,
.site-nav__link:focus-visible,
.site-nav a:hover,
.site-nav a:focus-visible {
	color: var(--color-blue);
}

.site-mobile-menu__list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.site-mobile-menu__item {
	border-bottom: 1px solid var(--color-border);
	display: flex;
	min-height: 56px;
}

.site-mobile-menu__link,
.site-mobile-menu__next,
.site-mobile-menu__back {
	color: var(--color-navy);
	font-family: var(--font-primary);
	text-decoration: none;
}

.site-mobile-menu__link {
	align-items: center;
	display: flex;
	flex: 1 1 auto;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.3;
	min-width: 0;
	padding: 15px 20px;
}

.site-mobile-menu__next {
	align-items: center;
	background: var(--color-bg-light);
	border: 0;
	border-left: 1px solid var(--color-border);
	cursor: pointer;
	display: flex;
	flex: 0 0 56px;
	justify-content: center;
	padding: 0;
	width: 56px;
}

.site-mobile-menu__link:hover,
.site-mobile-menu__link:focus-visible,
.site-mobile-menu__next:hover,
.site-mobile-menu__next:focus-visible,
.site-mobile-menu__back:hover,
.site-mobile-menu__back:focus-visible {
	background: var(--color-bg-light);
	color: var(--color-navy);
	outline: 0;
}

.site-mobile-menu__next:hover,
.site-mobile-menu__next:focus-visible {
	background: #edf6fd;
}

.site-mobile-menu__next::before,
.site-mobile-menu__back::after {
	background: currentColor;
	content: "";
	display: block;
	height: 15px;
	mask: url("../img/arrow-right.svg") center / contain no-repeat;
	-webkit-mask: url("../img/arrow-right.svg") center / contain no-repeat;
	width: 15px;
}

.site-mobile-menu__back {
	align-items: center;
	background: #fff;
	border: 0;
	border-bottom: 1px solid var(--color-border);
	cursor: pointer;
	display: grid;
	font-size: 15px;
	font-weight: 700;
	grid-template-columns: 56px minmax(0, 1fr);
	min-height: 58px;
	padding: 0;
	position: relative;
	text-align: left;
	width: 100%;
}

.site-mobile-menu__back::before {
	align-self: stretch;
	background: var(--color-bg-light);
	border-right: 1px solid var(--color-border);
	content: "";
	grid-column: 1;
	grid-row: 1;
	width: 56px;
}

.site-mobile-menu__back::after {
	grid-column: 1;
	grid-row: 1;
	justify-self: center;
	transform: rotate(180deg);
}

.site-mobile-menu__back span {
	grid-column: 2;
	min-width: 0;
	padding: 15px 20px;
}

.site-mobile-menu__back:hover::before,
.site-mobile-menu__back:focus-visible::before {
	background: #edf6fd;
}

.site-mobile-menu__footer {
	background: #fff;
	border-top: 1px solid var(--color-border);
	display: none;
}

.site-mobile-menu__account {
	align-items: center;
	background: var(--soft-blue);
	color: var(--color-navy);
	display: flex;
	font-size: 15px;
	font-weight: 700;
	gap: 14px;
	min-height: 58px;
	padding: 14px 20px;
	text-decoration: none;
}

.site-mobile-menu__account:hover,
.site-mobile-menu__account:focus-visible {
	background: #dff0fb;
	color: var(--color-navy);
	outline: 0;
}

.site-mobile-menu__account-icon {
	flex: 0 0 auto;
}

@media (max-width: 960px) {
	.site-header__main-inner {
		grid-template-columns: 1fr auto;
		min-height: 76px;
	}

	.site-search {
		grid-column: 1 / -1;
		grid-row: 2;
		margin-bottom: 14px;
		max-width: none;
	}

	.site-header__account span:last-child {
		display: none;
	}

	.site-header__menu-toggle {
		align-items: center;
		cursor: pointer;
		display: flex;
		height: 34px;
		justify-content: center;
		width: 34px;
	}

	.site-header__menu-toggle span[aria-hidden="true"],
	.site-header__menu-toggle span[aria-hidden="true"]::before,
	.site-header__menu-toggle span[aria-hidden="true"]::after {
		background: var(--color-navy);
		border-radius: 999px;
		content: "";
		display: block;
		height: 2px;
		width: 24px;
	}

	.site-header__menu-toggle span[aria-hidden="true"] {
		position: relative;
	}

	.site-header__menu-toggle span[aria-hidden="true"]::before,
	.site-header__menu-toggle span[aria-hidden="true"]::after {
		left: 0;
		position: absolute;
	}

	.site-header__menu-toggle span[aria-hidden="true"]::before {
		top: -7px;
	}

	.site-header__menu-toggle span[aria-hidden="true"]::after {
		top: 7px;
	}

	.site-header__nav-wrap {
		display: none;
	}

	.site-header__toggle-input:checked + .site-header__nav-wrap {
		display: block;
	}

	body.site-mobile-menu-open {
		overflow: hidden;
	}

	.site-header__nav-wrap {
		background: #fff;
		box-shadow: 0 18px 34px rgba(8, 43, 99, 0.08);
		height: calc(100vh - 142px);
		height: var(--site-mobile-menu-height, calc(100dvh - 142px));
		overflow: hidden;
	}

	.site-header__mobile-menu {
		display: flex;
		flex-direction: column;
		height: 100%;
		overflow: hidden;
	}

	.site-header__mobile-menu-track {
		display: flex;
		flex: 1 1 auto;
		height: auto;
		min-height: 0;
		transform: translateX(0);
		transition: transform 0.24s ease;
		width: 200%;
	}

	.site-mobile-menu__footer {
		display: block;
		flex: 0 0 auto;
	}

	.site-header__mobile-menu.is-categories-open .site-header__mobile-menu-track {
		transform: translateX(-50%);
	}

	.site-header__mobile-panel {
		background: #fff;
		flex: 0 0 50%;
		min-width: 0;
		overflow-y: auto;
		padding-bottom: 28px;
		width: 50%;
	}

	.site-header__nav-inner {
		align-items: stretch;
		display: grid;
		gap: 18px;
		padding-bottom: 20px;
		padding-top: 18px;
	}

	.site-nav ul,
	.site-nav__list,
	.site-nav__list--secondary {
		align-items: stretch;
		display: grid;
		gap: 14px;
	}

	.site-header__nav-inner--desktop {
		display: none;
	}
}

@media (max-width: 720px) {
	.site-header {
		box-shadow: 0 8px 24px rgba(8, 43, 99, 0.08);
	}

	.site-header__main-inner {
		gap: 14px 12px;
		grid-template-columns: minmax(0, 1fr) auto;
		min-height: 0;
		padding-bottom: 16px;
		padding-top: 18px;
	}

	.site-logo--image {
		max-width: min(205px, calc(100vw - 132px));
	}

	.site-logo__image {
		max-height: 52px;
		max-width: 100%;
	}

	.site-search {
		height: 44px;
		margin-bottom: 0;
		margin-top: 2px;
	}

	.site-search input[type="search"] {
		font-size: 13px;
		padding-left: 14px;
	}

	.site-header__actions {
		gap: 10px;
	}

	.site-header__actions .site-header__account {
		display: none;
	}

	.site-header__cart,
	.site-header__menu-toggle {
		align-items: center;
		background: #fff;
		border: 1px solid transparent;
		border-radius: 8px;
		display: inline-flex;
		height: 38px;
		justify-content: center;
		width: 38px;
	}

	.site-header__cart-icon {
		height: 25px;
		width: 25px;
	}

	.site-header__cart-count {
		right: -4px;
		top: -5px;
	}

	.site-header__menu-toggle span[aria-hidden="true"],
	.site-header__menu-toggle span[aria-hidden="true"]::before,
	.site-header__menu-toggle span[aria-hidden="true"]::after {
		width: 23px;
	}

	.site-header__nav-wrap {
		background: #fff;
		border-top: 1px solid var(--color-border);
		box-shadow: 0 18px 34px rgba(8, 43, 99, 0.08);
		height: calc(100vh - 156px);
		height: var(--site-mobile-menu-height, calc(100dvh - 156px));
	}

	.site-mobile-menu__link {
		padding-left: 18px;
		padding-right: 18px;
	}

	.site-mobile-menu__next {
		flex-basis: 55px;
		width: 55px;
	}

	.site-mobile-menu__back {
		grid-template-columns: 55px minmax(0, 1fr);
	}

	.site-mobile-menu__back::before {
		width: 55px;
	}

	.site-mobile-menu__back span {
		padding-left: 18px;
		padding-right: 18px;
	}

	.site-mobile-menu__account {
		padding-left: 18px;
		padding-right: 18px;
	}

	.site-header__nav-inner--desktop {
		display: none;
	}

	.site-header:has(.site-header__toggle-input:checked) .site-header__menu-toggle span[aria-hidden="true"] {
		background: transparent;
	}

	.site-header:has(.site-header__toggle-input:checked) .site-header__menu-toggle span[aria-hidden="true"]::before {
		top: 0;
		transform: rotate(45deg);
	}

	.site-header:has(.site-header__toggle-input:checked) .site-header__menu-toggle span[aria-hidden="true"]::after {
		top: 0;
		transform: rotate(-45deg);
	}
}

@media (max-width: 560px) {
	.maris-announcement-bar {
		font-size: 13px;
	}

	.maris-announcement-bar__inner {
		padding-bottom: 8px;
		padding-top: 8px;
	}

	.site-logo__name {
		font-size: 23px;
	}

	.site-logo__mark {
		height: 28px;
		width: 28px;
	}

	.site-header__actions {
		gap: 8px;
	}

	.maris-cart-toast {
		gap: 10px;
		left: 16px;
		min-height: 60px;
		right: 16px;
		top: 14px;
		width: auto;
	}

	.admin-bar .maris-cart-toast {
		top: 60px;
	}

	.maris-cart-toast__text {
		font-size: 13px;
	}

	.product-footer {
		padding-bottom: 25px !important;
	}
}

.woocommerce-checkout .site-header {
	box-shadow: 0 8px 24px rgba(8, 43, 99, 0.06);
}

.woocommerce-checkout .maris-announcement-bar {
	display: none;
}

.woocommerce-checkout .site-header__main-inner {
	display: flex;
	justify-content: center;
	min-height: 86px;
	padding-bottom: 16px;
	padding-top: 16px;
}

.woocommerce-checkout .site-header__brand {
	justify-content: center;
	width: 100%;
}

.woocommerce-checkout .site-search,
.woocommerce-checkout .site-header__actions,
.woocommerce-checkout .site-header__nav-wrap {
	display: none !important;
}

/* Hero */
.front-hero {
	background: var(--color-bg-light);
	min-height: 800px;
	overflow: hidden;
	position: relative;
}

.front-hero::before {
	background: linear-gradient(90deg, rgba(255, 255, 255, 0.95) 0%, rgba(255, 255, 255, 0.88) 31%, rgba(255, 255, 255, 0.08) 59%, rgba(255, 255, 255, 0) 100%);
	content: "";
	inset: 0;
	position: absolute;
	z-index: 1;
}

.front-hero__image {
	height: 100%;
	inset: 0;
	object-fit: cover;
	object-position: center right;
	position: absolute;
	transform-origin: right bottom;
	width: 100%;
}

@media (min-width: 901px) and (max-width: 1500px) {
	.front-hero__image {
		object-position: 69% center;
	}
}

.front-hero__inner {
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: 800px;
	position: relative;
	z-index: 2;
}

.front-hero__content {
	max-width: 560px;
	padding-bottom: 42px;
	padding-top: 78px;
}

.front-hero h1 {
	color: var(--color-navy);
	font-size: clamp(40px, 4vw, 66px);
	font-weight: 700;
	letter-spacing: 0;
	line-height: 0.98;
	margin: 0 0 22px;
}

.front-hero p {
	color: var(--color-text);
	font-size: 20px;
	line-height: 1.42;
	margin: 0 0 28px;
	max-width: 520px;
}

.front-hero__usps {
	display: grid;
	gap: 24px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	max-width: 760px;
	padding-bottom: 42px;
}

.mc-usp {
	align-items: center;
	color: var(--color-text);
	display: flex;
	gap: 12px;
	min-width: 0;
}

.mc-usp__icon {
	align-items: center;
	border: 2px solid var(--color-navy);
	border-radius: 8px;
	color: var(--color-navy);
	display: flex;
	flex: 0 0 auto;
	height: 34px;
	justify-content: center;
	width: 34px;
}

.mc-usp__icon-img {
	height: 21px;
	width: 21px;
}

.mc-usp__icon--dot::before {
	background: var(--color-navy);
	border-radius: 50%;
	content: "";
	height: 10px;
	width: 10px;
}

.mc-usp__content {
	display: grid;
	gap: 2px;
	min-width: 0;
}

.mc-usp__content strong,
.mc-usp__content span {
	font-size: 13px;
	line-height: 1.25;
}

.mc-usp__content strong {
	font-weight: 700;
}

@media (max-width: 900px) {
	.front-hero {
		min-height: 620px;
	}

	.front-hero::before {
		background: linear-gradient(90deg, rgba(255, 255, 255, 0.96) 0%, rgba(255, 255, 255, 0.9) 55%, rgba(255, 255, 255, 0.22) 100%);
	}

	.front-hero__image {
		object-position: 64% center;
	}

	.front-hero__inner {
		min-height: 620px;
	}

	.front-hero__content {
		max-width: 500px;
		padding-top: 58px;
	}

	.front-hero__usps {
		grid-template-columns: 1fr;
		max-width: 360px;
	}
}

@media (max-width: 560px) {
	.front-hero {
		min-height: 620px;
		background: #fff;
	}

	.front-hero::before {
		background: linear-gradient(180deg, #fff 0%, #fff 45%, rgba(255, 255, 255, 0.9) 55%, rgba(255, 255, 255, 0.36) 68%, rgba(255, 255, 255, 0.04) 84%, rgba(255, 255, 255, 0) 100%);
	}

	.front-hero__image {
		height: 335px;
		inset: auto 0 0 0;
		object-position: 90% center;
		transform: none;
	}

	.front-hero__inner {
		justify-content: flex-start;
		min-height: 620px;
		padding-bottom: 300px;
		padding-top: 40px;
	}

	.front-hero__content {
		max-width: 340px;
		padding-bottom: 0;
		padding-top: 0;
	}

	.front-hero h1 {
		font-size: clamp(31px, 8.8vw, 34px);
		line-height: 1.02;
		margin-bottom: 14px;
	}

	.front-hero p {
		font-size: 16px;
		line-height: 1.45;
		margin-bottom: 20px;
		max-width: 300px;
	}

	.front-hero .mc-button {
		font-size: 14px;
		min-height: 44px;
		padding: 11px 18px;
	}
}

/* Front page sections and cards */
.front-page {
	background: #fff;
	overflow-x: hidden;
}

.front-section {
	padding: 72px 0 0;
}

.front-products {
	padding-top: 82px;
}

.front-section__header {
	align-items: center;
	display: flex;
	gap: 20px;
	justify-content: space-between;
	margin-bottom: 26px;
}

.front-section__title {
	color: var(--color-navy);
	font-size: 24px;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1.1;
	margin: 0 0 26px;
}

.front-section__header .front-section__title {
	margin-bottom: 0;
}

.front-section__link {
	align-items: center;
	color: var(--color-blue);
	display: inline-flex;
	font-size: 14px;
	font-weight: 700;
	gap: 8px;
	text-decoration: none;
	transition: color 0.2s ease;
	white-space: nowrap;
}

.front-section__link:hover,
.front-section__link:focus-visible {
	color: var(--color-navy);
	text-decoration: underline;
	text-underline-offset: 4px;
}

.front-section__link-icon {
	background: currentColor;
	display: block;
	height: 16px;
	mask: url("../img/arrow-right.svg") center / contain no-repeat;
	transition: transform 0.2s ease;
	-webkit-mask: url("../img/arrow-right.svg") center / contain no-repeat;
	width: 16px;
}

.front-section__link:hover .front-section__link-icon,
.front-section__link:focus-visible .front-section__link-icon {
	transform: translateX(4px);
}

.front-categories__actions {
	align-items: center;
	display: flex;
	gap: 18px;
	margin-left: auto;
}

.front-categories__nav {
	display: flex;
	gap: 8px;
}

.front-categories__nav-button {
	align-items: center;
	background: #fff;
	border: 1px solid var(--color-border);
	border-radius: 50%;
	color: var(--color-navy);
	cursor: pointer;
	display: inline-flex;
	height: 38px;
	justify-content: center;
	padding: 0;
	transition: background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, color 0.2s ease, transform 0.2s ease;
	width: 38px;
}

.front-categories__nav-button::before {
	background: currentColor;
	content: "";
	display: block;
	height: 17px;
	mask: url("../img/arrow-right.svg") center / contain no-repeat;
	-webkit-mask: url("../img/arrow-right.svg") center / contain no-repeat;
	width: 17px;
}

.front-categories__nav-button--prev::before {
	transform: rotate(180deg);
}

.front-categories__nav-button:hover,
.front-categories__nav-button:focus-visible {
	background: var(--color-navy);
	border-color: var(--color-navy);
	box-shadow: 0 8px 18px rgba(8, 43, 99, 0.14);
	color: #fff;
	transform: translateY(-1px);
}

.front-categories__nav-button:disabled {
	box-shadow: none;
	cursor: default;
	opacity: 0.35;
	pointer-events: none;
	transform: none;
}

.front-categories__slider {
	margin-left: -16px;
	margin-right: -16px;
	overflow: hidden;
	padding: 0 16px 20px;
	position: relative;
}

/* .front-categories__slider::after {
	background: linear-gradient(90deg, rgba(255, 255, 255, 0), #fff 78%);
	bottom: 0;
	content: "";
	opacity: 1;
	pointer-events: none;
	position: absolute;
	right: 0;
	top: 0;
	transition: opacity 0.2s ease;
	width: 84px;
	z-index: 2;
} */

.front-categories__slider.is-at-end::after {
	opacity: 0;
}

.front-categories__grid {
	cursor: grab;
	display: grid;
	gap: 24px;
	grid-auto-columns: minmax(260px, calc((100% - 72px) / 4));
	grid-auto-flow: column;
	overflow-x: auto;
	padding: 2px 2px 20px;
	scroll-behavior: smooth;
	scroll-padding-left: 2px;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
}

.front-categories__grid.is-dragging {
	cursor: grabbing;
	scroll-behavior: auto;
	scroll-snap-type: none;
	user-select: none;
}

.front-categories__grid .mc-category-card {
	cursor: grab;
}

.front-categories__grid.is-dragging .mc-category-card {
	cursor: grabbing;
}

.front-categories__grid::-webkit-scrollbar {
	display: none;
}

.mc-category-card {
	align-items: flex-start;
	background: #fff;
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
	box-shadow: 0 10px 26px rgba(8, 43, 99, 0.05);
	color: var(--color-navy);
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	min-height: 190px;
	overflow: hidden;
	padding: 26px;
	position: relative;
	scroll-snap-align: start;
	text-align: left;
	text-decoration: none;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.mc-category-card:hover,
.mc-category-card:focus-visible {
	border-color: rgba(8, 43, 99, 0.18);
	box-shadow: 0 16px 34px rgba(8, 43, 99, 0.09);
	color: var(--color-navy);
	transform: translateY(-2px);
}

.mc-category-card__content {
	display: grid;
	gap: 8px;
	margin-bottom: 32px;
	min-width: 0;
}

.mc-category-card__title {
	color: var(--color-navy);
	font-size: 20px;
	font-weight: 700;
	line-height: 1.25;
}

.mc-category-card__description {
	color: var(--color-text);
	font-size: 14px;
	line-height: 1.45;
}

.mc-category-card__arrow {
	align-items: center;
	background: var(--color-navy);
	border-radius: 50%;
	color: #fff;
	display: flex;
	height: 38px;
	justify-content: center;
	margin-top: auto;
	transition: background 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
	width: 38px;
}

.mc-category-card:hover .mc-category-card__arrow,
.mc-category-card:focus-visible .mc-category-card__arrow {
	background: var(--color-blue);
	box-shadow: 0 8px 18px rgba(20, 119, 230, 0.18);
	transform: translateX(4px);
}

.mc-category-card__arrow::before {
	background: currentColor;
	content: "";
	display: block;
	height: 18px;
	mask: url("../img/arrow-right.svg") center / contain no-repeat;
	-webkit-mask: url("../img/arrow-right.svg") center / contain no-repeat;
	width: 18px;
}

.front-products__grid {
	display: grid;
	gap: 24px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.front-usp-strip {
	padding: 28px 0 0;
}

.front-usp-strip__grid {
	display: grid;
	gap: 18px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.mc-usp--strip {
	background: var(--color-bg-light);
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
	padding: 18px;
}

.front-about {
	padding: 86px 0 96px;
}

.front-about__inner {
	align-items: stretch;
	background: linear-gradient(90deg, #eef7ff 0%, #f7fbff 100%);
	border-radius: var(--radius);
	display: grid;
	grid-template-columns: minmax(0, 0.42fr) minmax(0, 0.58fr);
	overflow: hidden;
}

.front-about__inner--no-image {
	grid-template-columns: 1fr;
}

.front-about__media {
	min-height: 210px;
}

.front-about__image {
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.front-about__content {
	align-self: center;
	padding: 36px 56px;
}

.front-about__content h2 {
	color: var(--color-navy);
	font-size: 24px;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1.2;
	margin: 0 0 12px;
}

.front-about__content p {
	color: var(--color-text);
	font-size: 15px;
	line-height: 1.55;
	margin: 0 0 22px;
	max-width: 560px;
}

@media (max-width: 1024px) {
	.front-products__grid,
	.front-usp-strip__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.front-categories__grid {
		grid-auto-columns: minmax(260px, calc((100% - 24px) / 2));
	}
}

@media (max-width: 720px) {
	.front-section,
	.front-products {
		padding-top: 54px;
	}

	.front-about {
		padding: 64px 0 68px;
	}

	.front-section__header {
		align-items: flex-start;
		flex-direction: column;
	}

	.front-categories__actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 12px;
		margin-left: 0;
	}

	.front-categories__slider {
		margin-left: -16px;
		margin-right: -16px;
		padding-bottom: 0;
		padding-left: 0;
		padding-right: 0;
	}

	.front-categories__grid {
		padding: 2px 16px 0;
		scroll-padding-left: 16px;
	}

	.front-about__inner {
		grid-template-columns: 1fr;
	}

	.front-about__content {
		padding: 28px;
	}
}

@media (max-width: 560px) {
	.front-products__grid,
	.front-usp-strip__grid {
		grid-template-columns: 1fr;
		padding-right: 16px;
	}

	.front-categories__grid {
		grid-auto-columns: minmax(82%, 1fr);
	}

	.mc-category-card {
		min-height: 190px;
	}
}

/* About page */
.about-page {
	background: #fff;
	color: var(--color-text);
	overflow-x: hidden;
}

.about-hero {
	background: var(--color-bg-light);
	min-height: 660px;
	overflow: hidden;
	position: relative;
}

.about-hero::before {
	background: linear-gradient(90deg, rgba(255, 255, 255, 0.96) 0%, rgba(255, 255, 255, 0.9) 34%, rgba(255, 255, 255, 0.28) 66%, rgba(255, 255, 255, 0) 100%);
	content: "";
	inset: 0;
	position: absolute;
	z-index: 1;
}

.about-hero__image {
	height: 100%;
	inset: 0;
	object-fit: cover;
	object-position: center right;
	position: absolute;
	width: 100%;
}

.about-hero__inner {
	align-items: center;
	display: flex;
	min-height: 660px;
	position: relative;
	z-index: 2;
}

.about-hero__content {
	max-width: 620px;
	padding: 92px 0 84px;
}

.about-hero h1,
.about-section__header h2,
.about-copy h1,
.about-copy h2,
.about-mission h2,
.about-final h2 {
	color: var(--color-navy);
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1.08;
	margin: 0;
}

.about-hero h1 {
	font-size: 56px;
	margin-bottom: 22px;
	max-width: 680px;
}

.about-hero p {
	color: var(--color-text);
	font-size: 19px;
	line-height: 1.5;
	margin: 0 0 28px;
	max-width: 560px;
}

.about-hero__actions {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

.about-section {
	padding: 86px 0;
}

.about-intro {
	padding-bottom: 66px;
}

.about-split {
	align-items: center;
	display: grid;
	gap: 58px;
	grid-template-columns: minmax(0, 0.9fr) minmax(320px, 0.7fr);
}

.about-split--reverse {
	grid-template-columns: minmax(320px, 0.76fr) minmax(0, 0.84fr);
}

.about-split--reverse .about-copy {
	order: 2;
}

.about-split--reverse .about-media {
	order: 1;
}

.about-split--no-media {
	grid-template-columns: minmax(0, 820px);
}

.about-split--no-media .about-copy {
	order: 0;
}

.about-copy {
	min-width: 0;
}

.about-copy h1,
.about-copy h2,
.about-section__header h2,
.about-mission h2,
.about-final h2 {
	font-size: 38px;
}

.about-copy h1,
.about-copy h2 {
	margin-bottom: 18px;
	max-width: 720px;
}

.about-copy p,
.about-final p,
.about-mission p {
	font-size: 16px;
	line-height: 1.7;
	margin: 0 0 16px;
}

.about-copy p.about-copy__lead {
	color: var(--color-navy);
	font-size: 18px;
	font-weight: 700;
	line-height: 1.55;
}

.about-media {
	border-radius: var(--radius);
	box-shadow: 0 18px 46px rgba(8, 43, 99, 0.12);
	margin: 0;
	overflow: hidden;
}

.about-media img {
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.about-values {
	background: var(--color-bg-light);
}

.about-section__header {
	margin-bottom: 30px;
	max-width: 760px;
}

.about-values__grid {
	display: grid;
	gap: 22px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.about-value-card {
	background: #fff;
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
	box-shadow: 0 14px 34px rgba(8, 43, 99, 0.07);
	padding: 28px;
}

.about-value-card__mark {
	color: var(--color-green);
	display: block;
	font-size: 13px;
	font-weight: 700;
	line-height: 1;
	margin-bottom: 18px;
}

.about-value-card h3 {
	color: var(--color-navy);
	font-size: 21px;
	font-weight: 700;
	line-height: 1.2;
	margin: 0 0 10px;
}

.about-value-card p {
	color: var(--color-text);
	font-size: 15px;
	line-height: 1.6;
	margin: 0;
}

.about-mission {
	background: #29324b;
	color: #fff;
	padding: 82px 0;
}

.about-mission h2 {
	color: #fff;
}

.about-mission__inner {
	align-items: center;
	display: grid;
	gap: 54px;
	grid-template-columns: minmax(320px, 0.72fr) minmax(0, 1fr);
	grid-template-areas: "media content";
}

.about-mission__content {
	grid-area: content;
	max-width: 760px;
}

.about-mission__content h2 {
	margin-bottom: 22px;
}

.about-mission__media {
	grid-area: media;
	min-height: 390px;
}

.about-mission p {
	color: rgba(255, 255, 255, 0.86);
}

.about-mission p.about-mission__quote {
	color: #fff;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.45;
	margin-bottom: 20px;
}

.gform_required_legend {
	display: none;
}

.about-sustainability {
	padding-bottom: 92px;
}

.about-check-list {
	display: grid;
	gap: 12px;
	list-style: none;
	margin: 24px 0 0;
	padding: 0;
}

.about-check-list li {
	align-items: flex-start;
	color: var(--color-navy);
	display: flex;
	font-size: 15px;
	font-weight: 700;
	gap: 10px;
	line-height: 1.45;
}

.about-check-list li::before {
	background: var(--color-green);
	border-radius: 50%;
	content: "";
	flex: 0 0 auto;
	height: 9px;
	margin-top: 6px;
	width: 9px;
}

.about-final {
	background: linear-gradient(90deg, #eef7ff 0%, #f7fbff 100%);
	padding: 74px 0 82px;
}

.about-final__inner {
	align-items: start;
	display: grid;
	gap: 46px;
	grid-template-columns: minmax(280px, 0.62fr) minmax(0, 1fr);
}

.about-final__content {
	max-width: 760px;
}

.about-final .mc-button {
	margin-top: 8px;
}

@media (max-width: 1024px) {
	.about-hero {
		min-height: 600px;
	}

	.about-hero__inner {
		min-height: 600px;
	}

	.about-hero h1 {
		font-size: 46px;
	}

	.about-split,
	.about-split--reverse,
	.about-final__inner,
	.about-mission__inner {
		grid-template-columns: 1fr;
	}

	.about-mission__content,
	.about-mission__media {
		grid-area: auto;
	}

	.about-split--reverse .about-copy,
	.about-split--reverse .about-media {
		order: 0;
	}

	.about-media,
	.about-media--portrait {
		min-height: 360px;
	}

	.about-values__grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 700px) {
	.about-hero {
		min-height: 650px;
	}

	.about-hero::before {
		background: linear-gradient(180deg, #fff 0%, rgba(255, 255, 255, 0.96) 46%, rgba(255, 255, 255, 0.52) 69%, rgba(255, 255, 255, 0.04) 100%);
	}

	.about-hero__image {
		height: 300px;
		inset: auto 0 0 0;
		object-position: center;
	}

	.about-hero__inner {
		align-items: flex-start;
		min-height: 650px;
		padding-bottom: 290px;
		padding-top: 42px;
	}

	.about-hero__content {
		padding: 0;
	}

	.about-hero h1 {
		font-size: 36px;
		line-height: 1.08;
	}

	.about-hero p {
		font-size: 16px;
	}

	.about-section {
		padding: 58px 0;
	}

	.about-copy h1,
	.about-copy h2,
	.about-section__header h2,
	.about-mission h2,
	.about-final h2 {
		font-size: 30px;
	}

	.about-split {
		gap: 30px;
	}

	.about-media,
	.about-media--portrait {
		min-height: 280px;
	}

	.about-value-card {
		padding: 24px;
	}

	.about-mission,
	.about-final {
		padding: 58px 0;
	}

	.about-mission__inner,
	.about-final__inner {
		gap: 26px;
	}

	.about-mission p.about-mission__quote {
		font-size: 19px;
	}
}

/* Product cards */
.mc-product-card {
	background: #fff;
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
	display: flex;
	flex-direction: column;
	min-height: 100%;
	overflow: hidden;
}

.mc-product-card__media {
	align-items: center;
	background: var(--color-product-media-bg);
	display: flex;
	height: 210px;
	isolation: isolate;
	justify-content: center;
	text-decoration: none;
}

.mc-product-card__media img,
.mc-product-card__image {
	height: 100%;
	max-width: 100%;
	object-fit: contain;
	width: auto;
}

.mc-product-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 18px 18px 0;
}

.mc-product-card__title {
	font-size: 16px;
	font-weight: 700;
	line-height: 1.25;
	margin: 0 0 14px;
}

.mc-product-card__title a {
	color: var(--color-navy);
	text-decoration: none;
}

.mc-product-card__details {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 14px;
	list-style: none;
	margin: 0 0 18px;
	padding: 0;
}

.mc-product-card__details li {
	align-items: center;
	color: var(--color-muted);
	display: inline-flex;
	font-size: 12px;
	gap: 5px;
	line-height: 1.2;
}

.mc-product-card__details strong {
	color: var(--color-text);
	font-weight: 500;
}

.mc-product-card__price {
	color: var(--color-navy);
	font-size: 18px;
	font-weight: 700;
	line-height: 1.2;
	margin-top: auto;
}

.mc-product-card__price .amount {
	color: inherit;
	font-weight: inherit;
}

.mc-product-card__price .woocommerce-price-suffix {
	display: none;
}

.mc-product-card__footer {
	padding: 14px 18px 18px;
}

.mc-product-card__footer .mc-button {
	min-height: 42px;
	width: 100%;
}

.mc-product-card__footer .mc-button--product {
	align-items: center;
	display: inline-flex;
	gap: 9px;
	justify-content: center;
	position: relative;
	transition: background 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

.mc-product-card__footer .mc-button--product::before {
	background: currentColor;
	content: "";
	display: inline-block;
	height: 18px;
	mask: url("../img/shopping_cart.svg") center / contain no-repeat;
	-webkit-mask: url("../img/shopping_cart.svg") center / contain no-repeat;
	width: 18px;
}

.mc-product-card__footer .mc-button--product:hover,
.mc-product-card__footer .mc-button--product:focus-visible {
	box-shadow: 0 8px 18px rgba(0, 173, 66, 0.18);
	transform: translateY(-1px);
}

.mc-product-card__footer .mc-button--product.loading {
	cursor: wait;
	opacity: 0.9;
	pointer-events: none;
}

.mc-product-card__footer .mc-button--product.loading::before {
	animation: maris-cart-spin 0.75s linear infinite;
	background: transparent;
	border: 2px solid rgba(255, 255, 255, 0.45);
	border-radius: 50%;
	border-top-color: #fff;
	mask: none;
	-webkit-mask: none;
}

.mc-product-card__footer .mc-button--product.added,
.mc-product-card__footer .mc-button--product.is-added-feedback {
	background: var(--color-navy);
}

.mc-product-card__footer .mc-button--product.added::before,
.mc-product-card__footer .mc-button--product.is-added-feedback::before {
	background: #fff;
	height: 16px;
	mask: url("../img/maris-green-check-2.svg") center / contain no-repeat;
	-webkit-mask: url("../img/maris-green-check-2.svg") center / contain no-repeat;
	width: 16px;
}

.mc-product-card__footer .added_to_cart.wc-forward {
	display: none !important;
}

/* Shop */
.mc-shop {
	background: #fff;
	color: var(--color-navy);
	padding: 34px 0 86px;
}

.mc-shop__breadcrumb {
	align-items: center;
	color: var(--color-muted);
	display: flex;
	flex-wrap: wrap;
	font-size: 14px;
	gap: 9px;
	margin-bottom: 18px;
}

.mc-shop__breadcrumb a {
	color: var(--color-blue);
	text-decoration: none;
}

.mc-shop__heading {
	align-items: flex-end;
	display: flex;
	gap: 32px;
	justify-content: space-between;
	margin-bottom: 26px;
}

.mc-shop__title {
	color: var(--color-navy);
	font-size: clamp(38px, 4vw, 56px);
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1;
	margin: 0 0 10px;
}

.mc-shop__description {
	color: var(--color-muted);
	font-size: 17px;
	line-height: 1.45;
	margin: 0;
}

.mc-shop__ordering {
	align-items: center;
	color: var(--color-muted);
	display: inline-flex;
	flex: 0 0 auto;
	font-size: 14px;
	font-weight: 600;
	gap: 12px;
}

.mc-shop__ordering .woocommerce-ordering {
	margin: 0;
}

.mc-shop__ordering select {
	appearance: none;
	background: #fff url("../img/chevron-down.svg") right 16px center / 15px 15px no-repeat;
	border: 1px solid var(--color-border);
	border-radius: 8px;
	color: var(--color-navy);
	font-family: var(--font-primary);
	font-size: 14px;
	font-weight: 700;
	min-height: 48px;
	min-width: 150px;
	padding: 0 44px 0 18px;
}

.mc-shop__ordering .woocommerce-ordering.is-enhanced select.orderby {
	display: none;
}

.mc-shop-sort {
	min-width: 212px;
	position: relative;
}

.mc-shop-sort__trigger {
	align-items: center;
	background: #fff;
	border: 1px solid var(--color-border);
	border-radius: 8px;
	color: var(--color-navy);
	cursor: pointer;
	display: flex;
	font-family: var(--font-primary);
	font-size: 14px;
	font-weight: 700;
	justify-content: space-between;
	min-height: 48px;
	padding: 0 16px 0 18px;
	text-align: left;
	width: 100%;
}

.mc-shop-sort__trigger > span {
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.mc-shop-sort__trigger::after {
	background: url("../img/chevron-down.svg") center / contain no-repeat;
	content: "";
	flex: 0 0 15px;
	height: 15px;
	margin-left: 12px;
	transition: transform 0.2s ease;
}

.mc-shop-sort.is-open .mc-shop-sort__trigger::after {
	transform: rotate(180deg);
}

.mc-shop-sort__trigger:hover,
.mc-shop-sort.is-open .mc-shop-sort__trigger {
	border-color: var(--color-blue);
}

.mc-shop-sort__trigger:focus-visible {
	border-color: var(--color-blue);
	outline: 2px solid var(--color-blue);
	outline-offset: 2px;
}

.mc-shop-sort__menu {
	background: #fff;
	border: 1px solid var(--color-border);
	border-radius: 8px;
	box-shadow: 0 12px 28px rgba(8, 43, 99, 0.14);
	left: 0;
	padding: 6px;
	position: absolute;
	right: 0;
	top: calc(100% + 6px);
	z-index: 10;
}

.mc-shop-sort__menu[hidden] {
	display: none;
}

.mc-shop-sort__option {
	background: transparent;
	border: 0;
	border-radius: 4px;
	color: var(--color-navy);
	cursor: pointer;
	display: block;
	font-family: var(--font-primary);
	font-size: 14px;
	font-weight: 600;
	line-height: 1.35;
	min-height: 38px;
	padding: 9px 12px;
	text-align: left;
	width: 100%;
}

.mc-shop-sort__option:hover,
.mc-shop-sort__option:focus-visible {
	background: var(--soft-blue);
	color: var(--color-navy);
	outline: none;
}

.mc-shop-sort__option[aria-selected="true"] {
	background: var(--color-navy);
	color: #fff;
}

.mc-shop-sort__option[aria-selected="true"]:hover,
.mc-shop-sort__option[aria-selected="true"]:focus-visible {
	background: var(--color-blue);
	color: #fff;
}

.mc-shop__tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	margin: 0 0 32px;
}

.mc-shop__tab {
	align-items: center;
	background: #fff;
	border: 1px solid var(--color-border);
	border-radius: 999px;
	color: var(--color-navy);
	display: inline-flex;
	font-size: 14px;
	font-weight: 700;
	gap: 5px;
	justify-content: center;
	min-height: 48px;
	min-width: 180px;
	padding: 0 24px;
	text-decoration: none;
	transition: background-color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    padding-top: 0;
	font-size: 14px;
}

.mc-shop__tab:not(.mc-shop__tab--active):hover,
.mc-shop__tab:not(.mc-shop__tab--active):focus-visible {
	background: var(--color-navy);
	border-color: var(--color-navy);
	box-shadow: 0 10px 22px rgba(8, 43, 99, 0.18);
	color: #fff;
}

.mc-shop__tab--active {
	background: var(--color-navy);
	border-color: var(--color-navy);
	box-shadow: 0 10px 22px rgba(8, 43, 99, 0.18);
	color: #fff;
}

.mc-shop__tab--active:hover,
.mc-shop__tab--active:focus-visible {
	background: var(--color-navy);
	border-color: var(--color-navy);
	box-shadow: 0 14px 26px rgba(8, 43, 99, 0.23);
	color: #fff;
	transform: translateY(-2px);
}

.mc-shop__tab:focus-visible {
	outline: 2px solid var(--color-navy);
	outline-offset: 3px;
}

.mc-shop__results {
	transition: opacity 0.2s ease;
}

.mc-shop.is-loading .mc-shop__results {
	opacity: 0.45;
	pointer-events: none;
}

.mc-shop__grid {
	display: grid;
	gap: 18px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

body.post-type-archive-product,
body.tax-product_cat,
body.tax-product_tag {
	background: #fff;
}

body.post-type-archive-product #primary.content-area,
body.tax-product_cat #primary.content-area,
body.tax-product_tag #primary.content-area {
	margin: 0 auto;
	max-width: var(--container-width);
	padding: 34px 32px 86px;
	width: 100%;
}

body.post-type-archive-product #main.site-main,
body.tax-product_cat #main.site-main,
body.tax-product_tag #main.site-main {
	margin: 0;
	width: 100%;
}

.mc-shop__archive-header {
	margin-bottom: 32px;
}

body.post-type-archive-product ul.products,
body.tax-product_cat ul.products,
body.tax-product_tag ul.products {
	display: grid !important;
	gap: 18px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	list-style: none;
	margin: 0;
	padding: 0;
}

body.post-type-archive-product ul.products::before,
body.post-type-archive-product ul.products::after,
body.tax-product_cat ul.products::before,
body.tax-product_cat ul.products::after,
body.tax-product_tag ul.products::before,
body.tax-product_tag ul.products::after {
	display: none;
}

body.post-type-archive-product ul.products li.product,
body.tax-product_cat ul.products li.product,
body.tax-product_tag ul.products li.product {
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
	width: auto !important;
}

.mc-product-card-wrap .mc-product-card {
	height: 100%;
}

.mc-shop__grid .mc-product-card__media {
	height: 230px;
}

.mc-shop__empty {
	background: var(--color-bg-light);
	border: 1px solid var(--color-border);
	border-radius: var(--radius);
	padding: 34px;
}

.mc-shop__empty p {
	color: var(--color-text);
	font-size: 16px;
	line-height: 1.55;
	margin: 0;
}

.mc-search__empty .mc-button {
	margin-top: 18px;
}

.woocommerce-pagination {
	clear: both;
	margin-top: 44px;
	text-align: center;
}

.woocommerce nav.woocommerce-pagination {
	clear: both;
	margin-top: 44px;
	text-align: center;
}

.woocommerce-pagination ul,
.woocommerce nav.woocommerce-pagination ul,
.woocommerce nav.woocommerce-pagination ul.page-numbers {
	border: 0;
	display: inline-flex;
	gap: 8px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.woocommerce nav.woocommerce-pagination ul li {
	border: 0;
	float: none;
	margin: 0;
	overflow: visible;
	padding: 0;
}

.woocommerce-pagination a,
.woocommerce-pagination span,
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
	align-items: center;
	border: 1px solid var(--color-border);
	border-radius: 8px;
	color: var(--color-navy);
	display: inline-flex;
	font-size: 14px;
	font-weight: 700;
	height: 42px;
	justify-content: center;
	line-height: 1;
	margin: 0;
	min-width: 42px;
	padding: 0 12px;
	text-decoration: none;
	transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.woocommerce-pagination a:hover,
.woocommerce-pagination a:focus-visible,
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li a:focus-visible {
	background: var(--color-bg-light);
	border-color: var(--color-navy);
	color: var(--color-navy);
}

.woocommerce-pagination .current,
.woocommerce nav.woocommerce-pagination ul li span.current {
	background: var(--color-navy);
	border-color: var(--color-navy);
	color: #fff;
}

@media (max-width: 1100px) {
	.mc-shop__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	body.post-type-archive-product ul.products,
	body.tax-product_cat ul.products,
	body.tax-product_tag ul.products {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 900px) {
	.mc-shop__heading {
		align-items: flex-start;
		flex-direction: column;
	}

	.mc-shop__ordering {
		width: 100%;
	}

	.mc-shop__ordering .woocommerce-ordering,
	.mc-shop__ordering select,
	.mc-shop-sort {
		width: 100%;
	}

	.mc-shop__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	body.post-type-archive-product ul.products,
	body.tax-product_cat ul.products,
	body.tax-product_tag ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 560px) {

	.mc-shop__heading {
		gap: 16px;
		margin-bottom: 18px;
	}

	.mc-shop__description {
		font-size: 16px;
	}

	.mc-shop {
		padding-bottom: 58px;
	}

	.mc-shop__title {
		font-size: 38px;
	}

	.mc-shop__ordering {
		gap: 10px;
	}

	.mc-shop__ordering > span {
		flex: 0 0 auto;
		font-size: 13px;
		line-height: 1.15;
	}

	.mc-shop__ordering .woocommerce-ordering {
		flex: 1 1 auto;
		min-width: 0;
	}

	.mc-shop__ordering select {
		min-height: 44px;
		min-width: 0;
		padding: 0 40px 0 14px;
	}

	.mc-shop-sort {
		min-width: 0;
	}

	.mc-shop-sort__trigger {
		min-height: 44px;
		padding-left: 14px;
	}

	.mc-shop__tabs {
		flex-wrap: nowrap;
		gap: 8px;
		margin: 0 -18px 20px;
		overflow-x: auto;
		overscroll-behavior-x: contain;
		padding: 0 18px 5px;
		scroll-padding-left: 18px;
		scrollbar-width: none;
	}

	.mc-shop__tabs::-webkit-scrollbar {
		display: none;
	}

	.mc-shop__tab {
		flex: 0 0 auto;
		min-height: 40px;
		min-width: 0;
		padding: 0 16px;
		white-space: nowrap;
		width: auto;
	}

	.mc-shop__tab--active {
		box-shadow: none;
	}

	.mc-shop__grid {
		grid-template-columns: 1fr;
	}

	body.post-type-archive-product #primary.content-area,
	body.tax-product_cat #primary.content-area,
	body.tax-product_tag #primary.content-area {
		padding: 28px 18px 58px;
	}

	body.post-type-archive-product ul.products,
	body.tax-product_cat ul.products,
	body.tax-product_tag ul.products {
		grid-template-columns: 1fr;
	}
}

/* Footer */
.site-footer {
	background: var(--dark-color);
	color: rgba(255, 255, 255, 0.82);
}

.site-footer__top {
	background: var(--dark-color);
	border-top: 1px solid rgba(255, 255, 255, 0.08);
	padding: 58px 0 54px;
}

.site-footer__contact-grid {
	align-items: start;
	display: grid;
	gap: 56px;
	grid-template-columns: minmax(220px, 0.8fr) minmax(360px, 1fr) minmax(260px, 0.9fr);
}

.site-footer .site-logo {
	color: #fff;
}

.site-footer .site-logo__mark::before,
.site-footer .site-logo__mark::after {
	background: var(--dark-color);
}

.site-footer .site-logo__name,
.site-footer .site-logo__name strong {
	color: #fff;
}

.site-footer .site-logo__tagline {
	color: rgba(255, 255, 255, 0.7);
}

.site-footer__brand-large {
	justify-self: end;
	padding-top: 2px;
}

.site-footer__brand-large .site-logo {
	grid-template-columns: 64px auto;
}

.site-footer__brand-large .site-logo--image {
	background: #fff;
	border-radius: 6px;
	padding: 10px 14px;
}

.site-footer__brand-large .site-logo--footer-image {
	background: transparent;
	border-radius: 0;
	padding: 0;
}

.site-footer__brand-large .site-logo__image {
	max-height: 78px;
	max-width: 320px;
}

.site-footer__brand-large .site-logo__mark {
	height: 54px;
	margin-right: 12px;
	width: 54px;
}

.site-footer__brand-large .site-logo__mark::before {
	inset: 14px 8px 14px 20px;
}

.site-footer__brand-large .site-logo__mark::after {
	height: 20px;
	right: -2px;
	top: 17px;
	width: 22px;
}

.site-footer__brand-large .site-logo__name {
	font-size: 52px;
}

.site-footer__brand-large .site-logo__tagline {
	font-size: 15px;
	margin-top: 6px;
}

.site-footer__contact-block h2 {
	color: #fff;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.2;
	margin: 0 0 30px;
	position: relative;
}

.site-footer__contact-block h2::after {
	background: rgba(255, 255, 255, 0.28);
	bottom: -16px;
	content: "";
	height: 3px;
	left: 0;
	position: absolute;
	width: 44px;
}

.site-footer__address,
.site-footer__hours,
.site-footer__contact-details {
	display: grid;
	font-size: 17px;
	font-style: normal;
	gap: 5px;
	line-height: 1.55;
	margin: 0;
}

.site-footer .site-footer__menu,
.site-footer .site-footer__legal-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.site-footer__contact-details {
	margin-top: 26px;
}

.site-footer__contact-details a,
.site-footer__legal-list a,
.site-footer__bottom a {
	color: rgba(255, 255, 255, 0.86);
	text-decoration: none;
	transition: color 0.2s ease;
}

.site-footer__contact-details a:hover,
.site-footer__contact-details a:focus-visible,
.site-footer__legal-list a:hover,
.site-footer__legal-list a:focus-visible,
.site-footer__bottom a:hover {
	color: #fff;
}

.site-footer__bottom {
	background: #11192d;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	color: rgba(255, 255, 255, 0.66);
	font-size: 15px;
	padding: 26px 0;
}

.site-footer__bottom-inner {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 18px 28px;
	justify-content: space-between;
}

.site-footer__bottom-left {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.site-footer__copyright {
	margin: 0;
}

.site-footer__bottom a {
	color: rgba(255, 255, 255, 0.86);
	font-size: 15px;
}

.site-footer .site-footer__legal-list {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.site-footer__legal {
	align-items: center;
	display: flex;
}

.site-footer__legal::before {
	color: rgba(255, 255, 255, 0.48);
	content: "|";
	margin-right: 8px;
}

.site-footer .site-footer__legal-list li {
	align-items: center;
	display: inline-flex;
	gap: 8px;
}

.site-footer .site-footer__legal-list li + li::before {
	color: rgba(255, 255, 255, 0.48);
	content: "|";
}

@media (max-width: 980px) {
	.site-footer__contact-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.site-footer__brand-large {
		grid-column: 1 / -1;
		justify-self: start;
	}
}

@media (max-width: 620px) {
	.site-footer__contact-grid {
		gap: 36px;
		grid-template-columns: 1fr;
	}

	.site-footer__brand-large .site-logo__name {
		font-size: 38px;
	}

	.site-footer__bottom-inner {
		align-items: flex-start;
		flex-direction: column;
	}

	.site-footer__bottom-left,
	.site-footer__legal {
		align-items: flex-start;
		flex-direction: column;
	}

	.site-footer__legal::before,
	.site-footer .site-footer__legal-list li + li::before {
		display: none;
	}

	.site-footer .site-footer__legal-list {
		display: grid;
	}
}
