body.hrc-module-public-community :where(
    .public-community-main,
    .public-community-hero,
    .public-section,
    .public-card-grid,
    .public-card-grid > *,
    .hrc-card
) {
    box-sizing: border-box;
    min-width: 0;
    max-width: 100%;
}

body.hrc-module-public-community .public-community-hero {
    width: auto;
}

body.hrc-module-public-community .public-community-hero.hrc-hero {
    border-color: var(--hrc-color-border);
    background:
        linear-gradient(
            135deg,
            color-mix(in srgb, var(--hrc-color-brand-soft) 72%, var(--hrc-color-surface)),
            color-mix(in srgb, var(--hrc-color-info-soft) 68%, var(--hrc-color-surface))
        );
    color: var(--hrc-color-text);
}

body.hrc-module-public-community .public-community-hero :where(h1, .eyebrow) {
    color: var(--hrc-color-text);
}

body.hrc-module-public-community .public-community-hero > p {
    color: var(--hrc-color-text-muted);
}

body.hrc-module-public-community .public-community-hero .role-card.hrc-card {
    border-color: var(--hrc-color-border);
    background: color-mix(in srgb, var(--hrc-color-brand-soft) 42%, var(--hrc-color-surface));
    color: var(--hrc-color-text) !important;
}

body.hrc-module-public-community .public-community-hero .role-card span {
    color: var(--hrc-color-text-muted);
}

body.hrc-module-public-community .public-community-hero .role-card:is(:hover, :focus-visible) {
    border-color: var(--hrc-color-brand);
    background: color-mix(in srgb, var(--hrc-color-brand-soft) 64%, var(--hrc-color-surface));
    outline-color: var(--hrc-color-focus);
}

body.hrc-module-public-community .portal-brand {
    display: inline-flex;
    align-items: center;
    min-height: var(--hrc-touch-target);
}

body.hrc-module-public-community .public-community-theme-toggle {
    display: inline-grid;
    place-items: center;
    flex: 0 0 auto;
    inline-size: var(--hrc-touch-target);
    min-inline-size: var(--hrc-touch-target);
    block-size: var(--hrc-touch-target);
    padding: var(--hrc-space-0);
    border-color: var(--hrc-color-border);
    background: var(--hrc-color-surface);
    color: var(--hrc-color-text);
}

body.hrc-module-public-community .public-community-theme-toggle:is(:hover, :focus-visible) {
    border-color: var(--hrc-color-brand);
    background: var(--hrc-color-brand-soft);
    color: var(--hrc-color-brand-strong);
}

@media (max-width: 47.9375rem) {
    body.hrc-module-public-community .public-community-header {
        display: grid;
        grid-template-columns: minmax(0, 1fr) max-content;
        gap: var(--hrc-space-2);
        padding-inline: var(--hrc-page-gutter-mobile);
    }

    body.hrc-module-public-community .public-community-header .portal-brand {
        flex: 1 1 auto;
        min-width: 0;
        overflow: hidden;
    }

    body.hrc-module-public-community .public-community-header .portal-brand img {
        display: block;
        width: auto;
        max-width: 100%;
        height: auto;
    }

    body.hrc-module-public-community .public-community-header nav {
        flex: 0 1 auto;
        min-width: 0;
        gap: var(--hrc-space-0);
    }

    body.hrc-module-public-community .public-community-header nav > a:not(.button) {
        display: none;
    }

    body.hrc-module-public-community .public-community-header nav > .button {
        min-height: var(--hrc-touch-target);
        padding-inline: var(--hrc-space-2);
        font-size: var(--hrc-text-sm);
        white-space: nowrap;
    }
}

body.hrc-module-public-companies :where(
    .company-shell,
    .company-hero,
    .company-panel,
    .company-grid,
    .company-grid > *
) {
    box-sizing: border-box;
    min-width: 0;
    max-width: 100%;
}
