/* =============================================
   BVP Shivaji Shakha - Global Responsive CSS
   Applies to all Gatividhi-style pages
   ============================================= */

/* ----- NAVIGATION RESPONSIVE ----- */
@media (max-width: 991px) {
    .wpo-site-header .header-right {
        display: flex;
        justify-content: flex-end;
    }
}

/* ----- HERO BANNER RESPONSIVE ----- */
@media (max-width: 767px) {
    #page-banner {
        min-height: 280px !important;
        background-position: center center !important;
    }
    #page-banner .breadcumb-wrap {
        padding: 20px 15px !important;
    }
    #page-banner .breadcumb-wrap h2 {
        font-size: 1.6rem !important;
        margin-bottom: 10px !important;
    }
    #page-banner .breadcumb-wrap h3 {
        font-size: 0.9rem !important;
        letter-spacing: 1px !important;
    }
}

/* ----- INTRO SECTION RESPONSIVE ----- */
.community-intro-section {
    padding: 80px 0 60px !important;
}

@media (max-width: 991px) {
    .community-intro-section {
        padding: 60px 0 40px !important;
    }
    .intro-text {
        padding-right: 0 !important;
        margin-bottom: 30px !important;
    }
    .intro-text h2 {
        font-size: 1.6rem !important;
    }
    .intro-text p {
        font-size: 1rem !important;
    }
}

@media (max-width: 767px) {
    .community-intro-section {
        padding: 40px 0 30px !important;
    }
    .intro-text {
        padding-right: 0 !important;
        text-align: center !important;
    }
    .intro-text span {
        letter-spacing: 1px !important;
    }
    .intro-text h2 {
        font-size: 1.4rem !important;
    }
    .intro-text p {
        font-size: 0.98rem !important;
        text-align: justify !important;
    }
    .intro-video-wrap {
        margin-top: 10px !important;
        border-radius: 12px !important;
    }
}

/* ----- YOUTUBE VIDEO WRAPPER ----- */
.intro-video-wrap {
    position: relative;
    aspect-ratio: 16 / 9;
    width: 100%;
    overflow: hidden;
    border-radius: 20px;
}

.intro-video-wrap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
}

/* ----- GALLERY SLIDER SECTION RESPONSIVE ----- */
.infinite-gallery-section {
    padding: 50px 0 90px !important;
}

@media (max-width: 767px) {
    .infinite-gallery-section {
        padding: 30px 0 60px !important;
    }
    .infinite-gallery-section h2 {
        font-size: 1.6rem !important;
    }
    .infinite-gallery-section .section-title span {
        font-size: 12px !important;
        letter-spacing: 1px !important;
    }
    .custom-slider-wrapper {
        padding: 0 5px !important;
    }
    .img-box {
        height: 180px !important;
    }
    .activity-gallery-slider .owl-nav {
        left: -10px !important;
        right: -10px !important;
    }
    .activity-gallery-slider .owl-nav button.owl-prev,
    .activity-gallery-slider .owl-nav button.owl-next {
        width: 36px !important;
        height: 36px !important;
        font-size: 1rem !important;
    }
}

@media (max-width: 480px) {
    .img-box {
        height: 160px !important;
    }
}

/* ----- BUTTONS RESPONSIVE ----- */
@media (max-width: 767px) {
    .theme-btn {
        font-size: 14px !important;
        padding: 10px 20px !important;
    }
}

/* ----- FOOTER RESPONSIVE ----- */
@media (max-width: 767px) {
    .wpo-upper-footer .col {
        margin-bottom: 20px !important;
    }
    .wpo-lower-footer .row {
        flex-direction: column !important;
        text-align: center !important;
    }
    .wpo-lower-footer .links {
        justify-content: center !important;
    }
    .footer-bvp-logo {
        max-width: 180px !important;
    }
}

/* ----- GENERAL CONTAINER OVERFLOW FIX ----- */
@media (max-width: 575px) {
    .container {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }
    body {
        overflow-x: hidden !important;
    }
}

/* ----- COL SPACING FIX ON MOBILE ----- */
@media (max-width: 767px) {
    .mb-5 {
        margin-bottom: 1.5rem !important;
    }
    .mb-lg-0 {
        margin-bottom: 0 !important;
    }
    .row.align-items-center {
        gap: 0 !important;
    }
}
