/* Maymosilk storefront, matched to maymosilk.com */

body.bm-site {
	--mm-ink: #1c1917;
	--mm-silk: #ba915d;
	--mm-muted: #57534e;
	--mm-gold: #88660a;
	--mm-blue: #7ab6d9;
	--mm-paper: #faf7f2;
	--mm-line: #e7e5e4;
	background: #fff;
	color: var(--mm-ink);
	font-family: "Product Sans Regular", system-ui, sans-serif;
	font-weight: 400;
}

body.bm-site .wp-site-blocks,
body.bm-site .wp-block-group {
	padding-top: 0;
}

.mm-header {
	position: sticky;
	top: 0;
	z-index: 50;
	background: #fff;
	border-bottom: 1px solid var(--mm-line);
}

.mm-header__bar {
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	gap: 1rem;
	width: min(1120px, calc(100% - 2rem));
	min-height: 84px;
	margin: 0 auto;
	padding: .4rem 0;
}

.mm-header__start,
.mm-nav,
.mm-header__tools {
	display: flex;
	align-items: center;
	gap: 1.15rem;
	font-size: .95rem;
}

.mm-header__tools { justify-content: flex-end; }

.mm-nav a,
.mm-header__tools a {
	color: var(--mm-ink);
	text-decoration: none;
}

.mm-nav a:hover,
.mm-header__tools a:hover { opacity: .65; }

.mm-nav__mobile { display: none; }

.mm-logo img {
	width: 168px;
	height: auto;
}

.mm-iconbtn,
.mm-nav-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--mm-ink);
	cursor: pointer;
}

.mm-nav-toggle { display: none; flex-direction: column; gap: 4px; }
.mm-nav-toggle span {
	display: block;
	width: 16px;
	height: 1.5px;
	background: currentColor;
}

.mm-search {
	display: flex;
	gap: .5rem;
	width: min(1120px, calc(100% - 2rem));
	margin: 0 auto;
	padding: .75rem 0 1rem;
	background: #fff;
}
.mm-search[hidden] { display: none; }
.mm-search input {
	flex: 1;
	border: 1px solid var(--mm-line);
	border-radius: 999px;
	padding: .7rem 1rem;
}
.mm-search button,
.mm-btn,
.mm-news button,
body.bm-site .button,
body.bm-site button.button,
body.bm-site a.button,
body.bm-site .es-btn--primary {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .4rem;
	border: 0;
	border-radius: 999px;
	background: var(--mm-silk);
	color: #fff;
	padding: .85rem 1.4rem;
	font-size: .82rem;
	letter-spacing: .06em;
	text-decoration: none;
	cursor: pointer;
}
.mm-search button:hover,
.mm-btn:not(.mm-btn--light):not(.mm-btn--line):hover,
.mm-news button:hover,
body.bm-site .button:hover,
body.bm-site button.button:hover,
body.bm-site a.button:hover,
body.bm-site .es-btn--primary:hover {
	background: #a47c4c;
	color: #fff;
}
.mm-btn--light {
	background: #fff;
	color: var(--mm-ink);
}
.mm-btn--line {
	background: transparent;
	color: var(--mm-ink);
	border: 1px solid #c9c2b8;
	padding: .72rem 1.25rem;
	letter-spacing: 0;
	font-size: .95rem;
}
.mm-textbtn {
	color: var(--mm-ink);
	font-size: 1.05rem;
	letter-spacing: .02em;
	text-decoration: underline;
	text-underline-offset: .2em;
}

.mm-cart { position: relative; }
.mm-cart__count {
	display: inline-flex;
	min-width: 1.15rem;
	height: 1.15rem;
	margin-left: .25rem;
	padding: 0 .3rem;
	border-radius: 999px;
	background: var(--mm-gold);
	color: #fff;
	font-size: .7rem;
	align-items: center;
	justify-content: center;
}

.mm-hero {
	position: relative;
	height: min(1000px, 78vh);
	background: var(--mm-gold);
	overflow: hidden;
}
.mm-hero__slide {
	position: absolute;
	inset: 0;
	display: grid;
	grid-template-columns: 1fr 1fr;
	opacity: 0;
	z-index: 0;
	pointer-events: none;
	transition: opacity .5s ease;
}
.mm-hero__slide.is-active {
	opacity: 1;
	z-index: 1;
	pointer-events: auto;
}
.mm-hero__slide img {
	width: 100%;
	height: 100%;
	min-width: 0;
	min-height: 0;
	object-fit: cover;
	object-position: center center;
}
.mm-hero__copy {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	color: #fff;
	padding: 3rem 8%;
	background: var(--mm-slide-bg, var(--mm-gold));
}
.mm-hero__arrow {
	position: absolute;
	top: 50%;
	z-index: 3;
	transform: translateY(-50%);
	width: 64px;
	height: 64px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	border: 0;
	border-radius: 999px;
	background: var(--mm-silk);
	color: #fff;
	box-shadow: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -2px rgba(0, 0, 0, .1);
	cursor: pointer;
}
.mm-hero__arrow--prev { left: 12px; }
.mm-hero__arrow--next { right: 12px; }
body.bm-site .mm-hero__copy,
body.bm-site .mm-hero__copy h1,
body.bm-site .mm-hero__copy p {
	color: #fff;
}
body.bm-site .mm-hero__slide--ink .mm-hero__copy,
body.bm-site .mm-hero__slide--ink .mm-hero__copy h1,
body.bm-site .mm-hero__slide--ink .mm-hero__copy p {
	color: var(--mm-ink);
}
.mm-hero__copy p:first-child {
	letter-spacing: .18em;
	font-size: .95rem;
	margin: 0 0 .6rem;
}
.mm-hero__copy h1 {
	font-size: clamp(2.4rem, 4vw, 4.2rem);
	font-weight: 500;
	line-height: 1.15;
	margin: 0 0 1rem;
	color: #fff;
}
.mm-hero__copy p { max-width: 38rem; line-height: 1.7; margin: 0 0 1.5rem; color: #fff; }
.mm-hero__copy .mm-btn {
	padding: 1.15rem 2.6rem;
	font-size: 1.2rem;
	letter-spacing: .08em;
}
.mm-dots {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 1rem;
	display: flex;
	justify-content: center;
	gap: .45rem;
}
.mm-hero .mm-dots { z-index: 3; bottom: 24px; }
.mm-dots button {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	border: 0;
	padding: 0;
	background: color-mix(in srgb, var(--mm-ink) 30%, transparent);
	cursor: pointer;
}
.mm-dots button.is-active { background: var(--mm-ink); }

.mm-wrap { width: min(1120px, calc(100% - 2rem)); margin: 0 auto; }
.mm-narrow { width: min(760px, calc(100% - 2rem)); }
.mm-kicker { letter-spacing: .16em; text-transform: uppercase; font-size: .8rem; margin-bottom: .3rem; }
.mm-lead { color: var(--mm-muted); text-align: center; max-width: 46rem; margin: .4rem auto 2rem; line-height: 1.7; }

.mm-values { background: var(--mm-paper); padding: 4.5rem 0; }
.mm-values h2,
.mm-products h2,
.mm-materials__copy h2,
.mm-news h2,
.mm-archive h1 {
	font-weight: 500;
	letter-spacing: -.02em;
	font-size: clamp(1.85rem, 3vw, 2.45rem);
	line-height: 1.2;
	text-transform: none;
}
.mm-products h2 {
	text-align: center;
	margin: 0 0 1.5rem;
}
.mm-products__grid,
.mm-quotes__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.5rem;
}
.mm-values__layout {
	display: grid;
	grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
	gap: 2rem 3.25rem;
	align-items: stretch;
}
.mm-values__intro {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 2rem;
}
.mm-values__intro p.mm-values__kicker,
.mm-materials__copy p.mm-materials__badge,
p.es-eyebrow,
.mm-archive__kicker,
.es-materials__eyebrow,
.es-search-page__eyebrow {
	display: flex;
	align-items: center;
	gap: .5rem;
	width: fit-content;
	margin: 0 0 .85rem;
	padding: 0;
	border-radius: 0;
	background: none;
	color: var(--mm-muted);
	font-size: .78rem;
	font-weight: 400;
	letter-spacing: .16em;
	line-height: 1.4;
	text-transform: uppercase;
}
.mm-values__intro p.mm-values__kicker::before,
.mm-materials__copy p.mm-materials__badge::before,
p.es-eyebrow::before,
.mm-archive__kicker::before,
.es-materials__eyebrow::before,
.es-search-page__eyebrow::before {
	content: "";
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: currentColor;
	flex: none;
}
.mm-archive__head .mm-archive__kicker,
.es-search-page__hero .es-search-page__eyebrow {
	margin-left: auto;
	margin-right: auto;
}
.mm-values h2 {
	text-align: left;
	margin: 0 0 1rem;
}
.mm-values__intro p {
	margin: 0;
	color: var(--mm-muted);
	line-height: 1.75;
}
.mm-values__intro .mm-btn { align-self: flex-start; }
.mm-values__list {
	display: flex;
	flex-direction: column;
	gap: .85rem;
}
.mm-values__card {
	background: #fff;
	border-radius: 16px;
	padding: 1.15rem 1.25rem 1.2rem;
	text-align: left;
}
.mm-values__card h3 {
	display: flex;
	align-items: center;
	gap: .55rem;
	margin: 0 0 .4rem;
	font-weight: 600;
}
.mm-values__card h3 svg {
	flex: none;
	color: var(--mm-gold);
}
.mm-values__card p {
	margin: 0;
	padding-left: 1.55rem;
	color: var(--mm-muted);
	line-height: 1.7;
}

.mm-marquee {
	overflow: hidden;
	background: #fff;
	padding: 1.7rem 0;
	color: var(--mm-gold);
	letter-spacing: .08em;
	text-transform: uppercase;
	font-size: 1.5rem;
	line-height: 1.4;
}
.mm-marquee__track {
	display: flex;
	width: max-content;
	animation: mm-marquee 56s linear infinite;
}
.mm-marquee__group {
	display: flex;
	flex: none;
	align-items: center;
	gap: 3rem;
	padding-right: 3rem;
}
.mm-marquee__group span {
	white-space: nowrap;
}
@keyframes mm-marquee {
	from { transform: translateX(0); }
	to { transform: translateX(-50%); }
}

.mm-products { padding: 1rem 0 4rem; }
.mm-card { text-align: center; }
.mm-card__media {
	display: block;
	aspect-ratio: 1;
	overflow: hidden;
	background: var(--mm-paper);
	margin-bottom: .9rem;
	border-radius: 16px;
}
.mm-card img { width: 100%; height: 100%; object-fit: cover; }
.mm-card h3 { font-size: 1.05rem; font-weight: 600; margin: 0 0 .35rem; }
.mm-card h3 a { color: inherit; text-decoration: none; }
.mm-card p { color: var(--mm-muted); font-size: .92rem; margin: 0 0 .5rem; }
.mm-card__price { margin-bottom: .6rem; }
.mm-card__price del { color: var(--mm-muted); margin-right: .35rem; }
.mm-card__price ins { text-decoration: none; }

.mm-materials {
	padding: 1.5rem 1.25rem 4.5rem;
}
.mm-materials__card {
	width: min(1040px, 100%);
	margin: 0 auto;
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
	gap: 2.5rem;
	align-items: center;
	background: #f4efe8;
	border-radius: 28px;
	padding: 1.15rem 1.75rem 1.15rem 1.15rem;
}
.mm-materials__photo {
	margin: 0;
	border-radius: 18px;
	overflow: hidden;
	aspect-ratio: 4 / 5;
}
.mm-materials__photo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.mm-materials__copy {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	padding: .5rem .25rem .5rem 0;
}
.mm-materials__copy h2 {
	text-align: left;
	margin: 0 0 1rem;
}
.mm-materials__copy p {
	margin: 0 0 1.6rem;
	max-width: 34rem;
	color: #6b6560;
	line-height: 1.7;
}

.mm-posts { padding: 0 1.25rem 4.5rem; }
.mm-posts__row {
	width: min(1040px, 100%);
	margin: 0 auto;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.35rem;
	background: #f4efe8;
	border-radius: 28px;
	padding: 1.2rem 1.2rem 1.45rem;
}
.mm-posts article a {
	color: inherit;
	text-decoration: none;
	display: block;
}
.mm-posts img {
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	border-radius: 16px;
	margin-bottom: .95rem;
}
.mm-posts__badge {
	display: inline-flex;
	margin: 0 0 .7rem;
	padding: .28rem .7rem;
	border-radius: 999px;
	background: #e3ebe3;
	color: #5c675f;
	font-size: .68rem;
	letter-spacing: .12em;
	text-transform: uppercase;
}
.mm-posts h3 {
	font-size: clamp(1.25rem, 1.6vw, 1.55rem);
	font-weight: 500;
	letter-spacing: -.02em;
	line-height: 1.25;
	margin: 0 0 .55rem;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.mm-meta { color: #8a847e; font-size: .9rem; margin: 0; }

.mm-archive {
	width: min(1040px, calc(100% - 2.5rem));
	margin: 0 auto;
	padding: 3.5rem 0 4.5rem;
}
body.bm-site main,
body.bm-site .es-contact,
body.bm-site .es-article,
body.bm-site .es-cart-main,
body.bm-site .es-checkout-main {
	background: #fff;
}
body.bm-site .es-contact__card,
body.bm-site .es-contact__form,
body.bm-site .wc-block-cart__sidebar,
body.bm-site .wc-block-checkout__sidebar {
	border: 1px solid var(--mm-line);
}
body.bm-site .wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-block {
	border: 0;
}
body.bm-site .wc-block-checkout .wc-block-components-order-summary__content {
	display: block;
	width: 100%;
}
body.bm-site .wc-block-checkout .wc-block-components-order-summary-item {
	display: grid;
	grid-template-columns: 56px minmax(0, 1fr);
	grid-template-areas:
		"image desc"
		"image price";
	column-gap: .75rem;
	row-gap: .35rem;
	align-items: start;
	width: 100%;
}
body.bm-site .wc-block-checkout .wc-block-components-order-summary-item__image {
	grid-area: image;
	width: 56px;
}
body.bm-site .wc-block-checkout .wc-block-components-order-summary-item__image img {
	width: 56px;
	height: 56px;
	object-fit: cover;
	border-radius: 10px;
}
body.bm-site .wc-block-checkout .wc-block-components-order-summary-item__description {
	grid-area: desc;
	display: block;
	min-width: 0;
	width: auto;
}
body.bm-site .wc-block-checkout .wc-block-components-order-summary-item__total-price {
	grid-area: price;
	margin: 0;
	text-align: left;
	white-space: normal;
}
body.bm-site .wc-block-checkout .wc-block-components-order-summary-item > .screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
}
body.bm-site .wc-block-checkout .wc-block-components-order-summary-item .wc-block-components-product-name {
	display: block;
	flex: none;
	width: auto;
	min-width: 0;
	max-width: 100%;
	margin: 0 0 .25rem;
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.35;
	overflow-wrap: break-word;
	word-break: normal;
}
.mm-archive__head { text-align: center; margin: 0 auto 2.25rem; max-width: 40rem; }
.mm-archive h1 {
	margin: 0 0 .7rem;
}
.mm-archive__lead {
	margin: 0 auto 1.35rem;
	color: var(--mm-muted);
	line-height: 1.7;
}
.mm-archive__search {
	display: flex;
	justify-content: center;
	gap: .5rem;
}
.mm-archive__search input {
	flex: 1 1 auto;
	min-width: 0;
	max-width: 22rem;
	border: 1px solid var(--mm-line);
	border-radius: 999px;
	background: #fff;
	padding: .8rem 1rem;
	font: inherit;
	color: var(--mm-ink);
}
.mm-archive__search input:focus {
	outline: none;
	border-color: var(--mm-ink);
}
.mm-archive__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.35rem;
	background: #f4efe8;
	border-radius: 28px;
	padding: 1.2rem 1.2rem 1.45rem;
}
.mm-archive__card a {
	display: block;
	color: inherit;
	text-decoration: none;
}
.mm-archive__card img,
.mm-archive__placeholder {
	display: block;
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	border-radius: 16px;
	margin-bottom: .95rem;
	background: var(--mm-paper);
}
.mm-archive__card h2 {
	font-size: clamp(1.25rem, 1.6vw, 1.55rem);
	font-weight: 500;
	letter-spacing: -.02em;
	line-height: 1.25;
	margin: 0 0 .55rem;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.mm-archive__empty { text-align: center; color: var(--mm-muted); }
.mm-archive__empty a { color: var(--mm-ink); }

.mm-gallery__band { width: 100%; max-height: 420px; object-fit: cover; }
.mm-gallery__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
}
.mm-gallery__grid img { width: 100%; aspect-ratio: 1; object-fit: cover; }

.mm-quotes { padding: 4.5rem 1.25rem; }
.mm-quotes__grid {
	width: min(1040px, 100%);
	margin: 0 auto;
	display: grid;
	grid-template-columns: 1.08fr 1fr 1fr;
	gap: .9rem;
	align-items: stretch;
}
.mm-quotes__card {
	margin: 0;
	display: flex;
	flex-direction: column;
	background: #fff;
	color: var(--mm-ink);
	border: 1px solid #eeeae6;
	border-radius: 22px;
	padding: 1.35rem 1.3rem 1.15rem;
	box-shadow: 0 10px 28px rgba(28, 25, 23, .05);
}
.mm-quotes__card--feature { grid-column: 1; grid-row: 1 / span 2; padding: 1.6rem 1.45rem 1.3rem; }
.mm-quotes__card--wide { grid-column: 2 / span 2; }
.mm-quotes__card--plain { grid-column: 2; }
.mm-quotes__card--dark {
	grid-column: 3;
	background: var(--mm-silk);
	color: #fff;
	border-color: transparent;
}
.mm-quotes__headline {
	margin: 0;
	font-weight: 500;
	letter-spacing: -.03em;
	line-height: 1.05;
}
.mm-quotes__card--feature .mm-quotes__headline {
	max-width: 4.05em;
	font-size: clamp(2.2rem, 3.4vw, 3.15rem);
	margin-bottom: .15rem;
}
.mm-quotes__card--feature .mm-quotes__headline span {
	display: block;
	margin-top: .55rem;
	font-size: 1.05rem;
	letter-spacing: 0;
	color: #57534e;
}
.mm-quotes__card--wide .mm-quotes__headline {
	display: flex;
	align-items: baseline;
	gap: .7rem;
	font-size: clamp(1.7rem, 2.2vw, 2.15rem);
	margin-bottom: .15rem;
}
.mm-quotes__card--wide .mm-quotes__headline span {
	font-size: 1.02rem;
	letter-spacing: 0;
	color: #57534e;
}
.mm-quotes__mark {
	margin: .85rem 0 .2rem;
	color: var(--mm-gold);
	font-size: 2rem;
	line-height: 1;
}
.mm-quotes__text {
	margin: 0 0 1.15rem;
	line-height: 1.6;
	color: #44403c;
	font-size: .98rem;
}
.mm-quotes__card--feature .mm-quotes__text { flex: 1; }
.mm-quotes__card--dark .mm-quotes__mark { color: #fff; }
.mm-quotes__card--dark .mm-quotes__text { color: #f5f5f4; }
.mm-quotes footer {
	display: flex;
	align-items: center;
	gap: .7rem;
	margin-top: auto;
}
.mm-quotes__avatar {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #efe6d6;
	color: var(--mm-ink);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: .72rem;
	letter-spacing: .02em;
	flex: none;
}
.mm-quotes__card--dark .mm-quotes__avatar { background: #3f3a36; color: #fff; }
.mm-quotes__person strong,
.mm-quotes__person em { display: block; }
.mm-quotes__person strong { font-weight: 600; font-size: .95rem; }
.mm-quotes__person em { font-style: normal; color: #8a847e; font-size: .8rem; margin-top: .1rem; }
.mm-quotes__card--dark .mm-quotes__person em { color: #d6d3d1; }

.mm-footer { background: #fff; border-top: 1px solid var(--mm-line); padding: 3rem 1.5rem 1.5rem; }
.mm-footer__grid {
	width: min(1120px, 100%);
	margin: 0 auto 2rem;
	display: grid;
	grid-template-columns: 1.35fr 1fr 1fr 1fr;
	gap: 2rem 2.5rem;
}
.mm-footer__logo { display: inline-block; }
.mm-footer__logo img { width: 168px; height: auto; display: block; }
.mm-footer__slogan {
	max-width: 16rem;
	margin: .9rem 0 0;
	color: var(--mm-muted);
	line-height: 1.65;
}
.mm-footer h2 { font-size: .95rem; margin: 0 0 .8rem; }
.mm-footer ul { list-style: none; margin: 0; padding: 0; }
.mm-footer li { margin: .4rem 0; }
.mm-footer a { color: var(--mm-muted); text-decoration: none; }
.mm-footer a:hover { color: var(--mm-ink); }
.mm-news {
	width: min(760px, calc(100% - 2.5rem));
	margin: 0 auto;
	padding: 4.5rem 0 3.5rem;
	text-align: center;
}
.mm-news h2 {
	margin: 0 0 .85rem;
}
.mm-news p { color: var(--mm-muted); }
.mm-news form { display: flex; justify-content: center; gap: .5rem; }
.mm-news input {
	border: 1px solid var(--mm-line);
	border-radius: 999px;
	padding: .8rem 1rem;
	min-width: min(320px, 70vw);
}
.mm-news__ok { color: var(--mm-gold); }
.mm-copy { text-align: center; color: var(--mm-muted); font-size: .85rem; }

body.bm-site .es-shop,
body.bm-site .es-pdp,
body.bm-site .es-blog,
body.bm-site .es-contact,
body.bm-site .wp-block-post-content,
body.bm-site .woocommerce {
	font-family: "Product Sans Regular", system-ui, sans-serif;
}
body.bm-site .es-shop,
body.bm-site .es-pdp,
body.bm-site .es-blog,
body.bm-site .es-contact {
	padding: 2.5rem 0 4rem;
}
body.bm-site ul.products {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.5rem;
	list-style: none;
	padding: 0;
}
body.bm-site ul.products li.product { text-align: center; }
body.bm-site ul.products li.product img { width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: 16px; }
body.bm-site .wc-block-components-product-badge {
	border-radius: 999px !important;
	padding: .15rem .5rem;
}
body.bm-site .es-pdp {
	display: block;
	width: min(1080px, calc(100% - 2.5rem));
	margin: 0 auto;
	padding: 1.5rem 0 4.5rem;
}
body.bm-site .woocommerce-product-gallery { margin: 0; }
body.bm-site .entry-summary,
body.bm-site .summary { padding-top: .5rem; }

body.bm-site.single-product .es-pdp .content-area {
	width: 100%;
	max-width: none;
}
body.bm-site.single-product div.product {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
	gap: 2.75rem 3rem;
	align-items: start;
	width: 100%;
	margin: 0;
}
body.bm-site.single-product div.product::before,
body.bm-site.single-product div.product::after {
	display: none !important;
	content: none !important;
}
body.bm-site.single-product span.onsale {
	position: absolute;
	top: .85rem;
	left: .85rem;
	z-index: 2;
	margin: 0;
	padding: .35rem .7rem;
	border-radius: 999px;
	background: var(--mm-ink);
	color: #fff;
	font-size: .72rem;
	letter-spacing: .12em;
	line-height: 1.2;
	text-transform: uppercase;
}
body.bm-site.single-product .woocommerce-product-gallery {
	float: none !important;
	width: 100% !important;
	margin: 0 !important;
	opacity: 1 !important;
}
body.bm-site.single-product .woocommerce-product-gallery__wrapper,
body.bm-site.single-product .woocommerce-product-gallery__image { margin: 0 !important; }
body.bm-site.single-product .woocommerce-product-gallery__image img,
body.bm-site.single-product .woocommerce-product-gallery .wp-post-image {
	width: 100% !important;
	height: auto !important;
	aspect-ratio: 1;
	object-fit: cover;
	display: block;
	border-radius: 16px;
	background: var(--mm-paper);
}
body.bm-site.single-product .flex-control-thumbs {
	display: flex !important;
	flex-wrap: wrap;
	gap: .55rem;
	margin: .7rem 0 0 !important;
	padding: 0 !important;
	list-style: none;
}
body.bm-site.single-product .flex-control-thumbs li {
	width: 72px !important;
	float: none !important;
	margin: 0 !important;
	flex: 0 0 auto;
}
body.bm-site.single-product .flex-control-thumbs img {
	display: block;
	width: 100%;
	aspect-ratio: 1;
	object-fit: cover;
	opacity: .72;
	border: 1px solid transparent;
	border-radius: 10px;
	cursor: pointer;
}
body.bm-site.single-product .flex-control-thumbs .flex-active,
body.bm-site.single-product .flex-control-thumbs img:hover {
	opacity: 1;
	border-color: var(--mm-ink);
}
body.bm-site.single-product div.product .summary {
	float: none !important;
	width: 100% !important;
	margin: 0 !important;
	padding: .4rem 0 0;
}
body.bm-site.single-product .summary .product_title {
	font-size: clamp(2rem, 3vw, 2.6rem);
	font-weight: 500;
	letter-spacing: -.02em;
	line-height: 1.15;
	margin: 0 0 .7rem;
}
body.bm-site.single-product .summary > .price {
	display: block;
	margin: 0 0 1.1rem !important;
	font-size: 1.35rem !important;
	font-weight: 500;
	line-height: 1.2;
}
body.bm-site.single-product .summary .price del {
	color: var(--mm-muted);
	font-size: .85em;
	margin-right: .4rem;
	opacity: 1;
}
body.bm-site.single-product .summary .price ins { text-decoration: none; }
body.bm-site.single-product .summary .woocommerce-product-details__short-description {
	margin: 0 0 1.4rem;
	color: var(--mm-muted);
	line-height: 1.7;
}
body.bm-site.single-product .summary .variations {
	width: 100%;
	margin: 0 0 1.2rem;
}
body.bm-site.single-product .summary .variations td,
body.bm-site.single-product .summary .variations th {
	display: block;
	padding: 0;
	border: 0;
	text-align: left;
	background: transparent;
}
body.bm-site.single-product .summary .variations .label {
	margin-bottom: .4rem;
	font-size: .85rem;
	letter-spacing: .08em;
	text-transform: uppercase;
}
body.bm-site.single-product .summary .reset_variations {
	margin: .45rem 0 0;
	color: var(--mm-muted);
	font-size: .85rem;
}
body.bm-site.single-product .summary .reset_variations[style*="hidden"] {
	display: none !important;
}
body.bm-site.single-product .summary .variations select {
	width: 100%;
	max-width: 16rem;
	border: 1px solid var(--mm-line);
	border-radius: 999px;
	background: #fff;
	padding: .75rem 2.8rem .75rem 1.15rem;
	font: inherit;
	color: var(--mm-ink);
}
body.bm-site.single-product .summary .mm-select {
	position: relative;
	width: min(100%, 16rem);
}
body.bm-site.single-product .summary .mm-select__native {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	max-width: none;
	margin: -1px !important;
	padding: 0 !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	border: 0 !important;
	pointer-events: none;
}
body.bm-site.single-product .summary .mm-select__button {
	position: relative;
	display: flex;
	align-items: center;
	width: 100%;
	height: 52px;
	margin: 0;
	padding: 0 3.4rem 0 1.25rem;
	border: 1px solid var(--mm-line);
	border-radius: 999px;
	background: #fff;
	color: var(--mm-ink);
	font: inherit;
	line-height: 1.2;
	text-align: left;
	cursor: pointer;
}
body.bm-site.single-product .summary .mm-select__button.is-placeholder {
	color: var(--mm-muted);
}
body.bm-site.single-product .summary .mm-select__button::after {
	content: "";
	position: absolute;
	right: 1.65rem;
	top: 50%;
	width: 18px;
	height: 18px;
	transform: translateY(-50%);
	background: center / 18px 18px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18' fill='none'%3E%3Cpath d='M4.5 7L9 11.5 13.5 7' stroke='%2357534e' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
body.bm-site.single-product .summary .mm-select.is-open .mm-select__button {
	border-color: #d6d3d1;
}
body.bm-site.single-product .summary .mm-select.is-open .mm-select__button::after {
	transform: translateY(-50%) rotate(180deg);
}
body.bm-site.single-product .summary .mm-select__button:focus-visible {
	outline: 2px solid var(--mm-silk);
	outline-offset: 2px;
}
body.bm-site.single-product .summary .mm-select__menu {
	position: absolute;
	z-index: 20;
	top: calc(100% + .45rem);
	left: 0;
	width: 100%;
	margin: 0;
	padding: .35rem;
	border: 1px solid var(--mm-line);
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 16px 40px rgba(28, 25, 23, .08);
}
body.bm-site.single-product .summary .mm-select__option {
	display: flex;
	align-items: center;
	width: 100%;
	margin: 0;
	padding: .7rem 2rem .7rem .9rem;
	border: 0;
	border-radius: 12px;
	background: transparent;
	color: var(--mm-ink);
	font: inherit;
	line-height: 1.3;
	text-align: left;
	cursor: pointer;
}
body.bm-site.single-product .summary .mm-select__option:hover,
body.bm-site.single-product .summary .mm-select__option:focus-visible {
	background: var(--mm-paper);
	outline: none;
}
body.bm-site.single-product .summary .mm-select__option.is-selected {
	background: var(--mm-paper);
}
body.bm-site.single-product .summary .mm-select__option.is-selected::after {
	content: "";
	position: absolute;
	right: 1rem;
	width: 16px;
	height: 16px;
	background: center / 16px 16px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M3.5 8.2 6.4 11.1 12.5 4.8' stroke='%23ba915d' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
body.bm-site.single-product .summary .mm-select__option {
	position: relative;
}
body.bm-site.single-product .summary .mm-select__option:disabled {
	color: #a8a29e;
	cursor: default;
	background: transparent;
}
body.bm-site.single-product .summary .cart {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .65rem;
	margin: 0 0 1.25rem !important;
}
body.bm-site.single-product .quantity input.qty {
	width: 4.6rem;
	height: 52px;
	margin: 0;
	border: 1px solid var(--mm-line);
	border-radius: 999px;
	background: #fff;
	text-align: center;
	font: inherit;
}
body.bm-site.single-product .single_add_to_cart_button {
	height: 52px !important;
	margin: 0 !important;
	padding: 0 1.7rem !important;
	border: 0 !important;
	border-radius: 999px !important;
	background: var(--mm-silk) !important;
	color: #fff !important;
	font-size: 1rem !important;
	letter-spacing: .08em !important;
	line-height: 52px !important;
	text-transform: uppercase;
}
body.bm-site.single-product .single_add_to_cart_button.disabled,
body.bm-site.single-product .single_add_to_cart_button:disabled {
	opacity: 1;
	cursor: pointer;
}
body.bm-site.single-product .es-pdp-trust {
	list-style: none;
	margin: 0 0 1.25rem;
	padding: 1rem 0 0;
	border-top: 1px solid var(--mm-line);
	display: grid;
	gap: .4rem;
}
body.bm-site.single-product .es-pdp-trust li {
	position: relative;
	padding-left: 0;
	color: var(--mm-muted);
}
body.bm-site.single-product .es-pdp-trust li::before { content: none; }
body.bm-site.single-product .product_meta {
	color: var(--mm-muted);
	font-size: .92rem;
}
body.bm-site.single-product .stock {
	color: var(--mm-muted);
	font-size: .92rem;
	margin: 0 0 .85rem;
}
body.bm-site.single-product .woocommerce-tabs,
body.bm-site.single-product .related.products {
	grid-column: 1 / -1;
}
body.bm-site.single-product .woocommerce-tabs {
	margin: .5rem 0 0;
	padding-top: 1.5rem;
	border-top: 1px solid var(--mm-line);
}
body.bm-site.single-product .woocommerce-tabs ul.tabs {
	display: flex;
	flex-wrap: wrap;
	gap: .25rem 1.25rem;
	list-style: none;
	margin: 0 0 1.25rem !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent;
}
body.bm-site.single-product .woocommerce-tabs ul.tabs::before,
body.bm-site.single-product .woocommerce-tabs ul.tabs li::before,
body.bm-site.single-product .woocommerce-tabs ul.tabs li::after { display: none !important; content: none !important; }
body.bm-site.single-product .woocommerce-tabs ul.tabs li {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	border-radius: 0 !important;
}
body.bm-site.single-product .woocommerce-tabs ul.tabs li a {
	display: inline-block;
	padding: .35rem 0 .55rem !important;
	color: var(--mm-muted) !important;
	font-weight: 500;
	text-transform: none;
	letter-spacing: 0;
	border-bottom: 2px solid transparent;
}
body.bm-site.single-product .woocommerce-tabs ul.tabs li.active a,
body.bm-site.single-product .woocommerce-tabs ul.tabs li a:hover {
	color: var(--mm-ink) !important;
	border-bottom-color: var(--mm-ink);
}
body.bm-site.single-product .woocommerce-Tabs-panel {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	color: var(--mm-muted);
	line-height: 1.7;
}
body.bm-site.single-product .woocommerce-Tabs-panel h2,
body.bm-site.single-product .woocommerce-Tabs-panel h3,
body.bm-site.single-product .related.products > h2 {
	color: var(--mm-ink);
	font-weight: 500;
	letter-spacing: -.02em;
}
body.bm-site.single-product .related.products > h2 {
	margin: 2.5rem 0 1.25rem;
	font-size: clamp(1.85rem, 3vw, 2.45rem);
	text-align: left;
}
body.bm-site.single-product .related li.product {
	position: relative;
}
body.bm-site.single-product .related ul.products {
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 1.5rem;
	margin: 0;
}
body.bm-site.single-product .related ul.products li.product .woocommerce-loop-product__title {
	font-size: 1.05rem;
	font-weight: 500;
	letter-spacing: 0;
}
body.bm-site.single-product .woocommerce-noreviews {
	margin: 0 0 1rem;
	padding: 0;
	background: transparent;
	color: var(--mm-muted);
}
body.bm-site.single-product #review_form_wrapper {
	max-width: 36rem;
	padding-top: .5rem;
}
body.bm-site.single-product .comment-form input[type="text"],
body.bm-site.single-product .comment-form input[type="email"],
body.bm-site.single-product .comment-form textarea {
	width: 100%;
	border: 1px solid var(--mm-line);
	border-radius: 12px;
	padding: .75rem .9rem;
	font: inherit;
}
body.bm-site .comment-form-cookies-consent {
	display: flex;
	align-items: flex-start;
	gap: .75rem;
	margin: 0;
}
body.bm-site .comment-form-cookies-consent input[type="checkbox"] {
	appearance: none;
	-webkit-appearance: none;
	flex: 0 0 auto;
	width: 20px;
	height: 20px;
	margin: .15rem 0 0;
	border: 1px solid #d6d3d1;
	border-radius: 6px;
	background: #fff;
	cursor: pointer;
}
body.bm-site .comment-form-cookies-consent input[type="checkbox"]:checked {
	border-color: var(--mm-silk);
	background: var(--mm-silk) center / 14px 14px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M3.5 8.2 6.4 11.1 12.5 4.8' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
body.bm-site .comment-form-cookies-consent input[type="checkbox"]:focus-visible {
	outline: 2px solid var(--mm-silk);
	outline-offset: 2px;
}
body.bm-site .comment-form-cookies-consent label {
	display: block;
	flex: 1 1 auto;
	margin: 0;
	font-family: "Product Sans Regular", system-ui, sans-serif;
	font-size: 1rem;
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.5;
	text-transform: none;
	color: var(--mm-muted);
	cursor: pointer;
}
body.bm-site.single-product #review_form .submit {
	border: 0;
	border-radius: 999px;
	background: var(--mm-silk);
	color: #fff;
	padding: .8rem 1.4rem;
	cursor: pointer;
}
body.bm-site .price,
body.bm-site .woocommerce-Price-amount { color: var(--mm-ink); }
body.bm-site .es-blog__title,
body.bm-site .wp-block-post-title,
body.bm-site .es-contact__title {
	font-weight: 500;
	letter-spacing: .02em;
}
body.bm-site .es-blog__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.25rem;
}
body.bm-site .mm-prose,
body.bm-site .wp-block-post-content {
	width: min(760px, calc(100% - 2rem));
	margin: 2rem auto 4rem;
	line-height: 1.8;
}
body.bm-site .wp-block-post-title {
	width: min(760px, calc(100% - 2rem));
	margin: 2.5rem auto 0;
}
body.bm-site .es-checkout .wp-block-post-content,
body.bm-site .es-checkout .wp-block-post-title,
body.bm-site .es-checkout .wp-block-woocommerce-checkout,
body.bm-site .es-cart .wp-block-post-content,
body.bm-site .es-cart .wp-block-woocommerce-cart {
	width: 100%;
	max-width: none;
	margin-left: 0;
	margin-right: 0;
}

@media (max-width: 980px) {
	.mm-header__bar { grid-template-columns: auto 1fr auto; }
	.mm-header__start { gap: .25rem; }
	.mm-nav {
		display: none;
		position: absolute;
		top: 100%;
		left: 0;
		right: 0;
		flex-direction: column;
		align-items: flex-start;
		background: #fff;
		padding: 1rem 1.25rem 1.2rem;
		border-bottom: 1px solid var(--mm-line);
		z-index: 5;
	}
	.mm-nav.is-open { display: flex; }
	.mm-nav__mobile { display: inline; }
	.mm-nav-toggle { display: inline-flex; }
	.mm-header__tools a:not(.mm-cart):not(.mm-lang) { display: none; }
	.mm-hero { height: auto; }
	.mm-hero__slide { display: flex; flex-direction: column; }
	.mm-hero__slide.is-active { position: relative; }
	.mm-hero__slide img,
	.mm-hero__copy { height: auto; min-height: 280px; }
	.mm-hero__arrow { width: 44px; height: 44px; }
	.mm-values__layout,
	.mm-products__grid,
	.mm-quotes__grid,
	.mm-footer__grid,
	body.bm-site ul.products,
	body.bm-site .es-blog__grid,
	body.bm-site .es-pdp,
	body.bm-site div.product { grid-template-columns: 1fr; }
	.mm-posts__row { grid-template-columns: 1fr; padding: 1rem; }
	.mm-archive__grid { grid-template-columns: 1fr; padding: 1rem; }
	.mm-archive__search { flex-direction: column; align-items: center; }
	.mm-archive__search input { width: 100%; }
	.mm-quotes__grid { grid-template-columns: 1fr; }
	.mm-quotes__card--feature,
	.mm-quotes__card--wide,
	.mm-quotes__card--plain,
	.mm-quotes__card--dark { grid-column: auto; grid-row: auto; }
	.mm-materials__card {
		grid-template-columns: 1fr;
		padding: 1rem;
		gap: 1.25rem;
	}
	.mm-materials__photo { aspect-ratio: 4 / 3; }
	.mm-materials__copy { padding: .25rem .4rem .6rem; }
	.mm-gallery__grid { grid-template-columns: 1fr 1fr; }
	.mm-news form { flex-direction: column; align-items: center; }
	body.bm-site.single-product div.product { grid-template-columns: 1fr; }
	body.bm-site.single-product .related ul.products { grid-template-columns: 1fr !important; }
}
