/* Mac Flynn redesign. Everything is namespaced mf- so it will not fight the parent theme. */

.mf-page {
	--mf-ink: #3b2766;
	--mf-purple: #5a3d91;
	--mf-btn: #7e63ad;
	--mf-btn-hover: #6a4f98;
	--mf-cream: #fbf7f3;
	--mf-lav: #f0eaf6;
	--mf-text: #4a3f5c;
	--mf-night: #1d1233;
	--mf-serif: 'Cormorant Garamond', Georgia, serif;
	--mf-display: 'Cinzel', 'Times New Roman', serif;
	background: var(--mf-cream);
	color: var(--mf-text);
	font-family: var(--mf-serif);
	font-size: 19px;
	line-height: 1.55;
}
.mf-page *, .mf-page *::before, .mf-page *::after { box-sizing: border-box; }
.mf-page a { text-decoration: none; }
.mf-page img { max-width: 100%; height: auto; display: block; }

.mf-wrap { width: min(1120px, 92%); margin: 0 auto; }

/* ---------- Headings ---------- */
/* !important on font-size: the child theme forces h1/h2/h3 sizes with !important. */
.mf-page .mf-title {
	font-family: var(--mf-display);
	font-weight: 500;
	font-size: clamp(18px, 2vw, 25px) !important;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: var(--mf-ink);
	margin: 0 0 18px;
	display: block;
	position: relative;
}
/* Title ornament (images/ornament.png, 2172 x 200): thick abrupt end on the left, knot in the middle, tapered right.
   Left-aligned titles: centered on the page, the title text covers the left end.
   Centered titles: one copy each side, mirrored on the left, starting under the text. */
/* Plain titles (homepage): same ornament, centered on the title row */
.mf-title::after {
	content: '';
	position: absolute;
	left: 50%;
	top: 50%;
	width: min(840px, 100%);
	aspect-ratio: 2172 / 200;
	transform: translate(-50%, -50%);
	background: url(../images/ornament.png) center / 100% 100% no-repeat;
	pointer-events: none;
	z-index: 0;
}
.mf-titlebar .mf-title::after { display: none; }
.mf-titlebar { position: relative; }
.mf-titlebar::before {
	content: '';
	position: absolute;
	left: 50%;
	top: calc(50% - 9px);
	width: min(840px, 100%);
	aspect-ratio: 2172 / 200;
	transform: translate(-50%, -50%);
	background: url(../images/ornament.png) center / 100% 100% no-repeat;
	pointer-events: none;
	z-index: 0;
}
.mf-title--center::before,
.mf-title--center::after {
	content: '';
	position: absolute;
	top: calc(50% - 9px);
	width: 640px;
	aspect-ratio: 2172 / 200;
	background: url(../images/ornament.png) center / 100% 100% no-repeat;
	pointer-events: none;
	z-index: 0;
}
.mf-title--center::after { left: 50%; transform: translateY(-50%); }
.mf-title--center::before { right: 50%; transform: translateY(-50%) scaleX(-1); }
.mf-title__text { position: relative; z-index: 1; display: inline-block; padding: 16px 18px 16px 0; margin: -16px 0; background: var(--mf-cream); }
.mf-section--lav .mf-title__text { background: var(--mf-lav); }
.mf-title--center { text-align: center; }
.mf-title--center .mf-title__text { padding: 16px 20px; }
.mf-titlebar .mf-link { position: relative; z-index: 1; }
.mf-titlebar { display: flex; align-items: baseline; justify-content: space-between; gap: 20px; }
.mf-titlebar .mf-title { flex: 1; }
.mf-sub { margin: -8px 0 22px; color: var(--mf-ink); font-size: 18px; }
.mf-link {
	font-family: var(--mf-display);
	font-size: 12px;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--mf-purple);
	white-space: nowrap;
}
.mf-link:hover { color: var(--mf-ink); }

.mf-btn {
	display: inline-block;
	background: var(--mf-btn);
	color: #fff !important;
	font-family: var(--mf-display);
	font-size: 13px;
	letter-spacing: .12em;
	text-transform: uppercase;
	padding: 14px 30px;
	border: 0;
	border-radius: 2px;
	cursor: pointer;
	transition: background .2s, transform .2s;
}
.mf-btn:hover { background: var(--mf-btn-hover); transform: translateY(-1px); }

.mf-section { padding: 46px 0; }
.mf-section--lav { background-color: var(--mf-lav); background-image: linear-gradient(to bottom, rgba(90, 61, 145, .13), rgba(90, 61, 145, 0) 22px, rgba(90, 61, 145, 0) calc(100% - 22px), rgba(90, 61, 145, .13)); }

/* ---------- Hero ---------- */
.mf-hero {
	background: linear-gradient(135deg, #f4c9dc 0%, #c9b6e4 55%, #8f7bc0 100%);
	background-image: var(--mf-hero, none), linear-gradient(135deg, #f4c9dc 0%, #c9b6e4 55%, #8f7bc0 100%);
	background-size: cover;
	background-position: center;
	min-height: clamp(300px, 36vw, 440px);
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 40px 20px;
}
.mf-hero--short { min-height: clamp(180px, 22vw, 280px); }
.mf-hero__inner {
	max-width: 560px;
	padding: 26px 34px;
	background: radial-gradient(ellipse at center, rgba(251, 247, 243, .78), rgba(251, 247, 243, 0) 72%);
}
.mf-page .mf-hero h1 {
	font-family: var(--mf-display);
	font-weight: 500 !important;
	font-size: clamp(26px, 4vw, 42px) !important;
	line-height: 1.15;
	letter-spacing: .05em;
	text-transform: uppercase;
	color: var(--mf-ink);
	margin: 0 0 14px;
}
.mf-hero p { margin: 14px 0 0; font-size: 20px; color: #4a3566; }
.mf-orn {
	display: block;
	width: 220px;
	height: 1px;
	margin: 0 auto;
	background: linear-gradient(90deg, transparent, var(--mf-purple), transparent);
	position: relative;
}
.mf-orn::after {
	content: '';
	position: absolute;
	left: 50%;
	top: -4px;
	width: 8px;
	height: 8px;
	transform: translateX(-50%) rotate(45deg);
	border: 1px solid var(--mf-purple);
	background: var(--mf-cream);
}

/* ---------- Featured release ---------- */
.mf-featured { position: relative; overflow: hidden; padding: 40px 0 46px; background: var(--mf-cream); }
.mf-featured::after {
	content: '';
	position: absolute;
	top: 0; right: 0; bottom: 0;
	width: 38%;
	background-image: var(--mf-portrait, none);
	background-size: cover;
	background-position: left center;
	-webkit-mask-image: linear-gradient(90deg, transparent, #000 45%);
	mask-image: linear-gradient(90deg, transparent, #000 45%);
	pointer-events: none;
}
.mf-featured .mf-wrap { position: relative; z-index: 1; }
.mf-featured__grid { display: grid; grid-template-columns: minmax(240px, 420px) 1fr; gap: 44px; align-items: center; }
.mf-featured__cover img { width: 100%; max-width: 360px; box-shadow: 0 18px 40px rgba(40, 20, 80, .35); }
.mf-featured__cover img[src$=".png"] { box-shadow: none; max-width: 100%; }
.mf-featured__text { max-width: 560px; }
.mf-page .mf-featured__text h3 {
	font-family: var(--mf-display);
	font-weight: 500;
	font-size: clamp(26px, 3vw, 36px) !important;
	color: var(--mf-ink);
	margin: 0 0 4px;
}
.mf-featured__series { margin: 0 0 16px; color: var(--mf-purple); font-size: 20px; }
.mf-featured__tagline { font-size: 21px; font-style: italic; color: var(--mf-ink); }
.mf-featured__blurb { margin: 0 0 24px; }
.mf-featured__blurb p { margin: 0 0 .8em; }

/* ---------- Genre tiles ---------- */
.mf-genres { display: grid; grid-template-columns: repeat(5, 1fr); gap: 18px; }
.mf-genre {
	position: relative;
	aspect-ratio: 1 / 1.05;
	border-radius: 4px;
	overflow: hidden;
	display: flex;
	align-items: flex-end;
	justify-content: center;
	background: linear-gradient(160deg, #3b2766, #1d1233) center / cover no-repeat;
	box-shadow: 0 6px 18px rgba(40, 20, 80, .25);
	transition: transform .25s, box-shadow .25s;
}
.mf-genre::before {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(10, 5, 25, 0) 40%, rgba(10, 5, 25, .9));
}
.mf-genre:hover { transform: translateY(-4px); box-shadow: 0 12px 26px rgba(40, 20, 80, .38); }
.mf-genre__label {
	position: relative;
	z-index: 1;
	padding: 0 10px 18px;
	font-family: var(--mf-display);
	font-size: clamp(16px, 1.8vw, 22px);
	line-height: 1.2;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: #f3e9cf;
	text-align: center;
	text-shadow: 0 1px 6px rgba(0, 0, 0, .6);
}

/* ---------- Book rows and cards ---------- */
.mf-row { position: relative; }
.mf-row__track {
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: calc((100% - 5 * 18px) / 6);
	gap: 18px;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
}
.mf-row__track::-webkit-scrollbar { display: none; }
.mf-card { display: block; scroll-snap-align: start; text-align: center; color: var(--mf-text); }
.mf-card__cover { display: block; transition: transform .25s; }
.mf-card__cover img { width: 100%; height: auto; box-shadow: none; border-radius: 0; }
.mf-card:hover .mf-card__cover { transform: translateY(-4px); }
.mf-card__line1 { display: block; margin-top: 10px; font-size: 16px; line-height: 1.25; color: var(--mf-ink); }
.mf-card__line2 { display: block; font-size: 15px; color: var(--mf-text); opacity: .85; }
.mf-card--box .mf-card__line1 { font-family: var(--mf-display); font-size: 13px; letter-spacing: .06em; text-transform: uppercase; }

.mf-row--arrows { padding: 0 26px; }
.mf-row__arrow {
	position: absolute;
	top: 38%;
	z-index: 2;
	width: 34px; height: 34px;
	border: 0;
	background: transparent;
	color: var(--mf-purple);
	font-size: 38px;
	line-height: 1;
	cursor: pointer;
}
.mf-row__arrow--prev { left: -4px; }
.mf-row__arrow--next { right: -4px; }
.mf-row__arrow:hover { color: var(--mf-ink); }

/* ---------- About + blog ---------- */
.mf-aboutblog { display: grid; grid-template-columns: 1.05fr 1fr; gap: 44px; align-items: start; }
.mf-page .mf-about .mf-title { font-size: clamp(18px, 2vw, 24px) !important; }
.mf-about__body {
	min-height: 220px;
	padding-left: min(44%, 240px);
	background: var(--mf-about, none) left center / auto 100% no-repeat;
}
.mf-about__body p { margin: 0 0 18px; font-size: 17px; }
.mf-page .mf-blog .mf-title { font-size: clamp(18px, 2vw, 24px) !important; }
.mf-blog__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.mf-post { background: #fff; box-shadow: 0 3px 12px rgba(40, 20, 80, .12); padding-bottom: 12px; color: var(--mf-text); }
.mf-post__thumb { display: block; aspect-ratio: 4 / 3; overflow: hidden; background: linear-gradient(160deg, #c9b6e4, #7e63ad); }
.mf-post__thumb img { width: 100%; height: 100%; object-fit: cover; }
.mf-post__title { display: block; margin: 10px 12px 2px; font-size: 17px; line-height: 1.25; color: var(--mf-ink); }
.mf-post__date { display: block; margin: 0 12px; font-size: 14px; opacity: .8; }

/* ---------- Newsletter ---------- */
.mf-news, .mf-trust {
	background: linear-gradient(135deg, #3b2766, #1d1233);
	background-image: var(--mf-news, none), linear-gradient(135deg, #3b2766, #1d1233);
	background-size: cover;
	background-position: center;
	color: #f3eefb;
	padding: 34px 0;
	position: relative;
}
.mf-news::before, .mf-trust::before { content: ''; position: absolute; inset: 0; background: rgba(20, 10, 45, .55); }
.mf-news .mf-wrap, .mf-trust .mf-wrap { position: relative; }
.mf-news__inner { display: flex; align-items: center; justify-content: space-between; gap: 30px; flex-wrap: wrap; }
.mf-page .mf-news__copy h2 {
	font-family: var(--mf-display);
	font-weight: 500;
	font-size: 24px !important;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: #fff;
	margin: 0;
}
.mf-news__copy p { margin: 4px 0 0; color: #e6dcf5; }
.mf-news__form { display: flex; gap: 10px; flex-wrap: wrap; flex: 1; justify-content: flex-end; }
.mf-news__form input { flex: 1 1 170px; max-width: 260px; padding: 13px 14px; border: 0; border-radius: 2px; font-family: var(--mf-serif); font-size: 17px; }
.mf-news__embed { flex: 1; min-width: 280px; }

/* ---------- Shop trust bar ---------- */
.mf-trust { padding: 36px 0; }
.mf-trust__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; text-align: center; }
.mf-trust__grid > div { position: relative; }
/* Vertical gold divider that fades out at top and bottom, with a small diamond in the middle */
.mf-trust__grid > div + div::before {
	content: '';
	position: absolute;
	left: -10px;
	top: 0;
	bottom: 0;
	width: 1px;
	background: linear-gradient(180deg, rgba(201, 164, 92, 0), rgba(201, 164, 92, .9) 30%, rgba(201, 164, 92, .9) 70%, rgba(201, 164, 92, 0));
}
.mf-trust__grid > div + div::after {
	content: '';
	position: absolute;
	left: -10px;
	top: 50%;
	width: 7px;
	height: 7px;
	transform: translate(-50%, -50%) rotate(45deg);
	border: 1px solid rgba(201, 164, 92, .95);
	background: #1d1233;
}
.mf-page .mf-trust__icon { width: 38px; height: 38px; max-width: none; object-fit: contain; margin: 0 auto 10px; }
.mf-trust__grid strong { display: block; font-family: var(--mf-display); font-weight: 500; font-size: 14px; letter-spacing: .08em; text-transform: uppercase; color: #fff; }
.mf-trust__grid span { font-size: 16px; color: #e6dcf5; }

.mf-prose { max-width: 760px; }

/* ---------- Responsive ---------- */
@media (max-width: 980px) {
	.mf-row__track { grid-auto-columns: calc((100% - 3 * 16px) / 4); gap: 16px; }
	.mf-genres { grid-template-columns: repeat(3, 1fr); }
	.mf-aboutblog { grid-template-columns: 1fr; }
	.mf-featured::after { opacity: .35; width: 55%; }
}
@media (max-width: 680px) {
	.mf-page { font-size: 18px; }
	.mf-featured__grid { grid-template-columns: 1fr; gap: 24px; }
	.mf-featured__cover img { margin: 0 auto; max-width: 280px; }
	.mf-row__track { grid-auto-columns: 42%; }
	.mf-genres { grid-template-columns: repeat(2, 1fr); }
	.mf-blog__grid { grid-template-columns: 1fr 1fr; }
	.mf-about__body { padding-left: 0; background-image: none; }
	.mf-news__inner { flex-direction: column; align-items: stretch; }
	.mf-news__form { justify-content: stretch; }
	.mf-news__form input { max-width: none; }
	.mf-trust__grid { grid-template-columns: 1fr 1fr; }
	.mf-trust__grid > div + div::before, .mf-trust__grid > div + div::after { display: none; }
	.mf-titlebar { flex-direction: column; gap: 0; }
	.mf-titlebar .mf-link { margin-bottom: 14px; }
	.mf-row--arrows { padding: 0; }
	.mf-row__arrow { display: none; }
}

@media (max-width: 900px) {
	.mf-titlebar::before, .mf-title--center::before, .mf-title--center::after { display: none; }
}

/* Homepage preview fixes */
.mf-hero__inner { max-width: 760px; }
.mf-page .mf-hero h1 { white-space: nowrap; font-size: clamp(22px, 3.6vw, 40px) !important; }
.mf-post__thumb img { padding: 0 !important; border: 0 !important; }
.mf-page .mf-featured__text h3 { text-align: left !important; }
.mf-blog .mf-titlebar::before { display: none; }
.mf-page .mf-news__form .mf-btn { height: 46px !important; min-height: 0 !important; padding: 0 30px !important; line-height: 1 !important; display: inline-flex; align-items: center; }
@media (max-width: 700px) {
	.mf-page .mf-hero h1 { white-space: normal; }
}

/* About: image in its own left column, fading out on its right edge; blog thumbnails square */
.mf-post__thumb, .mf-post__thumb img { border-radius: 0 !important; }
.mf-about__body { position: relative; background: none !important; padding-left: calc(46% + 24px); min-height: 250px; }
.mf-about__body::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 46%;
	background: var(--mf-about, none) 25% center / cover no-repeat;
	-webkit-mask-image: linear-gradient(90deg, #000 60%, transparent);
	mask-image: linear-gradient(90deg, #000 60%, transparent);
	pointer-events: none;
}
@media (max-width: 700px) {
	.mf-about__body { padding-left: 0; padding-top: 190px; }
	.mf-about__body::before { width: 100%; height: 170px; bottom: auto; -webkit-mask-image: linear-gradient(180deg, #000 60%, transparent); mask-image: linear-gradient(180deg, #000 60%, transparent); }
}

/* Featured: keep the text clear of the portrait */
.mf-featured::after { width: 34%; -webkit-mask-image: linear-gradient(90deg, transparent 0%, transparent 20%, #000 65%); mask-image: linear-gradient(90deg, transparent 0%, transparent 20%, #000 65%); }
.mf-featured__text { max-width: 500px; }
@media (max-width: 900px) {
	.mf-featured::after { display: none; }
}

/* Featured: shorter section, smaller devices image (its transparent margin is trimmed off the bottom) */
.mf-featured { padding: 30px 0 22px; }
.mf-featured__grid { grid-template-columns: minmax(240px, 340px) 1fr; gap: 56px; }
.mf-featured__cover img[src$=".png"] { max-width: 340px; margin-bottom: -28px; }

/* Homepage "Explore My Worlds": slightly darker tan than the sections around it, as in the mockup */
.mf-section--tan { background-color: #f9f1ea; }
.mf-section--tan .mf-title__text { background: #f9f1ea; }

/* Hovered genre tiles lift above the section title background */
.mf-genre { z-index: 1; }
.mf-genre:hover, .mf-genre:focus { z-index: 3; }

/* Mobile: featured section stacks, hero subtitle readable */
@media (max-width:700px){
.mf-page .mf-featured__grid{grid-template-columns:1fr!important;gap:18px!important}
.mf-page .mf-featured__cover{text-align:center}
.mf-featured__cover img[src$=".png"]{margin:0 auto!important;max-width:300px}
.mf-page .mf-featured__text{max-width:none}
.mf-featured{padding:26px 0 30px}
}
@media (max-width:900px){
.mf-hero__inner{background:rgba(251,247,243,.62);padding:18px 16px;border-radius:6px}
.mf-page .mf-hero p{color:#2b1a4f!important;font-weight:500;text-shadow:0 0 8px rgba(255,255,255,.9),0 0 2px rgba(255,255,255,.9)}
}

/* Featured: secondary retailer link under the button */
.mf-page .mf-featured__alt{display:inline-block;margin-left:18px;font-size:17px;letter-spacing:.02em;color:var(--mf-purple);text-decoration:underline;text-underline-offset:3px}
.mf-page .mf-featured__alt:hover{color:var(--mf-ink)}
@media (max-width:700px){.mf-page .mf-featured__alt{display:block;margin:14px 0 0}}

/* Shop landing: search bar under the hero */
.mf-shopsearch { background: var(--mf-cream); padding: 22px 0 0; }
.mf-shopsearch .mf-wrap { max-width: 640px; }
.mf-shopsearch form { margin: 0; }
.mf-shopsearch input[type="search"], .mf-shopsearch input[type="text"] { width: 100%; height: 48px; padding: 0 16px; border: 1px solid #cfc3e6; border-radius: 2px; background: #fff; font-family: var(--mf-serif); font-size: 19px; color: var(--mf-text); }
.mf-shopsearch .is-search-submit, .mf-shopsearch button[type="submit"], .mf-shopsearch input[type="submit"] { background: var(--mf-btn); border: 0; color: #fff; }
.mf-shopsearch form.is-search-form { position: relative; }
.mf-shopsearch .is-search-submit, .mf-shopsearch input[type="submit"].is-search-submit, .mf-shopsearch button.is-search-submit { position: absolute !important; top: 0 !important; right: 0 !important; bottom: 0 !important; height: 48px !important; margin: 0 !important; padding: 0 24px !important; border-radius: 0 2px 2px 0 !important; font-family: var(--mf-display) !important; font-size: 12px !important; letter-spacing: .12em; text-transform: uppercase; }
.mf-shopsearch .is-search-input { padding-right: 110px !important; }

/* Footer widget area (Cart widget) is hidden on the redesigned pages: homepage, shop landing, product pages */
body:has(.mf-page) #secondary, body.mf-product #secondary { display: none !important; }

/* Shop landing: rounded search bar inside the hero image */
.mf-hero--search { min-height: clamp(260px, 28vw, 340px); }
.mf-hero--search .mf-hero__inner { max-width: 720px; width: 100%; }
.mf-hero__search { max-width: 640px; margin: 22px auto 0; }
.mf-hero__search form { position: relative; margin: 0; }
.mf-hero__search label { display: block; margin: 0; }
.mf-hero__search input[type="search"], .mf-hero__search input[type="text"] { width: 100% !important; height: 54px !important; padding: 0 140px 0 26px !important; border: 0 !important; border-radius: 999px !important; background: rgba(255, 255, 255, .94) !important; box-shadow: 0 8px 24px rgba(40, 20, 80, .28); font-family: var(--mf-serif) !important; font-size: 19px !important; color: var(--mf-text) !important; }
.mf-hero__search .is-search-submit, .mf-hero__search input[type="submit"], .mf-hero__search button[type="submit"] { position: absolute !important; top: 6px !important; right: 6px !important; bottom: 6px !important; height: 42px !important; margin: 0 !important; padding: 0 28px !important; border: 0 !important; border-radius: 999px !important; background: var(--mf-btn) !important; color: #fff !important; font-family: var(--mf-display) !important; font-size: 12px !important; letter-spacing: .12em; text-transform: uppercase; cursor: pointer; }
.mf-hero__search .is-search-submit:hover { background: var(--mf-btn-hover) !important; }
@media (max-width: 560px) { .mf-hero__search input[type="search"], .mf-hero__search input[type="text"] { padding-right: 110px !important; font-size: 17px !important; } .mf-hero__search .is-search-submit { padding: 0 18px !important; } }
.mf-hero__search input::placeholder { color: #8a7ba6 !important; opacity: 1 !important; }


/* mf-notice: added-to-cart message */
.woocommerce-message{display:flex;align-items:center;gap:22px;position:relative;background:#fdf9f4;border:1px solid #d9c9a3!important;border-top:1px solid #d9c9a3!important;border-radius:10px;box-shadow:inset 0 0 0 4px #fdf9f4,inset 0 0 0 5px #e4d9ec;padding:22px 28px 22px 84px!important;color:#3b2766;font-family:'Cormorant Garamond',serif;font-size:22px;line-height:1.35;margin:0 0 28px!important}
.woocommerce-message::before{content:"\2713"!important;position:absolute!important;left:26px;top:50%;transform:translateY(-50%);width:42px;height:42px;line-height:38px;text-align:center;border-radius:50%;background:#4b2f80;color:#e6c46a!important;border:2px solid #e6c46a;font-size:22px;font-family:Arial,sans-serif;margin:0!important}
.woocommerce-message .mf-n-cover{width:46px;height:auto;flex:0 0 auto;order:-1;margin:-6px 0;box-shadow:none}
.woocommerce-message .button.wc-forward{order:3;margin-left:auto!important;float:none!important;flex:0 0 auto;background:#4b2f80!important;color:#fff!important;border:1px solid #e6c46a!important;border-radius:4px;box-shadow:inset 0 0 0 2px #4b2f80,inset 0 0 0 3px rgba(230,196,106,.55);font-family:'Cinzel',serif;font-size:15px;letter-spacing:.12em;text-transform:uppercase;padding:14px 26px!important;white-space:nowrap}
.woocommerce-message .button.wc-forward::after{content:" \203A";font-size:1.2em}
.woocommerce-message .button.wc-forward:hover{background:#5a3d91!important}
@media(max-width:700px){.woocommerce-message{flex-wrap:wrap;font-size:18px;padding:18px 18px 18px 74px!important}.woocommerce-message .button.wc-forward{margin:4px 0 0!important}}
.woocommerce-message:focus,.woocommerce-message:focus-visible{outline:none!important}
.woocommerce-message{font-size:22px!important;font-weight:500!important;color:#3b2766!important}
@media(max-width:700px){.woocommerce-message{font-size:18px!important}}
.woocommerce-message{max-width:80%;margin-left:auto!important;margin-right:auto!important}
.woocommerce-message .mf-n-cover{object-fit:contain}
@media(max-width:700px){.woocommerce-message{max-width:100%}}

/* mf-hide-formats-12734: hide 'Formats Included' line on Caged (product 12734) only. Undo: delete this rule. */
body.postid-12734 .mbm-book-details-formats{display:none!important}

/* mf-orn2-home: titles with the ornament on the same row use ornament.png (1200x70). Undo: delete this block. */
.mf-title{display:flex!important;align-items:center!important;gap:20px}
.mf-title::after{position:static!important;transform:none!important;flex:1 1 auto;width:auto!important;max-width:460px;aspect-ratio:2172/200;background:url(../images/ornament.png) left center/100% 100% no-repeat!important;z-index:auto!important}
.mf-titlebar .mf-title::after{display:block!important}
.mf-titlebar::before{display:none!important}
.mf-title--center{justify-content:center!important}
.mf-title--center::before,.mf-title--center::after{position:static!important;transform:none!important;flex:1 1 0;width:auto!important;max-width:300px;aspect-ratio:2172/200;background:url(../images/ornament.png) center/100% 100% no-repeat!important;z-index:auto!important}
.mf-title--center::before{transform:scaleX(-1)!important}

/* mf-orn-home-fix */
.mf-blog .mf-title::after,.mf-blog .mf-titlebar::before{display:none!important}
.mf-title:not(.mf-title--center){display:block!important;position:relative!important}
.mf-title:not(.mf-title--center)::after{display:block!important;position:absolute!important;left:50%!important;top:50%!important;flex:none!important;max-width:none!important;width:min(840px,100%)!important;aspect-ratio:2172/200!important;transform:translate(-50%,-50%)!important;background:url(../images/ornament.png) center/100% 100% no-repeat!important;z-index:0!important}
.mf-title__text{position:relative!important;z-index:1!important}

/* mf-trust-icon-global */
.mf-trust .mf-trust__icon{width:38px!important;height:38px!important;max-width:none!important;object-fit:contain;margin:0 auto 10px!important}

/* mf-nav-cart */
.mf-nav-cart{display:none}
@media (min-width:1001px){
.site-navigation .nav-socials{display:none!important}
.site-navigation .mf-nav-cart{display:inline-flex;align-items:center;position:relative;margin-left:30px;font-size:20px;line-height:1;text-decoration:none;vertical-align:middle}
.mf-nav-cart .mf-cart-count{position:absolute;top:-8px;right:-10px;min-width:17px;height:17px;padding:0 4px;border-radius:9px;background:var(--mf-purple,#8a62b0);color:#fff;font:600 11px/17px sans-serif;text-align:center}
.mf-nav-cart .mf-cart-count-hidden{display:none}
}

/* mf-nav-short: header 160px -> 100px */
@media (min-width:1001px){
body .main_header .logo-header,body .main_header .site-navigation,body .main_header .primary-menu-wrapper,body .main_header ul.primary-menu{height:100px!important}
body .main_header .logo-header{width:clamp(220px,22vw,340px)!important}
}

@media (min-width:1001px){
.site-navigation ul.primary-menu li > a.mf-nav-cart{margin-left:30px!important;display:inline-flex!important;padding:0!important}
}

@media (min-width:1001px){
.site-navigation ul.primary-menu li > a.mf-nav-cart{margin-left:15px!important;position:relative!important;top:-3px!important}
}

/* mf-nav-dropdown: rounded white panel with a pointer, serif links */
@media (min-width:1001px){
.site-navigation ul.primary-menu > li > ul.sub-menu{background:#fff!important;border-radius:14px!important;box-shadow:0 12px 32px rgba(60,30,110,.18)!important;padding:10px 6px!important;width:auto!important;min-width:250px!important;top:calc(100% + 14px)!important;border:0!important}
.site-navigation ul.primary-menu > li > ul.sub-menu::before{content:'';position:absolute;left:0;right:0;top:-16px;height:16px}
.site-navigation ul.primary-menu > li > ul.sub-menu::after{content:'';position:absolute;top:-7px;left:34px;width:14px;height:14px;background:#fff;transform:rotate(45deg);border-radius:3px 0 0 0;box-shadow:-3px -3px 6px rgba(60,30,110,.06)}
.site-navigation ul.primary-menu > li > ul.sub-menu > li{background:transparent!important;border:0!important}
.site-navigation ul.primary-menu > li > ul.sub-menu > li > a{font-family:'Cormorant Garamond',Georgia,serif!important;font-size:19px!important;font-weight:500!important;text-transform:none!important;letter-spacing:0!important;color:#2f1a6b!important;background:transparent!important;padding:9px 22px!important;white-space:nowrap;border-radius:8px;position:relative}
.site-navigation ul.primary-menu > li > ul.sub-menu > li > a:hover{background:#f3ecfb!important;color:#6a3fa0!important}
}

@media (min-width:1001px){
.site-navigation ul.primary-menu > li > ul.sub-menu{border:1px solid rgba(138,98,176,.18)!important;text-align:left!important}
.site-navigation ul.primary-menu > li > ul.sub-menu::after{border-top:1px solid rgba(138,98,176,.18);border-left:1px solid rgba(138,98,176,.18);box-shadow:none}
.site-navigation ul.primary-menu > li > ul.sub-menu > li{text-align:left!important}
.site-navigation ul.primary-menu > li > ul.sub-menu > li > a{display:block!important;text-align:left!important}
}


/* mf-free-page-v1 */
body.mf-free-page .site-main,body.mf-free-page #primary,body.mf-free-page .entry-content{margin-top:0!important;padding-top:0!important}
.mff{--ink:#3b2766;--btn:#7e63ad;--btn-h:#6a4f98;--text:#4a3f5c;--lav:#f3edf9;--serif:'Cormorant Garamond',Georgia,serif;background:#fbf7f3;color:var(--text)}
.mff-wrap{max-width:1200px;margin:0 auto;padding:0 24px;position:relative}
.mff-hero{position:relative;overflow:hidden;background:#fbf7f3;padding:54px 0 46px;min-height:340px}
.mff-hero__art{position:absolute;top:0;right:0;bottom:0;width:66%;background-size:cover;background-position:72% center;background-repeat:no-repeat;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 40%);mask-image:linear-gradient(90deg,transparent 0,#000 40%)}
.mff-hero .mff-wrap{max-width:1200px}
.mfs .mff-hero .mff-wrap{max-width:1148px}
.mff-hero__text{max-width:40%;position:relative;z-index:1}
.mff-title{font-family:var(--serif);font-weight:500;font-size:clamp(46px,6vw,82px);line-height:1;color:var(--ink);margin:0;text-transform:none;letter-spacing:0}
.mff-orn{width:min(300px,70%);aspect-ratio:2172/200;margin:18px 0 22px;background:url(../images/ornament2.png) left center/100% 100% no-repeat}
.mff-lead{font-size:clamp(19px,1.7vw,24px);font-weight:600;color:var(--ink);margin:0 0 12px;line-height:1.3}
.mff-intro{font-size:clamp(16px,1.35vw,19px);line-height:1.6;margin:0;color:var(--text)}
.mff-perks{background:linear-gradient(90deg,#efe6f8,#f6f0fb 50%,#efe6f8)}
.mff-perks__grid{display:grid;grid-template-columns:repeat(3,1fr);padding-top:26px;padding-bottom:26px}
.mff-perk{display:flex;align-items:center;gap:18px;padding:0 28px;color:var(--btn)}
.mff-perk+.mff-perk{border-left:1px solid rgba(126,99,173,.28)}
.mff-perk svg{flex:none}
.mff-perk strong{display:block;font-size:18px;font-weight:500;color:var(--ink);margin-bottom:4px}
.mff-perk span{display:block;font-size:15px;line-height:1.45;color:var(--text)}
.mff-browse{padding:44px 0 56px}
.mff-h2{text-align:center!important;font-family:var(--serif)!important;font-weight:500!important;font-size:clamp(28px,3vw,40px)!important;color:var(--ink)!important;margin:0 0 26px!important;text-transform:none!important;letter-spacing:0!important}
.mff-pills{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:0 0 38px}
.mff .mff-pill{font:inherit;font-size:15px;line-height:1;padding:12px 22px;border-radius:999px;border:1px solid rgba(126,99,173,.35);background:#fff;color:var(--ink);cursor:pointer;text-transform:none;letter-spacing:0;box-shadow:none;transition:background .15s,color .15s}
.mff .mff-pill:hover{background:#f3ecfb}
.mff .mff-pill.is-active{background:var(--btn);border-color:var(--btn);color:#fff}
.mff-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:34px 26px;max-width:1200px;margin:0 auto}
.mff-card{text-align:center;display:flex;flex-direction:column}
.mff-card[hidden]{display:none!important}
.mff-card__cover{display:block;margin-bottom:12px}
.mff-card__cover img{display:block;width:100%;height:auto;mix-blend-mode:multiply}
.mff-card__title{display:block;font-size:16px;font-weight:600;color:var(--ink);text-decoration:none;line-height:1.3}
.mff-card__series{display:block;font-size:13px;color:#7a6e8c;margin:3px 0 12px;line-height:1.3}
.mff-card__btn{display:block;margin-top:auto;background:var(--btn);color:#fff!important;text-decoration:none;text-transform:uppercase;letter-spacing:.06em;font-size:13px;font-weight:600;padding:12px 8px;border-radius:3px}
.mff-card__btn:hover{background:var(--btn-h)}
.mff-empty{text-align:center;font-size:18px;margin:20px 0}
.mff-more-wrap{text-align:center;margin-top:36px}
.mff .mff-more{font:inherit;font-size:15px;padding:13px 30px;border-radius:999px;border:1px solid var(--btn);background:#fff;color:var(--ink);cursor:pointer;text-transform:none}
.mff .mff-more:hover{background:var(--btn);color:#fff}
.mff-news{background-color:#e9dff5;background-image:linear-gradient(90deg,rgba(251,247,243,.94) 0,rgba(251,247,243,.88) 45%,rgba(251,247,243,.35) 100%),var(--mf-news,none);background-size:cover;background-position:center;padding:46px 0}
.mff-news__grid{display:grid;grid-template-columns:1.1fr 1fr;gap:34px;align-items:center}
.mff-news__title{font-family:var(--serif);font-weight:500;font-size:clamp(30px,3.4vw,48px);line-height:1.1;color:var(--ink);margin:0;text-transform:none;letter-spacing:0}
.mff-news__text .mff-orn{margin:12px 0 14px}
.mff-news__text p{margin:0;font-size:17px;color:var(--ink)}
.mff-news__form{display:flex;gap:12px;position:relative}
.mff-news__form input[type=email]{flex:1;min-width:0;padding:15px 18px;border:1px solid rgba(126,99,173,.3);border-radius:3px;background:#fff;font-size:16px;height:auto}
.mff-news__form input[type=email]::placeholder{color:#8a7f99;opacity:1}
.mff-news__form button{background:var(--btn);color:#fff;border:0;border-radius:3px;padding:0 26px;text-transform:uppercase;letter-spacing:.06em;font-size:13px;font-weight:600;cursor:pointer}
.mff-news__form button:hover{background:var(--btn-h)}
@media (max-width:1100px){.mff-grid{grid-template-columns:repeat(4,1fr)}}
@media (max-width:900px){
.mff-grid{grid-template-columns:repeat(3,1fr);gap:28px 20px}
.mff-hero{padding:34px 0 0;min-height:0}
.mff-hero__art{position:relative;display:block;width:100%;height:240px;margin-top:26px;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 30%);mask-image:linear-gradient(180deg,transparent 0,#000 30%)}
.mff-hero .mff-wrap{order:-1}
.mff-hero{display:flex;flex-direction:column}
.mff-hero__text{max-width:100%}
.mff-perks__grid{grid-template-columns:1fr;gap:18px}
.mff-perk{padding:0}
.mff-perk+.mff-perk{border-left:0}
.mff-news__grid{grid-template-columns:1fr}
}
@media (max-width:560px){
.mff-grid{grid-template-columns:repeat(2,1fr);gap:24px 14px}
.mff-news__form{flex-direction:column}
.mff-news__form button{padding:14px}
.mff-pills{gap:8px}
.mff .mff-pill{padding:10px 15px;font-size:14px}
}

/* mf-free-news-v2 */
.mff .mff-newsband h2{font-family:'Cinzel','Times New Roman',serif!important;font-weight:500!important;letter-spacing:.06em!important;text-transform:uppercase!important;color:#fff!important;margin:0!important;font-size:24px!important}
.mf-news__form input[type=text]::placeholder,.mf-news__form input[type=email]::placeholder{color:#5f5473!important;opacity:1!important;-webkit-text-fill-color:#5f5473}
.mf-news__form input[type=text],.mf-news__form input[type=email]{color:#2f1a6b!important}
.mff-newsband .mf-btn{background:#7e63ad!important;color:#fff!important;border:0!important;padding:14px 26px!important;text-transform:uppercase;letter-spacing:.08em;font-size:13px;border-radius:3px;cursor:pointer}
.mff-newsband .mf-btn:hover{background:#6a4f98!important}
.mff-newsband .mf-news__form{align-items:center!important}
.mff-newsband .mf-news__form input[type=text],.mff-newsband .mf-news__form input[type=email]{height:46px!important;box-sizing:border-box!important;margin:0!important}
.mff-newsband .mf-btn{height:46px!important;padding:0 24px!important;margin:0!important;box-sizing:border-box!important}
.mff .mff-newsband{font-family:'Cormorant Garamond',Georgia,serif!important;font-size:19px!important;line-height:1.55!important}
.mff-newsband .mf-news__copy p{font-family:'Cormorant Garamond',Georgia,serif!important;font-size:19px!important;line-height:1.55!important}
.mff-newsband .mf-news__form input[type=text],.mff-newsband .mf-news__form input[type=email]{font-family:'Cormorant Garamond',Georgia,serif!important;font-size:17px!important;font-weight:400!important}
.mff-newsband .mf-btn{font-family:'Cinzel','Times New Roman',serif!important;font-size:13px!important;font-weight:400!important;letter-spacing:.12em!important;padding:0 30px!important;border-radius:2px!important}
.mff-newsband .mf-news__inner{min-height:69px}

/* mf-series-page-v2 */
.mfs .mff-hero{padding:34px 0 54px;min-height:340px}
.mfs .mff-hero__art{width:62%;background-position:center}
.mfs .mff-hero__text{max-width:46%}
.mfs-crumbs{font-size:15px;color:var(--ink);margin-bottom:22px}
.mfs-crumbs a{color:var(--ink);text-decoration:none}
.mfs-crumbs a:hover{text-decoration:underline}
.mfs-crumbs span{margin:0 9px;opacity:.7}
.mfs .mff-intro{max-width:560px}
.mfs-filters{background:#f1eaf8;padding:34px 0 26px}
.mfs .mff-h2{font-family:'Cinzel','Times New Roman',serif!important;font-size:18px!important;letter-spacing:.1em!important;text-transform:uppercase!important;margin-bottom:22px!important}
.mfs .mff-pills{margin-bottom:24px}
.mfs .mff-pill{display:inline-flex;align-items:center;gap:9px}
.mfs .mff-pill svg{flex:none;color:var(--btn)}
.mfs .mff-pill.is-active svg{color:#fff}
.mfs-toolbar{display:flex;align-items:center;gap:22px;flex-wrap:wrap;max-width:1100px;margin:0 auto}
.mfs-search{position:relative;flex:1 1 320px}
.mfs-search svg{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--btn);pointer-events:none}
.mfs-search input{width:100%;box-sizing:border-box;padding:0 16px 0 44px;height:46px;font-size:17px;font-family:var(--serif);border:1px solid rgba(126,99,173,.35);border-radius:3px;background:#fff;color:var(--ink)}
.mfs-search input::placeholder{color:#6f6384;opacity:1}
.mfs-sort{display:flex;align-items:center;gap:10px;font-size:16px;color:var(--ink);margin:0}
.mfs-sort select{height:46px;padding:0 34px 0 14px;font-size:16px;font-family:var(--serif);border:1px solid rgba(126,99,173,.35);border-radius:3px;background-color:#fff;color:var(--ink);width:auto;min-width:190px}
.mfs-showing{font-size:16px;color:var(--ink);margin-left:auto}
.mfs-list{padding:34px 0 50px;background:#fbf7f3}
.mfs-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px 22px;max-width:1100px;margin:0 auto}
.mfs-card{display:flex;flex-direction:column;background:#fff;border-radius:4px;padding:10px 10px 12px;box-shadow:0 2px 10px rgba(59,39,102,.08)}
.mfs-card[hidden]{display:none!important}
.mfs-card__img{display:block;aspect-ratio:16/8.5;background-color:#2a1a4a;background-size:cover;background-position:center 28%;border-radius:3px;margin-bottom:10px}
.mfs-card__title{font-family:var(--serif);font-weight:500;font-size:22px;line-height:1.15;margin:0 0 2px;text-transform:none;letter-spacing:0}
.mfs-card__title a{color:var(--btn);text-decoration:none}
.mfs-card__title a:hover{text-decoration:underline}
.mfs-card__books{font-size:15px;color:var(--ink);font-weight:500}
.mfs-card__desc{font-size:14px;line-height:1.4;color:var(--text);margin:4px 0 12px;flex:1}
.mfs-card__btn{display:block;text-align:center;background:var(--btn);color:#fff!important;text-decoration:none;text-transform:uppercase;letter-spacing:.08em;font-size:12.5px;padding:10px 6px;border-radius:2px}
.mfs-card__btn:hover{background:var(--btn-h)}
.mfs-empty{text-align:center;font-size:18px;margin:24px 0}
.mfs-pager{display:flex;justify-content:center;gap:8px;margin-top:34px;flex-wrap:wrap}
.mfs-pager button{min-width:40px;height:40px;padding:0 10px;font:inherit;font-size:16px;color:var(--ink);background:#fff;border:1px solid rgba(126,99,173,.35);border-radius:3px;cursor:pointer}
.mfs-pager button:hover{background:#f3ecfb}
.mfs-pager button.is-active{background:var(--btn);border-color:var(--btn);color:#fff}
.mfs-pager button[disabled]{opacity:.4;cursor:default}
.mfs-pager span{align-self:center;color:var(--ink)}
@media (max-width:1000px){.mfs-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:900px){
.mfs .mff-hero__text{max-width:100%}
.mfs .mff-hero__art{width:100%}
.mfs-showing{margin-left:0;width:100%}
}
@media (max-width:640px){.mfs-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px}.mfs-card__title{font-size:19px}.mfs-sort{width:100%}.mfs-sort select{flex:1}}
@media (max-width:400px){.mfs-grid{grid-template-columns:1fr}}
.mfs-card__title,.mfs-card__books,.mfs-card__desc{text-align:left!important}
.mfs-card__books{display:block}
.mfs .mff-pill .mfs-ico{height:28px;width:auto;margin:-4px 0;flex:none}
.mfs .mff-pill.is-active .mfs-ico{filter:brightness(0) invert(1)}
.mfs .mff-pill .mfs-ico[src*="genreicon_dragon"]{margin-left:-4.7px;margin-right:-3.4px}
.mfs .mff-pill .mfs-ico[src*="genreicon_fae"]{margin-left:-4.5px;margin-right:-3.8px}
.mfs .mff-pill .mfs-ico[src*="genreicon_urban"]{margin-left:-3px;margin-right:-2.1px}
.mfs .mff-pill .mfs-ico[src*="genreicon_vampire"]{margin-left:-11.5px;margin-right:-11.2px}
.mfs .mff-pill .mfs-ico[src*="genreicon_werewolf"]{margin-left:-7.5px;margin-right:-6.6px}
/* mf-nav-vcenter */
@media (min-width:1001px){body .main_header ul.primary-menu{padding-top:0!important;padding-bottom:0!important;align-items:center!important;align-content:center!important;transform:none!important;margin-top:0!important;top:auto!important}}


/* mf-hero-mobile-noart */
@media (max-width:768px){.mff-hero__art,.mfs .mff-hero__art{display:none}.mff-hero,.mfs .mff-hero{min-height:0;padding:34px 0 36px}.mfs .mff-hero__text{max-width:100%}}

/* mf-footer-v1 */
footer#colophon.mf-foot{padding:0!important;background:#150b27;color:#eadff5;text-align:center;font-family:var(--serif,'Cormorant Garamond'),Georgia,serif}
.mf-foot .tax-notice{background:#150b27;color:#cdbfe0}
.mf-foot__dark{position:relative;background:#150b27 url(/wp-content/uploads/2026/10/footer-bg.jpg) center bottom/cover no-repeat;border-top:1px solid #6a4f98;padding:62px 24px 0}
.mf-foot__main{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:start}
.mf-foot__col{position:relative;padding:0 24px 8px}
.mf-foot__col+.mf-foot__col::before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:1px;background:linear-gradient(transparent,#b8935c 15%,#b8935c 85%,transparent);opacity:.75}
.mf-foot__h{font-family:inherit;font-size:30px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:#d9b27c;margin:0 0 26px;padding-bottom:22px;position:relative;line-height:1.1}
.mf-foot__h::after{content:"";position:absolute;left:8%;right:8%;bottom:4px;height:1px;background:linear-gradient(90deg,transparent,#b8935c 20%,#b8935c 80%,transparent)}
.mf-foot__h::before{content:"";position:absolute;left:50%;bottom:0;width:9px;height:9px;margin-left:-5px;transform:rotate(45deg);border:1px solid #d9b27c;background:#150b27;z-index:1}
.mf-foot__links{list-style:none;margin:0;padding:0}
.mf-foot__links li{margin:0;padding:0}
.mf-foot__links a{display:inline-block;font-size:23px;line-height:1.75;color:#f3ecf8!important;text-decoration:none!important}
.mf-foot__links a:hover{color:#e8b86d!important}
.mf-foot__soc{display:flex;justify-content:center;gap:20px;margin-top:26px}
.mf-foot__soc a{width:50px;height:50px;border-radius:50%;background:#7e63ad;color:#fff!important;display:grid;place-items:center;transition:background .2s}
.mf-foot__soc a:hover{background:#9279c0}
.mf-foot__soc svg{width:24px;height:24px;fill:currentColor}
.mf-foot__rule{max-width:1100px;margin:46px auto 0;height:22px;position:relative}
.mf-foot__rule::before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:linear-gradient(90deg,#b8935c,#b8935c 42%,transparent 47%,transparent 53%,#b8935c 58%,#b8935c)}
.mf-foot__rule::after{content:"";position:absolute;left:50%;top:50%;width:11px;height:11px;margin:-6px 0 0 -6px;transform:rotate(45deg);border:1px solid #d9b27c;background:#150b27}
.mf-foot__legal{padding:28px 0 46px;font-size:19px;line-height:1.7;color:#eadff5}
.mf-foot__legal small{display:block;font-size:16px;color:#d6c9e6}
.mf-foot__legal nav{margin-top:14px;font-size:17px}
.mf-foot__legal nav a{color:#b9a2e0!important;text-decoration:underline!important;margin:0 4px}
.mf-foot__legal nav a:hover{color:#e8b86d!important}
@media (max-width:820px){
.mf-foot__dark{padding-top:44px;background-position:center}
.mf-foot__main{grid-template-columns:1fr;gap:38px}
.mf-foot__col{padding:0}
.mf-foot__col+.mf-foot__col::before{display:none}
.mf-foot__h{font-size:26px}
.mf-foot__links a{font-size:21px}
.mf-foot__rule{margin-top:34px}
.mf-foot__legal{padding:22px 0 40px;font-size:17px}
}

/* mf-footer-v2 */
.mf-foot .mf-news h2,.mf-foot .mf-news .mf-news__copy h2{color:#fff!important}
.mf-foot .mf-news .mf-news__copy p{color:#fff!important}
.mf-foot__col{text-align:center}
.mf-foot__links li{text-align:center;display:block}
.mf-foot__h{font-size:27px;letter-spacing:.1em;white-space:nowrap}
.mf-foot__col:nth-child(2)::after,.mf-foot__col:nth-child(3)::after{content:"";position:absolute;left:-4px;top:50%;width:8px;height:8px;margin-top:-4px;transform:rotate(45deg);border:1px solid #d9b27c;background:#150b27}
@media (max-width:820px){.mf-foot__col::after{display:none!important}.mf-foot__h{white-space:normal;font-size:24px}}
footer#colophon.mf-foot #button,a#button{background:#2a1450!important;color:#e8dcf7!important;border:2px solid #b78fe0!important;border-radius:50%!important;width:56px!important;height:56px!important;padding:0!important;display:flex!important;align-items:center;justify-content:center;font-size:12px!important;letter-spacing:.1em;font-family:'Cormorant Garamond',serif;font-weight:700;line-height:1}
a#button:hover{background:#7e63ad!important}

/* mf-footer-v3 */
.mf-foot__main{max-width:1240px}
.mf-foot__col{padding:0 14px 8px}
.mf-foot__h{font-size:25px}
@media (max-width:820px){.mf-foot__h{font-size:24px}}

/* mf-footer-cart */
.mf-foot__links a.mf-foot__cart{display:inline-flex!important;align-items:center;vertical-align:middle;position:relative;margin-left:15px;font-size:20px;line-height:1}

/* mf-footer-cart-v2 */
.mf-foot__links a.mf-foot__cart{top:-4px}

/* mf-book-page-v1 */
body.mf-book{overflow-x:hidden}
body.mf-book .entry-header,body.mf-book .post-navigation{display:none}
.mfb{--ink:#3b2766;--btn:#7e63ad;--btn-h:#6a4f98;--text:#4a3f5c;--lav:#f3edf9;--serif:'Cormorant Garamond',Georgia,serif;max-width:1240px;margin:0 auto;padding:0 24px;font-family:var(--serif);color:var(--text)}
.mfb *{box-sizing:border-box}
.mfb-bleed{width:100vw;margin-left:calc(50% - 50vw)}
.mfb-crumbs{font-size:17px;color:var(--ink);padding:20px 0 10px}
.mfb-crumbs a{color:var(--ink);text-decoration:none}
.mfb-crumbs a:hover{text-decoration:underline}
.mfb-crumbs span{margin:0 10px;opacity:.7}
.mfb-crumbs .mfb-crumbs__cur{margin:0;opacity:1}
.mfb-hero{display:grid;grid-template-columns:minmax(300px,480px) 1fr;gap:64px;align-items:start;padding:14px 0 50px}
.mfb-cover{text-align:center}
.mfb-cover img,.mfb-cover .mfb-cover-img{display:block;max-width:100%;height:auto;margin:0 auto;box-shadow:none}
.mfb-series{font-size:17px;letter-spacing:.12em;color:var(--ink);display:flex;align-items:center;gap:18px;margin:6px 0 10px}
.mfb-series::after{content:"";flex:0 1 200px;height:1px;background:linear-gradient(90deg,var(--btn),transparent)}
h1.mfb-title{font-family:var(--serif)!important;font-weight:500!important;font-size:clamp(40px,5.2vw,70px)!important;line-height:1.05!important;color:var(--ink)!important;margin:0 0 14px!important;text-align:left!important}
.mfb-tagline{font-size:29px;line-height:1.3;font-style:italic;color:var(--ink);margin:0 0 20px}
.mfb-summary{font-size:20px;line-height:1.55;color:var(--text)}
.mfb-summary p{margin:0 0 16px}
.mfb-tags{font-size:13px;letter-spacing:.14em;color:var(--btn);margin:6px 0 26px}
.mfb-buy{border:1px solid #d9cce6;background:#f7f2fb;border-radius:6px;padding:20px 24px}
.mfb-buy__row{display:grid;grid-template-columns:minmax(150px,200px) 1fr;gap:26px;align-items:center}
.mfb-buy__price{text-align:center;color:var(--ink)}
.mfb-buy__price strong{display:block;font-size:46px;font-weight:600;line-height:1}
.mfb-buy__price span{display:block;font-size:18px;margin-top:6px;color:var(--text)}
a.mfb-buy__btn{display:flex;align-items:center;justify-content:center;gap:12px;background:var(--btn);color:#fff!important;text-decoration:none!important;font-size:18px;letter-spacing:.1em;padding:16px 20px;border-radius:4px;transition:background .2s}
a.mfb-buy__btn:hover{background:var(--btn-h)}
.mfb-buy__btn svg{width:26px;height:26px;flex:none}
.mfb-buy__retail{display:flex;flex-wrap:wrap;gap:12px}
.mfb-buy__retail--sep{margin-top:18px;padding-top:18px;border-top:1px solid #e1d6ec}
.mfb-buy__retail a{flex:1 1 120px;text-align:center;background:#fff;border:1px solid #d9cce6;border-radius:4px;padding:11px 12px;color:var(--ink)!important;text-decoration:none!important;font-size:17px;font-weight:600;line-height:1.2;transition:border-color .2s,background .2s}
.mfb-buy__retail a:hover{border-color:var(--btn);background:#f3edf9}
.mfb-seriesband{background:var(--lav);padding:30px 0 34px;margin-bottom:0}
.mfb-seriesband .mfb-h2{margin-bottom:24px}
.mfb-strip{list-style:none;margin:0 auto;padding:0 24px;max-width:1240px;display:flex;gap:34px;justify-content:center;overflow-x:auto}
.mfb-strip li{flex:0 0 190px;text-align:center;padding:0}
.mfb-strip a{color:inherit!important;text-decoration:none!important;display:block}
.mfb-strip__img{display:block;padding:5px;border:1px solid transparent;border-radius:3px}
.mfb-strip li.is-current .mfb-strip__img{border-color:var(--btn);background:#fff}
.mfb-strip img{display:block;width:100%;height:auto;box-shadow:none}
.mfb-strip__n,.mfb-strip__t{display:block;font-size:18px;line-height:1.25;color:var(--ink);margin-top:8px}
.mfb-strip__n{margin-top:10px}
.mfb-strip a:hover .mfb-strip__t{text-decoration:underline}
.mfb-two{display:grid;grid-template-columns:1fr 1fr;gap:56px;padding:44px 0 50px}
.mfb-two--solo{grid-template-columns:minmax(0,640px);justify-content:center}
.mfb .mfb-h2{font-family:var(--serif);font-weight:500;font-size:30px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);margin:0 0 20px}
.mfb-excerpt{background:#f7f2fb;border:1px solid #e1d6ec;border-radius:4px;padding:30px 34px;font-size:19px;line-height:1.6;color:var(--text)}
.mfb-excerpt .mbm-book-excerpt-label,.mfb-excerpt .mbm-book-excerpt-after{display:none}
.mfb-excerpt .mbmbl-drop-cap{float:none;font-size:inherit;line-height:inherit;color:inherit;padding:0;margin:0}
.mfb-excerpt a.mbm-book-excerpt-read-more,.mfb-excerpt a.mbm-book-excerpt-collapse{display:block;width:max-content;margin:22px auto 0;background:var(--btn);color:#fff!important;text-decoration:none!important;letter-spacing:.12em;font-size:16px;padding:12px 34px;border-radius:3px}
.mfb-excerpt a.mbm-book-excerpt-read-more:hover,.mfb-excerpt a.mbm-book-excerpt-collapse:hover{background:var(--btn-h)}
.mfb-details{margin:0}
.mfb-details>div{display:grid;grid-template-columns:170px 1fr;gap:16px;padding:9px 0;border-bottom:1px solid #e1d6ec;font-size:19px;line-height:1.4}
.mfb-details dt{margin:0;color:var(--text)}
.mfb-details dd{margin:0;color:var(--ink)}
.mfb-details a{color:var(--ink)}
.mfb-extra{padding:0 0 40px}
.mfb-cta{position:relative;text-align:center;color:#fff;padding:54px 24px 56px;background:var(--mf-hero) center/cover no-repeat;margin-bottom:-1px}
.mfb-cta::before{content:"";position:absolute;inset:0;background:rgba(45,24,84,.42)}
.mfb-cta>*{position:relative}
.mfb-cta h2{font-family:var(--serif);font-weight:500;font-size:40px;color:#fff;margin:0 0 8px}
.mfb-cta p{font-size:20px;color:#fff;margin:0 0 22px}
a.mfb-cta__btn{display:inline-block;background:rgba(126,99,173,.92);color:#fff!important;text-decoration:none!important;letter-spacing:.1em;font-size:16px;padding:14px 30px;border-radius:3px}
a.mfb-cta__btn:hover{background:var(--btn-h)}
@media (max-width:900px){
.mfb-hero{grid-template-columns:1fr;gap:28px}
.mfb-cover{max-width:340px;margin:0 auto}
.mfb-two{grid-template-columns:1fr;gap:34px}
.mfb-buy__row{grid-template-columns:1fr;gap:16px}
.mfb-strip{justify-content:flex-start;gap:22px}
.mfb-strip li{flex-basis:150px}
.mfb-details>div{grid-template-columns:130px 1fr}
}

/* mf-book-page-v2 */
.mfb .mfb-h2--l{display:flex;align-items:center;gap:20px}
.mfb .mfb-h2--l::after{content:'';flex:1;max-width:520px;height:16px;background:url('../images/ornament.png') left center/100% 100% no-repeat}

/* mf-book-page-v3 */
.mfb-excerpt .mbm-book-excerpt-text-hidden{display:none}
.mfb-excerpt.is-open .mbm-book-excerpt-text-hidden{display:block}
.mfb-excerpt.is-open a.mbm-book-excerpt-read-more{display:none!important}
.mfb-excerpt a.mbm-book-excerpt-read-more::after{content:' \2193'}
.mfb-excerpt a.mbm-book-excerpt-collapse::after{content:' \2191'}
.mfb-excerpt .mbm-book-excerpt-text p{margin:0 0 12px}

/* mf-book-page-v4 */
.mfb-strip{justify-content:safe center;scrollbar-width:thin;scrollbar-color:#b9a2e0 transparent;padding-bottom:10px}
@media (max-width:900px){.mfb-strip{justify-content:flex-start}}

/* mf-book-page-v5 */
@media (max-width:900px){.mfb-series{flex-wrap:wrap;gap:6px}.mfb-series::after{display:none}}

/* mf-book-page-v6 */
@media (min-width:901px){.mfb-hero{grid-template-columns:minmax(280px,400px) 1fr;gap:36px}}

/* mf-book-page-v7 */
.mfb-buy__retail{justify-content:center}
.mfb-buy__retail a{flex:0 0 calc((100% - 36px)/4);display:flex;align-items:center;justify-content:center;min-height:46px}
@media (max-width:900px){.mfb-buy__retail a{flex-basis:calc((100% - 12px)/2)}}

/* mf-book-page-v8 */
.mfb-hero{padding:14px 0 26px;align-items:start}
.mfb-tags{margin:18px 0 0}
.mfb-buy__retail a{flex-basis:calc((100% - 24px)/3)}
@media (max-width:900px){.mfb-buy__retail a{flex-basis:calc((100% - 12px)/2)}}
.mfb-zoom{display:flex;align-items:center;justify-content:center;gap:10px;margin:18px auto 0;background:#f7f2fb;border:1px solid #d9cce6;color:var(--ink);font-family:var(--serif);font-size:14px;letter-spacing:.1em;padding:10px 20px;border-radius:3px;cursor:pointer}
.mfb-zoom:hover{background:#efe6f8;border-color:var(--btn)}
.mfb-zoom svg{width:20px;height:20px}
.mfb-about{padding:6px 0 38px}
.mfb-about .mfb-summary{font-size:20px;line-height:1.6;max-width:none}
.mfb-about .mfb-summary p{margin:0 0 16px}
.mfb-lightbox{position:fixed;inset:0;z-index:99999;background:rgba(25,12,45,.88);display:flex;align-items:center;justify-content:center;padding:24px;cursor:zoom-out}
.mfb-lightbox img{max-width:min(92vw,900px);max-height:92vh;width:auto;height:auto;box-shadow:none}

/* mf-book-page-v9 */
@media (min-width:901px){.mfb-hero{grid-template-columns:minmax(300px,500px) 1fr;gap:30px}}
.mfb-cover img,.mfb-cover .mfb-cover-img{width:100%}

/* mf-book-page-v10 */
@media (min-width:901px){.mfb-hero{grid-template-columns:480px minmax(0,1fr);gap:30px}}

/* mf-book-page-v11 */
@media (min-width:901px){.mfb-hero{grid-template-columns:580px minmax(0,1fr);gap:40px}}

/* mf-book-page-v12 */
@media (min-width:901px){.mfb-hero{display:flow-root;grid-template-columns:none}.mfb-cover{float:left;width:580px;margin:0 40px 24px 0}.mfb-buy{display:flow-root}.mfb-about{margin-top:0;padding-top:8px}}

/* mf-book-page-v13 */
@media (min-width:901px){.mfb-about{padding-top:30px}.mfb-about .mfb-h2{margin-top:0}}

/* mf-book-page-v14 revert to grid */
@media (min-width:901px){.mfb-hero{display:grid;grid-template-columns:580px minmax(0,1fr);gap:40px}.mfb-cover{float:none;width:auto;margin:0}.mfb-buy{display:block}.mfb-about{padding-top:0}}
