/* ===================================================
   FLY ITALY V7
=================================================== */

:root{

    --bg-dark:#03142d;
    --bg-dark-2:#072245;
    --primary:#1e7bff;
    --accent:#4ea4ff;
    --text:#ffffff;
    --muted:#d8e0ea;

}

body{

    background:#041427;

    overflow-x:hidden;

    font-family:
        Inter,
        Segoe UI,
        sans-serif;
}
.navbar-actions{

    display:flex;
    align-items:center;
    gap:10px;
}

.btn-crew{

    margin-right:16px;
}

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

.hero-v2{
    background:#071a32;
    position:relative;

    margin:0;

    border-radius:0;

    overflow:visible;

    min-height:700px;

    background-image:
        url('../hero/hero-flyitaly.webp');

    background-size:cover;

    background-position:center;
}

.hero-overlay{

    position:absolute;

    inset:0;

    background:
        linear-gradient(
            90deg,
            rgba(3,20,45,.95) 0%,
            rgba(3,20,45,.88) 35%,
            rgba(3,20,45,.55) 60%,
            rgba(3,20,45,.15) 100%
        );

    z-index:1;
}

.hero-container{

    position:relative;

    z-index:2;

    padding:
        90px
        80px
        220px;
}

.hero-content-row{
    display:flex;
    align-items:center;
}

.hero-left{

    color:white;

    max-width:720px;
}

.hero-badge{

    display:inline-block;

    padding:
        12px
        20px;

    border-radius:999px;

    background:
        rgba(255,255,255,.12);

    font-weight:700;

    letter-spacing:.5px;
}

.hero-title{

    margin-top:25px;

    font-size:6.5rem;

    line-height:.95;

    font-weight:900;
}

.hero-title span{

    color:var(--accent);
}

.hero-description{

    margin-top:25px;

    font-size:1.35rem;

    line-height:1.9;

    color:var(--muted);

    max-width:650px;
}

.hero-networks{

    display:flex;

    gap:25px;

    margin-top:35px;
}

.hero-networks img{

    height:80px;

    width:auto;
}

.hero-buttons{

    display:flex;

    gap:20px;

    margin-top:35px;
}

.hero-buttons .btn{

    padding:
        15px
        28px;

    font-weight:700;
}


.hero-features{

    display:flex;

    gap:30px;

    margin-top:35px;

    color:white;

    font-size:1rem;
}

.hero-video{

    width:520px;

    margin-top: -300px;
    margin-left:-450px;

    margin-right:500px;

    border-radius:22px;

    overflow:hidden;

    border:2px solid rgba(78,164,255,.35);

    box-shadow:0 30px 80px rgba(0,0,0,.35);
}
.hero-video .ratio{

    border-radius:22px;
}

.hero-video iframe{

    border:0;
}
.page-hero{

    padding:
        120px
        0
        60px;

    background:
        linear-gradient(
            135deg,
            #02101f,
            #07274b
        );

    color:white;
}

.page-hero h1{

    font-size:4rem;

    font-weight:900;
}

.hero-badge{

    display:inline-block;

    padding:
        10px
        18px;

    border-radius:999px;

    background:
        rgba(255,255,255,.1);

    margin-bottom:20px;
}
/* ======================================
   NETWORK PAGE
====================================== */

.network-hero{

    position:relative;

    overflow:hidden;

    background-image:
        linear-gradient(
            90deg,
            rgba(2,16,31,.95),
            rgba(2,16,31,.75)
        ),
        url('../hero/hero-flyitaly.webp');

    background-size:cover;

    background-position:center;
}

.network-map-section{

    padding:
        80px
        0;
}

.network-map-card{

    overflow:hidden;

    border-radius:24px;

    box-shadow:
        0 20px 60px rgba(0,0,0,.15);
}

#network-map{

    height:700px;
}

.network-platforms{

    padding-bottom:120px;
}

.platform-card{

    background:#eef2f6;

    border-radius:24px;

    padding:50px;

    text-align:center;

    height:100%;
}

.platform-card img{

    height:80px;

    width:auto;

    margin-bottom:25px;
}

.platform-card h3{

    font-weight:800;

    margin-bottom:15px;
}

.platform-card p{

    color:#666;

    margin:0;
}
/* ======================================
   NETWORK BANNER
====================================== */

.network-banner-section{

    padding:
        80px
        0;
}

.network-banner{

    position:relative;

    overflow:hidden;

    border-radius:30px;

    min-height:650px;

    box-shadow:
        0 30px 80px rgba(0,0,0,.20);
}

.network-banner img{

    width:100%;
    height:100%;

    position:absolute;

    inset:0;

    object-fit:cover;
}

.network-banner-overlay{

    position:relative;

    z-index:2;

    min-height:650px;

    display:flex;

    flex-direction:column;

    justify-content:center;

    padding:
        80px;

    background:
        linear-gradient(
            90deg,
            rgba(3,20,45,.92) 0%,
            rgba(3,20,45,.75) 45%,
            rgba(3,20,45,.30) 100%
        );
}

.network-label{

    display:inline-block;

    margin-bottom:18px;

    color:#4ea4ff;

    font-size:.9rem;

    font-weight:700;

    letter-spacing:2px;

    text-transform:uppercase;
}

.network-banner-overlay h2{

    color:#fff;

    font-size:4rem;

    font-weight:900;

    max-width:900px;

    margin-bottom:20px;
}

.network-banner-overlay p{

    color:#d8e0ea;

    font-size:1.15rem;

    line-height:1.9;

    max-width:750px;

    margin:0;
}
/* ======================================
   FOOTER
====================================== */

.footer-v2{

    background:
        linear-gradient(
            180deg,
            #02101f,
            #010c18
        );

    padding:
        90px
        0
        30px;

    margin-top:0;
}

.footer-brand img{

    height:60px;

    width:auto;

    margin-bottom:20px;
}

.footer-brand h3{

    color:#fff;

    font-weight:800;

    margin-bottom:15px;
}

.footer-brand p{

    color:#aebccc;

    line-height:1.8;

    max-width:450px;
}

.footer-v2 h5{

    color:#fff;

    font-weight:700;

    margin-bottom:20px;
}

.footer-v2 ul{

    list-style:none;

    padding:0;

    margin:0;
}

.footer-v2 li{

    margin-bottom:12px;

    color:#aebccc;
}

.footer-v2 a{

    color:#aebccc;

    text-decoration:none;

    transition:.25s;
}

.footer-v2 a:hover{

    color:#4ea4ff;
}

.footer-bottom{

    margin-top:60px;

    padding-top:25px;

    border-top:
        1px solid rgba(255,255,255,.08);

    display:flex;

    justify-content:space-between;

    align-items:center;

    color:#8fa1b5;

    font-size:.95rem;
}

@media(max-width:768px){

    .footer-bottom{

        flex-direction:column;

        gap:10px;

        text-align:center;
    }
}
/* ======================================
   FLEET PAGE
====================================== */

.fleet-hero{

    position:relative;

    overflow:hidden;

    background-image:
        linear-gradient(
            90deg,
            rgba(2,16,31,.95) 0%,
            rgba(2,16,31,.75) 45%,
            rgba(7,39,75,.55) 100%
        ),
        url('../hero/hero-flyitaly.webp');

    background-size:cover;

    background-position:center;

    background-repeat:no-repeat;
}
.fleet-hero::before{

    content:'';

    position:absolute;

    inset:0;

    background:
        radial-gradient(
            circle at left center,
            rgba(78,164,255,.12),
            transparent 60%
        );

    pointer-events:none;
}
.fleet-hero .container-fluid{

    position:relative;

    z-index:2;
}

.fleet-hero h1{

    font-size:4.5rem;

    font-weight:900;

    margin-bottom:20px;
}

.fleet-hero p{

    max-width:700px;

    color:#d8e0ea;

    font-size:1.1rem;
}

.fleet-total{

    font-size:7rem;

    font-weight:900;

    color:#4ea4ff;
}

.fleet-total span{

    display:block;

    font-size:1.2rem;

    color:white;
}

.fleet-search{

    padding:
        70px
        0
        40px;
}

.fleet-search-input{

    width:100%;

    border:none;

    border-radius:20px;

    padding:24px;

    font-size:1.1rem;

    box-shadow:
        0 20px 60px rgba(0,0,0,.08);
}

.fleet-section{

    padding-bottom:120px;
}

.fleet-card-v2{

    background:#eef2f6;

    border-radius:24px;

    padding:35px;

    height:100%;

    transition:.25s;

    border:
        1px solid rgba(0,0,0,.04);
}

.fleet-card-v2:hover{

    transform:
        translateY(-8px);

    box-shadow:
        0 20px 50px rgba(0,0,0,.08);
}

.fleet-code{

    color:#4ea4ff;

    font-size:.95rem;

    font-weight:800;

    letter-spacing:1px;

    margin-bottom:12px;
}

.fleet-card-v2 h3{

    font-size:1.45rem;

    font-weight:800;

    margin-bottom:25px;
}

.fleet-meta{

    display:flex;

    justify-content:space-between;

    gap:15px;

    color:#5f6c7b;

    font-weight:600;
}

/* ===================================================
   STATS
=================================================== */

.stats-container{

    position:absolute;

    left:0;
    right:0;

    bottom:-30px;

    z-index:20;

    padding:0 80px;
}
.stats-v2{

    display:grid;

    grid-template-columns:
        repeat(4,1fr);

    background:
        linear-gradient(
            90deg,
            #03142d,
            #072245
        );

    border-radius:24px;

    overflow:hidden;

    box-shadow:
        0 20px 60px rgba(0,0,0,.20);
}

.stat-item{

    padding:35px;

    display:flex;

    align-items:center;

    gap:20px;

    color:white;

    border-right:
        1px solid rgba(255,255,255,.08);
}

.stat-item:last-child{

    border-right:none;
}

.stat-icon{

    width:70px;
    height:70px;

    border-radius:50%;

    display:flex;

    align-items:center;
    justify-content:center;

    background:
        rgba(255,255,255,.08);
}

.stat-icon i{

    font-size:2rem;
}

.stat-item h3{

    margin:0;

    font-size:2.4rem;

    font-weight:900;
}

.stat-item span{

    color:#cfd7e3;
}
/* ======================================
   STAFF PAGE
====================================== */

.staff-hero{

    position:relative;

    overflow:hidden;

    background-image:
        linear-gradient(
            90deg,
            rgba(2,16,31,.95),
            rgba(2,16,31,.75)
        ),
        url('../hero/hero-flyitaly.webp');

    background-size:cover;

    background-position:center;
}

.staff-section{

    padding:
        100px
        0
        120px;
}

.staff-card-v2{

    background:#eef2f6;

    border-radius:24px;

    padding:35px;

    text-align:center;

    height:100%;

    transition:.25s;

    border:
        1px solid rgba(0,0,0,.04);
}

.staff-card-v2:hover{

    transform:
        translateY(-8px);

    box-shadow:
        0 20px 50px rgba(0,0,0,.08);
}

.staff-avatar{

    width:120px;
    height:120px;

    object-fit:cover;

    border-radius:50%;

    margin-bottom:25px;

    border:
        4px solid rgba(78,164,255,.20);
}

.staff-card-v2 h4{

    font-weight:800;

    margin-bottom:15px;

    color:#071a32;
}

.staff-role{

    display:inline-block;

    padding:
        10px
        18px;

    border-radius:999px;

    background:
        rgba(78,164,255,.12);

    color:#1e7bff;

    font-weight:700;
}

/* ======================================
   WHY SECTION
====================================== */

.why-v2{

    padding:120px 0;

    background:
        linear-gradient(
            180deg,
            #071a32 0%,
            #041427 100%
        );
}
.why-v2 .section-title h2{
    color:#fff;
}

.section-title{

    text-align:center;

    margin-bottom:70px;
}

.section-title h2{

    font-size:3.5rem;

    font-weight:900;

     color:white;

    margin:0;
}

.why-card{
    background:#f1f4f8;
    position:relative;
    border:1px solid rgba(255,255,255,.08);
    height:100%;

    padding:
        55px
        40px;

    border-radius:24px;

    text-align:center;

    overflow:hidden;

    transition:.35s;

    box-shadow:
        0 10px 30px rgba(0,0,0,.05);
}

.why-card::before{

    content:'';

    position:absolute;

    top:0;
    left:0;

    width:100%;

    height:4px;

    background:
        linear-gradient(
            90deg,
            #1e7bff,
            #4ea4ff
        );

    transform:scaleX(0);

    transition:.35s;
}

.why-card:hover{

    transform:
        translateY(-10px);

    box-shadow:
        0 20px 50px rgba(0,0,0,.10);
}

.why-card:hover::before{

    transform:scaleX(1);
}

.why-card i{

    font-size:3.5rem;

    color:#1e7bff;

    margin-bottom:25px;

    display:block;
}

.why-card h4{

    font-size:1.4rem;

    font-weight:800;

    color:#071a32;

    margin-bottom:18px;
}

.why-card p{

    color:#6c7a89;

    font-size:1rem;

    line-height:1.8;

    margin:0;
}



.section-title h2{

    font-size:3rem;

    font-weight:900;

    color:#071a32;
}


.why-card:hover{

    transform:
        translateY(-6px);
}

.why-card i{

    font-size:3rem;

    color:var(--primary);

    margin-bottom:20px;
}

.why-card h4{

    font-weight:800;

    margin-bottom:15px;
}

.why-card p{

    color:#666;

    line-height:1.8;
}


/* ======================================
   EXPLORE SECTION
====================================== */

.explore-v2{

    background:
        linear-gradient(
            180deg,
            #071a32 0%,
            #041427 100%
        );

    padding:
        120px
        0;
}

.light h2{

    color:white;
}

.explore-card{

    position:relative;

    display:block;

    height:360px;

    overflow:hidden;

    border-radius:26px;

    text-decoration:none;

    box-shadow:
        0 15px 40px rgba(0,0,0,.20);

    transition:.4s;
}

.explore-card img{

    width:100%;
    height:100%;

    object-fit:cover;

    transition:.6s;
}

.explore-card:hover{

    transform:
        translateY(-10px);
}

.explore-card:hover img{

    transform:
        scale(1.08);
}

.explore-content{

    position:absolute;

    left:0;
    right:0;
    bottom:0;

    padding:35px;

    background:
        linear-gradient(
            transparent,
            rgba(0,0,0,.92)
        );
}

.explore-content h3{

    color:white;

    font-size:1.8rem;

    font-weight:900;

    margin-bottom:10px;
}

.explore-content p{

    color:#d5dce6;

    margin:0;

    font-size:1rem;
}

.explore-content::after{

    content:'→';

    position:absolute;

    right:35px;

    bottom:32px;

    color:white;

    font-size:1.6rem;

    transition:.3s;
}

.explore-card:hover .explore-content::after{

    transform:
        translateX(8px);
}

.light h2{

    color:white;
}



.explore-card img{

    width:100%;
    height:100%;

    object-fit:cover;

    transition:.5s;
}

.explore-card:hover img{

    transform:scale(1.08);
}



.explore-content h3{

    color:white;

    font-weight:800;

    margin:0;
}

.explore-content p{

    color:white;

    opacity:.85;

    margin-top:5px;
}

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

.cta-v2{

    padding:
        100px
        0;
}

.cta-box{

    position:relative;

    overflow:hidden;

    display:flex;

    justify-content:space-between;

    align-items:center;

    gap:60px;

    min-height:220px;

    padding:
        60px
        80px;

    border-radius:28px;

    background-image:
        linear-gradient(
            90deg,
            rgba(2,16,31,.88) 0%,
            rgba(2,16,31,.65) 45%,
            rgba(7,39,75,.55) 100%
        ),
        url('../hero/hero-flyitaly.webp');

    background-size:cover;

    background-position:center;

    box-shadow:
        0 25px 70px rgba(0,0,0,.25);
}

.cta-box::before{

    content:'';

    position:absolute;

    inset:0;

    background:
        radial-gradient(
            circle at left center,
            rgba(78,164,255,.18),
            transparent 60%
        );

    pointer-events:none;
}

.cta-content,
.cta-actions{

    position:relative;

    z-index:2;
}

.cta-label{

    display:inline-block;

    margin-bottom:12px;

    color:#4ea4ff;

    font-size:.85rem;

    font-weight:700;

    letter-spacing:2px;

    text-transform:uppercase;
}

.cta-content h2{

    margin:0 0 15px;

    color:#fff;

    font-size:3rem;

    font-weight:900;

    line-height:1.1;
}

.cta-content p{

    margin:0;

    max-width:700px;

    color:rgba(255,255,255,.85);

    font-size:1.1rem;

    line-height:1.7;
}

.cta-actions{

    display:flex;

    gap:16px;

    flex-shrink:0;
}

.cta-actions .btn{

    min-width:180px;

    height:58px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:14px;

    font-weight:700;
}

.cta-actions .btn-primary{

    background:#4ea4ff;

    border:none;
}

.cta-actions .btn-outline-light{

    border:
        1px solid rgba(255,255,255,.35);
}

/* ======================
   ULTRAWIDE
====================== */

@media (min-width:1800px){

    .cta-content h2{

        font-size:3.5rem;
    }

    .cta-box{

        min-height:240px;
    }
}

/* ======================
   TABLET
====================== */

@media (max-width:991px){

    .cta-box{

        flex-direction:column;

        text-align:center;

        padding:50px;
    }

    .cta-actions{

        width:100%;

        justify-content:center;
    }

    .cta-content h2{

        font-size:2.4rem;
    }
}

/* ======================
   MOBILE
====================== */

@media (max-width:576px){

    .cta-actions{

        flex-direction:column;
    }

    .cta-actions .btn{

        width:100%;
    }

    .cta-content h2{

        font-size:2rem;
    }
}
/* ======================================
   PILOTS PAGE
====================================== */

.pilots-hero{

    position:relative;

    overflow:hidden;

    background-image:
        linear-gradient(
            90deg,
            rgba(2,16,31,.95),
            rgba(2,16,31,.75)
        ),
        url('../hero/hero-flyitaly.webp');

    background-size:cover;

    background-position:center;
}

.pilots-section{

    padding-bottom:120px;
}

.pilot-card{

    background:#eef2f6;

    border-radius:24px;

    padding:30px;

    height:100%;

    transition:.25s;

    border:
        1px solid rgba(0,0,0,.04);
}

.pilot-card:hover{

    transform:
        translateY(-6px);

    box-shadow:
        0 20px 50px rgba(0,0,0,.08);
}

.pilot-callsign{

    color:#4ea4ff;

    font-size:.95rem;

    font-weight:800;

    margin-bottom:10px;
}

.pilot-card h4{

    font-weight:800;

    margin-bottom:20px;
}

.pilot-meta{

    color:#666;

    margin-bottom:15px;
}

.pilot-rank{

    display:flex;

    align-items:center;

    gap:12px;

    margin-bottom:15px;

    font-weight:700;

    color:#071a32;
}
.pilot-rank-image{

    height:38px;

    width:auto;

    object-fit:contain;
}

.pilot-status{

    display:inline-block;

    padding:
        8px
        14px;

    border-radius:999px;

    background:
        rgba(78,164,255,.12);

    color:#1e7bff;

    font-weight:700;

    font-size:.85rem;
}

/* ======================================
   NAVBAR
====================================== */
.navbar-logo{
    display:flex;
    align-items:center;
    gap:12px;
}

.navbar-logo img{
    height:40px;
    width:auto;
}

.navbar-logo span{
    color:#fff;
    font-weight:800;
    font-size:1.2rem;
}
.navbar-fly{

    position:absolute;
    top:0;
    left:0;
    right:0;

    z-index:1000;

    padding:20px 0;

    background:rgba(3,20,45,.35);

    backdrop-filter:blur(12px);
}

.navbar-fly .navbar-nav .nav-link{

    color:#fff !important;

    font-weight:800;
}

.navbar-fly .navbar-nav .nav-link:hover{

    color:#4ea4ff !important;
}


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

@media(max-width:1400px){

    .hero-title{

        font-size:7rem;
    }
}

@media(max-width:1200px){

    .stats-v2{

        grid-template-columns:
            repeat(2,1fr);
    }

    .hero-title{

        font-size:4rem;
    }
}

@media(max-width:992px){

   .hero-v2{
    min-height:720px;
    overflow:visible;
}

    .hero-container{

        padding:
            70px
            60px
            180px;
    }

    .hero-title{

        font-size:3.2rem;
    }

  .hero-video{
    max-width:700px;
    margin-left:auto;
}
    .cta-banner{

        flex-direction:column;

        text-align:center;
    }
}

@media(max-width:768px){

    .stats-v2{

        grid-template-columns:1fr;
    }

    .hero-buttons,
    .cta-actions,
    .hero-features{

        flex-direction:column;
    }

    .hero-title{

        font-size:2.5rem;
    }

    .hero-networks img{

        height:200px;
    }

.stats-container{

    position:absolute;

    left:0;
    right:0;

    bottom:-45px;

    z-index:20;

    padding:0 80px;
}

}
