/* Custom Scrollbar */
::-webkit-scrollbar {
    width: 8px;
}

::-webkit-scrollbar-track {
    background: #0B0F19;
}

::-webkit-scrollbar-thumb {
    background: #334155;
    border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
    background: #475569;
}

/* Glassmorphism Utilities */
.glass {
    background: rgba(21, 26, 37, 0.7);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

/* FAQ Accordion Animation */
details > summary {
    list-style: none;
}

details > summary::-webkit-details-marker {
    display: none;
}

details[open] summary ~ * {
    animation: sweep .3s ease-in-out;
}

@keyframes sweep {
    0%    {opacity: 0; transform: translateY(-10px)}
    100%  {opacity: 1; transform: translateY(0)}
}

/* Typography */
h1, h2, h3, h4, h5, h6 {
    font-weight: bold;
}

/* Floating Animation for Elements */
@keyframes float-anim {
    0%, 100% { transform: translateY(0px); }
    50% { transform: translateY(-10px); }
}
.animate-float { animation: float-anim 4s ease-in-out infinite; }

/* Sticky CTA Blur */
.sticky-cta-blur {
    background: rgba(11, 15, 25, 0.85);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}

/* Font Families */
body {
    font-family: 'Open Sans', sans-serif;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Roboto', sans-serif;
}

/* Hero Section Overlay Styles */
.hero-overlay {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background: rgba(0, 0, 0, 0.6) !important;
    z-index: 1 !important;
    pointer-events: none !important;
}

/* Ensure proper z-index stacking for hero sections */
section[style*="background-image"] {
    position: relative !important;
}

section[style*="background-image"] > .hero-overlay {
    z-index: 1 !important;
    background: rgba(0, 0, 0, 0.6) !important;
}

section[style*="background-image"] > div[class*="bg-hero-glow"] {
    z-index: 2 !important;
}

section[style*="background-image"] > div[class*="bg-black"] {
    z-index: 3 !important;
    background: rgba(0, 0, 0, 0.4) !important;
}

section[style*="background-image"] > .container {
    z-index: 20 !important;
    position: relative !important;
}

/* Ensure all text in hero sections is white */
section[style*="background-image"] h1,
section[style*="background-image"] h2,
section[style*="background-image"] h3,
section[style*="background-image"] h4,
section[style*="background-image"] h5,
section[style*="background-image"] h6,
section[style*="background-image"] p,
section[style*="background-image"] span,
section[style*="background-image"] div:not(.hero-overlay) {
    color: white !important;
}

section[style*="background-image"] .text-slate-400,
section[style*="background-image"] .text-slate-300,
section[style*="background-image"] .text-slate-500 {
    color: white !important;
}

