﻿    /* ===== Fonts ===== */
    @font-face {
        font-family: "Copernicus";
        src: url("../fonts/Copernicus-Bold.otf") format("opentype");
        font-weight: 700;
        font-style: normal;
        font-display: swap;
    }

    @font-face {
        font-family: "Saans-Regular";
        src: url("../fonts/Saans-Regular.otf") format("opentype");
        font-style: normal;
        font-display: swap;
    }

    @font-face {
        font-family: "Saans-Medium";
        src: url("../fonts/Saans-Medium.otf") format("opentype");
        font-style: normal;
        font-display: swap;
    }


    .saans-medium {
        font-family: "Saans-Medium" !important;
        font-weight: normal !important;
    }

    .display-4.saans-medium,
    h1.saans-medium,
    h2.saans-medium {
        font-family: "Saans-Medium" !important;
        font-weight: normal !important;
    }


    @font-face {
        font-family: "Arial-Bold-italic";
        src: url("../fonts/Arial Bold Italic.ttf") format("opentype");
        font-style: italic;
        font-display: swap;
    }

    .arial-bold-italic {
        font-family: "Arial-Bold-italic" !important;
        font-weight: normal !important;
    }

    .saans-page {
        font-family: "Saans-Regular";
    }

    .captcha-title {
        font-family: "Saans-Medium";
        font-weight: normal !important;
    }

    .captcha-title-italic {
        font-family: "Saans-Medium-italic";
        font-weight: normal !important;
    }

    html, body {
        height: 100%;
    }

    body > form {
        min-height: 100vh;
        display: flex;
        flex-direction: column;
        font-family: "Saans-Regular";
    }

    .site-main {
        padding-top: 100px;
        flex: 1 0 auto;
    }

    .site-footer {
        margin-top: auto;
    }

    /* ===== US Gov Banner ===== */
    .fw-banner__inner {
        background: #fff;
        color: #111827;
        border-bottom: 1px solid #e5e7eb;
    }

    .fw-banner__wrapper {
        max-width: 1140px;
        margin: 0 auto;
        padding: 8px 16px;
        display: flex;
        align-items: center;
    }

    .fw-banner__details {
        width: 100%;
    }

        .fw-banner__details > summary {
            display: flex;
            align-items: center;
            gap: 8px;
            cursor: pointer;
            list-style: none;
            outline: none;
        }

        .fw-banner__details[open] > summary u {
            text-decoration: none;
            border-bottom: 1px dotted currentColor;
        }

    .fw-banner__content {
        padding: 12px 0 4px 0;
    }

    .fw-columns {
        display: flex;
        gap: 24px;
        flex-wrap: wrap;
    }

    .fw-col {
        flex: 1 1 360px;
        min-width: 280px;
    }

    .fw-row {
        display: flex;
        gap: 12px;
        align-items: flex-start;
    }

    .fw-icon img {
        width: 40px;
        height: 40px;
        display: block;
    }

    .fw-inline-image {
        width: 16px;
        height: 16px;
        vertical-align: middle;
    }

    .fw-banner + .banner {
        border-top: 0;
    }

    .fw-banner__content .fw-columns .fw-col .fw-text p_Layout {
        display: block;
        margin-top: 2px !important;
        margin-bottom: 2px !important;
        line-height: 1.25;
    }

    .fw-banner__details > summary span,
    .fw-banner__details > summary u {
        font-size: 12px !important;
        line-height: 1.25;
    }

    /* ===== Site Banner ===== */
    .banner.has-contrast-background-color.has-background {
        background: #02203f;
    }

    .banner.has-base-color.has-text-color {
        color: #fff;
    }

    .banner.has-global-padding {
        padding-inline: 0;
    }

    .banner .container {
        max-width: 1140px;
        margin: 0 auto;
    }

    .banner__logo {
        height: 100px;
        width: auto;
        max-width: 100%;
        object-fit: contain;
    }

    .banner__title {
        font-family: "Copernicus", serif;
        font-size: 1.5rem;
        font-weight: 700;
        letter-spacing: .5px;
    }

    .banner__subtitle {
        opacity: .8;
        font-size: .95rem;
    }

    .fw-footer {
        background: #02203F;
        color: #FFFFFF;
        padding-top: clamp(24px, 4vw, 64px);
        padding-bottom: clamp(24px, 4vw, 64px);
        font-family: "Saans-Medium";
        font-weight: normal !important;
    }

    .fw-footer a {
        color: #FFFFFF;
        text-decoration: none;
    }

        .fw-footer a:hover {
            text-decoration: underline;
        }

    .fw-footer > .wp-block-group {
        padding: 0 !important;
    }

        .fw-footer > .wp-block-group.has-global-padding {
            padding: 0 !important;
        }

    .fw-footer .wp-block-columns {
        margin: 0 auto !important;
    }

    .fw-footer .alignwide {
        margin-left: auto !important;
        margin-right: auto !important;
        max-width: 1400px;
    }

    .fw-footer .fw-footer__cols {
        display: flex;
        flex-wrap: wrap;
        gap: clamp(72px, 10vw, 128px);
        max-width: 1500px;
        margin: 0 auto;
        padding: 0 30px;
        align-items: flex-start;
    }

    @media (min-width:1024px) {
        .fw-footer .fw-footer__cols {
            flex-wrap: nowrap;
            align-items: flex-start;
        }

            .fw-footer .fw-footer__cols > .wp-block-column {
                flex: 1 1 0;
                min-width: 0;
                display: flex;
                flex-direction: column;
                justify-content: flex-start;
            }

        .fw-footer__tagline,
        .fw-footer__nav ul,
        .fw-footer p {
            overflow-wrap: anywhere;
            word-break: break-word;
        }
    }

    @media (max-width:1023.98px) {
        .fw-footer .fw-footer__cols > .wp-block-column {
            flex: 1 1 320px;
            min-width: 280px;
        }
    }


    .fw-footer .is-layout-flow {
        margin-top: 0 !important;
        padding-top: 0 !important;
    }

        .fw-footer .is-layout-flow > * {
            margin-block-start: 0 !important;
        }

    .fw-footer .wp-block-column > *:first-child {
        margin-top: 0 !important;
    }

    .fw-footer__tagline {
        margin: 0 0 16px 0;
        font-family: "Saans-Medium",system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
        font-weight: normal !important;
        font-size: 18px;
        line-height: 1.35;
        letter-spacing: .2px;
    }

    .fw-footer__address {
        font-family: "Saans-Regular" !important;
        margin: 0 0 32px 0;
        font-size: 16px;
        line-height: 1.55;
        white-space: nowrap;

    }


    .fw-footer__address strong {
        font-family: "Saans-Medium" !important;
        font-weight: normal !important;
        font-size: 16px;
        white-space: nowrap;
    }

    .fw-footer__copyright {
        font-family: "Saans-Medium" !important;
        margin-top: 8px;
        font-size: 16px;
        line-height: 1.5;
    }

    .fw-footer__links {
        font-family: "Saans-Medium" !important;
        margin-top: clamp(28px, 3vw, 40px);
        font-size: 16px;
        font-weight: normal !important;
        padding-top: 20px;
        white-space:nowrap
    }

    .fw-footer__links .fw-footer__links-gap {
        display: inline-block;
        width: 16px;
    }

    .fw-footer__nav ul {
        list-style: none;
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: column;
        gap: 18px;
    }

    .fw-footer__nav a {
        font-family: "Saans-Medium";
        font-weight: normal !important;
        font-size: 16px;
        line-height: 1.35;
    }

    .fw-social {
        margin: clamp(20px, 4vw, 0px) 0 0 0;
        display: flex;
        align-items: center;
        gap: 20px;
        padding: 0;
        list-style: none;
    }

        .fw-social li,
        .fw-social a {
            line-height: 0;
        }

    .fw-social__icon {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 36px;
        aspect-ratio: 1 / 1;
        height: auto;
        padding: 0;
        background: #FFFFFF;
        color: #02203F;
        border-radius: 50%;
        box-shadow: 0 0 0 2px rgba(255,255,255,0.0);
        transition: transform .15s ease, box-shadow .15s ease;
    }

    .fw-social__icon svg {
        width: 28px;
        height: 28px;
        display: block;
    }

    .fw-social__icon svg path {
        fill: currentColor;
    }

    .fw-social a:hover .fw-social__icon {
        transform: translateY(-1px);
        box-shadow: 0 6px 14px rgba(0,0,0,.22);
    }

    .fw-footer p {
        margin: .35rem 0;
        font-size: 16px;
    }

    .fw-footer .fw-footer__cols {
        --wp--style--block-gap: 0 !important;
    }

    .fw-footer .fw-footer__cols > .wp-block-column {
        margin: 0 !important;
    }

    .fw-footer .fw-footer__cols.is-layout-flex,
    .fw-footer .fw-footer__cols[class*="wp-container-"] {
        gap: clamp(72px, 10vw, 128px) !important;
        column-gap: clamp(72px, 10vw, 128px) !important;
        row-gap: clamp(72px, 10vw, 128px) !important;
    }

    @media (min-width:1024px) {
        .fw-footer .fw-footer__cols {
            gap: 0 !important;
        }

    .fw-footer .fw-footer__cols > .wp-block-column + .wp-block-column {
             margin-left: 96px !important;
         }
         .fw-footer .fw-footer__cols > .wp-block-column:nth-child(4) {
             margin-left: 56px !important;
         }
    }

    .fw-footer__links {
        display: inline-block
    }

    .fw-copyright-inline {
        display: block;
        white-space: nowrap
    }

    .fw-links-inline {
        display: block;
        white-space: nowrap;
        margin-top: 0px
    }

    .fw-footer__links a {
        white-space: nowrap;
        word-break: keep-all
    }

    @media (min-width:1024px) {
        .fw-footer__tagline {
            overflow-wrap: normal !important;
            word-break: normal !important;
        }

            .fw-footer__tagline .fw-tagline-line1 {
                white-space: nowrap;
            }

            .fw-footer__tagline .fw-tagline-line2 {
                white-space: nowrap;
            }
    }

