body {
    background-color: #050608;
    color: #fff;
    background-image:
        radial-gradient(circle at 50% 0%, rgba(13, 148, 136, 0.15), transparent 40%),
        radial-gradient(circle at 80% 80%, rgba(249, 115, 22, 0.05), transparent 40%);
    transition: background-color 0.3s ease, color 0.3s ease;
}

/* Light Mode Body Override */
body.light-page {
    background-color: #f8fafc;
    /* Slate 50 */
    color: #111827;
    /* Gray 900 */
    background-image:
        radial-gradient(circle at 50% 0%, rgba(13, 148, 136, 0.1), transparent 40%),
        radial-gradient(circle at 80% 80%, rgba(249, 115, 22, 0.08), transparent 40%);
}

.bg-grid-tech {
    background-size: 40px 40px;
    background-image: linear-gradient(to right, rgba(255, 255, 255, 0.03) 1px, transparent 1px),
        linear-gradient(to bottom, rgba(255, 255, 255, 0.03) 1px, transparent 1px);
    mask-image: radial-gradient(circle at center, black 40%, transparent 100%);
}

/* Light Mode Grid Override */
.light-page .bg-grid-tech {
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.05) 1px, transparent 1px),
        linear-gradient(to bottom, rgba(0, 0, 0, 0.05) 1px, transparent 1px);
}

.glass-card {
    background: rgba(20, 25, 32, 0.7);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.3);
    transition: all 0.3s ease;
}

/* Light Mode Glass Card Override */
.light-page .glass-card {
    background: rgba(255, 255, 255, 0.7);
    border: 1px solid rgba(0, 0, 0, 0.08);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
    color: #1f2937;
}

.glass-card:hover {
    border-color: rgba(13, 148, 136, 0.3);
    box-shadow: 0 0 20px rgba(13, 148, 136, 0.15);
}

.light-page .glass-card:hover {
    border-color: rgba(13, 148, 136, 0.4);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}

.text-gradient-primary {
    background: linear-gradient(135deg, #0d9488 0%, #2dd4bf 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* FAQ Transition */
.faq-content {
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-out, opacity 0.3s ease-out, padding 0.3s ease;
}

.faq-content.active {
    max-height: 1000px;
    opacity: 1;
}

/* Marquee Mask */
.mask-gradient {
    mask-image: linear-gradient(to right, transparent, black 10%, black 90%, transparent);
}

::-webkit-scrollbar {
    width: 8px;
}

::-webkit-scrollbar-track {
    background: #0f1115;
}

.light-page ::-webkit-scrollbar-track {
    background: #f1f5f9;
}

::-webkit-scrollbar-thumb {
    background: #1f2937;
    border-radius: 4px;
}

.light-page ::-webkit-scrollbar-thumb {
    background: #cbd5e1;
}

::-webkit-scrollbar-thumb:hover {
    background: #374151;
}

.light-page ::-webkit-scrollbar-thumb:hover {
    background: #94a3b8;
}

.animation-delay-200 {
    animation-delay: 0.2s;
}

.animation-delay-400 {
    animation-delay: 0.4s;
}

.animation-delay-600 {
    animation-delay: 0.6s;
}

.animation-delay-1000 {
    animation-delay: 1s;
}

body.light-page .text-white.invert-color-page:not(.bg-primary),
body.light-page .prose .text-white {
    color: black !important;
}

body.light-page .border-white\/10 {
    border-color: rgb(154 154 154);
}

body.light-page footer div.flex a img {
    filter: brightness(0);
}