/* Mama, did you know? theme styles. Colors, fonts, and sizes come from theme.json (editable in Appearance >
   Editor > Styles); this file adds the components. */

:root {
	--mama-radius: 16px;
	--mama-radius-lg: 28px;
	--mama-ink: var(--wp--preset--color--ink, #271d17);
	--mama-muted: var(--wp--preset--color--muted, #62554e);
	--mama-accent: var(--wp--preset--color--terracotta, #ae5a37);
	--mama-accent-dark: var(--wp--preset--color--terracotta-dark, #8f4527);
	--mama-sage: var(--wp--preset--color--sage, #3a714f);
	--mama-sage-soft: var(--wp--preset--color--sage-soft, #e6f3e8);
	--mama-blush: var(--wp--preset--color--blush, #feeae2);
	--mama-cream: var(--wp--preset--color--cream, #fbf6e8);
	--mama-sand: var(--wp--preset--color--sand, #f4ece0);
	--mama-rule: var(--wp--preset--color--rule, #e6ded6);
	--mama-head: var(--wp--preset--font-family--heading, Poppins, system-ui, sans-serif);
	--mama-shadow: 0 1px 2px rgba(39, 29, 23, .06), 0 8px 24px rgba(39, 29, 23, .08);
}

html { scroll-behavior: smooth; scroll-padding-top: 96px; }
body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
img { max-width: 100%; height: auto; }
::selection { background: var(--mama-blush); }
:where(a) { text-underline-offset: .18em; text-decoration-thickness: 1px; }
:where(.wp-site-blocks) :focus-visible { outline: 2px solid var(--mama-ink); outline-offset: 2px; border-radius: 4px; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); white-space: nowrap; }
.mama-placeholder { padding: 18px 20px; border: 1px dashed var(--mama-rule); border-radius: 12px; color: var(--mama-muted); font: 500 13px/1.5 var(--mama-head); background: #fff; }

/* ---------- shared bits */
.mama-eyebrow, .mama-kicker {
	font: 600 .72rem/1.3 var(--mama-head); letter-spacing: .14em; text-transform: uppercase; color: var(--mama-accent); margin: 0 0 .5rem;
}
.mama-btn, .mama-news__form button {
	display: inline-flex; align-items: center; justify-content: center; gap: .4em; background: var(--mama-accent); color: #fff !important;
	font: 600 .9375rem/1 var(--mama-head); padding: .95em 1.6em; border-radius: 999px; text-decoration: none !important; border: 0; cursor: pointer;
	transition: background .15s ease, transform .15s ease; white-space: nowrap;
}
.mama-btn:hover, .mama-news__form button:hover { background: var(--mama-accent-dark); transform: translateY(-1px); }
.mama-btn--soon { background: var(--mama-sand); color: var(--mama-muted) !important; cursor: default; }
.mama-btn--soon:hover { background: var(--mama-sand); transform: none; }
.mama-link { font: 600 .875rem var(--mama-head); color: var(--mama-ink); text-decoration: none; border-bottom: 1.5px solid var(--mama-accent); padding-bottom: 1px; }
.mama-link:hover { color: var(--mama-accent); }
.wp-block-button.is-style-mama-ghost .wp-block-button__link { background: transparent; color: var(--mama-ink); box-shadow: inset 0 0 0 1.5px var(--mama-ink); }
.wp-block-button.is-style-mama-ghost .wp-block-button__link:hover { background: var(--mama-ink); color: #fff; }
.mama-checks, ul.is-style-mama-checks { list-style: none; padding-left: 0; margin: .75rem 0; }
.mama-checks li, ul.is-style-mama-checks li { position: relative; padding-left: 1.7em; margin: .35em 0; }
.mama-checks li::before, ul.is-style-mama-checks li::before {
	content: ""; position: absolute; left: 0; top: .32em; width: 1.05em; height: 1.05em; border-radius: 50%;
	background: var(--mama-sage-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.4l2.5 2.4L12 5.4' fill='none' stroke='%233a714f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/80% no-repeat;
}
ol.is-style-mama-steps { list-style: none; counter-reset: step; padding-left: 0; }
ol.is-style-mama-steps > li { counter-increment: step; position: relative; padding-left: 2.6em; margin: .9em 0; }
ol.is-style-mama-steps > li::before {
	content: counter(step); position: absolute; left: 0; top: .05em; width: 1.75em; height: 1.75em; border-radius: 50%;
	background: var(--mama-accent); color: #fff; font: 600 .85rem/1.75em var(--mama-head); text-align: center;
}
.wp-block-image.is-style-mama-soft img { border-radius: var(--mama-radius); }

/* ---------- header */
.mama-header { position: sticky; top: 0; z-index: 50; background: rgba(255, 255, 255, .94); backdrop-filter: saturate(1.4) blur(10px); border-bottom: 1px solid var(--mama-rule); }
.admin-bar .mama-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .mama-header { top: 46px; } }
.mama-header .wp-block-site-title a { white-space: nowrap; }
.mama-header .wp-block-navigation a:hover { color: var(--mama-accent); }
.mama-header .wp-block-navigation .wp-block-navigation__submenu-container { border: 1px solid var(--mama-rule) !important; border-radius: 12px; padding: 6px; box-shadow: var(--mama-shadow); min-width: 220px; }
.mama-header .wp-block-navigation .wp-block-navigation__submenu-container a { border-radius: 8px; padding: 8px 12px; }
.mama-header .wp-block-navigation .wp-block-navigation__submenu-container a:hover { background: var(--mama-cream); }
.mama-header .wp-block-search__button { background: transparent; color: var(--mama-ink); border: 0; padding: 6px; }
.mama-header .wp-block-search__inside-wrapper { border-radius: 999px; }
.mama-header .wp-block-buttons .wp-block-button__link { padding: .7em 1.2em; }
.mama-topbar { background: var(--mama-ink); color: #fff; font: 500 .8125rem/1.4 var(--mama-head); text-align: center; }
.mama-topbar a { color: #fff; }
@media (max-width: 900px) { .mama-header .mama-header__cta { display: none; } }

/* ---------- hero */
.mama-hero { background: var(--mama-cream); overflow: hidden; }
.mama-hero h1 { font-size: clamp(2.3rem, 5.2vw, 4rem); line-height: 1.06; letter-spacing: -.025em; }
.mama-hero h1 em { font-family: var(--wp--preset--font-family--body); font-weight: 500; color: var(--mama-accent); }
.mama-hero .wp-block-search__inside-wrapper { background: #fff; border: 1px solid var(--mama-rule) !important; border-radius: 999px; padding: 6px !important; box-shadow: var(--mama-shadow); }
.mama-hero .wp-block-search__input { border: 0; padding: 0 18px; font: 400 1rem var(--mama-head); background: transparent; min-height: 48px; }
.mama-hero .wp-block-search__input:focus { outline: none; }
.mama-hero .wp-block-search__button { border-radius: 999px; margin: 0; padding: 0 1.5em; }
.mama-hero__art img { mix-blend-mode: multiply; }
.mama-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.mama-chip { display: inline-block; padding: .55em 1em; border-radius: 999px; background: #fff; border: 1px solid var(--mama-rule); color: var(--mama-ink); font: 500 .8125rem/1 var(--mama-head); text-decoration: none; transition: all .15s; }
.mama-chip:hover { border-color: var(--mama-accent); color: var(--mama-accent); }

/* ---------- trust strip */
.mama-trust { border-bottom: 1px solid var(--mama-rule); }
.mama-trust p { font: 500 .875rem/1.45 var(--mama-head); color: var(--mama-muted); margin: 0; }
.mama-trust strong { color: var(--mama-ink); display: block; font-weight: 600; }
.mama-trust .wp-block-column { position: relative; padding-left: 34px; }
.mama-trust .wp-block-column::before {
	content: ""; position: absolute; left: 0; top: 2px; width: 24px; height: 24px; border-radius: 50%;
	background: var(--mama-sage-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.4l2.5 2.4L12 5.4' fill='none' stroke='%233a714f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/70% no-repeat;
}

/* ---------- section heads */
.mama-section-head { align-items: end !important; }
.mama-section-head h2 { margin: 0; }
.mama-section-head .mama-eyebrow { margin-bottom: .4rem; }

/* ---------- "Did you know?" cards and callouts */
.mama-facts > .wp-block-column { border-radius: var(--mama-radius-lg); padding: 28px; }
.mama-facts > .wp-block-column:nth-child(3n+1) { background: var(--mama-blush); }
.mama-facts > .wp-block-column:nth-child(3n+2) { background: var(--mama-sage-soft); }
.mama-facts > .wp-block-column:nth-child(3n+3) { background: var(--mama-cream); }
.mama-fact__q { font: italic 600 1.05rem/1.3 var(--wp--preset--font-family--body); color: var(--mama-accent); margin: 0 0 .6rem; }
.mama-fact__big { font: 700 clamp(1.6rem, 3vw, 2.2rem)/1.05 var(--mama-head); color: var(--mama-ink); margin: 0 0 .5rem; letter-spacing: -.02em; }
.mama-fact__text { font-size: .98rem; line-height: 1.6; margin: 0 0 .9rem; }
.mama-fact__src { font: 500 .75rem/1.4 var(--mama-head); color: var(--mama-muted); margin: 0; }

.wp-block-group.is-style-mama-dyk { background: var(--mama-blush); border-radius: var(--mama-radius); padding: 1.4rem 1.6rem; margin-block: 2rem; }
.wp-block-group.is-style-mama-dyk::before { content: "Did you know?"; display: block; font: italic 600 1.05rem var(--wp--preset--font-family--body); color: var(--mama-accent); margin-bottom: .35rem; }
.wp-block-group.is-style-mama-dyk > * { margin-block: .4rem; }

/* ---------- age cards */
.mama-ages { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.mama-age { position: relative; display: flex; flex-direction: column; background: var(--mama-cream); border-radius: var(--mama-radius-lg); overflow: hidden; text-decoration: none; color: var(--mama-ink); transition: transform .2s ease, box-shadow .2s ease; padding-bottom: 20px; }
.mama-age:hover { transform: translateY(-3px); box-shadow: var(--mama-shadow); }
.mama-age img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; mix-blend-mode: multiply; }
.mama-age__label { position: absolute; top: 14px; left: 14px; background: #fff; border-radius: 999px; padding: .45em .9em; font: 600 .75rem/1 var(--mama-head); color: var(--mama-accent); }
.mama-age__name { font: 600 1.1rem/1.25 var(--mama-head); padding: 4px 20px 2px; }
.mama-age__desc { font-size: .9rem; line-height: 1.5; color: var(--mama-muted); padding: 0 20px; }
@media (max-width: 900px) { .mama-ages { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .mama-ages { grid-template-columns: 1fr; } }

/* ---------- article cards */
.mama-posts { display: grid; grid-template-columns: repeat(var(--cols, 3), 1fr); gap: 28px 24px; }
.mama-card { display: flex; flex-direction: column; }
.mama-card__img { display: block; border-radius: var(--mama-radius); overflow: hidden; background: var(--mama-cream); aspect-ratio: 16 / 10; }
.mama-card__img img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.mama-card:hover .mama-card__img img { transform: scale(1.035); }
.mama-card__body { padding-top: 14px; }
.mama-card__body .mama-eyebrow { margin-bottom: .35rem; }
.mama-card__title { font: 600 1.14rem/1.3 var(--mama-head); margin: 0 0 .4rem; letter-spacing: -.01em; }
.mama-card__title a { color: var(--mama-ink); text-decoration: none; background: linear-gradient(currentColor, currentColor) 0 100% / 0 1.5px no-repeat; transition: background-size .25s; }
.mama-card__title a:hover { background-size: 100% 1.5px; }
.mama-card__excerpt { font-size: .94rem; line-height: 1.55; color: var(--mama-muted); margin: 0 0 .5rem; }
.mama-card__meta { font: 500 .75rem var(--mama-head); color: var(--mama-muted); margin: 0; }
.mama-posts.is-list { grid-template-columns: 1fr; gap: 20px; }
.mama-posts.is-list .mama-card { flex-direction: row; gap: 20px; align-items: center; }
.mama-posts.is-list .mama-card__img { flex: 0 0 34%; }
.mama-posts.is-list .mama-card__body { padding-top: 0; }
.mama-posts.is-feature { grid-template-columns: 1.4fr 1fr; grid-auto-flow: dense; }
.mama-posts.is-feature .mama-card:first-child { grid-row: span 3; }
.mama-posts.is-feature .mama-card:first-child .mama-card__title { font-size: clamp(1.4rem, 2.4vw, 1.9rem); }
.mama-posts.is-feature .mama-card:not(:first-child) { flex-direction: row; gap: 16px; align-items: center; }
.mama-posts.is-feature .mama-card:not(:first-child) .mama-card__img { flex: 0 0 38%; }
.mama-posts.is-feature .mama-card:not(:first-child) .mama-card__body { padding-top: 0; }
.mama-posts.is-feature .mama-card:not(:first-child) .mama-card__excerpt { display: none; }
@media (max-width: 900px) {
	.mama-posts { grid-template-columns: repeat(min(var(--cols, 3), 2), 1fr); }
	.mama-posts.is-feature { grid-template-columns: 1fr; }
	.mama-posts.is-feature .mama-card:first-child { grid-row: auto; }
}
@media (max-width: 600px) {
	.mama-posts { grid-template-columns: 1fr; }
	.mama-posts.is-list .mama-card, .mama-posts.is-feature .mama-card:not(:first-child) { flex-direction: column; align-items: stretch; }
	.mama-posts.is-list .mama-card__img { flex: none; }
}

.mama-posts__title { margin: 0 0 var(--wp--preset--spacing--30); }

/* core query loop cards (archives) */
.mama-query .wp-block-post-template { gap: 32px 24px; }
.mama-query .wp-block-post-featured-image { margin-bottom: 14px; }
.mama-query .wp-block-post-featured-image img { border-radius: var(--mama-radius); aspect-ratio: 16 / 10; object-fit: cover; }
.mama-query .wp-block-post-title { font-size: 1.14rem; line-height: 1.3; margin: .35rem 0 .4rem; }
.mama-query .wp-block-post-title a:hover { color: var(--mama-accent); }

/* ---------- books */
.mama-books__grid { display: grid; grid-template-columns: repeat(var(--cols, 3), 1fr); gap: 24px; }
.mama-book { position: relative; display: flex; flex-direction: column; background: #fff; border: 1px solid var(--mama-rule); border-radius: var(--mama-radius-lg); overflow: hidden; transition: box-shadow .2s, transform .2s; }
.mama-book:hover { box-shadow: var(--mama-shadow); transform: translateY(-2px); }
.mama-book__cover { display: flex; align-items: center; justify-content: center; background: var(--mama-cream); padding: 28px 28px 0; aspect-ratio: 4 / 3.4; overflow: hidden; }
.mama-book__cover img { width: 66%; height: auto; box-shadow: 0 2px 4px rgba(39, 29, 23, .08), 0 18px 34px rgba(39, 29, 23, .16); border-radius: 3px 6px 6px 3px; transform: translateY(8%); transition: transform .3s ease; }
.mama-book:hover .mama-book__cover img { transform: translateY(4%) rotate(-1deg); }
.mama-book__body { display: flex; flex-direction: column; flex: 1; padding: 22px 24px 24px; }
.mama-book__title { font: 700 1.35rem/1.2 var(--mama-head); margin: 0 0 .25rem; letter-spacing: -.015em; }
.mama-book__title a { color: var(--mama-ink); text-decoration: none; }
.mama-book__sub { font-style: italic; color: var(--mama-muted); font-size: .95rem; line-height: 1.45; margin: 0 0 .5rem; }
.mama-book .mama-checks { font-size: .92rem; line-height: 1.45; margin-bottom: 1rem; }
.mama-book__buy { margin-top: auto; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; padding-top: 14px; border-top: 1px solid var(--mama-rule); }
.mama-book__actions { display: flex; align-items: center; gap: 16px; }
.mama-badge { position: absolute; top: 16px; right: 16px; background: var(--mama-ink); color: #fff; font: 600 .7rem/1 var(--mama-head); letter-spacing: .06em; text-transform: uppercase; padding: .6em .9em; border-radius: 999px; }
.mama-price { font-family: var(--mama-head); display: inline-flex; align-items: baseline; gap: 8px; }
.mama-price__now { font-weight: 700; font-size: 1.5rem; color: var(--mama-ink); }
.mama-price__was { color: var(--mama-muted); font-size: 1rem; }
.mama-book.is-bundle { margin-top: 24px; display: grid; grid-template-columns: 1.1fr 1fr; background: var(--mama-ink); border: 0; color: #fff; }
.mama-book.is-bundle .mama-book__cover { aspect-ratio: auto; padding: 0; background: var(--mama-cream); }
.mama-book.is-bundle .mama-book__cover img { width: 100%; height: 100%; object-fit: cover; box-shadow: none; border-radius: 0; transform: none; }
.mama-book.is-bundle .mama-book__body { padding: clamp(24px, 4vw, 48px); justify-content: center; }
.mama-book.is-bundle .mama-book__title a, .mama-book.is-bundle .mama-price__now { color: #fff; font-size: clamp(1.5rem, 2.6vw, 2.1rem); }
.mama-book.is-bundle .mama-book__sub, .mama-book.is-bundle .mama-price__was { color: rgba(255, 255, 255, .72); }
.mama-book.is-bundle .mama-eyebrow { color: #f3b9a0; }
.mama-book.is-bundle .mama-badge { background: var(--mama-accent); left: 16px; right: auto; }
.mama-book.is-bundle .mama-book__buy { border-top-color: rgba(255, 255, 255, .16); }
.mama-book.is-bundle .mama-link { color: #fff; }
.mama-book.is-bundle .mama-checks li::before { background-color: rgba(255, 255, 255, .14); }
@media (max-width: 900px) { .mama-books__grid { grid-template-columns: 1fr 1fr; } .mama-book.is-bundle { grid-template-columns: 1fr; } }
@media (max-width: 600px) { .mama-books__grid { grid-template-columns: 1fr; } }

/* buy box on book pages */
.mama-buybox { background: #fff; border: 1px solid var(--mama-rule); border-radius: var(--mama-radius-lg); padding: 24px; box-shadow: var(--mama-shadow); }
.mama-buybox__price { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; margin-bottom: 14px; }
.mama-buybox__price .mama-price__now { font-size: 2.2rem; }
.mama-save { background: var(--mama-sage-soft); color: var(--mama-sage); font: 600 .75rem var(--mama-head); padding: .45em .8em; border-radius: 999px; }
.mama-buybox .mama-btn { width: 100%; font-size: 1rem; padding: 1.05em; }
.mama-buybox__facts { font: 500 .8rem/1.5 var(--mama-head); color: var(--mama-muted); text-align: center; margin: .8rem 0 0; }
.mama-buybox .mama-checks { font-size: .95rem; border-top: 1px solid var(--mama-rule); padding-top: 12px; margin-top: 14px; }
.mama-buybox__secure { font: 400 .75rem/1.5 var(--mama-head); color: var(--mama-muted); margin: .6rem 0 0; }
.mama-book-hero__cover img { box-shadow: 0 4px 8px rgba(39, 29, 23, .08), 0 30px 60px rgba(39, 29, 23, .18); border-radius: 4px 8px 8px 4px; }

/* book callout in articles */
.mama-bookcta { display: grid; grid-template-columns: 150px 1fr; gap: 24px; align-items: center; background: var(--mama-cream); border-radius: var(--mama-radius-lg); padding: 24px; margin-block: 2.5rem; }
.mama-bookcta__cover img { display: block; width: 100%; box-shadow: 0 10px 24px rgba(39, 29, 23, .16); border-radius: 2px 5px 5px 2px; }
.mama-bookcta__title { font: 700 1.3rem/1.2 var(--mama-head); margin: 0 0 .3rem; }
.mama-bookcta__title a { color: var(--mama-ink); text-decoration: none; }
.mama-bookcta__text { font-size: .95rem; line-height: 1.55; margin: 0 0 .9rem; color: var(--mama-muted); }
.mama-bookcta__buy { display: flex; align-items: center; flex-wrap: wrap; gap: 14px; }
.mama-bookcta.is-compact { grid-template-columns: 1fr; padding: 20px; gap: 14px; margin-block: 0; }
.mama-bookcta.is-compact .mama-bookcta__cover { max-width: 120px; }
.mama-bookcta.is-compact .mama-bookcta__title { font-size: 1.08rem; }
.mama-bookcta.is-compact .mama-btn { width: 100%; }
@media (max-width: 600px) { .mama-bookcta { grid-template-columns: 96px 1fr; gap: 16px; padding: 18px; } }

/* ---------- article */
.mama-crumbs ol { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px; font: 500 .8rem/1.4 var(--mama-head); color: var(--mama-muted); }
.mama-crumbs li + li::before { content: "›"; margin-right: 6px; color: var(--mama-rule); }
.mama-crumbs a { color: var(--mama-muted); text-decoration: none; }
.mama-crumbs a:hover { color: var(--mama-accent); }
.mama-crumbs [aria-current] { color: var(--mama-ink); max-width: 36ch; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mama-article-head .wp-block-post-title { font-size: clamp(2rem, 4.2vw, 3rem); line-height: 1.12; letter-spacing: -.02em; }
.mama-dek, .mama-article-head .wp-block-post-excerpt__excerpt { font-size: 1.2rem; line-height: 1.55; color: var(--mama-muted); }
.mama-meta { display: flex; align-items: center; gap: 12px; font-family: var(--mama-head); }
.mama-meta__avatar { border-radius: 50%; }
.mama-meta p { margin: 0; }
.mama-meta__by { font-size: .875rem; font-weight: 500; }
.mama-meta__by a { color: var(--mama-ink); text-decoration: none; font-weight: 600; }
.mama-meta__dates { font-size: .8rem; color: var(--mama-muted); }
.mama-meta__sep { color: var(--mama-rule); margin: 0 2px; }
.mama-verified { display: inline-flex; align-items: center; gap: 5px; color: var(--mama-sage); font-weight: 600; }
.mama-verified::before { content: ""; width: 14px; height: 14px; border-radius: 50%; background: var(--mama-sage) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.4l2.5 2.4L12 5.4' fill='none' stroke='white' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/80% no-repeat; }
.mama-article-hero img { border-radius: var(--mama-radius-lg); aspect-ratio: 16 / 9; object-fit: cover; }

.mama-article-body { font-size: 1.125rem; }
.mama-article-body > * + * { margin-top: 1.25em; }
.mama-article-body h2 { scroll-margin-top: 100px; }
.mama-article-body h2 + p, .mama-article-body h3 + p { margin-top: .6em; }
.mama-article-body li + li { margin-top: .35em; }
.mama-article-body table { font-size: .9rem; }
.mama-article-body .wp-block-table { overflow-x: auto; }
.wp-block-table.is-style-mama-clean table, .mama-article-body .wp-block-table table { border-collapse: collapse; width: 100%; }
.wp-block-table.is-style-mama-clean th, .wp-block-table.is-style-mama-clean td, .mama-article-body .wp-block-table th, .mama-article-body .wp-block-table td { border: 0; border-bottom: 1px solid var(--mama-rule); padding: .7em .8em; text-align: left; vertical-align: top; }
.wp-block-table.is-style-mama-clean thead th, .mama-article-body .wp-block-table thead th { border-bottom: 2px solid var(--mama-ink); font-size: .75rem; text-transform: uppercase; letter-spacing: .08em; }
.mama-article-body .wp-block-table tbody tr:nth-child(even) { background: #fdfaf4; }

.mama-sidebar { position: sticky; top: 96px; align-self: flex-start; }
.mama-toc.is-sidebar { border-left: 2px solid var(--mama-rule); padding-left: 16px; margin-bottom: 28px; }
.mama-toc__title { font: 600 .72rem var(--mama-head); letter-spacing: .14em; text-transform: uppercase; color: var(--mama-muted); margin: 0 0 .6rem; }
.mama-toc ol { list-style: none; margin: 0; padding: 0; }
.mama-toc li { margin: 0; }
.mama-toc a { display: block; padding: 6px 0; font: 500 .875rem/1.4 var(--mama-head); color: var(--mama-muted); text-decoration: none; }
.mama-toc.is-sidebar a { margin-left: -18px; padding-left: 16px; border-left: 2px solid transparent; }
.mama-toc a:hover, .mama-toc a.is-active { color: var(--mama-ink); }
.mama-toc.is-sidebar a.is-active { border-left-color: var(--mama-accent); }
.mama-toc.is-inline { display: none; background: var(--mama-cream); border-radius: 14px; padding: 12px 18px; }
.mama-toc.is-inline summary { cursor: pointer; font: 600 .9rem var(--mama-head); }
.mama-toc.is-inline summary span { color: var(--mama-muted); font-weight: 500; }
.mama-toc.is-inline ol { padding: 6px 0 2px; }
@media (max-width: 781px) {
	.mama-sidebar { position: static; }
	.mama-sidebar .mama-toc { display: none; }
	.mama-toc.is-inline { display: block; }
}

/* article boxes (block styles) */
.wp-block-group.is-style-mama-takeaways { background: var(--mama-sage-soft); border-radius: var(--mama-radius); padding: 1.4rem 1.6rem; }
.wp-block-group.is-style-mama-takeaways > h2, .wp-block-group.is-style-mama-takeaways > p:first-child { font: 600 .78rem var(--mama-head); letter-spacing: .14em; text-transform: uppercase; color: var(--mama-sage); margin: 0 0 .4rem; }
.wp-block-group.is-style-mama-takeaways ul { margin: 0; padding-left: 0; list-style: none; font-size: 1.02rem; }
.wp-block-group.is-style-mama-takeaways li { position: relative; padding-left: 1.5em; margin: .5em 0 0; }
.wp-block-group.is-style-mama-takeaways li::before { content: ""; position: absolute; left: .2em; top: .62em; width: .5em; height: .5em; border-radius: 50%; background: var(--mama-sage); }

.wp-block-group[class*="is-style-evidence-"] { border-radius: var(--mama-radius); padding: 1.3rem 1.5rem; background: #fff; border: 1px solid var(--mama-rule); border-left-width: 5px; }
.wp-block-group[class*="is-style-evidence-"]::before { display: inline-block; font: 700 .68rem/1 var(--mama-head); letter-spacing: .12em; text-transform: uppercase; padding: .55em .85em; border-radius: 999px; margin-bottom: .6rem; }
.wp-block-group[class*="is-style-evidence-"] > * { margin-block: .45rem; }
.wp-block-group.is-style-evidence-strong { border-left-color: var(--mama-sage); }
.wp-block-group.is-style-evidence-strong::before { content: "Evidence: strong"; background: var(--mama-sage-soft); color: var(--mama-sage); }
.wp-block-group.is-style-evidence-moderate { border-left-color: #c9933a; }
.wp-block-group.is-style-evidence-moderate::before { content: "Evidence: moderate"; background: #f8eedb; color: #8a6420; }
.wp-block-group.is-style-evidence-limited { border-left-color: #a8a09a; }
.wp-block-group.is-style-evidence-limited::before { content: "Evidence: limited"; background: #f0ece8; color: var(--mama-muted); }

.wp-block-group.is-style-mama-safety { background: #fff5f0; border: 1px solid #f3cfc0; border-radius: var(--mama-radius); padding: 1.2rem 1.5rem; }
.wp-block-group.is-style-mama-safety::before { content: "Safety"; display: block; font: 700 .72rem var(--mama-head); letter-spacing: .14em; text-transform: uppercase; color: var(--mama-accent); margin-bottom: .3rem; }
.wp-block-group.is-style-mama-safety > * { margin-block: .4rem; }

.wp-block-group.is-style-mama-sources { border-top: 1px solid var(--mama-rule); padding-top: 1.2rem; margin-top: 3rem; font-size: .875rem; line-height: 1.55; color: var(--mama-muted); }
.wp-block-group.is-style-mama-sources h2, .wp-block-group.is-style-mama-sources h3 { font-size: .8rem; letter-spacing: .14em; text-transform: uppercase; color: var(--mama-ink); margin: 0 0 .5rem; }
.wp-block-group.is-style-mama-sources ol { padding-left: 1.3em; }
.wp-block-group.is-style-mama-sources li + li { margin-top: .4em; }
.wp-block-group.is-style-mama-sources a { color: var(--mama-muted); word-break: break-word; }

.wp-block-group.is-style-mama-card { background: #fff; border: 1px solid var(--mama-rule); border-radius: var(--mama-radius-lg); padding: clamp(20px, 3vw, 32px); }

.wp-block-group.is-style-mama-doctor { background: #fff; border: 1.5px solid var(--mama-accent); border-radius: var(--mama-radius); padding: 1.2rem 1.5rem; }
.wp-block-group.is-style-mama-doctor::before { content: "When to call your doctor"; display: block; font: 700 .72rem var(--mama-head); letter-spacing: .14em; text-transform: uppercase; color: var(--mama-accent); margin-bottom: .3rem; }
.wp-block-group.is-style-mama-doctor > * { margin-block: .4rem; }
.wp-block-group.is-style-mama-updates { font: 400 .85rem/1.55 var(--mama-head); color: var(--mama-muted); background: #faf8f5; border-radius: 12px; padding: 1rem 1.3rem; }
.wp-block-group.is-style-mama-updates::before { content: "Update history"; display: block; font: 700 .7rem var(--mama-head); letter-spacing: .14em; text-transform: uppercase; color: var(--mama-ink); margin-bottom: .2rem; }
.wp-block-group.is-style-mama-updates ul { margin: .3rem 0 0; padding-left: 1.1em; }

.mama-prevnext { display: flex; justify-content: space-between; gap: 16px; }
.mama-prevnext a { display: flex; flex-direction: column; gap: 2px; padding: 14px 18px; border: 1px solid var(--mama-rule); border-radius: 14px; text-decoration: none; color: var(--mama-ink); font: 600 1rem var(--mama-head); min-width: 40%; }
.mama-prevnext a span { font-size: .75rem; font-weight: 500; color: var(--mama-muted); }
.mama-prevnext__next { text-align: right; }
.mama-prevnext a:hover { border-color: var(--mama-accent); }

/* FAQ */
.mama-faq .wp-block-details, .wp-block-details { border-bottom: 1px solid var(--mama-rule); }
.wp-block-details summary { cursor: pointer; list-style: none; position: relative; padding-right: 2.2em; font: 600 1.05rem/1.4 var(--mama-head); color: var(--mama-ink); }
.wp-block-details summary::-webkit-details-marker { display: none; }
.wp-block-details summary::after { content: "+"; position: absolute; right: 0; top: -.1em; width: 1.4em; height: 1.4em; border-radius: 50%; background: var(--mama-cream); color: var(--mama-accent); font: 500 1.2rem/1.4em var(--mama-head); text-align: center; transition: transform .2s; }
.wp-block-details[open] summary::after { transform: rotate(45deg); }
.wp-block-details > :not(summary) { margin-top: .7rem; }

/* author box */
.mama-author { display: flex; gap: 18px; align-items: flex-start; background: var(--mama-cream); border-radius: var(--mama-radius-lg); padding: 24px; }
.mama-author img { border-radius: 50%; flex: none; }
.mama-author p { margin: 0; }
.mama-author__name { font: 700 1.1rem var(--mama-head); margin: 0 0 .3rem !important; }
.mama-author__bio { font-size: .95rem; line-height: 1.55; }
.mama-author__links { margin-top: .7rem !important; display: flex; gap: 18px; font: 600 .85rem var(--mama-head); }
.mama-disclaimer { font: 400 .8rem/1.55 var(--mama-head); color: var(--mama-muted); border-top: 1px solid var(--mama-rule); padding-top: 1rem; }

.mama-progress { position: fixed; top: 0; left: 0; right: 0; height: 3px; background: var(--mama-accent); transform-origin: 0 50%; transform: scaleX(0); z-index: 100; }
.admin-bar .mama-progress { top: 32px; }

/* ---------- method / how we research */
.mama-steps-row > .wp-block-column { border-top: 2px solid var(--mama-ink); padding-top: 18px; }
.mama-step-num { font: 700 2.4rem/1 var(--mama-head); color: var(--mama-accent); margin: 0 0 .5rem; }
.mama-grades { display: flex; flex-wrap: wrap; gap: 10px; }
.mama-grade { font: 600 .75rem/1 var(--mama-head); padding: .65em 1em; border-radius: 999px; }
.mama-grade.is-strong { background: var(--mama-sage-soft); color: var(--mama-sage); }
.mama-grade.is-moderate { background: #f8eedb; color: #8a6420; }
.mama-grade.is-limited { background: #f0ece8; color: var(--mama-muted); }

/* ---------- newsletter */
.mama-news { text-align: center; max-width: 620px; margin-inline: auto; }
.mama-news__title { font: 700 clamp(1.6rem, 3vw, 2.2rem)/1.15 var(--mama-head); letter-spacing: -.02em; margin: 0 0 .5rem; color: var(--mama-ink); }
.mama-news__text { color: var(--mama-muted); margin: 0 0 1.2rem; }
.mama-news__form { display: flex; gap: 8px; background: #fff; padding: 6px; border-radius: 999px; border: 1px solid var(--mama-rule); box-shadow: var(--mama-shadow); max-width: 500px; margin: 0 auto; }
.mama-news__form input { flex: 1; min-width: 0; border: 0; background: transparent; padding: 0 18px; font: 400 1rem var(--mama-head); color: var(--mama-ink); }
.mama-news__form input:focus { outline: none; }
.mama-band { background: var(--mama-blush); }

/* ---------- footer */
.mama-footer { background: var(--mama-ink); color: rgba(255, 255, 255, .78); font-family: var(--mama-head); font-size: .875rem; }
.mama-footer a { color: rgba(255, 255, 255, .86); text-decoration: none; }
.mama-footer a:hover { color: #fff; text-decoration: underline; }
.mama-footer h2, .mama-footer h3, .mama-footer .wp-block-heading { color: #fff; font-size: .75rem; letter-spacing: .14em; text-transform: uppercase; margin: 0 0 .8rem; }
.mama-footer .wp-block-site-title a { color: #f3b9a0; }
.mama-footer ul { list-style: none; padding: 0; margin: 0; }
.mama-footer li { margin: .45em 0; }
.mama-footer .mama-footer__legal { border-top: 1px solid rgba(255, 255, 255, .12); font-size: .78rem; color: rgba(255, 255, 255, .6); }
.mama-footer .mama-footer__legal p { margin: 0; }

/* ---------- archive headers */
.mama-archive-head { background: var(--mama-cream); }
.mama-archive-head .wp-block-query-title { font-size: clamp(2rem, 4vw, 3rem); letter-spacing: -.02em; margin: 0; }
.mama-archive-head .wp-block-term-description { color: var(--mama-muted); font-size: 1.1rem; max-width: 60ch; }
.mama-archive-head .wp-block-term-description p { margin: 0; }
.wp-block-query-pagination { font-family: var(--mama-head); gap: 6px; }
.wp-block-query-pagination a, .wp-block-query-pagination .current { display: inline-block; min-width: 2.4em; padding: .5em .8em; text-align: center; border-radius: 999px; text-decoration: none; color: var(--mama-ink); }
.wp-block-query-pagination .current { background: var(--mama-ink); color: #fff; }
.wp-block-query-pagination a:hover { background: var(--mama-cream); }

/* search form on archive/search pages */
.mama-search .wp-block-search__inside-wrapper { border: 1px solid var(--mama-rule) !important; border-radius: 999px; padding: 5px !important; background: #fff; }
.mama-search .wp-block-search__input { border: 0; padding: 0 16px; background: transparent; font-family: var(--mama-head); }
.mama-search .wp-block-search__button { border-radius: 999px; margin: 0; }

/* comparison table on the books page */
.mama-compare table { font-family: var(--mama-head); font-size: .9rem; }
.mama-compare td:not(:first-child), .mama-compare th:not(:first-child) { text-align: center !important; }

/* reduce motion */
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
}

/* =====================================================================
   v1.1 redesign: editorial, calm, fewer boxes. Fraunces + Inter.
   ===================================================================== */
:root {
	--mama-head: var(--wp--preset--font-family--body, Inter, system-ui, sans-serif);
	--mama-serif: var(--wp--preset--font-family--heading, Fraunces, Georgia, serif);
	--mama-paper: var(--wp--preset--color--paper, #fffcf7);
	--mama-line: #efe7dc;
}
h1, h2, h3, .wp-block-heading, .wp-block-post-title { font-variation-settings: "SOFT" 50, "WONK" 0; }
.mama-sub { color: var(--mama-muted); font-size: 1.05rem; max-width: 56ch; margin-top: .5rem; }

/* header */
.mama-header { background: rgba(255, 252, 247, .92); border-bottom: 1px solid var(--mama-line); }
.mama-header .wp-block-site-title a { display: inline-flex; align-items: center; gap: 10px; }
.mama-header .wp-block-site-title a::before {
	content: "?"; display: inline-grid; place-items: center; width: 30px; height: 30px; flex: none;
	border-radius: 50% 50% 50% 4px; background: var(--mama-accent); color: #fff;
	font: 600 17px/1 var(--mama-serif); font-style: normal;
}
.mama-header .wp-block-navigation-item__content { color: var(--mama-ink); }
.mama-header .wp-block-navigation-item__content:hover { color: var(--mama-accent); }
.mama-header .mama-nav-cta > a {
	background: var(--mama-ink); color: #fff !important; padding: .55em 1.1em !important; border-radius: 999px;
}
.mama-header .mama-nav-cta > a:hover { background: var(--mama-accent); }
.mama-header .wp-block-search__button { border-radius: 50%; width: 40px; height: 40px; padding: 0; display: grid; place-items: center; }
.mama-header .wp-block-search__button:hover { background: var(--mama-cream); }
@media (max-width: 600px) {
	.mama-header .wp-block-site-title { font-size: 1.15rem !important; }
	.mama-header .wp-block-site-title a::before { width: 26px; height: 26px; font-size: 15px; }
}
.wp-block-navigation__responsive-container.is-menu-open { background: var(--mama-paper) !important; padding: 28px !important; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content { font-size: 1.25rem; padding: 6px 0; }

/* hero: "Mama, did you know...?" */
.mama-hero { background: radial-gradient(1200px 500px at 50% 0%, #fbf1e3 0%, var(--mama-paper) 70%); text-align: center; }
.mama-dyk__lead { font: italic 500 clamp(1.25rem, 2.4vw, 1.6rem)/1.2 var(--mama-serif); color: var(--mama-accent); margin: 0 0 .8rem; }
.mama-dyk__lead::after { content: "\2026"; }
.mama-dyk__facts { list-style: none; margin: 0 auto; padding: 0; display: grid; max-width: 920px; }
.mama-dyk__facts li { grid-area: 1 / 1; align-self: center; opacity: 0; visibility: hidden; transform: translateY(10px); transition: opacity .5s ease, transform .5s ease, visibility 0s linear .5s; }
.mama-dyk__facts li.is-active { opacity: 1; visibility: visible; transform: none; transition: opacity .5s ease .25s, transform .5s ease .25s, visibility 0s; }
.mama-dyk__facts a {
	display: inline-block; text-wrap: balance; font: 500 clamp(2rem, 4.8vw, 3.5rem)/1.1 var(--mama-serif); letter-spacing: -.025em; color: var(--mama-ink);
	text-decoration: none; font-variation-settings: "SOFT" 60;
}
.mama-dyk__facts a:hover { color: var(--mama-accent-dark); }
.mama-dyk__hint { color: var(--mama-muted); font-size: .9rem; margin: 1.2rem 0 0; }
.mama-picker__title { font-size: clamp(1.3rem, 2.4vw, 1.6rem) !important; margin: 0 0 1.4rem !important; }
.mama-circles { display: flex; justify-content: center; gap: clamp(10px, 2vw, 22px); flex-wrap: wrap; }
.mama-circle { display: flex; flex-direction: column; align-items: center; gap: 10px; text-decoration: none; color: var(--mama-ink); width: 112px; }
.mama-circle__img { width: 104px; height: 104px; border-radius: 50%; overflow: hidden; background: var(--mama-cream); box-shadow: 0 0 0 1px var(--mama-line), 0 6px 18px rgba(39, 29, 23, .07); transition: transform .2s ease, box-shadow .2s ease; }
.mama-circle__img img { width: 100%; height: 100%; object-fit: cover; }
.mama-circle__label { font: 600 .95rem/1.2 var(--mama-head); }
.mama-circle:hover .mama-circle__img { transform: translateY(-3px); box-shadow: 0 0 0 2px var(--mama-accent), 0 10px 24px rgba(39, 29, 23, .1); }
.mama-circle:hover .mama-circle__label { color: var(--mama-accent); }
@media (max-width: 700px) {
	.mama-circles { scrollbar-width: none; flex-wrap: nowrap; overflow-x: auto; justify-content: flex-start; padding: 4px 16px 10px; scroll-snap-type: x mandatory; margin-inline: -16px; }
	.mama-circle { flex: 0 0 auto; width: 92px; scroll-snap-align: start; }
	.mama-circle__img { width: 84px; height: 84px; }
}
.mama-hero-search { max-width: 560px; margin: 2rem auto 0 !important; }
.mama-hero-search .wp-block-search__inside-wrapper { background: #fff; border: 1px solid var(--mama-line) !important; border-radius: 999px; padding: 5px 5px 5px 8px !important; }
.mama-hero-search .wp-block-search__input { border: 0; background: transparent; padding: 0 14px; min-height: 44px; font: 400 1rem var(--mama-head); }
.mama-hero-search .wp-block-search__input:focus { outline: none; }
.mama-hero-search .wp-block-search__button { border-radius: 999px; margin: 0; width: 44px; height: 44px; padding: 0; display: grid; place-items: center; }

/* section heads */
.mama-section-head h2 { font-size: clamp(1.7rem, 3.4vw, 2.4rem); margin: 0; }
.mama-link { font-family: var(--mama-head); }

/* numbered questions */
.mama-q { list-style: none; margin: 0; padding: 0; }
.mama-q.is-numbered { display: grid; grid-template-columns: 1fr 1fr; column-gap: clamp(24px, 5vw, 64px); border-top: 1px solid var(--mama-line); }
.mama-q.is-numbered li { border-bottom: 1px solid var(--mama-line); }
.mama-q.is-numbered a { display: grid; grid-template-columns: 3.2rem 1fr; grid-template-rows: auto auto; column-gap: 8px; padding: 20px 4px; text-decoration: none; color: var(--mama-ink); }
.mama-q__n { grid-row: span 2; font: 500 1.05rem/1.5 var(--mama-serif); color: var(--mama-accent); }
.mama-q__t { font: 500 clamp(1.08rem, 1.6vw, 1.25rem)/1.3 var(--mama-serif); letter-spacing: -.01em; transition: color .15s; }
.mama-q__m { font: 500 .8rem var(--mama-head); color: var(--mama-muted); margin-top: 4px; }
.mama-q.is-numbered a:hover .mama-q__t { color: var(--mama-accent); }
.mama-q.is-links li { border-top: 1px solid var(--mama-line); }
.mama-q.is-links a { display: block; padding: 11px 22px 11px 0; position: relative; text-decoration: none; color: var(--mama-ink); font: 500 .98rem/1.4 var(--mama-head); }
.mama-q.is-links a::after { content: "\2192"; position: absolute; right: 2px; top: 11px; color: var(--mama-accent); opacity: .5; transition: transform .15s, opacity .15s; }
.mama-q.is-links a:hover { color: var(--mama-accent); }
.mama-q.is-links a:hover::after { opacity: 1; transform: translateX(3px); }
@media (max-width: 760px) { .mama-q.is-numbered { grid-template-columns: 1fr; } }

/* topic tiles */
.mama-topics-band { background: var(--mama-cream); }
.mama-topics { gap: clamp(20px, 3vw, 36px) !important; }
.mama-topic { background: #fff; border-radius: 22px; padding: 14px 20px 20px; }
.mama-topic__img { margin: 0 -6px 4px !important; }
.mama-topic__img img { border-radius: 14px; aspect-ratio: 16 / 10; object-fit: cover; width: 100%; mix-blend-mode: multiply; background: var(--mama-cream); }
.mama-topic__title { font-size: 1.5rem !important; margin: .6rem 0 .5rem !important; }
.mama-topic__title a { color: var(--mama-ink); text-decoration: none; }
.mama-topic__more { margin-top: .9rem !important; font-size: .9rem; }

/* books, cleaner */
.mama-book { border: 0; background: transparent; border-radius: 0; overflow: visible; }
.mama-book:hover { box-shadow: none; transform: none; }
.mama-book__cover { border-radius: 22px; aspect-ratio: 4 / 4.2; padding: 30px 30px 0; }
.mama-book__body { padding: 18px 2px 0; }
.mama-book__title { font: 500 1.4rem/1.2 var(--mama-serif); letter-spacing: -.015em; }
.mama-book__sub { font-style: normal; font-size: .95rem; }
.mama-book__buy { border-top: 0; padding-top: 6px; }
.mama-price__now { font-family: var(--mama-serif); font-weight: 600; }
.mama-badge { top: 14px; right: 14px; background: #fff; color: var(--mama-ink); box-shadow: 0 2px 8px rgba(39, 29, 23, .08); }
.mama-book.is-bundle { margin-top: 36px; border-radius: 24px; overflow: hidden; }
.mama-book.is-bundle .mama-book__cover { border-radius: 0; }
.mama-book.is-bundle .mama-book__body { padding: clamp(24px, 4vw, 48px); }
.mama-book.is-bundle .mama-book__title a { font-family: var(--mama-serif); }
.mama-book.is-bundle .mama-badge { background: var(--mama-accent); color: #fff; box-shadow: none; }
.mama-btn--soon { background: transparent; color: var(--mama-muted) !important; padding-inline: 0; font-weight: 500; }
.mama-book.is-bundle .mama-btn--soon { color: rgba(255, 255, 255, .7) !important; }

/* method row */
.mama-method { background: #fff; border: 1px solid var(--mama-line); border-radius: 26px; padding: clamp(24px, 4vw, 44px); }
.mama-method h2 { font-size: clamp(1.5rem, 2.8vw, 2rem); }
.mama-grade-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; font-size: .95rem; color: var(--mama-muted); }
.mama-grade-list li { display: flex; align-items: center; gap: 12px; }
.mama-grade-list .mama-grade { min-width: 92px; text-align: center; }
.mama-grade { font-family: var(--mama-head); }

/* newsletter + footer */
.mama-band { background: var(--mama-cream); }
.mama-news__title { font-family: var(--mama-serif); font-weight: 500; }
.mama-footer { background: #241a15; }
.mama-footer .wp-block-site-title a { color: #f6c8b3; font-family: var(--mama-serif); }

/* article cards and archives */
.mama-card__title { font: 500 1.2rem/1.3 var(--mama-serif); }
.mama-card__img { border-radius: 18px; }
.mama-eyebrow { font-family: var(--mama-head); letter-spacing: .12em; }
.mama-query .wp-block-post-title { font-family: var(--mama-serif); font-weight: 500; font-size: 1.25rem; }
.mama-query .wp-block-post-featured-image img { border-radius: 18px; }
.mama-archive-head .wp-block-query-title, .mama-archive-head h1 { font-weight: 500; }

/* article page */
.mama-article-head .wp-block-post-title { font-weight: 500; font-size: clamp(2rem, 4.4vw, 3.2rem); letter-spacing: -.025em; }
.mama-article-body { font-size: 1.0625rem; line-height: 1.78; }
.mama-article-body h2 { font-size: clamp(1.45rem, 2.6vw, 1.85rem); }
.mama-article-body h3 { font-size: 1.25rem; }
.mama-article-body p.has-large-font-size { font: 400 1.25rem/1.6 var(--mama-serif) !important; }
.mama-article-hero img { border-radius: 22px; }
.wp-block-group.is-style-mama-takeaways { border-radius: 20px; background: #eef6ef; }
.wp-block-group[class*="is-style-evidence-"], .wp-block-group.is-style-mama-doctor, .wp-block-group.is-style-mama-safety, .wp-block-group.is-style-mama-dyk { border-radius: 18px; }
.wp-block-group.is-style-mama-dyk::before { font-family: var(--mama-serif); }
.wp-block-details summary { font-family: var(--mama-serif); font-weight: 500; font-size: 1.1rem; }
.mama-toc.is-sidebar { border-left-color: var(--mama-line); }
.mama-bookcta { border-radius: 22px; }
.mama-bookcta__title { font: 500 1.3rem/1.2 var(--mama-serif); }
.mama-author { border-radius: 22px; }
.mama-author__name { font-family: var(--mama-serif); font-weight: 500; }
.mama-buybox { border-radius: 22px; box-shadow: none; border-color: var(--mama-line); }

.mama-circles::-webkit-scrollbar { display: none; }

/* ---------- v1.2: sticky sidebar, value section, stronger book callouts */
.wp-block-column > .wp-block-template-part:has(.mama-sidebar) { position: sticky; top: 92px; }
.admin-bar .wp-block-column > .wp-block-template-part:has(.mama-sidebar) { top: 124px; }
.mama-sidebar { position: static; }
@media (max-width: 781px) { .wp-block-column > .wp-block-template-part:has(.mama-sidebar) { position: static; } }

.mama-sell { background: linear-gradient(180deg, var(--mama-paper) 0%, #fbf1e3 100%); }
.mama-worries { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-bottom: 1.6rem; }
.mama-worries span {
	background: #fff; border: 1px solid var(--mama-line); padding: .55em 1em; border-radius: 18px 18px 18px 4px;
	font: italic 500 .98rem/1.2 var(--mama-serif); color: var(--mama-ink); box-shadow: 0 4px 14px rgba(39, 29, 23, .05);
}
.mama-worries span:nth-child(even) { border-radius: 18px 18px 4px 18px; background: var(--mama-blush); border-color: #f6d6c8; }
.mama-sell__title { font-size: clamp(2rem, 4.6vw, 3.2rem) !important; letter-spacing: -.025em; margin: 0 auto .8rem !important; max-width: 18ch; }
.mama-sell__lead { max-width: 640px; margin: 0 auto 2.6rem !important; color: var(--mama-muted); font-size: 1.1rem; }
.mama-compare-cards { display: grid; grid-template-columns: .85fr 1.15fr; gap: 20px; align-items: stretch; max-width: 980px; margin: 0 auto; }
.mama-cc { border-radius: 24px; padding: clamp(22px, 3vw, 34px); }
.mama-cc ul { list-style: none; margin: 0; padding: 0; }
.mama-cc li { position: relative; padding-left: 30px; margin: 0 0 12px; font-size: .98rem; line-height: 1.45; }
.mama-cc li::before { position: absolute; left: 0; top: 0; width: 20px; height: 20px; border-radius: 50%; display: grid; place-items: center; font: 700 12px/20px var(--mama-head); text-align: center; }
.mama-cc li.yes::before { content: "\2713"; background: var(--mama-sage-soft); color: var(--mama-sage); }
.mama-cc li.no::before { content: "\2013"; background: #f1ece6; color: #a59a92; }
.mama-cc li.no { color: #9c918a; }
.mama-cc__label { font: 600 .75rem var(--mama-head); letter-spacing: .14em; text-transform: uppercase; margin: 0 0 .3rem; }
.mama-cc__price { font: 500 1.9rem/1.1 var(--mama-serif); margin: 0 0 1.2rem; }
.mama-cc__price span { display: block; font: 500 .8rem var(--mama-head); color: var(--mama-muted); margin-top: 4px; }
.mama-cc.is-free { background: #fff; border: 1px solid var(--mama-line); }
.mama-cc.is-free .mama-cc__label { color: var(--mama-muted); }
.mama-cc.is-guides { background: var(--mama-ink); color: #fff; box-shadow: 0 24px 60px rgba(39, 29, 23, .22); }
.mama-cc.is-guides .mama-cc__label { color: #f3b9a0; }
.mama-cc.is-guides .mama-cc__price span { color: rgba(255, 255, 255, .65); }
.mama-cc.is-guides li.yes::before { background: var(--mama-accent); color: #fff; }
.mama-cc.is-guides strong { color: #fff; }
.mama-stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; max-width: 980px; margin: 28px auto 0; text-align: center; }
.mama-stats div { background: #fff; border: 1px solid var(--mama-line); border-radius: 18px; padding: 16px 10px; }
.mama-stats b { display: block; font: 500 clamp(1.5rem, 3vw, 2.1rem)/1.1 var(--mama-serif); color: var(--mama-accent); }
.mama-stats span { font-size: .85rem; color: var(--mama-muted); }
.mama-sell__pick { font-size: clamp(1.4rem, 2.6vw, 1.8rem) !important; margin: clamp(3rem, 6vw, 4.5rem) 0 1.6rem !important; }
.mama-sell .mama-book__cover { background: #fff; }
.mama-sell__note { color: var(--mama-muted); font-size: .88rem; margin-top: 1.6rem !important; }
@media (max-width: 760px) {
	.mama-compare-cards { grid-template-columns: 1fr; }
	.mama-cc.is-guides { order: -1; }
	.mama-stats { grid-template-columns: 1fr 1fr; }
}

.mama-bookcta__hook { font: 500 1.25rem/1.25 var(--mama-serif); color: var(--mama-ink); margin: 0 0 .5rem; letter-spacing: -.01em; }
.mama-bookcta__title { font: 600 .8rem var(--mama-head) !important; letter-spacing: .12em; text-transform: uppercase; margin: .6rem 0 .2rem !important; }
.mama-bookcta__title a { color: var(--mama-accent) !important; }
.mama-bookcta .mama-checks { font-size: .92rem; line-height: 1.45; margin: .4rem 0 1rem; }
.mama-bookcta__small { font-size: .78rem; color: var(--mama-muted); margin: .6rem 0 0; }
.mama-bookcta.is-compact .mama-bookcta__hook { font-size: 1.12rem; }
.mama-bookcta.is-compact .mama-checks { font-size: .86rem; }

/* =====================================================================
   v1.4 mobile-first polish (most visitors are on phones)
   ===================================================================== */
.mama-bookbar { display: none; }
@media (max-width: 781px) {
	/* header */
	.mama-header { padding-top: 10px !important; padding-bottom: 10px !important; }
	.wp-block-navigation__responsive-container-open, .mama-header .wp-block-search__button { width: 44px; height: 44px; display: grid; place-items: center; }

	/* article: no duplicate sidebar on phones (contents is inline at the top, the guide is in the article and the buy bar) */
	.wp-block-columns > .wp-block-column:has(> .wp-block-template-part .mama-sidebar) { display: none; }
	.mama-crumbs li[aria-current] { display: none; }
	.mama-article-head .wp-block-post-title { font-size: clamp(1.8rem, 8vw, 2.3rem); }
	.mama-dek, .mama-article-head .wp-block-post-excerpt__excerpt { font-size: 1.04rem; line-height: 1.55; }
	.mama-meta__dates { display: flex; flex-wrap: wrap; gap: 2px 8px; }
	.mama-meta__dates .mama-meta__sep { display: none; }
	.mama-article-hero { margin-top: 1.4rem !important; margin-bottom: 1.4rem !important; }
	.mama-article-body { font-size: 1.04rem; line-height: 1.72; }
	.mama-article-body h2 { font-size: 1.45rem; margin-top: 2em; }
	.mama-toc.is-inline { margin-bottom: 1.4rem; }
	.mama-toc.is-inline summary { min-height: 44px; display: flex; align-items: center; }
	.mama-toc.is-inline a { padding: 9px 0; }
	.wp-block-group.is-style-mama-takeaways, .wp-block-group[class*="is-style-evidence-"], .wp-block-group.is-style-mama-doctor, .wp-block-group.is-style-mama-safety, .wp-block-group.is-style-mama-dyk { padding: 1.05rem 1.1rem; }
	.wp-block-details summary { min-height: 44px; display: flex; align-items: center; }
	.mama-bookcta { grid-template-columns: 1fr; gap: 12px; padding: 18px; }
	.mama-bookcta__cover { max-width: 92px; }
	.mama-bookcta__buy { gap: 10px; }
	.mama-bookcta__hook { font-size: 1.08rem; }
	.mama-bookcta .mama-btn { padding: .8em 1.2em; }
	.mama-author { padding: 18px; gap: 14px; }

	/* sticky buy bar */
	.mama-bookbar {
		display: grid; grid-template-columns: 40px 1fr auto 28px; align-items: center; gap: 10px;
		position: fixed; left: 10px; right: 10px; bottom: calc(10px + env(safe-area-inset-bottom)); z-index: 90;
		background: rgba(36, 26, 21, .97); color: #fff; border-radius: 16px; padding: 8px 8px 8px 10px;
		box-shadow: 0 10px 30px rgba(0, 0, 0, .25); transform: translateY(140%); transition: transform .3s ease;
	}
	.mama-bookbar.is-visible { transform: none; }
	.mama-bookbar__cover img { display: block; width: 40px; height: auto; border-radius: 2px 4px 4px 2px; }
	.mama-bookbar__text { display: flex; flex-direction: column; min-width: 0; color: #fff; text-decoration: none; }
	.mama-bookbar__title { font: 500 .95rem/1.2 var(--mama-serif); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
	.mama-bookbar__price { font: 500 .75rem var(--mama-head); color: #f3b9a0; }
	.mama-bookbar__btn { background: var(--mama-accent); color: #fff !important; font: 600 .875rem/1 var(--mama-head); padding: 12px 16px; border-radius: 999px; text-decoration: none; white-space: nowrap; }
	.mama-bookbar__close { background: none; border: 0; color: rgba(255, 255, 255, .6); font-size: 22px; line-height: 1; width: 28px; height: 44px; cursor: pointer; padding: 0; }
	.mama-footer { padding-bottom: 96px !important; }

	/* footer: compact two-column grid */
	.mama-footer .wp-block-columns { display: grid !important; grid-template-columns: 1fr 1fr; gap: 26px 18px; }
	.mama-footer .wp-block-columns > .wp-block-column:first-child { grid-column: 1 / -1; }
	.mama-footer li { margin: .55em 0; }
	.mama-footer a { display: inline-block; padding: 2px 0; }
	.mama-footer .mama-footer__legal { flex-direction: column; gap: 8px; }
}

@media (max-width: 600px) {
	/* homepage hero */
	.mama-hero { padding-top: 2.2rem !important; padding-bottom: 2.2rem !important; }
	.mama-dyk__facts a { font-size: clamp(1.75rem, 8.4vw, 2.2rem); }
	.mama-dyk__hint { font-size: .82rem; }
	.mama-picker { margin-top: 2rem !important; }
	.mama-picker__title { margin-bottom: 1rem !important; }
	.mama-hero-search { margin-top: 1.2rem !important; }

	/* section rhythm */
	.mama-section-head { margin-bottom: 1.2rem !important; }
	.mama-section-head h2 { font-size: 1.6rem; }
	.wp-block-group.alignfull[style*="clamp(3rem, 6vw, 5rem)"] { padding-top: 2.6rem !important; padding-bottom: 2.6rem !important; }

	/* questions: the top 5 on phones */
	.mama-q.is-numbered li:nth-child(n+7) { display: none; }

	/* topic tiles and books become swipeable carousels */
	.wp-block-columns.mama-topics, .mama-books__grid {
		display: flex !important; flex-wrap: nowrap !important; overflow-x: auto; gap: 14px !important;
		scroll-snap-type: x mandatory; margin-inline: -16px; padding: 4px 16px 12px; scrollbar-width: none;
	}
	.wp-block-columns.mama-topics::-webkit-scrollbar, .mama-books__grid::-webkit-scrollbar { display: none; }
	.wp-block-columns.mama-topics > .wp-block-column.mama-topic { flex: 0 0 84% !important; scroll-snap-align: start; padding: 12px 16px 16px; }
	.mama-topic__img img { aspect-ratio: 16 / 8; }
	.mama-topic__title { font-size: 1.3rem !important; }
	.mama-books__grid > .mama-book { flex: 0 0 78%; scroll-snap-align: start; }
	.mama-book__cover { aspect-ratio: 4 / 3.6; padding: 22px 22px 0; }
	.mama-book__title { font-size: 1.25rem; }
	.mama-book .mama-checks { font-size: .88rem; }
	.mama-book__buy { flex-direction: column; align-items: flex-start; gap: 8px; }
	.mama-book.is-bundle .mama-book__cover { max-height: 220px; }
	.mama-book.is-bundle .mama-book__body { padding: 22px; }

	/* the "why the guides" section */
	.mama-sell { padding-top: 2.6rem !important; padding-bottom: 2.6rem !important; }
	.mama-worries { gap: 6px; margin-bottom: 1.1rem; }
	.mama-worries span { font-size: .85rem; padding: .45em .8em; }
	.mama-worries span:nth-child(n+4) { display: none; }
	.mama-sell__title { font-size: 1.9rem !important; }
	.mama-sell__lead { font-size: 1rem; margin-bottom: 1.6rem !important; }
	.mama-cc.is-free { display: none; }
	.mama-cc li { font-size: .92rem; margin-bottom: 9px; }
	.mama-stats { margin-top: 14px; gap: 8px; }
	.mama-stats div { padding: 12px 6px; }
	.mama-sell__pick { margin-top: 2.2rem !important; margin-bottom: 1rem !important; font-size: 1.3rem !important; }
	.mama-method { padding: 20px; }
	.mama-grade-list .mama-grade { min-width: 78px; }

	/* chips are easy to tap */
	.mama-chip { padding: .75em 1.05em; font-size: .875rem; }

	/* tables become stacked cards */
	table.mama-stack thead { display: none; }
	table.mama-stack, table.mama-stack tbody, table.mama-stack tr, table.mama-stack td { display: block; width: 100%; }
	.mama-article-body .wp-block-table { overflow: visible; }
	table.mama-stack tr { box-sizing: border-box; background: #fff !important; border: 1px solid var(--mama-line); border-radius: 14px; padding: 10px 14px; margin-bottom: 10px; }
	table.mama-stack td { box-sizing: border-box; }
	table.mama-stack td { border: 0 !important; padding: 5px 0 !important; display: grid; grid-template-columns: 40% 1fr; gap: 10px; font-size: .92rem; }
	table.mama-stack td::before { content: attr(data-label); font: 600 .72rem/1.5 var(--mama-head); letter-spacing: .06em; text-transform: uppercase; color: var(--mama-muted); }
	table.mama-stack td:first-child { display: block; font: 600 1rem/1.3 var(--mama-head); color: var(--mama-ink); padding-bottom: 6px !important; border-bottom: 1px solid var(--mama-line) !important; margin-bottom: 4px; }
	table.mama-stack td:first-child::before { display: none; }
	table.mama-stack td:empty { display: none; }

	/* archives */
	.mama-archive-head { padding-top: 1.6rem !important; padding-bottom: 1.8rem !important; }
	.mama-query .wp-block-post-template { gap: 26px; }
}

/* =====================================================================
   v1.6 books sales page
   ===================================================================== */
.mama-anchor { display: block; position: relative; top: -90px; visibility: hidden; }
.mama-sales-hero { background: radial-gradient(900px 480px at 85% 30%, #f9e9dc 0%, transparent 70%), var(--mama-paper); }
.mama-sales-hero__title { font-size: clamp(2.3rem, 5.4vw, 4rem) !important; line-height: 1.05 !important; letter-spacing: -.03em; margin: .4rem 0 1rem !important; }
.mama-sales-hero__title em { font-style: italic; color: var(--mama-accent); }
.mama-sales-hero__lead { font-size: 1.15rem; color: var(--mama-muted); max-width: 34em; }
.mama-sales-hero__ctas { gap: 18px !important; align-items: center !important; margin-top: 1.6rem !important; }
.mama-sales-hero__alt { margin: 0 !important; }
.mama-sales-hero__art img { filter: drop-shadow(0 30px 40px rgba(39, 29, 23, .15)); border-radius: 18px; }
.mama-proof { list-style: none; padding: 0; margin: 1.6rem 0 0; display: flex; flex-wrap: wrap; gap: 8px 18px; font-size: .88rem; color: var(--mama-muted); }
.mama-proof li { display: flex; align-items: center; gap: 7px; }
.mama-proof li::before { content: "\2713"; display: grid; place-items: center; width: 18px; height: 18px; border-radius: 50%; background: var(--mama-sage-soft); color: var(--mama-sage); font: 700 11px/1 var(--mama-head); }

.mama-buybtn .mama-btn { font-size: 1rem; padding: 1.05em 1.7em; box-shadow: 0 10px 24px rgba(174, 90, 55, .28); }
.mama-buybtn__price { opacity: .95; font-weight: 700; margin-left: 4px; }
.mama-buybtn__price del { opacity: .65; font-weight: 500; margin-left: 4px; }
.mama-buybtn.is-light { display: flex; justify-content: center; }
.mama-buybtn.is-light .mama-btn { background: #fff; color: var(--mama-ink) !important; box-shadow: 0 10px 30px rgba(0, 0, 0, .25); }
.mama-buybtn.is-light .mama-btn:hover { background: var(--mama-blush); }

/* 3 a.m. section */
.mama-night { background: #1f1814; color: #e9e1da; }
.mama-night h2, .mama-night__title { color: #fff !important; font-size: clamp(1.8rem, 3.6vw, 2.6rem) !important; }
.mama-night .mama-eyebrow { color: #f3b9a0; }
.mama-night p { color: #d9cfc7; font-size: 1.05rem; }
.mama-night strong { color: #fff; }
.mama-history { background: #2b221d; border: 1px solid #3b302a; border-radius: 22px; box-shadow: 0 30px 60px rgba(0, 0, 0, .35); overflow: hidden; max-width: 460px; }
.mama-history__bar { display: flex; align-items: center; gap: 6px; padding: 12px 16px; border-bottom: 1px solid #3b302a; font: 600 .78rem var(--mama-head); color: #a89a90; }
.mama-history__bar span { width: 9px; height: 9px; border-radius: 50%; background: #4a3d35; }
.mama-history__bar b { margin-left: 8px; font-weight: 600; }
.mama-history ol { list-style: none; margin: 0; padding: 8px 6px 12px; }
.mama-history li { display: grid; grid-template-columns: 74px 1fr; align-items: baseline; gap: 10px; padding: 11px 12px; border-radius: 12px; font: 400 .98rem/1.35 var(--mama-head); color: #f1e9e3; opacity: 0; transform: translateY(6px); animation: mamaIn .5s ease forwards; }
.mama-history li:nth-child(2) { animation-delay: .25s; } .mama-history li:nth-child(3) { animation-delay: .5s; }
.mama-history li:nth-child(4) { animation-delay: .75s; } .mama-history li:nth-child(5) { animation-delay: 1s; background: rgba(174, 90, 55, .18); }
.mama-history time { font: 600 .75rem var(--mama-head); color: #f3b9a0; letter-spacing: .04em; }
.mama-history__cursor { display: inline-block; width: 2px; height: 1.05em; background: #f3b9a0; margin-left: 3px; vertical-align: -2px; animation: mamaBlink 1s steps(1) infinite; grid-column: 2; }
@keyframes mamaIn { to { opacity: 1; transform: none; } }
@keyframes mamaBlink { 50% { opacity: 0; } }

/* worry -> calm */
.mama-shift { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin-top: 2rem; }
.mama-shift__card { background: #fff; border: 1px solid var(--mama-line); border-radius: 22px; padding: 22px 20px; }
.mama-shift__worry { font: italic 500 1.12rem/1.3 var(--mama-serif); color: #a3968d; text-decoration: line-through; text-decoration-color: rgba(174, 90, 55, .55); text-decoration-thickness: 2px; margin: 0 0 .8rem; }
.mama-shift__calm { font-size: .97rem; line-height: 1.55; margin: 0; padding-top: .8rem; border-top: 1px dashed var(--mama-line); }
.mama-shift__calm::before { content: "Now: "; font-weight: 700; color: var(--mama-sage); }

/* look inside */
.mama-inside { background: var(--mama-cream); }
.mama-pages { display: grid; grid-template-columns: repeat(6, 1fr); gap: 16px; }
.mama-page { margin: 0; }
.mama-page img { width: 100%; height: auto; display: block; border-radius: 6px; background: #fff; box-shadow: 0 2px 4px rgba(39, 29, 23, .06), 0 14px 30px rgba(39, 29, 23, .12); transition: transform .25s ease; }
.mama-page:hover img { transform: translateY(-4px) rotate(-.6deg); }
.mama-page figcaption { font-size: .82rem; line-height: 1.4; color: var(--mama-muted); margin-top: 10px; }
.mama-page figcaption b { display: block; color: var(--mama-accent); font: 600 .7rem var(--mama-head); letter-spacing: .1em; text-transform: uppercase; margin-bottom: 3px; }

/* bundle value stack */
.mama-offer { display: grid; grid-template-columns: 1fr 1.1fr; background: var(--mama-ink); color: #fff; border-radius: 28px; overflow: hidden; box-shadow: 0 30px 60px rgba(39, 29, 23, .2); }
.mama-offer__art { background: var(--mama-cream); display: flex; align-items: center; }
.mama-offer__art img { width: 100%; height: 100%; object-fit: cover; }
.mama-offer__body { padding: clamp(24px, 4vw, 48px); }
.mama-offer .mama-eyebrow { color: #f3b9a0; }
.mama-offer__title { color: #fff !important; font-size: clamp(1.6rem, 3vw, 2.2rem) !important; margin: .3rem 0 1.2rem !important; }
.mama-offer__list { list-style: none; margin: 0 0 1.2rem; padding: 0; }
.mama-offer__list li { display: flex; justify-content: space-between; gap: 14px; padding: 11px 0; border-bottom: 1px solid rgba(255, 255, 255, .12); font-size: .95rem; color: rgba(255, 255, 255, .78); }
.mama-offer__list b { color: #fff; font-weight: 600; }
.mama-offer__val { white-space: nowrap; color: rgba(255, 255, 255, .85); }
.mama-offer__total { display: flex; flex-wrap: wrap; align-items: baseline; gap: 10px 16px; margin: 0 0 1.2rem; }
.mama-offer__total > span:first-child { color: rgba(255, 255, 255, .7); font-size: .95rem; }
.mama-offer__now { font: 600 2.6rem/1 var(--mama-serif); color: #fff; }
.mama-offer .mama-save { background: rgba(230, 243, 232, .14); color: #bfe3c8; }
.mama-offer .mama-btn { width: 100%; font-size: 1rem; padding: 1.1em; }
.mama-offer__small { font-size: .8rem; color: rgba(255, 255, 255, .6); text-align: center; margin: .8rem 0 0; }

/* final call */
.mama-final { background: linear-gradient(160deg, #ae5a37, #8f4527); color: #fff; }
.mama-final__title { color: #fff !important; font-size: clamp(2rem, 4.4vw, 3rem) !important; margin-top: 0 !important; }
.mama-final__text { color: rgba(255, 255, 255, .9); font-size: 1.12rem; margin-bottom: 1.6rem !important; }
.mama-final__small { color: rgba(255, 255, 255, .75); font-size: .85rem; margin-top: 1rem !important; }

@media (max-width: 900px) {
	.mama-shift { grid-template-columns: 1fr 1fr; }
	.mama-pages { grid-template-columns: repeat(3, 1fr); }
	.mama-offer { grid-template-columns: 1fr; }
	.mama-offer__art { max-height: 260px; }
}
@media (max-width: 600px) {
	.mama-sales-hero__lead { font-size: 1.02rem; }
	.mama-sales-hero__ctas { flex-direction: column; align-items: stretch !important; }
	.mama-sales-hero__ctas .mama-btn { width: 100%; }
	.mama-sales-hero__alt { text-align: center; }
	.mama-history li { grid-template-columns: 62px 1fr; font-size: .92rem; padding: 9px 10px; }
	.mama-shift { grid-template-columns: 1fr; gap: 10px; }
	.mama-shift__card { padding: 16px 18px; }
	.mama-pages { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; margin-inline: -16px; padding: 6px 16px 14px; gap: 14px; scrollbar-width: none; }
	.mama-pages::-webkit-scrollbar { display: none; }
	.mama-page { flex: 0 0 62%; scroll-snap-align: start; }
	.mama-offer__now { font-size: 2.2rem; }
	.mama-offer__list li { font-size: .88rem; }
}
@media (prefers-reduced-motion: reduce) {
	.mama-history li { opacity: 1; transform: none; animation: none; }
}

/* buttons never overflow their container */
.mama-btn, .mama-news__form button, .mama-bookbar__btn { box-sizing: border-box; max-width: 100%; }
.mama-buybtn { max-width: 100%; }

/* ---------- v1.7 book pages */
.mama-wrap { max-width: 1100px; margin: 0 auto; padding-inline: clamp(16px, 4vw, 32px); box-sizing: border-box; }
.mama-story > section { padding: clamp(3rem, 7vw, 5.5rem) 0; }
.mama-night__grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(28px, 5vw, 64px); align-items: center; }
.mama-story .mama-history { justify-self: center; width: 100%; }
.mama-story__shift { background: var(--mama-paper); }
.mama-inside__title { font-size: clamp(1.7rem, 3.4vw, 2.4rem) !important; margin: .2rem 0 1.6rem !important; }
.mama-pages.is-scroll { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; gap: 18px; padding: 6px 2px 18px; scrollbar-width: thin; }
.mama-pages.is-scroll .mama-page { flex: 0 0 min(270px, 62%); scroll-snap-align: start; }
.mama-book-hero .mama-sales-hero__title { font-size: clamp(2.2rem, 5vw, 3.6rem) !important; }
.mama-book-hero .wp-block-post-excerpt__excerpt { font-size: 1.12rem; color: var(--mama-muted); }
.mama-book-hero .mama-book-hero__cover img { box-shadow: 0 6px 12px rgba(39, 29, 23, .08), 0 34px 70px rgba(39, 29, 23, .2); border-radius: 4px 8px 8px 4px; transform: rotate(-2deg); }
.mama-buybox { margin-top: 1.2rem; }
@media (max-width: 781px) {
	.mama-night__grid { grid-template-columns: 1fr; }
	.mama-book-hero .mama-book-hero__cover { max-width: 260px; margin: 0 auto 8px; }
}

/* ---------- v1.8 look inside */
.mama-inside { background: var(--mama-cream); padding: clamp(3rem, 7vw, 5.5rem) 0; }
.mama-inside__head { display: flex; justify-content: space-between; align-items: flex-end; gap: 20px; margin-bottom: 1.4rem; }
.mama-inside__head .mama-sub { margin: .3rem 0 0; }
.mama-inside__nav { display: flex; gap: 8px; flex: none; }
.mama-inside__arrow { width: 46px; height: 46px; border-radius: 50%; border: 1px solid var(--mama-line); background: #fff; color: var(--mama-ink); font-size: 18px; cursor: pointer; transition: all .15s; }
.mama-inside__arrow:hover { border-color: var(--mama-accent); color: var(--mama-accent); }
.mama-pgs { display: flex; gap: 20px; overflow-x: auto; scroll-snap-type: x mandatory; padding: 8px 4px 22px; scrollbar-width: none; scroll-behavior: smooth; }
.mama-pgs::-webkit-scrollbar { display: none; }
.mama-pg { flex: 0 0 236px; scroll-snap-align: start; background: none; border: 0; padding: 0; text-align: left; cursor: zoom-in; font: inherit; color: inherit; }
.mama-pg__sheet { position: relative; display: block; border-radius: 6px; overflow: hidden; background: #fff; box-shadow: 0 2px 4px rgba(39, 29, 23, .06), 0 14px 30px rgba(39, 29, 23, .12); transition: transform .25s ease, box-shadow .25s ease; }
.mama-pg__sheet img { display: block; width: 100%; height: auto; }
.mama-pg:hover .mama-pg__sheet, .mama-pg:focus-visible .mama-pg__sheet { transform: translateY(-5px); box-shadow: 0 4px 8px rgba(39, 29, 23, .08), 0 22px 40px rgba(39, 29, 23, .18); }
.mama-pg__tag { position: absolute; top: 10px; left: 10px; background: var(--mama-ink); color: #fff; font: 600 .66rem/1 var(--mama-head); letter-spacing: .1em; text-transform: uppercase; padding: .55em .8em; border-radius: 999px; }
.mama-pg__zoom { position: absolute; right: 10px; bottom: 10px; width: 32px; height: 32px; border-radius: 50%; background: rgba(255, 255, 255, .95); color: var(--mama-accent); font: 500 22px/30px var(--mama-head); text-align: center; box-shadow: 0 2px 8px rgba(0, 0, 0, .15); opacity: 0; transition: opacity .2s; }
.mama-pg:hover .mama-pg__zoom { opacity: 1; }
.mama-pg__cap { display: block; margin-top: 12px; font-size: .9rem; line-height: 1.4; color: var(--mama-ink); }
@media (hover: none) { .mama-pg__zoom { opacity: 1; } }
@media (max-width: 600px) {
	.mama-inside__nav { display: none; }
	.mama-pgs { margin-inline: -16px; padding-inline: 16px; gap: 14px; }
	.mama-pg { flex-basis: 64%; }
}

/* lightbox */
.mama-lb { position: fixed; inset: 0; z-index: 1000; background: rgba(24, 18, 15, .94); display: none; align-items: center; justify-content: center; flex-direction: column; padding: 56px 16px 20px; }
.mama-lb.is-open { display: flex; }
.mama-lb__img { max-width: min(920px, 100%); max-height: calc(100vh - 140px); width: auto; height: auto; border-radius: 6px; box-shadow: 0 30px 80px rgba(0, 0, 0, .5); background: #fff; touch-action: pan-y pinch-zoom; }
.mama-lb__cap { color: #f1e9e3; font: 500 .95rem var(--mama-head); margin-top: 14px; text-align: center; }
.mama-lb__count { color: #a89a90; font: 500 .8rem var(--mama-head); margin-top: 4px; }
.mama-lb__btn { position: absolute; background: rgba(255, 255, 255, .1); border: 0; color: #fff; width: 48px; height: 48px; border-radius: 50%; font-size: 22px; cursor: pointer; }
.mama-lb__btn:hover { background: rgba(255, 255, 255, .2); }
.mama-lb__close { top: 12px; right: 12px; }
.mama-lb__prev { left: 16px; top: 50%; transform: translateY(-50%); }
.mama-lb__next { right: 16px; top: 50%; transform: translateY(-50%); }
.mama-lb__cta { margin-top: 14px; }
@media (max-width: 600px) { .mama-lb__prev, .mama-lb__next { top: auto; bottom: 18px; transform: none; } .mama-lb { padding-bottom: 80px; } }

/* ---------- v1.8.2 phone menu */
@media (max-width: 599px) {
	/* backdrop-filter would trap the full-screen menu inside the header */
	.mama-header { backdrop-filter: none !important; -webkit-backdrop-filter: none !important; background: var(--mama-paper) !important; }
}
.wp-block-navigation__responsive-container.is-menu-open { position: fixed !important; inset: 0 !important; z-index: 100000 !important; background: var(--mama-paper) !important; padding: 18px 20px 32px !important; overflow-y: auto; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close { top: 14px !important; right: 14px !important; width: 44px; height: 44px; display: grid; place-items: center; border-radius: 50%; background: #fff !important; box-shadow: 0 0 0 1px var(--mama-line); }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { padding-top: 64px !important; align-items: stretch !important; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { gap: 0 !important; width: 100%; align-items: stretch !important; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-item { width: 100%; border-bottom: 1px solid var(--mama-line); }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content { font: 500 1.4rem/1.2 var(--mama-serif) !important; color: var(--mama-ink) !important; padding: 15px 2px !important; width: 100%; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-submenu > .wp-block-navigation-item__content { color: var(--mama-accent) !important; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container {
	display: grid !important; grid-template-columns: 1fr 1fr; gap: 8px !important; padding: 2px 0 16px !important;
	border: 0 !important; box-shadow: none !important; background: transparent !important; width: 100%; min-width: 0 !important;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item { width: 100%; border: 0; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	font: 500 .92rem/1.25 var(--mama-head) !important; padding: 12px 12px !important; min-height: 48px; display: flex; align-items: center;
	background: #fff; border: 1px solid var(--mama-line); border-radius: 14px;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-icon { display: none !important; }
.wp-block-navigation__responsive-container.is-menu-open .mama-nav-cta { border-bottom: 0 !important; margin-top: 22px; }
.wp-block-navigation__responsive-container.is-menu-open .mama-nav-cta > a { display: flex !important; justify-content: center; background: var(--mama-ink) !important; color: #fff !important; border-radius: 999px; font: 600 1.05rem var(--mama-head) !important; padding: 16px !important; }
.wp-block-navigation__responsive-container-open { width: 44px; height: 44px; display: grid; place-items: center; }

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content { white-space: normal !important; overflow-wrap: anywhere; box-sizing: border-box; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__label { white-space: normal !important; }

.wp-block-navigation__responsive-container.is-menu-open .mama-nav-cta > a { margin: 0 !important; width: 100% !important; box-sizing: border-box; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content { margin-left: 0 !important; margin-right: 0 !important; }

/* ---------- v1.9.4 numbered questions with thumbnails */
.mama-q.is-numbered li { display: flex; }
.mama-q.is-numbered a { display: flex; align-items: center; gap: 18px; width: 100%; padding: 16px 12px; margin: 6px -12px;
	border-radius: var(--mama-radius); transition: background-color .2s; }
.mama-q.is-numbered a:hover { background: var(--mama-cream); }
.mama-q.is-numbered a:focus-visible { outline: 2px solid var(--mama-accent); outline-offset: 2px; }
.mama-q__thumb { position: relative; flex: 0 0 140px; aspect-ratio: 4 / 3; border-radius: 12px; overflow: hidden;
	background: var(--mama-sand, var(--mama-cream)); box-shadow: 0 1px 2px rgba(39, 29, 23, .06); }
.mama-q__img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.mama-q.is-numbered a:hover .mama-q__img { transform: scale(1.05); }
.mama-q.is-numbered .mama-q__n { position: absolute; left: 8px; top: 8px; grid-row: auto; padding: 3px 9px 2px;
	border-radius: 999px; background: rgba(255, 253, 248, .94); color: var(--mama-accent);
	font: 600 .78rem/1.4 var(--mama-head); letter-spacing: .02em; box-shadow: 0 1px 3px rgba(39, 29, 23, .12); }
.mama-q__thumb.is-empty .mama-q__n { position: static; display: inline-block; margin: 10px; }
.mama-q__body { display: flex; flex-direction: column; gap: 6px; flex: 1; min-width: 0; }
.mama-q.is-numbered .mama-q__m { margin-top: 0; }
.mama-q__go { flex: 0 0 auto; color: var(--mama-accent); font-size: 1.15rem; opacity: 0; transform: translateX(-6px);
	transition: opacity .2s, transform .2s; }
.mama-q.is-numbered a:hover .mama-q__go, .mama-q.is-numbered a:focus-visible .mama-q__go { opacity: 1; transform: none; }
.mama-q-more { display: none; }
@media (max-width: 760px) {
	.mama-q.is-numbered a { gap: 14px; padding: 12px 10px; margin: 4px -10px; }
	.mama-q__thumb { flex-basis: 96px; border-radius: 10px; }
	.mama-q.is-numbered .mama-q__n { left: 5px; top: 5px; padding: 2px 7px 1px; font-size: .7rem; }
	.mama-q__go { display: none; }
	.mama-q-more { display: block; margin-top: 1.1rem !important; text-align: center; }
	.mama-q-more a { display: inline-block; padding: 12px 22px; border: 1px solid var(--mama-line); border-radius: 999px;
		text-decoration: none; font-weight: 600; color: var(--mama-ink); background: #fff; }
}
@media (prefers-reduced-motion: reduce) { .mama-q__img, .mama-q__go, .mama-q.is-numbered a { transition: none; } }

/* footer signature */
.mama-love { white-space: nowrap; }
.mama-love__heart { display: inline-block; color: var(--mama-accent); transform-origin: center; animation: mama-beat 2.4s ease-in-out infinite; }
.mama-love a { color: inherit; text-decoration: underline; text-decoration-color: var(--mama-accent); text-underline-offset: 3px; }
.mama-love a:hover { color: var(--mama-accent); }
@keyframes mama-beat { 0%, 70%, 100% { transform: scale(1); } 80% { transform: scale(1.22); } 90% { transform: scale(1); } }
@media (prefers-reduced-motion: reduce) { .mama-love__heart { animation: none; } }

/* ---------- v1.9.5 home: pick your worry */
.mama-wp__head { text-align: center; max-width: 680px; margin: 0 auto clamp(1.8rem, 4vw, 2.8rem); }
.mama-wp__head .mama-eyebrow { margin: 0 0 .6rem; }
.mama-wp__title { font-size: clamp(2rem, 4.4vw, 3.1rem) !important; letter-spacing: -.025em; line-height: 1.08; margin: 0 auto .8rem !important; max-width: 17ch; }
.mama-wp__lead { margin: 0 auto; color: var(--mama-muted); font-size: 1.08rem; line-height: 1.55; max-width: 560px; }

.mama-wp__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(16px, 2.2vw, 26px); }
.mama-wp__card { position: relative; display: flex; flex-direction: column; background: #fff; border: 1px solid var(--mama-line);
	border-radius: var(--mama-radius-lg); overflow: hidden; transition: box-shadow .25s, transform .25s, border-color .25s; }
.mama-wp__card:hover { box-shadow: 0 18px 44px rgba(39, 29, 23, .12); transform: translateY(-3px); border-color: transparent; }
.mama-wp__cover { display: flex; align-items: flex-end; justify-content: center; background: var(--mama-cream); padding: 26px 26px 0; height: 220px; overflow: hidden; }
.mama-wp__cover img { width: auto; height: 100%; max-width: 70%; object-fit: contain; border-radius: 3px 6px 0 0;
	box-shadow: 0 2px 4px rgba(39, 29, 23, .08), 0 16px 32px rgba(39, 29, 23, .16); transform: translateY(6%); transition: transform .3s ease; }
.mama-wp__card:hover .mama-wp__cover img { transform: translateY(2%) rotate(-1.2deg); }
.mama-wp__body { display: flex; flex-direction: column; flex: 1; padding: 22px 22px 22px; }
.mama-wp__worry { font: italic 500 clamp(1.3rem, 2vw, 1.55rem)/1.2 var(--mama-serif) !important; letter-spacing: -.01em; margin: 0 0 .55rem !important; }
.mama-wp__worry a { color: var(--mama-ink); text-decoration: none; }
.mama-wp__worry a::after { content: ""; position: absolute; inset: 0; z-index: 1; } /* whole card opens the book page */
.mama-wp__worry a:focus-visible { outline: none; }
.mama-wp__card:has(.mama-wp__worry a:focus-visible) { outline: 2px solid var(--mama-accent); outline-offset: 3px; }
.mama-wp__book { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 8px; margin: 0 0 .9rem; }
.mama-wp__name { font: 700 .95rem/1.3 var(--mama-head); color: var(--mama-accent); }
.mama-wp__meta { font: 500 .8rem var(--mama-head); color: var(--mama-muted); }
.mama-wp__pts { list-style: none; margin: 0 0 1.1rem; padding: 0; }
.mama-wp__pts li { position: relative; padding-left: 24px; margin: 0 0 8px; font-size: .92rem; line-height: 1.45; color: #4a3f39; }
.mama-wp__pts li::before { content: ""; position: absolute; left: 2px; top: .38em; width: 13px; height: 7px; border-left: 2px solid var(--mama-sage); border-bottom: 2px solid var(--mama-sage); transform: rotate(-45deg); }
.mama-wp__buy { margin-top: auto; display: flex; flex-wrap: wrap; align-items: center; gap: 10px 14px; padding-top: 16px; border-top: 1px solid var(--mama-line); }
.mama-wp__price { flex: 1 0 100%; display: flex; align-items: baseline; gap: 8px; }
.mama-wp__price .mama-price__now { font: 600 1.45rem/1 var(--mama-serif); color: var(--mama-ink); }
.mama-wp__price .mama-price__was { font-size: .95rem; color: var(--mama-muted); }
.mama-wp__btn, .mama-wp__see, .mama-wp__bundle .mama-btn { position: relative; z-index: 2; } /* stay clickable above the card link */
.mama-wp__btn { flex: 1 1 auto; justify-content: center; text-align: center; }
.mama-wp__see { font: 600 .9rem var(--mama-head); color: var(--mama-ink); text-decoration: underline; text-decoration-color: var(--mama-accent); text-underline-offset: 4px; white-space: nowrap; }
.mama-wp__see:hover { color: var(--mama-accent); }

.mama-wp__bundle { display: grid; grid-template-columns: 170px 1fr auto; align-items: center; gap: clamp(16px, 3vw, 34px);
	margin-top: clamp(18px, 2.4vw, 26px); padding: 18px clamp(18px, 3vw, 30px); background: var(--mama-ink); color: #fff; border-radius: var(--mama-radius-lg); }
.mama-wp__bundle-art { width: 100%; height: auto; border-radius: 12px; }
.mama-wp__bundle-title { font: 500 clamp(1.2rem, 2vw, 1.45rem)/1.25 var(--mama-serif); margin: 0 0 .3rem; color: #fff; }
.mama-wp__bundle-sub { margin: 0; color: rgba(255, 255, 255, .72); font-size: .93rem; line-height: 1.5; }
.mama-wp__bundle-cta { display: flex; flex-direction: column; align-items: center; gap: 10px; }
.mama-wp__bundle .mama-btn { background: var(--mama-accent); white-space: nowrap; }
.mama-wp__bundle .mama-wp__see { color: #fff; }

.mama-wp__trust { list-style: none; display: flex; flex-wrap: wrap; justify-content: center; gap: 10px 28px; margin: clamp(22px, 3vw, 32px) 0 0; padding: 0; }
.mama-wp__trust li { display: flex; align-items: center; gap: 8px; font: 500 .86rem var(--mama-head); color: var(--mama-muted); }
.mama-ico { flex: 0 0 auto; color: var(--mama-accent); }
.mama-wp__free { text-align: center; margin: 1.2rem 0 0; font-size: .95rem; color: var(--mama-muted); }
.mama-wp__free a { color: var(--mama-ink); font-weight: 600; text-decoration: underline; text-decoration-color: var(--mama-accent); text-underline-offset: 4px; }

@media (max-width: 900px) {
	.mama-wp__grid { grid-template-columns: 1fr; }
	.mama-wp__card { flex-direction: row; }
	.mama-wp__cover { flex: 0 0 34%; max-width: 230px; height: auto; padding: 16px 12px; align-items: center; }
	.mama-wp__cover img { height: auto; width: 100%; max-width: 150px; border-radius: 3px 6px 6px 3px; transform: none; }
	.mama-wp__card:hover .mama-wp__cover img { transform: rotate(-1.2deg); }
	.mama-wp__bundle { grid-template-columns: 1fr; text-align: center; }
	.mama-wp__bundle-art { max-width: 240px; margin: 0 auto; }
}
@media (max-width: 600px) {
	.mama-wp__title { font-size: 1.85rem !important; }
	.mama-wp__lead { font-size: 1rem; }
	.mama-wp__card { border-radius: 20px; }
	.mama-wp__cover { flex-basis: 32%; padding: 14px 10px; }
	.mama-wp__body { padding: 16px 16px 16px 14px; }
	.mama-wp__worry { font-size: 1.18rem !important; }
	.mama-wp__pts { display: none; }
	.mama-wp__book { margin-bottom: .7rem; }
	.mama-wp__buy { padding-top: 12px; gap: 8px 12px; }
	.mama-wp__price .mama-price__now { font-size: 1.25rem; }
	.mama-wp__btn { padding: .7em 1em; font-size: .9rem; }
	.mama-wp__trust { justify-content: flex-start; gap: 8px 16px; }
	.mama-wp__trust li { flex: 0 0 calc(50% - 8px); font-size: .8rem; }
}
@media (prefers-reduced-motion: reduce) { .mama-wp__card, .mama-wp__cover img { transition: none; } .mama-wp__card:hover { transform: none; } }

/* home H1 keeps the eyebrow look */
h1.mama-dyk__lead { font: italic 500 clamp(1.25rem, 2.4vw, 1.6rem)/1.2 var(--mama-serif) !important; letter-spacing: 0; color: var(--mama-accent); margin: 0 0 .8rem; }

/* ---------- v2.0 languages */
.mama-lang { position: relative; flex: 0 0 auto; }
.mama-lang > summary { list-style: none; display: flex; align-items: center; gap: 6px; min-height: 40px; padding: 0 10px; border-radius: 999px; cursor: pointer;
	font: 600 .8rem/1 var(--mama-head); letter-spacing: .04em; color: var(--mama-ink); border: 1px solid var(--mama-rule); background: #fff; }
.mama-lang > summary::-webkit-details-marker { display: none; }
.mama-lang > summary:hover, .mama-lang[open] > summary { border-color: var(--mama-accent); color: var(--mama-accent); }
.mama-lang > summary:focus-visible { outline: 2px solid var(--mama-accent); outline-offset: 2px; }
.mama-lang ul { position: absolute; right: 0; top: calc(100% + 8px); z-index: 1000; min-width: 170px; margin: 0; padding: 6px; list-style: none;
	background: #fff; border: 1px solid var(--mama-rule); border-radius: 14px; box-shadow: var(--mama-shadow); }
.mama-lang a { display: flex; align-items: center; gap: 10px; padding: 9px 12px; border-radius: 9px; text-decoration: none; color: var(--mama-ink); font: 500 .9rem/1.2 var(--mama-head); }
.mama-lang a:hover, .mama-lang a:focus-visible { background: var(--mama-cream); outline: none; }
.mama-lang a[aria-current] { color: var(--mama-accent); font-weight: 700; }
.mama-lang__code { display: inline-block; min-width: 24px; font: 700 .7rem/1 var(--mama-head); letter-spacing: .06em; color: var(--mama-muted); }
.mama-langs ul { display: flex; flex-wrap: wrap; gap: 4px 16px; margin: 0; padding: 0; list-style: none; }
.mama-langs a { color: inherit; text-decoration: none; }
.mama-langs a:hover, .mama-langs a[aria-current] { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.mama-langs .mama-lang__code { display: none; }
.mama-en-note { margin: 0 0 .6rem; font: 600 .74rem/1.3 var(--mama-head); color: var(--mama-muted); letter-spacing: .02em; }
@media (max-width: 600px) {
	.mama-lang > summary { padding: 0 8px; min-height: 36px; }
	.mama-lang > summary svg { width: 16px; height: 16px; }
}

/* ---------- v2.0.2 language flags */
.mama-flag { flex: 0 0 auto; width: 20px; height: 20px; border-radius: 50%; box-shadow: 0 0 0 1px rgba(39, 29, 23, .12); }
.mama-lang > summary { gap: 7px; padding: 0 10px 0 7px; }
.mama-lang__chev { opacity: .6; transition: transform .2s; }
.mama-lang[open] .mama-lang__chev { transform: rotate(180deg); }
.mama-lang a { gap: 11px; }
.mama-lang a .mama-lang__code { display: none; }
.mama-lang a[aria-current] .mama-flag { box-shadow: 0 0 0 2px #fff, 0 0 0 3.5px var(--mama-accent); }
.mama-langs a { display: inline-flex; align-items: center; gap: 7px; }
.mama-langs .mama-flag { width: 16px; height: 16px; box-shadow: 0 0 0 1px rgba(255, 255, 255, .25); }
@media (max-width: 600px) { .mama-lang > summary span { display: none; } .mama-lang > summary { padding: 0 7px; } }

/* ---------- v2.2 back to top */
.mama-top { position: fixed; right: 18px; bottom: calc(18px + env(safe-area-inset-bottom)); z-index: 89; width: 48px; height: 48px; border-radius: 50%;
	display: flex; align-items: center; justify-content: center; border: 0; cursor: pointer; color: #fff; background: var(--mama-ink);
	box-shadow: 0 8px 22px rgba(39, 29, 23, .25); opacity: 0; visibility: hidden; transform: translateY(12px);
	transition: opacity .25s, transform .25s, visibility .25s, background .2s, bottom .3s; }
.mama-top.is-visible { opacity: 1; visibility: visible; transform: none; }
.mama-top:hover { background: var(--mama-accent); }
.mama-top:focus-visible { outline: 3px solid var(--mama-accent); outline-offset: 3px; }
body.has-bookbar .mama-top { bottom: calc(86px + env(safe-area-inset-bottom)); }
@media (max-width: 600px) { .mama-top { right: 12px; width: 44px; height: 44px; } }
@media (prefers-reduced-motion: reduce) { .mama-top { transition: none; } }

/* ---------- v2.3 phones: header fits, readable answers, comfortable tap targets */
html, body { overflow-x: clip; } /* never scroll sideways, even if one element misbehaves (clip keeps the sticky header working) */
@media (max-width: 600px) {
	.mama-header > .wp-block-group { gap: 8px; }
	.mama-header .wp-block-site-title { min-width: 0; flex: 1 1 auto; font-size: clamp(.9rem, 4.5vw, 1.1rem) !important; }
	.mama-header .wp-block-site-title a { max-width: 100%; overflow: hidden; text-overflow: ellipsis; gap: 8px; }
	.mama-header .wp-block-group.is-nowrap { gap: 2px; flex: 0 0 auto; }
	.mama-lang > summary { width: 44px; min-height: 44px; padding: 0; justify-content: center; border-color: transparent; background: transparent; }
	.mama-lang[open] > summary, .mama-lang > summary:hover { border-color: var(--mama-rule); }
	.mama-lang__chev { display: none; }
	.mama-lang ul { right: 0; min-width: 190px; }
	.mama-lang a { padding: 12px 12px; }

	/* iPhones zoom into fields with text under 16px */
	input[type=search], input[type=email], input[type=text], textarea, select { font-size: 16px !important; }

	/* the "short answer" stays prominent without a wall of large bold text */
	.mama-article-body p.has-large-font-size { font: 400 1.1rem/1.6 var(--mama-serif) !important; }
	.mama-article-body h2 { font-size: 1.5rem; line-height: 1.2; }
	.mama-article-body h3 { font-size: 1.2rem; }

	/* small text links get an invisible 44px tap area */
	.mama-link, .mama-wp__see, .mama-crumbs a, .mama-footer li a, .mama-langs a, .mama-q-more a { position: relative; }
	.mama-link::after, .mama-wp__see::after, .mama-crumbs a::after, .mama-footer li a::after, .mama-langs a::after, .mama-q-more a::after {
		content: ""; position: absolute; left: -6px; right: -6px; top: 50%; height: 44px; transform: translateY(-50%); }
	.mama-footer li + li { margin-top: 6px; }
	.mama-langs ul { gap: 10px 20px; }

	/* keep the back-to-top button clear of the sticky buy bar and the screen edge */
	.mama-top { right: 14px; }
}

/* ---------- v2.3.2 phones: header search opens as a full-width bar over the header row */
@media (max-width: 600px) {
	.mama-header > .wp-block-group { position: relative; }
	.mama-header .wp-block-search:not(.wp-block-search__searchfield-hidden) { position: absolute; inset: 0; z-index: 6; display: flex; align-items: center; background: var(--mama-paper, #fffcf7); }
	.mama-header .wp-block-search:not(.wp-block-search__searchfield-hidden) .wp-block-search__inside-wrapper {
		width: 100% !important; display: flex; align-items: center; background: #fff; border: 1px solid var(--mama-rule) !important; border-radius: 999px; padding: 2px 2px 2px 6px !important; box-shadow: var(--mama-shadow); }
	.mama-header .wp-block-search:not(.wp-block-search__searchfield-hidden) .wp-block-search__input {
		flex: 1 1 auto; width: auto !important; min-width: 0; height: 42px; border: 0 !important; padding: 0 12px; background: transparent; font-family: var(--mama-head); outline: none; box-shadow: none; }
	.mama-header .wp-block-search:not(.wp-block-search__searchfield-hidden) .wp-block-search__button { flex: 0 0 auto; background: var(--mama-accent); color: #fff; }
}
