/* =========================================
   OPERATIONS PAGE - PREMIUM STYLING
========================================= */

/* ================= HERO ================= */

.ops-hero{
    position:relative;
    min-height:85vh;
    display:flex;
    align-items:center;
    background:url("../assets/operations/intelligence.jpg") center/cover no-repeat;
    overflow:hidden;
}

.ops-hero-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(
        135deg,
        rgba(7,17,12,.92),
        rgba(7,17,12,.75),
        rgba(18,48,28,.55)
    );
}

.ops-hero-content{
    position:relative;
    z-index:2;
    max-width:900px;
}

.ops-badge{
    display:inline-block;
    padding:8px 14px;
    border:1px solid #7CB342;
    color:#7CB342;
    font-size:12px;
    letter-spacing:2px;
    margin-bottom:20px;
    background:rgba(124,179,66,.08);
}

.ops-hero h1{
    font-family:'Oswald',sans-serif;
    font-size:80px;
    line-height:1;
    margin-bottom:20px;
}

.ops-hero h1 span{
    color:#7CB342;
}

.ops-hero p{
    color:#cfd8d1;
    max-width:700px;
    line-height:1.8;
    margin-bottom:30px;
}

.ops-hero-actions{
    display:flex;
    gap:15px;
    flex-wrap:wrap;
}

/* ================= OVERVIEW ================= */

.ops-overview{
    padding:100px 0;
    background:#0a1710;
}

.ops-card h2{
    font-family:'Oswald';
    font-size:42px;
    margin-bottom:20px;
}

.ops-card p{
    color:#cbd3cc;
    line-height:1.9;
    margin-bottom:15px;
}

.ops-tags{
    display:flex;
    gap:12px;
    flex-wrap:wrap;
    margin-top:25px;
}

.ops-tags span{
    display:flex;
    align-items:center;
    gap:8px;
    padding:10px 14px;
    border:1px solid #1c2f22;
    background:#07110C;
    font-size:13px;
    color:#cfd8d1;
    transition:.3s;
}

.ops-tags span:hover{
    border-color:#7CB342;
    transform:translateY(-3px);
}

.ops-tags svg{
    width:16px;
    height:16px;
    color:#7CB342;
}

/* image glow */
.ops-image{
    position:relative;
}

.ops-image img{
    border-radius:10px;
}

.ops-image-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(to top, rgba(7,17,12,.7), transparent);
    border-radius:10px;
}

/* ================= CORE OPS ================= */

.ops-core{
    padding:100px 0;
    background:#07110C;
}

.ops-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:25px;
}

.ops-card-item{
    background:#0b1a12;
    border:1px solid #1c2f22;
    padding:30px;
    transition:.35s;
    position:relative;
    overflow:hidden;
}

.ops-card-item::before{
    content:"";
    position:absolute;
    top:0;
    left:-100%;
    width:100%;
    height:100%;
    background:linear-gradient(90deg, transparent, rgba(124,179,66,.1), transparent);
    transition:.6s;
}

.ops-card-item:hover::before{
    left:100%;
}

.ops-card-item:hover{
    transform:translateY(-8px);
    border-color:#7CB342;
    box-shadow:0 15px 40px rgba(0,0,0,.3);
}

.ops-card-item i{
    color:#7CB342;
    width:28px;
    height:28px;
    margin-bottom:15px;
}

.ops-card-item h3{
    font-family:'Oswald';
    margin-bottom:10px;
}

.ops-card-item p{
    color:#c7d0c9;
    line-height:1.6;
}

/* ================= FLOW ================= */

.ops-flow{
    padding:100px 0;
    background:#0a1710;
}

.flow-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:20px;
}

.flow-step{
    background:#07110C;
    border:1px solid #1c2f22;
    padding:25px;
    position:relative;
    transition:.3s;
}

.flow-step:hover{
    transform:translateY(-6px);
    border-color:#7CB342;
}

.flow-step span{
    font-size:26px;
    font-weight:700;
    color:#7CB342;
    display:block;
    margin-bottom:10px;
}

.flow-step h3{
    font-family:'Oswald';
    margin-bottom:10px;
}

.flow-step p{
    color:#cbd3cc;
    line-height:1.6;
}

/* connector line */
.flow-step::after{
    content:"";
    position:absolute;
    right:-10px;
    top:50%;
    width:20px;
    height:2px;
    background:#1c2f22;
}

/* remove last connector */
.flow-step:last-child::after{
    display:none;
}

/* ================= CTA ================= */

.ops-cta{
    padding:120px 0;
    text-align:center;
    background:linear-gradient(135deg,#0b1a12,#12301c);
    position:relative;
    overflow:hidden;
}

.ops-cta h2{
    font-family:'Oswald';
    font-size:48px;
    margin-bottom:15px;
}

.ops-cta p{
    color:#d0d8d1;
    max-width:700px;
    margin:auto;
    margin-bottom:30px;
}

/* glow effect */
.ops-cta::before{
    content:"";
    position:absolute;
    width:400px;
    height:400px;
    background:#7CB342;
    filter:blur(140px);
    opacity:.15;
    top:-100px;
    left:-100px;
}

/* ================= RESPONSIVE ================= */

@media (max-width: 992px){

    .ops-hero h1{
        font-size:55px;
    }

    .ops-grid{
        grid-template-columns:1fr 1fr;
    }

    .flow-grid{
        grid-template-columns:1fr 1fr;
    }
}

@media (max-width: 768px){

    .ops-hero{
        min-height:70vh;
        text-align:center;
    }

    .ops-hero-content{
        margin:auto;
    }

    .ops-hero-actions{
        justify-content:center;
    }

    .ops-grid{
        grid-template-columns:1fr;
    }

    .flow-grid{
        grid-template-columns:1fr;
    }

    .flow-step::after{
        display:none;
    }

    .ops-hero h1{
        font-size:42px;
    }
}

@media (max-width: 480px){

    .ops-hero h1{
        font-size:34px;
    }

    .ops-cta h2{
        font-size:32px;
    }
}

/* =========================
   OPS OVERVIEW - UPGRADED UI
========================= */

.ops-overview{
    padding:110px 0;
    background:#0a1710;
}

/* GRID */
.ops-overview-grid{
    display:grid;
    grid-template-columns:1.2fr 1fr;
    gap:60px;
    align-items:center;
}

/* KICKER */
.ops-kicker{
    display:flex;
    align-items:center;
    gap:10px;
    font-size:12px;
    letter-spacing:2px;
    color:#7CB342;
    margin-bottom:15px;
}

.ops-kicker span{
    width:8px;
    height:8px;
    background:#7CB342;
    border-radius:50%;
    box-shadow:0 0 10px #7CB342;
}

/* TITLE */
.ops-info-panel h2{
    font-family:'Oswald',sans-serif;
    font-size:44px;
    margin-bottom:20px;
}

.ops-info-panel p{
    color:#cbd3cc;
    line-height:1.9;
    margin-bottom:15px;
}

/* STATUS GRID */
.ops-status-grid{
    display:grid;
    gap:15px;
    margin-top:30px;
}

.ops-status-card{
    display:flex;
    align-items:center;
    gap:15px;
    padding:18px 20px;
    background:#07110C;
    border:1px solid #1c2f22;
    transition:.3s;
    position:relative;
    overflow:hidden;
}

.ops-status-card:hover{
    transform:translateY(-5px);
    border-color:#7CB342;
    box-shadow:0 10px 25px rgba(0,0,0,.3);
}

/* light sweep */
.ops-status-card::before{
    content:"";
    position:absolute;
    top:0;
    left:-100%;
    width:100%;
    height:100%;
    background:linear-gradient(90deg, transparent, rgba(124,179,66,.08), transparent);
    transition:.6s;
}

.ops-status-card:hover::before{
    left:100%;
}

.ops-status-card i{
    width:22px;
    height:22px;
    color:#7CB342;
}

.ops-status-card h4{
    margin:0;
    font-size:14px;
}

.ops-status-card span{
    font-size:12px;
    color:#9fb2a3;
}

/* ================= IMAGE PANEL ================= */

.ops-visual-panel{
    position:relative;
}

.ops-image-frame{
    position:relative;
    border-radius:12px;
    overflow:hidden;
    border:1px solid #1c2f22;
}

.ops-image-frame img{
    height:420px;
    width:100%;
    object-fit:cover;
    transition:.5s;
}

.ops-image-frame:hover img{
    transform:scale(1.05);
}

/* glow overlay */
.ops-image-glow{
    position:absolute;
    inset:0;
    background:radial-gradient(circle at center, rgba(124,179,66,.15), transparent 60%);
}

/* floating badge */
.ops-floating-badge{
    position:absolute;
    top:20px;
    left:20px;
    background:rgba(7,17,12,.85);
    border:1px solid #7CB342;
    color:#7CB342;
    font-size:11px;
    letter-spacing:1px;
    padding:8px 12px;
}

/* pulse dot */
.ops-pulse{
    position:absolute;
    bottom:20px;
    right:20px;
    width:14px;
    height:14px;
}

.ops-pulse span{
    display:block;
    width:100%;
    height:100%;
    background:#7CB342;
    border-radius:50%;
    animation:pulse 1.5s infinite;
}

@keyframes pulse{
    0%{ transform:scale(1); opacity:1; }
    100%{ transform:scale(3); opacity:0; }
}

/* ================= RESPONSIVE ================= */

@media(max-width: 992px){
    .ops-overview-grid{
        grid-template-columns:1fr;
        gap:40px;
    }

    .ops-info-panel h2{
        font-size:36px;
    }

    .ops-image-frame img{
        height:320px;
    }
}

@media(max-width: 576px){
    .ops-info-panel h2{
        font-size:30px;
    }

    .ops-status-card{
        flex-direction:column;
        align-items:flex-start;
    }
}