/* _content/Website/Pages/Index.cshtml.rz.scp.css */
.focus-cards-container[b-peej02ecvs] {
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
    justify-content: center;
}

.focus-card-wrapper[b-peej02ecvs] {
    flex: 1 1 250px; /* grow, shrink, basis of 250px */
    max-width: 350px; /* prevents cards from getting too wide */
}

.focus-card[b-peej02ecvs] {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    border-radius: 1rem;
    padding: 1rem;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.focus-card p[b-peej02ecvs] {
    line-height: 175%;
    flex-grow: 1;
}

.focus-card--justice[b-peej02ecvs] {
    background-image: url('https://ngcwebsitefiles.blob.core.windows.net/images/backgrounds/focusareas/criminaljustice.jpg');
}

.focus-card--community[b-peej02ecvs] {
    background-image: url('https://ngcwebsitefiles.blob.core.windows.net/images/backgrounds/focusareas/community.jpg');
}

.focus-card--research[b-peej02ecvs] {
    background-image: url('https://ngcwebsitefiles.blob.core.windows.net/images/backgrounds/focusareas/research.jpg');
}
/* _content/Website/Pages/Library/Detail.cshtml.rz.scp.css */
.resources-group-container[b-j2rj1idaza] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    justify-content: center;
}
/* _content/Website/Pages/Library/DisplayTemplates/ResourceModel.cshtml.rz.scp.css */
.resource-container[b-wu99hjzsw6] {
    width: 200px;
}


.resource-thumbnail-container > div[b-wu99hjzsw6] {
    margin: 0 auto;
    width: 150px;
    height: 195px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}
/* _content/Website/Pages/Library/DisplayTemplates/ResourceModelCard.cshtml.rz.scp.css */
.resource-container[b-tc1pv2sttd] {
    display: flex;
    flex-direction: column;
    width: 220px;
    background-color: #e6ecf4;
    border-radius: 1rem;
}

.resource-thumbnail-container[b-tc1pv2sttd] {
    height: 200px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: .5rem;
}

.resource-thumbnail-container img[b-tc1pv2sttd]{
    max-height: 186px;
    max-width: 204px;
    display: block;
}

.resource-title[b-tc1pv2sttd] {
    font-weight: bold;
    flex-grow: 1;
    text-wrap: balance;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: .5rem;
    background-color: #8ec8e3;
}

.resource-buttons-container[b-tc1pv2sttd] {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    padding: .5rem;
}

.resource-buttons-container[b-tc1pv2sttd]  a {
    display: inline-flex;
    gap: 5px;
    align-items: center;
    background-color: var(--header-bg);
    border-radius: .5rem;
    color: white;
    text-decoration: none;
    padding: 3px 10px;
}

.resource-buttons-container[b-tc1pv2sttd]  a:hover {
    background-color: var(--header-hover);
}
/* _content/Website/Pages/Library/Index.cshtml.rz.scp.css */
.filter-button[aria-expanded="false"] .expand-more[b-6cp5gqfzyp],
.filter-button[aria-expanded="true"] .expand-less[b-6cp5gqfzyp] {
    display: inline;
}

.filter-button[aria-expanded="true"] .expand-more[b-6cp5gqfzyp],
.filter-button[aria-expanded="false"] .expand-less[b-6cp5gqfzyp] {
    display: none;
}

.filter-button-group[b-6cp5gqfzyp] {
    position: relative;
}

.filter-panel[b-6cp5gqfzyp] {
    position: absolute;
    top: 100%; /* Positions it right below the parent */
    left: 0;
    z-index: 1000;
    background-color: white;
    border: 1px solid #dfe1e2;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    padding: 1.5rem;
    margin-top: 0.5rem; /* Optional: adds gap between button and panel */
    min-width: 300px;
}

.resources-group-container[b-6cp5gqfzyp] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    justify-content: center;
}
/* _content/Website/Pages/Resources/Events.cshtml.rz.scp.css */
/* ROW of cards */
.event-resource-card-container[b-yfgkw8qhg4] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(20rem, 1fr));
    column-gap: 2rem;
}

/* --- Subgrid version (automatic equal header heights) --- */
@supports (grid-template-rows: subgrid) {
    /* The row of cards defines three row tracks */
    .event-resource-card-container[b-yfgkw8qhg4] {
        /* These rows apply to ONE row of cards.
       If your cards can wrap to multiple rows, wrap each row in its own container,
       or keep a fixed number of cards per row. */
        grid-template-rows: auto 1fr auto; /* header / body / footer */
    }

    .event-resource-card[b-yfgkw8qhg4] {
        display: grid;
        grid-template-rows: subgrid; /* use the container’s row tracks */
        grid-row: span 3; /* this card spans the three tracks */
        border: 1px solid #ccc;
        border-radius: 1rem;
        background-color: #fff;
        overflow: hidden;
        margin-bottom: 2rem;
    }

    .event-resource-card-header[b-yfgkw8qhg4] {
        grid-row: 1;
    }

    .event-resource-card-description[b-yfgkw8qhg4] {
        grid-row: 2 / span 2;
        display: flex;
        flex-direction: column;
        padding: 0 1rem;
    }

    /* Push the button to the bottom of the card */
    .event-resource-card-description > p:last-child[b-yfgkw8qhg4] {
        margin-top: auto;
    }
}

/* --- Fallback (no subgrid support): your original layout --- */
@supports not (grid-template-rows: subgrid) {
    .event-resource-card[b-yfgkw8qhg4] {
        display: grid;
        grid-template-rows: auto 1fr auto; /* header, content, button */
        border: 1px solid #ccc;
        border-radius: 1rem;
        background-color: #fff;
        overflow: hidden;
    }

    .event-resource-card-description[b-yfgkw8qhg4] {
        display: flex;
        flex-direction: column;
    }

    .event-resource-card-description > p:last-child[b-yfgkw8qhg4] {
        margin-top: auto;
    }
}

/* Shared header styles */
.event-resource-card-header[b-yfgkw8qhg4] {
    padding: 1rem;
    background-color: var(--header-bg);
    color: var(--header-text);
}

.event-resource-card-header > *[b-yfgkw8qhg4] {
    margin: 0;
}
/* _content/Website/Pages/Resources/GANGINFO/Application.cshtml.rz.scp.css */
[b-xb3wyd2hal] #FormModel_StreetAddress {
    height: auto;
    min-height: 4.5rem;
}

.usa-fieldset[b-xb3wyd2hal] {
    border: 1px solid #dcdee0;
    border-radius: 0.5rem;
    padding: 1.5rem;
    margin-top: 2rem;
    background-color: var(--fieldset-bg);
}

.usa-legend[b-xb3wyd2hal] {
    font-weight: 700;
    color: #1b1b1b;
    padding: 0 0.5rem;
    background-color: white;
    margin-left: -0.5rem;
    border: 1px solid #dcdee0;
    border-radius: 0.5rem;
}
/* _content/Website/Pages/Resources/GANGINFO/Index.cshtml.rz.scp.css */
.medblue-light[b-46t0tkmkqj] {
    display: flow-root; /* prevent margin leaks */
    background-color: #acd3f0;
    color: black;
}

.medblue-dark[b-46t0tkmkqj] {
    display: flow-root; /* prevent margin leaks */
    /*background-color: #0f75bc;*/
    color: white;
    /* colors + position of the split */
    --top: #acd3f0;
    --bottom: #0f75bc;
    --split: 33%;
    background: linear-gradient( to bottom, var(--top) 0 var(--split), var(--bottom) var(--split) 100% );
}

.circleimg[b-46t0tkmkqj] {
    width: 150px;
    height: 150px;
    margin-top: 1rem;
    border-radius: 50%;
    border: solid 4px #0f75bc;
}

@media screen and (max-width:768px) {
    .medblue-dark[b-46t0tkmkqj] {
        background: none;
        color: black;
    }
    .circleimg[b-46t0tkmkqj] {
        margin-top: 2rem;
    }
}
/* _content/Website/Pages/Resources/Partners.cshtml.rz.scp.css */
.partners-content-container div img[b-2zt0ca522a] {
    max-width: 40%;
    max-height: 100px;
    float: right;
    margin: 0 0 1rem 1rem;
}

@media (min-width: 640px) { /* tablet */
    .partners-content-container[b-2zt0ca522a] {
        display: flex;
        flex-direction: row-reverse;
        gap: 2rem;
    }

    .partners-content-container > div:first-child[b-2zt0ca522a] {
        align-self: center;
    }

    .partners-content-container div img[b-2zt0ca522a] {
        max-width: 200px;
        max-height: 125px;
        float: none;
    }
}
/* _content/Website/Pages/Shared/_Layout.cshtml.rz.scp.css */
/* Please see documentation at https://learn.microsoft.com/aspnet/core/client-side/bundling-and-minification
for details on configuring this project to bundle and minify static web assets. */

.usa-header--extended .usa-logo.logo-and-title[b-y1m2c1ijh3] {
    color: var(--header-text);
    display: flex;
    flex-grow: 1;
    align-items: center;
    gap: 2rem;
    max-width: none;
}

.header-logo-img[b-y1m2c1ijh3] {
    height: 100px;
}

@media (max-width: 63.99em) {
    .logo-and-title[b-y1m2c1ijh3] {
        padding: .25rem 0;
    }
    .logo-and-title img[b-y1m2c1ijh3] {
        height: 2.5rem;
    }
}

/* 
    FOOTER 
*/
/* Footer base styles */
.usa-footer[b-y1m2c1ijh3] {
    background-color: #f0f0f0;
    border-top: 1px solid #dcdee0;
}

.usa-footer__primary-section[b-y1m2c1ijh3] {
    padding: 2rem 1rem;
    background-color: #fff;
    border-bottom: 1px solid #dcdee0;
}

/* Footer navigation */
.usa-footer__nav[b-y1m2c1ijh3] {
    display: flex;
    justify-content: center;
}

.usa-footer__primary-links[b-y1m2c1ijh3] {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 2rem;
    list-style: none;
    padding: 0;
    margin: 0;
}

/* Remove ALL default USWDS borders */
.usa-footer__nav[b-y1m2c1ijh3] {
    border: none !important;
}
.usa-footer__primary-link[b-y1m2c1ijh3] {
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

    /* Footer links with button hover */
    .usa-footer__primary-link a[b-y1m2c1ijh3] {
        display: inline-flex;
        align-items: center;
        gap: 0.5rem;
        color: #1b1b1b;
        text-decoration: none;
        font-weight: 500;
        padding: 0.5rem 1rem;
        border-radius: 100px;
        transition: background-color 0.2s, color 0.2s;
    }

        .usa-footer__primary-link a:hover[b-y1m2c1ijh3] {
            background-color: #005ea2;
            color: #ffffff;
            text-decoration: none;
        }

    /* Icons */
    .usa-footer__primary-link .usa-icon[b-y1m2c1ijh3] {
        width: 1.5rem;
        height: 1.5rem;
        fill: currentColor;
    }

/* Vertical separators - desktop only */
@media (min-width: 769px) {
    .usa-footer__primary-link:not(:first-child)[b-y1m2c1ijh3] {
        padding-left: 2rem !important;
        border-left: 1px solid #dcdee0 !important;
    }
}

/* Copyright section */
.usa-footer__secondary-section[b-y1m2c1ijh3] {
    padding: 1.5rem 1rem;
    background-color: var(--header-bg);
    color: var(--header-text);
    text-align: center;
}

.usa-footer__secondary-section a[b-y1m2c1ijh3] {
    color: var(--header-text);
    text-decoration: none;
}

.usa-footer__logo[b-y1m2c1ijh3] {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1.5rem;
    font-size: 0.9rem;
}

.iir-footer-logo[b-y1m2c1ijh3] {
    width: 100px;
}

/* Mobile styles */
@media (max-width: 768px) {
    .usa-footer__primary-links[b-y1m2c1ijh3] {
        flex-direction: column;
        gap: 1rem;
    }

    .usa-footer__primary-link a[b-y1m2c1ijh3] {
        min-width: 200px;
        justify-content: center;
    }
}
/* _content/Website/Pages/Strategies/ComprehensiveGangModel/Index.cshtml.rz.scp.css */
.cgm-cards-container[b-9q6ot86pjg] {
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
    justify-content: center;
}

.cgm-card-wrapper[b-9q6ot86pjg] {
    flex: 1 1 225px; /* grow, shrink, basis of 250px */
    max-width: 275px; /* prevents cards from getting too wide */
}

.cgm-card[b-9q6ot86pjg] {
    border-radius: 1rem;
    padding: 1rem;
    height: 100%;
    display: flex;
    flex-direction: column;
    border: 1px solid var(--dark-border);
    background-color:var(--dark-bg);
    color: #fff;
}

.cgm-card p[b-9q6ot86pjg] {
    line-height: 175%;
    flex-grow: 1;
}
/* _content/Website/Pages/Strategies/ComprehensiveGangModel/OtherSelectedPublications.cshtml.rz.scp.css */
cite[b-vt0ez8tqci] {
    font-style: italic;
}

cite.book[b-vt0ez8tqci] {
    text-decoration: underline;
    font-style: normal;
}
/* _content/Website/Pages/Strategies/GREAT.cshtml.rz.scp.css */
.greatlogo[b-cs0capadiz] {
    width: 310px;
    margin-top: 45px;
    position: absolute;
}

.great[b-cs0capadiz] {
    z-index: -1;
    background: url(https://ngcwebsitefiles.blob.core.windows.net/images/backgrounds/great-photo.jpg);
    padding: 20px !important;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    border-radius: 15px;
}

.padding55-trl[b-cs0capadiz] {
    padding-top: 55px;
    padding-right: 55px;
    padding-left: 55px;
}

.padding55-l[b-cs0capadiz] {
    padding-left: 55px;
}

.darkbg[b-cs0capadiz] {
    background: rgba(0,0,0,.7);
    padding: 20px;
    color: #fff;
    margin-top: 85px;
    margin-bottom: 35px;
    border-radius: 15px;
}


/* Custom button class */
.usa-button--teal[b-cs0capadiz] {
    background-color: #009390;
}

    /* Handle hover state */
    .usa-button--teal:hover[b-cs0capadiz] {
        background-color: #007370; /* Slightly darker for hover */
    }

    /* Handle active/pressed state */
    .usa-button--teal:active[b-cs0capadiz] {
        background-color: #006360; /* Even darker for active */
    }

    /* Handle focus state - maintain USWDS accessibility */
    .usa-button--teal:focus[b-cs0capadiz] {
        background-color: #007370;
    }

/* If you want to override ALL usa-button elements (not recommended) */
/*
.usa-button {
    background-color: #009390;
}
*/
/* _content/Website/Pages/_IndexBanner.cshtml.rz.scp.css */
.hero-banner[b-0osxvuhno7] {
    position: relative;
    min-height: 400px;
    overflow: hidden;
}

/* Angled gradient background */
.hero-banner[b-0osxvuhno7]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 70%;
    max-width: 1200px;
    height: 100%;
    background: linear-gradient(90deg, #0c82a6 0%, #085065 95%, #063847 100%);
    transform: skewX(-18deg);
    transform-origin: top left;
    z-index: 1;
}

/* Content container */
.hero-content[b-0osxvuhno7] {
    position: relative;
    z-index: 2;
    padding: 3rem 2rem;
    color: white;
    width: 67%;
    max-width: 1150px;
}


.hero-tagline[b-0osxvuhno7] {
    font-size: 1.25rem;
    margin-bottom: 1.5rem;
}

.hero-list[b-0osxvuhno7] {
    list-style: none;
    padding: 0;
    margin-bottom: 2rem;
}

    .hero-list li[b-0osxvuhno7] {
        padding-left: 1.5rem;
        position: relative;
        margin-bottom: 0.5rem;
        font-size: 1.1rem;
    }

        .hero-list li[b-0osxvuhno7]::before {
            content: '•';
            position: absolute;
            left: 0;
        }

/* Geometric pattern on right */
.hero-carousel-container[b-0osxvuhno7] {
    position: absolute;
    right: 0;
    top: 0;
    width: 44%;
    height: 100%;
    background-image: url('https://ngcwebsitefiles.blob.core.windows.net/images/backgrounds/homepage-hero-pattern.jpg');
    background-size: cover;
    background-position: left center;
    display: flex;
    align-items: center;
}

@media (min-width: 1700px)
{
    .hero-carousel-container[b-0osxvuhno7] {
        width: calc(100% - 1000px);
    }
}

.carousel-container[b-0osxvuhno7] {
    padding: 1rem 3rem;
    width: 80%;
    margin-left: auto;
}

.ngc-intro[b-0osxvuhno7] {
    padding: 20px;
}

h1.titleIntro[b-0osxvuhno7] {
    color: #fff;
    letter-spacing: 1px;
    font-size: 47px;
    text-transform: uppercase;
    line-height: 1.1em;
    font-weight: 600;
}

p.gangintro[b-0osxvuhno7] {
    font-size: 33px;
    margin-bottom: 20px;
    line-height: 130%;
    text-transform: unset;
    font-weight: 300;
    color: #fff;
    max-width: 90%;
}

@media (max-width: 1080px) {
    .carousel-container[b-0osxvuhno7] {
        width: 100%;
    }

    .hero-banner[b-0osxvuhno7]::before {
        width: 100%;
        transform: none;
    }

    .hero-carousel-container[b-0osxvuhno7] {
        position: relative;
        width: 100%;
        z-index: 3;
    }

    .hero-content[b-0osxvuhno7] {
        padding: 2rem 1rem;
        width: 100%;
        text-align: center;
    }

    .ngc-intro h1.titleIntro[b-0osxvuhno7] {
        font-size: 39px;
    }

    .ngc-intro h1.titleIntro[b-0osxvuhno7] {
        font-size: 39px;
    }

    p.gangintro[b-0osxvuhno7] {
        font-size: 24px;
        max-width: none;
        text-wrap: balance;
    }
}



/* Style Slick to match USWDS */
.ngc-carousel .slick-dots[b-0osxvuhno7] {
    bottom: 25px;
}

    .ngc-carousel .slick-dots li button[b-0osxvuhno7]:before {
        color: white;
        opacity: 0.5;
        font-size: 12px;
    }

    .ngc-carousel .slick-dots li.slick-active button[b-0osxvuhno7]:before {
        opacity: 1;
    }

/* Style arrows to match USWDS buttons */
.ngc-carousel .slick-prev[b-0osxvuhno7],
.ngc-carousel .slick-next[b-0osxvuhno7] {
    z-index: 1;
    width: 40px;
    height: 40px;
}

    .ngc-carousel .slick-prev[b-0osxvuhno7]:before,
    .ngc-carousel .slick-next[b-0osxvuhno7]:before {
        font-size: 40px;
        color: #005ea2; /* USWDS primary blue */
    }

/* Ensure images are responsive */
.carousel-slide img[b-0osxvuhno7] {
    width: 100%;
    height: auto;
}
