.mayn-sets {
	--mayn-cream: var(--cream, #f5f1ea);
	--mayn-cream-2: var(--cream2, #ede5d4);
	--mayn-ink: var(--ink, #26241f);
	--mayn-ink-70: var(--ink70, rgba(38, 36, 31, 0.7));
	--mayn-ink-40: var(--ink40, rgba(38, 36, 31, 0.4));
	--mayn-ink-15: var(--ink15, rgba(38, 36, 31, 0.15));
	--mayn-cognac: var(--cognac, #8b5a2b);
	--mayn-accent: var(--accent, #c4a574);
	width: 100%;
	padding: 0;
	background: var(--mayn-cream-2);
}

.mayn-set-card__label,
.mayn-set-card__include > p,
.mayn-set-card__price > p,
.mayn-set-modal__eyebrow {
	font-family: var(--sans, inherit);
	text-transform: uppercase;
}

.mayn-sets__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 2px;
	max-width: 1100px;
	margin: 0 auto;
}

.mayn-set-card {
	position: relative;
	display: flex;
	min-width: 0;
	min-height: 395px;
	padding: 2.5rem 2rem;
	border: 1px solid var(--mayn-ink-15);
	background: var(--mayn-cream);
	flex-direction: column;
	gap: 1.5rem;
}

.mayn-set-card.is-recommended {
	border-color: var(--mayn-ink);
	background: var(--mayn-ink);
}

.mayn-set-card__badge {
	position: absolute;
	top: 1.5rem;
	right: 1.5rem;
	padding: 4px 10px;
	background: var(--mayn-cognac);
	color: var(--mayn-cream);
	font-family: var(--sans, inherit);
	font-size: 8px;
	letter-spacing: 0.2em;
	text-transform: uppercase;
}

.mayn-set-card__label {
	margin: 0 0 0.8rem;
	color: var(--mayn-cognac);
	font-size: 10px;
	letter-spacing: 0.35em;
}

.mayn-sets .mayn-set-card h3 {
	margin: 0 0 0.5rem;
	color: var(--mayn-ink) !important;
	font-family: var(--serif, "Cormorant Garamond", Georgia, serif) !important;
	font-size: 28px !important;
	font-weight: 300 !important;
	letter-spacing: 0;
	line-height: 1.25;
}

.mayn-sets .mayn-set-card p,
.mayn-sets .mayn-set-card h3 {
	letter-spacing: inherit;
}

.mayn-set-card__subtitle {
	margin: 0;
	color: var(--mayn-ink-40);
	font-family: var(--serif, Georgia, serif);
	font-size: 14px;
	font-style: italic;
}

.mayn-set-card__include,
.mayn-set-card__footer {
	width: 100%;
	padding-top: 1.5rem;
	border-top: 1px solid var(--mayn-ink-15);
}

.mayn-set-card__include > p,
.mayn-set-card__price > p {
	margin: 0 0 0.5rem;
	color: var(--mayn-ink-40);
	font-size: 9px;
	letter-spacing: 0.2em;
}

.mayn-set-card__include > div {
	color: var(--mayn-ink-70);
	font-family: var(--serif, Georgia, serif);
	font-size: 15px;
	line-height: 1.45;
}

.mayn-set-card__footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	margin-top: auto;
}

.mayn-set-card__price > div {
	display: flex;
	align-items: baseline;
	flex-wrap: wrap;
	gap: 5px;
	color: var(--mayn-ink) !important;
	font-family: var(--serif, "Cormorant Garamond", Georgia, serif) !important;
	font-size: 28px !important;
	font-weight: 300 !important;
}

.mayn-set-card__price > div :is(.amount, .woocommerce-Price-amount, bdi) {
	color: inherit !important;
	font-family: inherit !important;
	font-size: inherit !important;
	font-weight: 300 !important;
}

.mayn-set-card__price small {
	color: var(--mayn-cognac);
	font-size: 14px;
	font-style: italic;
}

.mayn-set-card__button,
.elementor-kit-7 .mayn-set-card__button {
	min-height: 0 !important;
	padding: 14px 24px !important;
	border: 1px solid var(--mayn-ink) !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--mayn-ink) !important;
	font-family: var(--sans, inherit) !important;
	font-size: 10px !important;
	font-weight: 400 !important;
	letter-spacing: 0.25em !important;
	line-height: 1.35 !important;
	text-transform: uppercase !important;
}

.mayn-set-card__button:hover {
	background: var(--mayn-ink) !important;
	color: var(--mayn-cream) !important;
}

.mayn-sets .mayn-set-card.is-recommended h3,
.mayn-sets .mayn-set-card.is-recommended .mayn-set-card__price > div,
.mayn-sets .mayn-set-card.is-recommended .mayn-set-card__price > div :is(.amount, .woocommerce-Price-amount, bdi) { color: var(--mayn-cream) !important; }
.mayn-set-card.is-recommended :is(.mayn-set-card__subtitle, .mayn-set-card__include > div) { color: rgba(245, 241, 234, 0.7); }
.mayn-set-card.is-recommended :is(.mayn-set-card__label, .mayn-set-card__include > p, .mayn-set-card__price > p) { color: rgba(245, 241, 234, 0.4); }
.mayn-set-card.is-recommended :is(.mayn-set-card__include, .mayn-set-card__footer) { border-color: rgba(245, 241, 234, 0.15); }
.mayn-set-card.is-recommended .mayn-set-card__price small { color: var(--mayn-accent); }
.mayn-set-card.is-recommended .mayn-set-card__button { border-color: rgba(245, 241, 234, 0.5) !important; color: var(--mayn-cream) !important; }
.mayn-set-card.is-recommended .mayn-set-card__button:hover { background: rgba(245, 241, 234, 0.1) !important; }

.mayn-set-modal {
	position: fixed;
	inset: 0;
	z-index: 99999;
	display: grid;
	place-items: center;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.25s ease, visibility 0.25s ease;
}

.mayn-set-modal.is-open { opacity: 1; visibility: visible; }
.mayn-set-modal[hidden] { display: none; }

.mayn-set-modal__backdrop {
	position: absolute !important;
	inset: 0;
	width: 100% !important;
	height: 100% !important;
	padding: 0 !important;
	border: 0 !important;
	background: rgba(38, 36, 31, 0.72) !important;
}

.mayn-set-modal__dialog {
	position: relative;
	z-index: 1;
	width: min(500px, calc(100% - 32px));
	max-height: calc(100vh - 48px);
	overflow: auto;
	padding: 3rem;
	background: var(--mayn-cream);
}

.mayn-set-modal__close,
.elementor-kit-7 .mayn-set-modal__close {
	position: absolute !important;
	top: 1rem;
	right: 1rem;
	min-width: 36px !important;
	min-height: 36px !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	color: var(--mayn-ink-40) !important;
	font-size: 28px !important;
	font-weight: 300 !important;
	line-height: 1 !important;
}

.mayn-set-modal__eyebrow {
	margin: 0 0 0.75rem;
	color: var(--mayn-cognac);
	font-size: 9px;
	letter-spacing: 0.25em;
	text-align: center;
}

.mayn-set-modal__eyebrow::before,
.mayn-set-modal__eyebrow::after {
	content: "\2014";
	display: inline-block;
	margin: 0 0.65rem;
	letter-spacing: 0;
}

.mayn-set-modal__dialog h3 {
	margin: 0 0 2rem;
	color: var(--mayn-ink);
	font-family: var(--serif, "Cormorant Garamond", Georgia, serif) !important;
	font-size: 32px !important;
	font-weight: 300 !important;
	letter-spacing: 0;
	line-height: 1.25;
	text-align: center;
}

.mayn-set-modal__options {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
	max-width: 500px;
	margin-inline: auto;
}

.mayn-set-fragrance {
	display: flex;
	min-height: 145px;
	padding: 0 0 18px;
	border: 1px solid var(--mayn-ink-15);
	color: var(--mayn-ink) !important;
	text-align: center;
	text-decoration: none !important;
	flex-direction: column;
	justify-content: center;
	overflow: hidden;
	transition: border-color 0.25s ease, background-color 0.25s ease;
}

.mayn-set-fragrance:hover { border-color: var(--mayn-ink); background: rgba(38, 36, 31, 0.04); }
.mayn-set-fragrance > span { display: block; }
.mayn-set-fragrance__cover { width: 100%; margin-bottom: 18px; aspect-ratio: 4 / 3; overflow: hidden; }
.mayn-set-fragrance__cover img { display: block; width: 100%; height: 100%; object-fit: cover; }
.mayn-set-fragrance__name { padding-inline: 12px; font-family: var(--serif, "Cormorant Garamond", Georgia, serif); font-size: 19px; font-weight: 300; }
.mayn-set-fragrance__notes { margin-top: 5px; color: var(--mayn-ink-40); font-family: var(--sans, inherit); font-size: 9px; letter-spacing: 0.15em; line-height: 1.55; text-transform: uppercase; }
.mayn-set-fragrance__notes, .mayn-set-fragrance__price { padding-inline: 12px; }
.mayn-set-fragrance__price { margin-top: 10px; font-family: var(--sans, inherit); font-size: 12px; letter-spacing: 0.1em; }
.mayn-modal-open { overflow: hidden; }

@media (max-width: 900px) {
	.mayn-sets { padding: 0; }
	.mayn-sets__grid {
		grid-template-columns: 1fr;
		gap: 20px;
	}
}

@media (max-width: 600px) {
	.mayn-set-card__footer { align-items: stretch; flex-direction: column; }
	.mayn-set-card__button { width: 100% !important; }
	.mayn-set-modal__dialog {
		width: calc(100% - 20px);
		padding: 2.5rem 10px 1rem;
	}
	.mayn-set-modal__options {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px;
	}
	.mayn-set-fragrance {
		min-height: 0;
		padding-bottom: 12px;
	}
	.mayn-set-fragrance__cover {
		margin-bottom: 12px;
	}
	.mayn-set-fragrance__name {
		padding-inline: 6px;
		font-size: 17px;
	}
	.mayn-set-fragrance__notes,
	.mayn-set-fragrance__price {
		padding-inline: 6px;
	}
	.mayn-set-fragrance__notes {
		font-size: 8px;
		letter-spacing: 0.1em;
	}
}
