html {
    font-size: 14px;
}

@media (min-width: 768px) {
    html {
        font-size: 16px;
    }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
    box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}


html {
    position: relative;
    min-height: 100%;
}
/*   
body {
  margin-bottom: 60px;
}
     */
.bg-brand-blue {
    background-color: var(--bs-brand-darkblue) !important;
}

.btn-primary {
    --bs-btn-bg: var(--bs-brand-darkblue);
    --bs-btn-border-color: var(--bs-brand-darkblue);
    --bs-btn-hover-bg: #002d5a; /* A slightly lighter shade for the hover effect */
    --bs-btn-hover-border-color: #002d5a;
}

.large-footer {
    flex-shrink: 0; /* Prevents the footer from squishing */
    background-color: #001f3f; /* Dark background example */
    color: white;
    padding: 20px 20px; /* Adds generous internal space */
    overflow: hidden; /* Prevents any child elements from bleeding out */
}


.btn-brand {
    background-color: var(--bs-brand-darkblue);
    border-color: var(--bs-brand-darkblue);
    color: white;
}

    .btn-brand:hover {
        background-color: #002d5a;
        color: white;
    }


/* Custom Dark Blue Outline Button */
.btn-outline-navy {
    color: #001f3f; /* Dark Navy Blue */
    border-color: #001f3f;
}

    /* Hover and Selected States */
    .btn-outline-navy:hover,
    .btn-check:checked + .btn-outline-navy {
        background-color: #001f3f;
        color: #ffffff;
        border-color: #001f3f;
    }

.footer-custom {
    /* The Accent Stripe matching the nav */
    border-top: 5px solid #EAA41A !important;
}

/* Custom Brand Alert */
.alert-brand-warning {
    background-color: #fffcf5; /* A very soft, warm off-white */
    border: 1px solid #f0e4cc;
    border-left: 6px solid #EAA41A; /* Matches your nav/footer accent stripe */
    color: #333333;
    box-shadow: 0 2px 4px rgba(0,0,0,0.05);
}

    .alert-brand-warning strong {
        color: #b37a12; /* A slightly darker, high-contrast shade of the WVDOT gold for text */
    }

    /* Optional: Make the email link inside the alert match the brand */
    .alert-brand-warning a {
        color: #001f3f;
        font-weight: bold;
        text-decoration: none;
    }

        .alert-brand-warning a:hover {
            text-decoration: underline;
        }


/* Replaces the flat bg-brand-blue */
.bg-brand-gradient {
    /* Subtle gradient from deep navy to a slightly lighter blue */
    background: linear-gradient(135deg, #001f3f 0%, #003a70 100%) !important;
}

.navbar-subtitle {
    font-size: 0.85rem;
    font-weight: 500;
    letter-spacing: 2px;
    opacity: 0.8;
}

/* Optional top bar styling */
.gov-top-bar {
    background-color: #1a1a1a;
    font-size: 0.75rem;
}
