:root {
  --tm-rule: 1px solid var(--wp--preset--color--line);
  --tm-shadow: 0 18px 55px rgba(22, 36, 42, 0.08);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { text-rendering: optimizeLegibility; }
a { text-underline-offset: 0.18em; text-decoration-thickness: 1px; }
a:hover { color: var(--wp--preset--color--rust); }

.site-masthead {
  border-bottom: var(--tm-rule);
  padding-top: 1rem;
  padding-bottom: 1rem;
  background: rgba(245, 241, 232, 0.96);
}
.masthead-inner { min-height: 3rem; }
.wordmark a,
.footer-wordmark a { color: var(--wp--preset--color--ink); text-decoration: none; }
.wordmark { white-space: nowrap; font-family: var(--wp--preset--font-family--serif); font-size: clamp(1.2rem, 2vw, 1.55rem); font-weight: 700; letter-spacing: 0.08em; }
.site-kicker { color: var(--wp--preset--color--muted); letter-spacing: 0.06em; }
.wp-block-navigation a { text-decoration: none; }

.site-main { padding-top: clamp(2.5rem, 7vw, 6rem); padding-bottom: clamp(3.5rem, 9vw, 8rem); }
.hero-band { padding-top: 0; padding-bottom: clamp(4rem, 9vw, 8rem); }
.hero-grid {
  display: grid;
  grid-template-columns: minmax(8rem, 0.42fr) minmax(0, 1.6fr) minmax(14rem, 0.7fr);
  align-items: end;
  gap: clamp(1.5rem, 4vw, 4rem);
  padding-top: clamp(1.5rem, 4vw, 3rem);
  border-top: 4px solid var(--wp--preset--color--ink);
}
.eyebrow,
.section-number { color: var(--wp--preset--color--rust); font-size: 0.72rem; font-weight: 800; letter-spacing: 0.16em; text-transform: uppercase; }
.hero-title { margin: 0; }
.hero-title em { color: var(--wp--preset--color--rust); font-style: normal; }
.hero-note { padding: 1.25rem 0 0 1.25rem; border-left: var(--tm-rule); }

.home-tool {
  margin-top: 0;
  margin-bottom: clamp(4rem, 9vw, 8rem);
  padding: clamp(1.5rem, 4vw, 3.5rem);
  background: var(--wp--preset--color--surface);
  border: var(--tm-rule);
  box-shadow: var(--tm-shadow);
}
.latest-section { margin-bottom: clamp(4rem, 8vw, 7rem); }
.section-heading-row { padding-bottom: 1rem; border-bottom: 3px solid var(--wp--preset--color--ink); }
.editorial-query .wp-block-post-template { gap: 0; }
.article-row { min-height: 16rem; padding: 1.6rem 0; border-bottom: var(--tm-rule); }
.article-row:nth-child(odd) { padding-right: clamp(1rem, 3vw, 3rem); border-right: var(--tm-rule); }
.article-row:nth-child(even) { padding-left: clamp(1rem, 3vw, 3rem); }
.article-row .wp-block-post-terms a { color: var(--wp--preset--color--rust); text-decoration: none; }
.article-row .wp-block-post-title a,
.archive-row .wp-block-post-title a { color: var(--wp--preset--color--ink); text-decoration: none; }
.article-row .wp-block-post-excerpt__more-link { font-weight: 700; }

.method-band { padding-top: clamp(3rem, 7vw, 6rem); padding-bottom: clamp(3rem, 7vw, 6rem); background: var(--wp--preset--color--sand); border-top: var(--tm-rule); border-bottom: var(--tm-rule); }
.method-band .wp-block-column { padding-right: clamp(1rem, 3vw, 2.5rem); }
.method-band .wp-block-column + .wp-block-column { padding-left: clamp(1rem, 3vw, 2.5rem); border-left: 1px solid rgba(22, 36, 42, 0.24); }

.article-main { padding-top: clamp(3rem, 7vw, 6rem); }
.article-head { margin-bottom: clamp(3rem, 8vw, 6rem); padding-bottom: clamp(2rem, 5vw, 4rem); border-bottom: 4px solid var(--wp--preset--color--ink); }
.article-head > .wp-block-post-terms a { color: var(--wp--preset--color--rust); text-decoration: none; font-weight: 700; }
.article-meta { color: var(--wp--preset--color--muted); font-size: 0.8rem; letter-spacing: 0.04em; }
.article-main .wp-block-post-content > h2 { margin-top: 4rem; padding-top: 1rem; border-top: 3px solid var(--wp--preset--color--ink); }
.article-main .wp-block-post-content > h3 { margin-top: 2.8rem; }
.article-main .wp-block-post-content > p { margin-top: 1.4rem; }
.article-main .wp-block-table { margin-top: 2rem; margin-bottom: 2rem; overflow-x: auto; }
.article-main .wp-block-table table { border-collapse: collapse; font-size: 0.92rem; }
.article-main .wp-block-table th { background: var(--wp--preset--color--ink); color: var(--wp--preset--color--surface); text-align: left; }
.article-main .wp-block-table td,
.article-main .wp-block-table th { padding: 0.85rem; border: 1px solid var(--wp--preset--color--line); }
.article-main .wp-block-table tbody tr:nth-child(even) { background: rgba(231, 221, 199, 0.34); }
.article-note { margin-top: 3rem; padding: 1.5rem; background: var(--wp--preset--color--sand); }
.page-main > .wp-block-post-title { margin-bottom: 3rem; padding-bottom: 1.5rem; border-bottom: 4px solid var(--wp--preset--color--ink); }
.archive-row { padding: 2rem 0; border-top: var(--tm-rule); }
.error-main { min-height: 55vh; }

.site-footer { padding-top: clamp(3rem, 7vw, 6rem); padding-bottom: 2rem; background: var(--wp--preset--color--ink); color: var(--wp--preset--color--paper); }
.site-footer a { color: var(--wp--preset--color--paper); }
.footer-wordmark { font-family: var(--wp--preset--font-family--serif); font-size: 1.5rem; letter-spacing: 0.08em; }
.copyright { margin-top: 3rem; padding-top: 1.5rem; border-top: 1px solid rgba(245, 241, 232, 0.24); opacity: 0.75; }

@media (max-width: 820px) {
  .masthead-inner { flex-wrap: nowrap !important; }
  .hero-grid { grid-template-columns: 1fr; align-items: start; }
  .hero-note { max-width: 36rem; }
  .article-row:nth-child(odd),
  .article-row:nth-child(even) { padding-left: 0; padding-right: 0; border-right: 0; }
  .method-band .wp-block-column + .wp-block-column { padding-left: 0; border-left: 0; border-top: 1px solid rgba(22, 36, 42, 0.24); padding-top: 1.5rem; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}
