/* Global Styles */
:root {
    --primary-color: #1997f0;
    --bg-light: #f6f7f8;
    --bg-dark: #101b22;
}

.scientific-gradient {
    background: radial-gradient(circle at 50% 50%, rgba(25, 151, 240, 0.05) 0%, rgba(255, 255, 255, 0) 70%);
}

.hero-pattern {
    background-color: #ffffff;
    background-image: radial-gradient(#e5e7eb 0.5px, transparent 0.5px);
    background-size: 24px 24px;
}

.dark .hero-pattern {
    background-color: #101b22;
    background-image: radial-gradient(#1e293b 0.5px, transparent 0.5px);
}

/* Animations */
.reveal {
    opacity: 0;
    transform: translateY(20px);
    transition: all 0.8s cubic-bezier(0.23, 1, 0.32, 1);
}

.reveal.active {
    opacity: 1;
    transform: translateY(0);
}

.revealDelay {
    opacity: 0;
    transform: translateY(20px);
    transition: all 0.8s cubic-bezier(0.23, 1, 0.32, 1) 0.2s;
}

.revealDelay.active {
    opacity: 1;
    transform: translateY(0);
}

.revealDelay2 {
    opacity: 0;
    transform: translateY(20px);
    transition: all 0.8s cubic-bezier(0.23, 1, 0.32, 1) 0.4s;
}

.revealDelay2.active {
    opacity: 1;
    transform: translateY(0);
}

/* Glassmorphism utility */
.glass {
    background: rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.dark .glass {
    background: rgba(16, 27, 34, 0.6);
}

/* Custom transitions */
.transition-all-300 {
    transition: all 0.3s ease;
}

/* Watermark Logo */
.hero-watermark {
    position: absolute;
    pointer-events: none;
    z-index: 1;
    mix-blend-mode: multiply;
    transition: all 0.5s ease;
}

.watermark-center {
    left: 50%;
    top: 40%;
    transform: translate(-50%, -50%);
    width: 280%;
    max-width: 3500px;
    opacity: 0.025;
}

.watermark-subpage {
    left: 50%;
    top: 40%;
    transform: translate(-50%, -50%);
    width: 70%;
    max-width: 900px;
    opacity: 0.03;
}

.watermark-behind-title {
    left: 20%;
    top: 50%;
    transform: translateY(-50%);
    width: 80%;
    max-width: 800px;
    opacity: 0.04;
}

.dark .hero-watermark {
    opacity: 0.08;
    filter: invert(1);
    mix-blend-mode: screen;
}

.dark .watermark-center {
    opacity: 0.06;
}

@media (max-width: 768px) {
    .hero-watermark {
        width: 80%;
        right: -10%;
        opacity: 0.03;
    }
}

/* Brand Prestige Section */
.brand-prestige-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 2rem;
}

.metric-card-glass {
    background: rgba(255, 255, 255, 0.03);
    backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    transition: all 0.4s cubic-bezier(0.23, 1, 0.32, 1);
}

.metric-card-glass:hover {
    background: rgba(255, 255, 255, 0.06);
    border-color: var(--primary-color);
    transform: translateY(-5px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.2);
}

.logo-focal-point {
    position: relative;
    filter: drop-shadow(0 0 20px rgba(25, 151, 240, 0.1));
    animation: logo-glow 4s ease-in-out infinite alternate;
}

@keyframes logo-glow {
    from {
        filter: drop-shadow(0 0 10px rgba(25, 151, 240, 0.1));
    }

    to {
        filter: drop-shadow(0 0 30px rgba(25, 151, 240, 0.3));
    }
}

.prestige-dark-gradient {
    background: radial-gradient(circle at center, #1a2a33 0%, #101b22 100%);
}

/* Contact Visual Layout */
.contact-visual-wrapper {
    position: relative;
    width: 100%;
    margin-bottom: 2rem;
}

.contact-visual-container {
    position: relative;
    width: 100%;
    aspect-ratio: 4 / 3;
    background: #0a0f12;
    border-radius: 1.5rem;
    overflow: hidden;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.4);
    display: flex;
    justify-content: center;
    align-items: center;
}

.robotic-hand-visual {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.9;
}

@media (max-width: 768px) {
    .contact-visual-container {
        aspect-ratio: 4 / 3;
    }
}