/* General Header Styling */
.site-header {
    background-color: #fff; /* Yellow background */
    padding: 2.5rem 1rem; /* approx. py-8 px-4 */
    color: #333;
}

/* Logo (matches header.php structure: direct img inside header) */
.site-header img {
    max-width: auto;
    height: auto;
    display: block;
}

#mobile-menu{
    background-color: #1F3A93;
}

#menu-toggle {
    padding: 0.75rem;
}

#menu-toggle svg {
    width: 2rem;
    height: 2rem;
}

/* Title and Tagline */
.title-container {
    font-family: 'Montserrat', sans-serif;
    font-weight: 800;
    color: #1F3A93;
    text-shadow: 0px 2px 4px rgba(0,0,0,0.1);
    line-height: 1;
    /* font-size removed — controlled by Tailwind classes (text-*) */
}

.tagline-container {
    font-family: 'Roboto', sans-serif;
    font-weight: 700;
    color: #333333;
    text-shadow: 0px 2px 4px rgba(0,0,0,0.1);
    margin-top: 0.5rem;
    /* font-size removed — use Tailwind text-* for responsive sizing */
}

nav {
    background-color: #1F3A93; /* Dark blue background for nav */
}
/* Navigation link styling (generic — will apply to links inside <nav>) */
nav a {
    color: #fff;
    text-decoration: none;
    font-size: 1.125rem; /* 18px */
    font-weight: 700;
    position: relative;
    padding-bottom: 0.25rem;
}

/* Hover underline effect (generic for nav links) */
nav a::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    width: 0%;
    height: 3px;
    background-color: #FFC107;
    transform: translateX(-50%);
    transition: width 0.28s ease-in-out, left 0.28s ease-in-out, opacity 0.2s;
    opacity: 0;
}

nav a:hover::after {
    opacity: 1;
    width: 100%;
    left: 50%;
}

/* Responsive adjustments */
@media (max-width: 992px) {
    .title-container { font-size: 2rem; }
    .tagline-container { font-size: 1.3rem; }
    .site-header img { max-width: 100px; }
    nav a { font-size: 1rem; }
}

@media (max-width: 768px) {
    .title-container { font-size: 1.8rem; text-align: center; }
    .tagline-container { font-size: 1.2rem; text-align: center; }
    .site-header img { max-width: 90px; margin-left: auto; margin-right: auto; }
}

@media (max-width: 576px) {
    .title-container { font-size: 1.6rem; }
    .tagline-container { font-size: 1rem; }
    .site-header img { max-width: 80px; }
    nav a { font-size: 0.875rem; }
}
/* ...existing code... */