/* ==========================================================================
   ☣ Core Variables & Setup Profiles
   ========================================================================== */
:root {
    --bg-dark-core: #010308;
    --bg-dark-deep: #030611;
    --neon-cyan: #00e5ff;
    --neon-pink: #ff007f;
    --neon-amber: #ffaa00;
    --glass-layer: rgba(3, 6, 17, 0.88);
}

body {
    background-color: var(--bg-dark-core);
    font-family: 'Segoe UI', system-ui, sans-serif;
    color: #ffffff;
    overflow-x: hidden;
}

/* 🔐 RIGID ANTI-COPY SECURITY LAYERS */
.security-lockdown-mode {
    -webkit-touch-callout: none !important;
    -webkit-user-select: none !important;
    -moz-user-select: none !important;
    -ms-user-select: none !important;
    user-select: none !important;
}

.tech-input, .target-visible-input, #aiUserQueryInput {
    user-select: text !important;
    -webkit-user-select: text !important;
    color: #ffffff !important;
    background-color: #010614 !important;
    border: 1px solid rgba(0, 229, 255, 0.4) !important;
}
.target-visible-input:focus, .tech-input:focus {
    background-color: #000000 !important;
    border-color: var(--neon-cyan) !important;
    box-shadow: 0 0 12px rgba(0, 229, 255, 0.6) !important;
}

/* 🧭 STABILIZED ANIMATED NAVBAR */
.custom-cyber-nav {
    background: rgba(1, 3, 8, 0.98) !important;
    backdrop-filter: blur(25px) !important;
    -webkit-backdrop-filter: blur(25px) !important;
    border-bottom: 2px solid var(--neon-cyan) !important;
    z-index: 9999999 !important;
    box-shadow: 0 2px 25px rgba(0, 229, 255, 0.3);
}
.brand-sch-logo { font-weight: 950; color: #fff; text-shadow: 0 0 10px var(--neon-pink); }
.brand-divider { color: var(--neon-cyan); margin: 0 6px; }
.moving-neon-text {
    background: linear-gradient(90deg, #fff, var(--neon-cyan), var(--neon-pink), #fff);
    background-size: 300% auto;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    animation: flowNavbarTextGlow 4s linear infinite;
    font-weight: 800;
}
@keyframes flowNavbarTextGlow {
    0% { background-position: 0% center; }
    100% { background-position: 300% center; }
}
.high-density-links .nav-link { color: rgba(255,255,255,0.85) !important; padding: 6px 14px !important; }
.high-density-links .nav-link:hover, .high-density-links .nav-link.active { color: var(--neon-cyan) !important; text-shadow: 0 0 8px rgba(0, 229, 255, 0.8); }

/* ==========================================================================
   🚨 POPUP ENTRANCE MODES
   ========================================================================== */
.corporate-announcement-popup-overlay {
    position: fixed; top: 0; left: 0; width: 100vw; height: 100vh;
    background: rgba(1, 3, 10, 0.94); z-index: 2147483647 !important;
    display: flex; align-items: center; justify-content: center;
    backdrop-filter: blur(15px);
}
.popup-cyber-capsule {
    background: linear-gradient(145deg, #02091c 0%, #000208 100%);
    border: 2px solid var(--neon-cyan); border-radius: 16px; width: 90%; max-width: 520px;
    position: relative; box-shadow: 0 0 45px rgba(0, 229, 255, 0.4);
    animation: scaleElasticEntrance 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
}
@keyframes scaleElasticEntrance {
    0% { transform: scale(0.6); opacity: 0; filter: blur(10px); }
    100% { transform: scale(1); opacity: 1; filter: blur(0); }
}
.popup-top-laser-line { height: 3px; width: 100%; background: linear-gradient(90deg, transparent, var(--neon-pink), var(--neon-cyan), transparent); position: absolute; top: 0; left: 0; }
.popup-close-trigger-node { position: absolute; top: 12px; right: 12px; color: rgba(255,255,255,0.6); background: transparent; border: none; font-size: 1.3rem; }
.popup-close-trigger-node:hover { color: var(--neon-pink); }
.popup-header-brand-title { letter-spacing: 2px; font-weight: 950; text-shadow: 0 0 10px var(--neon-cyan); }

.popup-founder-glitch-wrapper {
    position: relative; overflow: hidden; padding: 4px 0; background: rgba(255, 0, 127, 0.05); border-radius: 4px;
}
.popup-founder-glitch-text {
    font-family: 'Courier New', Courier, monospace;
    font-size: 0.82rem; font-weight: 900; color: #fff; letter-spacing: 2px;
    position: relative; display: inline-block;
    animation: popFounderGlitchLoop 2.5s infinite linear;
}
@keyframes popFounderGlitchLoop {
    0% { transform: skew(0deg); text-shadow: 1px 1px var(--neon-cyan), -1px -1px var(--neon-pink); }
    10% { transform: skew(-3deg); text-shadow: -2px 1px var(--neon-pink), 1px -2px var(--neon-cyan); }
    12% { transform: skew(0deg); }
    90% { transform: skew(0deg); text-shadow: 1px 1px var(--neon-cyan), -1px -1px var(--neon-pink); }
    92% { transform: skew(5deg); text-shadow: -3px 2px var(--neon-cyan), 2px -3px var(--neon-pink); }
    95% { transform: skew(0deg); }
}

.inner-highlighted-batch-box { background: rgba(1, 5, 20, 0.9); border: 1px dashed rgba(0,229,255,0.4); cursor: pointer; transition: all 0.2s; }
.inner-highlighted-batch-box:hover { background: #030f2d; border-color: var(--neon-pink); }
.popup-action-whatsapp-btn { background: #25d366; color: #fff; border: none; border-radius: 8px; font-weight: 700; transition: all 0.3s; }
.popup-action-whatsapp-btn:hover { background: #1ebd58; transform: translateY(-2px); box-shadow: 0 5px 25px rgba(37, 211, 102, 0.5); }

/* ==========================================================================
   🔥 STRIP SIGNATURE LABELS
   ========================================================================== */
.hero-signature-track-matrix {
    max-width: 680px; position: relative; background: rgba(0, 229, 255, 0.02);
    border-left: 3px solid var(--neon-cyan); border-right: 3px solid var(--neon-pink);
    overflow: hidden; border-radius: 4px;
}
.kinetic-neon-scanner-glow-bar {
    position: absolute; top: 0; left: -100%; width: 30%; height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,0,127,0.25), rgba(0,229,255,0.25), transparent);
    animation: slidingStripLaser 4s infinite linear;
}
@keyframes slidingStripLaser {
    0% { left: -100%; }
    100% { left: 130%; }
}
.hero-signature-animated-text { font-family: 'Courier New', Courier, monospace; font-weight: 700; letter-spacing: 1px; color: #fff; }
.bright-neon-signal { color: var(--neon-pink); text-shadow: 0 0 8px var(--neon-pink); font-size: 0.8rem; animation: textBlinkSoft 1s infinite alternate; }

/* ==========================================================================
   🔮 3D KINETIC IMAGE GALLERY STYLING INTERFACE
   ========================================================================== */
.gallery-viewport-wrapper {
    width: 100%; position: relative; overflow: hidden; padding: 25px 10px;
    border-radius: 20px; background: rgba(1, 3, 10, 0.6);
    box-shadow: inset 0 0 30px rgba(0, 229, 255, 0.05);
}
.gallery-dynamic-kinetic-track {
    display: flex; gap: 24px; transition: transform 0.6s cubic-bezier(0.25, 1, 0.5, 1);
    will-change: transform; transform: translate3d(0, 0, 0);
}
.gallery-card-frame {
    flex: 0 0 calc(33.333% - 16px); min-width: 280px; height: 380px;
    position: relative; border-radius: 16px; border: 2px solid rgba(0, 229, 255, 0.15);
    overflow: hidden; background: var(--bg-dark-deep);
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1); cursor: pointer;
}
.gallery-card-frame:hover {
    transform: scale(1.03) translateY(-8px); border-color: var(--neon-cyan);
    box-shadow: 0 15px 35px rgba(0, 229, 255, 0.35);
}
.gallery-actual-asset {
    width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s ease;
    filter: brightness(0.75) contrast(1.1);
}
.gallery-card-frame:hover .gallery-actual-asset {
    transform: scale(1.1); filter: brightness(0.95) contrast(1.1);
}
.gallery-card-inner-scanner {
    position: absolute; top: -100%; left: 0; width: 100%; height: 40%;
    background: linear-gradient(180deg, transparent, rgba(0, 229, 255, 0.2), transparent);
    z-index: 5; pointer-events: none;
}
.gallery-card-frame:hover .gallery-card-inner-scanner { animation: singleCardLaserScan 1.8s infinite linear; }
@keyframes singleCardLaserScan { 0% { top: -100%; } 100% { top: 130%; } }
.gallery-card-overlay-caption {
    position: absolute; bottom: 0; left: 0; width: 100%; padding: 20px 15px;
    background: linear-gradient(360deg, #000105 0%, rgba(1,3,10,0.8) 60%, transparent 100%);
    border-top: 1px solid rgba(255, 255, 255, 0.05); z-index: 10;
    transform: translateY(10px); transition: transform 0.3s ease;
}
.gallery-card-frame:hover .gallery-card-overlay-caption { transform: translateY(0); }

/* ==========================================================================
   #️ DYNAMIC 3D COURSE CARDS STYLING
   ========================================================================== */
.course-3d-card {
    background: var(--glass-layer);
    border: 1px solid rgba(0, 229, 255, 0.15) !important;
    border-radius: 16px;
    transition: all 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.course-3d-card:hover {
    transform: translateY(-5px);
    border-color: var(--neon-cyan) !important;
    box-shadow: 0 10px 25px rgba(0, 229, 255, 0.2);
}

/* ==========================================================================
   💼 UNIFORM DIMENSION CONTACT CARDS
   ========================================================================== */
.uniform-dimension-card {
    background: rgba(3, 10, 32, 0.75) !important;
    border: 2px solid rgba(0, 229, 255, 0.15) !important; border-radius: 16px !important;
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1) !important; position: relative; overflow: hidden;
}
.uniform-dimension-card:hover {
    transform: translateY(-6px) !important; border-color: var(--neon-cyan) !important;
    box-shadow: 0 12px 30px rgba(0, 229, 255, 0.3) !important; background: rgba(5, 16, 48, 0.9) !important;
}
.custom-insta-gradient-glow { filter: drop-shadow(0 0 8px rgba(255,0,127,0.4)); }
.uniform-dimension-card:hover .custom-insta-gradient-glow { color: var(--neon-pink) !important; filter: drop-shadow(0 0 15px var(--neon-pink)); }
.standard-spring-glow { filter: drop-shadow(0 0 8px rgba(255,255,255,0.15)); }
.uniform-dimension-card:hover .standard-spring-glow { filter: drop-shadow(0 0 15px currentColor); }
.corner-laser-tr { position: absolute; top: 0; right: 0; width: 10px; height: 10px; border-top: 2px solid var(--neon-pink); border-right: 2px solid var(--neon-pink); }

/* ==========================================================================
   🤖 SPEECH TERMINAL ASSISTANT
   ========================================================================== */
.surman-ai-voice-dock { position: fixed !important; bottom: 25px !important; right: 25px !important; z-index: 2147483640 !important; }
.ai-live-notification-prompt-bubble { position: absolute; top: -55px; right: 0; background: #010512; border: 1px solid var(--neon-cyan); border-radius: 12px; padding: 8px 16px; white-space: nowrap; cursor: pointer; box-shadow: 0 5px 20px rgba(0, 229, 255, 0.4); }
.ai-collapsed-bubble { width: 60px; height: 60px; background: #01040a; border: 2px solid var(--neon-cyan); border-radius: 50%; display: flex; align-items: center; justify-content: center; cursor: pointer; position: relative; }
.pulse-ring-node { position: absolute; width: 100%; height: 100%; border: 1px solid var(--neon-cyan); border-radius: 50%; animation: bubbleSystemPulse 2s infinite linear; }
@keyframes bubbleSystemPulse { 0% { transform: scale(1); opacity: 1; } 100% { transform: scale(1.4); opacity: 0; } }
.ai-expanded-terminal-frame { width: 330px; background: rgba(2, 5, 15, 0.99); border: 1px solid var(--neon-cyan) !important; border-radius: 14px !important; box-shadow: 0 10px 45px rgba(0,229,255,0.5); }
.ai-terminal-output-logs { height: 180px; overflow-y: auto; font-size: 0.78rem; display: flex; flex-direction: column; gap: 6px; }
.shortcut-chip-node { cursor: pointer; font-size: 0.65rem !important; padding: 4px 6px !important; }
.shortcut-chip-node:hover { background: #000 !important; color: var(--neon-cyan) !important; border-color: var(--neon-cyan) !important; }

/* ==========================================================================
   🧱 FOOTER ARCHITECTURES
   ========================================================================== */
.custom-isolated-footer { background-color: #000105 !important; position: relative; }
.footer-matrix-digital-rain-overlay { position: absolute; top:0; left:0; width:100%; height:100%; background: linear-gradient(180deg, rgba(0,229,255,0.01), rgba(255,0,127,0.01)); pointer-events: none; }
.footer-scanning-laser-beam { position: absolute; top:0; left:-100%; width:40%; height:100%; background: linear-gradient(90deg, transparent, rgba(0, 229, 255, 0.05), transparent); transform: skewX(-20deg); animation: horizontalLaserScanLoop 5s infinite linear; }
@keyframes horizontalLaserScanLoop { 0% { left: -100%; } 140% { left: 140%; } }
.footer-premium-identity-housing {
    max-width: 460px; background: linear-gradient(135deg, rgba(3, 10, 32, 0.95) 0%, rgba(1, 3, 10, 0.99) 100%);
    border: 1px solid rgba(0, 229, 255, 0.3); position: relative; overflow: hidden;
    animation: bounceKineticFrame 4s infinite ease-in-out alternate;
}
@keyframes bounceKineticFrame {
    0% { transform: translateY(0); filter: drop-shadow(0 2px 5px rgba(0,229,255,0.1)); }
    100% { transform: translateY(-6px); filter: drop-shadow(0 15px 25px rgba(0,229,255,0.3)); border-color: var(--neon-pink); }
}
.footer-divider-dots { width: 60px; height: 2px; background: var(--neon-pink); }
.footer-glitch-text { font-size: 1.7rem; font-weight: 950; text-shadow: 0 0 8px var(--neon-cyan); }

/* ==========================================================================
   🔮 BACKGROUND PARTICLES & UTILITY WRAPPERS
   ========================================================================== */
.tech-bg-container { position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; z-index: -100 !important; }
#matrixMeshParticlesCanvas { width: 100%; height: 100%; display: block; }
.page-main-architecture-wrapper { position: relative; z-index: 10 !important; }
.sch-logo-massive-container { position: relative; width: 220px; height: 220px; margin: 0 auto; }
.sch-cyber-shield-massive {
    width: 100%; height: 100%; background: radial-gradient(circle, #020717 40%, #000207 100%);
    border: 4px solid var(--neon-cyan); border-radius: 40px; display: flex; flex-direction: column;
    align-items: center; justify-content: center; animation: steadyGlowNeonPulse 3s ease-in-out infinite alternate;
}
.sch-logo-massive-text { font-size: 4.2rem; font-weight: 950; text-shadow: 0 0 15px var(--neon-pink); }
.sch-orbit-ring-outer { position: absolute; top: -15px; left: -15px; right: -15px; bottom: -15px; border: 2px solid var(--neon-cyan); border-left-color: transparent; border-radius: 50%; animation: counterSpinOuter 8s linear infinite; }
.sch-orbit-ring-inner { position: absolute; top: -30px; left: -30px; right: -30px; bottom: -30px; border: 1px dashed var(--neon-pink); border-top-color: transparent; border-radius: 50%; animation: spinInner 14s linear infinite; }
@keyframes counterSpinOuter { 100% { transform: rotate(-360deg); } }
@keyframes spinInner { 100% { transform: rotate(360deg); } }
@keyframes steadyGlowNeonPulse { 0% { border-color: var(--neon-cyan); } 100% { border-color: var(--neon-pink); } }
.symmetric-cyber-glow-btn { background: transparent; color: #ffffff !important; border: 2px solid var(--neon-cyan); border-radius: 8px; letter-spacing: 2px; transition: all 0.3s; }
.symmetric-cyber-glow-btn:hover { transform: translateY(-3px); box-shadow: 0 0 25px var(--neon-cyan); }
.symmetric-cyber-glow-btn.registration-variant { border-color: var(--neon-pink); }
.symmetric-cyber-glow-btn.registration-variant:hover { box-shadow: 0 0 25px var(--neon-pink); }
.scroll-animate { opacity: 0; transform: translateY(20px); transition: all 0.5s ease-out; }
.scroll-animate.reveal-active { opacity: 1; transform: translateY(0); }
.hero-viewport { min-height: 95vh; padding-top: 130px; }
.mega-hero-title { font-size: calc(3rem + 3.5vw) !important; font-weight: 950; background: linear-gradient(135deg, #fff, var(--neon-cyan)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
.founder-identity-box, .recognition-cyber-card { background: var(--glass-layer); border: 1px solid rgba(255,255,255,0.08) !important; border-radius: 16px; }
.nav-registration-pulsar { background: linear-gradient(90deg, var(--neon-cyan), #00ffaa); border: none !important; }
.form-card { background: #020512; border: 1px solid rgba(0, 229, 255, 0.2); border-radius: 16px; padding: 30px; }
.secure-data-status-banner { background: rgba(0, 229, 255, 0.03); border: 1px solid rgba(0, 229, 255, 0.2); border-radius: 30px; padding: 8px; }
.live-scrollable-feed-viewport { height: 300px; overflow-y: auto; }
.section-spacer { padding: 60px 0; }
.container-glass { background: rgba(2, 5, 14, 0.6); backdrop-filter: blur(12px); }

/* 📱 RESPONSIVE MEDIA MANAGEMENT */
@media(max-width: 992px) { .gallery-card-frame { flex: 0 0 calc(50% - 12px); } }
@media(max-width: 650px) { .gallery-card-frame { flex: 0 0 100%; } .gallery-viewport-wrapper { padding: 15px 5px; } }
@media(max-width: 768px) { .hero-viewport { padding-top: 120px; } }