/* css/support.css - OPERATIONS LEAD (Fixed & Balanced) */

.support-section {
    position: relative;
    min-height: 90vh;
    background: transparent;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 50px 5%;
    overflow: hidden;
    z-index: 2;
}

/* --- REUSE YOUR STAR BACKGROUND --- */
/* We use the same styling as .about-stars but positioned for this section */
.support-stars {
    position: absolute;
    inset: 0;
    background-image:
        radial-gradient(1px 1px at 50px 50px, rgba(255,255,255,0.3), transparent),
        radial-gradient(1px 1px at 150px 250px, rgba(255,255,255,0.1), transparent);
    background-size: 400px 400px;
    opacity: 0.3;
    z-index: 1;
}

.support-container {
    position: relative;
    z-index: 10;
    width: 100%;
    max-width: 1400px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 4rem;
    
    /* ZIG-ZAG: Normal row puts Text on Left, Photo on Right */
    flex-direction: row; /* <-- CHANGED from row-reverse */
}

/* --- TEXT SIDE (Now on Left due to row-reverse) --- */
.support-content {
    /* FIXED: Widened from 0.8 to 1 to match the photo side */
    flex: 1; 
    text-align: right;
    color: #fff;
    padding-left: 3rem;
    padding-right: 6rem;
}

.support-headline {
    font-family: var(--font-heading);
    font-weight: 700;
    font-size: clamp(2.5rem, 4vw, 4.5rem); /* Bigger impact */
    line-height: 0.9;
    text-transform: uppercase;
    margin-bottom: 2rem;
    letter-spacing: 0.05em;
    color: transparent;
    -webkit-text-stroke: 1px rgba(255, 255, 255, 0.8);
    text-align: left;
}

.support-headline span {
    color: var(--primary);
    -webkit-text-stroke: 0;
    text-shadow: 0 0 30px rgba(236, 246, 116, 0.3);
}

.support-desc {
    font-family: var(--font-body);
    font-size: 1.1rem;
    line-height: 1.7;
    color: rgba(255, 255, 255, 0.8);
    margin-bottom: 3rem;
    
    /* FIXED: Removed the max-width restriction */
    margin-left: auto; 
    font-weight: 300;
    text-align: left; 
    max-width: 600px; 
}

/* --- PHOTO WRAPPER (Right Side) --- */
.ops-wrapper {
    flex: 1; /* Equal width to text */
    display: flex;
    justify-content: center;
    align-items: center;
    height: 700px; /* Matching your height */
    position: relative;
}

/* --- THE EFFECT BEHIND HIM (CSS "Neural" Grid) --- */
.ops-grid {
    position: absolute;
    width: 700px;
    height: 700px;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 5;
    pointer-events: none;
    opacity: 0.4;
    
    /* Create a technical grid mesh */
    background-image: 
        radial-gradient(rgba(236, 246, 116, 0.2) 1px, transparent 1px),
        radial-gradient(rgba(255, 255, 255, 0.1) 1px, transparent 1px);
    background-size: 40px 40px, 120px 120px;
    
    /* Mask it into a circle so it looks like a web */
    mask-image: radial-gradient(circle, black 30%, transparent 70%);
    -webkit-mask-image: radial-gradient(circle, black 30%, transparent 70%);
    
    animation: pulseGrid 8s ease-in-out infinite;
}

/* --- SPHERE --- */
.ops-sphere {
    position: relative;
    width: 450px;
    height: 450px;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 10;
}

.ops-photo-core {
    position: relative;
    width: 300px; /* Matching your size */
    height: 300px;
    border-radius: 50%;
    z-index: 50;
    border: 1px solid rgba(255,255,255,0.1);
    background: #000;
    overflow: hidden;
    box-shadow: 
        0 0 60px 30px rgba(0, 0, 0, 0.9),
        0 0 120px 60px rgba(0, 0, 0, 0.6);
}

.ops-photo-core img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    filter: grayscale(100%) contrast(1.1);
    transition: all 0.5s ease;
}

.ops-sphere:hover .ops-photo-core img {
    filter: grayscale(0%) contrast(1);
}

/* --- GEO RINGS --- */
.geo-ring {
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, 0.05);
    box-sizing: border-box;
}

.gr-1 { width: 450px; height: 450px; animation: spinOps 60s linear infinite; border-style: dashed; }
.gr-2 { width: 520px; height: 520px; animation: spinOps 50s linear infinite reverse; border-color: rgba(236, 246, 116, 0.1); }
.gr-3 { width: 600px; height: 600px; animation: spinOps 80s linear infinite; border-width: 1px; opacity: 0.5; }

@keyframes spinOps {
    from { transform: translate(-50%, -50%) rotate(0deg); }
    to { transform: translate(-50%, -50%) rotate(360deg); }
}

@keyframes pulseGrid {
    0%, 100% { transform: translate(-50%, -50%) scale(1); opacity: 0.3; }
    50% { transform: translate(-50%, -50%) scale(1.05); opacity: 0.5; }
}

/* MOBILE */
@media (max-width: 900px) {
    .support-container { flex-direction: column-reverse; text-align: center; gap: 3rem; }
    .support-content { padding-left: 0; text-align: center; }
    .support-desc { margin-left: auto; margin-right: auto; }
    .ops-grid { width: 400px; height: 400px; }
    .ops-sphere { width: 320px; height: 320px; }
    .ops-photo-core { width: 220px; height: 220px; }
    .gr-1, .gr-2, .gr-3 { width: 100%; height: 100%; }
}

/* --- NEURAL CANVAS (Same as About section) --- */
.ops-neural-links {
    position: absolute;
    width: 700px;
    height: 700px;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 5;
    pointer-events: none;
    opacity: 0.55;
}

/* css/support.css - MOBILE POLISH (Nestor's Upgrade) */

@media (max-width: 900px) {

    .support-section {
        padding: 80px 5% 80px 5%; /* Generous vertical spacing */
        min-height: auto;
        overflow: hidden;
    }

    .support-container {
        flex-direction: column;
        text-align: center;
        gap: 2rem;
        position: relative;
        z-index: 5;
    }

    /* 1. THE OPS WRAPPER (Photo First) */
    .ops-wrapper {
        order: 1;
        height: 340px; /* Fixed height for the visual stage */
        width: 100%;
        margin-bottom: 1rem;
        position: relative;
        display: flex;
        justify-content: center;
        align-items: center;
        z-index: 10;
        
        /* THE FIX: Extra space over his pretty head */
        padding-top: 40px; 
    }

    /* 2. THE NEURAL CANVAS (Un-boxed & Masked) */
    .ops-neural-links {
        width: 320px !important;
        height: 320px !important;
        
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        
        opacity: 0.5;
        pointer-events: none;
        
        /* The Magic Fade Mask (Same as yours) */
        -webkit-mask-image: radial-gradient(circle, black 40%, transparent 70%);
        mask-image: radial-gradient(circle, black 40%, transparent 70%);
        
        z-index: 1;
    }

    /* 3. THE SPHERE & PHOTO */
    .ops-sphere {
        width: 240px;
        height: 240px;
        position: relative;
        z-index: 20;
    }

    .ops-photo-core {
        width: 160px;
        height: 160px;
        box-shadow: 0 0 30px rgba(0,0,0,0.8);
        background: #000;
        z-index: 25;
        border-radius: 50%;
    }

    /* 4. GEO RINGS (Mobile Tuned) */
    .geo-ring {
        width: 100%;
        height: 100%;
        border-width: 1px;
        opacity: 0.6;
    }
    
    .gr-1 { width: 100%; height: 100%; animation: spinOps 60s linear infinite; }
    .gr-2 { width: 105%; height: 105%; animation: spinOps 50s linear infinite reverse; border-color: rgba(236, 246, 116, 0.2); }
    .gr-3 { display: none; } /* Hide the outer ring for cleaner mobile look */

    /* 5. TEXT CONTENT */
    .support-content {
        order: 2;
        padding-left: 0;
        padding-right: 0;
        text-align: center;
        display: flex;
        flex-direction: column;
        align-items: center;
        position: relative;
        z-index: 30;
    }

    .support-headline {
        font-size: 2rem;
        line-height: 1;
        margin-bottom: 1.5rem;
        text-align: center;
        text-shadow: 0 0 20px rgba(0,0,0,0.8);
    }
    
    .support-headline span {
        text-align: center;
        display: block; 
    }

    .support-desc {
        font-size: 1rem;
        line-height: 1.6;
        margin-left: 0;
        margin-right: 0;
        max-width: 100%;
        padding: 0 10px;
        color: rgba(255, 255, 255, 0.9);
        text-align: center;
    }
    
    /* Fix alignment of the "// REDEFINING" tag */
    .support-desc span {
        text-align: center !important;
        display: block;
        margin-bottom: 1rem;
    }

    /* 6. SIGNATURE BLOCK */
    .signature-block {
        border-left: none;
        border-right: none; /* Remove desktop right border */
        border-top: 1px solid var(--primary); /* Add top border like yours */
        padding-left: 0;
        padding-right: 0;
        padding-top: 20px;
        align-items: center !important; /* Force center align */
        margin-top: 2rem;
        width: fit-content;
    }
}

.signature-block.signature-right {
    border-left: none;
    border-right: 2px solid var(--primary);
    padding-left: 0;
    padding-right: 15px;
    text-align: right;
    align-items: flex-end;
}