/* General Styles */
* {
    box-sizing: border-box;

}

a {
    color: #1f5383;
    text-decoration: underline;
    transition: color 0.3s;
}

    a:hover {
        color: #041E42;
        font-weight: bold;
    }

html, body {
    margin: 0;
    padding: 0;
    color: #3a3b3e;
    font-family: "myriad-pro", sans-serif !important;
    height: 100%;
    display: flex;
    flex-direction: column;
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
    hyphens: auto;
}

.wrapper {
    display: flex;
    flex-direction: column;
    flex-grow: 1;  
}




.p-heading, .p-heading2, button {
    font-family: "myriad-pro-condensed", sans-serif;
    font-weight: 400;
    color: white;
}

.p-heading2 {
    font-size: 1.75rem;
    margin-bottom: 100px;
}

::-webkit-scrollbar {
    width: 10px;
    height: 10px;
}

::-webkit-scrollbar-track {
    background: #f1f1f1;
}

::-webkit-scrollbar-thumb {
    background-color: #888;
    border-radius: 10px;
    border: 2px solid #fefefe;
}

    ::-webkit-scrollbar-thumb:hover {
        background: #555;
    }


.header {
    background-color: #041E42;
    color: #FFFFFF;
    padding: 20px 10px;
    text-align: center;
    margin-bottom: 20px;
    height: 11rem;
}

.logo-container {
    display: flex;
    justify-content: center;
    margin-bottom: 10px;
}

.logo-img {
    height: 80px;
}


h1 {
    font-size: 2rem;
    margin: 10px 0;
}

h3 {
    font-size: 1rem;
    font-weight: normal;
    margin: 0;
}


.navbar {
    background-color: #FFF;
    display: block;
    justify-content: center;
    color: #041E42;
    font-family: "myriad-pro-condensed", sans-serif;
    font-size: 1.25rem;
    font-weight: bold;
    padding: 10px 0;
    margin-top: -20px;
    position: relative;
    z-index: 1;
   
}

    .navbar ul {
        list-style-type: none;
        margin: 0;
        padding: 0;
        text-align: center;
        display: flex;
    }

        .navbar ul li {
            display: inline-block;
        }

            .navbar ul li a {
                color: #041E42;
                text-decoration: none;
                padding: 10px 25px;
                display: inline-block;
                position: relative;
                transition: font-weight 0.5s ease-in-out;
                border-right: 2px solid #cecece;
                z-index: 1 !important;
                height:2.5rem;
                
            }

            .navbar ul li:first-child a {
                border-left: none;
            }

            .navbar ul li:last-child a {
                border-right: none;
            }

            .navbar ul li a::after {
                content: '';
                position: absolute;
                width: 100%;
                height: 4px;
                bottom: -4px;
                left: 0;
                background-color: #94f553;
                visibility: hidden;
                transform: scaleX(0);
                transition: all 0.5s ease-in-out;
            }

            .navbar ul li a:hover::after,
            .navbar ul li a:focus::after {
                visibility: visible;
                transform: scaleX(1);
            }

            .navbar ul li a:hover {
                font-weight: bold;
            }

li {
    float: left;
}

    li a, .dropbtn {
        display: inline-block;
        color: white;
        text-align: center;
        padding: 14px 14px;
        text-decoration: none;
    }

    li.dropdown {
        display: inline-block;
    }

.dropdown-content {
    display: none;
    position: fixed;
    background-color: #f9f9f9;
    min-width: 300px;
    box-shadow: 0px 20px 16px 0px rgba(0,0,0,0.2);
    z-index: 1000;
    flex-direction: column;
    position: absolute;
}

    .dropdown-content a {
        color: black;
        padding: 15px 150px;
        text-decoration: none;
        display: block;
        text-align: left;
        margin-bottom: 5px;
    }

        .dropdown-content a:hover {
            background-color: #f1f1f1;
        }

.dropdown-content {
    z-index: 2000;
}

.rz-grid-table {
    z-index: 0 !important;
}
.dropdown:hover .dropdown-content {
    display: flex;
}

/* Main Content Styles */
.main-content {
    flex-grow: 1;
    padding: 20px;
    margin-left: 5%;
    margin-right: 5%;
    background-color: #FFFFFF;
    color: black;
    font-family: "myriad-pro", sans-serif;
    font-size: 1.1em;
    animation: fadeIn 1s ease-in-out;
    font-weight: 400;
}

.content h1 {
    font-size: 1.375rem;
    line-height: 2rem;
    text-align: center;
    margin-bottom: 20px;
    color: #0A3D62;
    text-shadow: 1px 1px 2px #000;
}

.content-wrapper {
    display: flex;
    flex-wrap: wrap;
    z-index: 2 !important;
}

.text-content {
    flex: 1;
    min-width: 300px;
}

    .text-content p {
        font-size: 0.5rem;
        line-height: 1.6;
        margin-bottom: 10px;
        margin-top: 0;
    }

    .text-content ol {
        display: flex;
        flex-direction: column;
        gap: 2px;
        padding: 0;
    }

.list-item {
    padding: 1px;
    margin-bottom: 10px;
    margin-left: 20px; 
}

i {
    margin-left: 8px;
}

/* Footer Styles */
.footer {
    background-color: #041E42;
    color: #FFFFFF;
    padding: 20px;
    text-align: center;
    font-family: "myriad-pro-condensed", sans-serif;
    font-size: 1.5rem;
}

.logo-container-footer {
    display: inline;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.logo-img-footer {
    height: 80px;
}

.footer-content p {
    margin: 5px 0;
}

.footer-content a {
    color: #FFFFFF;
    text-decoration: none;
}

    .footer-content a:hover {
        text-decoration: underline;
    }

/* Fade-in animation */
@keyframes fadeIn {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@media only screen and (max-width: 600px) { 
    .header, .footer {
        padding: 0.625em 0.3125em;
    }

    .header{
      height:12rem;
    }

    .logo-img, .logo-img-footer {
        height: 3.75em;
    }

    h1 {
        font-size: 1.5rem;
    }

    h3 {
        font-size: 0.875rem;
    }

    .navbar {
        flex-direction: column;
        font-size: 0.9rem;
    }

        .navbar ul {
            flex-direction: column;
        }

            .navbar ul li {
                display: block;
                margin: 0.3125em 0;
            }

                .navbar ul li a {
                    width: 18rem;
                    padding: 0.625em 1.5625em;
                    border: solid 5px #041E42;
                    background-color: #041E42;
                    color: white;
                    margin-bottom: 5px;
                }

                    .navbar ul li a:hover {
                        width: 18rem;
                        padding: 0.625em 1.5625em;
                        border: solid 5px #041E42;
                        background-color: white;
                        color: #041E42;
                        margin-bottom: 5px;
                    }

                        .navbar ul li a:hover::after,
                        .navbar ul li a:focus::after {
                            visibility: hidden;
                            transform: scaleX(1);
                            margin-top: 5px;
                        }

    .dropdown-content {
        width: 100%;
        color: black;
    }

        .dropdown-content a {
            padding: 12px 15px;
            text-align: center;
            color: black;
            background-color: #041E42;
        }

    .dropdown:hover .dropdown-content {
        display: block;
        text-decoration: none;
    }

    .dropdown-content a:hover {
        background-color: #041E42;
        color: white;
        margin-top: 5px;
    }

    .content h1 {
        font-size: 1.125rem;
        margin-bottom: 0.9375em;
    }

    .text-content p, .text-content ol {
        font-size: 0.8rem;
    }

    .history, .mission-vision, .history, .background, .nonfederal-partners, .guidelines, .starting-project, .general-info, .agency-procedures {
        white-space: normal !important;
        text-align: left !important;
        word-spacing: normal !important;
        letter-spacing: normal !important;
    }

        .guidelines .starting-project .general-info .agency-procedures ul {
            list-style-type: none;
            padding-left: 0;
        }
}

@media only screen and (min-width: 601px) and (max-width: 1024px) {
    .header, .footer {
        padding: 0.9em 0.625em;
    }

    .logo-img, .logo-img-footer {
        height: 4.375em;
    }

    h1 {
        font-size: 1.75rem;
    }

    h3 {
        font-size: 0.9rem;
    }

    .navbar {
        flex-direction: column;
        font-size: 0.9rem;
    }

        .navbar ul {
            flex-direction: column;
        }

            .navbar ul li {
                display: block;
                margin: 0.3125em 0;
            }

                .navbar ul li a {
                    width: 25rem;
                    padding: 0.625em 1.5625em;
                    border: solid 5px #041E42;
                    background-color: #041E42;
                    color: white;
                    margin-bottom: 5px;
                }

                    .navbar ul li a:hover {
                        width: 25rem;
                        padding: 0.625em 1.5625em;
                        border: solid 5px #041E42;
                        background-color: white;
                        color: #041E42;
                        margin-bottom: 5px;
                    }

                        .navbar ul li a:hover::after,
                        .navbar ul li a:focus::after {
                            visibility: hidden;
                            transform: scaleX(1);
                            margin-top: 5px;
                        }

    .dropdown-content {
        width: 100%;
        color: black;
    }

        .dropdown-content a {
            padding: 12px 15px;
            text-align: center;
            color: black;
            background-color: #041E42;
        }

    .dropdown:hover .dropdown-content {
        display: block;
        text-decoration: none;
    }

    .dropdown-content a:hover {
        background-color: #041E42;
        color: white;
        margin-top: 5px;
    }

    .content h1 {
        font-size: 1.125rem;
        margin-bottom: 0.9375em;
    }

    .content h1 {
        font-size: 1.25rem;
        margin-bottom: 1.125em;
    }

   

        .text-content p, .text-content ol {
            font-size: 1.05em;
        }

    .history, .mission-vision, .history, .background, .nonfederal-partners, .guidelines, .starting-project, .general-info, .agency-procedures {
        white-space: normal !important;
        text-align: left !important;
        word-spacing: normal !important;
        letter-spacing: normal !important;
    }

        .guidelines .starting-project .general-info .agency-procedures ul {
            list-style-type: none;
            padding-left: 0;
        }
}

@media only screen and (min-width: 1025px) {
    .header {
        padding: 1.25em 0.9375em;
    }

    .footer {
        position: relative;
    }

    .logo-img, .logo-img-footer {
        height: 3.75em;
    }

    h1 {
        font-size: 2rem;
    }

    h3 {
        font-size: 1rem;
    }

    .navbar ul {
        justify-content: center;
    }

    .content h1 {
        font-size: 1.375rem;
        margin-bottom: 1.25em;
    }

  
        .text-content p, .text-content ol {
            font-size: 1.1rem;
            text-align:justify;
        }

    .map-image {
        width: 30em;
        margin: auto;
        animation: fadeIn 1.5s ease-in-out;
        padding: 20px;
        height: 10em;
        margin-bottom: 2rem;
    }

    .expert-card {
        width: calc(33.33% - 20px);
        flex: 1 1 calc(33.33% - 16px);
        max-width: calc(33.33% - 16px);
    }

}

.section-container {
    background: #fff;
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    margin-bottom: 20px;
}


.rz-button.rz-secondary {
    background-color: #041E42 !important;
    font-family: 'myriad-pro-condensed', sans-serif;
}

.rz-button.rz-primary.rz-shade-default {
    background-color: #041E42 !important;
    font-family: 'myriad-pro-condensed', sans-serif;
}

.ui-datatable-thead th {
    background-color: #041E42 !important;
    color: white !important;
}

:root {
    --rz-grid-header-background-color: #041E42 !important;
    --rz-grid-header-color: white !important;
    --rz-grid-header-filter-icon-hover-color: orange !important;
    --rz-form-error-font-size: 0.85rem !important;
    --rz-upload-button-bar-background-color: white !important;
    --rz-upload-choose-background-color: #041E42 !important;
    --rz-upload-choose-color: white !important;
    --rz-fieldset-legend-font-size: 1.75rem !important;
    --rz-grid-frozen-cell-background-color: #041E42 !important;
    --rz-grid-cell-font-size: 0.9rem !important;
    --rz-body-line-height: 1.75 !important;
    --rz-grid-header-filter-icon-active-color: #0dcaf0 !important;
    --rz-link-hover-color: #041E42 !important;
    --rz-text-font-family: "myriad-pro", sans-serif !important;
}

.rz-fieldset-legend {
    font-size: var(--rz-fieldset-legend-font-size) !important;
    font-weight: bold !important;
    color: #041E42 !important;
}


.rz-column-title .rz-column-title-content {
    white-space: normal !important;
    word-wrap: anywhere !important;
}

.rz-messages-error {
    display: grid !important;
}

.rz-fileupload-row .rz-button.rz-button-icon-only.rz-light {
    display: none !important;
}


.rz-fileupload-row .rz-button .rz-icon-trash {
    display: none !important;
}


.rz-fileupload-row {
    visibility: hidden !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}


.rz-fileupload-files {
    display: block !important;
    visibility: visible !important;
    height: auto !important;
    background-color: var(--rz-upload-files-background-color) !important;
    padding: var(--rz-upload-files-padding) !important;
    margin-top: 10px !important;
}

   
    .rz-fileupload-files::before {
        content: "" !important;
        display: block !important;
        visibility: visible !important;
        padding: 10px !important;
        color: white !important;
        background-color: #041E42 !important;
        display: none !important;
    }

    .rz-fileupload-files > div {
        display: none !important;
    }


.rz-fileupload-row > div,
.rz-fileupload-row .rz-button {
    display: none !important;
}

div.rz-upload-files {
    all: unset !important;
}

.rz-datatable-scrollable-header {
    overflow: visible !important;
}

.rz-datatable-scrollable-body {
    overflow-x: auto !important;
}

.rz-grid-filter-buttons .rz-button.rz-shade-default.rz-clear-filter {
    background-color: #041E42 !important;
    color: white !important;
}

.rz-grid-filter-buttons .rz-button.rz-shade-default.rz-apply-filter {
     background-color: #041E42 !important;
    color: white !important;
}

 .rz-cell-data {
   
    white-space: normal !important;
}

.rz-grid-filter-icon{
    color:white !important;
}

    .rz-grid-filter-icon:hover {
        cursor: pointer;
        color: var(--rz-grid-header-filter-icon-hover-color);
    }

.rz-grid-filter-active {
    color: var(--rz-grid-header-filter-icon-active-color) !important;
    --rz-icon-fill: 1;
}

.progress, .progress-stacked{
    overflow : visible !important;
}

.rz-link:hover, .rz-link:focus {
    color: #041E42 !important;
    text-decoration: none;
}

.rz-button {
    transition: all 0.3s ease;
    transform: scale(1);
}

    .rz-button:not(.rz-state-disabled):hover {
        background-color: white !important;
        color: #041E42 !important;
        background-image: none !important;
        box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24) !important;
        transform: scale(1.1);
        border: 1px solid black !important;
    }

    .rz-button.rz-state-disabled:hover {
        transform: scale(1);
    }

    .rz-button:not(.rz-state-disabled):focus {
        background-color: white !important;
        color: #041E42 !important;
        background-image: none !important;
        box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24) !important;
        transform: scale(1.1);
        border: 1px solid black !important;
    }

    .rz-button.rz-state-disabled:focus {
        transform: scale(1);
    }



/* Hide second filter group (logical operator + second condition) */
.rz-grid-filter .rz-dropdown:nth-of-type(2),
.rz-grid-filter .rz-dropdown:nth-of-type(3),
.rz-grid-filter input[id*='-sf2'] {
    display: none !important;
}