﻿/* styles.css */
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700;800;900&display=swap');

:root {
    --primary-sky-blue: #0077BE;
    --secondary-yellow: #FFD700;
    --dark-sky-blue: #005A8D;
    --white: #ffffff;
    --text-dark: #1a1a1a;
    --light-gray: #f8f9fa;
    --border-color: #0077BE;
    --navbar-scrolled: hsla(202, 100%, 37%, 0.97);
    
    /* ===== MINIMAL SPACING SYSTEM FOR INDEX.PHP ===== */
    --section-padding: 20px;
    --section-margin: 15px;
    --content-padding: 10px;
    --element-margin: 8px;
    --small-margin: 5px;
    
    /* ===== UNIFIED TYPOGRAPHY SYSTEM - DESKTOP ===== */
    --body-text: 16px;
    --h1-size: 36px;
    --h2-size: 28px;
    --h3-size: 22px;
    --h4-size: 18px;
    --h5-size: 18px;
    --h6-size: 18px;
    --subheading-size: 18px;
    --nav-link-size: 16px;
    --small-text-size: 14px;
    --line-height: 1.5;
    
    /* ===== RESPONSIVE SPACING ===== */
  }
  
  @media (max-width: 768px) {
    :root {
      --section-padding: 15px;
      --section-margin: 12px;
      --content-padding: 8px;
      --element-margin: 6px;
      --small-margin: 4px;
      
      /* ===== UNIFIED TYPOGRAPHY SYSTEM - MOBILE ===== */
      --body-text: 14px;
      --h1-size: 28px;
      --h2-size: 22px;
      --h3-size: 18px;
      --h4-size: 16px;
      --h5-size: 16px;
      --h6-size: 16px;
      --subheading-size: 16px;
      --nav-link-size: 14px;
      --small-text-size: 12px;
      --line-height: 1.4;
    }
  }
  
  @media (max-width: 480px) {
    :root {
      --section-padding: 10px;
      --section-margin: 8px;
      --content-padding: 6px;
      --element-margin: 4px;
      --small-margin: 3px;
      
      /* Mobile typography remains the same as tablet */
    }
}

* { margin:0; padding:0; box-sizing:border-box; }

/* ===== UNIFIED TYPOGRAPHY SYSTEM ===== */
body { 
    font-family: 'Poppins', sans-serif; 
    background: var(--white); 
    color: var(--text-dark); 
    overflow-x: hidden !important; 
    font-size: var(--body-text);
    line-height: var(--line-height);
}

/* ===== ABSOLUTE UNIVERSAL HEADING ENFORCEMENT - CATCH ALL VARIATIONS ===== */

/* ALL H1 ELEMENTS - NO EXCEPTIONS */
h1, h1[class], h1[id], 
h1.title, h1.story-title, h1.section-title, h1.main-title,
h1.hero-title, h1.page-title, h1.heading, h1.header,
h1.dsufaq-title, h1.certtitle, h1.text-black,
h1.main-heading, h1.dsu-awards-title, h1.testimonials-title,
h1.dsu-faq__title, h1.coordinator-section-title,
h1.career-title, h1.faculty-title, h1.electives-heading,
h1.mba-hero-title, h1.why-title, h1.pls-heading,
h1.fees-main-heading, h1.po-title, h1.curriculum-main-title,
.h1, *[class*="h1"] { 
    font-size: var(--h1-size) !important; 
    font-weight: 800 !important; 
    line-height: 1.2 !important; 
}

/* ALL H2 ELEMENTS - NO EXCEPTIONS */
h2, h2[class], h2[id],
h2.title, h2.story-title, h2.section-title, h2.main-title,
h2.hero-title, h2.page-title, h2.heading, h2.header,
h2.dsufaq-title, h2.certtitle, h2.text-black,
h2.jp-section-title, h2.faculty-title, h2.career-title,
h2.why-title, h2.pls-heading, h2.fees-main-heading,
h2.po-title, h2.electives-heading, h2.dsu-faq__title,
h2.coordinator-section-title, h2.faculty-modal-name,
h2.name, h2.name-caption, h2.story-title,
.h2, *[class*="h2"] { 
    font-size: var(--h2-size) !important; 
    font-weight: 700 !important; 
    line-height: 1.3 !important; 
}

/* ALL H3 ELEMENTS - NO EXCEPTIONS */
h3, h3[class], h3[id],
h3.title, h3.story-title, h3.section-title, h3.main-title,
h3.hero-title, h3.page-title, h3.heading, h3.header,
h3.dsufaq-title, h3.certtitle, h3.text-black,
h3.card-title, h3.feature-title, h3.jp-section-title,
h3.pls-title, h3.elective-title, h3.faculty-modal-name,
h3.name, h3.mba-hero-title,
.h3, *[class*="h3"] { 
    font-size: var(--h3-size) !important; 
    font-weight: 600 !important; 
    line-height: 1.4 !important; 
}

/* ALL H4 ELEMENTS - NO EXCEPTIONS */
h4, h4[class], h4[id],
h4.title, h4.story-title, h4.section-title, h4.main-title,
h4.hero-title, h4.page-title, h4.heading, h4.header,
h4.dsufaq-title, h4.certtitle, h4.text-black,
h4.step-title, h4.designation, h4.course, h4.designation-caption,
.h4, *[class*="h4"] { 
    font-size: var(--h4-size) !important; 
    font-weight: 600 !important; 
    line-height: 1.4 !important; 
}

/* ALL H5 ELEMENTS - NO EXCEPTIONS */
h5, h5[class], h5[id],
h5.title, h5.story-title, h5.section-title, h5.main-title,
h5.hero-title, h5.page-title, h5.heading, h5.header,
h5.dsufaq-title, h5.certtitle, h5.text-black,
h5.pls-subtitle, h5.course-caption,
.h5, *[class*="h5"] { 
    font-size: var(--h5-size) !important; 
    font-weight: 500 !important; 
    line-height: 1.5 !important; 
}

/* ALL H6 ELEMENTS - NO EXCEPTIONS */
h6, h6[class], h6[id],
h6.title, h6.story-title, h6.section-title, h6.main-title,
h6.hero-title, h6.page-title, h6.heading, h6.header,
h6.dsufaq-title, h6.certtitle, h6.text-black,
.h6, *[class*="h6"] { 
    font-size: var(--h6-size) !important; 
    font-weight: 500 !important; 
    line-height: 1.5 !important; 
}

/* ===== CATCH-ALL SELECTORS FOR ANY MISSED ELEMENTS ===== */
*[class*="title"]:is(h1), *[class*="heading"]:is(h1), *[class*="header"]:is(h1) {
    font-size: var(--h1-size) !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
}

*[class*="title"]:is(h2), *[class*="heading"]:is(h2), *[class*="header"]:is(h2) {
    font-size: var(--h2-size) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
}

*[class*="title"]:is(h3), *[class*="heading"]:is(h3), *[class*="header"]:is(h3) {
    font-size: var(--h3-size) !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
}

*[class*="title"]:is(h4), *[class*="heading"]:is(h4), *[class*="header"]:is(h4) {
    font-size: var(--h4-size) !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
}

*[class*="title"]:is(h5), *[class*="heading"]:is(h5), *[class*="header"]:is(h5) {
    font-size: var(--h5-size) !important;
    font-weight: 500 !important;
    line-height: 1.5 !important;
}

*[class*="title"]:is(h6), *[class*="heading"]:is(h6), *[class*="header"]:is(h6) {
    font-size: var(--h6-size) !important;
    font-weight: 500 !important;
    line-height: 1.5 !important;
}

/* ===== CONSISTENT HEADING SIZES - UNIVERSAL ENFORCEMENT ===== */
h1, .h1, 
h1.dsufaq-title, h1.certtitle, h1.text-black,
.main-heading, .hero-title, .section-title,
.story-title, .dsu-awards-title, .testimonials-title,
.dsu-faq__title, .coordinator-section-title,
.career-title, .faculty-title, .electives-heading,
.mba-hero-title, .why-title, .pls-heading,
.fees-main-heading, .po-title, .curriculum-main-title { 
    font-size: var(--h1-size) !important; 
    font-weight: 800 !important; 
    line-height: 1.2 !important; 
}

h2, .h2,
h2.dsufaq-title, h2.certtitle, h2.text-black,
.jp-section-title, .faculty-title, .career-title,
.section-title, .why-title, .pls-heading,
.fees-main-heading, .po-title, .electives-heading,
.dsu-faq__title, .coordinator-section-title,
.faculty-modal-name, .name, .name-caption { 
    font-size: var(--h2-size) !important; 
    font-weight: 700 !important; 
    line-height: 1.3 !important; 
}

h3, .h3,
h3.dsufaq-title, h3.certtitle, h3.text-black,
.card-title, .feature-title, .jp-section-title,
.pls-title, .elective-title, .faculty-modal-name,
.name, .mba-hero-title { 
    font-size: var(--h3-size) !important; 
    font-weight: 600 !important; 
    line-height: 1.4 !important; 
}

h4, .h4,
h4.dsufaq-title, h4.certtitle, h4.text-black,
.step-title, .designation, .course, .designation-caption { 
    font-size: var(--h4-size) !important; 
    font-weight: 600 !important; 
    line-height: 1.4 !important; 
}

h5, .h5,
h5.dsufaq-title, h5.certtitle, h5.text-black,
.pls-subtitle, .course-caption { 
    font-size: var(--h5-size) !important; 
    font-weight: 500 !important; 
    line-height: 1.5 !important; 
}

h6, .h6,
h6.dsufaq-title, h6.certtitle, h6.text-black { 
    font-size: var(--h6-size) !important; 
    font-weight: 500 !important; 
    line-height: 1.5 !important; 
}

/* ===== CONSISTENT PARAGRAPH AND TEXT SIZES - UNIVERSAL ENFORCEMENT ===== */
p, .paragraph, .body-text, .desc, .description,
.text-black, .text-content, .content-text,
.hero-description, .about-text p, .feature-card p,
.mba-hero-desc, .why-desc, .pls-text,
.step-text, .bio, .faculty-modal-bio, .jp-item-para,
.dsu-accordion-body, .career-accordion-content p,
.accordion-content p, .feature p, .ahead-text,
.pls-list li, .po-desc, .curriculum-table td,
.semester-content, .elective-card p { 
    font-size: var(--body-text) !important; 
    line-height: var(--line-height) !important; 
    font-weight: normal !important; 
}

/* ===== SPECIFIC OVERRIDES FOR COMMON CLASSES - UNIVERSAL ===== */
.subheading, .subtitle, .cloudhero_subtitle,
.slide-text, .online-mba, .designation,
.course, .designation-caption { 
    font-size: var(--subheading-size) !important; 
    font-weight: 600 !important; 
}

.small-text, .meta, .subtext, .small, 
.nav-link-size, .label, .info-box .title,
.cloudhero_info_box .title, .cloudhero_tagline,
.faculty-qual, .curriculum-btn, .semester-btn { 
    font-size: var(--small-text-size) !important; 
}

/* ===== NAVIGATION TYPOGRAPHY - UNIVERSAL ===== */
.nav-link, .navbar a { 
    font-size: var(--nav-link-size) !important; 
}

/* ===== BUTTON TEXT - UNIVERSAL ===== */
.btn, .button, .dsu-btn-blue, .btn-primary, .btn-secondary,
.btn-know, .btn-brochure, .pls-btn, .fees-apply-btn, 
.faculty-link, .banner-btn, .dsu-read-more { 
    font-size: var(--body-text) !important; 
}

/* ===== CARD AND COMPONENT TEXT - UNIVERSAL ===== */
.card-content, .info-box, .feature-card,
.testimonial-text, .faculty-card, .glass-card,
.elective-card, .jp-job-item, .jp-industry-item { 
    font-size: var(--body-text) !important; 
    line-height: var(--line-height) !important; 
}

/* ===== FORM ELEMENTS - UNIVERSAL ===== */
input, textarea, select, label { 
    font-size: var(--body-text) !important; 
    line-height: var(--line-height) !important; 
}

/* ===== OVERRIDE ANY INLINE STYLES - UNIVERSAL ENFORCEMENT ===== */
[style*="font-size"] h1, 
.dsufaq-title h1, .certtitle h1, .text-black h1 { 
    font-size: var(--h1-size) !important; 
}

[style*="font-size"] h2,
.dsufaq-title h2, .certtitle h2, .text-black h2 { 
    font-size: var(--h2-size) !important; 
}

[style*="font-size"] h3,
.dsufaq-title h3, .certtitle h3, .text-black h3 { 
    font-size: var(--h3-size) !important; 
}

[style*="font-size"] h4,
.dsufaq-title h4, .certtitle h4, .text-black h4 { 
    font-size: var(--h4-size) !important; 
}

[style*="font-size"] h5,
.dsufaq-title h5, .certtitle h5, .text-black h5 { 
    font-size: var(--h5-size) !important; 
}

[style*="font-size"] h6,
.dsufaq-title h6, .certtitle h6, .text-black h6 { 
    font-size: var(--h6-size) !important; 
}

[style*="font-size"] p,
.dsufaq-title p, .certtitle p, .text-black p { 
    font-size: var(--body-text) !important; 
}

/* ===== UNIVERSAL TYPOGRAPHY ENFORCEMENT - CATCH ALL REMAINING ELEMENTS ===== */

/* Force all heading elements regardless of class or inline styles */
*[class*="title"], *[class*="heading"], *[class*="header"] {
    font-size: inherit !important;
}

/* Specific class overrides for common patterns */
.dsufaq-title, .certtitle, .text-black,
.dsu-faq__title, .dsu-accordion-button__text,
.faculty-title, .career-title, .section-title,
.story-title, .testimonials-title, .electives-heading,
.coordinator-section-title, .curriculum-main-title {
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
}

/* Ensure h1 elements with any class get h1 size */
h1.dsufaq-title, h1.certtitle, h1.text-black,
h1[class*="title"], h1[class*="heading"] {
    font-size: var(--h1-size) !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
}

/* Ensure h2 elements with any class get h2 size */
h2.dsufaq-title, h2.certtitle, h2.text-black,
h2[class*="title"], h2[class*="heading"] {
    font-size: var(--h2-size) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
}

/* Ensure h3 elements with any class get h3 size */
h3.dsufaq-title, h3.certtitle, h3.text-black,
h3[class*="title"], h3[class*="heading"] {
    font-size: var(--h3-size) !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
}

/* Ensure h4 elements with any class get h4 size */
h4.dsufaq-title, h4.certtitle, h4.text-black,
h4[class*="title"], h4[class*="heading"] {
    font-size: var(--h4-size) !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
}

/* Ensure h5 elements with any class get h5 size */
h5.dsufaq-title, h5.certtitle, h5.text-black,
h5[class*="title"], h5[class*="heading"] {
    font-size: var(--h5-size) !important;
    font-weight: 500 !important;
    line-height: 1.5 !important;
}

/* Ensure h6 elements with any class get h6 size */
h6.dsufaq-title, h6.certtitle, h6.text-black,
h6[class*="title"], h6[class*="heading"] {
    font-size: var(--h6-size) !important;
    font-weight: 500 !important;
    line-height: 1.5 !important;
}

/* Ensure all paragraphs get body text size */
p.dsufaq-title, p.certtitle, p.text-black,
p[class*="text"], p[class*="desc"], p[class*="content"] {
    font-size: var(--body-text) !important;
    line-height: var(--line-height) !important;
    font-weight: normal !important;
}

/* Override any remaining inline font-size styles */
*[style*="font-size"] {
    font-size: inherit !important;
}

/* Specific overrides for elements that might resist */
.dsu-accordion-button__text,
.dsu-accordion-body,
.faculty-modal-name,
.faculty-modal-bio,
.career-accordion-content,
.accordion-content,
.testimonial-text,
.feature-text,
.ahead-text,
.client-text,
.modal-text {
    font-size: inherit !important;
    line-height: inherit !important;
}

/* Navigation Typography */
.nav-link, .navbar a { font-size: var(--nav-link-size); }

/* Remove left spacing from navbar logo */
.navbar .logo,
.navbar #logo,
#logo {
    margin-left: 0 !important;
    padding-left: 0 !important;
}

.nav-container {
    padding-left: 0 !important;
}

/* Hero Section Heading Structure */
.text-content .main-heading {
    font-size: var(--h1-size);
    font-weight: 800;
    line-height: 1.2;
    color: var(--secondary-yellow);
    margin-bottom: 1.5rem;
}

/* Animated Bullet Points */
.animated-bullets {
    list-style: none;
    padding: 0;
    margin: 0;
}

.bullet-item {
    opacity: 0;
    transform: translateX(-30px);
    animation: slideInBullet 0.6s ease-out forwards;
    font-size: var(--h4-size);
    font-weight: 600;
    color: white;
    margin-bottom: 0.8rem;
    position: relative;
    padding-left: 1.5rem;
}

.bullet-item::before {
    content: "•";
    color: var(--secondary-yellow);
    font-size: 1.5em;
    position: absolute;
    left: 0;
    top: 0;
}

.bullet-item[data-delay="0"] {
    animation-delay: 0.5s;
}

.bullet-item[data-delay="1"] {
    animation-delay: 1s;
}

.bullet-item[data-delay="2"] {
    animation-delay: 1.5s;
}

@keyframes slideInBullet {
    from {
        opacity: 0;
        transform: translateX(-30px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

/* Mobile navbar logo fix */
@media (max-width: 768px) {
    .navbar .logo,
    .navbar #logo,
    #logo {
        margin-left: 0 !important;
        padding-left: 0 !important;
    }
    
    .nav-container {
        padding-left: 10px !important;
    }
    
    .text-content .main-heading {
        font-size: var(--h1-size);
        margin-bottom: 1rem;
    }
    
    .bullet-item {
        font-size: var(--h2-size);
        margin-bottom: 0.8rem;
        font-weight: 700;
    }
}

/* Fix for BBA electives hero image scroll behavior */
.cloudhero_image {
    transition: opacity 0.3s ease, visibility 0.3s ease !important;
}

/* Ensure hero image hides properly on scroll for all electives */
@media (min-width: 993px) {
    .cloudhero_image {
        position: fixed !important;
        z-index: 0 !important;
    }
}

/* Section Titles */
.section-title { font-size: var(--h2-size); font-weight: 800; color: var(--dark-sky-blue); margin-bottom: 1rem; }
.section-desc { font-size: var(--body-text); color: #555; max-width: 800px; margin: 0 auto; line-height: 1.7; }

/* PREVENT HORIZONTAL SCROLL & RIGHT-SIDE SPACE */
html, body {
    overflow-x: hidden !important;
    width: 100% !important;
    margin: 0;
    padding: 0;
}

/* 2. HERO: Show RIGHT side of background image on mobile */
/* ==================== MOBILE: HERO BACKGROUND – SHIFT LEFT A BIT (≤768px) ============


    /* 2. HERO: Show RIGHT side of background image on mobile */
/* ==================== MOBILE: HERO BACKGROUND – SHIFT LEFT A BIT (≤768px) ==================== */
@media (max-width: 768px) {
    .hero-section {
        margin-top:-30px !important;
        background-position: 60% center !important;
        background-size: cover !important;
    }

    .hero-description {
        font-size: var(--body-text) !important;
    }
    
    .hero-content-wrapper { 
        margin-top: 300px !important;
    }
}




.main-content { 
    transition: transform .6s cubic-bezier(.25,.8,.25,1); 
    min-height: 100vh; 
    transform-origin: top left; 
}
.main-content.pushed { 
    transform: translateX(300px) scale(.82); 
}

/* ==================== HERO ==================== */
.hero-section { 
    min-height: 95vh; 
    position: relative; 
    overflow: hidden; 
    padding-top:80px;
    color: white; 
    display: flex; 
    align-items: center; 
}


/* ==================== HERO ==================== */
.hero-section {
    position: relative;
    min-height: 95vh;
    width: 100%;
    overflow: hidden;
    padding-top: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
}

/* HERO IMAGE */
.hero-section picture,
.hero-section .hero-img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.hero-section .hero-img {
    object-fit: cover;
    object-position: center;
    z-index: -1;
}

/* CONTENT */
.hero-section .hero-content {
    z-index: 2;
    text-align: center;
    max-width: 800px;
}

.hero-content-wrapper { 
    max-width: 1400px; 
    margin: auto; 
    padding: 0 2rem; 
    display: flex; 
    gap: 3rem; 
    align-items: center; 
    width: 100%; 
    margin-top: 320px;
}
.hero-text, .hero-images { 
    transition: transform .1s ease-out; 
}
.hero-text { 
    flex: 0 0 75%; 
}
.text-content { 
    max-width: 800px; 
}
/* ==================== HERO – SLIDING TEXT (FROM RIGHT → LEFT) ==================== */
.sliding-text-container {
    position: relative;
    height: 50px;
    margin: 2rem 0;
    overflow: hidden;
    max-width: 600px;
}

.sliding-text {
    position: absolute;
    top: 0;
    left: 100%; /* Start from right */
    width: 100%;
    font-size: var(--subheading-size);
    font-weight: 600;
    color: #e0e0e0;
    white-space: nowrap;
    opacity: 0;
    transform: translateX(100%);
    transition: all 0.8s cubic-bezier(0.23, 1, 0.32, 1);
    display: flex;
    align-items: center;
    gap: 0.8rem;
}

.sliding-text.show {
    left: 0;
    opacity: 1;
    transform: translateX(0);
}

.sliding-text.exit {
    left: -100%;
    opacity: 0;
    transform: translateX(-100%);
    transition: all 0.8s cubic-bezier(0.23, 1, 0.32, 1);
}

.sliding-text i {
    color: var(--secondary-yellow);
    font-size: var(--h5-size);
    flex-shrink: 0;
}

/* Responsive */
@media (max-width: 1024px) {
    .sliding-text-container { height: 45px; margin: 1.5rem 0; }
    .sliding-text { font-size: var(--h5-size); }
    .sliding-text i { font-size: var(--h5-size); }
}

@media (max-width: 768px) {
    .sliding-text-container { height: 40px; }
    .sliding-text { font-size: var(--body-text); gap: 0.6rem; }
    .sliding-text i { font-size: var(--h5-size); }
}

/* ==================== HERO – SLIDING TEXT WITH STICKER & HIGHLIGHT ==================== */
.sliding-text-container {
    position: relative;
    height: 70px;
    margin: 2.5rem 0;
    overflow: hidden;
    max-width: 650px;
}

.sliding-text {
    position: absolute;
    top: 0;
    left: 100%;
    width: 100%;
    display: flex;
    align-items: center;
    gap: 1rem;
    font-size: var(--h5-size);
    font-weight: 700;
    color: #e0e0e0;
    white-space: nowrap;
    opacity: 0;
    transform: translateX(100%);
    transition: all 0.8s cubic-bezier(0.23, 1, 0.32, 1);
}

.sliding-text.show {
    left: 0;
    opacity: 1;
    transform: translateX(0);
}

.sliding-text.exit {
    left: -100%;
    opacity: 0;
    transform: translateX(-100%);
    transition: all 0.8s cubic-bezier(0.23, 1, 0.32, 1);
}

/* === STICKER BADGE === */
.sticker-badge {
    position: relative;
    width: 48px;
    height: 48px;
    background: linear-gradient(135deg, #FFD700, #FFC107);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    animation: pulse-glow 2s infinite;
    flex-shrink: 0;
    z-index: 2;
}

.sticker-badge i {
    color: #1a1a1a;
    font-size: var(--h5-size);
    font-weight: bold;
}


/* === HIGHLIGHTED TEXT === */
.highlight-text {
    position: relative;
    background: linear-gradient(90deg, #FFD700, #FFC107, #FFD700);
    background-size: 200% 100%;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    animation: shimmer 3s infinite;
    font-weight: 800;
    letter-spacing: 0.5px;
}

@keyframes shimmer {
    0% { background-position: 0% 50%; }
    100% { background-position: 200% 50%; }
}

/* Responsive */
@media (max-width: 1024px) {
    .sliding-text-container { height: 60px; margin: 2rem 0; }
    .sliding-text { font-size: var(--h5-size); gap: 0.8rem; }
    .sticker-badge { width: 42px; height: 42px; }
    .sticker-badge i { font-size: var(--h5-size); }
}

@media (max-width: 768px) {
    .sliding-text-container { height: 55px; }
    .sliding-text { font-size: var(--body-text); gap: 0.6rem; }
    .sticker-badge { width: 38px; height: 38px; }
    .sticker-badge i { font-size: var(--body-text); }
    .highlight-text { font-size: var(--body-text); }
    .text-content {margin-left:0px !important; margin-top:50px;}
}
/* -------------------------------------------------
   1. HERO – add subtle background + increase size
   ------------------------------------------------- */



------------------------------------------------- */


/* Ensure the text content allows right alignment */
.text-content {
    max-width: 800px;
    width: 100%;
    margin-top:100px;
    display: flex;
    flex-direction: column;
    align-items: flex-start; /* Keeps text left-aligned */
}

.fixed-text { 
    font-size: var(--h1-size); 
    font-weight: 700; 
    line-height: 1.3; 
    color: var(--secondary-yellow); 
}
.typewriter-container { 
    margin-top:10px !important;
    font-size: var(--h1-size); 
    font-weight: 700; 
    min-height: 50px; 
    color: white; 
    margin-top: -20px;
    gap: 0px !important;

    /* === NEW LINES TO REMOVE GAP BETWEEN THE TWO LINES === */
    display: flex;              /* Enables align-items control */
    align-items: center;        /* Vertically centers both lines */
    line-height: 1.1;             /* Removes default line spacing (most important) */
    /* or use line-height: 0.95; if you want them even tighter */
}

/* Also target the fixed text above to make sure it has no extra spacing */


/* Optional: Fine-tune the cursor position if it looks off after tightening */
.typewriter-container .cursor {
    font-size: var(--h1-size);
}
.cursor { 
    animation: blink 1s infinite; 
    color: var(--secondary-yellow); 
    font-weight: bold; 
}
@keyframes blink { 
    0%,50% { opacity: 1 } 
    51%,100% { opacity: 0 } 
}

.hero-description { 
    font-size: var(--body-text); 
    line-height: 1.0; 
    color: #e0e0e0; 
    margin-bottom: 2.5rem; 
    margin-top:30px;
}
.cta-buttons { 
    display: flex; 
    gap: 1rem; 
    flex-wrap: wrap; 
    bottom:2px !important;
}

.card-brochure-wrapper {
    margin-top: 1rem;               /* space above the button */
    text-align: center;             /* works on all devices */
}

.btn-brochure {
    display: inline-block;          /* respects padding & width */
    background: #7b1fa2;            /* purple */
    color: #fff;
    font-weight: 600;
    font-size: var(--small-text-size);
    padding: 0.45rem 0.95rem;
    border-radius: 50px;
    text-decoration: none;
    transition: all .3s ease;
    min-width: 180px;               /* optional – keeps button wide enough */
}

.btn-brochure:hover {
    background: #5e0d8a;
    transform: translateY(-2px);
    box-shadow: 0 6px 15px rgba(123,31,162,.35);
}

/* Mobile – ensure full-width on very small screens (optional) */
@media (max-width: 480px) {
    .btn-brochure {
        width: 100%;
        max-width: 220px;
    }
}
/* -------------------------------------------------
   2. HERO CTA BUTTONS – blue → yellow on hover
   ------------------------------------------------- */
.btn-primary,
.btn-secondary {
    background: var(--primary-sky-blue) !important;
    color: white !important;
    border: 2px solid var(--primary-sky-blue) !important;
    border-radius: 50px !important;        /* fully rounded */
    padding: 1rem 2.2rem;
    font-size: var(--body-text);
    font-weight: 700 !important;
    letter-spacing: .5px;
    cursor: pointer;
    transition: all .35s ease;
    align-items:center !important;
      align-items:center;
        text-decoration: none;

}
.btn-primary:hover,
.btn-secondary:hover {
    background: whitesmoke !important;
    color: var(--text-dark) !important;
    border-color: white !important;
    transform: translateY(-4px);
    box-shadow: 0 10px 28px #ffffff73;
}
.hero-images { 
    flex: 0 0 25%; 
    position: relative; 
    height: 600px; 
    perspective: 1500px; 
}
.image-carousel { 
    position: relative; 
    width: 100%; 
    height: 100%; 
}
.image-card { 
    position: absolute; 
    width: 460px; 
    height: 480px; 
    border-radius: 20px; 
    overflow: hidden; 
    box-shadow: 0 25px 80px rgba(0,0,0,.4); 
    transform-style: preserve-3d; 
    opacity: 0; 
    transform: rotateY(90deg) translateX(300px); 
    transition: all 1.2s cubic-bezier(.23,1,.32,1); 
    top: 50%; 
    left: 50%; 
    margin-left: -230px; 
    margin-top: -240px; 
    cursor: pointer; 
}
.image-card.show { 
    opacity: 1; 
    transform: rotateY(0) translateX(0); 
}
.image-card img { 
    width: 100%; 
    height: 100%; 
    object-fit: cover; 
    transition: transform .3s ease; 
}
.image-card:hover img { 
    transform: scale(1.05); 
}
.card-overlay { 
    position: absolute; 
    bottom: 0; 
    left: 0; 
    right: 0; 
    background: linear-gradient(to top,rgba(0,0,0,.9),transparent); 
    padding: 2rem; 
    transform: translateY(100%); 
    transition: transform .4s ease; 
}
.image-card:hover .card-overlay { 
    transform: translateY(0); 
}
.card-overlay h3 { 
    color: var(--secondary-yellow); 
    font-size: var(--h4-size); 
    font-weight: 700; 
}

.scroll-indicator { 
    position: absolute; 
    left: 50%; 
    transform: translateX(-50%); 
    text-align: center; 
    z-index: 900; 
    opacity: 1; 
    transition: opacity .4s ease; 
    bottom: 0; 
}
.mouse { 
    width: 30px; 
    height: 50px; 
    border: 2px solid #FFD700; 
    border-radius: 20px; 
    margin: 0 auto 10px; 
    position: relative; 
}
.mouse-wheel { 
    width: 4px; 
    height: 10px; 
    background: #FFD700; 
    border-radius: 2px; 
    position: absolute; 
    top: 8px; 
    left: 50%; 
    transform: translateX(-50%); 
    animation: scroll 1.5s infinite; 
}
@keyframes scroll { 
    0% { transform: translateX(-50%) translateY(0); opacity: 1 } 
    100% { transform: translateX(-50%) translateY(20px); opacity: 0 } 
}
.scroll-indicator p { 
    color: #FFD700; 
    font-size: .9rem; 
    font-weight: 600; 
}
.scroll-indicator.scrolled { 
    opacity: 0; 
    pointer-events: none; 
}


.story-title {
    font-size: var(--h2-size);
    text-align: center;
    margin-bottom: 1rem;
    color: #ffffff;
    font-weight: 800;
    position: relative; 
    background: #0077BE;
    display: inline-block;
    padding: 15px 40px;
    border-radius: 12px;
    box-shadow: 0 4px 15px rgba(0, 119, 190, 0.3);
}

/* Mobile responsive for story-title */
@media (max-width: 768px) {
    .story-title {
        margin-top: 30px;
        padding: 20px 50px;
        font-size: var(--h4-size);
        margin-bottom: 20px;
    }
}

/* Center the hiring partners title specifically */
.story-title.text-black {
    text-align: center !important;
    margin: 0 auto 3rem auto !important;
    display: block !important;
    width: fit-content !important;
    background: var(--primary-sky-blue) !important;
    color: #ffffff !important;
}

/* Add background to blogs section */
.informed {
    background: linear-gradient(135deg, var(--primary-sky-blue) 0%, var(--dark-sky-blue) 100%);
    padding: 60px 0;
}

.informed .heading {
    text-align: center;
}

.informed .heading h2 {
    color: #ffffff !important;
    background: rgba(255, 255, 255, 0.1);
    padding: 20px 40px;
    border-radius: 12px;
    display: inline-block;
    margin: 0 auto;
}

.informed .heading h2 .text-blue {
    color: var(--secondary-yellow) !important;
}

/* Add background to certificate section */
.cert-title {
    background: var(--primary-sky-blue) !important;
    color: #ffffff !important;
    padding: 20px 30px;
    border-radius: 12px;
    display: block !important;
    margin: 0 auto 2rem auto !important;
    text-align: center !important;
    width: fit-content !important;
    position: relative !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
}

.cert-title .text-blue {
    color: var(--secondary-yellow) !important;
}

.story-title


/* ==================== WHY CHOOSE ==================== */
.content-section { 
    padding: var(--section-padding) 2rem; 
    background: var(--white); 
    color: var(--text-dark); 
}
.content-section h2 { 
    font-size: var(--h2-size); 
    text-align: center; 
    margin-bottom: var(--section-margin); 
    color: var(--primary-sky-blue); 
    font-weight: 800; 
}
.features-grid { 
    display: grid; 
    grid-template-columns: repeat(auto-fit,minmax(280px,1fr)); 
    gap: 2rem; 
}
.feature-card { 
    background: #f8f9fa; 
    padding: 2.5rem; 
    border-radius: 20px; 
    text-align: center; 
    transition: all .3s ease; 
    border: 1px solid #e9ecef; 
}
.feature-card:hover { 
    transform: translateY(-10px); 
    box-shadow: 0 20px 40px rgba(0,119,190,.1); 
    background: white; 
}
.feature-icon { 
    font-size: var(--h2-size); 
    margin-bottom: 1rem; 
    color: var(--primary-sky-blue); 
}
.feature-card h3 { 
    font-size: var(--h5-size); 
    margin-bottom: 1rem; 
    color: var(--text-dark); 
    font-weight: 700; 
}
.feature-card p { 
    color: #666; 
    line-height: 1.8; 
}


/* ==================== PROGRAMS SECTION – FINAL WITH LOGOS ON BACK ==================== */

.programs-section {
    padding: var(--section-padding) 2rem;
    padding-top: 0%;
    background: #fff;
    position: relative;
    z-index: 1;
    overflow: hidden;
}
.programs-section .container { max-width: 1500px; margin: 0 auto; }

.section-header { text-align: center; margin-bottom: var(--section-margin); }
.tag {
    display: inline-block;
    background: var(--secondary-yellow);
    color: var(--text-dark);
    font-weight: 700;
    font-size: var(--small-text-size);
    padding: .4rem 1rem;
    border-radius: 50px;
    margin-bottom: 1rem;
}

.programs-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 1.8rem;
    perspective: 1500px;
    z-index: 1;
}

/* Card */
.program-card {
    height: 450px;
    cursor: pointer;
    transform-style: preserve-3d;
    transition: all .6s cubic-bezier(.23,1,.32,1);
    position: relative;
}
.program-card:hover { transform: translateY(-16px) scale(1.04); z-index: 10; }


.card-inner {
    position: relative;
    width: 100%;
    height: 100%;
    transform-style: preserve-3d;
    transition: transform .8s cubic-bezier(.23,1,.32,1);
}
.program-card:hover .card-inner { transform: rotateY(180deg); }

.card-front, .card-back {
    position: absolute;
    width: 100%;
    height: 100%;
    backface-visibility: hidden;
    border-radius: 28px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    padding: 2.5rem 2rem;
    box-shadow: 0 15px 40px rgba(0,0,0,.1);
    overflow: hidden;
}
.card-front { background: linear-gradient(135deg,#f8f9fa 0%,#e9ecef 60%,#dee2e6 100%); }
.card-back {
    background: linear-gradient(135deg,var(--primary-sky-blue) 0%,#005a8d 100%);
    color: #fff;
    transform: rotateY(180deg);
    justify-content: center;
    align-items: center;
    gap: 1.2rem;
    text-align: center;
}


/* ==================== ABOUT DSU ONLINE – RUN & STOP ANIMATION ==================== */
.about-dsu-section {
    background: #f8fbff;
    position: relative;
    overflow: hidden;
    padding: var(--section-padding) 2rem;
}

.about-container {
    max-width: 1400px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 5rem;
    align-items: center;
}

.about-text {
    opacity: 0;
    transform: translateX(-100px);
    transition: all 1.2s cubic-bezier(0.23, 1, 0.32, 1);
}

.about-text.animate {
    opacity: 1;
    transform: translateX(0);
}

.badge {
    display: inline-block;
    background: linear-gradient(135deg, #FFD700, #FFC107);
    color: #1a1a1a;
    font-weight: 700;
    font-size: var(--small-text-size);
    padding: 0.5rem 1.2rem;
    border-radius: 50px;
    margin-bottom: 1.5rem;
    box-shadow: 0 4px 15px rgba(255, 215, 0, 0.4);
}

.title {
    font-size: var(--h1-size);
    font-weight: 900;
    line-height: 1.1;
    color: #0a1d37;
    margin-bottom: 1.5rem;
}

.highlight {
    background: linear-gradient(90deg, #0077BE, #00c6ff);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.desc {
    font-size: var(--h3-size);
    line-height: 1.8;
    color: #444;
    margin-bottom: 1.2rem;
}

/* Image Side */
.about-image-wrapper {
    perspective: 1500px;
    opacity: 0;
    transform: translateX(100px);
    transition: all 1.2s cubic-bezier(0.23, 1, 0.32, 1);
}

.about-image-wrapper.animate {
    opacity: 1;
    transform: translateX(0);
}

.image-tilt {
    position: relative;
    border-radius: 28px;
    overflow: hidden;
    box-shadow: 0 30px 80px rgba(0, 0, 0, 0.2);
    transition: transform 0.1s ease-out;
    transform-style: preserve-3d;
}

.image-tilt img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 28px;
}

/* Responsive */
@media (max-width: 1024px) {
    .about-container { grid-template-columns: 1fr; gap: 3rem; }
    .title { font-size: 2.7rem; }
    .about-image-wrapper { order: -1; }
    .floating-car { display: none; }
}

@media (max-width: 768px) {
    .title { font-size: 2.1rem; }
    .desc { font-size: var(--body-text); }
}
.text-white {
  color: #fff !important; /* or color: white !important; */
}

/* ========================================
   FACULTY SECTION – EXACT DESIGN MATCH
   ======================================== */
.faculty-section {
    padding: var(--section-padding) var(--element-margin);
    max-width: 1400px;
    margin: auto;
    position: relative;
    background: #f9fcff;
}

.faculty-section .section-title {
    text-align: center;
    font-size: var(--h2-size);
    font-weight: 800;
    margin-bottom: var(--section-margin);
    color: #0a1d37;
}

.faculty-section .gradient-text {
    background: linear-gradient(90deg, #0077BE, #00c6ff);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* NAV BUTTONS */
.faculty-nav {
    display: flex;
    justify-content: center;
    gap: 16px;
    margin-bottom: 30px;
}

.nav-btn {
    width: 50px;
    height: 50px;
    background: #fff;
    border: none;
    border-radius: 50%;
    font-size: var(--h5-size);
    color: #0077BE;
    cursor: pointer;
    box-shadow: 0 8px 25px rgba(0,0,0,0.15);
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.nav-btn:hover {
    background: #0077BE;
    color: white;
    transform: scale(1.1);
}

/* Faculty Section */
    /* Duplicate faculty-section removed - merged with main definition */

    .faculty-title {
      font-size: var(--h1-size);
      font-weight: 700;
      text-align: center;
      margin-bottom: var(--section-margin);
      color: #212121;
    }
    .faculty-title span {
      color: #007bff;
    }

    /* Carousel Wrapper */
    .faculty-time {
      position: relative;
      overflow: hidden;
      border-radius: 20px;
    }

    /* Navigation Buttons - Centered Vertically */
    .faculty-buttons-top {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      display: flex;
      gap: 16px;
      z-index: 20;
      pointer-events: none;
    }

    .faculty-nav {
      width: 56px;
      height: 56px;
      background:  #0077BE;;
      color: white;
      border: none;
      border-radius: 50%;
      font-size: var(--h5-size);
      display: flex;
      align-items: center;
      justify-content: center;
      box-shadow: 0 6px 20px rgba(0, 123, 255, 0.3);
      cursor: pointer;
      transition: all 0.3s ease;
      pointer-events: all;
      backdrop-filter: blur(8px);
      border: 3px solid rgba(255, 255, 255, 0.2);
      margin-top:-170%;
    }

    .faculty-nav:hover {
      background: white;
      color: #007bff;
      transform: scale(1.12) !important;
      box-shadow: 0 8px 25px rgba(0, 123, 255, 0.4);
    }

    .faculty-nav:active {
      transform: scale(0.95);
    }

    .faculty-carousel{
      display:flex;
      transition:0.6s ease;
      will-change:transform;
      cursor:grab;
    }
    .faculty-carousel:active{
      cursor:grabbing;
    }

    /* CARD */
    .faculty-card{
      min-width:350px;
      margin:0 15px;
      height:420px;
      border-radius:24px;
      position:relative;
      padding:30px;
      display:flex;
      flex-direction:column;
      justify-content:flex-start;
      overflow:hidden;
      box-shadow:0 8px 25px #00000015;
      transition:0.3s ease;
      background-size:cover;
      background-position:center bottom;
    }

    .faculty-card h3{
      font-size: var(--h4-size);
      font-weight:950;
      margin-bottom:6px;
    }

    .faculty-role{
      font-size: var(--subheading-size);
      font-weight:600;
      margin-bottom:6px;
    }

    .faculty-qual{
      font-size: var(--small-text-size);
      margin-bottom:16px;
      color:#444;
    }

    .faculty-desc{
      font-size: var(--small-text-size);
      color:#333;
      line-height:1.5;
      margin-bottom:18px;
      max-width:80%;
    }

    .faculty-link{
      display:inline-flex;
      align-items:center;
      gap:8px;
      color:#007bff;
      font-weight:600;
      text-decoration:none;
    }
    .faculty-link:hover{
      transform:translateX(5px);
    }

    .faculty-link::after{
      content:"→";
      font-weight:800;
    }

    /* IMAGE BOTTOM RIGHT */
    .faculty-img{
      width:170px;
      height:260px;
      object-fit:fill;
      position:absolute;
      bottom:0;
      right:0;
      border-radius:0 0 20px 0;
      transition:0.3s ease;
    }

    .faculty-card:hover .faculty-img{transform:scale(1.05);}

    /* COLORS */
    .faculty-role-red{color:#e91e63;}
    .faculty-role-blue{color:#007bff;}
    .faculty-role-green{color:#28a745;}
    .faculty-role-purple{color:#8e44ad;}
    .faculty-role-yellow{color:#f1c40f;}
    .faculty-role-orange{color:#e67e22;}

    /* Background images */
    .faculty-card.red{
      border:1px solid #e91e63;
      background-image:url("images/faculty.png");
    }
    .faculty-card.blue{
      border:1px solid #007bff;
      background-image:url("images/faculty.png");
    }
    .faculty-card.green{
      border:1px solid #28a745;
      background-image:url("images/faculty.png");
    }
    .faculty-card.purple{
      border:1px solid #8e44ad;
      background-image:url("images/faculty.png");
    }
    .faculty-card.yellow{
      border:1px solid #f1c40f;
      background-image:url("images/faculty.png");
    }
    .faculty-card.orange{
      border:1px solid #e67e22;
      background-image:url("images/faculty.png");
    }

    /* DOTS */
    .faculty-dots{
      display:flex;
      justify-content:center;
      margin-top:25px;
      gap:10px;
    }

    .faculty-dot{
      width:12px;
      height:12px;
      background:#ccc;
      border-radius:50%;
      transition:0.3s;
      cursor:pointer;
    }
    .faculty-dot.active{
      background:#007bff;
      transform:scale(1.3);
    }



    /* ==================== EXTRA CURRICULAR SECTION (UNIQUE NAMES) ==================== */

/* ==================== CAREER PARALLAX SECTION ==================== */
.career-parallax-section {
    position: relative;
    min-height: 100vh;
    padding: var(--section-padding) 0;
    overflow: hidden;
    display: flex;
    align-items: center;
}

.parallax-bg {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background: url('IMAGES/hero-banner.webp') center center / cover no-repeat fixed;
    z-index: 1;
    transform: translateZ(0);
    will-change: transform;
}

.parallax-bg::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background: linear-gradient(135deg, rgba(0, 119, 190, 0.7), rgba(0, 77, 122, 0.5));
    z-index: 2;
}

.container {
    position: relative;
    z-index: 3;
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 20px;
}

.career-content-left {
    max-width: 600px;
    margin-left: 0;
}

/* Badge & Title */
.career-badge {
    display: inline-block;
    background: #FFD700;
    color: #1a1a1a;
    font-weight: 700;
    font-size: var(--small-text-size);
    padding: 0.4rem 1.2rem;
    border-radius: 50px;
    margin-bottom: 1rem;
}

.career-title {
    font-size: var(--h1-size);
    font-weight: 800;
    color: white;
    margin: 0 0 2rem;
    line-height: 1.1;
    text-shadow: 0 2px 10px rgba(0,0,0,0.3);
}

/* Glass Card */
.career-card {
    background: rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border-radius: 24px;
    padding: 2.2rem;
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.2);
    border: 1px solid rgba(255, 255, 255, 0.25);
    margin-top: 2rem;
}

/* Accordion */
.accordion-item {
    margin-bottom: 1rem;
    border-radius: 14px;
    overflow: hidden;
    background: rgba(255, 255, 255, 0.1);
    transition: all 0.3s ease;
}

.accordion-header {
    width: 100%;
    padding: 1.3rem 1.6rem;
    background: transparent;
    border: none;
    text-align: left;
    font-size: var(--h5-size);
    font-weight: 600;
    color: white;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    transition: all 0.3s ease;
}

.accordion-header:hover {
    background: rgba(255, 255, 255, 0.15);
}

.accordion-header i {
    transition: transform 0.3s ease;
    font-size: var(--body-text);
}

.accordion-item.active .accordion-header i {
    transform: rotate(180deg);
}

.accordion-content {
    max-height: 0;
    overflow: hidden;
    padding: 0 1.6rem;
    background: rgba(0, 0, 0, 0.15);
    transition: max-height 0.4s ease, padding 0.4s ease;
}

.accordion-item.active .accordion-content {
    max-height: 300px;
    padding: 1.2rem 1.6rem;
}

.accordion-content p {
    margin: 0;
    color: #e0f2ff;
    font-size: 0.98rem;
    line-height: 1.7;
}

/* Mobile */
@media (max-width: 992px) {
    .career-title {
        font-size: 2.8rem;
    }
    .career-content-left {
        max-width: 100%;
        text-align: center;
    }
    .career-card {
        margin-top: 3rem;
    }
    .btn-primary,
.btn-secondary {       /* fully rounded */
    padding: 0.8rem 1.2rem;
    font-size: 0.78rem;

}

.fixed-text { 
    font-size: 31px; 
    font-weight: 700; 
    line-height: 1.3; 
    color: var(--secondary-yellow); 
}
}
@media (max-width: 576px) {
    .career-title {
        font-size: 2.2rem;
    }
    .accordion-header {
        font-size: var(--body-text);
        padding: 1rem;
    }
}



.footer-logo {
    max-width: 220px;
    height: auto;
}




    .header {
      text-align:center;
    }
/* ---------- Slider container ---------- */
.features-swiper-2025{
  overflow:hidden;
  padding:50px 20px 30px;
  max-width:1400px;
  height:300px;
  position:relative;
}
.features-swiper-2025 .swiper-slide{
 
  height:auto;padding:0 10px;
}
.features-swiper-2025 .feature{
  text-align:center;
  display:flex;flex-direction:column;
}

/* ---------- Icon box (fixed size) ---------- */
.icon-box{
  width:70px;height:70px;margin:0 auto 24px;margin-top:0px!important;
}
.icon-3d{
  width:100%;height:100%;font-size: var(--h1-size);color:#fff;
  display:flex;align-items:center;justify-content:center;
  border-radius:50%;position:relative;
  background:linear-gradient(135deg,#ff5f6d,#ff8a80);
  box-shadow:0 12px 25px rgba(255,95,109,.35);
  transition:transform .3s ease;
}
.icon-3d:hover{transform:scale(1.12);}

/* ---------- Unique gradients for each icon ---------- */
.icon-3d.legacy   {background:linear-gradient(135deg,#e91e63,#f06292);}
.icon-3d.programs {background:linear-gradient(135deg,#4facfe,#00f2fe);border-radius:20px;}
.icon-3d.ethics   {background:linear-gradient(135deg,#66bb6a,#81c784);}
.icon-3d.digital  {background:linear-gradient(135deg,#5c6bc0,#7986cb);}
.icon-3d.faculty  {background:linear-gradient(135deg,#ff9800,#ffb74d);}
.icon-3d.support  {background:linear-gradient(135deg,#26c6da,#4dd0e1);}
.icon-3d.skills   {background:linear-gradient(135deg,#ab47bc,#ba68c8);}
.icon-3d.placement{background:linear-gradient(135deg,#ef5350,#e57373);}

/* ---------- Text ---------- */
.feature h3{
  font-size: var(--h6-size);font-weight:600;color:#1a1a1a;
  margin:0 0 12px;line-height:1.3;
}
.feature p{
  font-size: var(--small-text-size);line-height:1.6;color:#444;
  margin:0 auto;max-width:300px;flex-grow:1;
}

/* ---------- Pagination ---------- */
.features-pagination-2025{
  position:relative;margin-top:30px;
}
.features-pagination-2025 .swiper-pagination-bullet{
  width:11px;height:11px;background:#ccc;opacity:1;
  margin:0 6px;border-radius:50%;transition:.3s;
}
.features-pagination-2025 .swiper-pagination-bullet-active{
  background:#d32f2f;transform:scale(1.3);
}

/* ---------- Arrows ---------- */
.features-swiper-prev-2025,
.features-swiper-next-2025{
  width:44px;height:44px;background:#fff;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 4px 15px rgba(0,0,0,.1);color:#d32f2f;
  font-size: var(--h6-size);cursor:pointer;transition:.3s;z-index:10;
  border:2px solid #eee;
}
.features-swiper-prev-2025:hover,
.features-swiper-next-2025:hover{
  background:#d32f2f;color:#fff;transform:scale(1.1);
}
.features-swiper-prev-2025::after{content:'‹';font-weight:bold;}
.features-swiper-next-2025::after{content:'›';font-weight:bold;}

/* ---------- Responsive ---------- */
@media(max-width:768px){
  .features-swiper-2025{
    padding:40px 15px 20px;
    margin-top: 10px;
  }
  .feature h3{font-size: var(--h6-size);}
  .feature p{font-size: var(--small-text-size);}
  
  /* Remove top spacing from feature elements */
  .features-swiper-2025 .feature {
    margin-top: 0;
    padding-top: 0;
  }
  
  /* Remove spacing from feature titles and content */
  .features-swiper-2025 .feature h3 {
    margin-top: 0;
    padding-top: 0;
  }
  
  .features-swiper-2025 .feature .icon-box {
    margin-top: 0;
    padding-top: 0;
  }
}



    .career-section {
        position: relative;
        min-height: 90vh;
        padding: 50px 0;
        display: flex;
        align-items: center;
        overflow: hidden;
        font-family: 'Poppins', sans-serif;
        /* Professional blue gradient background */
        background: linear-gradient(135deg, var(--primary-sky-blue) 0%, var(--dark-sky-blue) 100%);
    }

    /* Remove the old background image */
    .career-bg {
        display: none;
    }

    /* OVERLAY REMOVED */

    /* Flush Left Container */
    .career-container {
        position: relative;
        z-index: 3;
        width: 100%;
        max-width: none;
        margin: 0;
        padding: 0 0 0 60px;
        display: flex;
        justify-content: flex-start;
    }

    .career-content {
        max-width: 620px;
        width: 100%;
        text-align: left;
        margin: 0;
    }

    .career-badge {
        display: inline-block;
        background: var(--secondary-yellow);
        color: var(--text-dark);
        font-weight: 700;
        font-size: .95rem;
        padding: .4rem 1.2rem;
        border-radius: 50px;
        margin-bottom: 1rem;
    }

    .career-title {
        font-size: var(--h1-size);
        font-weight: 800;
        color: #ffffff;
        margin: 0 0 2rem;
        line-height: 1.1;
        text-shadow: 0 2px 10px rgba(0,0,0,.4);
    }

    /* STRONGER BLUR – ONLY ON CARD */
    .career-card {
        background: var(--primary-sky-blue);
        border-radius: 28px;
        padding: 2.4rem;
        box-shadow: 0 16px 50px rgba(0, 0, 0, 0.3);
        border: 1px solid var(--dark-sky-blue);
        margin-top: 2rem;
        width: 800px;
    }

    .career-accordion-item {
        margin-bottom: 1rem;
        border-radius: 16px;
        overflow: hidden;
        background: var(--dark-sky-blue);
        border: 1px solid rgba(255, 255, 255, 0.2);
    }

    .career-accordion-btn {
        width: 100%;
        padding: 1.4rem 1.8rem;
        background: var(--dark-sky-blue);
        border: none;
        text-align: left;
        font-size: var(--h5-size);
        font-weight: 700;
        color: #ffffff;
        display: flex;
        justify-content: space-between;
        align-items: center;
        cursor: pointer;
        transition: none;
        border-radius: 16px;
    }

    .career-accordion-btn:hover {
        background: var(--dark-sky-blue);
        color: #ffffff;
    }

    .career-accordion-content {
        max-height: 0;
        overflow: hidden;
        padding: 0 1.8rem;
        background: var(--primary-sky-blue);
        transition: max-height 0.45s ease, padding 0.45s ease;
    }

    .career-accordion-item.active .career-accordion-content {
        max-height: 320px;
        padding: 1.3rem 1.8rem;
    }

    .career-accordion-content p {
        margin: 0;
        color: #ffffff;
        font-size: var(--body-text);
        line-height: 1.75;
        font-weight: 500;
    }

    .career-arrow {
        transition: transform 0.3s ease;
        font-size: var(--body-text);
    }

    .career-accordion-item.active .career-arrow {
        transform: rotate(180deg);
    }

    .career-accordion-content {
        max-height: 0;
        overflow: hidden;
        padding: 0 1.8rem;
        background: rgba(0, 0, 0, 0.12);
        transition: max-height 0.45s ease, padding 0.45s ease;
    }

    .career-accordion-item.active .career-accordion-content {
        max-height: 320px;
        padding: 1.3rem 1.8rem;
    }

    .career-accordion-content p {
        margin: 0;
        color: #e6f5ff;
        font-size: var(--body-text);
        line-height: 1.75;
    }

    /* Responsive – Left Aligned */
    @media (max-width: 992px) {
        .career-container {
            padding: 0 0 0 30px;
        }
        .career-title { font-size: 2.8rem; }
        .career-content { max-width: 100%; }
        .career-card { margin-top: 3rem;width:390px; }
    }

    @media (max-width: 576px) {
        .career-container {
            padding: 0 0 0 20px;
        }
        .career-title { font-size: 2.2rem; }
        .career-accordion-btn { font-size: 1.15rem; padding: 1.1rem 1.4rem; }
        .career-card { padding: 1.8rem;width:380px; }
    }


      .clients-section {
        padding: var(--section-padding) 0;
        font-family: 'Poppins', sans-serif;
    }

    .section-title {
        font-size: var(--h2-size);
        font-weight: 700;
        line-height: 1.2;
    }

    .text-blue {
        color: #007bff;
    }

    .banner-btn {
        display: inline-block;
        background: #007bff;
        color: #fff;
        padding: 0.75rem 1.5rem;
        border-radius: 50px;
        font-weight: 600;
        text-decoration: none;
        transition: all 0.3s ease;
        margin-left:42%;
        box-shadow: 0 4px 15px rgba(0, 123, 255, 0.3);
    }

    .banner-btn:hover {
        background: #0056b3;
        transform: translateY(-2px);
        box-shadow: 0 6px 20px rgba(0, 123, 255, 0.4);
    }

    /* Swiper Container */
    .clients-slider {
        overflow: hidden;
        padding: var(--content-padding) 0;
    }

    .clientSwiper {
        padding: 20px 0;
    }

    .swiper-wrapper {
        align-items: center;
    }

    .client-logo {
        background: #fff;
        border-radius: 16px;
        padding: 20px;
        box-shadow: 0 4px 15px rgba(0,0,0,0.08);
        transition: all 0.4s ease;
        height: 120px;
        display: flex;
        align-items: center;
        justify-content: center;
        opacity: 0.75;
        border: 2px solid transparent;
    }

    .client-logo img {
        max-height: 60px;
        max-width: 100%;
        /* FULL COLOR - NO GRAYSCALE */
        filter: none !important;
        transition: all 0.4s ease;
    }

    /* MIDDLE SLIDE: POP + WHITE GLOW BORDER */
    .swiper-slide-active .client-logo {
        transform: scale(1.25) translateY(-15px);
        box-shadow: 0 15px 35px rgba(0,0,0,0.15);
        opacity: 1;
        z-index: 10;
        /* WHITE GLOW BORDER */
        border: 3px solid rgba(255, 255, 255, 0.9);
        box-shadow: 
            0 15px 35px rgba(0,0,0,0.15),
            0 0 20px rgba(255, 255, 255, 0.6),
            0 0 40px rgba(255, 255, 255, 0.4);
    }

    .swiper-slide-active .client-logo img {
        filter: drop-shadow(0 0 8px rgba(255,255,255,0.8));
    }

    /* Adjacent Slides */
    .swiper-slide-prev .client-logo,
    .swiper-slide-next .client-logo {
        transform: scale(1.05);
        opacity: 0.9;
    }

    /* Navigation Buttons */
    .swiper-button-prev,
    .swiper-button-next {
        width: 45px;
        height: 45px;
        background: rgba(0, 0, 0, 0.7);
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        top: auto;
        bottom: -60px;
        margin-top: 0;
        transition: all 0.3s ease;
        backdrop-filter: blur(4px);
    }

    .swiper-button-prev:after,
    .swiper-button-next:after {
        font-size: var(--h6-size);
        color: #fff;
        font-weight: bold;
    }

    .swiper-button-prev:hover,
    .swiper-button-next:hover {
        background: #007bff;
        transform: scale(1.1);
        box-shadow: 0 0 15px rgba(0,123,255,0.5);
    }

    .swiper-button-prev {
        left: 50%;
        margin-left: -60px;
    }

    .swiper-button-next {
        right: 50%;
        margin-right: -60px;
    }

    /* Responsive */
    @media (max-width: 992px) {
        .section-title {
            font-size: var(--h3-size);
            text-align: center;
        }
        .button-box {
            text-align: center !important;
            margin-top: 1rem;
        }
        .swiper-button-prev,
        .swiper-button-next {
            bottom: -50px;
        }
        .banner-btn{
            margin-left:0px !important;
        }
    }

    @media (max-width: 576px) {
        .section-title {
            font-size: var(--h4-size);
        }
        .client-logo {
            height: 100px;
            padding: 15px;
        }
        .swiper-slide-active .client-logo {
            transform: scale(1.15) translateY(-10px);
        }
        .swiper-button-prev,
        .swiper-button-next {
            width: 40px;
            height: 40px;
        }
        .swiper-button-prev { margin-left: -50px; }
        .swiper-button-next { margin-right: -50px; }
    }

        /* ==================== BASIC RESET ==================== */
        *{margin:0;padding:0;box-sizing:border-box;}
        body{font-family:'Poppins',sans-serif;background:#f8fbff;color:#333;}

        /* ==================== SECTION ==================== */
        .informed{padding:var(--section-padding) 1rem;}
        .container{max-width:1200px;margin:auto;position:relative;}

        .heading h2{
            font-size:2.8rem;font-weight:800;text-align:center;margin-bottom:1rem;color:#0a1d37;
        }
        .text-blue{color:#0077BE;}

        /* ==================== SLIDER ==================== */
        .ahead-slider{
            position:relative;overflow:hidden;margin-top:2rem;padding:1rem 0;
        }
        .ahead-box{
            background:#fff;border-radius:16px;overflow:hidden;
            box-shadow:0 8px 25px rgba(0,0,0,0.08);
            transition:all 0.3s ease;height:100%;display:flex;flex-direction:column;
        }
        .ahead-box:hover{
            transform:translateY(-8px);
            box-shadow:0 15px 35px rgba(0,119,190,0.15);
        }
        .aheadimg{height:200px;overflow:hidden;}
        .aheadimg img{
            width:100%;height:100%;object-fit:fill;transition:transform 0.4s ease;
        }
        .ahead-box:hover .aheadimg img{transform:scale(1.08);}
        .content{padding:1.5rem;flex-grow:1;display:flex;flex-direction:column;justify-content:space-between;}
        .ahead-text{
            font-size: var(--body-text);font-weight:600;line-height:1.5;margin-bottom:1rem;text-align:center;
        }
        .contact-cta{text-align:center;}
        .contact-cta a{
            color:#0077BE;font-weight:700;text-decoration:none;position:relative;
            transition:all 0.3s ease;
        }
        .contact-cta a::after{
            content:'';position:absolute;bottom:-4px;left:50%;width:0;height:2px;
            background:#0077BE;transition:all 0.3s ease;transform:translateX(-50%);
        }
        .contact-cta a:hover::after{width:100%;}

        /* ==================== SWIPER NAV & PAGINATION ==================== */
        .swiper-button-next,
        .swiper-button-prev{
            width:44px;height:44px;background:white;border-radius:50%;
            box-shadow:0 4px 15px rgba(0,0,0,0.1);color:#0077BE;
            transition:all 0.3s ease;margin-top:-22px;
        }
        .swiper-button-next:after,
        .swiper-button-prev:after{font-size:1.2rem;font-weight:bold;}
        .swiper-button-next:hover,
        .swiper-button-prev:hover{
            background:#0077BE;color:white;transform:scale(1.1);
        }
        .swiper-pagination{bottom:-10px;}
        .swiper-pagination-bullet{
            width:10px;height:10px;background:#ddd;opacity:1;transition:all 0.3s ease;
        }
        .swiper-pagination-bullet-active{
            background:#0077BE;transform:scale(1.3);
        }

        /* ==================== RESPONSIVE ==================== */
        @media (max-width:992px){
            .heading h2{font-size: var(--h3-size);}
            .aheadimg{height:180px;}
        }
        @media (max-width:768px){
            .heading h2{font-size: var(--h3-size);}
            .aheadimg{height:160px;}
            .swiper-button-next,.swiper-button-prev{display:none;}
        }
/* ────────────────────── SECTION ────────────────────── */



    
/* -------------------------------------------------
     FAQ SECTION – FULL WIDTH + RESPONSIVE
  ------------------------------------------------- */
  /* ORIGINAL FAQ SECTION - COMPLETELY OVERRIDDEN */
  .dsu-faq {
    padding: var(--section-padding) 1rem var(--content-padding) !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    background: #ffffff !important;
    margin: 0 auto !important;
    position: relative !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    text-align: center !important;
  }

  .dsu-faq__container {
    max-width: 1600px;
    margin: 0 auto;
    padding: 4 1rem;
  }

  .dsu-faq__title {
    font-size: var(--h2-size);
    font-weight: 700;
    text-align: center;
    margin-bottom: 1rem;
    color: #0a1d37;
  }

  .dsu-faq__title span {
    color: #0077BE;
  }

  /* -------------------------------------------------
     ACCORDION WRAPPER
  ------------------------------------------------- */
  .dsu-faq__accordion {
    margin-top: var(--content-padding);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    width: 100%;
  }

  /* -------------------------------------------------
     ACCORDION ITEM – FULL WIDTH
  ------------------------------------------------- */
  .dsu-accordion-item {
    width: 100%;
    background: linear-gradient(135deg, var(--primary-sky-blue) 0%, var(--dark-sky-blue) 100%) !important;
    border-left: 5px solid var(--secondary-yellow);
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
    transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1);
  }

  .dsu-accordion-item:hover {
    box-shadow: 0 20px 40px rgba(0, 119, 190, 0.18);
    transform: translateY(-2px);
  }

  .dsu-accordion-item.active {
    background: linear-gradient(135deg, var(--primary-sky-blue) 0%, var(--dark-sky-blue) 100%) !important;
    box-shadow: 0 20px 40px rgba(0, 119, 190, 0.18);
  }

  /* -------------------------------------------------
     HEADER
  ------------------------------------------------- */
  .dsu-accordion-header {
    cursor: pointer;
    user-select: none;
  }

  .dsu-accordion-button {
    width: 100%;
    padding: 1rem 1.4rem;
    background: transparent !important;
    border: none;
    display: flex;
    align-items: center;
    gap: 1rem;
    font-weight: 700;
    font-size: 1.18rem;
    color: #ffffff !important;
    text-align: left;
    transition: all 0.35s ease;
  }

  .dsu-accordion-button__number {
    font-weight: 700;
    font-size: 2.1rem;
    color: var(--secondary-yellow) !important;
    min-width: 38px;
  }

  .dsu-accordion-button__text {
    flex: 1;
    font-size: 1.18rem;
    font-weight: 700;
    color: #ffffff !important;
  }

  .dsu-accordion-button::after {
    content: "+";
    font-size: var(--h4-size);
    font-weight: 300;
    color: var(--secondary-yellow) !important;
    transition: transform 0.3s ease;
  }

  .dsu-accordion-item.active .dsu-accordion-button::after {
    content: "−";
    transform: rotate(180deg);
    font-weight: 700;
  }

  /* -------------------------------------------------
     BODY
  ------------------------------------------------- */
  .dsu-accordion-body {
    padding: 0 1.4rem;
    font-size: 1.06rem;
    font-weight: 500;
    line-height: 1.8;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s ease, padding 0.4s ease;
    color: #ffffff !important;
    background: transparent !important;
  }

  .dsu-accordion-item.active .dsu-accordion-body {
    max-height: 800px; /* Increased for long content */
    padding: 0 1.4rem 1.4rem;
  }

  .dsu-accordion-body p,
  .dsu-accordion-body ul {
    margin: 0 0 1rem 0;
  }

  .dsu-accordion-body ul {
    padding-left: 1.4rem;
    list-style: disc;
  }

  .dsu-accordion-body ul li {
    margin-bottom: 0.4rem;
  }

  /* -------------------------------------------------
     VIEW MORE BUTTON
  ------------------------------------------------- */
  .dsu-read-more {
    margin: 2.5rem auto 0;
    padding: 0.8rem 2.8rem;
    background: #0077BE;
    color: #ffffff;
    border: none;
    border-radius: 12px;
    font-weight: 600;
    font-size: 1.05rem;
    cursor: pointer;
    transition: all 0.3s ease;
    display: block;
    min-width: 180px;
    box-shadow: 0 4px 12px rgba(0, 119, 190, 0.25);
  }

  .dsu-read-more:hover {
    background: #005a9e;
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(0, 119, 190, 0.35);
  }

  /* -------------------------------------------------
     HIDDEN ITEMS
  ------------------------------------------------- */
  #dsu-extra-accordions {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.6s ease;
  }

  #dsu-extra-accordions.show {
    max-height: 6000px;
  }

  /* -------------------------------------------------
     RESPONSIVE
  ------------------------------------------------- */
  @media (max-width: 1200px) {
  }

  @media (max-width: 992px) {
    .dsu-faq__title { font-size: var(--h3-size); }
  }

  @media (max-width: 768px) {
    .dsu-faq__title { font-size: var(--h3-size); }
    .dsu-accordion-button { padding: 0.9rem 1.2rem; gap: 0.8rem; }
    .dsu-accordion-button__number { min-width: 34px; font-size: var(--h4-size); }
    .dsu-accordion-button__text { font-size: 1.12rem; }
    .dsu-accordion-body { font-size: 1.02rem; }
    .dsu-read-more { font-size: var(--small-text-size); padding: 0.65rem 1.8rem; }
  }

  @media (max-width: 480px) {
    .dsu-faq__title { font-size: var(--h4-size); }
    .dsu-accordion-button { padding: 0.8rem 1rem; }
    .dsu-accordion-button__number { font-size: 1.6rem; }
    .dsu-accordion-button__text { font-size: 1.08rem; }
    .dsu-accordion-body { font-size: 0.98rem; }
  }

    /* Slide-in animation */
    .how-to-apply {
        opacity: 0;
        transform: translateY(50px);
        transition: all 0.8s ease-out;
    }

    .how-to-apply.visible {
        opacity: 1;
        transform: translateY(0);
    }

    .step, .apply-image {
        opacity: 0;
        transform: translateX(-50px);
        transition: all 0.6s ease-out;
    }

    .step.slide-in, .apply-image.slide-in {
        opacity: 1;
        transform: translateX(0);
    }


    /*student testimonials*/
    /* ============== ALL CSS FOR TESTIMONIALS SECTION + MODAL ============== */
* { box-sizing: border-box; margin:0; padding:0; }

.testi-section { 
    text-align: center; 
    background: #fcfcfc; 
    padding: var(--section-padding) 2rem;
}
.testi-title { 
    font-size: 2.9rem; 
    font-weight: 700; 
    margin-bottom: var(--element-margin); 
    color: #111; 
    letter-spacing: -0.5px;
}
.testi-sub { 
    font-size: 1.2rem; 
    color:#444; 
    margin-bottom: var(--section-margin); 
    max-width: 900px; 
    margin-left:auto; 
    margin-right:auto; 
    line-height: 1.5;
}

.shuffle-btn {
    background: #0077BE; 
    color:#fff; 
    border:0; 
    padding:15px 46px; 
    border-radius:8px; 
    font-weight:600; 
    font-size:1.12rem; 
    cursor:pointer;
    transition: background .3s;
}
.shuffle-btn:hover { background: #000; }

.testi-grid {
    max-width: 1600px; 
    margin: 0 auto; 
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 2px;
    padding: 0 15px;
}
@media (max-width: 1100px) { 
    .testi-grid { grid-template-columns: repeat(2, 1fr); gap: 10px; } 
}
@media (max-width: 640px) { 
    .testi-grid { grid-template-columns: 1fr; gap: 18px; } 
}

.testi-card {
 background-color: #f8fafc; 
      border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 8px 32px rgba(0,0,0,0.09);
    border: 1px solid #e8e8e8;
    height: 590px;
    display: flex;
    flex-direction: column;
    transition: all .35s ease;
    cursor: pointer;
    position: relative;
}
.testi-img {
    height: 240px;
    width: 100%;
    overflow: hidden;
    background: #f8f8f8;
}
.testi-img img {
    width: 100%;
    height: 240px;
    object-fit: contain;
    background-repeat: no-repeat;
    object-position: center top;
    display: block;
    transition: transform .8s ease;
}
.testi-card:hover .testi-img img { transform: scale(1.09); }

.testi-body {
    padding: 14px 12px 7px;
    display: flex;
    flex-direction: column;
    flex: 1;
    text-align: left;
    justify-content: space-between;
}
.testi-body h3 {
    font-size: 0.98rem;
    font-weight: 700;
    color: #111;
    margin-bottom: 5px;
    line-height: 1.25;
    letter-spacing: -0.3px;
}
.testi-course { font-size: 0.78rem; font-weight: 700; color: #222; margin-bottom: 3px; }
.testi-company { font-size: var(--small-text-size); font-weight: 600; color: #111; margin-bottom: 2px; }
.testi-desig { font-size: 0.80rem; color: #555; margin-bottom: 10px; font-weight: 500; }
.testi-text {
    font-size: 0.80rem;
    color: #333;
    line-height: 1.48;
    font-style: italic;
    margin-bottom: 12px;
    flex-grow: 1;
    letter-spacing: -0.2px;
}
.testi-btn {
    background: #0077BE;
    color: #fff;
    border: none;
    padding: 12px 24px;
    border-radius: 8px;
    font-weight: 600;
    font-size: 0.94rem;
    cursor: pointer;
    align-self: flex-start;
    transition: background .3s;
    margin-top: auto;
}
.testi-btn:hover { background: #000; }

/* ============== UNIQUE TESTIMONIAL MODAL ============== */
#testimonialModalOverlay {
    position:fixed; inset:0; display:none; align-items:center; justify-content:center;
    background: rgba(0, 0, 0, 0); z-index:9999; padding:10px;
}
#testimonialModalOverlay.active { display:flex; }

.testimonial-modal {
    width: 680px; max-width:95%; max-height:90vh; background:#0077BE;
    border-radius:12px; overflow:hidden; box-shadow:0 20px 60px rgba(0,0,0,0.22);
    display:flex; flex-direction:column;
}
.testimonial-modal-header {
    padding:32px 36px 26px; text-align:center; background:#f9f9f9; border-bottom:1px solid #eee;
    position:relative;
}
.testimonial-modal-header img {
    width:112px; height:112px; border-radius:50%; object-fit:cover;
    border:5px solid #fff; box-shadow:0 8px 24px rgba(0,0,0,0.18); margin-bottom:18px;
}
.testimonial-modal-header h2 { font-size:1.25rem; font-weight:600; color:#111; margin-bottom:8px; }
.testimonial-modal-header p { font-size:1.12rem; color:#444; }

.testimonial-modal-close {
    position:absolute; right:16px; top:16px; width:42px; height:42px; border-radius:50%;
    background:rgba(0,0,0,0.12); color:#333; font-size: var(--h3-size); cursor:pointer;
    display:flex; align-items:center; justify-content:center;
}
.testimonial-modal-close:hover { background:rgba(0,0,0,0.22); }

.testimonial-modal-body {
    padding:26px; overflow-y:auto; background:#fff; flex:1; text-align: left;
}
.testimonial-full-text {
    font-size: 1.05rem;
    line-height: 1.65;
    color: #222;
    background:#f9f9f9;
    padding: 24px;
    border-radius: 12px;
    border-left: 5px solid #0077BE;
    margin: 22px 0;
}
.testimonial-section-title {
    font-size: 1.22rem;
    font-weight: 700;
    margin: 28px 0 16px;
    color: #111;
    padding-bottom: 8px;
    border-bottom: 2px solid #eee;
}

/* Q&A – smaller & cleaner */
.testimonial-faq-item {
    margin-bottom: 14px;
    border: 1px solid #eee;
    border-radius: 10px;
    overflow: hidden;
}
.testimonial-faq-q {
    padding: 15px 20px;
    background: #f8f8f8;
    cursor: pointer;
    font-weight: 600;
    font-size: var(--body-text);
    position: relative;
    transition: background .3s;
}
.testimonial-faq-q:hover { background: #efefef; }
.testimonial-faq-q::after { 
    content:'+'; 
    position:absolute; 
    right:20px; 
    font-size: var(--h4-size); 
    font-weight:300; 
}
.testimonial-faq-item.open .testimonial-faq-q::after { content:'-'; }

.testimonial-faq-a {
    padding:0 20px; 
    max-height:0; 
    overflow:hidden; 
    transition: all .4s ease;
    font-size: 0.96rem;
    line-height: 1.55;
    color: #333;
    background:#fff;
}
.testimonial-faq-item.open .testimonial-faq-a { 
    padding: 18px 20px; 
    max-height: 800px; 
}
/* Updated Close Button – now inside the card */
.testimonial-close-btn {
    position: absolute;
    top: 16px;
    right: 16px;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: rgba(0,0,0,0.1);
    color: #333;
    font-size: var(--h2-size);
    font-weight: 300;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    z-index: 10;
}
.testimonial-close-btn:hover {
    background: rgba(0,0,0,0.2);
    transform: scale(1.1);
}


/* Hero Bullet Points - Simplified */
.hero-bullet-points {
    margin-top: 30px;
}


/* Badges Container - Desktop & Mobile Base */
.trust-badges-top {
    position: absolute;
    top: 10%;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 40px;
    align-items: center;
    justify-content: center;
    z-index: 10;
    pointer-events: none;
    width: 100%;
    padding: 0 20px;
    box-sizing: border-box;
}

/* Common badge style */
.top-badge {
    width: 150px;
    height: 150px;
    object-fit: contain;
    pointer-events: auto;
    transition: all 0.4s ease;
    flex-shrink: 0;

    filter: drop-shadow(0 0 20px hsla(0, 0%, 100%, 1.00))
            drop-shadow(0 0 40px rgba(255, 255, 255, 0.5))
            drop-shadow(0 0 70px rgba(255, 255, 255, 0.3));
}

/* Hover zoom */
.top-badge:hover {
    transform: scale(1.18);
    filter: drop-shadow(0 0 30px rgba(255,255,255,1))
            drop-shadow(0 0 60px rgba(255,255,255,0.8))
            drop-shadow(0 0 100px rgba(255,255,255,0.6));
}

/* MOBILE ONLY: Remove white background but keep positioning */
@media (max-width: 576px) {
    .trust-badges-top {
        top: 20%;
        gap: 20px;
        padding: 0 15px;
    }

    .top-badge {
        width: 125px;
        height: 125px;
        max-width: 32vw;
        flex: 1 1 30%;
        background: transparent !important;
        box-shadow: none !important;
        border-radius: 0 !important;
        padding: 0 !important;
    }
}

/* Tablet - keep original positioning */
@media (min-width: 577px) and (max-width: 992px) {
    .trust-badges-top { 
        gap: 40px; 
        top: 15%; 
    }
    .top-badge { 
        width: 150px; 
        height: 150px; 
    }
}
        .dsu-story-section {
            position: relative;
            min-height: 80vh; /* Reduced height */
            background: url('images/dsu-night-background-image.jpg') center/cover no-repeat;
            background-color: #f5f7fa;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: var(--section-padding) var(--element-margin); /* Extra bottom space */
            text-align: center;
            color: #000;
        }

        /* White Overlay - Lower Opacity */
        .dsu-story-section::before {
            content: '';
            position: absolute;
            inset: 0;
            background: rgba(255, 255, 255, 0); /* Reduced opacity */
            z-index: 1;
        }

        .dsu-story-container {
            position: relative;
            z-index: 2;
            max-width: 1400px;
            width: 100%;
            margin: 0 auto;
            opacity: 0;
            transform: translateY(50px);
            transition: all 1s ease-out;
        }

        .dsu-story-container.dsu-visible {
            opacity: 1;
            transform: translateY(0);
        }
/* Heading */
.dsu-story-title {
    font-size: var(--h2-size);
    font-weight: 800;
    color: #000;
    margin-bottom: var(--content-padding);
}

/* Logos */
.dsu-logos {
    display: flex;
    justify-content: center;
    gap: 80px;
    margin-bottom: var(--section-margin);
    flex-wrap: wrap;
}
.dsu-logo-box {
    background: #fff;
    padding: 10px 8px;
    border-radius: 18px;
    box-shadow: 0 6px 16px rgba(0,0,0,0.12);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.4s ease;        /* Added for smooth hover */
}
.dsu-logo-box img {
    height: 75px;
    display: block;
}

/* === POP-UP HOVER FOR LOGOS === */
.dsu-logo-box:hover {
    transform: translateY(-12px) scale(1.08);
    box-shadow: 0 16px 32px rgba(0,0,0,0.20);
}

/* Stats in SINGLE ROW */
.dsu-story-grid {
    display: flex;
    justify-content: center;
    gap: 60px;
    flex-wrap: wrap;
    max-width: 1200px;
    margin: 0 auto;
}

/* White Rounded Background for Cards */
.dsu-stat-card {
    background: #ffffff;
    padding: 25px 20px;
    border-radius: 20px;
    box-shadow: 0 8px 20px rgba(0,0,0,0.12);
    transition: all 0.4s ease;        /* Already existed + kept */
}

/* Existing Hover (background blue + lift) */
.dsu-stat-card:hover {
    background: #0077BE; /* Light Blue */
    transform: translateY(-10px);
    box-shadow: 0 12px 26px rgba(0,0,0,0.18);
}

/* Enhanced POP-UP effect on Stat Cards (adds slight scale for more "pop") */
.dsu-stat-card:hover {
    background: #0077BE;
    transform: translateY(-10px) scale(1.05);   /* Added scale for pop */
    box-shadow: 0 16px 32px rgba(0,0,0,0.22);
}

/* Text + Numbers Turn White on Hover */
.dsu-stat-card:hover .dsu-stat-num,
.dsu-stat-card:hover .dsu-count,
.dsu-stat-card:hover .dsu-plus,
.dsu-stat-card:hover .dsu-lpa,
.dsu-stat-card:hover p {
    color: #ffffff !important;
}

/* Underline becomes White on Hover */
.dsu-stat-card:hover .dsu-underline {
    background: #ffffff;
}

        .dsu-stat-card.dsu-visible {
            opacity: 1;
            transform: translateY(0);
        }

        .dsu-stat-num {
            font-size: 2.7rem;
            font-weight: 600; /* Lighter numbers */
            color: #000;
            line-height: 1;
            margin-bottom: 5px;
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 6px;
        }

        .dsu-stat-num .dsu-count,
        .dsu-stat-num .dsu-plus,
        .dsu-stat-num .dsu-lpa {
            font-size: 2.7rem;
            font-weight: 600;
            color: #000;
        }

        .dsu-underline {
            height: 5px;
            width: 60px;
            background: #4fc3f7;
            margin: 12px auto;
            border-radius: 3px;
        }

        .dsu-stat-card p {
            color: #000;
            font-size: var(--body-text);
            font-weight: 800;
            text-transform: uppercase;
            letter-spacing: 1.2px;
            margin-top: 10px;
            word-wrap: break-word;
            max-width: 180px;
        }

        

        /* Responsive */
        @media (max-width: 992px) {
          .dsu-story-section{
            margin-top:-100px !important;
          }
            .dsu-story-grid { 
                gap: 40px; 
                flex-wrap: wrap;
                justify-content: center;
            }
            .dsu-logos { gap: 40px; }
            .dsu-story-title { font-size: var(--h2-size); }
            .dsu-stat-num, .dsu-stat-num .dsu-count, .dsu-stat-num .dsu-plus, .dsu-stat-num .dsu-lpa { 
                font-size: 2.8rem; 
            }
            .dsu-stat-card p { max-width: 160px; }
        }

        @media (max-width: 576px) {
                    .dsu-story-section{
            margin-top:10px !important;
          }
            .dsu-logos { 
                display: flex !important;
                flex-direction: row !important; 
                align-items: center !important; 
                justify-content: center !important;
                gap: 15px !important;
                flex-wrap: wrap !important;
                max-width: 100% !important;
            }
            .dsu-logo-box { 
                padding: 8px 12px !important;
                flex: 0 0 calc(50% - 10px) !important;
                max-width: calc(50% - 10px) !important;
                min-width: 120px !important;
            }
            .dsu-logo-box img { 
                height: 45px !important;
                width: auto !important;
                max-width: 100% !important;
            }
            .dsu-story-title { font-size: 2.2rem; }
            .dsu-stat-num, .dsu-stat-num .dsu-count, .dsu-stat-num .dsu-plus, .dsu-stat-num .dsu-lpa { 
                font-size: var(--h3-size); 
            }
            .dsu-story-grid { gap: 30px; }
            .dsu-stat-card p { max-width: 140px; }
        }

  /* ==================== FINAL AWARDS & RECOGNITIONS STYLES ==================== */
.dsu-awards-section {
    padding: 40px 20px;
    background: #fff;
    text-align: center;
}

.dsu-awards-container {
    max-width: 1300px;
    margin: 0 auto;
    opacity: 0;
    transform: translateY(50px);
    transition: opacity 1.2s ease, transform 1.2s ease;
}

.dsu-awards-container.dsu-visible {
    opacity: 1;
    transform: translateY(0);
}

.dsu-awards-title {
    font-size: var(--h2-size);
    font-weight: 800;
    color: #ffffff;
    background: #0077BE;
    margin-bottom: 40px;
    position: relative;
    display: inline-block;
    text-align: center;
    padding: 15px 40px;
    border-radius: 12px;
    box-shadow: 0 4px 15px rgba(0, 119, 190, 0.3);
}

.dsu-awards-title::after {
    display: none;
}

/* MAIN GRID - 2 ROWS, AUTO-CENTERED ITEMS */
.dsu-awards-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    grid-auto-rows: 140px; /* Desktop & Tablet */
    gap: 50px 40px;
    max-width: 1150px;
    margin: 0 auto;
    justify-content: center;
    align-content: center;
    padding: 10px 0;
}


/* Tablet - 4 per row (2 rows) */
@media (max-width: 992px) {
    .dsu-awards-grid {
        grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
        gap: 40px 30px;
        max-width: 900px;
    }
    .dsu-award-img {
        max-height: 70px;
    }
}

/* MOBILE – FIXED: No extra space below images */
@media (max-width: 768px) {
    .dsu-awards-grid {
        grid-template-columns: repeat(3, 1fr);
        grid-auto-rows: auto !important;     /* This removes huge empty space */
        min-height: auto !important;
        gap: 35px;
        max-width: 100%;
        padding: 0 10px;
        align-content: start;                /* Prevents vertical stretching */
    }
    .dsu-award-img {
        max-height: 150px;
        width: auto;
        height: auto;
    }
    .dsu-awards-title {
        font-size: var(--h4-size);
        margin-bottom: 50px;
    }
    .dsu-awards-title::after {
        width: 80px;
        height: 4px;
    }
}

/* Extra Small Mobile */
@media (max-width: 480px) {
    .dsu-awards-section {
        padding: 70px 15px;
    }
    .dsu-awards-grid {
        gap: 18px;
    }
    .dsu-award-img {
        max-height: 85px;
    }
}

     /* ====================================
   PROGRAM CARDS – SEM FEES ON TOP + LIGHT COLORS
   ==================================== */

.container {
    max-width: 1600px;
    margin: 0 auto;
    padding: 0 0.75rem;
}

.programs-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1rem;
    margin: 0 auto;
}

@media (min-width: 640px) {
    .programs-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (min-width: 1024px) {
    .programs-grid {
        grid-template-columns: repeat(5, 1fr);
    }
}

.program-card-new {
    overflow: hidden;
    box-shadow: 0 6px 18px #00000079;
    transition: all 0.3s ease;
    display: flex;
    flex-direction: column;
    text-align: center;
    max-width: 300px;
    margin: 0 auto;
    
}

.program-card-new:hover {
    transform: translateY(-6px);
    box-shadow: 0 14px 30px rgba(0,0,0,0.16);
}

/* LIGHT & VIBRANT GRADIENT THEMES */
.card-soft-navy   { background: linear-gradient(135deg, #1e3a8a, #3b82f6); }
.card-soft-red    { background: linear-gradient(135deg, #dc2626, #f87171); }
.card-soft-blue   { background: linear-gradient(135deg, #2563eb, #60a5fa); }
.card-soft-green  { background: linear-gradient(135deg, #16a34a, #4ade80); }
.card-soft-purple { background: linear-gradient(135deg, #7c3aed, #c084fc); }

/* White text */
.program-card-new .card-content {
    color: rgb(0, 0, 0);
}


.program-card-new .meta {
    color: #000000f2;
    font-weight: 600;
}

.program-card-new .desc {
    color: #000000d9;
}

/* SEM FEES – ON TOP */
.sem-fees {
    margin: 0 0 0.5rem;
    font-size: var(--small-text-size);
    font-weight: 500;
    color: #000000;
    opacity: 0.95;
}

.sem-fees strong {
    font-weight: 700;
    font-size: 1.05rem;
}

/* TALLER IMAGE */
.card-image {
    position: relative;
    height: 220px;
    overflow: hidden;
}

.card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.program-card-new:hover .card-image img {
    transform: scale(1.08);
}

.card-logo {
    position: absolute;
    top: 1rem;
    left: 1rem;
    background: #FFD700;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.2);
    font-size: 1.15rem;
    color: #1a1a1a;
    z-index: 2;
}

.card-content {
    padding: 1.1rem;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.card-content h3 {
    margin: 0 0 0.4rem;
    font-size: 1.2rem;
    font-weight: 800;
}

.meta {
    font-size: var(--small-text-size);
    margin-bottom: 0.5rem;
}

.desc {
    font-size: 1.19rem;
    line-height: 1.5;
    margin-bottom: 1rem;
    flex-grow: 1;
}

.card-actions {
    display: flex;
    flex-direction: column;
    gap: 0.7rem;
}

.btn-know,
.btn-brochure {
    padding: 0.75rem 1rem;
    border-radius: 50px;
    font-weight: 600;
    font-size: var(--small-text-size);
    text-decoration: none;
    transition: all 0.3s ease;
    width: 100%;
    text-align: center;
}

/* Know More – White outline */
.btn-know {
    background:#0077BE;
    color: hwb(0 100% 0%);
}

.btn-know:hover {
    background:#FFD700;
    color: #000000;
    transform: translateY(-2px);
}

/* Download Brochure – Solid white */
.btn-brochure {
    background:#0077BE;
    color: hwb(0 100% 0%);
}

.btn-brochure:hover {
    background:#FFD700;
   color: #000000;
    transform: translateY(-2px);
}

/* MOBILE-ONLY RESPONSIVE (max-width: 768px) */
  @media (max-width: 768px) {
    .programs-section {
      padding: 40px 20px;
      background: linear-gradient(135deg, #f8fbff 0%, #ffffff 100%);
    }

    .programs-grid {
      grid-template-columns: 1fr !important;
      gap: 25px;
      padding: 0;
      max-width: 100%;
    }

    .program-card {
      height: auto !important;
      min-height: 380px;
      margin-top: 0 !important;
      border-radius: 20px;
      box-shadow: 0 8px 25px rgba(0, 119, 190, 0.15);
      overflow: hidden;
      transition: all 0.3s ease;
    }
    
    .program-card:hover {
      transform: translateY(-5px);
      box-shadow: 0 15px 35px rgba(0, 119, 190, 0.25);
    }

    .card-front {
      height: auto !important;
      min-height: 380px;
      padding: 30px 25px;
      border-radius: 20px;
      background: linear-gradient(135deg, #ffffff 0%, #f8fbff 100%);
      display: flex;
      flex-direction: column;
      justify-content: space-between;
    }

    .icon-circle {
      width: 70px;
      height: 70px;
      font-size: var(--h3-size);
      margin-bottom: 20px;
      background: linear-gradient(135deg, var(--primary-sky-blue), var(--dark-sky-blue));
      color: white;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      box-shadow: 0 4px 15px rgba(0, 119, 190, 0.3);
    }
    
    .program-card h3 {
      font-size: var(--h3-size);
      margin-bottom: 15px;
      line-height: 1.3;
      color: var(--text-dark);
      font-weight: 700;
    }

    .duration-front {
      font-size: var(--body-text);
      margin-bottom: 20px;
      color: #666;
      font-weight: 500;
    }

    .sem-fee {
      font-size: var(--h4-size);
      margin-bottom: 25px;
      color: var(--primary-sky-blue);
      font-weight: 700;
    }

    .btn-know,
    .btn-brochure {
      font-size: var(--body-text);
      padding: 15px 30px;
      width: 100% !important;
      margin-left: 0 !important;
      margin-top: 10px;
      border-radius: 30px;
      min-height: 50px;
      background: linear-gradient(135deg, var(--primary-sky-blue), var(--dark-sky-blue));
      color: white;
      border: none;
      font-weight: 600;
      transition: all 0.3s ease;
      box-shadow: 0 4px 15px rgba(0, 119, 190, 0.3);
    }
    
    .btn-know:hover,
    .btn-brochure:hover {
      transform: translateY(-2px);
      box-shadow: 0 6px 20px rgba(0, 119, 190, 0.4);
      background: linear-gradient(135deg, var(--dark-sky-blue), var(--primary-sky-blue));
    }
    
    /* Center both buttons in mobile */
    .card-actions {
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 10px;
      margin-top: 20px;
    }
    
    /* Card back improvements for mobile */
    .card-back {
      padding: 30px 25px;
      text-align: center;
      background: linear-gradient(135deg, var(--primary-sky-blue), var(--dark-sky-blue));
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
    }
    
    .card-back h3 {
      font-size: var(--h3-size);
      margin-bottom: 20px;
      color: white;
    }
    
    .card-back p {
      font-size: var(--body-text);
      line-height: 1.6;
      color: rgba(255, 255, 255, 0.9);
    }
    
    /* Section header improvements */
    .section-header {
      margin-bottom: 40px;
      text-align: center;
    }
    
    .tag {
      font-size: var(--small-text-size);
      padding: 8px 20px;
      background: linear-gradient(135deg, var(--secondary-yellow), #FFC107);
      color: var(--text-dark);
      border-radius: 25px;
      font-weight: 600;
      box-shadow: 0 4px 15px rgba(255, 215, 0, 0.3);
    }
  }

  @media (max-width: 480px) {
    .programs-section {
      padding: 30px 15px;
    }

    .programs-grid {
      gap: 20px;
      padding: 0;
    }

    .program-card {
      min-height: 360px;
      border-radius: 18px;
    }

    .card-front {
      padding: 25px 20px;
      min-height: 360px;
      border-radius: 18px;
    }

    .icon-circle {
      width: 65px;
      height: 65px;
      font-size: var(--h4-size);
      margin-bottom: 18px;
    }

    .program-card h3 {
      font-size: var(--h4-size);
      margin-bottom: 12px;
    }

    .duration-front {
      font-size: var(--body-text);
      margin-bottom: 18px;
    }

    .sem-fee {
      font-size: var(--h5-size);
      margin-bottom: 20px;
    }
    
    .btn-know,
    .btn-brochure {
      font-size: var(--body-text);
      padding: 12px 25px;
      margin-top: 8px;
      min-height: 48px;
      border-radius: 25px;
    }
    
    .card-back {
      padding: 25px 20px;
    }
    
    .card-back h3 {
      font-size: var(--h4-size);
      margin-bottom: 15px;
    }
    
    .card-back p {
      font-size: var(--body-text);
      line-height: 1.5;
    }
    
    .tag {
      font-size: var(--small-text-size);
      padding: 6px 16px;
    }
    
    /* Center both buttons in small mobile */
    .card-actions {
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 8px;
      margin-top: 15px;
    }
  }


/* =============== DOTS – BLUE ACTIVE (100% FIXED, NEVER VANISHES) =============== */
  .dots-container {
    display: flex;
    justify-content: center;
    gap: 12px;
    margin-top: 28px;
  }

  .dot {
    width: 13px;
    height: 13px;
    border-radius: 50%;
    background: #ccc;
    cursor: pointer;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    /* Removed background from transition */
  }

  .dot.active {
    background: #007bff !important;           /* SOLID BLUE */
    transform: scale(1.35) !important;
    box-shadow: 0 0 12px rgba(0, 123, 255, 0.6) !important;
  }

  /* HOVER: Only inactive dots change, active stays BLUE */
  .dot:hover:not(.active) {
    background: #0056b3;
    transform: scale(1.2);
  }

  .dot.active:hover {
    background: #007bff !important;           /* Blue stays on hover */
    transform: scale(1.35) !important;
    box-shadow: 0 0 14px rgba(0, 123, 255, 0.7) !important;
  }

  /* Mobile */
  @media (max-width: 768px) {
    .dots-container {
      gap: 10px;
      margin-top: 22px;
    }
    .dot {
      width: 11px;
      height: 11px;
    }
    .dot.active {
      transform: scale(1.4) !important;
    }
    .dot.active:hover {
      transform: scale(1.4) !important;
    }
  }

@media (max-width: 992px){
    .dots-container {
      gap: 10px;
      margin-top: 22px;
    }

    .dot {
      width: 11px;
      height: 11px;
    }

    .dot.active {
      transform: scale(1.4);
    }
  }


    @media (max-width: 480px){
      .dot {
      width: 10px;
      height: 10px;
    }
  }
  /* HIDDEN CONTAINER */
  #extraAccordions {
    height: 0;
    overflow: hidden;
    transition: height 0.5s ease;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    align-items: center;
    width: 100%;
  }

  #extraAccordions.show {
    height: auto;
  }

      /* Reduced top padding */
    .spt-30 {
      padding: 30px 0;
    }

    .text-blue {
      color: #1184db;
    }
    .db {
      display: block;
    }

    /* Larger, bolder title */
    .cert-title {
      font-size: 2.8rem !important;
      font-weight: 800 !important;
      line-height: 1.2;
      text-align: center;
      margin-bottom:15px;
    }

    /* 3D Viewer Container */
    .cert-3d-container {
      position: relative;
      width: 100%;
      height: 560px;
      perspective: 1800px;
      overflow: hidden;
      border-radius: 22px;
      background: rgba(255, 255, 255, 1);
      cursor: default;
      user-select: none;
    }

    .cert-scene {
      position: absolute;
      width: 100%;
      height: 80%;
      transform-style: preserve-3d;
      transition: transform 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
    }

    .cert-face {
      position: absolute;
      top: 50%;
      left: 50%;
      width: 50%;
      box-shadow: 0 30px 70px rgba(0, 0, 0, 0.28);
      backface-visibility: hidden;
      transform: translate(-50%, -50%);
    }

    .cert-front {
      transform: translate(-50%, -50%) rotateY(0deg);
    }

    .cert-back {
      transform: translate(-50%, -50%) rotateY(180deg);
    }

    /* Drag Arrow - Only during drag */
    .drag-arrow {
      position: absolute;
      width: 54px;
      height: 54px;
      background: rgba(17, 132, 219, 0.95);
      color: white;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: var(--h5-size);
      font-weight: bold;
      z-index: 20;
      opacity: 0;
      pointer-events: none;
      box-shadow: 0 6px 18px rgba(0, 0, 0, 0.35);
      transition: opacity 0.3s;
    }
    .drag-arrow.active {
      opacity: 1;
    }
    .drag-arrow::after {
      content: "Drag to rotate";
      position: absolute;
      top: 100%;
      left: 50%;
      transform: translateX(-50%);
      margin-top: 10px;
      font-size: 12px;
      background: rgba(0, 0, 0, 0.85);
      color: white;
      padding: 5px 10px;
      border-radius: 6px;
      white-space: nowrap;
    }

    /* Flip Buttons with Font Awesome */
    .flip-btn {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      width: 56px;
      height: 56px;
      background: rgba(17, 132, 219, 0.92);
      color: white;
      border: none;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 26px;
      z-index: 25;
      cursor: pointer;
      box-shadow: 0 6px 18px rgba(0, 0, 0, 0.35);
      transition: all 0.2s ease;
    }
    .flip-btn:hover {
      background: #0d6efd;
      transform: translateY(-50%) scale(1.12);
    }
    .flip-btn.left {
      left: 218px;
    }
    .flip-btn.right {
      right: 218px;
    }

    /* Mobile */
    @media (max-width: 768px) {
      .cert-3d-container {
        height: 400px;
      }
      .cert-face {
        width: 96%;
        max-width: 400px;
      }
      .cert-title {
        font-size: 2.2rem !important;
      }
      .flip-btn {
        top:350px;
        width: 48px;
        height: 48px;
        font-size: var(--h5-size);
      }
      .drag-arrow {
        width: 48px;
        height: 48px;
        font-size: var(--h6-size);
      }
    }

    /* "Online Degree" → White text with yellow underline to match reference */
.online-degree-highlight {
    color: #FFFFFF !important;
    border-bottom: 4px solid #FFD700;
    display: inline-block;
    padding-bottom: 2px;
}




@keyframes bounce {
    0%, 20%, 50%, 80%, 100% { transform: translateX(-50%) translateY(0); }
    40% { transform: translateX(-50%) translateY(-15px); }
    60% { transform: translateX(-50%) translateY(-8px); }
}

@keyframes scrollWheel {
    0% { opacity: 1; top: 8px; }
    100% { opacity: 0; top: 25px; }
}



/* ============== ALL CSS FOR TESTIMONIALS SECTION + MODAL ============== */


/* ==================== FACULTY CARD ==================== */
.faculty-card { 
    position:relative;
    padding:30px 30px 80px;
    box-shadow:0 10px 30px rgba(0,0,0,0.18);
    border-radius:24px;
    overflow:hidden;
    min-width:340px;
    margin:0 10px;
    background:linear-gradient(135deg,#667eea,#764ba2);
    background-image:url('images/faculty.png');
    background-size:cover;
    background-position:bottom right; 
}

.faculty-link { 
    position:absolute;
    bottom:22px;
    left:30px;
    z-index:10;
    padding:14px 32px;
    background:linear-gradient(45deg,#007bff,#0056b3);
    color:white;
    border-radius:50px;
    font-weight:700;
    box-shadow:0 6px 20px rgba(0,123,255,0.4);
    transition:all .3s; 
}

.faculty-link:hover { 
    transform:translateY(-4px);
    box-shadow:0 12px 30px rgba(0,123,255,0.6); 
}

.faculty-link::after { 
    content:" →"; 
}

/* ==================== FACULTY MODAL ==================== */
.faculty-modal { 
    display:none;
    position:fixed;
    inset:0;
    z-index:9999;
    justify-content:center;
    align-items:center;
    padding:20px; 
}

.modal-content { 
    position:relative;
    width:95%;
    max-width:900px;
    border-radius:22px;
    overflow:hidden;
    box-shadow:0 15px 50px rgba(0,0,0,0.35);
    animation:modalPop .35s ease-out;
    background:#fff; 
}

@keyframes modalPop { 
    from{transform:scale(.1);opacity:0} 
    to{transform:scale(1);opacity:1} 
}

.modal-bg { 
    background:url('images/faculty.png') center/cover no-repeat;
    position:absolute;
    inset:0;
    opacity:0.25;
    z-index:1; 
}

.modal-inner { 
    position:relative;
    z-index:2;
    display:flex;
    gap:30px;
    padding:40px;
    backdrop-filter:blur(5px); 
}

.modal-left img { 
    width:200px;
    height:400px;
    object-fit:cover;
    border-radius:14px;
    border:5px solid #fff; 
}

.modal-name { 
    font-size: var(--h2-size);
    font-weight:800;
    color:#0a1d37;
    margin-bottom:15px; 
}

.modal-qual { 
    font-size: var(--h3-size);
    font-weight:600;
    color:#0a1d37;
    margin-bottom:15px; 
}

.modal-bio { 
    font-size: var(--small-text-size);
    line-height:1.6;
    color:#1a1a1a;
    text-align:justify; 
}

.modal-close { 
    position:absolute;
    top:15px;
    right:15px;
    width:45px;
    height:45px;
    background:#ff4444;
    color:white;
    border-radius:50%;
    font-size: var(--h3-size);
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    z-index:100; 
}

.modal-close:hover { 
    background:#c70000;
    transform:scale(1.1); 
}

/* ==================== RESPONSIVE (MOBILE FIX ADDED) ==================== */
@media (max-width: 900px) {
    .modal-content {
        max-height: 600px;                    /* NEW: Limit height */
        overflow-y: auto;                     /* NEW: Enable scrolling */
        -webkit-overflow-scrolling: touch;    /* Smooth iOS scroll */
    }
    
    .modal-inner {
        gap:20px;
        padding:30px;
    }
    .modal-left img {
        width:150px;
        height:150px;
    }
}

@media (max-width: 600px) {
    .modal-content {
        max-height: 600px;                    /* Enforced on phones too */
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }

    .modal-inner {
        flex-direction:column;
        text-align:center;
        padding:25px;
    }
    .modal-left img {
        width:160px;
        height:160px;
    }
}

/* ==================== PREVENT ACCIDENTAL SELECTION IN CAROUSEL ==================== */
.faculty-carousel,
.faculty-carousel * {
    user-select: none !important;
    -webkit-user-select: none !important;
    -webkit-touch-callout: none !important;
    touch-action: pan-x !important;        
    -ms-touch-action: pan-x !important;
}

/* Allow text selection inside the modal (bio, name, etc.) */
.faculty-modal {
    user-select: text !important;
    -webkit-user-select: text !important;
}


   

/* ===== MINIMAL SPACING BETWEEN SECTIONS IN INDEX.PHP ===== */

/* Minimal section margins and padding */
.hero-section,
.about-dsu-section,
.testi-section,
.dsu-story-section,
.dsu-awards-section,
.programs-section,
.features-swiper-2025,
.career-section,
.clients-section,
.informed,
.spt-30 {
    margin: var(--small-margin) 0 !important;
    padding: var(--section-padding) var(--element-margin) !important;
}

/* Minimal spacing for containers */
.about-container,
.dsu-story-container,
.dsu-awards-container,
.container,
.career-container {
    margin: 0 auto !important;
    padding: var(--content-padding) var(--element-margin) !important;
}

/* Minimal spacing for headers and titles */
.section-header,
.dsu-faq__title,
.cert-title,
.career-title,
.dsu-awards-title {
    margin: var(--element-margin) 0 !important;
}

/* Minimal spacing for content areas */
.hero-content-wrapper,
.about-text,
.about-image-wrapper,
.testi-sub,
.dsu-logos,
.dsu-story-grid,
.programs-grid,
.career-card,
.clients-slider,
.ahead-slider,
.cert-3d-container,
.dsu-faq__accordion {
    margin: var(--small-margin) 0 !important;
    padding: var(--content-padding) 0 !important;
}

/* Minimal spacing for specific elements */
.tag,
.badge,
.career-badge {
    margin: var(--small-margin) 0 !important;
}

/* Override utility classes with minimal spacing */
.mt-0, .mt-1, .mt-2, .mt-3, .mt-4, .mt-5,
.mb-0, .mb-1, .mb-2, .mb-3, .mb-4, .mb-5,
.pt-0, .pt-1, .pt-2, .pt-3, .pt-4, .pt-5,
.pb-0, .pb-1, .pb-2, .pb-3, .pb-4, .pb-5,
.spt-30, .spt-60, .spb-60 {
    margin: var(--small-margin) 0 !important;
    padding: var(--content-padding) 0 !important;
}

/* Minimal gaps for flex and grid containers */
.dsu-story-grid,
.programs-grid,
.dsu-logos {
    gap: var(--element-margin) !important;
}

/* Minimal spacing for swiper containers */
.swiper,
.features-swiper-2025,
.clientSwiper,
.aheadSwiper {
    margin: var(--small-margin) 0 !important;
    padding: var(--content-padding) 0 !important;
}

/* ===== FIX SPECIFIC SPACING ISSUES IN INDEX.PHP ===== */

/* Remove large gap after awards section and before programs section */
.dsu-awards-section + .programs-section,
.programs-section {
    margin-top: 0 !important;
    padding-top: var(--small-margin) !important;
}


.informed {
    margin-top: 0 !important;
    padding-top: var(--small-margin) !important;
}

.informed.pt-3 {
    padding-top: var(--small-margin) !important;
}


.dsu-faq {
    text-align: center !important;
}

.dsu-faq .dsu-faq__container {
    text-align: center !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
}

.dsu-faq .dsu-faq__title {
    text-align: center !important;
}

.dsu-faq .dsu-faq__accordion {
    text-align: center !important;
    align-items: center !important;
}

.dsu-faq .dsu-accordion-item {
    text-align: left !important;
    max-width: 900px !important;
    margin: 0 auto var(--element-margin) auto !important;
}

.dsu-faq .dsu-read-more {
    margin: var(--section-margin) auto 0 auto !important;
    display: block !important;
}

/* Additional fixes for consistent spacing */
.divider {
    display: none !important;
}

/* Ensure no extra spacing from utility classes */
.mt-4, .mt-5, .pt-2, .pt-3 {
    margin-top: var(--small-margin) !important;
    padding-top: var(--small-margin) !important;
}

/* Fix any remaining large gaps */
section + section {
    margin-top: var(--small-margin) !important;
}
/* ===== FIX ADDITIONAL ALIGNMENT & SPACING ISSUES ===== */

/* Center "Real experiences from working professionals..." text */
.testi-sub {
    text-align: center !important;
    margin: 0 auto !important;
    padding: var(--content-padding) var(--element-margin) !important;
}

/* Center "Our Academic Strength" section content */
.dsu-story-section {
    text-align: center !important;
}

.dsu-story-section .dsu-story-container {
    text-align: center !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
}

.dsu-story-section .story-title {
    text-align: center !important;
}

.dsu-story-section .dsu-logos {
    justify-content: center !important;
    text-align: center !important;
}

/* Mobile specific override for dsu-logos in story section */
@media (max-width: 768px) {
    .dsu-story-section .dsu-logos {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 20px !important;
        flex-wrap: wrap !important;
    }
    
    .dsu-story-section .dsu-logo-box {
        flex: 0 0 calc(50% - 15px) !important;
        max-width: calc(50% - 15px) !important;
        min-width: 140px !important;
    }
}

/* Extra small mobile devices - ensure 2 logos per line */
@media (max-width: 480px) {
    .dsu-logos {
        display: flex !important;
        flex-direction: row !important;
        justify-content: space-around !important;
        align-items: center !important;
        gap: 10px !important;
        padding: 0 10px !important;
    }
    
    .dsu-logo-box {
        flex: 0 0 calc(50% - 8px) !important;
        max-width: calc(50% - 8px) !important;
        min-width: 100px !important;
        padding: 6px 8px !important;
    }
    
    .dsu-logo-box img {
        height: 40px !important;
        width: auto !important;
        max-width: 100% !important;
    }
}
   

.dsu-story-section .dsu-story-grid {
    justify-content: center !important;
    text-align: center !important;
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
}

/* Remove spacing before "Find Your Path Programs Offered" */
.programs-section {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

.programs-section .section-header {
    margin-top: 0 !important;
    padding-top: var(--content-padding) !important;
}

/* Keep " Services" centered */
.clients-section {
    text-align: center !important;
}

.clients-section .container {
    text-align: center !important;
}

.clients-section .row {
    text-align: center !important;
    justify-content: center !important;
}

.clients-section .col-lg-8,
.clients-section .col-lg-4,
.clients-section .col-md-6 {
    text-align: center !important;
}

.clients-section .button-box {
    text-align: center !important;
}

.clients-section .banner-btn {
    display: inline-block !important;
    margin: 0 auto !important;
}

/* Override original FAQ section to center entire section */
.dsu-faq {
    padding: var(--section-padding) 1rem var(--content-padding) !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 auto !important;
    background: linear-gradient(135deg, #f8f9fa 0%, #ffffff 50%, #f8f9fa 100%) !important;
    text-align: center !important;
    position: relative !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    border-top: 1px solid #e9ecef !important;
    border-bottom: 1px solid #e9ecef !important;
}

.dsu-faq__container {
    max-width: 1000px !important;
    margin: 0 auto !important;
    padding: var(--section-padding) 1rem !important;
    text-align: center !important;
    width: 100% !important;
}

.dsu-faq__title {
    font-size: var(--h2-size) !important;
    font-weight: 700 !important;
    text-align: center !important;
    margin: 0 auto var(--section-margin) auto !important;
    color: var(--text-dark) !important;
    background: linear-gradient(135deg, var(--primary-sky-blue), var(--dark-sky-blue)) !important;
    background-clip: text !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    padding: 20px 40px !important;
    border-radius: 12px !important;
    display: inline-block !important;
    width: fit-content !important;
    position: relative !important;
}

.dsu-faq__title::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background: linear-gradient(135deg, rgba(0, 119, 190, 0.05), rgba(10, 29, 55, 0.05)) !important;
    border-radius: 12px !important;
    z-index: -1 !important;
}

.dsu-faq__title span {
    color: var(--secondary-yellow) !important;
    -webkit-text-fill-color: var(--secondary-yellow) !important;
}

.dsu-faq__accordion {
    margin-top: var(--content-padding) !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 1rem !important;
    width: 100% !important;
    max-width: 900px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.dsu-faq .dsu-accordion-item {
    width: 100% !important;
    max-width: 850px !important;
    margin: 0 auto 20px auto !important;
    background: linear-gradient(135deg, var(--primary-sky-blue) 0%, var(--dark-sky-blue) 100%) !important;
    border-radius: 20px !important;
    text-align: left !important;
    border: 2px solid rgba(255, 255, 255, 0.1) !important;
    box-shadow: 0 8px 32px rgba(0, 119, 190, 0.15), 0 2px 8px rgba(0, 0, 0, 0.1) !important;
    overflow: hidden !important;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
    position: relative !important;
}

.dsu-faq .dsu-accordion-item::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 3px !important;
    background: linear-gradient(90deg, var(--secondary-yellow), #ffd700, var(--secondary-yellow)) !important;
    z-index: 1 !important;
}

.dsu-faq .dsu-accordion-item:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 12px 48px rgba(0, 119, 190, 0.25), 0 4px 16px rgba(0, 0, 0, 0.15) !important;
}

.dsu-faq .dsu-accordion-button {
    background: transparent !important;
    color: #ffffff !important;
    border: none !important;
    padding: 24px 28px !important;
    position: relative !important;
    z-index: 2 !important;
}

.dsu-faq .dsu-accordion-button__number {
    color: var(--secondary-yellow) !important;
    font-weight: 800 !important;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.2) !important;
}

.dsu-faq .dsu-accordion-button__text {
    color: #ffffff !important;
    font-weight: 600 !important;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.1) !important;
}

.dsu-faq .dsu-accordion-button::after {
    color: var(--secondary-yellow) !important;
    font-weight: 600 !important;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.2) !important;
}

.dsu-faq .dsu-accordion-body {
    background: rgba(255, 255, 255, 0.05) !important;
    color: #ffffff !important;
    padding: 0 28px !important;
    border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
    backdrop-filter: blur(10px) !important;
}

.dsu-faq .dsu-accordion-item.active .dsu-accordion-body {
    padding: 20px 28px 28px 28px !important;
}

.dsu-faq .dsu-read-more {
    display: block !important;
    margin: var(--section-margin) auto 0 auto !important;
    text-align: center !important;
    background: var(--secondary-yellow) !important;
    color: var(--text-dark) !important;
}

/* Additional centering for FAQ extra accordions */
#dsu-extra-accordions {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    width: 100% !important;
}

#dsu-extra-accordions .dsu-accordion-item {
    width: 100% !important;
    max-width: 850px !important;
    margin: 0 auto var(--element-margin) auto !important;
}
/* ===== ELIMINATE THE VISIBLE GAP BETWEEN AWARDS AND PROGRAMS ===== */

/* Force remove all spacing between awards and programs sections */
.dsu-awards-section {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

.dsu-awards-section + .programs-section {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

.programs-section {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Remove any container spacing that might cause the gap */
.dsu-awards-container {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

.programs-section .container {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Remove spacing from the section header */
.programs-section .section-header {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Force adjacent sections to have no gap */
section.dsu-awards-section + section.programs-section {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* ===== MOBILE-SPECIFIC FIXES (6 ISSUES) ===== */
@media (max-width: 768px) {
    /* 1. Navbar logo fix is now in header.php */
    
    /* 2. Keep trust badges in original position */
    .trust-badges-top {
        top: 10% !important;
        margin-top: 15px !important;
        padding-top: 0 !important;
    }
    
    /* 3. Remove spacing above "Our Academic Strength" section */
    .dsu-story-section {
        margin-top: 0 !important;
        padding-top: 10px !important;
    }
    
    /* 4. Add background for "Awards and Recognition" section to match other titles */
    .dsu-awards-section {
        background: #f8fbff !important;
        padding: 40px 20px !important;
    }
    
    .dsu-awards-title {
        background: #0077BE !important;
        color: #ffffff !important;
        display: inline-block !important;
        padding: 20px 50px !important;
        border-radius: 12px !important;
        box-shadow: 0 4px 15px rgba(0, 119, 190, 0.3) !important;
        position: relative !important;
        font-size: var(--h3-size) !important;
        margin-bottom: 30px !important;
    }
    
    .dsu-awards-title::after {
        display: none !important;
    }
    
    /* 5. Make "Programs Offered" section responsive */
    .programs-section {
        padding: 40px 15px !important;
    }
    
    .programs-grid {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
        max-width: 100% !important;
        padding: 0 10px !important;
    }
    
    .program-card-new {
        max-width: 100% !important;
        margin: 0 auto !important;
    }
    
    /* 6. Add padding to paragraph in "Shaping Futures" section */
    .about-dsu-section .desc {
        padding: 0 15px !important;
        margin: 0 0 1.2rem 0 !important;
    }
    
    .about-text {
        padding: 0 15px !important;
    }
}

/* Remove any default browser spacing */
.dsu-awards-section,
.programs-section {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Override any conflicting styles */
.dsu-awards-section *,
.programs-section * {
    margin-top: 0 !important;
}

/* Specific fix for the scrolling wrapper that might add space */
.scrolling-wrapper {
    margin: 0 !important;
    padding: 0 !important;
}

/* Remove any line-height or other spacing that could cause gaps */
.dsu-awards-section,
.programs-section {
    line-height: 1 !important;
    font-size: 0 !important;
}

.dsu-awards-section > *,
.programs-section > * {
    font-size: initial !important;
    line-height: initial !important;
}
/* ===== FIX SPACING ABOVE BLOGS SECTION ===== */


section.clients-section + section.informed {
    margin-top: 0 !important;
    padding-top: 0 !important;
}


.clients-section {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

.container-fluid.p-0.mt-5 {
    margin-top: 0 !important;
}

/* Remove any margin from the blogs section container */
.informed.pt-3.spb-60 {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

.informed + .spt-30 {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

.spt-30 {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Target the specific certificate section */
section.spt-30[style*="background:white"] {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Remove spacing from the certificate container */
.spt-30 .container {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Remove spacing from the certificate row */
.spt-30 .row {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Force no gap between blogs and certificate sections */
section.informed + section.spt-30 {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Remove any utility class spacing */
.spt-30.spb-60 {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Override any inline styles that might add spacing */
section[style*="background:white"] {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Ensure the blogs section doesn't add bottom spacing */
.informed {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

.informed .ahead-slider {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* Remove spacing from certificate title */
.cert-title {
    margin-top: 0 !important;
    padding-top: 0 !important;
}
/* ===== CENTER MBA FEES STRUCTURE SECTION ===== */

/* Center the entire fees section */
.pgm-learning-sys {
    text-align: center !important;
}

.pgm-learning-sys .container {
    text-align: center !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
}

/* Center the fees heading */
.fees-main-heading {
    text-align: center !important;
    margin: 0 auto !important;
}

/* Center the fees table wrapper */
.fees-table-wrapper {
    text-align: center !important;
    margin: 0 auto !important;
    display: flex !important;
    justify-content: center !important;
}

/* Center the actual fees table */
.fees-table-official {
    margin: 0 auto !important;
    text-align: center !important;
}

.fees-table-official th,
.fees-table-official td {
    text-align: center !important;
}

/* Center the apply button */
.fees-apply-btn {
    display: block !important;
    margin: var(--section-margin) auto 0 auto !important;
    text-align: center !important;
}

/* Additional centering for the entire section content */
.pgm-learning-sys * {
    text-align: center !important;
}

/* Override any left alignment */
.fees-table-official td:first-child {
    text-align: center !important;
}

.fees-table-official td:last-child {
    text-align: center !important;
}
/* ===== REVERT APPLY NOW BUTTON TO NORMAL SIZE ===== */

/* Reset the apply button to its original size */
.fees-apply-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 12px !important;
    background: #ffc107 !important;
    color: #1a1a1a !important;
    font-weight: 700 !important;
    font-size: var(--body-text) !important;
    padding: 14px 36px !important;
    border-radius: 50px !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    letter-spacing: 0.8px !important;
    box-shadow: 0 8px 25px rgba(255,193,7,0.4) !important;
    transition: all 0.4s ease !important;
    margin: var(--section-margin) auto 0 auto !important;
    width: auto !important;
    max-width: none !important;
    min-width: auto !important;
}

.fees-apply-btn:hover {
    background: #ffca2c !important;
    transform: translateY(-4px) !important;
    box-shadow: 0 15px 35px rgba(255,193,7,0.5) !important;
    color: #1a1a1a !important;
}

/* Reset arrow icon to normal size */
.fees-apply-btn .arrow-aftr-btn {
    width: 22px !important;
    height: 22px !important;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%231a1a1a'%3E%3Cpath d='M0 0h24v24H0z' fill='none'/%3E%3Cpath d='M12 4l-1.41 1.41L16.17 11H4v2h12.17l-5.58 5.59L12 20l8-8z'/%3E%3C/svg%3E") center/contain no-repeat !important;
    transition: transform 0.3s ease !important;
}

.fees-apply-btn:hover .arrow-aftr-btn {
    transform: translateX(8px) !important;
}

/* Responsive sizing for mobile */
@media (max-width: 768px) {
    .fees-apply-btn {
        padding: 12px 30px !important;
        font-size: var(--body-text) !important;
        margin-left: 0px !important;
    }
}

@media (max-width: 576px) {
    .fees-apply-btn {
        padding: 11px 26px !important;
        font-size: var(--small-text-size) !important;
        margin-left: 0px !important;
    }
}
/* ===== REMOVE SPACING BEFORE "How to Apply: A Step-by-Step Guide" ===== */

/* Remove spacing above the how-to-apply section */
.how-to-apply {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Remove spacing from the previous section that might cause gap */
.pgm-learning-sys + .how-to-apply {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Force no gap between fees section and how-to-apply section */
section.pgm-learning-sys + section.how-to-apply {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Remove spacing from the container */
.how-to-apply .container {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Remove spacing from the section title */
.how-to-apply .section-title {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Ensure the fees section doesn't add bottom spacing */
.pgm-learning-sys {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* Remove any utility class spacing */
.how-to-apply[style*="padding"] {
    padding-top: 0 !important;
}

/* Override any default section spacing */
.how-to-apply {
    background: #fff !important;
    margin: 0 !important;
    padding: 0 var(--element-margin) !important;
}

/* Remove spacing from steps wrapper */
.how-to-apply .steps-wrapper {
    margin-top: 0 !important;
    padding-top: 0 !important;
}