/* A shared editorial grid, extending Guthack's warm Swiss modernist identity. */
:root { --gh-soft-border: #e7d4c6; --gh-emphasis: #76574f; --gh-section-space: clamp(3rem, 6vw, 5rem); --gh-column-gap: clamp(1.5rem, 3vw, 2.5rem); }
html { scrollbar-color: var(--gh-border) var(--gh-paper); }
.site-topics { position: relative; }
.site-topics > summary { display: inline-flex; gap: .5rem; list-style: none; }
.site-topics > summary::-webkit-details-marker { display: none; }
.site-topics[open] > summary svg { transform: rotate(180deg); }
.site-topics ul { left: 0; top: calc(100% + .5rem); width: min(24rem, calc(100vw - 48px)); max-width: none; border: 0; box-shadow: 0 8px 24px #33302e26; padding: .5rem; }
.site-topics a { text-decoration: none; }
/* Optically equal action padding, including the legacy share buttons. */
.entry-share.btn-group > .btn { display: inline-flex; align-items: center; justify-content: center; padding: .65rem 1rem; font-size: 1rem; line-height: 1.5; }
.entry-share .btn > div { display: inline-flex; align-items: center; gap: .5rem; }
.entry-share .btn { gap: .5rem; }
.entry-share .btn :is(.fa, span) { margin: 0; padding: 0; }
.entry-share .btn .share-fa { width: 1.1em; text-align: center; }
/* Home: one clear introductory statement opposite three routes into the research. */
.home .posts.container-fluid { padding: 0; }
.home .main-block { margin: 0 0 var(--gh-section-space); padding: clamp(1.5rem, 4vw, 3rem) !important; gap: var(--gh-column-gap); }
.home .main-block__overview { color: #8b493f; font-size: clamp(1.5rem, 1.05rem + 1.35vw, 2.25rem); line-height: 1.4; font-weight: 500; letter-spacing: -.025em; }
.home .main-block > div { display: flex; flex-direction: column; gap: 0; }
.home .main-block__tile { padding: 1.25rem 0 !important; }
.home .main-block__tile + .main-block__tile { border-top: 1px solid var(--gh-border); }
.home .main-block__heading { font-size: 1.375rem; text-decoration: none; }
.home .main-block__tile:hover .main-block__heading { text-decoration: underline; }
.home .main-block__text { max-width: 36ch; }
.home :is(#Lifestyle, #Supplements, #Treatments, #the-gut) { margin: 0 0 var(--gh-section-space) !important; }
.home :is(#Lifestyle, #Supplements, #Treatments, #the-gut) > .col-12 { padding-left: 0; padding-right: 0; }
.home .container-parent { padding: 0 !important; gap: var(--gh-column-gap); }
.home :is(#Lifestyle, #Supplements, #Treatments) > .col-12:first-child { margin-bottom: 1rem; }
.home :is(#Lifestyle, #Supplements, #Treatments) .text-large { margin-bottom: 1rem !important; }
/* Newsletter: the heading, fields, and action share one desktop row. */
.home #Newsletter { display: grid !important; grid-template-columns: 1fr; gap: 1.5rem; align-items: end; padding: 1.5rem 0 !important; margin: var(--gh-section-space) 0 !important; border: 0; }
.home #Newsletter > div { width: 100%; max-width: none; padding: 0; margin: 0 !important; }
.home #Newsletter h2 { font-size: 1.5rem !important; }
.home #Newsletter .text-large { font-size: 1rem !important; line-height: 1.5 !important; margin: 0; max-width: 30ch; }
.home .mc4wp-form-fields { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1.4fr) auto; gap: 1.25rem; align-items: end; }
.home .mc4wp-form-fields .form-group { margin: 0; }
.home .mc4wp-form-fields input { margin: 0 !important; }
.home .mc4wp-form-fields label { margin-bottom: .25rem; }
.home .mc4wp-form-fields input[type=submit] { align-self: end; }
.home .mc4wp-response:not(:empty) { margin-top: 1rem; }
/* The Gut follows the same column edges and image/text proportions as archives. */
.home #the-gut { display: grid !important; grid-template-columns: minmax(0,1fr); gap: 2.5rem var(--gh-column-gap); }
.home #the-gut > .col-12:first-child { grid-column: 1 / -1; }
.home #the-gut > .col-12:first-child p { margin: 0; }
.home .the-gut-content { display: flex !important; flex-direction: column; gap: 1.25rem; margin: 0 !important; padding: 0 !important; border-bottom: 1px solid var(--gh-border); padding-bottom: 1.5rem !important; }
.home .the-gut-section__image { position: relative; width: 100%; aspect-ratio: 3 / 2; flex-shrink: 0; overflow: hidden; padding: 0; border: 0; background: var(--gh-paper); }
.home .the-gut-section__image img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.home .the-gut-section__info { width: 100%; }
.home .the-gut-section__info h3 { font-size: 1.375rem !important; line-height: 1.35; }
.home .the-gut-section__info p { font-size: 1rem; line-height: 1.65; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden; }
/* Shared article previews: cream illustration, clear title, concise summary. */
.article-collection { margin-top: 0; margin-bottom: var(--gh-section-space); }
.article-collection__heading { margin: 0 0 2rem; }
.article-grid { display: grid; grid-template-columns: minmax(0,1fr); gap: 3rem var(--gh-column-gap); }
.article-card { min-width: 0; display: flex; flex-direction: column; border-bottom: 1px solid var(--gh-border); }
.article-card__image { position: relative; display: block; aspect-ratio: 3 / 2; flex-shrink: 0; background: var(--gh-paper); overflow: hidden; }
.article-card__image img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.article-card__body { display: flex; flex-direction: column; flex: 1; padding: 1.5rem 0; }
.article-card :is(h2, h3) { font-size: 1.375rem; line-height: 1.35; margin: 0 0 .75rem; font-weight: 600; letter-spacing: -.015em; text-wrap: pretty; }
.article-card :is(h2, h3) a { color: var(--gh-link); }
.article-card :is(h2, h3) a:hover { text-decoration: underline; }
.article-card__excerpt { color: var(--gh-muted); font-size: 1rem; line-height: 1.65; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden; margin-bottom: 1.25rem; }
.article-card .article-card__author { margin: auto 0 0; color: var(--gh-muted); font-size: .9375rem; line-height: 1.5; }
.archive-data .wrap { padding-top: 2rem; padding-bottom: clamp(3rem, 6vw, 5rem); }
.archive-hero { display: grid; gap: 1.5rem; padding: clamp(1.5rem, 4vw, 3rem); background: var(--gh-paper); }
.archive-hero__copy { min-width: 0; }
.archive-hero h1 { max-width: 24ch; margin: 0; color: #8b493f; }
.archive-hero .archive-hero__description { max-width: 52ch; color: var(--gh-muted); margin: 1.25rem 0 0; font-size: 1.125rem; line-height: 1.65; }
.archive-hero .archive-hero__count { font-size: .9375rem; color: var(--gh-muted); margin: 2rem 0 0; }
.archive-hero > img { display: block; width: 100%; height: 160px; object-fit: contain; }
/* Static prose and forms use the same type, color, and line length as articles. */
.page-prose { max-width: 68ch; font-size: 1.125rem; line-height: 1.75; color: var(--gh-ink); }
.page-prose :is(p, li) { font-size: inherit; line-height: inherit; letter-spacing: normal; }
.page-prose p { margin-bottom: 1.5rem; }
.page-prose strong { font-weight: 600; }
:is(.page-prose, .main-content__body) :is(strong, b) { color: var(--gh-emphasis); }
:is(.page-prose, .main-content__body) a :is(strong, b) { color: inherit; }
.page-contact-us-data .page-prose { max-width: 48rem; }
.page-prose .wpcf7-form :is(input:not([type=submit]):not([type=hidden]), textarea, label) { font-size: 1.125rem; line-height: 1.5; }
.page-prose .wpcf7-form .form-group { margin-bottom: 1.75rem; }
.page-prose .wpcf7-form label { margin-bottom: .5rem; }
.page-prose .wpcf7-form textarea { min-height: 11rem; }
.page-prose .wpcf7-form input[type=submit] { font-size: 1.125rem; padding: .65rem 1.25rem; }
.search-result { border-bottom: 1px solid var(--gh-border); padding: 0 0 2rem; margin: 0 0 2rem; }
.search-result__title { font-size: 1.5rem; line-height: 1.35; }
.search-result__meta { display: flex; flex-wrap: wrap; gap: .5rem 1rem; color: var(--gh-muted); font-size: .9375rem; }
.search-result__excerpt { font-size: 1.125rem; }
@media (min-width: 640px) {
  .article-grid, .home #the-gut { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .archive-hero--illustrated { grid-template-columns: minmax(0,2fr) minmax(0,1fr); gap: 2rem; align-items: center; }
  .archive-hero > img { height: clamp(200px, 22vw, 280px); }
}
@media (min-width: 992px) {
  .home .main-block { grid-template-columns: minmax(0,1.7fr) minmax(0,1fr); gap: 4rem; }
  .home .main-block > div { border-top: 0; }
  .home .main-block__tile:first-child { padding-top: 0 !important; }
  .home #Newsletter { grid-template-columns: minmax(0,1fr) minmax(0,2fr); gap: 2.5rem; }
  .article-grid, .home #the-gut { grid-template-columns: repeat(3,minmax(0,1fr)); }
}
@media (max-width: 639px) {
  .site-topics { position: static; }
  .site-topics ul { left: 0; top: calc(100% + .5rem); width: 100%; }
  .home .mc4wp-form-fields { grid-template-columns: minmax(0,1fr); gap: 1rem; }
  .home .mc4wp-form-fields input[type=submit] { justify-self: start; }
  .home .main-block { padding: 1.5rem !important; }
  .home .main-block__overview { font-size: 1.5rem; }
}
.home .white-block { margin: 0; padding-top: 0 !important; }
.glossary-search { margin: 2rem 0; }
.article-navigation { align-self: start; padding: .75rem 1rem !important; }
.article-navigation details { margin: 0; }
.article-navigation summary { display: flex; align-items: center; gap: .65rem; min-height: 44px; font-size: 1.0625rem; font-weight: 500; line-height: 1.4; list-style: none; }
.article-navigation summary::-webkit-details-marker { display: none; }
.article-navigation summary > svg { flex: 0 0 16px; color: var(--gh-link); }
.article-navigation details[open] > summary { margin-bottom: .75rem; }
.article-navigation details[open] > summary > svg { transform: rotate(90deg); }
.article-navigation summary:focus-visible, .article-navigation a:focus-visible { outline: 3px solid var(--gh-link); outline-offset: 3px; }
.article-navigation .toc-list, .article-navigation .toc-list li { margin: 0; padding: 0; }
.article-navigation .toc-list li { font-size: 1rem; line-height: 1.45; }
.article-navigation .toc-list a { display: grid; grid-template-columns: minmax(1.35rem, max-content) minmax(0, 1fr); column-gap: .6rem; align-items: baseline; padding: .45rem 0; text-decoration: none; }
.article-navigation .toc-list a:hover .toc-label { text-decoration: underline; text-underline-offset: .18em; }
.article-navigation .toc_number { color: var(--gh-muted); font-size: .875em; font-weight: 400; font-variant-numeric: tabular-nums; }
.article-navigation .toc-list ul { padding-left: 1.95rem; margin: .15rem 0 .45rem; }
.article-navigation .toc-list ul li { font-size: .9375rem; }
.article-navigation .toc-list ul a { padding-block: .3rem; }
@media (min-width: 992px) {
  .article-navigation > details + details, .article-navigation > nav { margin-top: 1.25rem; }
}
@media (max-width: 991px) {
  .home .main-block { row-gap: clamp(3rem, 6vw, 4.5rem); }
  .home .main-block > div, .home .main-block__tile { width: 100%; max-width: none; }
  .home .main-block__text { max-width: none; }
}
.site-search button { flex-shrink: 0; white-space: nowrap; }

.article-card__author a, .search-result__meta a { color: var(--gh-link); text-decoration: underline; text-decoration-thickness: 1px; }
