/* Custom styles for The Bar Time */

/* Smooth focus outlines for accessibility */
a:focus-visible, button:focus-visible {
    outline: 2px solid #5fbf93;
    outline-offset: 2px;
    border-radius: 4px;
}

/* Custom scrollbar */
::-webkit-scrollbar {
    width: 8px;
}
::-webkit-scrollbar-track {
    background: #f2fbf8;
}
::-webkit-scrollbar-thumb {
    background: #95d9b8;
    border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
    background: #5fbf93;
}

/* Selection color */
::selection {
    background: #95d9b8;
    color: #0d1e66;
}

/* Nav scroll state */
.nav-scrolled {
    background: rgba(255, 255, 255, 0.95) !important;
    backdrop-filter: blur(12px);
    box-shadow: 0 1px 20px rgba(9, 20, 64, 0.08);
}
.nav-scrolled .font-serif {
    color: #0d1e66 !important;
}
.nav-scrolled a:not(.bg-midnight-900):not(.bg-mint-500) {
    color: #12298f !important;
}

/* Mobile menu animation */
#mobileMenu {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.35s ease, padding 0.35s ease;
}
#mobileMenu.open {
    max-height: 400px;
    padding: 0.5rem 0;
}

/* Decorative blob shapes */
.blob-shape {
    border-radius: 60% 40% 30% 70% / 60% 30% 70% 40%;
}

/* Subtle pattern overlay for sections */
.pattern-overlay {
    background-image: radial-gradient(circle, rgba(95, 191, 147, 0.08) 1px, transparent 1px);
    background-size: 24px 24px;
}
