/* === Base Font Sizing === */
html {
    font-size: 14px;
    position: relative;
    min-height: 100%;
}

@media (min-width: 768px) {
    html {
        font-size: 16px;
    }
}

/* === Focus States === */
.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;
}

/* === Body Layout === */
body {
    margin-bottom: 60px;
}

/* === Header Logo Styles === */
.main-logo {
    max-height: 80px;
    width: auto;
    height: auto;
}

.swam-logo {
    max-height: 65px;
    width: auto;
    height: auto;
}

/* === Responsive Adjustments === */
@media (max-width: 992px) {
    .main-logo {
        max-height: 65px;
    }

    .swam-logo {
        max-height: 55px;
    }
}

@media (max-width: 768px) {
    .main-logo {
        max-height: 55px;
    }

    .swam-logo {
        max-height: 45px;
    }
}

/* Slightly tighten vertical space on smaller devices */
@media (max-width: 576px) {
    .navbar .text-center.my-3 {
        margin: 0.75rem 0;
    }
}

/* === Section / Landing Page Styling === */
section {
    color: #333;
}

    section h1,
    section h2,
    section h3 {
        color: #222;
    }

    section ul {
        line-height: 1.8;
    }

    section a {
        color: #007bff;
        text-decoration: none;
    }

        section a:hover {
            text-decoration: underline;
        }
