/* MommyTales blog design for posts written by the SEO Blog Agent.
   Matches the hand-built posts (e.g. /how-to-teach-phonics-at-home/). */
.mtsa-post {
	--pink: #EC1E63; --pink-dark: #D10E52; --orange: #FF7A2F; --purple: #7B5FBF;
	--bg-soft: #FDF0F2; --text-dark: #241F47; --text-soft: #6B6580; --line: #F2E9EC;
	font-family: 'Poppins', sans-serif; color: var(--text-dark);
	max-width: 820px; margin: 0 auto; padding: 30px 20px 60px;
	line-height: 1.75; font-size: 16px;
}
/* Astra's full-width (page builder) layout sets max-width:none on every
   direct child of .entry-content with a stronger selector; keep the
   820px reading column like the hand-built posts (.mt-daycare-blog). */
body .entry-content > .mtsa-post.blog-wrap,
body .entry-content[data-ast-blocks-layout] > .mtsa-post.blog-wrap {
	max-width: 820px !important;
	width: 100%;
	margin-left: auto !important;
	margin-right: auto !important;
}
.mtsa-post *, .mtsa-post *::before, .mtsa-post *::after { box-sizing: border-box; }
/* Astra also caps direct children of the body column; let content fill the 820px. */
.mtsa-post .mtsa-body > * { max-width: 100%; margin-left: 0; margin-right: 0; }

/* Header */
.mtsa-post .blog-kicker {
	display: inline-block; background: var(--bg-soft); color: var(--pink);
	font-family: 'Nunito', sans-serif; font-weight: 800; font-size: 11.5px; letter-spacing: .08em;
	text-transform: uppercase; padding: 6px 14px; border-radius: 999px; margin-bottom: 16px;
}
.mtsa-post .blog-h1 { font-family: 'Baloo 2', sans-serif; font-weight: 700; font-size: 34px; line-height: 1.2; margin: 0 0 14px; color: var(--text-dark); }
.mtsa-post .blog-meta { font-size: 13px; color: var(--text-soft); margin-bottom: 28px; display: flex; gap: 14px; flex-wrap: wrap; }
.mtsa-post .blog-banner { width: 100%; border-radius: 22px; overflow: hidden; margin-bottom: 36px; box-shadow: 0 14px 34px -18px rgba(36,31,71,.25); }
.mtsa-post .blog-banner img { width: 100%; height: auto; display: block; aspect-ratio: 16/9; object-fit: cover; }

/* Table of contents */
.mtsa-post .toc { background: var(--bg-soft); border-radius: 18px; padding: 22px 26px; margin-bottom: 36px; }
.mtsa-post .toc .toc-title { font-family: 'Baloo 2', sans-serif; font-weight: 700; font-size: 15px; margin: 0 0 12px; color: var(--purple); }
.mtsa-post .toc ol { margin: 0; padding-left: 20px; }
.mtsa-post .toc li { margin-bottom: 7px; font-size: 14px; }
.mtsa-post .toc a { color: var(--text-dark); font-weight: 500; text-decoration: none !important; }
.mtsa-post .toc a:hover { color: var(--pink); }

/* Body text */
.mtsa-post h2, .mtsa-post h3, .mtsa-post h4 { font-family: 'Baloo 2', sans-serif; font-weight: 700; color: var(--text-dark); }
.mtsa-post h2 { font-size: 25px; line-height: 1.3; margin: 44px 0 16px; scroll-margin-top: 90px; }
.mtsa-post h3 { font-size: 19px; line-height: 1.35; margin: 28px 0 12px; }
.mtsa-post p { margin: 0 0 18px; color: var(--text-dark); }
.mtsa-post .mtsa-body > p:first-child { font-size: 18px; line-height: 1.6; color: var(--text-soft); }
.mtsa-post ul, .mtsa-post ol { margin: 0 0 20px; padding-left: 22px; }
.mtsa-post li { margin-bottom: 9px; }
.mtsa-post li::marker { color: var(--pink); font-weight: 700; }
.mtsa-post strong { color: var(--text-dark); font-weight: 600; }
.mtsa-post a { color: var(--pink); font-weight: 600; text-decoration: none !important; }
.mtsa-post a:hover { text-decoration: underline !important; }

/* Tables */
.mtsa-post .wp-block-table { margin: 26px 0; overflow-x: auto; border-radius: 16px; border: 1.5px solid var(--line); box-shadow: 0 8px 20px -12px rgba(36,31,71,.12); }
.mtsa-post .wp-block-table table { width: 100%; border-collapse: collapse; font-size: 14.5px; margin: 0; border: 0; }
.mtsa-post .wp-block-table thead { border-bottom: 0; }
.mtsa-post .wp-block-table th { background: var(--bg-soft); color: var(--purple); font-family: 'Nunito', sans-serif; font-weight: 800; text-align: left; padding: 12px 14px; border: 0; border-bottom: 1.5px solid var(--line); }
.mtsa-post .wp-block-table td { padding: 11px 14px; border: 0; border-bottom: 1px solid var(--line); vertical-align: top; }
.mtsa-post .wp-block-table tr:last-child td { border-bottom: 0; }
.mtsa-post .wp-block-table tbody tr:nth-child(even) td { background: #FFFBFC; }

/* Images */
.mtsa-post .wp-block-image { margin: 28px 0; }
.mtsa-post .wp-block-image img { width: 100%; height: auto; border-radius: 20px; display: block; box-shadow: 0 12px 30px -18px rgba(36,31,71,.25); }

/* Yoast FAQ block */
.mtsa-post .schema-faq { margin: 8px 0 30px; }
.mtsa-post .schema-faq-section { background: #fff; border: 1.5px solid var(--line); border-radius: 16px; padding: 18px 22px; margin-bottom: 12px; box-shadow: 0 8px 20px -14px rgba(36,31,71,.14); }
.mtsa-post .schema-faq-question { display: block; font-weight: 600; font-size: 15.5px; color: var(--text-dark); margin-bottom: 6px; }
.mtsa-post .schema-faq-question::before { content: "Q. "; color: var(--pink); font-family: 'Nunito', sans-serif; font-weight: 800; }
.mtsa-post .schema-faq-answer { font-size: 14.5px; color: var(--text-soft); margin: 0; }

/* Closing section: last heading + its paragraphs as a soft CTA card */
.mtsa-post .mtsa-cta { background: linear-gradient(120deg, #FCE7EA 0%, #FCEFEA 100%); border-radius: 20px; padding: 26px 26px 10px; margin: 40px 0 0; text-align: center; }
.mtsa-post .mtsa-cta h2 { margin-top: 0; font-size: 22px; }
.mtsa-post .mtsa-cta p { color: var(--text-dark); }

@media (max-width: 680px) {
	.mtsa-post { padding: 22px 16px 48px; font-size: 15.5px; }
	.mtsa-post .blog-h1 { font-size: 26px; }
	.mtsa-post h2 { font-size: 22px; }
	.mtsa-post .mtsa-body > p:first-child { font-size: 16px; }
}

/* Theme's own title and featured image are replaced by the header above. */
.mtsa-styled .entry-header .entry-title,
.mtsa-styled .ast-single-post-featured-section,
.mtsa-styled .post-thumb-img-content { display: none !important; }
