/* Corporate reading style, shared by discovery, articles and practice pages.
   Keep this after the page styles: requestgroup.jp is the typography reference. */
:root {
  --request-font: Georgia, "游明朝", YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "Noto Serif JP", Meiryo, serif;
  --serif: var(--request-font);
  --sans: var(--request-font);
  --ink: #26344b;
  --navy: #001858;
  --line: #d2d9e2;
  --topic-feature-heading-weight: 500;
  --topic-feature-button-weight: 500;
}

body {
  font-family: var(--request-font);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.95;
}

/* Some older features declare their own family or weight directly. */
h1, h2, h3, h4, h5, h6,
button, input, select, textarea, summary,
.entry-number span {
  font-family: var(--request-font) !important;
}
h1, h2, h3, h4, h5, h6,
strong, b, th, caption, dt, label, summary,
button, .button, .eyebrow, .pill, .card-link,
.pdf-download, .text-link, .home-browse-link, .home-popular-link,
.development-role, .development-point, .detail-question, .entry-more {
  font-weight: 500 !important;
}
h1, h2, h3, h4, h5, h6 {
  letter-spacing: .025em;
}
button, input, select, textarea { font-size: 1rem; }
.brand, .corporate-brand > span, .main-nav a { font-weight: 500; }
.corporate-brand small, .brand small { font-weight: 400; }

/* Let illustration, title and breathing room carry the home entrances. */
.home-redesign { padding-top: 40px; }
.home-redesign .home-hero { margin-bottom: 30px; }
.home-redesign .home-hero h1 { line-height: 1.65; letter-spacing: .025em; }
.home-redesign .hero-lead { font-size: 1.125rem; line-height: 1.95; }
.home-research-basis { background: #fafbfd; border-left-width: 1px; }
.home-research-copy p { font-size: 1.0625rem; line-height: 1.95; }
.home-redesign .home-browse { padding-block: 30px 40px; border-top-width: 1px; }
.home-redesign .home-section-heading { margin-bottom: 26px; }
.home-redesign .home-section-heading h2,
.home-redesign .home-browse-label { line-height: 1.75; letter-spacing: .035em; }
.home-redesign .home-theme-grid { gap: 28px; }
.home-redesign .home-theme {
  padding: 18px 18px 24px;
  border: 0;
  border-bottom: 1px solid var(--line);
  border-radius: 0;
}
.home-redesign .home-theme h3 { line-height: 1.8; min-height: 3.6em; letter-spacing: .025em; }
.home-redesign .home-theme-copy > p { font-size: 1.0625rem; line-height: 1.95; }
.home-redesign .home-theme-image { margin-bottom: 22px; }
.home-redesign .home-concepts { background: #fafbfd; border-radius: 0; }
.home-redesign .home-concept { border-color: var(--line); border-top-width: 1px; border-radius: 0; }
.home-redesign .home-support-link { border-radius: 0; }
.home-redesign .home-practice-grid .home-support-link { border-top-width: 1px; }
.home-redesign .home-concept h3,
.home-redesign .home-support-link h3 { line-height: 1.8; }
.home-search input, .home-search button { border-radius: 2px; }

/* Body copy stays generous; metadata and compact controls retain their scale. */
.knowledge-card .card-summary, .recent-list p { font-size: 1.0625rem; line-height: 1.95; }
.article-heading .lede { line-height: 2; }
.article-body p, .editorial-section p { line-height: 2; }
.source-panel { border-top-width: 1px; }
.tj-scene, .tj-point, .tj-download, .tj-room-grid > div { border-radius: 2px; }
.tj-key { border-left-width: 1px; }
.market-work-table td::before { font-weight: 500; }

/* The separately rendered /practice page uses this same shared style. */
.publication-header, .publication-footer,
.publication-detail, #publication-index { font-family: var(--request-font); }
.publication-release h2 { line-height: 1.8; }
.practice-entry h3, .detail-program h3 { line-height: 1.8; }

/* Whole-site review: readable support text and well-separated touch targets. */
.site-footer > div { min-width: 0; }
.site-footer > div:last-of-type {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
}
.site-footer > div:last-of-type a {
  font-size: 1rem;
  letter-spacing: normal;
  line-height: 1.8;
  min-height: 44px;
  padding-block: 7px;
}
.entry-number { color: #526477; }
.entry-number span { font-size: .9375rem; line-height: 1.85; }
.check-list li::before { color: #526477; }
.publication-header nav > a,
.publication-footer nav > a,
.detail-back, .round-link {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  font-size: 1rem;
  line-height: 1.8;
  padding-block: 7px;
}
.card-link { display: inline-flex; align-items: center; min-height: 44px; }
.home-redesign .perspective-card .card-link { min-height: 44px; padding-block: 7px; }
.publication-header nav > a:first-child { font-size: .9375rem; }
.publication-search input, .collection-filters button { min-height: 44px; font-size: 1rem; }
.library-results-heading { font-size: 1.5rem; line-height: 1.8; margin: 28px 0 12px; }
.detail-audience, .detail-condition, .reference-connection,
.detail-safe-note, .program-outputs h4,
.detail-comparison h3, .detail-section .eyebrow,
.source-date, .position-label, .metadata, .card-position,
.step-role, .guide-context-link small, .recipient-comparison-row dt {
  font-size: .9375rem !important;
  line-height: 1.9;
}
.approach-list p, .section-intro > p:last-child,
.practice-entry-copy > p:not(.entry-number), .use-copy p + p {
  font-size: 1rem;
  line-height: 1.95;
}
.tj-number { color: #526477; }

@media (max-width: 760px) {
  body { font-size: 17px; line-height: 1.95; }
  .home-redesign { padding-top: 28px; }
  .home-redesign .home-hero { margin-bottom: 24px; }
  .home-redesign .hero-lead { font-size: 1.0625rem; }
  .home-redesign .home-browse { padding-block: 26px 32px; }
  .home-redesign .home-section-heading { margin-bottom: 22px; }
  .home-redesign .home-theme-grid { gap: 20px; }
  .home-redesign .home-theme { padding: 20px 4px 24px; }
  .home-redesign .home-theme h3 { min-height: 0; }
  .home-redesign .home-theme-image { margin-bottom: 0; }
  .home-redesign .home-theme-copy > p { font-size: 1rem; }
  .knowledge-card .card-summary, .recent-list p { font-size: 1rem; }
  .entry-number span { font-size: .9375rem; }
  .detail-back, .round-link { font-size: 1rem; }
}
@media (max-width: 359px) {
  .home-redesign .home-theme-image { margin-bottom: 18px; }
}

/* Keep the remaining practice instructions and actions readable on small screens. */
.publication-hero-copy > p:not(.eyebrow):not(.hero-lead),
.collection-heading > p,
.program-outputs p,
.detail-source-note,
.reference-list li,
.detail-program summary,
.publication-button,
.mission-inner .text-link,
.publication-release .text-link {
  font-size: 1rem;
}
.step-position,
.source-panel .reading-note,
.library-card .material-purpose span,
.library-card .material-extent {
  font-size: .9375rem;
}
.main-nav a[aria-current="page"] { font-weight: 500; }
.home-diagram-related a { min-height: 44px; }
.home-redesign .home-practice-rooms .home-practice-copy .eyebrow,
.home-redesign .home-practice-rooms small {
  font-size: .9375rem;
}
