/* ==========================================================
   NAVBAR RESPONSIVENESS – ALL DEVICES
========================================================== */

/* ----------------------------------------------------------
   LARGE SCREENS (≤1600px)
---------------------------------------------------------- */
@media (max-width: 1600px) {
    .header-bar {
        max-width: 1320px;
        margin-top: 15px;
    }
}

/* ----------------------------------------------------------
   LAPTOPS / SMALL DESKTOPS (≤1400px)
---------------------------------------------------------- */
@media (max-width: 1400px) {
    .header-bar {
        max-width: 1200px;
        padding: 14px 26px;
    }
}

/* ----------------------------------------------------------
   TABLETS / SMALL DESKTOPS (≤1200px)
---------------------------------------------------------- */
@media (max-width: 1200px) {
    .header-bar {
        max-width: 100%;
        margin: 0 20px;
    }

    .nav-menu {
        gap: 20px;
    }
}

/* ----------------------------------------------------------
   TABLETS (≤992px)
---------------------------------------------------------- */
@media (max-width: 992px) {

    .site-header {
        top: 10px;
    }

    .site-logo{
        max-height: 50px;
    }
    

    .header-bar {
        padding: 14px 20px;
        border-radius: 40px;
    }


    .nav-menu li a {
        font-size: 16px;
    }

    .nav-btn {
        width: 90%;
        text-align: center;
    }


}

/* ===============================
   MOBILE NAV FIX
=============================== */

/* =====================================
   MOBILE NAVIGATION – FIXED & PERFECT
===================================== */
@media (max-width: 991px) {

    /* Hamburger */
    .hamburger-menu {
        display: block;
        z-index: 10001;
        cursor: pointer;
    }

    /* Navigation wrapper */
    .site-navigation {
        position: relative;
        /* transform: translateY(-30%); */
    }

    /* FULLSCREEN MENU */
    .nav-menu {
        position: fixed;
        top: 0;
        left: 0;

        width: 100%;
        height: 100vh;

        background: #000;

        display: flex;
        flex-direction: column;
        align-items: center;

        /* 🔥 IMPORTANT FIX */
        justify-content: flex-start;

        padding-top: 120px;
        padding-bottom: 40px;

        gap: 24px;

        overflow-y: auto;
        -webkit-overflow-scrolling: touch;

        /* Hidden state */
        transform: translateY(-110%);
        transition: transform 0.4s ease;

        z-index: 10000;
    }

    /* SHOW MENU */
    .site-navigation.show .nav-menu {
        transform: translateY(0);
    }

    /* Menu items */
    .nav-menu li {
        list-style: none;
    }

    .nav-menu a {
        font-size: 20px;
        color: #fff;
        text-decoration: none;
        letter-spacing: 0.5px;
    }

    /* CTA button */
    .nav-menu .nav-btn {
        margin-top: 30px;
        padding: 14px 30px;
        background: #f5c518;
        color: #000;
        border-radius: 30px;
        font-size: 16px;
        font-weight: 600;
    }

    /* LOCK BACKGROUND SCROLL */
    body.menu-open {
        overflow: hidden;
        height: 100vh;
    }
}



/* =====================================
   DESKTOP RESET
===================================== */
@media (min-width: 992px) {
    .hamburger-menu {
        display: none;
    }

    .nav-menu {
        position: static;
        transform: none;
        flex-direction: row;
        background: transparent;
        gap: 30px;
    }
}



/* ----------------------------------------------------------
   MOBILE DEVICES (≤768px)
---------------------------------------------------------- */
@media (max-width: 768px) {

    .site-branding a {
        font-size: 24px;
    }

    .header-bar {
        margin: 0 10px;
        padding: 14px 18px;
    }

    .nav-menu {
        padding: 26px 0;
        gap: 16px;
    }
}

/* ----------------------------------------------------------
   SMALL PHONES (≤576px)
---------------------------------------------------------- */
@media (max-width: 576px) {

    .site-branding a {
        font-size: 22px;
    }

    .header-bar {
        padding: 2px 16px;
        border-radius: 34px;
    }

    .nav-menu li a {
        font-size: 15px;
    }

    .nav-btn {
        padding: 10px 18px;
        font-size: 14px;
    }
}

/* =====================================
   HERO SECTION – RESPONSIVE ONLY
===================================== */

/* ---------- Large Screens (≤1440px) ---------- */
@media (max-width: 1440px) {
    .hero-content {
        max-width: 1200px;
        width: 100%;
        min-height: 60vh;
        margin-top: 10px;
    }
}

/* ---------- Large Laptops (≤1200px) ---------- */
@media (max-width: 1200px) {
    .hero-content {
        min-height: 70vh;
        padding: 70px 50px;
        border-radius: 26px;
    }
}

/* ---------- Tablets Landscape (≤1024px) ---------- */
@media (max-width: 1024px) {
    .hero-section {
        padding: 0 20px;
    }

    .hero-content {
        min-height: 75vh;
        padding: 65px 40px;
        border-radius: 24px;
        background-position: center top;
    }
}

/* ---------- Tablets Portrait (≤768px) ---------- */
@media (max-width: 768px) {
    .hero-section {
        min-height: 100vh;
        padding: 0 15px;
    }

    .hero-content {
        min-height: 80vh;
        padding: 55px 30px;
        border-radius: 20px;
        background-position: center top;
    }

    .entry-footer {
        flex-direction: column;
        gap: 22px;
    }

    .entry-footer .btn {
        width: 100%;
        max-width: 300px;
    }
}

/* ---------- Mobile Devices (≤480px) ---------- */
@media (max-width: 480px) {

    .hero-section {
        min-height: 100vh;
        padding: 0 12px;
        margin-top: 28px;
    }

    .hero-content {
        min-height: 88vh; /* premium mobile height */
        padding: 40px 20px 55px;
        border-radius: 18px;

        display: flex;
        align-items: flex-end;
        justify-content: center;

        background-position: center top;
        background-size: cover;
        background-repeat: no-repeat;
    }

    .entry-footer {
        flex-direction: column;
        align-items: center;
        gap: 16px;
        width: 100%;
    }

    .entry-footer .btn {
        padding: 10px 26px;
        font-size: 13px;
        border-radius: 32px;
        min-width: 180px;
        color: #000;
        background: #fff;
    }
}

/* ---------- Small Mobile (≤360px) ---------- */
@media (max-width: 360px) {

    .hero-section {
        min-height: 100vh;
        padding: 0 10px;
        margin-top: 35px;
    }

    .hero-content {
        min-height: 92vh;
        padding: 36px 16px 52px;
        border-radius: 16px;

        display: flex;
        align-items: flex-end;
        justify-content: center;

        background-position: center top;
        background-size: cover;
    }

    .entry-footer {
        gap: 14px;
    }

    .entry-footer .btn {
        font-size: 12px;
        padding: 9px 22px;
        min-width: 170px;
        border-radius: 28px;
    }
}

/* Tablets */
@media (max-width: 1024px) {
    .hero-logo img {
        max-width: 560px;
        padding-top: 62px;
    }
}

/* Tablet Portrait */
@media (max-width: 768px) {
    .hero-logo {
        margin-bottom: 34px;
    }

    .hero-logo img {
        max-width: 460px;
        padding-top: 62px;
    }
}

/* Mobile */
@media (max-width: 480px) {
    .hero-logo {
        margin-bottom: 26px;
    }

    .hero-logo img {
        max-width: 340px;
        padding-top: 62px;
    }
}

/* Small Mobile */
@media (max-width: 360px) {
    .hero-logo {
        margin-bottom: 22px;
    }

    .hero-logo img {
        margin-top: 40px;
        max-width: 260px;
    }
}

/* =====================================
   MOBILE HERO IMAGE OVERRIDE
===================================== */

@media (max-width: 580px) {
    .hero-content {
        background-image: url("images/hero/mobile.jpg");
        background-position: center top;
        background-size: cover;
        background-repeat: no-repeat;
    }
}

/* @media (max-width: 360px) {
    .hero-content {
        background-image: url("images/hero/mobile.jpg");
        background-position: center top;
        background-size: cover;
    }
} */

/* ==========================================================
   ABOUT SECTION – PERFECT RESPONSIVE
========================================================== */
/* ===============================
   Ultra Wide Screens (1600px+)
=============================== */
@media (min-width: 1600px) {

    .about-section {
        padding-top: 6rem;
        padding-bottom: 6rem;
    }

    .about-image-wrap img {
        height: 480px;
    }

    .about-content p {
        font-size: 1.1rem;
        line-height: 1.9;
    }
}


/* ===============================
   Large Desktop (1400px–1599px)
=============================== */
@media (min-width: 1400px) and (max-width: 1599px) {

    .about-image-wrap img {
        height: 440px;
    }

    .about-content p {
        font-size: 1.05rem;
    }
}


/* ===============================
   Desktop / Laptop (1200px–1399px)
=============================== */
@media (max-width: 1399px) {

    .about-image-wrap img {
        height: 400px;
    }

    .about-content p {
        font-size: 1rem;
    }
}


/* ===============================
   Tablet Landscape (992px–1199px)
=============================== */
@media (max-width: 1199px) {

    .about-image-wrap img {
        height: 360px;
    }

    .about-content {
        padding-left: 5px;
    }

    .about-content p {
        font-size: 0.98rem;
        line-height: 1.75;
    }
}


/* ===============================
   Tablet (≤ 991px)
=============================== */
@media (max-width: 991px) {

    .about-section {
        padding-top: 4rem;
        padding-bottom: 4rem;
    }

    .about-image-wrap img {
        height: 320px;
        border-radius: 14px;
    }

    .about-content {
        padding-left: 0;
        padding-top: 10px;
    }

    .about-content p {
        font-size: 0.95rem;
        line-height: 1.75;
    }
}


/* ===============================
   Mobile (≤ 768px)
=============================== */
@media (max-width: 768px) {

    .about-section {
        margin-top: 10px;
    }

    .about-image-wrap img {
        height: auto;
        aspect-ratio: 4 / 5;
        border-radius: 14px;
    }

    .about-content {
        padding-top: 15px;
    }

    .about-content p {
        font-size: 0.93rem;
        line-height: 1.7;
    }
}


/* ===============================
   Small Mobile (≤ 480px)
=============================== */
@media (max-width: 480px) {

    .about-section {
        padding-top: 3rem;
        padding-bottom: 3rem;
    }

    .about-image-wrap img {
        aspect-ratio: 4 / 5;
        border-radius: 12px;
    }

    .about-content p {
        font-size: 0.9rem;
        line-height: 1.65;
    }
}


/* ===============================
   Extra Small Devices (≤ 360px)
=============================== */
@media (max-width: 360px) {

    .about-content p {
        font-size: 0.85rem;
        line-height: 1.6;
    }
}


/* ==================================================
   WHY THESE AWARDS MATTER – RESPONSIVE
================================================== */

/* ---------- Large Tablets & Small Laptops (≤1200px) ---------- */
@media (max-width: 1200px) {
    .awards-content .section-title {
        font-size: 38px;
    }

    .awards-image img {
        width: 85%;
    }
}

/* ---------- Tablets Landscape (≤1024px) ---------- */
@media (max-width: 1024px) {
    .awards-matter-section {
        padding: 45px 0;
    }

    .awards-image img {
        width: 90%;
        margin: 0 auto;
        display: block;
    }

    .awards-content .section-text {
        max-width: 100%;
    }
}

/* ---------- Tablets Portrait (≤768px) ---------- */
@media (max-width: 768px) {
    .awards-matter-section {
        padding: 40px 0;
    }

    .awards-image {
        text-align: center;
    }

    .awards-image img {
        width: 75%;
        margin-bottom: 25px;
    }

    .awards-content {
        text-align: center;
    }

    .awards-content .section-title {
        font-size: 32px;
    }

    .awards-content .section-text {
        margin: 0 auto;
        font-size: 15px;
        line-height: 1.7;
    }

    .impact-row {
        grid-template-columns: 1fr;
        gap: 20px;
        margin-top: 30px;
    }

    .impact-card {
        padding: 24px;
    }
}

/* ---------- Mobile Devices (≤480px) ---------- */
@media (max-width: 480px) {
    .awards-matter-section {
        padding: 35px 0;
    }

    .awards-image img {
        width: 100%;
        border-radius: 18px;
    }

    .awards-content .section-title {
        font-size: 28px;
        margin-bottom: 16px;
    }

    .awards-content .section-text {
        font-size: 14px;
        line-height: 1.6;
    }

    .impact-row {
        gap: 16px;
        margin-top: 25px;
    }

    .impact-card {
        padding: 20px 18px;
        border-radius: 16px;
    }

    .impact-card h6 {
        font-size: 15px;
    }

    .impact-card p {
        font-size: 13px;
        line-height: 1.5;
    }
}

/* ---------- Small Mobile (≤360px) ---------- */
@media (max-width: 360px) {
    .awards-content .section-title {
        font-size: 26px;
    }

    .impact-card {
        padding: 18px 16px;
    }
}



/* ===============================
   OBJECTIVES SECTION RESPONSIVE
================================ */

/* Tablets */
@media (max-width: 991px) {
    .objectives-plate {
        padding: 3rem 2rem;
    }

    .objective-card {
        max-width: 100%;
        height: 260px;
    }

    .image-card img {
        height: 100%;
    }
}

/* Mobile */
@media (max-width: 767px) {
    .objectives-section {
        padding: 3rem 1rem;
    }

    .objectives-plate {
        padding: 2rem 1.5rem;
    }

    .objective-card {
        height: 240px;
        border-radius: 22px;
    }

    .image-card img {
        /* border-radius: 22px; */
    }
}

/* Mobile */
@media (max-width: 576px) {

    .objectives-section .container{
        padding: 0;
    }

    .objectives-plate {
        padding: 2rem 1.5rem;
        width: 100%;
    }

}


/* Small Mobile */
@media (max-width: 480px) {
    .objective-card {
        height: 240px;
    }
}



/* ==========================================================
   RESPONSIVE – AWARD CATEGORIES SECTION
   Premium Responsive Optimization
========================================================== */


/* =======================
   LARGE DESKTOP (1400px+)
======================= */
@media (min-width: 1400px) {

    .award-categories-section {
        padding: 80px 10%;
    }

    .award-text-content h2 {
        font-size: 44px;
    }

    .award-text-content p {
        font-size: 18px;
        max-width: 90%;
    }

    .award-left img {
        max-width: 450px;
    }

    .thumb {
        width: 140px;
    }
}


/* =======================
   DESKTOP / LAPTOP
======================= */
@media (max-width: 1200px) {

    .award-categories-section {
        padding: 60px 6%;
    }

    .award-text-content h2 {
        font-size: 34px;
    }

    .award-text-content p {
        font-size: 16px;
    }

    .thumb {
        width: 115px;
    }
}


/* =======================
   TABLET (992px and below)
======================= */
@media (max-width: 992px) {

    .award-container {
        flex-direction: column;
        gap: 50px;
        align-items: center;
        text-align: center;
    }

    .award-left {
        justify-content: center;
    }

    .award-left img {
        max-width: 380px;
    }

    .award-text-content h2 {
        font-size: 30px;
    }

    .award-text-content p {
        font-size: 16px;
    }

    .subcategories {
        font-size: 18px;
    }

    .thumbnail-section {
        padding: 10px 0;
    }

    .thumb {
        width: 105px;
    }
}


/* =======================
   LARGE MOBILE (768px)
======================= */
@media (max-width: 768px) {

    .award-categories-section {
        padding: 50px 5%;
    }

    .award-text-content h2 {
        font-size: 26px;
    }

    .award-text-content p {
        font-size: 15px;
    }

    .subcategories {
        font-size: 16px;
    }

    .subcategories li {
        margin-bottom: 10px;
    }

    .award-left img {
        max-width: 320px;
        border-radius: 18px;
    }

    .thumbnail-slider {
        gap: 14px;
    }

    .thumb {
        width: 95px;
    }

    .slider-arrows button {
        padding: 6px 12px;
        font-size: 14px;
    }
}


/* =======================
   SMALL MOBILE (576px)
======================= */
@media (max-width: 576px) {

    .award-container {
        gap: 35px;
    }

    .award-text-content h2 {
        font-size: 22px;
        line-height: 1.3;
    }

    .award-text-content p {
        font-size: 14px;
    }

    .subcategories {
        font-size: 15px;
    }

    .award-left img {
        max-width: 260px;
        aspect-ratio: 3 / 4;
    }

    .thumb {
        width: 85px;
        border-radius: 12px;
    }

    .slider-arrows {
        margin-top: 15px;
    }
}


/* =======================
   EXTRA SMALL DEVICES (400px and below)
======================= */
@media (max-width: 400px) {

    .award-text-content h2 {
        font-size: 20px;
    }

    .award-text-content p {
        font-size: 13px;
    }

    .subcategories {
        font-size: 14px;
    }

    .award-left img {
        max-width: 220px;
    }

    .thumb {
        width: 75px;
    }

    .slider-arrows button {
        padding: 5px 10px;
        font-size: 12px;
    }
}




/* ==========================================================
   PROGRAM STRUCTURE – RESPONSIVE
========================================================== */

/* -------- Large Screens -------- */
@media (max-width: 1400px) {
    .program-cards {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* -------- Laptops / Tablets -------- */
@media (max-width: 991px) {
    .program-structure-section {
        padding: 80px 0;
    }

    .program-structure-plate {
        padding: 55px 40px;
    }

    .program-structure-section .section-header h2 {
        font-size: 2.2rem;
    }
}

/* -------- Tablets -------- */
@media (max-width: 768px) {
    .program-cards {
        grid-template-columns: 1fr;
    }

    .program-structure-plate {
        padding: 45px 30px;
    }

    .program-card {
        padding: 32px 24px;
    }

    .program-card h3 {
        font-size: 1.3rem;
    }
}

/* -------- Mobile -------- */
@media (max-width: 480px) {
    .program-structure-section {
        padding: 60px 0;
    }

    .program-structure-plate {
        padding: 36px 22px;
        border-radius: 22px;
    }

    .program-structure-section .section-header h2 {
        font-size: 1.8rem;
    }

    .program-card p {
        font-size: 0.9rem;
    }
}

/* ----------------LINEUP ARTIST----------------------- */

@media (min-width: 1400px) {
    .lineup-artists-description-container {
        max-width: 760px;
    }

}

@media (max-width: 991px) {

    /* Stack layout */
    .lineup-artists-wrap {
        flex-direction: column !important;
        align-items: center;
        gap: 40px;
        margin-bottom: 100px;
    }

    /* Image full width */
    .lineup-artists-wrap .featured-image,
    .lineup-artists-description {
        width: 100%;
    }

    .lineup-artists-wrap .featured-image img {
        width: 100%;
        height: auto;
    }

    /* Card overlaps image slightly */
    .lineup-artists-description {
        margin-top: -70px !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .lineup-artists-description-container {
        max-width: 92%;
        margin: auto;
        padding: 40px;
    }

    /* Plus icon */
    .box-link {
        top: -18px;
        right: 14px;
        left: auto;
    }

    /* Headings */
    .lineup-artists-headline h2,
    .the-complete-lineup h2 {
        font-size: 38px;
    }
}

@media (max-width: 767px) {

    .content-section {
        padding: 20px 0;
    }

    .lineup-artists-wrap {
        gap: 30px;
        margin-bottom: 90px;
    }

    /* Remove heavy overlap */
    .lineup-artists-description {
        margin-top: -50px !important;
    }

    .lineup-artists-description-container {
        padding: 32px;
        max-width: 95%;
    }

    /* Text scaling */
    .lineup-artists-description .entry-title {
        font-size: 22px;
    }

    .lineup-artists-description .entry-content {
        font-size: 14.5px;
        line-height: 1.7;
    }

    /* Section headings */
    .lineup-artists-headline h2,
    .the-complete-lineup h2 {
        font-size: 30px;
    }

    /* Complete lineup grid */
    .artist-single {
        margin-bottom: 10px;
    }

    .artist-single img {
        max-width: 220px;
    }

    .artist-single h2 {
        font-size: 18px;
    }
}

@media (max-width: 480px) {

    .lineup-artists-headline {
        padding: 0px 0;
    }

    .lineup-artists-headline h2,
    .the-complete-lineup h2 {
        font-size: 18px;
    }

    .lineup-artists-description-container {
        padding: 26px;
    }

    .lineup-artists-description .entry-title {
        font-size: 20px;
    }

    .lineup-artists-description .entry-content {
        font-size: 14px;
    }

    .artist-single img {
        max-width: 190px;
    }
}
/* =========================================
   LINEUP ARTISTS – TEXT RESPONSIVE ONLY
   (NO layout changes)
========================================= */


/* ===============================
   Ultra Wide Screens (1600px+)
=============================== */
@media (min-width: 1600px) {

    .lineup-artists-headline .entry-title h2 {
        font-size: 48px;
    }

    .lineup-artists-description .entry-title {
        font-size: 30px;
    }

    .lineup-artists-description .entry-content p {
        font-size: 16px;
        line-height: 1.9;
    }
}


/* ===============================
   Large Desktop (1400px–1599px)
=============================== */
@media (min-width: 1400px) and (max-width: 1599px) {

    .lineup-artists-headline .entry-title h2 {
        font-size: 44px;
    }

    .lineup-artists-description .entry-title {
        font-size: 28px;
    }

    .lineup-artists-description .entry-content p {
        font-size: 15.5px;
    }
}


/* ===============================
   Desktop / Laptop (1200px–1399px)
=============================== */
@media (max-width: 1399px) {

    .lineup-artists-headline .entry-title h2 {
        font-size: 40px;
    }

    .lineup-artists-description .entry-title {
        font-size: 26px;
    }

    .lineup-artists-description .entry-content p {
        font-size: 15px;
    }
}


/* ===============================
   Tablet (≤ 991px)
=============================== */
@media (max-width: 991px) {

    .lineup-artists-headline .entry-title h2 {
        font-size: 34px;
        margin-bottom: 60px;
    }

    .lineup-artists .entry-title p {
        font-size: 12px;
        letter-spacing: 1.5px;
    }

    .lineup-artists-description .entry-title {
        font-size: 23px;
    }

    .lineup-artists-description .entry-content p {
        font-size: 14.5px;
        line-height: 1.75;
    }
}


/* ===============================
   Mobile (≤ 768px)
=============================== */
@media (max-width: 768px) {

    .lineup-artists-headline .entry-title h2 {
        font-size: 28px;
        margin-bottom: 50px;
    }

    .lineup-artists-description .entry-title {
        font-size: 21px;
    }

    .lineup-artists-description .entry-content p {
        font-size: 14px;
        line-height: 1.7;
    }
}


/* ===============================
   Small Mobile (≤ 480px)
=============================== */
@media (max-width: 480px) {

    .lineup-artists-headline .entry-title h2 {
        font-size: 22px;
        margin-bottom: 40px;
    }

    .lineup-artists .entry-title p {
        font-size: 11px;
    }

    .lineup-artists-description .entry-title {
        font-size: 19px;
    }

    .lineup-artists-description .entry-content p {
        font-size: 13.5px;
        line-height: 1.65;
    }
}


/* ==================================================
   NOMINATION COMMITTEE – RESPONSIVE
================================================== */

/* ---------- Large Tablets & Small Laptops (≤1200px) ---------- */
@media (max-width: 1200px) {
    .committee-section {
        padding: 60px 0;
    }
}

/* ---------- Tablets Landscape (≤1024px) ---------- */
@media (max-width: 1024px) {
    .committee-card-new {
        height: 100%;
    }

    .committee-section .section-title {
        font-size: 34px;
    }
}

/* ---------- Tablets Portrait (≤768px) ---------- */
@media (max-width: 768px) {
    .committee-section {
        padding: 50px 0;
    }

    .committee-section .section-header {
        margin-bottom: 40px;
    }

    .committee-section .section-title {
        font-size: 30px;
    }

    .committee-card-new {
        max-width: 380px;
        margin: 0 auto;
    }

    .committee-card-new .card-image img {
        width: 100%;
        height: auto;
        border-radius: 18px;
    }

    .committee-card-new .card-content {
        text-align: center;
    }

    .committee-card-new .card-footer {
        text-align: center;
    }
}

/* ---------- Mobile Devices (≤480px) ---------- */
@media (max-width: 480px) {
    .committee-section {
        padding: 10px 0;
    }

    .committee-section .section-title {
        font-size: 26px;
    }

    .committee-card-new {
        padding: 0;
        border-radius: 18px;
    }

    .committee-card-new .card-content h5 {
        font-size: 16px;
    }

    .committee-card-new .card-content p {
        font-size: 13px;
        line-height: 1.5;
    }

    .committee-card-new .card-footer span {
        font-size: 12px;
    }
}

/* ---------- Small Mobile (≤360px) ---------- */
@media (max-width: 360px) {
    .committee-section .section-title {
        font-size: 24px;
    }
}



/* youtube */

/* Responsive */
@media (max-width: 768px) {
    .video-section .section-title {
        font-size: 25px;
        margin-bottom: 10px;
    }

    .video-frame {
        border-radius: 16px;
        position: relative;
    width: 100%;
    max-width: 400px;
    aspect-ratio: 16 / 9;
    padding: 0px;
    }
}


/* ================================
  eligibility section
================================ */
/* ==========================================================
   RESPONSIVE – ELIGIBILITY SECTION
   Premium Device Optimization
========================================================== */


/* =======================
   LARGE DESKTOP (1400px+)
======================= */
@media (min-width: 1400px) {


    .section-title {
        font-size: 44px;
    }

    .eligibility-text {
        font-size: 18px;
        line-height: 1.9;
    }

    .eligibility-list li {
        font-size: 17px;
        margin-bottom: 14px;
    }

    .eligibility-image img {
        max-width: 100%;
    }
}


/* =======================
   DESKTOP / LAPTOP
======================= */
@media (max-width: 1200px) {

    .section-title {
        font-size: 34px;
    }

    .eligibility-text {
        font-size: 16px;
    }

    .eligibility-list li {
        font-size: 15px;
    }

    .eligibility-image img {
        max-width: 95%;
    }
}


/* =======================
   TABLET (992px and below)
======================= */
@media (max-width: 992px) {



    .eligibility-content {
        text-align: center;
        max-width: 100%;
    }

    .section-title {
        font-size: 30px;
    }

    .eligibility-text {
        font-size: 15px;
    }

    .eligibility-list {
        margin-top: 15px;
    }

    .eligibility-list li {
        font-size: 15px;
        display: block;
        text-align: left;
        max-width: 500px;
        margin: 0 auto 12px;
    }

    .eligibility-image {
        margin-top: 20px;
    }

    .eligibility-image img {
        max-width: 75%;
    }
}


/* =======================
   LARGE MOBILE (768px)
======================= */
@media (max-width: 768px) {

    .eligibility-section {
        padding: 50px 5%;
    }

    .section-tag {
        font-size: 12px;
        letter-spacing: 1.5px;
    }

    .section-title {
        font-size: 26px;
    }

    .eligibility-text {
        font-size: 14px;
        line-height: 1.7;
    }

    .eligibility-list li {
        font-size: 14px;
        margin-bottom: 10px;
    }

    .eligibility-image img {
        max-width: 85%;
        margin: 10px auto;
    }
}


/* =======================
   SMALL MOBILE (576px)
======================= */
@media (max-width: 576px) {

    .section-title {
        font-size: 22px;
    }

    .eligibility-text {
        font-size: 13px;
    }

    .eligibility-list li {
        font-size: 13px;
    }

    .eligibility-image img {
        max-width: 95%;
        border-radius: 16px;
    }

    .awards-btn {
        padding: 8px 18px;
        font-size: 14px;
    }
}


/* =======================
   EXTRA SMALL DEVICES (400px and below)
======================= */
@media (max-width: 400px) {

    .section-title {
        font-size: 20px;
    }

    .eligibility-text {
        font-size: 12px;
    }

    .eligibility-list li {
        font-size: 12px;
    }

    .eligibility-image img {
        max-width: 100%;
    }

    .awards-btn {
        width: 100%;
        font-size: 13px;
        padding: 10px;
    }
}


/* ==========================================================
   SHAKTI HERO – FULL RESPONSIVE CONTROL
   Always Horizontal 16:9 – All Devices
========================================================== */


/* ==================================================
   GLOBAL CONTROL (ALL DEVICES)
================================================== */

.shakti-hero-content {
    width: 100%;
    max-width: 1400px;
    margin: auto;
    aspect-ratio: 16 / 9;   /* Always horizontal */
    height: auto;
}


/* ==================================================
   ULTRA WIDE SCREENS (1600px+)
================================================== */
@media (min-width: 1600px) {

    .shakti-hero-content {
        max-width: 1600px;
    }

    .shakti-hero-inner {
        padding: 60px;
    }
}


/* ==================================================
   LARGE DESKTOP (1400px – 1599px)
================================================== */
@media (min-width: 1400px) and (max-width: 1599px) {

    .shakti-hero-content {
        max-width: 1400px;
    }

    .shakti-hero-inner {
        padding: 50px;
    }
}


/* ==================================================
   DESKTOP / LAPTOP (992px+)
================================================== */
@media (min-width: 992px) {

    .shakti-hero-inner {
        padding: 40px;
    }

    .shakti-mini-title {
        font-size: 14px;
    }
}


/* ==================================================
   TABLET (≤ 991px)
================================================== */
@media (max-width: 991px) {

    .shakti-hero-section {
        padding: 25px 15px 60px;
    }

    .shakti-hero-content {
        aspect-ratio: 16 / 9 !important;
        height: auto !important;
    }

    .shakti-hero-inner {
        padding: 30px 20px;
    }

    .shakti-mini-title {
        font-size: 13px;
    }

    .shakti-main-title {
        font-size: clamp(30px, 7vw, 55px);
    }
}


/* ==================================================
   LARGE MOBILE (≤ 768px)
================================================== */
@media (max-width: 768px) {

    .shakti-hero-section {
        padding: 20px 15px 50px;
    }

    .shakti-hero-inner {
        padding: 25px 18px;
    }

    .shakti-main-title {
        font-size: clamp(28px, 8vw, 45px);
    }

    .shakti-btn-primary {
        padding: 12px 26px;
        font-size: 14px;
    }
}


/* ==================================================
   MOBILE (≤ 576px)
================================================== */
@media (max-width: 576px) {

    .shakti-hero-section {
        padding: 15px 10px 15px;
    }

    .shakti-hero-content {
        border-radius: 20px;
    }

    .shakti-hero-inner {
        padding: 20px 15px;
    }

    .shakti-mini-title {
        font-size: 12px;
        letter-spacing: 1.5px;
    }

    .shakti-main-title {
        font-size: clamp(24px, 8vw, 40px);
    }

    .shakti-btn-primary {
        width: auto;
        padding: 10px 22px;
        font-size: 13px;
    }
}


/* ==================================================
   SMALL MOBILE (≤ 400px)
================================================== */
@media (max-width: 400px) {

    .shakti-main-title {
        font-size: 22px;
    }

    .shakti-btn-primary {
        padding: 9px 20px;
        font-size: 12px;
    }
}

/* ==========================================================
   SHAKTI INTRODUCTION SECTION – RESPONSIVE
========================================================== */

/* ---------- Base Improvements (All Devices) ---------- */



.shakti-intro-section .container {
    max-width: 1100px;
    margin: auto;
}

.shakti-section-header h2 {
    font-size: 40px;
    font-weight: 700;
    margin-bottom: 30px;
}

.shakti-intro-section p {
    font-size: 18px;
    line-height: 1.8;
    margin-bottom: 22px;
    color: #444;
}


/* ==================================================
   Large Desktop (1400px+)
================================================== */
@media (min-width: 1400px) {

    

    .shakti-section-header h2 {
        font-size: 44px;
    }

    .shakti-intro-section p {
        font-size: 19px;
    }
}


/* ==================================================
   Desktop / Laptop (992px – 1399px)
================================================== */
@media (max-width: 1399px) {

    .shakti-section-header h2 {
        font-size: 38px;
    }
}


/* ==================================================
   Tablet (≤ 991px)
================================================== */
@media (max-width: 991px) {

    .shakti-intro-section {
        padding: 70px 20px;
    }

    .shakti-section-header h2 {
        font-size: 32px;
        text-align: center;
    }

    .shakti-intro-section p {
        font-size: 16px;
        line-height: 1.7;
        text-align: center;
    }
}


/* ==================================================
   Mobile (≤ 768px)
================================================== */
@media (max-width: 768px) {

    .shakti-intro-section {
        padding: 60px 15px;
    }

    .shakti-section-header h2 {
        font-size: 28px;
    }

    .shakti-intro-section p {
        font-size: 15px;
        margin-bottom: 18px;
    }
}


/* ==================================================
   Small Mobile (≤ 480px)
================================================== */
@media (max-width: 480px) {

    .shakti-intro-section {
        padding: 10px 12px;
    }

    .shakti-section-header h2 {
        /* font-size: 24px; */
        margin-bottom: 10px;
    }

    .shakti-intro-section p {
        font-size: 14px;
        line-height: 1.6;
    }
}
/* ==========================================================
   SHAKTI FINAL CTA – RESPONSIVE
========================================================== */

/* ---------- Base Styling (All Devices) ---------- */

.shakti-final-cta {
    padding: 90px 0;
    text-align: center;
}

.shakti-final-cta .container {
    max-width: 900px;
    margin: auto;
}

.shakti-final-cta h2 {
    font-size: 42px;
    font-weight: 700;
    margin-bottom: 20px;
}

.shakti-final-cta p {
    font-size: 18px;
    margin-bottom: 35px;
    line-height: 1.7;
    color: #ffffff;
}

.shakti-final-cta .shakti-btn-primary.large {
    padding: 16px 36px;
    font-size: 16px;
}


/* ==================================================
   Ultra Wide Screens (1600px+)
================================================== */
@media (min-width: 1600px) {

    .shakti-final-cta {
        padding: 110px 0;
    }

    .shakti-final-cta h2 {
        font-size: 48px;
    }

    .shakti-final-cta p {
        font-size: 19px;
    }
}


/* ==================================================
   Desktop / Laptop (992px – 1399px)
================================================== */
@media (max-width: 1399px) {

    .shakti-final-cta h2 {
        font-size: 38px;
    }
}


/* ==================================================
   Tablet (≤ 991px)
================================================== */
@media (max-width: 991px) {

    .shakti-final-cta {
        padding: 70px 20px;
    }

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

    .shakti-final-cta p {
        font-size: 16px;
        margin-bottom: 30px;
    }

    .shakti-final-cta .shakti-btn-primary.large {
        padding: 14px 30px;
        font-size: 15px;
    }
}


/* ==================================================
   Mobile (≤ 768px)
================================================== */
@media (max-width: 768px) {

    .shakti-final-cta {
        padding: 60px 15px;
    }

    .shakti-final-cta h2 {
        font-size: 28px;
    }

    .shakti-final-cta p {
        font-size: 15px;
        margin-bottom: 25px;
    }

    .shakti-final-cta .shakti-btn-primary.large {
        padding: 13px 26px;
        font-size: 14px;
    }
}


/* ==================================================
   Small Mobile (≤ 480px)
================================================== */
@media (max-width: 480px) {

    .shakti-final-cta {
        padding: 50px 12px;
    }

    .shakti-final-cta h2 {
        font-size: 24px;
    }

    .shakti-final-cta p {
        font-size: 14px;
        line-height: 1.6;
    }

    .shakti-final-cta .shakti-btn-primary.large {
        padding: 12px 22px;
        font-size: 13px;
    }
}


/* ------------------PAratners-------------------- */

/* RESPONSIVE */
@media (max-width: 991px) {
    .logo-strip-track {
        gap: 20px;
    }

    .logo-item img {
        max-height: 70px;
        
    }
}

@media (max-width: 575px) {
    .logo-strip-section {
        padding: 20px 0;
    }

    .logo-strip-section .section-title {
        font-size: 30px;
    }

    .logo-item img {
        max-height: 72px;
    }
}


/* ==========================================
   EVENT FRAMEWORK – PERFECT RESPONSIVE
========================================== */


/* ===============================
   1600px+ Ultra Wide Screens
=============================== */
@media (min-width: 1600px) {

    .event-framework {
        padding: 6rem 3rem;
    }

    .framework-plate {
        padding: 5rem 5rem;
    }

    .framework-header h2 {
        font-size: 56px;
    }

    .framework-header p {
        font-size: 18px;
    }

    .framework-card {
        height: 400px;
    }
}


/* ===============================
   Large Desktop (1400px–1599px)
=============================== */
@media (min-width: 1400px) and (max-width: 1599px) {

    .framework-card {
        height: 380px;
    }

    .framework-header h2 {
        font-size: 50px;
    }
}


/* ===============================
   Desktop / Laptop (1200px–1399px)
=============================== */
@media (max-width: 1399px) {

    .framework-plate {
        padding: 4rem 3rem;
    }

    .framework-header h2 {
        font-size: 44px;
    }

    .framework-card {
        height: 340px;
    }
}


/* ===============================
   Tablet Landscape (992px–1199px)
=============================== */
@media (max-width: 1199px) {

    .framework-card {
        height: 320px;
    }

    .framework-header h2 {
        font-size: 40px;
    }
}


/* ===============================
   Tablet (≤ 991px)
=============================== */
@media (max-width: 991px) {

    .event-framework {
        padding: 4rem 1.5rem;
        min-height: auto;
    }

    .framework-plate {
        padding: 3rem 2.5rem;
        border-radius: 26px;
    }

    .framework-header {
        margin-bottom: 45px;
    }

    .framework-header h2 {
        font-size: 34px;
    }

    .framework-header p {
        font-size: 16px;
    }

    .framework-card {
        height: 280px;
    }

    .framework-overlay p {
        font-size: 15px;
    }
}


/* ===============================
   Mobile (≤ 768px)
=============================== */
@media (max-width: 768px) {

    .event-framework {
        padding: 3rem 1rem;
    }

    .framework-plate {
        padding: 2.5rem 1.5rem;
        border-radius: 22px;
    }

    .framework-header h2 {
        font-size: 28px;
    }

    .framework-header p {
        font-size: 15px;
    }

    .framework-grid {
        gap: 18px;
    }

    .framework-card {
        height: 240px;
        border-radius: 18px;
    }

    .framework-overlay {
        padding: 1.5rem;
    }

    .framework-overlay p {
        font-size: 14.5px;
        line-height: 1.6;
    }
}


/* ===============================
   Small Mobile (≤ 480px)
=============================== */
@media (max-width: 480px) {

    .framework-plate {
        padding: 2rem 1.2rem;
        border-radius: 20px;
    }

    .framework-header {
        margin-bottom: 35px;
    }

    .framework-header h2 {
        font-size: 24px;
    }

    .framework-header p {
        font-size: 14px;
    }

    .framework-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .framework-card {
        height: 220px;
        border-radius: 16px;
    }

    .framework-overlay p {
        font-size: 14px;
        line-height: 1.55;
    }
}


/* ===============================
   Extra Small Devices (≤ 360px)
=============================== */
@media (max-width: 360px) {

    .framework-header h2 {
        font-size: 22px;
    }

    .framework-header p {
        font-size: 13px;
    }

    .framework-card {
        height: 200px;
    }

    .framework-overlay p {
        font-size: 13px;
    }
}


/* ======================================
   FOOTER RESPONSIVE CSS
   ====================================== */

/* ---------- Large laptops & small desktops (≤1200px) ---------- */
@media (max-width: 1200px) {

    .floating-footer {
        margin: 80px 24px 32px;
    }

    .footer-inner {
        padding: 50px 40px;
    }

    .footer-inner .row {
        gap: 32px;
    }

    .footer-brand img {
        max-width: 180px;
    }

    .additional-logo img {
        max-width: 150px;
    }
}

/* ---------- Tablets & small laptops (≤992px) ---------- */
@media (max-width: 992px) {

    .floating-footer {
        margin: 70px 20px 30px;
    }

    .footer-inner {
        padding: 45px 32px;
    }

    .footer-inner .row {
        gap: 30px;
    }

    .footer-brand,
    .footer-links,
    .footer-location {
        flex: 0 0 48%;
    }

    .footer-links ul li {
        margin-bottom: 10px;
    }

    .additional-logo img {
        max-width: 140px;
    }
}

/* ---------- Small tablets & large phones (≤768px) ---------- */
@media (max-width: 768px) {

    .floating-footer {
        margin: 60px 16px 24px;
        border-radius: 20px;
    }

    .footer-inner {
        padding: 40px 24px;
    }

    .footer-inner .row {
        flex-direction: column;
        gap: 28px;
    }

    .footer-brand,
    .footer-links,
    .footer-location {
        width: 100%;
    }

    .footer-brand img {
        max-width: 160px;
    }

    .footer-social {
        margin-bottom: 16px;
    }

    .footer-social a {
        margin-right: 10px;
    }

    .additional-logo img {
        max-width: 130px;
    }

    .footer-links ul li a {
        font-size: 15px;
    }

    .footer-links .btn {
        width: 100%;
        margin-top: 12px;
        text-align: center;
    }

    .footer-bottom {
        margin-top: 32px;
        text-align: center;
    }
}

/* ---------- Mobile devices (≤576px) ---------- */
@media (max-width: 576px) {

    .floating-footer {
        margin: 50px 12px 20px;
        border-radius: 16px;
    }

    .footer-inner {
        padding: 32px 20px;
    }

    .footer-brand p,
    .footer-location p {
        font-size: 14px;
        line-height: 1.6;
    }

    .footer-social a {
        width: 36px;
        height: 36px;
        font-size: 14px;
        margin-right: 8px;
    }

    .additional-logo img {
        max-width: 110px;
    }

    .footer-links h4 {
        margin-bottom: 12px;
    }

    .footer-links ul li {
        margin-bottom: 8px;
    }

    .footer-links ul li a {
        font-size: 14px;
    }

    .contact-info {
        font-size: 14px;
    }

    .footer-bottom {
        font-size: 12px;
        margin-top: 28px;
        line-height: 1.4;
    }
}

/* ---------- Extra small phones (≤400px) ---------- */
@media (max-width: 400px) {

    .footer-inner {
        padding: 28px 16px;
    }

    .footer-brand img {
        max-width: 140px;
    }

    .additional-logo img {
        max-width: 100px;
    }

    .footer-social a {
        width: 34px;
        height: 34px;
        font-size: 13px;
    }

    .footer-links .btn {
        padding: 12px 20px;
        font-size: 14px;
    }
}


/* responsive for new 4 sections */
@media (max-width: 768px) {
    .section-title {
        font-size: 30px;
    }

    .eligibility-plate,
    .impact-plate {
        padding: 20px 30px;
    }

    .highlight-card {
        height: 120px;
        font-size: 16px;
        margin-bottom: 20px;
    }

    .impact-item {
        font-size: 28px;
        margin-bottom: 20px;
    }
}

/* ==========================================================
   NOMINATION PROCESS – FULL RESPONSIVE CONTROL
   (Style Preserved – Layout Optimized)
========================================================== */


/* ==================================================
   ULTRA WIDE SCREENS (1600px+)
================================================== */
@media (min-width: 1600px) {

    #nomination .container {
        max-width: 1500px;
    }

    #nomination .process-flow {
        flex-wrap: nowrap;
        justify-content: space-between;
        gap: 60px;
    }

    #nomination .process-step {
        flex: 1;
        max-width: 280px;
        padding: 32px 25px;
    }

    #nomination .process-step h5 {
        font-size: 22px;
    }

    #nomination .process-step p {
        font-size: 16px;
    }
}


/* ==================================================
   LARGE DESKTOP (1400px – 1599px)
================================================== */
@media (min-width: 1400px) and (max-width: 1599px) {

    #nomination .container {
        max-width: 1300px;
    }

    #nomination .process-flow {
        flex-wrap: nowrap;
        justify-content: space-between;
        gap: 40px;
    }

    #nomination .process-step {
        flex: 1;
        max-width: 250px;
        padding: 26px 20px;
    }

    #nomination .process-step h5 {
        font-size: 20px;
    }

    #nomination .process-step p {
        font-size: 15px;
    }
}


/* ==================================================
   ALL DESKTOP (≥ 992px)
   FORCE SINGLE ROW
================================================== */
@media (min-width: 992px) {

    #nomination .process-flow {
        flex-wrap: nowrap;              /* Prevent wrapping */
        justify-content: space-between;
        align-items: center;
        gap: 30px;
    }

    #nomination .process-step {
        flex: 1;
        max-width: 230px;
        min-width: auto;
    }

    #nomination .process-arrow {
        flex: 0 0 auto;
    }
}


/* ==================================================
   TABLET (≤ 991px)
================================================== */
@media (max-width: 991px) {

    #nomination .process-flow {
        flex-wrap: wrap;
        justify-content: center;
        gap: 24px;
    }

    #nomination .process-step {
        min-width: 180px;
        padding: 22px 16px;
    }

    #nomination .process-step h5 {
        font-size: 17px;
    }

    #nomination .process-step p {
        font-size: 14px;
    }
}


/* ==================================================
   LARGE MOBILE (≤ 768px)
================================================== */
@media (max-width: 768px) {


    #nomination .process-flow {
        gap: 18px;
    }

    #nomination .process-step {
        min-width: 160px;
        padding: 20px 14px;
    }

    #nomination .process-step h5 {
        font-size: 16px;
    }

    #nomination .process-step p {
        font-size: 13px;
    }

    #nomination .process-arrow i {
        font-size: 18px;
    }
}


/* ==================================================
   MOBILE (≤ 576px)
   VERTICAL FLOW
================================================== */
@media (max-width: 576px) {

    #nomination .process-flow {
        flex-direction: column;
        align-items: center;
        gap: 20px;
    }

    /* Hide horizontal arrows */
    #nomination .process-arrow {
        display: none;
    }

    #nomination .process-step {
        width: 100%;
        max-width: 320px;
    }

    /* Add vertical arrow */
    #nomination .process-step:not(:last-child)::after {
        content: "\f063";
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        display: block;
        text-align: center;
        font-size: 20px;
        color: #f5c518;
        margin: 16px auto 0;
    }
}


/* ==================================================
   SMALL MOBILE (≤ 400px)
================================================== */
@media (max-width: 400px) {

    #nomination .process-step {
        max-width: 280px;
        padding: 18px 12px;
    }

    #nomination .process-step h5 {
        font-size: 15px;
    }

    #nomination .process-step p {
        font-size: 12px;
    }

    #nomination .process-step i {
        width: 45px;
        height: 45px;
        font-size: 22px;
    }
}



/* -----------------------------
   RESPONSIVE
------------------------------ */
@media (max-width: 991px) {
    .impact-section .section-title {
        font-size: 38px;
    }

    .impact-section .impact-item {
        padding: 35px 15px;
        font-size: 36px;
    }
}

@media (max-width: 767px) {
    .impact-section .section-title {
        font-size: 32px;
    }

    .impact-section .impact-item {
        font-size: 28px;
        padding: 25px 10px;
    }
}

@media (max-width: 480px) {
    .impact-section .section-title {
        font-size: 26px;
    }

    .impact-section .impact-item {
        font-size: 24px;
        padding: 20px 10px;
    }
}

/* ================= NEWS SECTION RESPONSIVE ================= */

@media (max-width: 1024px) {
    .news-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 24px;
    }
}

@media (max-width: 768px) {
    .news-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }

    .news-card-body {
        padding: 20px 18px 22px;
    }

    .news-title {
        font-size: 16px;
    }

    .news-card-image {
        height: 180px;
    }
}

@media (max-width: 560px) {
    .news-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .news-card-image {
        height: 200px;
    }

    .news-subtitle {
        font-size: 15px;
    }
}