/* Shared with the two permanent entrances on requestgroup.jp. */
.topic-feature-entries,.topic-guide,.topic-feature{font-family:inherit;color:#273349;overflow-wrap:anywhere}
.topic-feature-entries{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;margin:0 0 34px}
.topic-feature{box-sizing:border-box;display:grid;grid-template-columns:minmax(0,.38fr) minmax(0,.62fr);gap:32px;align-items:center;width:100%;padding:32px;border:1px solid #c8d4e3;border-radius:2px;background:#fff;scroll-margin-top:24px}
.topic-feature-image,.topic-guide-visual{min-width:0;margin:0;aspect-ratio:3/2;display:flex;align-items:center}
.topic-feature-image img,.topic-guide-visual img{display:block;width:100%;height:100%;object-fit:contain}
.topic-feature-copy,.topic-guide-intro-copy{min-width:0}
.topic-feature-audience{font-size:15px;line-height:1.8;font-weight:400;color:#566477;margin:0 0 8px;letter-spacing:0}
.topic-feature h2,.topic-guide h1,.topic-guide h2,.topic-guide h3{font-family:inherit;letter-spacing:0;color:#001858;font-weight:var(--topic-feature-heading-weight,650)}
.topic-feature h2{font-size:28px;line-height:1.6;margin:0 0 12px}
.topic-feature-copy>p:not(.topic-feature-audience):not(.topic-feature-note){font-size:var(--topic-feature-body-size,17px);line-height:1.9;font-weight:400;margin:0 0 20px}
.topic-feature-button{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:16px;max-width:100%;min-height:48px;padding:11px 20px;border:1px solid #295c93;border-radius:2px;background:#fff;color:#17477c;text-decoration:none;font-family:inherit;font-size:var(--topic-feature-button-size,16px);line-height:1.6;font-weight:var(--topic-feature-button-weight,600);text-align:center}
.topic-feature-button:hover{background:#f7f9fc;border-color:#001858}
.topic-feature-button:focus-visible,.topic-feature a:focus-visible,.topic-guide a:focus-visible,.topic-guide summary:focus-visible{outline:3px solid #295c93;outline-offset:4px}
.topic-feature-starts{display:grid;grid-template-columns:minmax(0,1fr);gap:5px;margin:18px 0 0;padding:0}
.topic-feature-starts>a,.topic-feature-starts>span{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:16px;font-weight:400;line-height:1.8;color:#295c93;text-underline-offset:.25em;min-height:36px;padding:3px 0}
.topic-feature-starts>span{color:#566477}
.topic-feature-starts>a span{flex-shrink:0}
.topic-feature .topic-feature-note,.topic-guide .topic-feature-note{font-size:15px;line-height:1.8;color:#566477;font-weight:400;margin:14px 0 0}
.topic-feature-compact{margin:28px 0 34px}
.topic-guide{max-width:1200px;font-size:17px;line-height:1.9}
.topic-guide .breadcrumbs{font-size:16px;display:flex;flex-wrap:wrap;gap:8px 16px;line-height:1.8;margin-bottom:28px}
.topic-guide-intro{display:grid;grid-template-columns:minmax(0,.62fr) minmax(0,.38fr);gap:32px;align-items:center;padding:0 0 28px;border-bottom:1px solid #c8d4e3;margin-bottom:22px}
.topic-guide h1{font-size:32px;line-height:1.6;margin:0 0 16px;text-wrap:balance}
.topic-guide .topic-guide-lead{font-size:22px;line-height:1.7;color:#001858;font-weight:500;margin:0 0 12px}
.topic-guide-intro p{margin:0 0 12px}
.topic-guide .topic-guide-credit{font-size:15px;line-height:1.8;color:#566477;margin:12px 0 0}
.topic-guide-nav{display:flex;flex-wrap:wrap;gap:8px 24px;margin:0 0 26px;padding:0 0 18px;border-bottom:1px solid #c8d4e3}
.topic-guide-nav a{display:inline-flex;align-items:center;min-height:44px;font-size:16px;line-height:1.8;color:#17477c;text-underline-offset:.25em}
.topic-guide h2{font-size:26px;line-height:1.7;margin:0 0 14px}
.topic-guide h3{font-size:21px;line-height:1.75;margin:0 0 12px}
.topic-guide-section{margin:0 0 42px;scroll-margin-top:24px}
.topic-guide-heading{max-width:64em;margin-bottom:22px}
.topic-guide-heading p{font-size:17px;line-height:1.9;margin:0 0 12px}
.topic-material-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.topic-material{display:flex;flex-direction:column;min-width:0;padding:24px;border:1px solid #c8d4e3;border-radius:2px;background:#fff;scroll-margin-top:24px}
.topic-material .topic-material-purpose{font-size:15px;color:#295c93;line-height:1.8;margin:0 0 8px}
.topic-material>p{font-size:17px;line-height:1.9;margin:0 0 14px}
.topic-material .topic-material-name{font-size:16px;line-height:1.85;color:#566477;margin-top:2px;margin-bottom:10px}
.topic-material .topic-material-extent{font-size:15px;line-height:1.8;color:#566477;margin:0 0 12px}
.topic-material-action{display:inline-flex;align-items:center;justify-content:space-between;gap:16px;font-size:16px;font-weight:var(--topic-feature-button-weight,600);line-height:1.8;color:#17477c;min-height:44px;margin-top:auto;padding-top:10px;text-underline-offset:.25em}
.topic-material .topic-material-pending{color:#566477;font-size:15px;line-height:1.8;margin:auto 0 0;padding-top:10px}
.topic-material.is-pending{border-color:#d6dce5;background:#fcfcfd}
.topic-publication-note{font-size:16px;color:#566477;line-height:1.85;margin:-22px 0 40px}
.topic-cross-entry,.topic-practice-tool,.topic-feature-consult{border-top:1px solid #c8d4e3;border-bottom:1px solid #c8d4e3;padding:26px 0;margin:0 0 40px}
.topic-cross-entry>p,.topic-practice-tool>p,.topic-feature-consult>p{font-size:17px;line-height:1.9;margin:0 0 14px}
.topic-cross-entry>a{display:inline-flex;align-items:center;min-height:44px;gap:16px;font-size:18px;font-weight:var(--topic-feature-button-weight,600);line-height:1.8;color:#17477c;text-underline-offset:.25em}
.topic-practice-tool{padding:26px;background:#f7f9fc;border:1px solid #c8d4e3}
.topic-inline-link{display:inline-flex;align-items:center;gap:12px;color:#17477c;min-height:44px;line-height:1.8}
.topic-scope{padding:20px 0;border-top:1px solid #c8d4e3;margin-top:24px;font-size:16px;line-height:1.9}
.topic-scope summary{font-size:16px;line-height:1.8;font-weight:500;color:#17477c;cursor:pointer;min-height:44px;padding:8px 0}
.topic-scope p{margin:14px 0 0}
.topic-planning{margin:0 0 40px;border-bottom:1px solid #c8d4e3}
.topic-planning[open] .topic-material-grid{margin:18px 0 4px}
.topic-guide-back{display:flex;flex-wrap:wrap;gap:8px 28px;font-size:16px;line-height:1.8;margin:28px 0}
.topic-guide-back a{display:inline-flex;align-items:center;min-height:44px}
.topic-guide .guide-start{margin:0 0 28px;padding:22px 0;border-bottom:1px solid #c8d4e3}
.topic-guide .guide-start h2{font-size:21px;font-weight:var(--topic-feature-heading-weight,650);line-height:1.75;font-family:inherit}
.topic-guide .guide-start p{font-size:17px;line-height:1.9;max-width:62em}
@media(max-width:760px){
 .topic-feature{grid-template-columns:minmax(0,1fr);padding:24px;gap:24px}
 .topic-feature h2{font-size:24px}
 .topic-feature-image{width:100%;max-width:440px;justify-self:center}
 .topic-feature-starts{gap:6px}
 .topic-feature-starts>a{min-height:44px}
 .topic-guide{padding:24px 22px 50px}
 .topic-guide-intro{grid-template-columns:minmax(0,1fr);gap:22px}
 .topic-guide h1{font-size:28px;text-wrap:initial}
 .topic-guide .topic-guide-lead{font-size:21px}
 .topic-guide-visual{max-width:440px;width:100%;justify-self:center}
 .topic-material-grid{grid-template-columns:minmax(0,1fr);gap:18px}
 .topic-material{padding:22px}
 .topic-guide h2{font-size:24px}
 .topic-guide h3{font-size:21px}
 .topic-guide-nav{gap:4px 18px}
 .topic-guide-section{margin-bottom:34px}
 .topic-practice-tool{padding:24px}
}
@media(max-width:400px){.topic-feature{padding:22px}.topic-feature-button{width:100%;gap:12px;padding-inline:14px}.topic-guide{padding-inline:18px}.topic-material{padding:20px}.topic-practice-tool{padding:22px}}

/* Unreleased guides stay a compact optional list after usable public material. */
.topic-upcoming-list{border-top:1px solid #c8d4e3}
.topic-upcoming-list details{padding:14px 0;border-bottom:1px solid #c8d4e3;scroll-margin-top:24px}
.topic-upcoming-list summary{cursor:pointer;font-size:17px;line-height:1.9;color:#001858;font-weight:500;padding:8px 0;min-height:44px}
.topic-upcoming-status{display:inline-block;margin-left:16px;font-size:15px;font-weight:400;color:#566477;white-space:nowrap}
.topic-upcoming-list details>p{font-size:17px;line-height:1.9;margin:10px 0}
.topic-upcoming-list .topic-material-name{font-size:16px;color:#566477}
