@media (min-width : 1500px) {

    .register-button-wrapper {
        position: absolute;
        bottom: 200px;
        left: 50%;
        transform: translateX(-50%);
        z-index: 30;
    }

}

@media (min-width : 1300px) and (max-width: 1500px) {

    .register-button-wrapper {
        position: absolute;
        bottom: 200px;
        left: 50%;
        transform: translateX(-50%);
        z-index: 30;
    }

}

@media (min-width : 1200px) and (max-width: 1300px) {


    /* Hero Banner Section */
    .hero-banner {
        height: 100vh;
        background-size: cover;
    }

    /* Decorative Leaves */
    .left-leaf {
        width: 170px;
    }

    .right-leaf {
        width: 170px;
    }

    .pillar-left {
        bottom: 0;
    }


    /* festival section */

    .session-card {
        max-width: 280px !important;
        min-width: 296px !important;
        padding: 120px 50px 30px;

    }


    .keynote-banner {
        padding: 20px 50px;
    }


    .decorative-border-top {
        top: -20%;
    }

    .writer-img {
        width: 240px;
    }

    .center-illustration {
        top: -23%;
    }


    .decorative-arrow {
        top: 73%;
    }


}

@media (min-width: 992px) and (max-width: 1199px) {

    /* Hero Banner Section */
    /* Hero Banner Section */
    .hero-banner {
        height: 95vh;
        background-size: cover;
    }

    /* Decorative Leaves */
    .left-leaf {
        width: 140px;
    }

    .right-leaf {
        width: 140px;
    }

    .banner-bottom-wave {
        bottom: -15px;
    }

    .about-description {
        line-height: 1.3;
    }

    .parul-heading {
        font-size: 48px;
    }

    .parul-description {
        line-height: 1.5;
        font-size: 19px;

        width: 80%;
        margin: auto;
    }

    .pillar-left {
        top: 0;
    }

    .pillar-right {
        top: 0;
    }

    .iimun-heading {
        font-size: 37px;
    }

    .iimun-description {
        font-size: 19px;
        line-height: 1.5;
    }

    .session-card {
        min-width: 300px;
        max-width: 360px;
    }

    .decorative-border-top {
        top: -13%;
    }

    .writer-img {
        width: 230px;
    }

    .center-illustration {
        top: -16%;
    }

    .keynote-banner {
        padding: 20px 10px;
    }


    .rope-decoration {
        right: -32%;
        width: 184px;
    }

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


    .decorative-arrow {
        top: 83%;
        right: 95px;
    }


    .arrow-img {
        width: 120px;
    }

    .testimonial-illustration img {
        max-width: 315px;
    }

    .testimonials-section-image {
        argin-top: -47%;
    }

}

@media (min-width: 768px) and (max-width: 991px) {

    /* Hero Banner Section */
    .hero-banner {
        background-image: url("../images/hero-banner-tab.svg");
        height: 100vh;
        background-size: cover;
    }

    /* Decorative Leaves */
    .left-leaf {
        width: 120px;
    }

    .right-leaf {
        width: 120px;
    }

    .banner-bottom-wave {
        bottom: -10px;
    }

    .custom-gap {
        gap: 40px;
    }

    .about-content {
        padding-left: 0;
    }

    .flower-1 {
        top: -13px;
        right: 22%;
        width: 38px;
    }

    .flower-2 {
        top: 54px;
        right: 11%;
        width: 55px;
    }

    .parul-heading {
        font-size: 45px;
    }

    .parul-description {

        line-height: 1.5;
        margin: auto;
        margin-bottom: 25px;
        width: 75%;
        font-size: 18px;
    }

    .pillar {
        width: 77px;
    }

    .about-parul {
        padding: 20px 0 0 0;
    }

    .quote-left {

        left: 3%;
        width: 90px;

    }

    .quote-right {

        right: 3%;
        width: 90px;

    }

    .iimun-heading {
        font-size: 35px;
    }

    .iimun-description {
        font-size: 19px;
        line-height: 1.5;
    }


    .top-right-book {
        width: 318px;
    }

    .top-left-uncle {
        top: 13px;
        left: 5%;
        width: 252px;
    }


    .festival-sessions .full-width-container {
        max-width: 100%;
        width: 100%;
    }

    .sessions-slider-wrapper {
        padding: 0 20px;
    }

    .decorative-border-top {
        top: -12%;
    }

    .writer-img {
        width: 245px;
    }

    .center-illustration {
        top: -26%;
    }

    .rope-decoration {
        right: -32%;
        width: 178px;
    }


    .speaker-photo {
        width: 222px;

    }

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

    .speaker-name {
        font-size: 22px;
    }

    .film-icon {
        margin-bottom: 65px;
    }


    .testimonials-section-image {
        margin-top: -65%;
        height: 50vh;
    }

    .decorative-arrow {
        top: 45%;
        right: 25px;

    }

    .footer-row-gap {
        gap: 45px;
    }

}

@media (min-width: 576px) and (max-width: 767px) {

    /* Hero Banner Section */
    .hero-banner {
        background-image: url("../images/hero-banner-tab.svg");
        height: 100vh;
        background-size: cover;
    }

    /* Decorative Leaves */
    .left-leaf {
        width: 100px;
    }

    .right-leaf {
        width: 100px;
    }


    .banner-bottom-wave {
        bottom: -10px;
    }

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

    .custom-gap {
        gap: 45px;
    }

    .divider-line {
        max-width: 315px;
    }



    .pillar-left {
        top: 48%;
    }

    .pillar-right {
        top: 48%;
    }

    .pillar {
        width: 70px;
    }

    .parul-heading {
        font-size: 40px;
    }

    .parul-description {
        font-size: 17px;
        line-height: 1.5;

    }

    .flower-1 {
        top: -31px;
        right: 7%;
        width: 40px;

    }

    .flower-2 {
        top: 80px;
        right: 11%;
        width: 44px;
    }

    .quote-left {
        position: absolute;
        top: 78px;
        left: 7%;
        width: 45px;
        height: auto;
        z-index: 2;
    }

    .quote-right {
        position: absolute;
        top: 78px;
        right: 7%;
        width: 45px;
        height: auto;
        z-index: 2;
    }

    .iimun-heading {
        font-size: 25px;
    }


    .top-left-uncle {
        width: 235px;
    }

    .top-right-book {
        top: 22px;
        right: 0%;
        width: 250px;
    }


    .decorative-border-top {
        top: -4%;
    }

    .center-illustration {
        top: -10%;
    }

    .rope-decoration {
        right: -17%;
        top: 50%;
        width: 100px;
    }

    .speakers-grid {
        grid-template-columns: repeat(1, 1fr);
    }

    .food-stall-section {
        margin-top: -21px;
    }



    .footer-row-gap {
        gap: 80px;
    }

    .testimonials-section-image {
        margin-top: -100%;
    }

}

@media (min-width: 375px) and (max-width: 575px) {

    /* Hero Banner Section */
    .hero-banner {
        background-image: url("../images/hero-banner-tab.svg");
        height: 60vh;
        background-color: #fff5f9;
    }

    /* Decorative Leaves */
    .left-leaf {
        width: 80px;
        display: none;
    }

    .right-leaf {
        width: 80px;
        display: none;
    }

    .navbar-brand img {
        height: 35px;
    }

    .banner-bottom-wave {
        bottom: -5px;

    }

    .about-content {
        padding-left: 0;
    }

    .custom-gap {
        gap: 35px;
    }

    .about-description {
        font-family: 'figtree', sans-serif;
        font-size: 17px;
        font-weight: 400;
        line-height: 1.5;
        color: #333;
        margin-bottom: 20px;
    }

    .divider-line {
        width: 100%;
        max-width: 200px;
        height: auto;
    }

    .parul-heading {
        font-size: 33px;
    }

    .pillar-left {
        display: none;
    }

    .pillar-right {
        display: none;
    }

    .about-parul-content {
        padding: 20px;
    }

    .parul-description {
        font-size: 17px;
    }

    .flower-1 {
        position: absolute;
        top: -31px;
        right: 22%;
        width: 36px;
        height: auto;
        z-index: 2;
    }

    .speaker-name {

        font-size: 24px;

    }


    .flower-2 {
        position: absolute;
        top: 17px;
        right: 11%;
        width: 45px;
        height: auto;
        z-index: 2;
    }

    .parul-building img {
        width: 100%;
    }


    .about-iimun {
        padding: 80px 0 0 0;
    }

    .iimun-heading {
        font-size: 25px;
    }

    .iimun-content {
        padding: 60px 10px 150px;
    }

    .iimun-description {
        font-size: 16px;
    }


    .quote-left {
        position: absolute;
        top: 37px;
        left: 13%;
        width: 50px;
        height: auto;
        z-index: 2;
    }


    .quote-right {
        position: absolute;
        top: 163px;
        right: 3%;
        width: 52px;
        height: auto;
        z-index: 2;
    }

    .top-right-book {
        position: absolute;
        top: -20px;
        right: 0%;
        width: 245px;
        height: auto;
        z-index: 15;
    }

    .top-left-uncle {
        position: absolute;
        top: 121px;
        left: 4%;
        width: 155px;
        height: auto;
    }

    .slider-btn {
        width: 20px;
        height: 20px;
    }

    .sessions-slider-wrapper {
        gap: 15px;
    }


    .decorative-border-top {

        top: -3%;

    }


    .keynote-banner {
        padding: 20px 25px;
    }


    .center-illustration {
        text-align: center;
        position: absolute;
        top: -13%;
        left: 55%;
        transform: translateX(-50%);
        z-index: 3;
    }


    .rope-decoration {
        display: none;
    }

    .speakers-section {
        padding: 0 20px 0;

    }

    .speakers-grid {
        display: grid;
        grid-template-columns: repeat(1, 1fr);
        gap: 60px 40px;
        max-width: 100%;
        margin: 0 auto;
        padding: 250px 0 0 0;
    }

    .testimonials-section-image {
        background: #fffde6;
        position: relative;
        width: 100%;
        background: none;
        padding: 0;
        margin-top: -110%;
        z-index: 2;
    }

    .testimonial-title {
        font-size: 35px;
    }

    .testimonial-content {
        padding: 40px 20px 40px;
    }

    .testimonials-section {
        padding: 80px 0 540px 0;
    }

    .arrow-img {
        width: 44px;
        height: auto;
    }

    .footer-row-gap {
        gap: 100px;
    }

    .partner-logos {
        display: flex;
        flex-direction: column;
        gap: 30px;
        align-items: center;
        margin-top: 50px;
    }

    .vlf-logo {
        width: 280px;
        height: auto;
        margin: auto;
        display: flex;
    }

    .social-icons {
        display: flex;
        gap: 15px;
        margin-bottom: 40px;
        justify-content: center;
    }

    .navbar-collapse {
        padding-block: 1.5rem;
    }

    .food-stall-container {

        display: none;
    }

    .food-stall-section {

        margin-top: -22px;
    }

    .testimonials-section {
        padding: 80px 0 450px 0;
    }

    .decorative-arrow {
        position: absolute;
        top: 67%;
        right: 50px;
        z-index: 2;
    }

    .festival-highlights-section {
        background-color: #5878cf;
        padding: 25px 0 80px 0;
        position: relative;
    }

    .footer-row-gap {
        gap: 50px;
    }

    .writer-img {
        width: 225px;
        height: auto;
        margin-top: 0;
    }

    .center-illustration {
        top: -12%
    }

    .session-card {
        min-width: 300px;
        max-width: 300px;
        border-radius: 30px;
        padding: 113px 34px 12px;
        transition: transform 0.3s ease;
        flex-shrink: 0;
        text-align: center;
    }

}

@media (max-width: 374px) {
    .navbar-brand img {
        height: 32px;
    }

    .navbar-collapse {
        flex-grow: 1;
        flex-basis: 100%;
        align-items: center;
        padding-block: 1.7rem;
    }


    /* Hero Banner Section */
    .hero-banner {
        background-image: url("../images/hero-banner-phone.svg");
        height: 62vh;

    }

    /* Decorative Leaves */
    .left-leaf {
        width: 60px;
    }

    .right-leaf {
        width: 60px;
    }

    .banner-bottom-wave {
        bottom: -7px;
    }

    .about-content {
        padding-left: 0;
    }

    .about-description {
        font-family: 'figtree', sans-serif;
        font-size: 17px;
        font-weight: 400;
        line-height: 1.8;
        color: #333;
        margin-bottom: 20px;
    }

    .about-title {
        font-family: 'Playfair-extrabold', serif;
        font-size: 36px;
        line-height: 1.2;
        margin-bottom: 30px;
    }

    .divider-line {
        width: 100%;
        max-width: 200px;
        height: auto;
    }

    .flower-1,
    .flower-2 {

        display: none;
    }

    .pillar-left,
    .pillar-right {
        display: none;
    }

    .parul-heading {
        font-family: 'Playfair-extrabold', serif;
        font-size: 33px;
        font-weight: 700;
        line-height: 1.2;
        margin-bottom: 40px;
    }

    .about-parul-content {
        max-width: 1000px;
        margin: 0 auto;
        padding: 20px 10px;
        position: relative;
        z-index: 3;
    }

    .parul-description {
        font-family: 'Figtree', sans-serif;
        font-size: 16px;
        font-weight: 400;
        line-height: 1.9;
        color: #333;
        margin-bottom: 25px;
        text-align: center;
    }

    .parul-building img {
        width: 100%;
        max-width: 100%;
        height: auto;
        display: block;
        margin: 0 auto;
    }


    .iimun-content {
        max-width: 1200px;
        margin: 0 auto;
        padding: 60px 10px 150px 10px;
        position: relative;
        z-index: 3;
    }

    .speaker-name {

        font-size: 24px;

    }

    .quote-left {
        position: absolute;
        top: 29px;
        left: 13%;
        width: 51px;
        height: auto;
        z-index: 2;
    }

    .quote-right {
        position: absolute;
        top: 140px;
        right: 9%;
        width: 58px;
        height: auto;
        z-index: 2;
    }

    .iimun-heading {
        font-size: 22px;

    }

    .iimun-description {
        font-family: 'Figtree', sans-serif;
        font-size: 17px;
        font-weight: 400;
        line-height: 1.5;
        color: #333;
        margin-bottom: 25px;
        text-align: center;
    }


    .top-left-uncle {
        display: none;
    }


    .slider-btn {
        width: 20px;
        height: 20px;
    }

    .sessions-slider-wrapper {
        gap: 15px;
    }


    .session-card {
        min-width: 280px;
        max-width: 277px;
        border-radius: 30px;
        padding: 113px 34px 12px;
        transition: transform 0.3s ease;
        flex-shrink: 0;
        text-align: center;
    }

    .rope-decoration {
        display: none;
    }

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


    .speakers-grid {
        grid-template-columns: repeat(1, 1fr);
        padding: 250px 0 0 0;
    }

    .keynote-text {
        font-size: 30px;
    }


    .decorative-border-top {

        top: -3%;

    }

    .keynote-header {
        margin-top: 2rem;
    }

    .writer-img {
        width: 200px;

    }

    .center-illustration {

        top: -6%;

    }

    .flower-left-sessions {
        bottom: 200px;
        width: 133px;

    }

    .flower-right-sessions {
        bottom: 200px;
        width: 133px;

    }

    .testimonial-content {
        padding: 25px;
    }

    .testimonial-title {
        font-size: 35px;

    }

    .arrow-img {
        width: 83px;
        height: auto;
    }

    .decorative-arrow {
        top: 79%;

    }

    .food-stall-section {

        margin-top: -23px;
    }

    .testimonials-section {
        padding: 80px 0 350px 0;

    }

    .food-stall-image {
        width: 168px;

        animation: moveStall 7s linear infinite;
    }

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

    .partner-logos {
        display: flex;
        flex-direction: column;
        gap: 30px;
        align-items: center;
        margin-top: 50px;
    }

    .vlf-logo {
        width: 280px;
        height: auto;
        margin: auto;
        display: flex;
    }

    .social-icons {
        display: flex;
        gap: 15px;
        margin-bottom: 40px;
        justify-content: center;
    }

    .food-stall-container {
        max-width: 100%;
        margin: 0 auto;
        padding: 0 40px;
        position: relative;
        display: none;
    }

}



/* registration button */

.register-button-wrapper {
    position: absolute;
    bottom: 200px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 30;
    width: 100%;
    max-width: 600px;
    padding: 0 20px;
    display: flex;
    justify-content: center;
}

.register-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 15px;

    /* Width Control */
    width: auto;
    min-width: 320px;
    max-width: 100%;

    /* Button Styling */
    background: linear-gradient(135deg, #FF4081 0%, #FF6B9D 100%);
    border: 4px solid #FFD700;
    border-radius: 50px;
    padding: 18px 40px;

    /* Text */
    text-decoration: none;
    font-family: 'Poppins', sans-serif;
    font-size: 28px;
    font-weight: 700;
    color: #FFFFFF;
    text-transform: capitalize;
    letter-spacing: 0.5px;

    /* Effects */
    box-shadow: 0 8px 25px rgba(255, 64, 129, 0.4),
        inset 0 -3px 10px rgba(0, 0, 0, 0.1);
    cursor: pointer;
    transition: all 0.3s ease;
    position: relative;
    overflow: visible;
}

/* Button Text Container */
.button-text {
    position: relative;
    z-index: 2;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
    display: inline-block;
}

/* Desktop Text - Show by default */
.desktop-text {
    display: inline;
}

/* Mobile Text - Hidden by default */
.mobile-text {
    display: none;
    text-align: center;
    line-height: 1.4;
}

/* Button Hover Effects */
.register-button:hover {
    transform: translateY(-3px) scale(1.05);
    box-shadow: 0 12px 35px rgba(255, 64, 129, 0.5),
        inset 0 -3px 10px rgba(0, 0, 0, 0.15);
    background: linear-gradient(135deg, #FF6B9D 0%, #FF4081 100%);
}

.register-button:active {
    transform: translateY(-1px) scale(1.02);
    box-shadow: 0 5px 15px rgba(255, 64, 129, 0.4);
}

/* Button Flowers */
.button-flower {
    width: 35px;
    height: 35px;
    flex-shrink: 0;
    position: relative;
    z-index: 3;
    animation: rotateFlower 3s ease-in-out infinite;
}

.button-flower-left {
    animation-delay: 0s;
}

.button-flower-right {
    animation-delay: 1.5s;
}

/* Flower Rotation Animation */
@keyframes rotateFlower {

    0%,
    100% {
        transform: rotate(0deg) scale(1);
    }

    50% {
        transform: rotate(15deg) scale(1.1);
    }
}

/* Button Pulse Animation */
@keyframes buttonPulse {

    0%,
    100% {
        box-shadow: 0 8px 25px rgba(255, 64, 129, 0.4);
    }

    50% {
        box-shadow: 0 8px 35px rgba(255, 64, 129, 0.6);
    }
}

.register-button {
    animation: buttonPulse 2s ease-in-out infinite;
}

/* ============================================
   RESPONSIVE DESIGN - MERGED & FIXED
   ============================================ */

@media (max-width: 992px) {
    .register-button-wrapper {
        bottom: 150px;
        max-width: 500px;
    }

    .register-button {
        font-size: 24px;
        padding: 16px 40px;
        gap: 12px;
        min-width: 280px;
    }

    .button-flower {
        width: 30px;
        height: 30px;
    }

    .left-leaf,
    .right-leaf {
        width: 120px;
    }
}

@media (max-width: 768px) {
    .register-button-wrapper {
        bottom: 120px;
        max-width: 100%;
        padding: 0 15px;
    }

    .register-button {
        font-size: 20px;
        padding: 14px 35px;
        gap: 10px;
        border: 3px solid #FFD700;
        min-width: 260px;
    }

    .button-flower {
        width: 25px;
        height: 25px;
    }

    .left-leaf,
    .right-leaf {
        width: 100px;
    }
}

@media (max-width: 576px) {
    .register-button-wrapper {
        bottom: 100px;
        max-width: 100%;
    }

    .register-button {
        font-size: 18px;
        padding: 12px 30px;
        gap: 8px;
        min-width: 200px;
    }

    .button-flower {
        width: 22px;
        height: 22px;
    }
}

@media (max-width: 480px) {
    .register-button {
        font-size: 18px;
        padding: 12px 30px;
        gap: 8px;
        border: 2px solid #FFD700;
    }

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

    .left-leaf,
    .right-leaf {
        width: 80px;
    }

    .bottom-wave-svg {
        max-height: 80px;
    }
}

/* ============================================
   MOBILE STACKED TEXT (375px and below)
   ============================================ */



.mobile-button {
    display: none;
}

@media (max-width: 575px) {

    /* Hide button inside hero banner */
    .hero-banner .register-button-wrapper {
        display: none !important;
    }

    /* Show mobile button after navbar */
    .mobile-button {
        display: flex !important;
        position: relative !important;
        bottom: auto !important;
        left: auto !important;
        transform: none !important;
        margin: 0 auto !important;
        padding: 0 !important;
        background: #fffde6 !important;
        justify-content: center !important;
        width: 100% !important;
    }

    .mobile-button .register-button {
        width: 100% !important;
        /* ← ADD THIS */
        max-width: 100% !important;
        /* ← ADD THIS */
        min-width: auto !important;
        /* ← ADD THIS */

         border-radius: 0 !important;
    }
}

@media (max-width: 375px) {}

@media (max-width: 320px) {
    .mobile-button .register-button {
        max-width: 100% !important;
        padding: 12px 15px !important;
    }

    .mobile-button .mobile-text {
        font-size: 13px !important;
    }

    .mobile-button .button-flower {
        width: 18px !important;
        height: 18px !important;
    }
}