body {
    background-color: #e8eaed;
    color: #021124;
    overflow-x: hidden;
}

::-webkit-scrollbar {
    width: 8px;
}

::-webkit-scrollbar-track {
    background: #021124;
}

::-webkit-scrollbar-thumb {
    background: #0a4280;
    border-radius: 4px;
}

/* Custom Text Reveal Masks */
.char-wrap {
    display: inline-block;
    overflow: hidden;
    vertical-align: top;
}

.char {
    display: inline-block;
    transform: translateY(110%);
    transition: transform 0.5s cubic-bezier(0.77, 0, 0.175, 1);
}

/* Magnetic Button */
.magnetic-btn {
    position: relative;
    display: inline-flex;
    justify-content: center;
    align-items: center;
}


/* Mission & Vision — Original Split Panel */
.mv-panel {
    flex: 1;
    position: relative;
    transition: flex 0.6s cubic-bezier(0.25, 1, 0.5, 1), filter 0.6s ease;
}

/* Desktop (768px+): full-height side-by-side with hover expand */
@media (min-width: 768px) {
    .mv-container:hover .mv-panel {
        filter: grayscale(80%) brightness(0.5);
    }

    .mv-container .mv-panel:hover {
        flex: 2;
        filter: grayscale(0%) brightness(1);
    }
}

/* Touch tablets (768px+, no hover support): always show text */
@media (min-width: 768px) and (hover: none) {
    .mv-text-reveal {
        display: block !important;
        max-height: 24rem !important;
        opacity: 1 !important;
        transform: translateY(0) !important;
    }
}

/* Tap-active class for JS-driven tablet tap reveal */
@media (min-width: 768px) {
    .mv-panel.mv-tap-active {
        flex: 2;
        filter: grayscale(0%) brightness(1) !important;
    }

    .mv-panel.mv-tap-active .mv-text-reveal {
        display: block !important;
        max-height: 24rem !important;
        opacity: 1 !important;
        transform: translateY(0) !important;
    }

    .mv-panel.mv-tap-active h2 {
        transform: translateY(-1rem);
    }
}


/* Floating WhatsApp Pulse */
.wa-pulse {
    box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.7);
    animation: pulse 2s infinite;
}

@keyframes pulse {
    0% {
        box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.7);
    }

    70% {
        box-shadow: 0 0 0 15px rgba(37, 211, 102, 0);
    }

    100% {
        box-shadow: 0 0 0 0 rgba(37, 211, 102, 0);
    }
}

/* Hero Slider Initial Clip State */
.hero-slide {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}

/* Hero Content - ensure text is fully visible */
.hero-content {
    max-width: calc(100% - 5rem);
    overflow: visible;
}

.hero-content h2:first-child {
    font-size: clamp(3rem, 10vw, 8rem);
    line-height: 1;
    white-space: nowrap;
    overflow: visible;
}

.hero-content h2:nth-child(2) {
    font-size: clamp(2rem, 6vw, 4rem);
    line-height: 1;
}

.hero-content p {
    max-width: 90%;
    font-size: clamp(0.9rem, 2vw, 1.125rem);
}

/* Horizontal Scroll Hider */
.hide-scrollbar::-webkit-scrollbar {
    display: none;
}

.hide-scrollbar {
    -ms-overflow-style: none;
    scrollbar-width: none;
}