/* =========================================================
   RISHAL MUSIC TRUST - SITE-WIDE RESPONSIVE FIXES
   Loaded last on every page so it can tighten tablet/mobile
   spacing consistently without touching desktop layouts.
========================================================= */


/* =========================================================
   TABLET (701px - 1100px)
========================================================= */

@media (max-width: 1100px) {

    /* Large fixed side paddings left too little room on tablets */

    .contact-info-section {
        padding: 50px 0;
    }

    .contact-form-section {
        padding: 0 0 50px;
    }

    .training-legacy-section {
        padding-left: 30px;
        padding-right: 30px;
    }

}


@media (max-width: 900px) {

    .contact-info-container {
        grid-template-columns: 1fr;
    }

    .contact-info-card {
        min-height: 0;
    }

}


/* =========================================================
   MOBILE (<= 767px)
========================================================= */

@media (max-width: 767px) {

    /* -----------------------------------------------------
       PAGE HERO BANNERS - shorter on phones
    ----------------------------------------------------- */

    .about-page-hero,
    .mission-page-hero,
    .vision-page-hero,
    .contact-page-hero,
    .awards-page-hero,
    .past-page-hero,
    .press-page-hero,
    .blog-page-hero,
    .photo-page-hero,
    .video-page-hero,
    .upcoming-page-hero,
    .chairman-page-hero,
    .trainings-page-hero {
        height: 190px;
        min-height: 190px;
    }

    .about-hero-content,
    .mission-hero-content,
    .vision-hero-content,
    .contact-hero-content,
    .awards-hero-content,
    .past-hero-content,
    .press-hero-content,
    .blog-hero-content,
    .photo-hero-content,
    .video-hero-content,
    .upcoming-hero-content,
    .chairman-hero-content,
    .trainings-hero-content {
        padding-top: 0;
    }

    .about-hero-content h1,
    .mission-hero-content h1,
    .vision-hero-content h1,
    .contact-hero-content h1,
    .awards-hero-content h1,
    .past-hero-content h1,
    .press-hero-content h1,
    .blog-hero-content h1,
    .photo-hero-content h1,
    .video-hero-content h1,
    .upcoming-hero-content h1,
    .chairman-hero-content h1,
    .trainings-hero-content h1 {
        margin-bottom: 12px;
        font-size: clamp(20px, 6vw, 26px);
        line-height: 1.3;
    }


    /* -----------------------------------------------------
       CONTENT SECTIONS - consistent vertical rhythm
    ----------------------------------------------------- */

    .trust-about-section,
    .main-attributes-section,
    .trust-team-section,
    .mission-section,
    .vision-section,
    .donate-section {
        padding-top: 32px;
        padding-bottom: 32px;
    }

    .contact-info-section {
        padding: 28px 0 20px;
    }

    .contact-form-section {
        padding: 0 0 32px;
    }

    .rmt-gallery-section {
        padding-top: 20px;
        padding-bottom: 24px;
    }

    .rmt-video-gallery {
        padding-top: 20px;
        padding-bottom: 24px;
    }


    /* About page - team list */

    .trust-team-intro {
        margin-bottom: 24px;
    }

    .trust-team-member {
        margin-bottom: 22px;
    }

    .trust-team-member:last-child,
    .mission-points li:last-child {
        margin-bottom: 0;
    }

    .mission-container,
    .vision-container {
        gap: 20px;
    }


    /* Contact cards: no forced empty height */

    .contact-info-card {
        min-height: 0;
    }

    .contact-info-container {
        gap: 14px;
    }

    .contact-form-container {
        gap: 24px;
    }

    .contact-map {
        height: 300px;
    }


    /* Team profile pages: stacked sections read as one grid */

    .rmt-profile-section {
        padding-top: 12px;
        padding-bottom: 0;
    }

    .rmt-profile-section:first-of-type {
        padding-top: 22px;
    }

    .rmt-profile-section:last-of-type {
        padding-bottom: 30px;
    }


    /* Trainings page */

    .training-legacy-section {
        padding: 20px 0 24px;
    }

    .rajesh-prasanna-section,
    .rishab-prasanna-section,
    .ritesh-prasanna-section,
    .shakthidhar-section,
    .vinod-prasanna-section,
    .mohan-krishan-section,
    .samyak-parashari-section,
    .arvind-upadhye-section,
    .srinibas-satapathy-section,
    .avijit-chakraborty-section {
        padding-top: 14px;
        padding-bottom: 14px;
    }


    /* Blog article pages */

    .blog-comment-section {
        margin-top: 24px;
    }


    /* -----------------------------------------------------
       GENERAL OVERFLOW GUARDS
    ----------------------------------------------------- */

    table {
        display: block;
        max-width: 100%;
        overflow-x: auto;
    }

    pre {
        max-width: 100%;
        overflow-x: auto;
    }

    h1,
    h2,
    h3 {
        overflow-wrap: break-word;
    }

}


/* =========================================================
   SMALL MOBILE (<= 450px)
========================================================= */

@media (max-width: 450px) {

    .about-page-hero,
    .mission-page-hero,
    .vision-page-hero,
    .contact-page-hero,
    .awards-page-hero,
    .past-page-hero,
    .press-page-hero,
    .blog-page-hero,
    .photo-page-hero,
    .video-page-hero,
    .upcoming-page-hero,
    .chairman-page-hero,
    .trainings-page-hero {
        height: 170px;
        min-height: 170px;
    }

    .trust-about-section,
    .main-attributes-section,
    .trust-team-section,
    .mission-section,
    .vision-section,
    .donate-section {
        padding-top: 28px;
        padding-bottom: 28px;
    }

}
