/* Scoped to the homepage official information section. */
.official-home .hd { position: relative; }
.official-home .official-home-more { float: right; color: #9b5b2d; font-size: 12px; line-height: 32px; }
.official-home .official-home-intro { margin: 16px 0 10px; color: #666; font-size: 13px; line-height: 1.9; }
.official-home .official-home-categories { margin: 0 0 18px; }
.official-home .official-home-categories:empty { display: none; }
.official-home .official-home-categories a { color: #a3551c; font-size: 13px; line-height: 26px; }
.official-home .official-home-updates > h3 { font-size: 14px; font-weight: bold; color: #555; margin: 0 0 10px; }
.official-home .official-home-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 32px; padding: 0; margin: 0; list-style: none; }
.official-home .official-home-list > li { min-width: 0; padding: 12px 0; border-top: 1px solid #eae4da; list-style: none; }
.official-home .official-home-meta { display: flex; justify-content: space-between; gap: 12px; font-size: 11px; color: #999; line-height: 1.8; }
.official-home .official-home-meta time { flex-shrink: 0; }
.official-home .official-home-list h4 { margin: 4px 0; font-size: 14px; line-height: 1.7; font-weight: bold; }
.official-home .official-home-list h4 a { color: #555; overflow-wrap: anywhere; }
.official-home .official-home-list p { font-size: 12px; color: #888; line-height: 1.8; margin: 0; overflow-wrap: anywhere; }
.official-home a:hover { color: #ee7318; text-decoration: underline; }
.official-home a:focus-visible { outline: 2px solid #a3551c; outline-offset: 3px; }
.official-home .official-home-empty { grid-column: 1 / -1; color: #999; font-size: 12px; }
.official-home .official-home-contact { padding: 12px 0 18px; margin: 8px 0 0; border-top: 1px solid #eae4da; font-size: 12px; line-height: 1.9; color: #888; }
.official-home .official-home-contact a { color: #a3551c; }
@media (max-width: 767px) { .official-home .official-home-list { grid-template-columns: 1fr; } }

/* Parent headings and wrapping descendants retain the full CMS hierarchy. */
.official-home .official-home-categories ul { list-style: none; padding: 0; margin: 0; }
.official-home .official-home-categories li { list-style: none; margin: 0; padding: 0; min-width: 0; }
.official-home .official-home-categories > ul > li { margin: 6px 0; }
.official-home .official-home-categories > ul > li > a { font-weight: bold; }
.official-home .official-home-categories ul ul { display: flex; flex-wrap: wrap; gap: 0 20px; padding-left: 12px; }
.official-home .official-home-categories ul ul a { font-size: 12px; line-height: 22px; color: #888; overflow-wrap: anywhere; }
.official-home .official-home-categories ul ul ul { display: block; }
.official-home .official-home-categories a:hover { color: #ee7318; }

.official-home .official-home-categories > ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 28px; }
@media (max-width: 767px) { .official-home .official-home-categories > ul { grid-template-columns: 1fr; } }
