/* One shared surface for the homepage content below the hero and statistics. */
.portal-home-content {
    container-type: inline-size;
    container-name: portal-home;
    display: grid;
    gap: 30px;
    min-width: 0;
    margin-top: 28px;
    padding: 26px;
    border: 1px solid var(--portal-border);
    border-radius: 14px;
    background: var(--portal-panel);
    box-shadow: inset 0 1px 0 #ffffff04, 0 12px 36px #00000012;
}
.portal-home-content > *,
.portal-home-content .portal-editorial-grid > * { min-width: 0; }
.portal-home-content > .portal-section,
.portal-home-content > .portal-community-banner,
.portal-home-content .portal-editorial-grid > .portal-section { margin-top: 0; }
.portal-home-content > .portal-section + .portal-section,
.portal-home-content > .portal-editorial-grid {
    padding-top: 26px;
    border-top: 1px solid var(--portal-border);
}
.portal-home-content .portal-section-heading { flex-wrap: wrap; gap: 12px 20px; }
.portal-home-content .portal-section-heading > div { min-width: 0; }
@container portal-home (max-width: 760px) {
    .portal-home-content .portal-editorial-grid { grid-template-columns: minmax(0, 1fr); gap: 26px; }
    .portal-home-content .portal-community-banner { flex-wrap: wrap; }
    .portal-home-content .portal-community-banner > .portal-button { width: 100%; margin-left: 0; }
}
@media (max-width: 720px) {
    .portal-home-content { margin-top: 22px; padding: 16px; gap: 24px; border-radius: 12px; }
    .portal-home-content > .portal-section + .portal-section,
    .portal-home-content > .portal-editorial-grid { padding-top: 22px; }
}
@media (max-width: 430px) {
    .portal-home-content { padding: 12px; }
    .portal-home-content .home-file-byline { flex-wrap: wrap; gap: 6px 12px; }
    .portal-home-content .portal-section-heading { align-items: center; gap: 10px; }
    .portal-home-content .portal-section-heading h2 { font-size: 22px; }
    .portal-home-content .portal-community-banner { padding: 18px; }
    .portal-home-content .portal-community-banner > div { min-width: 0; flex-basis: 100%; }
}
