/* Common styles merged from different pages */
.material-symbols-outlined {
    font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}

.glass-card {
    background: rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.gradient-btn-primary, .btn-gradient-primary {
    background: linear-gradient(135deg, #00415c 0%, #1a6589 100%);
}

.gradient-btn-secondary, .btn-gradient-secondary {
    background: linear-gradient(135deg, #00A68D 0%, #5bdbc0 100%);
}

.hero-gradient {
    background: linear-gradient(135deg, #00415c 0%, #043D56 100%);
}

.hero-parallax {
    transform-style: preserve-3d;
    perspective: 1000px;
}

.floating-element {
    animation: float 6s ease-in-out infinite;
}

@keyframes float {
    0%, 100% { transform: translateY(0px) rotate(0deg); }
    50% { transform: translateY(-20px) rotate(5deg); }
}

.bg-mesh {
    background-color: #fcf9f8;
    background-image: 
        radial-gradient(at 0% 0%, hsla(197, 100%, 82%, 0.15) 0px, transparent 50%),
        radial-gradient(at 100% 0%, hsla(170, 100%, 73%, 0.1) 0px, transparent 50%);
}

.immersive-section {
    width: 100%;
    max-width: 100vw;
    overflow-x: hidden;
}

.card-gradient-overlay {
    background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(252,249,248,1) 100%);
}

.immersive-shadow {
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.15);
}

/* Mobile Menu utility classes */
.mobile-menu {
    display: none;
    position: fixed;
    top: 80px; /* Adjust based on navbar height */
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(252, 249, 248, 0.98);
    z-index: 99;
    flex-direction: column;
    padding: 2rem;
    overflow-y: auto;
}

.mobile-menu.active {
    display: flex;
}

/* Scroll Animations */
.animate-on-scroll {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1), transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
}

.animate-on-scroll.is-visible {
    opacity: 1;
    transform: translateY(0);
}

.stagger-1 { transition-delay: 0.1s; }
.stagger-2 { transition-delay: 0.2s; }
.stagger-3 { transition-delay: 0.3s; }
.stagger-4 { transition-delay: 0.4s; }

/* Enhanced Hover Effects */
.hover-lift {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.hover-lift:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 40px -10px rgba(0, 89, 125, 0.15);
}
