/* Custom utility classes */
.glass {
    background: rgba(255, 255, 255, 0.7);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.3);
}

.liquid-glass {
    background: rgba(255, 255, 255, 0.25);
    backdrop-filter: blur(16px) saturate(180%);
    -webkit-backdrop-filter: blur(16px) saturate(180%);
    border: 1px solid rgba(255, 255, 255, 0.4);
    box-shadow: 0 8px 32px 0 rgba(31, 38, 135, 0.05);
    transition: all 0.3s ease;
}

.liquid-glass:hover {
    background: rgba(255, 255, 255, 0.35);
    box-shadow: 0 8px 32px 0 rgba(31, 38, 135, 0.1);
}

.hero-gradient {
    background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(22, 15, 35, 0.9));
}

/* Lenis smooth scrolling required styles (The Scroll Engine) */
html.lenis,
html.lenis body {
    height: auto;
}

.lenis.lenis-smooth {
    scroll-behavior: auto !important;
}

.lenis.lenis-smooth [data-lenis-prevent] {
    overscroll-behavior: contain;
}

.lenis.lenis-stopped {
    overflow: hidden;
}

.lenis.lenis-scrolling iframe {
    pointer-events: none;
}

/* GSAP Start states */
.gsap-reveal {
    opacity: 0;
    transform: translateY(40px) scale(0.95);
}

/* Spline Viewer Configuration */
spline-viewer {
    width: 100%;
    height: 100%;
}