.baby-shower-guide .article-body { overflow-wrap: anywhere; }
.baby-shower-guide .article-body h2 { line-height: 1.55; }
.baby-shower-guide .article-body h3 { margin: 1.8rem 0 .6rem; font-size: 1.2rem; font-weight: 700; line-height: 1.7; color: var(--ink); }
.baby-shower-guide .article-body p { margin-block: 1rem; }
.baby-shower-guide .article-body section[id] { scroll-margin-top: 6rem; }
.baby-shower-guide .article-body section > p > a,
.baby-shower-guide .article-intro + p > a { color: var(--sage-deep); text-decoration: underline; text-underline-offset: .25em; }
.baby-shower-guide .guide-toc { background: #eef4f1; border: 1px solid var(--line); border-radius: 1rem; margin-block: 2rem; padding: 1.25rem; }
.baby-shower-guide .guide-toc h2 { margin: 0 0 .75rem; font: inherit; font-size: 1.1rem; font-weight: 700; }
.baby-shower-guide .guide-toc ul { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .3rem 1rem; }
.baby-shower-guide .guide-toc a { display: flex; align-items: center; min-height: 2.75rem; line-height: 1.7; color: var(--sage-deep); font-size: 1rem; text-decoration: underline; text-underline-offset: .25em; }
.baby-shower-guide .guide-figure { margin: 2rem 0; }
.baby-shower-guide .guide-figure img { display: block; width: 100%; height: auto; border-radius: 1rem; }
.baby-shower-guide .guide-figure figcaption { color: var(--muted); font-size: .875rem; line-height: 1.85; margin-top: .6rem; }
.baby-shower-guide .article-table-wrap { max-width: 100%; }
.baby-shower-guide .article-table-wrap caption { caption-side: top; padding: .9rem 1rem; color: var(--ink); text-align: start; font-weight: 700; font-size: 1rem; }
.baby-shower-guide .article-table-wrap th,
.baby-shower-guide .article-table-wrap td { font-size: 1rem; }
.baby-shower-guide .article-table-wrap tbody th { background: #fffdf9; color: var(--ink); font-weight: 700; }
.baby-shower-guide .guide-program { margin: 1.5rem 0; border-block-start: 1px solid var(--line); }
.baby-shower-guide .guide-program > div { display: grid; grid-template-columns: 8.5rem minmax(0, 1fr); gap: 1rem; border-block-end: 1px solid var(--line); padding: 1rem 0; }
.baby-shower-guide .guide-program dt { color: var(--sage-deep); font-weight: 700; font-size: 1rem; line-height: 1.9; }
.baby-shower-guide .guide-program dd { margin: 0; line-height: 1.9; font-size: 1rem; color: #625442; }
.baby-shower-guide .faq-list summary,
.baby-shower-guide .faq-list details > p { font-size: 1rem; line-height: 1.9; }
.baby-shower-guide .article-cta .button { max-width: 100%; white-space: normal; }
@media (max-width: 520px) {
  .baby-shower-guide .guide-toc ul { grid-template-columns: minmax(0, 1fr); }
  .baby-shower-guide .guide-program > div { grid-template-columns: minmax(0, 1fr); gap: .3rem; }
}
