:root {
    --fc-navy: #060F57;
    --fc-navy-hover: #25348c;
    --fc-gold: #c9a227;
}

html { font-size: 15px; position: relative; min-height: 100%; }

/* Responsive font sizing based on screen width */
@media (min-width: 576px) {
    html { font-size: 16px; }
}

@media (min-width: 768px) {
    html { font-size: 17px; }
}

@media (min-width: 992px) {
    html { font-size: 18px; }
}

@media (min-width: 1200px) {
    html { font-size: 19px; }
}

@media (min-width: 1400px) {
    html { font-size: 20px; }
}

body { font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif; color: #1e1e1f; line-height: 1.6; }

/* Top border image - responsive and full width */
.pc-top-border { 
    width: 100%; 
    overflow: hidden; 
    background-color: var(--fc-navy); 
}
.pc-top-border img { 
    width: 100%; 
    height: auto; 
    display: block; 
    object-fit: cover;
    max-width: 100%;
}

.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;
}

/* Navigation bar (replaces the retired Flash menu) */
.fc-navbar { background-color: var(--fc-navy); padding: 0; }
.fc-navbar .nav-link { color: #fff; padding: 0.6rem 1.1rem; }
.fc-navbar .nav-link:hover,
.fc-navbar .nav-link:focus { background-color: var(--fc-navy-hover); color: #fff; }
.fc-navbar .nav-link.active { background-color: var(--fc-gold); color: #fff; font-weight: 600; }
.fc-navbar .navbar-toggler { border-color: rgba(255,255,255,.5); }
.fc-navbar .navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(255,255,255,0.85)' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

/* Content - responsive sizing */
main h1, main h2 { color: var(--fc-navy); }
main h1 { 
    font-size: clamp(1.5rem, 4vw, 2.5rem);
    margin-bottom: 1rem; 
}
main h2 {
    font-size: clamp(1.25rem, 3vw, 2rem);
}
main img { 
    max-width: 100%; 
    height: auto; 
    display: block;
}

/* Responsive container adjustments */
.container {
    max-width: 100%;
    padding-right: 1rem;
    padding-left: 1rem;
}

@media (min-width: 1400px) {
    .container {
        max-width: 1320px;
    }
}

@media (min-width: 1600px) {
    .container {
        max-width: 1540px;
    }
}

/* Responsive images - ensure they scale properly */
img {
    max-width: 100%;
    height: auto;
    image-rendering: -webkit-optimize-contrast;
    image-rendering: crisp-edges;
}

/* Responsive tables */
.table-responsive {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

/* Ensure text scales properly on larger screens */
p, li, td, th {
    font-size: clamp(0.875rem, 1.5vw, 1.125rem);
}

/* Dark-blue button (matches nav/footer) */
.btn-fc { background-color: var(--fc-navy); border-color: var(--fc-navy); color: #fff; }
.btn-fc:hover, .btn-fc:focus, .btn-fc:active { background-color: var(--fc-navy-hover); border-color: var(--fc-navy-hover); color: #fff; }

/* Footer */
.fc-footer { background-color: var(--fc-navy); color: #fff; }
.fc-footer a { color: #cdd6ff; }

table.fc-table { width: 100%; }
