/* Official site: typography follows content role and background surface. */
:root {
 --type-body: #4e594c;
 --type-heading: #3b5b15;
 --type-heading-deep: #233421;
 --type-inverse-heading: #f7f3e9;
 --type-inverse-body: #d5dbd0;
 --type-sans: "Noto Sans JP", system-ui, sans-serif;
 --type-serif: "Noto Serif JP", "Yu Mincho", serif;
}
body.design-v3 main [data-type-role] {
 color: var(--type-body) !important;
 font-family: var(--type-sans) !important;
 font-weight: 400 !important;
 opacity: 1 !important;
 text-shadow: none !important;
}
body.design-v3 main [data-type-role="body"] { font-size: 15px !important; line-height: 2.05 !important; }
body.design-v3 main [data-type-role="support"] { font-size: 14px !important; line-height: 1.95 !important; }
body.design-v3 main [data-type-role="meta"] { font-size: 13px !important; line-height: 1.9 !important; }
body.design-v3 main [data-type-role="eyebrow"] { font-size: 12px !important; line-height: 2 !important; letter-spacing: .08em; }
body.design-v3 main [data-type-role="category"] { font-size: 14px !important; line-height: 1.9 !important; }
body.design-v3 main [data-type-role="compact-heading"] { font-size: 15px !important; line-height: 1.9 !important; }
body.design-v3 main :is([data-type-role="category"], [data-type-role="compact-heading"], [data-type-role="question"]) {
 color: var(--type-heading) !important; font-weight: 500 !important;
}
body.design-v3 main [data-type-role="question"] { font-size: 15px !important; line-height: 1.95 !important; }
body.design-v3 main :is([data-type-role="page-heading"], [data-type-role="section-heading"], [data-type-role="subheading"], [data-type-role="lead"], [data-type-role="statement"]) {
 color: var(--type-heading) !important; font-family: var(--type-serif) !important; font-weight: 500 !important;
}
body.design-v3 main [data-type-role="page-heading"] { color: var(--type-heading-deep) !important; }
body.design-v3 main [data-type-role="section-heading"] { font-size: clamp(25px, 2.2vw, 28px) !important; line-height: 1.7 !important; }
body.design-v3 main .section__title[data-type-role="section-heading"] { font-size: clamp(28px, 3.3vw, 42px) !important; }
body.design-v3 main [data-type-role="subheading"] { font-size: clamp(20px, 2vw, 24px) !important; line-height: 1.8 !important; }
body.design-v3 main [data-type-role="lead"] { font-size: clamp(18px, 1.8vw, 23px) !important; line-height: 1.9 !important; }
body.design-v3 main [data-type-role="statement"] { font-size: clamp(24px, 2.2vw, 30px) !important; line-height: 1.7 !important; }
body.design-v3 main h4[data-type-role="compact-heading"] { font-size: 16px !important; }
/* Hero headings retain their adopted responsive scale. */
body.design-v3 main [data-type-surface="dark"] { color: var(--type-inverse-body) !important; }
body.design-v3 main :is([data-type-role="page-heading"], [data-type-role="section-heading"], [data-type-role="subheading"], [data-type-role="compact-heading"], [data-type-role="question"])[data-type-surface="dark"] {
 color: var(--type-inverse-heading) !important;
}
body.design-v3 main [data-type-role] > a:not(.button) {
 color: var(--type-heading) !important; font-family: inherit !important; font-size: inherit !important; font-weight: inherit !important;
 text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .25em;
}
body.design-v3 main [data-type-surface="dark"] > a:not(.button) { color: var(--type-inverse-heading) !important; }
body.design-v3 .site-footer :is(p, .site-footer__address, .site-footer__note) { color: var(--type-body); }
