@import url('https://fonts.googleapis.com/css2?family=Noto+Serif:ital,wght@0,400;0,700;0,900;1,400;1,700&family=Manrope:wght@400;500;600;700;800&family=Inter:wght@400;500;600&family=Material+Symbols+Outlined:wght,FILL@100..700,0..1&display=swap');

.material-symbols-outlined {
    font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}

body,
html {
    margin: 0;
    padding: 0;
}

.navbar, nav {
    margin-top: 0 !important;
}

body { font-family: 'Manrope', sans-serif; }
h1, h2, h3, .font-serif { font-family: 'Noto Serif', serif; }

.glass-effect, .glass-nav {
    backdrop-filter: blur(24px);
    -webkit-backdrop-filter: blur(24px);
}

.nav-dropdown:hover .dropdown-content {
    display: block;
}

@keyframes ticker {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}

.animate-ticker {
    display: flex;
    width: max-content;
    animation: ticker 30s linear infinite;
}

.animate-ticker:hover {
    animation-play-state: paused;
}

.nav-link-active {
    position: relative;
}

.nav-link-active::after {
    content: '';
    position: absolute;
    bottom: -4px;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: currentColor;
}

.stately-gradient {
    background: linear-gradient(135deg, #003465 0%, #004b8d 100%);
}

.serif-italic {
    font-family: 'Noto Serif', serif;
    font-style: italic;
}

/* Accordion styles */
.section-content {
    max-height: 5000px;
    overflow: hidden;
    transition: max-height 0.5s ease-in-out, opacity 0.3s ease-in-out;
}

.section-collapsed .section-content {
    max-height: 0;
    opacity: 0;
}

.toggle-icon {
    transition: transform 0.3s ease;
}

.section-collapsed .toggle-icon {
    transform: rotate(-90deg);
}
