body {
    background-color: #121414;
    color: #e2e2e2;
    -webkit-font-smoothing: antialiased;
    overflow-x: hidden;
}
.glass-card {
    background: rgba(30, 32, 32, 0.4);
    backdrop-filter: blur(24px);
    -webkit-backdrop-filter: blur(24px);
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: inset 0 1px 1px rgba(255, 255, 255, 0.05);
}
.hero-gradient {
    background: linear-gradient(to bottom, rgba(18, 20, 20, 0) 0%, rgba(18, 20, 20, 1) 100%);
}
.shimmer-btn {
    position: relative;
    overflow: hidden;
}
.shimmer-btn::after {
    content: '';
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: linear-gradient(45deg, transparent, rgba(255,255,255,0.1), transparent);
    transform: rotate(45deg);
    transition: 0.5s;
}
.shimmer-btn:hover::after {
    left: 120%;
}
@keyframes subtle-float {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-10px); }
}
@keyframes float {
    0%, 100% { transform: translateY(0px); }
    50% { transform: translateY(-20px); }
}
.animate-float {
    animation: subtle-float 6s ease-in-out infinite;
}
.animate-float-lg {
    animation: float 6s ease-in-out infinite;
}
.water-gradient {
    background: radial-gradient(circle at center, #001f3f 0%, #121414 100%);
}
.glow-cyan {
    box-shadow: 0 0 20px rgba(0, 128, 128, 0.2);
}
.material-symbols-outlined {
    font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}
body.menu-open {
    overflow: hidden;
}
#mobile-menu.is-open {
    pointer-events: auto;
    opacity: 1;
}
#mobile-menu.is-open #mobile-menu-panel {
    transform: translateX(0);
}
.site-nav-link.is-active {
    color: #76d6d5;
}
.site-nav-desktop .site-nav-link.is-active {
    border-bottom: 2px solid #76d6d5;
    padding-bottom: 0.25rem;
}
.mobile-nav-link.is-active {
    background: rgba(118, 214, 213, 0.1);
    color: #76d6d5;
}
