/* Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@300;400;500;600;700&display=swap');

:root {
    --primary-color: #275160;
    /* Dark Navy */
    --secondary-color: #852341;
    /* --accent-color: #d4af37;  */
    /* Professional Gold */
    --accent-color: #d4af37;
    /* Professional Gold */
    --text-color: #333333;
    --light-gray: #f8f9fa;
    --white: #ffffff;
    --glass-background: rgba(255, 255, 255, 0.8);
    --transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    --font-heading: 'Outfit', sans-serif;
    --font-body: 'Inter', sans-serif;
    --shadow-soft: 0 4px 30px rgba(0, 0, 0, 0.1);
    --pri: #275160;
    --pri-d: #1a3a47;
    --pri-l: #3d849e;
    --sec: #852341;
    --gold: #d4af37;
    --gold-l: #f5d66a;
    --cream: #fffdf5;
    --bg: #f2f6f8;
    --white: #ffffff;
    --text: #2a2a2a;
    --muted: #6b7a8d;
    --rad-xl: 24px;
    --rad-lg: 16px;
    --rad-md: 10px;
    --shadow-sm: 0 2px 16px rgba(39, 81, 96, .07);
    --shadow-md: 0 8px 40px rgba(39, 81, 96, .12);
    --transition: all .3s cubic-bezier(.4, 0, .2, 1);
    --gt-pri: #275160;
    --gt-pri-d: #1a3a47;
    --gt-pri-l: #3d849e;
    --gt-sec: #852341;
    --gt-gold: #d4af37;
    --gt-gold-l: #f5d66a;
    --gt-bg: #f2f6f8;
    --gt-white: #ffffff;
    --gt-text: #2a2a2a;
    --gt-muted: #6b7a8d;
    --gt-rad-xl: 24px;
    --gt-rad-lg: 16px;
    --gt-rad-md: 10px;
    --gt-sh-sm: 0 2px 16px rgba(39, 81, 96, .07);
    --gt-sh-md: 0 8px 40px rgba(39, 81, 96, .13);
    --gt-tr: all .3s cubic-bezier(.4, 0, .2, 1);
    --ss-pri: #275160;
    --ss-pri-d: #1a3a47;
    --ss-pri-l: #3d849e;
    --ss-sec: #852341;
    --ss-gold: #d4af37;
    --ss-gold-l: #f5d66a;
    --ss-bg: #f2f6f8;
    --ss-white: #ffffff;
    --ss-text: #2a2a2a;
    --ss-muted: #6b7a8d;
    --ss-rad-xl: 24px;
    --ss-rad-lg: 16px;
    --ss-rad-md: 10px;
    --ss-sh-sm: 0 2px 16px rgba(39, 81, 96, .07);
    --ss-sh-md: 0 10px 44px rgba(39, 81, 96, .13);
    --ss-tr: all .32s cubic-bezier(.4, 0, .2, 1);
    /* Service accent colours */
    --ss-adv: #275160;
    /* teal  – Advising */
    --ss-csl: #852341;
    /* rose  – Counseling */
    --ss-lib: #5044a0;
    /* indigo– E-Library */
    --ss-tech: #1e7a5a;
    /* green – Tech */
    --ss-car: #b8922a;
    /* amber – Career */
    --sap-pri: #275160;
    --sap-pri-d: #1a3a47;
    --sap-pri-l: #3d849e;
    --sap-sec: #852341;
    --sap-gold: #d4af37;
    --sap-gold-l: #f5d66a;
    --sap-bg: #f2f6f8;
    --sap-white: #ffffff;
    --sap-text: #2a2a2a;
    --sap-muted: #6b7a8d;
    --sap-rad-xl: 24px;
    --sap-rad-lg: 16px;
    --sap-rad-md: 10px;
    --sap-sh-sm: 0 2px 16px rgba(39, 81, 96, .07);
    --sap-sh-md: 0 10px 44px rgba(39, 81, 96, .13);
    --sap-tr: all .32s cubic-bezier(.4, 0, .2, 1);
    /* accent palette */
    --sap-quant: #1e5e8a;
    /* blue  – quantitative */
    --sap-qual: #4e3590;
    /* violet – qualitative */
    --sap-grad: #275160;
    /* teal  – graduate */
    --sap-ug: #852341;
    /* rose  – undergrad */
    --sap-eval: #1e7a5a;
    /* green – evaluation */
    --sap-mtf: #b8922a;
    /* amber – timeframe */
    --sap-cog: #5a3000;
    /* brown – grade change */
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

a {
    text-decoration: none;
}

body {
    font-family: var(--font-body);
    background-color: var(--light-gray);
    color: var(--text-color);
    line-height: 1.6;
}

.text-color-primary {
    color: var(--primary-color) !important;
}


.text-color-secondary {
    color: var(--secondary-color) !important;
}

.bg-color-accent {
    background-color: var(--accent-color) !important;
}

.text-color-accent {
    color: var(--accent-color) !important;
}

.bg-color-primary {
    background-color: var(--primary-color);
}

.bg-color-secondary {
    background-color: var(--secondary-color) !important;
}

/* Navbar Premium Styling */
.premium-navbar {
    background: var(--white);
    position: sticky;
    /* top: 0; */
    z-index: 1000;
    box-shadow: var(--shadow-soft);
    transition: var(--transition);
}

@media only screen and (max-with: 992px) {
    .premium-navbar {
        position: static;
    }
}

.navbar-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
    padding-bottom: 0.8rem;
}

.logos-container {
    display: flex;
    align-items: center;
    gap: 20px;
}

.logo-main {
    height: 60px;
    /* object-fit: contain; */
}

.logo-affiliate {
    height: 40px;
    border-left: 1px solid #ddd;
    padding-left: 20px;
}

.search-bar-container {
    flex: 0 1 400px;
    position: relative;
}

@media only screen and (max-width: 992px) {
    .search-bar-container {
        flex: 0 1 80%;
    }

    .d-search-cont {
        display: none !important;
    }

    /* .search-bar-container{
        width: 80%;
    } */
}

.unique-search {
    width: 100%;
    padding: 12px 20px 12px 45px;
    border-radius: 50px;
    border: 1px solid #e0e0e0;
    background: #f1f3f5;
    font-family: var(--font-body);
    font-size: 0.95rem;
    transition: var(--transition);
}

.unique-search:focus {
    outline: none;
    border-color: var(--accent-color);
    background: var(--white);
    box-shadow: 0 0 0 4px rgba(212, 175, 55, 0.1);
}

.search-icon {
    position: absolute;
    left: 18px;
    top: 50%;
    transform: translateY(-50%);
    color: #888;
    transition: var(--transition);
}

.unique-search:focus+.search-icon {
    color: var(--accent-color);
}

.auth-links {
    display: flex;
    gap: 15px;
}

.btn-premium {
    padding: 8px 22px;
    border-radius: 6px;
    font-weight: 500;
    text-decoration: none;
    transition: var(--transition);
    border: 1px solid transparent;
}

.btn-login {
    color: var(--primary-color);
    background: transparent;
}

.btn-register {
    background: var(--primary-color);
    color: var(--white);
}

.btn-register:hover {
    background: var(--accent-color);
    transform: translateY(-2px);
}

/* Bottom Navigation Nav */

@media (min-width: 992px) {
    .border-bottom-lg {
        border-bottom: 1px solid rgba(0, 0, 0, 0.05);
    }
}

/* =========================
   NAV BASE
========================= */

.nav-links {
    list-style: none;
    margin: 0;
    padding: 0;
}

.nav-link {
    text-decoration: none;
    color: var(--primary-color) !important;
    font-weight: 500;
    font-family: var(--font-heading);
    font-size: 1.05rem;
    transition: var(--transition);
}

.nav-link:hover,
.nav-link.active {
    color: var(--secondary-color) !important;
}

/* =========================
   SIMPLE DROPDOWN (DESKTOP)
========================= */

@media (min-width: 992px) {

    .has-dropdown .dropdown-menu {
        display: none;
    }

    .has-dropdown:hover>.dropdown-menu {
        display: block;
        animation: fadeIn 0.15s ease-in forwards;
    }

    .has-dropdown .nav-link.dropdown-toggle::after {
        transition: var(--transition);
    }

    .has-dropdown:hover .nav-link.dropdown-toggle::after {
        transform: rotate(180deg);
    }
}

/* =========================
   DROPDOWN STYLE
========================= */

.dropdown-menu {
    border-radius: 8px;
    padding: 10px 0;
    background: var(--white);
    border: none;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);
    transition: var(--transition);
}

.dropdown-item {
    padding: 8px 20px;
    color: var(--primary-color);
    font-size: 0.95rem;
    font-family: var(--font-body);
    font-weight: 500;
    transition: var(--transition);
}

.dropdown-item:hover {
    background: var(--light-gray);
    color: var(--secondary-color);
    padding-left: 25px;
}

/* =========================
   2ND / 3RD LEVEL SUBMENU
========================= */

.dropdown-submenu {
    position: relative;
}

.dropdown-submenu>.dropdown-menu {
    display: none;
    position: absolute;
    top: 0;
    left: 100%;
    margin-left: 5px;
    min-width: 200px;
}

@media (min-width: 992px) {
    .dropdown-submenu:hover>.dropdown-menu {
        display: block;
        animation: fadeIn 0.15s ease-in forwards;
    }
}

/* =========================
   MEGA MENU (HARVARD STYLE FIXED)
========================= */

.has-mega {
    position: static;
}

/* hidden */
.mega-menu {
    display: none;
    position: absolute;
    left: 0;
    top: 90%;
    width: 100%;
    background: #fff;
    z-index: 9999;
    border-top: 3px solid var(--secondary-color);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}

/* show on hover */
@media (min-width: 992px) {
    .has-mega:hover>.mega-menu {
        display: block;
        animation: fadeIn 0.2s ease-in-out;
    }
}

/* prevent dropdown conflict inside mega */
.has-mega .dropdown-menu {
    display: none !important;
}

/* =========================
   MEGA CONTENT
========================= */

.mega-title {
    font-size: 0.9rem;
    font-weight: 700;
    color: var(--primary-color);
    margin-bottom: 12px;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.08);
    padding-bottom: 6px;
}

.mega-link {
    display: block;
    padding: 6px 0;
    color: var(--primary-color);
    text-decoration: none;
    font-size: 0.95rem;
    transition: 0.2s ease;
}

.mega-link:hover {
    color: var(--secondary-color);
    transform: translateX(6px);
}

.mega-link.highlight {
    font-weight: 600;
    color: var(--secondary-color);
}

/* =========================
   ANIMATION
========================= */

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(12px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* =========================
   MOBILE FIXES
========================= */

@media (max-width: 991px) {

    /* dropdown becomes accordion style */
    .dropdown-menu {
        position: static;
        display: none;
        box-shadow: none;
        border: none;
        background: transparent;
        padding-left: 1rem;
        border-left: 2px solid var(--secondary-color);
    }

    .dropdown-menu.show {
        display: block;
    }

    .dropdown-submenu>.dropdown-menu {
        position: static;
        margin-left: 1rem;
    }

    /* mega menu mobile */
    .mega-menu {
        position: static;
        display: none;
        box-shadow: none;
        border: none;
        padding: 0;
    }

    .has-mega.open .mega-menu {
        display: block;
    }
}

/* =========================
   SMALL POLISH
========================= */

@media (min-width: 992px) {
    .border-bottom-lg {
        border-bottom: 1px solid rgba(0, 0, 0, 0.05);
    }
}

.nav-links {
    gap: 0.5rem;
}

/* =========================================
   Modern Premium Hero Section Styling
   ========================================= */
.modern-hero {
    background-color: var(--white);
    background-image:
        radial-gradient(circle at 100% 0%, rgba(39, 81, 96, 0.03) 0%, transparent 50%),
        radial-gradient(circle at 0% 100%, rgba(212, 175, 55, 0.05) 0%, transparent 50%);
    position: relative;
    overflow: hidden;
    padding-top: 3rem;
    padding-bottom: 3rem;
}

@media (min-width: 992px) {
    .min-vh-lg-90 {
        min-height: 90vh;
    }
}

.text-navy {
    color: var(--primary-color) !important;
}

.text-gold {
    color: var(--accent-color) !important;
}

/* Badge */
.badge-premium-modern {
    background: rgba(39, 81, 96, 0.05);
    color: var(--primary-color);
    padding: 8px 16px;
    border-radius: 50px;
    font-family: var(--font-body);
    font-size: 0.85rem;
    border: 1px solid rgba(39, 81, 96, 0.1);
}

.pulse-dot {
    width: 8px;
    height: 8px;
    background-color: var(--accent-color);
    border-radius: 50%;
    display: inline-block;
    box-shadow: 0 0 0 rgba(212, 175, 55, 0.4);
    animation: pulse 2s infinite;
}

@keyframes pulse {
    0% {
        box-shadow: 0 0 0 0 rgba(212, 175, 55, 0.4);
    }

    70% {
        box-shadow: 0 0 0 10px rgba(212, 175, 55, 0);
    }

    100% {
        box-shadow: 0 0 0 0 rgba(212, 175, 55, 0);
    }
}

.tracking-wider {
    letter-spacing: 0.05em;
}

/* Typography Enhancements */
.hero-headline-modern {
    font-family: var(--font-heading);
    font-size: clamp(3rem, 5vw, 4.5rem);
    letter-spacing: -1px;
    line-height: 1.1;
}

.hero-text-modern {
    font-size: 1.15rem;
    line-height: 1.7;
    font-weight: 300;
}

/* Buttons */
.btn-primary-modern {
    background: var(--primary-color);
    color: var(--white);
    padding: 14px 32px;
    border-radius: 8px;
    font-weight: 500;
    text-decoration: none;
    transition: var(--transition);
    display: inline-flex;
    align-items: center;
    border: 1px solid transparent;
}

.btn-primary-modern:hover {
    background: #1e3f4b;
    /* slightly darker navy */
    color: var(--white);
    transform: translateY(-2px);
    box-shadow: 0 10px 20px rgba(39, 81, 96, 0.2);
}

.btn-outline-modern {
    background: transparent;
    color: var(--primary-color);
    padding: 14px 32px;
    border-radius: 8px;
    font-weight: 500;
    text-decoration: none;
    transition: var(--transition);
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--primary-color);
}

.btn-outline-modern:hover {
    background: rgba(39, 81, 96, 0.05);
    color: var(--primary-color);
}

/* Trust Indicators */
.avatar-group img {
    width: 45px;
    height: 45px;
    object-fit: cover;
    margin-right: -15px;
    position: relative;
    transition: var(--transition);
}

.avatar-group img:hover {
    z-index: 10;
    transform: translateY(-5px);
}

.avatar-group .bg-light {
    width: 45px;
    height: 45px;
    z-index: 5;
    background-color: #f8f9fa !important;
    position: relative;
}

.font-sm {
    font-size: 0.9rem;
}

.font-xs {
    font-size: 0.8rem;
}

/* Visual Column / Collage */
.hero-visual-col {
    height: 600px;
}

.hero-shape-1 {
    width: 400px;
    height: 400px;
    background: rgba(212, 175, 55, 0.1);
    border-radius: 50%;
    top: -50px;
    right: -50px;
    z-index: 0;
    filter: blur(40px);
}

.hero-shape-2 {
    width: 300px;
    height: 300px;
    background: rgba(39, 81, 96, 0.08);
    border-radius: 50%;
    bottom: 50px;
    left: 50px;
    z-index: 0;
    filter: blur(30px);
}

.collage-img-1 {
    width: 60%;
    height: 75%;
    object-fit: cover;
    top: 5%;
    right: 5%;
    z-index: 2;
    border: 8px solid var(--white);
}

.collage-img-2 {
    width: 55%;
    height: 60%;
    object-fit: cover;
    bottom: 5%;
    left: 5%;
    z-index: 3;
    border: 8px solid var(--white);
}

/* Floating Stat Cards */
.glass-card {
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.5);
    z-index: 4;
}

.floating-stat-card {
    top: 20%;
    left: -10%;
    min-width: 220px;
    animation: float 6s ease-in-out infinite;
}

.floating-stat-card-2 {
    bottom: 15%;
    right: -5%;
    min-width: 200px;
    animation: float-delayed 7s ease-in-out infinite;
}

@media only screen and (max-width: 992px) {
    .floating-stat-card {
        left: 0;
    }

    .floating-stat-card-2 {
        right: 0;
    }
}

@media only screen and (max-width: 768px) {

    .collage-img-2,
    .collage-img-1 {
        height: 50%;
    }
}

.icon-box {
    width: 50px;
    height: 50px;
}

.bg-gold-light {
    background: rgba(212, 175, 55, 0.15) !important;
}

.bg-primary-light {
    background: rgba(39, 81, 96, 0.1) !important;
}

@keyframes float {
    0% {
        transform: translateY(0px);
    }

    50% {
        transform: translateY(-15px);
    }

    100% {
        transform: translateY(0px);
    }
}

@keyframes float-delayed {
    0% {
        transform: translateY(0px);
    }

    50% {
        transform: translateY(-10px);
    }

    100% {
        transform: translateY(0px);
    }
}

@media (max-width: 991px) {
    .hero-headline-modern {
        font-size: 2.5rem;
    }

    .trust-indicators {
        border-top: none !important;
    }
}

/* =========================================
   Redesigned MBA Multi-Section Styling
========================================= */

.inner-course-cta {
    background-color: var(--primary-color);
}

.inner-course-cta-btn {
    /* background-color: rgba(255, 255, 255, 0.2); */
    background-color: var(--secondary-color);
    backdrop-filter: blur(20px);
}

.mba-hero-premium {
    background-color: var(--navy-dark);
}

.hero-stats-bar {
    padding: 1.5rem;
    background: rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(10px);
    border: 1px solid white;
    border-radius: 1.5rem;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 999;
}

.hero-stats-bar:hover {
    border: 1px solid var(--accent-color);
}


.h-stat-divider {
    width: 2px;
    height: 40px;
    background: rgba(255, 255, 255, 0.2);
    align-self: center;
}

.h-stat-item span:first-child {
    letter-spacing: 0.5px;
}

.overview-p-image {
    position: relative;
}

.overview-p-image::before {
    content: '';
    position: absolute;
    top: 20px;
    left: 20px;
    right: -20px;
    bottom: -20px;
    border: 2px solid var(--gold);
    border-radius: 1.5rem;
    z-index: -1;
}

@media only screen and (max-width: 425px) {
    .hero-stats-bar {
        width: 98%;
    }

    .mba-info-swiper-container .content p {
        font-size: 15px !important;
    }

    .h-stat-item span:first-child {
        font-size: 15px !important;
    }

    .h-stat-item span:last-child {
        font-size: 12px !important;
    }
}

.outcome-card-v2 {
    transition: var(--transition);
}

.outcome-card-v2:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 40px rgba(38, 83, 103, 0.1) !important;
    border-color: var(--gold) !important;
}

.mba-partnership-alt .partnership-bg-shape {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 120%;
    height: 120%;
    background: radial-gradient(circle, rgba(212, 175, 55, 0.1) 0%, rgba(255, 255, 255, 0) 70%);
    z-index: 0;
}

.partnership-features .bg-light {
    border: 1px solid transparent;
    transition: var(--transition);
}

.partnership-features .bg-light:hover {
    background: var(--white) !important;
    border-color: var(--gold);
    box-shadow: var(--shadow-sm);
}

.objective-card .icon-circle-md {
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 1.25rem;
}

.objective-card:hover {
    border-left-color: var(--navy) !important;
}

.hover-lift {
    transition: var(--transition);
}

.hover-lift:hover {
    transform: translateY(-5px);
}

/* Namespaced styles */

.edu-hi-section {
    padding: 70px 20px;
    background: linear-gradient(135deg, var(--primary-color), #706127);
}

.edu-hi-wrapper {
    background: rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(10px);
    border-radius: 22px;
    padding: 30px;
    border: 1px solid rgba(255, 255, 255, 0.2);
}

.edu-hi-item {
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 18px 10px;
    color: #fff;
}

.edu-hi-icon {
    min-width: 55px;
    height: 55px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    background: rgba(255, 255, 255, 0.15);
    border: 1px solid rgba(255, 255, 255, 0.25);
}

.edu-hi-text {
    display: flex;
    flex-direction: column;
}

.edu-hi-title {
    font-weight: 600;
    font-size: 16px;
    margin-bottom: 2px;
}

.edu-hi-desc {
    font-size: 14px;
    opacity: 0.85;
}

.edu-hi-divider {
    height: 1px;
    background: rgba(255, 255, 255, 0.2);
    margin: 0 5px;
}

/* Desktop horizontal layout */
@media (min-width: 768px) {
    .edu-hi-grid {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
        align-items: center;
    }

    .edu-hi-item {
        padding: 10px 20px;
    }

    .edu-hi-item:not(:last-child) {
        border-right: 1px solid rgba(255, 255, 255, 0.2);
    }
}

/* Mobile stacked */
@media (max-width: 767px) {
    .edu-hi-item {
        border-bottom: 1px solid rgba(255, 255, 255, 0.15);
    }

    .edu-hi-item:last-child {
        border-bottom: none;
    }
}



.programs-section {
    background-color: var(--light-gray);
    z-index: 2;
}

.program-card {
    border: 1px solid rgba(0, 0, 0, 0.05) !important;
}

.program-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(39, 81, 96, 0.08) !important;
    border-color: rgba(212, 175, 55, 0.3) !important;
}

.program-card.bg-navy {
    background-color: var(--primary-color) !important;
}

.program-card.bg-navy:hover {
    box-shadow: 0 15px 35px rgba(39, 81, 96, 0.4) !important;
    border-color: var(--accent-color) !important;
}

@media only screen and (max-width: 992px) {
    .horizontal-scroll-wrapper {
        height: auto !important;
    }

    .horizontal-scroll-container {
        display: flex !important;
        flex-direction: column;
        height: auto !important;
        padding: 0 !important;
    }

    .horizontal-scroll-item {
        height: auto !important;
    }

    .left-prog-ov-block {
        max-width: 100% !important;
    }

    .prog-ov-wrap {
        max-height: none !important;
    }

    .horizontal-scroll-item {
        min-width: 90vw !important;
    }
}

@media only screen and (max-width: 768px) {
    .horizontal-scroll-item ul {
        flex-direction: column;
    }
}

.icon-circle {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-size: 0.8rem;
}

.program-features li {
    line-height: 1.4;
}

.hover-bg-white:hover {
    background-color: var(--white) !important;
    color: var(--primary-color) !important;
}

/* Base Utility Classes */
.text-secondary-custom {
    color: var(--secondary-color) !important;
}

.bg-secondary-light {
    background: rgba(133, 35, 65, 0.1) !important;
}

.bg-secondary-custom {
    background-color: var(--secondary-color) !important;
}

/* =========================================
   About Programs - Bento Grid Layout
   ========================================= */

.about-bento-grid {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: 1.5rem;
}

.icon-circle-lg {
    width: 60px;
    height: 60px;
}

.hover-lift:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(39, 81, 96, 0.08) !important;
    border-color: rgba(39, 81, 96, 0.1) !important;
}

.bento-img:hover .bento-image-hover {
    transform: scale(1.05);
}

.global-badge-bento {
    bottom: 20px;
    right: 20px;
    background-color: rgba(39, 81, 96, 0.95);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.1);
}

@media (min-width: 992px) {
    .bento-img {
        grid-column: 1 / 6;
        grid-row: 1 / 4;
    }

    .feat-1 {
        grid-column: 6 / 13;
        grid-row: 1 / 2;
    }

    .feat-2 {
        grid-column: 6 / 13;
        grid-row: 2 / 3;
    }

    .feat-3 {
        grid-column: 6 / 13;
        grid-row: 3 / 4;
    }

    .feat-4 {
        grid-column: 1 / 7;
        grid-row: 4 / 5;
    }

    .feat-5 {
        grid-column: 7 / 13;
        grid-row: 4 / 5;
    }
}

@media (max-width: 991px) {
    .bento-img {
        grid-column: 1 / -1;
    }

    .feat-1,
    .feat-2,
    .feat-3,
    .feat-4,
    .feat-5 {
        grid-column: 1 / -1;
    }
}

/* =========================================
   Popular Courses Section
========================================= */

.hc-swiper {
    padding-top: 30px;
    padding-bottom: 30px;
}

.course-card {
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
}

.course-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 40px rgba(39, 81, 96, 0.12) !important;
}

.course-card-bg {
    transition: var(--transition);
}

.course-card:hover .course-card-bg {
    height: 110px !important;
}

@media only screen and (max-width: 992px) {
    .course-card .course-card-bg {
        height: 80px !important;
    }

    .course-card:hover .course-card-bg {
        height: 90px !important;
    }
}

/* decorative card bubble */
.dcb {
    /* background-color: var(--accent-color); */
    background-color: white;
    /* border-radius: 0 0 0 100%; */
    border-radius: 50%;
    width: 300px;
    height: 300px;
    opacity: 0.25;
    top: 50%;
    right: 0;
    transform: translate(-50%, -50%);
}

.course-card-title {
    text-align: center;
}

.icon-circle-sm {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.75rem;
}

.c-detail-item {
    background: #f8f9fa;
    padding: 10px 15px;
    border-radius: 6px;
}

.hover-border-gold:hover {
    border-color: var(--accent-color) !important;
    background-color: #fdfaf2 !important;
    /* light gold tint */
}

.hover-text-navy:hover {
    color: var(--primary-color) !important;
    transform: scale(1.1);
}

.hover-text-gold:hover {
    color: var(--accent-color) !important;
    transform: scale(1.1);
}

.border-light {
    border-color: rgba(0, 0, 0, 0.05) !important;
}

.opacity-75 {
    opacity: 0.75;
}

/* =========================================
   Program Categories Tabs Section
========================================= */

.premium-tabs {
    border-bottom: 0;
}

.premium-tabs .nav-link {
    border-radius: 50rem;
    padding: 0.75rem 1.75rem;
    font-weight: 600;
    font-size: 0.95rem;
    color: var(--primary-color) !important;
    background-color: var(--light-gray);
    border: 1px solid rgba(0, 0, 0, 0.05);
    transition: var(--transition);
}

/* Scholarship Section Styles - Brand Redesign */
.scholarship-section {
    background: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%);
    position: relative;
    color: var(--white);
    overflow: hidden;
}

.scholarship-section::before {
    content: '';
    position: absolute;
    top: -50px;
    left: -50px;
    width: 250px;
    height: 250px;
    background: radial-gradient(circle, rgba(212, 175, 55, 0.15) 0%, transparent 70%);
    border-radius: 50%;
    z-index: 1;
}

.scholarship-section::after {
    content: '';
    position: absolute;
    bottom: -50px;
    right: -50px;
    width: 300px;
    height: 300px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.08) 0%, transparent 70%);
    border-radius: 50%;
    z-index: 1;
}

.scholarship-glass-card {
    background: rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 2rem;
    padding: 3.5rem 2.5rem;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.2);
    position: relative;
    z-index: 2;
}

.btn-brand-accent {
    background: var(--accent-color);
    color: var(--primary-color);
    font-weight: 700;
    padding: 1.2rem 3rem;
    border-radius: 50px;
    border: none;
    transition: var(--transition);
    box-shadow: 0 10px 25px rgba(212, 175, 55, 0.3);
}

.btn-brand-accent:hover {
    background: var(--white);
    color: var(--secondary-color);
    transform: translateY(-5px);
    box-shadow: 0 15px 30px rgba(0, 0, 0, 0.2);
}

.text-glass-light {
    color: rgba(255, 255, 255, 0.85) !important;
}

.glow-text {
    text-shadow: 0 0 20px rgba(255, 255, 255, 0.2);
}

.scholarship-image-wrapper {
    position: relative;
    padding: 20px;
    z-index: 1;
}

.scholarship-image-bg {
    position: absolute;
    top: 10px;
    left: 10px;
    width: 100%;
    height: 100%;
    background: var(--primary-color);
    opacity: 0.05;
    border-radius: 2rem;
    transform: rotate(-3deg);
    z-index: -1;
    transition: var(--transition);
}

.scholarship-image-wrapper:hover .scholarship-image-bg {
    transform: rotate(0deg) scale(1.05);
    opacity: 0.1;
}

.scholarship-feature-item {
    transition: var(--transition);
    padding: 0.75rem 1rem;
    border-radius: 1rem;
    background: rgba(255, 255, 255, 0.5);
    border: 1px solid transparent;
}

.scholarship-feature-item:hover {
    background: var(--white);
    border-color: rgba(212, 175, 55, 0.2);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
    transform: translateX(10px);
}

.shadow-2xl {
    box-shadow: 0 25px 60px -15px rgba(0, 0, 0, 0.15);
}

.opacity-10 {
    opacity: 0.08;
}

.bg-color-accent-soft {
    background-color: rgba(212, 175, 55, 0.1) !important;
}

.text-navy-soft {
    color: rgba(39, 81, 96, 0.8) !important;
}

@media (max-width: 991px) {
    .scholarship-section .display-5 {
        font-size: 2.2rem;
    }

    .scholarship-feature-item:hover {
        transform: translateY(-5px);
    }
}

.premium-tabs .nav-link:hover {
    background-color: rgba(39, 81, 96, 0.05);
    color: var(--primary-color) !important;
    border-color: rgba(39, 81, 96, 0.1);
    transform: translateY(-2px);
}

.premium-tabs .nav-link.active {
    background-color: var(--primary-color) !important;
    color: var(--white) !important;
    box-shadow: 0 4px 15px rgba(212, 175, 55, 0.3);
    border-color: var(--accent-color);
}

/* Tab Content Layout */
.program-stats-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
}

@media (min-width: 576px) {
    .program-stats-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

.stat-card-mini {
    transition: var(--transition);
}

.stat-card-mini:hover {
    transform: translateY(-5px);
    border-color: var(--accent-color) !important;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.05) !important;
}

.stat-card-mini .icon-circle-lg {
    width: 45px;
    height: 45px;
    margin-bottom: 0.5rem;
}

/* Premium Tab Pane Background & Glassmorphism */
.premium-tab-pane-inner {
    min-height: 450px;
    display: flex;
    align-items: center;
}

.premium-pane-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url('https://images.unsplash.com/photo-1497366216548-37526070297c?q=80&w=2069&auto=format&fit=crop');
    background-size: cover;
    background-position: center;
    z-index: 0;
}

.premium-pane-bg::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, rgba(39, 81, 96, 0.98) 0%, rgba(39, 81, 96, 0.85) 100%);
    z-index: 1;
}

.masters-bg {
    background-image: url('https://images.unsplash.com/photo-1516321318423-f06f85e504b3?q=80&w=2070&auto=format&fit=crop');
}

.dba-bg {
    background-image: url('https://images.unsplash.com/photo-1454165833767-027ffea9e61e?q=80&w=2070&auto=format&fit=crop');
}

.practitioners-bg {
    background-image: url('https://images.unsplash.com/photo-1521737711867-e3b12850901e?q=80&w=2072&auto=format&fit=crop');
}

.honorary-bg {
    background-image: url('https://images.unsplash.com/photo-1523050854058-8df90110c9f1?q=80&w=2070&auto=format&fit=crop');
}

.certificate-bg {
    background-image: url('https://images.unsplash.com/photo-1517245386807-bb43f82c33c4?q=80&w=2070&auto=format&fit=crop');
}

.glass-card-premium {
    background: rgba(255, 255, 255, 0.03) !important;
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    transition: var(--transition);
}

.glass-card-premium:hover {
    background: rgba(255, 255, 255, 0.08) !important;
    transform: translateY(-5px);
    border-color: var(--accent-color) !important;
}

.btn-outline-white {
    border: 1px solid rgba(255, 255, 255, 0.3);
    color: var(--white);
    padding: 14px 32px;
    border-radius: 8px;
    font-weight: 500;
    text-decoration: none;
    transition: var(--transition);
    display: inline-flex;
    align-items: center;
}

.btn-outline-white:hover {
    background: rgba(255, 255, 255, 0.1);
    color: var(--white);
    border-color: var(--white);
}

.shadow-gold {
    box-shadow: 0 10px 20px rgba(212, 175, 55, 0.2);
}

.shadow-gold:hover {
    box-shadow: 0 15px 30px rgba(212, 175, 55, 0.4);
}

/* office address */
/* Global Offices Wrapper - Unique Styles */
.compact-offices-section {
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    padding: 50px 0;
    position: relative;
}

.compact-offices-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: radial-gradient(circle at 30% 70%, rgba(39, 81, 96, 0.03) 0%, transparent 50%);
    pointer-events: none;
}

/* Section Header */
.compact-offices-header {
    position: relative;
    z-index: 2;
}

.compact-offices-title {
    font-size: 1.8rem;
    font-weight: 700;
    color: #275160;
    margin-bottom: 8px;
}

.compact-offices-subtitle {
    font-size: 0.95rem;
    color: #6c757d;
    margin-bottom: 0;
}

/* Compact Office Cards */
.compact-office-card {
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 8px;
    padding: 10px 20px;
    height: 100%;
    transition: all 0.3s ease;
    cursor: pointer;
    position: relative;
    overflow: hidden;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
}

.compact-office-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 3px;
    background: linear-gradient(90deg, #275160, #852343);
    opacity: 0;
    transition: opacity 0.3s ease;
}

.compact-office-card:hover::before {
    opacity: 1;
}

.compact-office-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.12);
}

/* .headquarters-card {
    border: 2px solid rgba(39, 81, 96, 0.15);
} */



/* Office Card Header */
.office-card-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 5px;
}

.office-flag-badge {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}

.office-flag-img {
    width: 30px;
    height: 20px;
    border-radius: 4px;
    object-fit: cover;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    margin-left: auto;
}

.office-type-label {
    background: linear-gradient(135deg, #275160, #852343);
    color: white;
    padding: 2px 8px;
    border-radius: 10px;
    font-size: 0.7rem;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.office-status-indicator {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #28a745;
    position: relative;
}

.office-status-indicator.active::before {
    content: '';
    position: absolute;
    top: -2px;
    left: -2px;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: rgba(40, 167, 69, 0.3);
    animation: pulse 2s infinite;
}

@keyframes pulse {
    0% {
        transform: scale(1);
        opacity: 1;
    }

    100% {
        transform: scale(1.5);
        opacity: 0;
    }
}

/* Office Card Body */
.office-country-name {
    font-size: 1.1rem;
    font-weight: 600;
    color: #275160;
}

.office-city-name {
    font-size: 0.9rem;
    color: #6c757d;
    margin-bottom: 12px;
}

.office-quick-contact {
    margin-bottom: 15px;
}

.quick-contact-item {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 0.8rem;
    color: #495057;
}

.quick-contact-item i {
    color: #275160;
    width: 12px;
}

/* Office Card Footer */
.office-card-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 10px;
    border-top: 1px solid rgba(0, 0, 0, 0.05);
}

.click-for-details {
    font-size: 0.75rem;
    color: #852343;
    font-weight: 500;
}

.office-card-footer i {
    color: #852343;
    font-size: 0.8rem;
    transition: transform 0.3s ease;
}

.compact-office-card:hover .office-card-footer i {
    transform: translateX(3px);
}

/* Office Modal */
.office-modal-content {
    border: none;
    border-radius: 15px;
    overflow: hidden;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.15);
}

.office-modal-header {
    background: linear-gradient(135deg, #275160, #852343);
    color: white;
    border-bottom: none;
    padding: 20px 25px;
}

.modal-title-wrapper {
    display: flex;
    align-items: center;
    gap: 15px;
}

.modal-office-flag {
    width: 40px;
    height: 30px;
    border-radius: 6px;
    object-fit: cover;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

.modal-title {
    margin: 0;
    font-size: 1.3rem;
    font-weight: 600;
}

.modal-office-type {
    font-size: 0.8rem;
    opacity: 0.9;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.office-modal-header .btn-close {
    filter: invert(1);
    opacity: 0.8;
}

.office-modal-header .btn-close:hover {
    opacity: 1;
}

/* Modal Body */
.office-modal-body {
    padding: 25px;
}

.info-section-title {
    font-size: 1rem;
    font-weight: 600;
    color: #275160;
    margin-bottom: 15px;
    padding-bottom: 8px;
    border-bottom: 2px solid rgba(39, 81, 96, 0.1);
}

.office-detail-list {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.office-detail-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.office-detail-item i {
    color: #275160;
    font-size: 0.9rem;
    width: 16px;
    margin-top: 2px;
    flex-shrink: 0;
}

.office-detail-item>div {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.detail-label {
    font-size: 0.75rem;
    color: #6c757d;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.detail-value {
    font-size: 0.9rem;
    color: #333;
    font-weight: 500;
}

.detail-link {
    color: #852343;
    text-decoration: none;
    transition: color 0.3s ease;
}

.detail-link:hover {
    color: #6b1c34;
}

/* Map Section */
.office-map-container {
    background: #f8f9fa;
    border-radius: 10px;
    overflow: hidden;
    height: 200px;
    position: relative;
}

.map-placeholder {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100%;
    color: #6c757d;
    text-align: center;
}

.map-placeholder i {
    font-size: 2rem;
    margin-bottom: 10px;
    color: #275160;
}

.map-placeholder p {
    margin-bottom: 15px;
    font-weight: 500;
}

.map-view-btn {
    background: linear-gradient(135deg, #275160, #852343);
    border: none;
    border-radius: 20px;
    padding: 8px 16px;
    font-size: 0.8rem;
}

.map-view-btn:hover {
    background: linear-gradient(135deg, #1e3d47, #6b1c34);
}

/* Modal Footer */
.office-modal-footer {
    background: #f8f9fa;
    border-top: 1px solid rgba(0, 0, 0, 0.05);
    padding: 15px 25px;
}

.modal-actions {
    display: flex;
    gap: 10px;
    width: 100%;
    justify-content: flex-end;
}

.contact-office-btn {
    background: linear-gradient(135deg, #275160, #852343);
    border: none;
    border-radius: 8px;
}

.contact-office-btn:hover {
    background: linear-gradient(135deg, #1e3d47, #6b1c34);
}

/* Main Footer Content */
.footer-content {
    padding: 80px 0 40px;
    position: relative;
    z-index: 2;
    background: linear-gradient(135deg, #0f1419 0%, #1a2332 50%, #275160 100%);
}

/* Brand Section */
.brand-logo {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 20px;
}

.logo-symbol {
    width: 55px;
    height: 55px;
    /* background: linear-gradient(135deg, #275160, #852343); */
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    /* font-size: 1.4rem;
    color: white; */
}

.logo-symbol img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.brand-text h4 {
    font-size: 1.8rem;
    font-weight: 700;
    margin: 0;
    color: white;
}

.brand-text span {
    font-size: 0.9rem;
    color: rgba(255, 255, 255, 0.7);
}

.brand-description {
    font-size: 1rem;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.8);
    margin-bottom: 30px;
}

/* Achievement Stats */
.footer-content .achievement-stats {
    display: flex;
    gap: 25px;
    flex-wrap: wrap;
}

.footer-content .stat-item {
    text-align: center;
}

.footer-content .stat-number {
    display: block;
    font-size: 1.4rem;
    font-weight: 700;
    color: #852343;
    line-height: 1;
}

.footer-content .stat-label {
    font-size: 0.8rem;
    color: var(--primary-color);
    margin-top: 5px;
    font-weight: bold;
}

/* Section Titles */
.footer-content .section-title {
    font-size: 1.3rem;
    font-weight: 600;
    color: white;
    margin-bottom: 25px;
    position: relative;
    padding-bottom: 10px;
}

.footer-content .section-title::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 40px;
    height: 2px;
    background: linear-gradient(90deg, #275160, #852343);
    border-radius: 1px;
}

/* Footer Menu */
.footer-menu {
    list-style: none;
    padding: 0;
    margin: 0;
}

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

.footer-menu a {
    color: rgba(255, 255, 255, 0.8);
    text-decoration: none;
    font-size: 0.95rem;
    transition: all 0.3s ease;
    display: block;
    padding: 5px 0;
    position: relative;
}

.footer-menu a::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    width: 0;
    height: 1px;
    background: #852343;
    transition: width 0.3s ease;
    transform: translateY(-50%);
}

.footer-menu a:hover::before {
    width: 20px;
}

.footer-menu a:hover {
    color: #852343;
    padding-left: 25px;
}

/* Contact Details */
.contact-details {
    margin-bottom: 30px;
}

.contact-item {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 15px;
}

.contact-item i {
    width: 35px;
    height: 35px;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #852343;
    font-size: 0.9rem;
    flex-shrink: 0;
}

.contact-info {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.contact-label {
    font-size: 0.8rem;
    color: rgba(255, 255, 255, 0.6);
    font-weight: 500;
}

.contact-info a,
.contact-info span {
    color: rgba(255, 255, 255, 0.9) !important;
    text-decoration: none;
    font-size: 0.95rem;
    transition: color 0.3s ease;
}

.contact-info a:hover {
    color: #852343;
}

/* Newsletter Section */
.newsletter-section {
    background: rgba(255, 255, 255, 0.05);
    padding: 25px;
    border-radius: 15px;
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.newsletter-title {
    font-size: 1.1rem;
    font-weight: 600;
    color: white;
    margin-bottom: 8px;
}

.newsletter-desc {
    font-size: 0.9rem;
    color: rgba(255, 255, 255, 0.7);
    margin-bottom: 20px;
}

.input-wrapper {
    position: relative;
    display: flex;
}

.newsletter-input {
    flex: 1;
    background: rgba(255, 255, 255, 0.1) !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    color: white !important;
    padding: 12px 50px 12px 15px !important;
    border-radius: 25px !important;
    font-size: 0.9rem;
    outline: none;
}

.newsletter-input::placeholder {
    color: rgba(255, 255, 255, 0.5) !important;
}

.newsletter-input:focus {
    background: rgba(255, 255, 255, 0.15) !important;
    border-color: #852343 !important;
    box-shadow: 0 0 0 0.2rem rgba(133, 35, 67, 0.25) !important;
    color: white !important;
}

.newsletter-submit {
    position: absolute;
    right: 5px;
    top: 50%;
    transform: translateY(-50%);
    background: linear-gradient(135deg, #275160, #852343);
    border: none;
    color: white;
    width: 35px;
    height: 35px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
}

.newsletter-submit:hover {
    background: linear-gradient(135deg, #1e3d47, #6b1c34);
    transform: translateY(-50%) scale(1.1);
}

/* Footer Bottom */
.footer-bottom {
    background: rgba(0, 0, 0, 0.3);
    padding: 25px 0;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    position: relative;
    z-index: 2;
    background: linear-gradient(135deg, #0f1419 0%, #1a2332 50%, #275160 100%);
}

.bottom-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
}

/* Social Media */
.social-media {
    display: flex;
    align-items: center;
    gap: 20px;
}

.social-label {
    font-size: 0.95rem;
    font-weight: 500;
    color: rgba(255, 255, 255, 0.8);
}

.social-links {
    display: flex;
    gap: 12px;
}

.social-link {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    text-decoration: none;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

.social-link::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, transparent, rgba(255, 255, 255, 0.1));
    opacity: 0;
    transition: opacity 0.3s ease;
}

.social-link:hover::before {
    opacity: 1;
}

.social-link.facebook {
    background: #1877f2;
}

.social-link.twitter {
    background: #1da1f2;
}

.social-link.linkedin {
    background: #0a66c2;
}

.social-link.instagram {
    background: linear-gradient(45deg, #f09433, #e6683c, #dc2743, #cc2366, #bc1888);
}

.social-link.youtube {
    background: #ff0000;
}

.social-link:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.3);
}

/* Legal Links */
.footer-legal {
    text-align: right;
}

.legal-links {
    display: flex;
    gap: 20px;
    margin-bottom: 10px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.legal-links a {
    color: rgba(255, 255, 255, 0.7);
    text-decoration: none;
    font-size: 0.9rem;
    transition: color 0.3s ease;
}

.legal-links a:hover {
    color: #852343;
}

.copyright {
    font-size: 0.85rem;
    color: rgba(255, 255, 255, 0.6);
    margin: 0;
}

/* Scroll to Top Button */
.scroll-top {
    position: fixed;
    bottom: 30px;
    right: 30px;
    width: 50px;
    height: 50px;
    background: linear-gradient(135deg, #275160, #852343);
    border: none;
    border-radius: 50%;
    color: white;
    cursor: pointer;
    transition: all 0.3s ease;
    opacity: 0;
    visibility: hidden;
    z-index: 1000;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.2);
}

.scroll-top.show {
    opacity: 1;
    visibility: visible;
}

.scroll-top:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 30px rgba(133, 35, 67, 0.4);
}



/* ============== footer section css end ============== */



/* dcotorate page program curriculum ext design start */

.prog-c-p1 .accordion-button {
    background: linear-gradient(135deg, var(--primary-color), var(--secondery-color));
    color: #fff;
}

.prog-c-p1 .accordion-button:focus {
    box-shadow: none;
}

.prog-c-p2 .accordion-button {
    background: linear-gradient(135deg, var(--primary-color), var(--secondery-color));
    color: #fff;
}

.prog-c-p2 .accordion-button:focus {
    box-shadow: none;
}

/* About Page Hero - Option 2: Immersive Gateway */
.about-hero-v2 {
    background: #0a0f14;
    padding: 120px 0 100px;
    position: relative;
    overflow: hidden;
    min-height: 85vh;
    display: flex;
    align-items: center;
}

/* Mesh Background Animation */
.about-hero-v2 .mesh-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: radial-gradient(circle at 20% 30%, rgba(39, 81, 96, 0.4) 0%, transparent 40%),
        radial-gradient(circle at 80% 70%, rgba(133, 35, 67, 0.3) 0%, transparent 40%),
        radial-gradient(circle at 50% 50%, rgba(212, 175, 55, 0.1) 0%, transparent 50%);
    z-index: 1;
    filter: blur(60px);
}

.about-hero-v2 .world-map-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url('https://www.transparenttextures.com/patterns/world-map.png');
    /* Pattern overlay */
    opacity: 0.05;
    z-index: 2;
}

.about-hero-v2 .hero-container {
    position: relative;
    z-index: 5;
    text-align: center;
}

.title-immersive {
    font-size: clamp(2.5rem, 5vw, 4.5rem);
    font-weight: 800;
    line-height: 1.1;
    background: linear-gradient(to right, #ffffff 30%, var(--accent-color) 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    margin-bottom: 1.5rem;
    font-family: var(--font-heading);
}

.hero-stats-floating {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    pointer-events: none;
    z-index: 4;
}

.glass-stat-badge {
    position: absolute;
    background: rgba(255, 255, 255, 0.03);
    backdrop-filter: blur(15px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    padding: 1.2rem 2rem;
    border-radius: 1.5rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.2);
    animation: float-badge 6s ease-in-out infinite;
    pointer-events: auto;
}

.glass-stat-badge i {
    font-size: 1.5rem;
    color: var(--accent-color);
}

.glass-stat-badge b {
    font-size: 1.5rem;
    color: #fff;
    font-family: var(--font-heading);
}

.glass-stat-badge span {
    font-size: 0.75rem;
    color: rgba(255, 255, 255, 0.7);
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 600;
}

/* Positioning Badges */
.badge-1 {
    top: 10%;
    left: 5%;
    animation-delay: 0s;
}

.badge-2 {
    top: 60%;
    left: 0%;
    animation-delay: 1s;
}

.badge-3 {
    top: 15%;
    right: 5%;
    animation-delay: 2s;
}

.badge-4 {
    top: 65%;
    right: 2%;
    animation-delay: 3s;
}

@keyframes float-badge {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-20px);
    }
}

.cta-group-center {
    display: flex;
    justify-content: center;
    gap: 1.5rem;
    margin-top: 3rem;
}

.btn-immersive {
    padding: 1.2rem 3.5rem;
    border-radius: 50px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    position: relative;
    overflow: hidden;
}

.btn-immersive-primary {
    background: var(--accent-color);
    color: var(--primary-color);
}

.btn-immersive-primary:hover {
    transform: scale(1.05) translateY(-5px);
    background: #fff;
    box-shadow: 0 15px 30px rgba(212, 175, 55, 0.3);
}

/* Corporate Brochure CTA Section */
.brochure-cta-section {
    background: #ffffff;
    padding: 60px 0;
    position: relative;
}

.brochure-glass-card {
    background: linear-gradient(135deg, var(--primary-color) 0%, #1a3541 100%);
    border-radius: 2rem;
    padding: 3rem;
    color: var(--white);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    box-shadow: 0 15px 40px rgba(39, 81, 96, 0.2);
    position: relative;
    overflow: hidden;
}

.brochure-glass-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url('https://www.transparenttextures.com/patterns/carbon-fibre.png');
    opacity: 0.1;
    pointer-events: none;
}

.brochure-info h2 {
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 0.5rem;
    font-family: var(--font-heading);
}

.brochure-info p {
    font-size: 1.1rem;
    opacity: 0.85;
    margin-bottom: 0;
}

.btn-brochure-download {
    background: var(--accent-color);
    color: var(--primary-color);
    font-weight: 700;
    padding: 1rem 2.5rem;
    border-radius: 50px;
    border: none;
    text-transform: uppercase;
    letter-spacing: 1px;
    display: flex;
    align-items: center;
    gap: 12px;
    transition: var(--transition);
    white-space: nowrap;
}

.btn-brochure-download:hover {
    background: var(--white);
    color: var(--secondary-color);
    transform: scale(1.05);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
}

.btn-brochure-download i {
    font-size: 1.25rem;
    animation: bounce-horizontal 2s infinite;
}

@keyframes bounce-horizontal {

    0%,
    100% {
        transform: translateX(0);
    }

    50% {
        transform: translateX(5px);
    }
}

@media (max-width: 991px) {
    .brochure-glass-card {
        flex-direction: column;
        text-align: center;
        padding: 2.5rem;
    }
}

/* =========================================
   About Page Hero - v3 Premium
   ========================================= */
.about-hero-v3 {
    position: relative;
    padding: 100px 0 60px;
    background: #0a192f;
    color: var(--white);
    overflow: hidden;
}

.about-hero-v3 .mesh-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: radial-gradient(circle at 0% 0%, rgba(39, 81, 96, 0.4) 0%, transparent 50%),
        radial-gradient(circle at 100% 100%, rgba(133, 35, 65, 0.3) 0%, transparent 50%),
        radial-gradient(circle at 50% 50%, rgba(212, 175, 55, 0.1) 0%, transparent 70%);
    z-index: 1;
}

.about-hero-v3 .hero-inner {
    position: relative;
    z-index: 5;
}

.hero-header-v3 {
    text-align: center;
    margin-bottom: 80px;
}

.hero-header-v3 h1 {
    font-family: var(--font-heading);
    font-size: clamp(2.5rem, 6vw, 4.5rem);
    font-weight: 700;
    line-height: 1.1;
    margin-bottom: 25px;
    background: linear-gradient(135deg, #fff 0%, #d4af37 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.hero-header-v3 .sub-welcome {
    font-size: 1.25rem;
    font-weight: 300;
    max-width: 800px;
    margin: 0 auto;
    opacity: 0.9;
    letter-spacing: 0.5px;
}

/* Program Blocks Grid */
.program-blocks-v3 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    margin-bottom: 60px;
}

.p-block-v3 {
    background: rgba(255, 255, 255, 0.03);
    backdrop-filter: blur(15px);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 20px;
    padding: 40px;
    transition: var(--transition);
    height: 100%;
}

.p-block-v3:hover {
    background: rgba(255, 255, 255, 0.05);
    border-color: var(--accent-color);
    transform: translateY(-5px);
}

.p-block-v3 i {
    font-size: 2.5rem;
    color: var(--accent-color);
    margin-bottom: 20px;
    display: block;
}

.p-block-v3 h3 {
    font-family: var(--font-heading);
    font-size: 1.75rem;
    margin-bottom: 15px;
}

.p-block-v3 p {
    font-size: 1.05rem;
    opacity: 0.8;
    line-height: 1.7;
}

/* Affiliations Ribbon */
.affiliations-v3 {
    background: rgba(255, 255, 255, 0.03);
    border-top: 1px solid rgba(255, 255, 255, 0.05);
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
    padding: 40px 0;
    margin-bottom: 80px;
}

.aff-title {
    text-align: center;
    font-size: 0.9rem;
    text-transform: uppercase;
    letter-spacing: 2px;
    opacity: 0.6;
    margin-bottom: 30px;
}

.aff-logos-v3 {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 40px;
}

.aff-text-logo {
    font-family: var(--font-heading);
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--white);
    opacity: 0.6;
    transition: var(--transition);
    border: 1px solid rgba(255, 255, 255, 0.2);
    padding: 8px 15px;
    border-radius: 5px;
    background: rgba(255, 255, 255, 0.05);
}

.aff-text-logo:hover {
    opacity: 1;
    border-color: var(--accent-color);
    color: var(--accent-color);
    background: rgba(212, 175, 55, 0.1);
}

.aff-logo-v3 {
    height: 50px;
    opacity: 0.7;
    filter: brightness(0) invert(1);
    transition: var(--transition);
}

.aff-logo-v3:hover {
    opacity: 1;
    filter: none;
}

/* Global Presence & Mission */
.mission-global-v3 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: center;
}

.global-stat-card-v3 {
    position: relative;
    border-radius: 20px;
    overflow: hidden;
    height: 400px;
}

.global-stat-card-v3 img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.stats-overlay-v3 {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 30px;
    background: linear-gradient(to top, rgba(10, 25, 47, 0.9), transparent);
    display: flex;
    gap: 40px;
}

.stat-v3-item b {
    display: block;
    font-size: 2rem;
    color: var(--accent-color);
}

.stat-v3-item span {
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.mission-text-v3 h2 {
    font-family: var(--font-heading);
    font-size: 2.25rem;
    margin-bottom: 20px;
}

.mission-text-v3 p {
    font-size: 1.15rem;
    opacity: 0.85;
    margin-bottom: 30px;
}

@media (max-width: 991px) {

    .program-blocks-v3,
    .mission-global-v3 {
        grid-template-columns: 1fr;
    }

    .hero-header-v3 {
        margin-bottom: 50px;
    }
}

/* =========================================
   Mission & Vision Section - v3
   ========================================= */
.mission-vision-v3 {
    padding: 100px 0;
    background: #f8f9fa;
    position: relative;
    overflow: hidden;
}

.mission-vision-v3::before {
    content: '';
    position: absolute;
    top: -10%;
    right: -5%;
    width: 40%;
    height: 60%;
    background: radial-gradient(circle, rgba(212, 175, 55, 0.05) 0%, transparent 70%);
    z-index: 1;
}

.mv-grid-v3 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    position: relative;
    z-index: 2;
}

.mv-card-v3 {
    background: var(--white);
    padding: 50px;
    border-radius: 20px;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.04);
    border: 1px solid rgba(0, 0, 0, 0.03);
    transition: var(--transition);
}

.mv-card-v3:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 50px rgba(39, 81, 96, 0.08);
    border-color: var(--accent-color);
}

.mv-icon-v3 {
    width: 70px;
    height: 70px;
    background: rgba(39, 81, 96, 0.05);
    color: var(--primary-color);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    border-radius: 15px;
    margin-bottom: 30px;
}

.mv-card-v3 h2 {
    font-family: var(--font-heading);
    font-size: 2.25rem;
    margin-bottom: 20px;
    color: var(--primary-color);
}

.mv-card-v3 p {
    font-size: 1.1rem;
    line-height: 1.8;
    color: #555;
    margin: 0;
}

/* brochure-cta-section Refinement */
.brochure-cta-section {
    padding: 0;
    background: transparent;
    position: relative;
    z-index: 10;
    margin-top: -60px;
    /* Overlap with hero */
}

.brochure-glass-card {
    /* background: rgba(39, 81, 96, 0.8); */
    background: rgba(133, 35, 65, 0.8);
    backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 24px;
    padding: 40px 60px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 40px;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.2);
}

.brochure-info h2 {
    font-family: var(--font-heading);
    color: var(--white);
    font-size: 2.5rem;
    margin-bottom: 15px;
}

.brochure-info p {
    color: rgba(255, 255, 255, 0.7);
    font-size: 1.2rem;
    margin: 0;
}

.btn-brochure-download {
    background: var(--accent-color);
    color: #000;
    padding: 18px 40px;
    border-radius: 12px;
    font-weight: 600;
    font-size: 1.1rem;
    transition: var(--transition);
    border: none;
    display: flex;
    align-items: center;
    gap: 12px;
}

.btn-brochure-download:hover {
    background: #fff;
    color: var(--primary-color);
    transform: scale(1.05);
}

@media (max-width: 991px) {
    .mv-grid-v3 {
        grid-template-columns: 1fr;
    }

    .brochure-glass-card {
        flex-direction: column;
        text-align: center;
        padding: 40px 30px;
    }
}

/* =========================================
   Success Story Section - v3
   ========================================= */
.success-story-v3 {
    padding: 100px 0;
    background: var(--white);
    position: relative;
}

.ss-header-v3 {
    text-align: center;
    margin-bottom: 60px;
}

.ss-header-v3 h2 {
    font-family: var(--font-heading);
    font-size: 3rem;
    color: var(--primary-color);
    margin-bottom: 20px;
}

.ss-header-v3 .underline {
    width: 80px;
    height: 4px;
    background: var(--accent-color);
    margin: 0 auto;
}

.ss-grid-v3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

.ss-card-v3 {
    padding: 40px;
    background: #fff;
    border: 1px solid rgba(0, 0, 0, 0.05);
    border-radius: 20px;
    text-align: center;
    transition: var(--transition);
    display: flex;
    flex-direction: column;
    align-items: center;
}

.ss-card-v3:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 40px rgba(39, 81, 96, 0.08);
    border-color: var(--accent-color);
}

.ss-icon-v3 {
    width: 60px;
    height: 60px;
    background: rgba(212, 175, 55, 0.1);
    color: var(--accent-color);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    margin-bottom: 25px;
}

.ss-card-v3 b {
    display: block;
    font-size: 2.5rem;
    color: var(--primary-color);
    font-family: var(--font-heading);
    margin-bottom: 5px;
}

.ss-card-v3 span {
    font-size: 1rem;
    color: #666;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 1px;
}

@media (max-width: 991px) {
    .ss-grid-v3 {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* =========================================
   Registration & Accreditation Section - v3
   ========================================= */
.registration-section-v3 {
    padding: 100px 0;
    background: #fdfdfd;
    border-top: 1px solid rgba(0, 0, 0, 0.05);
}

.reg-container-v3 {
    max-width: 900px;
    margin: 0 auto;
}

.reg-card-v3 {
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 15px;
    padding: 50px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.02);
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.reg-card-v3::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 5px;
    background: linear-gradient(to right, var(--primary-color), var(--accent-color));
}

.reg-badge-v3 {
    background: #f8f9fa;
    color: var(--primary-color);
    padding: 8px 20px;
    border-radius: 50px;
    font-size: 0.9rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 30px;
    border: 1px solid #eee;
}

.reg-uk-title {
    font-family: var(--font-heading);
    font-size: 2.5rem;
    color: var(--primary-color);
    margin-bottom: 40px;
    line-height: 1.2;
}

.reg-content-v3 {
    display: flex;
    align-items: center;
    gap: 50px;
    width: 100%;
    justify-content: center;
}

.reg-logo-box-v3 {
    flex: 0 0 180px;
}

.reg-logo-box-v3 img {
    width: 100%;
    height: auto;
    border-radius: 12px;
}

.reg-logo-placeholder {
    width: 100%;
    aspect-ratio: 1;
    background: #f4f4f4;
    border: 2px dashed #ccc;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #999;
    font-size: 0.8rem;
    padding: 20px;
}

.reg-info-v3 {
    text-align: left;
    flex: 1;
}

.reg-info-v3 p {
    margin-bottom: 12px;
    font-size: 1.1rem;
    color: #444;
}

.reg-info-v3 b {
    color: var(--primary-color);
    font-weight: 700;
}

.ukprn-tag {
    display: inline-block;
    background: rgba(39, 81, 96, 0.05);
    color: var(--primary-color);
    padding: 10px 18px;
    border-radius: 8px;
    font-family: monospace;
    font-size: 1.2rem;
    font-weight: 600;
    margin-top: 15px;
    border: 1px solid rgba(39, 81, 96, 0.1);
}

@media (max-width: 768px) {
    .reg-content-v3 {
        flex-direction: column;
        gap: 30px;
        text-align: center;
    }

    .reg-info-v3 {
        text-align: center;
    }

    .reg-uk-title {
        font-size: 2rem;
    }
}

/* Accreditation Grid & Cards */
.acc-subsection-v3 {
    margin-top: 80px;
}

.acc-title-v3 {
    text-align: center;
    font-family: var(--font-heading);
    font-size: 2.5rem;
    color: var(--primary-color);
    margin-bottom: 50px;
}

.acc-grid-v3 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
}

.acc-card-v3 {
    background: #fff;
    border: 1px solid #eef0f2;
    border-radius: 20px;
    padding: 40px;
    transition: var(--transition);
    display: flex;
    flex-direction: column;
}

.acc-card-v3:hover {
    transform: translateY(-10px);
    box-shadow: 0 15px 35px rgba(39, 81, 96, 0.06);
    border-color: var(--accent-color);
}

.acc-logo-box-v3 {
    width: 120px;
    margin-bottom: 25px;
    display: flex;
    align-items: center;
}

.acc-logo-box-v3 img {
    max-width: 100%;
    width: auto;
}

.acc-card-v3 h3 {
    font-family: var(--font-heading);
    font-size: 1.5rem;
    color: var(--primary-color);
    margin-bottom: 20px;
}

.acc-card-v3 p {
    font-size: 1.05rem;
    line-height: 1.7;
    color: #555;
    margin: 0;
}

@media (max-width: 991px) {
    .acc-grid-v3 {
        grid-template-columns: 1fr;
    }
}

/* ISO Certifications Section */
.iso-subsection-v3 {
    margin-top: 100px;
    padding-top: 80px;
    border-top: 1px solid #eee;
}

.iso-subsection-v3 .iso-img {
    width: 100%;
    height: auto;
}

.iso-grid-v3 {
    display: grid;
    grid-template-columns: 1fr;
    gap: 40px;
}

.iso-card-v3 {
    background: #fff;
    border: 1px solid #eef0f2;
    border-radius: 24px;
    padding: 50px;
    transition: var(--transition);
    display: flex;
    gap: 40px;
    align-items: flex-start;
}

.iso-card-v3:hover {
    box-shadow: 0 20px 50px rgba(39, 81, 96, 0.08);
    border-color: var(--accent-color);
}

.iso-badge-box {
    flex: 0 0 140px;
    text-align: center;
}

.iso-badge-box i {
    font-size: 3.5rem;
    color: var(--primary-color);
    margin-bottom: 15px;
    display: block;
}

.iso-number-v3 {
    display: block;
    font-weight: 800;
    font-size: 1.2rem;
    color: var(--accent-color);
}

.iso-details-v3 {
    flex: 1;
}

.iso-details-v3 h3 {
    font-family: var(--font-heading);
    font-size: 1.75rem;
    color: var(--primary-color);
    margin-bottom: 15px;
}

.iso-scope-box {
    background: #f8f9fa;
    padding: 25px;
    border-radius: 15px;
    margin: 20px 0;
    border-left: 4px solid var(--accent-color);
}

.iso-scope-box h4 {
    font-size: 0.9rem;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #888;
    margin-bottom: 10px;
}

.iso-scope-box p {
    font-size: 1rem;
    line-height: 1.6;
    color: #444;
    margin: 0;
}

.iso-meta-v3 {
    display: flex;
    gap: 30px;
    font-size: 0.95rem;
    margin-top: 20px;
}

.iso-meta-item b {
    color: var(--primary-color);
}

.iso-verify-link {
    color: var(--accent-color);
    text-decoration: none;
    font-weight: 600;
}

.iso-verify-link:hover {
    text-decoration: underline;
}

@media (max-width: 991px) {
    .iso-card-v3 {
        flex-direction: column;
        padding: 40px;
        gap: 30px;
    }

    .iso-badge-box {
        flex: none;
        width: 100%;
        text-align: left;
    }

    .iso-meta-v3 {
        flex-direction: column;
        gap: 10px;
    }
}

@media (max-width: 576px) {
    .ss-grid-v3 {
        grid-template-columns: 1fr;
    }
}

/* SHRM Subsection - Consistent Design */
.shrm-subsection-v3 {
    margin-top: 100px;
    padding-top: 80px;
    border-top: 1px solid #eee;
}

.shrm-card-v3 {
    background: #fff;
    border: 1px solid #eef0f2;
    border-radius: 24px;
    padding: 50px;
    transition: var(--transition);
    display: flex;
    gap: 40px;
    align-items: flex-start;
    margin-bottom: 40px;
}

.shrm-card-v3:hover {
    box-shadow: 0 20px 50px rgba(39, 81, 96, 0.08);
    border-color: var(--accent-color);
}

.shrm-icon-box-v3 {
    flex: 0 0 100px;
    height: 100px;
    background: rgba(30, 58, 76, 0.03);
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.shrm-icon-box-v3 i {
    font-size: 2.5rem;
    color: var(--primary-color);
}

.shrm-info-v3 {
    flex: 1;
}

.shrm-info-v3 h3 {
    font-family: var(--font-heading);
    font-size: 1.75rem;
    color: var(--primary-color);
    margin-bottom: 20px;
}

.shrm-info-v3 p {
    font-size: 1.05rem;
    line-height: 1.8;
    color: #555;
    margin-bottom: 0;
}

.shrm-pillars-grid-v3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-top: 30px;
}

.shrm-pillar-item-v3 {
    background: #f8f9fa;
    padding: 20px;
    border-radius: 15px;
    text-align: center;
    border: 1px solid transparent;
    transition: var(--transition);
}

.shrm-pillar-item-v3:hover {
    border-color: var(--accent-color);
    background: #fff;
    transform: translateY(-5px);
}

.shrm-pillar-item-v3 i {
    font-size: 1.5rem;
    color: var(--accent-color);
    margin-bottom: 10px;
    display: block;
}

.shrm-pillar-item-v3 b {
    font-size: 0.95rem;
    color: var(--primary-color);
    display: block;
}

.shrm-ref-text-v3 {
    margin-top: 40px;
    text-align: center;
    font-size: 0.85rem;
    color: #aaa;
}

@media (max-width: 991px) {
    .shrm-card-v3 {
        flex-direction: column;
        padding: 40px;
        gap: 30px;
    }

    .shrm-icon-box-v3 {
        width: 80px;
        height: 80px;
    }

    .shrm-pillars-grid-v3 {
        grid-template-columns: 1fr;
    }
}

/* =========================================
   Contact Page Styling
========================================= */
/* url("../images/contact-banner.jpg"), */
.contact-hero {
    background-color: #265367;
}

.unique-form-input {
    padding: 12px 18px;
    border-radius: 10px;
    border: 1px solid rgba(0, 0, 0, 0.1);
    background-color: #fcfcfc;
    font-family: var(--font-body);
    font-size: 0.95rem;
    transition: var(--transition);
}

.unique-form-input:focus {
    outline: none;
    border-color: var(--accent-color);
    background-color: var(--white);
    box-shadow: 0 0 0 4px rgba(212, 175, 55, 0.1);
}

.contact-form-card,
.contact-info-card {
    transition: var(--transition);
}

.contact-form-card:hover,
.contact-info-card:hover {
    box-shadow: 0 15px 35px rgba(39, 81, 96, 0.08) !important;
}

.hover-lift:hover {
    transform: translateY(-5px);
}

.contact-info-list a:hover {
    color: var(--primary-color) !important;
    padding-left: 5px;
}

.social-btn:hover {
    background-color: var(--accent-color) !important;
    color: var(--white) !important;
}

@media (max-width: 991px) {
    .contact-hero h1 {
        font-size: 2.5rem;
    }
}

/* =========================================
   Verification Page Styling
========================================= */

.verify-hero {
    background-color: var(--primary-color);
    background-image:
        radial-gradient(circle at 100% 0%, rgba(212, 175, 55, 0.1) 0%, transparent 50%),
        radial-gradient(circle at 0% 100%, rgba(255, 255, 255, 0.05) 0%, transparent 50%);
}

.min-vh-50 {
    min-height: 50vh;
}

.verify-card {
    transition: var(--transition);
    border: 1px solid rgba(0, 0, 0, 0.08) !important;
}

.verify-card:hover {
    box-shadow: 0 20px 40px rgba(39, 81, 96, 0.1) !important;
    transform: translateY(-5px);
}

.verify-form .unique-form-input:focus {
    border-color: var(--primary-color);
    box-shadow: 0 0 0 4px rgba(39, 81, 96, 0.1);
}

/* =========================================
   Affiliation Page Styling (EIU Paris)
========================================= */

.eiu-logo-card {
    background-color: var(--white);
    transition: var(--transition);
}

.eiu-logo-card:hover {
    box-shadow: 0 15px 35px rgba(39, 81, 96, 0.08) !important;
}

.ranking-card {
    background-color: var(--white);
    transition: all 0.4s ease;
    z-index: 1;
}

.ranking-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 40px rgba(39, 81, 96, 0.1) !important;
}

.active-ranking {
    border-color: var(--primary-color) !important;
}

.membership-card {
    transition: all 0.3s ease;
}

.membership-card:hover {
    border-color: var(--accent-color) !important;
    transform: scale(1.05);
}

.text-gold {
    color: var(--accent-color) !important;
}

.opacity-10 {
    opacity: 0.1 !important;
}

.ranking-img {
    height: auto;
    width: 150px;
}

/* =========================================
   MBA Page Styling
========================================= */

/* @import url("https://fonts.googleapis.com/css2?family=Quicksand:wght@300..700&family=Salsa&display=swap"); */

/* content */

@media only screen and (min-width: 425px) {
    .mba-info-swiper-container .content h2 {
        font-weight: bold;
        font-size: 45px;
    }
}

@keyframes moveDown {
    0% {
        transform: translateY(-20px);
        opacity: 0;
    }

    100% {
        transform: translateY(0);
        opacity: 1;
    }
}




.mba-feature-items {
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(20px);
    border-radius: 10px;
    padding: 20px;
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
    transition: var(--transition);
    margin-top: -100px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    padding: 20px;
    width: max-content;
}







/
/* footer */

/* .footer {
  position: absolute;
  display: flex;
  justify-content: space-between;
  column-gap: 20px;
  bottom: 0;
  left: 50%;
  -ms-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  width: max-content;
  padding: 20px;
  color: #f2f2f2;
  border-radius: 8px 8px 0 0;
  border: 1px solid rgba(255, 255, 255, 0.2);
  background: rgba(255, 255, 255, 0.1);
  box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  z-index: 2;
}

.feature {
  display: flex;
  align-items: center;
  column-gap: 12px;
}

.feature i {
  font-size: 1.4rem;
}

.feature p {
  font-weight: 700;
}

.btn {
  display: block;
  font-weight: 700;
  text-align: center;
  text-transform: uppercase;
  color: #fff;
  padding: 15px 20px;
  border: 0;
  border-radius: 10px;
  box-shadow: 0px 0px 14px -7px #f09819;
  background-image: linear-gradient(
    45deg,
    #ff512f 0%,
    #f09819 51%,
    #ff512f 100%
  );
  background-size: 200% auto;
  cursor: pointer;
  user-select: none;
  -webkit-user-select: none;
  touch-action: manipulation;
  transition: 0.5s;
}

.btn:hover {
  background-position: right center;
}

.btn:active {
  transform: scale(0.95);
}

.logo {
  position: fixed;
  right: -20px;
  bottom: -35px;
  z-index: 10;
}

.logo img {
  width: 120px;
}

@media (max-width: 890px) {
  .logo {
  right: -10px;
  bottom: -20px;
}
  
 .logo img {
  width: 80px;
  }
} */

/* media queries */
/* 
@media (max-width: 1200px) {
  .content {
    top: 18%;
  }

  .content[data-content="two"],
  .content[data-content="three"] {
    top: 5%;
    width: 50%;
  }
}

@media (max-width: 900px) {
  .content,
  .content[data-content="three"] {
    top: 55%;
    left: 2%;
    width: 60%;
  }

  .content[data-content="two"] {
    top: 10%;
  }

  .content h1 {
    margin-bottom: 14px;
  }

  .content p {
    font-size: 1rem;
    line-height: 1.4;
  }

  .feature i {
    font-size: 1.3rem;
  }

  .feature p {
    font-size: 1rem;
  }

  .btn {
    padding: 8px 16px;
  }
}

@media (max-width: 790px) {
  .footer {
    column-gap: 10px;
  }

  .feature i {
    font-size: 1.1rem;
  }

  .feature p {
    font-size: 0.9rem;
  }

  .feature small {
    font-size: 0.8rem;
  }

  .btn {
    font-size: 0.8rem;
    padding: 8px 12px;
  }
}

@media (max-width: 660px) {
  .content,
  .content[data-content="two"],
  .content[data-content="three"] {
    top: unset;
    left: 2%;
    bottom: 3%;
    width: 80%;
  }

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

  .background[data-item="two"] {
    background-position: 40% 50%;
  }

  .swiper-pagination-bullet {
    width: 12px;
    height: 12px;
  }

  .swiper-pagination-bullet-active {
    height: 24px;
  }

  .footer {
    column-gap: 0;
    left: unset;
    bottom: unset;
    top: 20px;
    right: -30px;
    padding: 0;
    border-radius: 0;
    border: 0;
    background-color: transparent;
    box-shadow: unset;
    -webkit-backdrop-filter: blur(0);
    backdrop-filter: blur(0);
  }

  .feature,
  hr {
    display: none;
  }
} */

/* =========================================
   MBA Info Swiper Styling
========================================= */


.min-vh-75 {
    min-height: 75vh;
}

.hero-features i {
    font-size: 1.25rem;
}

.benefit-card,
.outcome-card {
    border: 1px solid rgba(0, 0, 0, 0.05);
    background-color: var(--white);
}

.benefit-card:hover,
.outcome-card:hover {
    background-color: var(--white);
    border-color: var(--primary-color);
}

.stat-box {
    transition: var(--transition);
}

.stat-box:hover {
    border-color: var(--primary-color) !important;
    background-color: var(--white) !important;
    transform: translateY(-3px);
}

.partnership-badge {
    z-index: 10;
}

@media (max-width: 991px) {
    .min-vh-75 {
        min-height: auto;
    }
}

/* =========================================
   Redesigned MBA Goals Styling
========================================= */

.mba-goals {
    background-color: var(--white);
    position: relative;
    overflow: hidden;
}

.goals-image-container {
    position: relative;
    padding: 20px;
}

.goals-bg-accent {
    position: absolute;
    top: 50px;
    left: -20px;
    width: 100%;
    height: 100%;
    background: var(--navy);
    opacity: 0.05;
    border-radius: 1.5rem;
    z-index: 0;
}

.goals-badge {
    min-width: 150px;
    text-align: center;
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.goals-list-grid li span {
    line-height: 1.4;
    transition: var(--transition);
}

.goals-list-grid li:hover span {
    color: var(--gold);
}

.goals-list-grid i {
    font-size: 1rem;
    background: linear-gradient(135deg, var(--gold), #f3e5ab);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

@media (max-width: 991px) {
    .goals-image-container {
        margin-bottom: 3rem;
    }
}

/* =========================================
   Redesigned MBA Objectives Styling
========================================= */

.objective-card-v3 {
    transition: var(--transition);
}

.objective-card-v3:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 30px rgba(38, 83, 103, 0.1) !important;
}

.objective-card-v3 .icon-box-sm {
    transition: var(--transition);
}

.objective-card-v3:hover .icon-box-sm {
    background-color: var(--gold) !important;
    color: var(--white) !important;
}

/* =========================================
   Academic Programmes Slider Styling
========================================= */

.mba-programmes-slider {
    background-color: var(--light-bg);
}

.program-card-premium {
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    border: 1px solid rgba(0, 0, 0, 0.05);
    display: flex;
    flex-direction: column;
}

.program-card-premium:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 40px rgba(38, 83, 103, 0.1) !important;
}

.program-card-premium .icon-box-lg {
    transition: all 0.4s ease;
}

.program-card-premium:hover .icon-box-lg {
    background-color: var(--gold) !important;
    color: var(--white) !important;
}

.program-card-premium h4 {
    transition: color 0.3s ease;
}

.program-card-premium:hover h4 {
    color: var(--gold) !important;
}

.btn-outline-navy {
    color: var(--navy);
    border: 2px solid var(--navy);
    transition: all 0.3s ease;
}

.btn-outline-navy:hover {
    background-color: var(--navy);
    color: var(--white);
}

.programSlider .swiper-pagination-bullet {
    width: 12px;
    height: 12px;
    background: var(--navy);
    opacity: 0.2;
    transition: all 0.3s ease;
}

.programSlider .swiper-pagination-bullet-active {
    width: 30px;
    border-radius: 6px;
    background: var(--gold);
    opacity: 1;
}

@media (max-width: 767px) {
    .program-card-premium {
        padding: 2rem !important;
    }
}


/* mba page course slider */

.travel-tour-section {
    position: relative;
    padding: 100px 60px;
    background: var(--primary-color);
    overflow: hidden;
}

.travel-tour-section .travel-wrapper {
    display: grid;
    grid-template-columns: 50% 45%;
    align-items: center;
    gap: 60px;
}

/* content */

.travel-content h1 {
    font-size: clamp(2rem, 4vw, 3.5rem);
    color: #fff;
    margin-bottom: 30px;
}

.travel-content p {
    color: #fff;
    font-size: 1.1rem;
    margin-bottom: 25px;
}

.travel-btn {
    background: var(--accent-color);
    color: var(--navy);
    border: none;
    padding: 14px 28px;
    border-radius: 50px;
    font-weight: 700;
    font-size: 1.05rem;
    letter-spacing: 0.5px;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 8px 20px rgba(212, 175, 55, 0.3);
    text-transform: uppercase;
    display: inline-block;
}

.travel-btn:hover {
    background: #fff;
    color: var(--navy) !important;
    transform: translateY(-3px);
    box-shadow: 0 12px 25px rgba(255, 255, 255, 0.3);
}

/* swiper */

.travel-swiper {
    width: 400px;
    height: 480px;
}

.travel-slide {
    border-radius: 24px;
    overflow: hidden;
    position: relative;
    border: 1px solid rgba(212, 175, 55, 0.4);
    /* subtle gold border */
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.2);
    background: url('../images/travel_slide_bg.jpg');
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    transition: transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.travel-slide::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to bottom, rgba(39, 81, 96, 0.2) 0%, rgba(39, 81, 96, 0.8) 100%);
    z-index: 1;
}

.travel-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* cost badge */

.travel-cost {
    position: absolute;
    top: 15px;
    right: 15px;
    padding: 8px 16px;
    border-radius: 30px;
    background: rgba(212, 175, 55, 0.9);
    /* gold */
    box-shadow: 0 4px 15px rgba(212, 175, 55, 0.4);
    color: var(--navy-dark);
    font-weight: 700;
    font-size: 13px;
    letter-spacing: 1px;
    text-transform: uppercase;
    z-index: 3;
}

.travel-dark {
    color: #fff;
    background: var(--secondary-color);
    box-shadow: 0 4px 15px rgba(133, 35, 65, 0.4);
}

/* overlay */

.travel-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 30px 20px 20px;
    background: linear-gradient(to top, rgba(39, 81, 96, 0.95) 0%, rgba(39, 81, 96, 0.6) 50%, transparent 100%);
    color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    /* Align content to bottom */
    align-items: center;
    text-align: center;
    gap: 15px;
    z-index: 2;
    /* Put above the slide gradient */
}

.travel-overlay h3 {
    margin-bottom: 0;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.2);
    padding: 12px 20px;
    border-radius: 12px;
    backdrop-filter: blur(15px);
    width: 100%;
    transition: all 0.3s ease;
}

.travel-overlay h3:hover {
    background: rgba(212, 175, 55, 0.2);
    border-color: rgba(212, 175, 55, 0.5);
    transform: translateY(-2px);
}

.travel-overlay p {
    background-color: transparent;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    color: rgba(255, 255, 255, 0.85);
    padding: 15px 10px 0;
    margin-bottom: 0;
    font-size: 0.95rem;
    border-radius: 0;
}

/* responsive */

@media(max-width:900px) {

    .travel-tour-section .travel-wrapper {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .travel-swiper {
        margin: auto;
    }

    .travel-tour-section {
        padding: 76px 30px;
    }


}

@media only screen and (max-width: 575px) {
    .travel-tour-section .travel-swiper {
        width: 330px !important;
    }
}

@media only screen and (max-width: 425px) {
    .travel-tour-section .travel-swiper {
        width: 290px !important;
    }
}

.c-exp-btn {
    position: relative;
    padding: 1.5rem 3rem;
    font-size: 1.1rem;
    font-weight: 600;
    color: #fff;
    background: none;
    border: none;
    cursor: pointer;
    overflow: hidden;
    transition: all 0.4s ease;
    min-width: 200px;
    z-index: 1;
}

.neon-pulse {
    background: #000;
    border: 2px solid var(--primary-color);
    box-shadow: 0 0 10px rgba(0, 255, 255, 0.3);
    overflow: visible;
}

.neon-pulse::before,
.neon-pulse::after {
    content: "";
    position: absolute;
    inset: -4px;
    border: 2px solid var(--accent-color);
    border-radius: inherit;
    animation: pulseOut 2s ease-out infinite;
    opacity: 0;
}

.neon-pulse::after {
    animation-delay: 1s;
}

@keyframes pulseOut {
    0% {
        transform: scale(1);
        opacity: 1;
    }

    100% {
        transform: scale(1.5);
        opacity: 0;
    }
}

/* Admission Steps CSS */
.mba-admission-steps {
    background-color: #f8f9fa;
    position: relative;
    overflow: hidden;
}

/* Premium Vertical Timeline */
.mba-admission-steps .premium-timeline {
    position: relative;
    max-width: 900px;
    margin: 0 auto;
    padding: 10px 0;
}

/* Center Line */
.mba-admission-steps .premium-timeline::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    width: 4px;
    background: linear-gradient(180deg, rgba(212, 175, 55, 0.1) 0%, rgba(39, 81, 96, 0.4) 50%, rgba(212, 175, 55, 0.1) 100%);
    left: 50%;
    transform: translateX(-50%);
    border-radius: 10px;
}

.mba-admission-steps .timeline-item {
    position: relative;
    width: 100%;
    /* margin-bottom: 25px; */
    display: flex;
    justify-content: flex-end;
    /* Default right alignment */
}

.mba-admission-steps .timeline-item:last-child {
    margin-bottom: 0;
}

/* Left items */
.mba-admission-steps .timeline-item.left {
    justify-content: flex-start;
}

/* Timeline center icon / number */
.mba-admission-steps .timeline-icon {
    position: absolute;
    left: 50%;
    top: 15px;
    transform: translateX(-50%);
    width: 45px;
    height: 45px;
    border-radius: 50%;
    background: #fff;
    border: 3px solid #fff;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
}

.mba-admission-steps .timeline-item:hover .timeline-icon {
    transform: translateX(-50%) scale(1.08);
    box-shadow: 0 6px 20px rgba(212, 175, 55, 0.3);
}

/* Timeline Content Box */
.timeline-content {
    width: 46%;
    padding: 20px 25px;
    background: #fff;
    border-radius: 12px;
    /* box-shadow: 0 5px 20px rgba(0, 0, 0, 0.03); */
    position: relative;
    transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    z-index: 1;
}

.timeline-content h4 {
    font-size: 1.15rem;
    margin-bottom: 8px !important;
}

.timeline-content p {
    font-size: 0.95rem;
}

.timeline-item:hover .timeline-content {
    transform: translateY(-3px);
    /* box-shadow: 0 10px 30px rgba(39, 81, 96, 0.06); */
}

.timeline-item.left .timeline-content {
    text-align: right;
}

/* Connecting Arrows (Triangles pointing to center) */
.timeline-item.left .timeline-content::after {
    content: '';
    position: absolute;
    top: 25px;
    right: -10px;
    width: 20px;
    height: 20px;
    background: #fff;
    transform: rotate(45deg);
    border-top: 1px solid rgba(0, 0, 0, 0.02);
    border-right: 1px solid rgba(0, 0, 0, 0.02);
    border-radius: 3px;
    z-index: -1;
}

.timeline-item.right .timeline-content::after {
    content: '';
    position: absolute;
    top: 25px;
    left: -10px;
    width: 20px;
    height: 20px;
    background: #fff;
    transform: rotate(45deg);
    border-bottom: 1px solid rgba(0, 0, 0, 0.02);
    border-left: 1px solid rgba(0, 0, 0, 0.02);
    border-radius: 3px;
    z-index: -1;
}

.border-color-secondary {
    border-color: var(--secondary-color) !important;
}

/* Responsive Timeline */
@media (max-width: 991px) {
    .premium-timeline::before {
        left: 40px;
    }

    .timeline-item {
        justify-content: flex-end !important;
        margin-bottom: 25px;
    }

    .timeline-icon {
        left: 30px;
        width: 38px;
        height: 38px;
        font-size: 1rem;
        top: 20px;
    }

    .timeline-item:hover .timeline-icon {
        transform: translateX(-50%) scale(1.05);
        /* Keep hover transform centered correctly */
    }

    .timeline-content {
        width: calc(100% - 65px);
        text-align: left !important;
        padding: 20px;
    }

    /* Move arrows to left side for all items on mobile */
    .timeline-item.left .timeline-content::after,
    .timeline-item.right .timeline-content::after {
        right: auto;
        left: -10px;
        border-right: none;
        border-top: none;
        border-bottom: 1px solid rgba(0, 0, 0, 0.02);
        border-left: 1px solid rgba(0, 0, 0, 0.02);
    }
}

/* Programme Benefits */
.benefit-card-premium {
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    padding: 2.5rem 2rem;
    border-radius: 1.25rem;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    position: relative;
    overflow: hidden;
}

.benefit-card-premium::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0) 100%);
    opacity: 0;
    transition: opacity 0.4s ease;
}

.benefit-card-premium:hover {
    transform: translateY(-8px);
    border-color: rgba(212, 175, 55, 0.3) !important;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.2);
}

.benefit-card-premium:hover::before {
    opacity: 1;
}

.benefit-icon-wrapper {
    width: 65px;
    height: 65px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.05);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.8rem;
    color: var(--accent-color);
    margin-bottom: 1.5rem;
    border: 1px solid rgba(255, 255, 255, 0.1);
    transition: all 0.4s ease;
}

.benefit-card-premium:hover .benefit-icon-wrapper {
    background: var(--accent-color);
    color: var(--primary-color) !important;
    transform: scale(1.1) rotate(5deg);
}

.benefit-card-premium:hover .benefit-icon-wrapper.text-gold {
    color: var(--primary-color) !important;
}

/* Bento Box Grid for Benefits */
.bento-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-gap: 20px;
    grid-auto-rows: minmax(220px, auto);
}

.bento-item {
    background: var(--primary-color);
    border: 1px solid rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border-radius: 1.25rem;
    padding: 2rem;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.bento-item::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: radial-gradient(circle at top right, rgba(212, 175, 55, 0.15) 0%, transparent 60%);
    opacity: 0;
    transition: opacity 0.5s ease;
    z-index: 0;
}

.bento-item:hover {
    transform: translateY(-5px);
    border-color: rgba(212, 175, 55, 0.4);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.3);
}

.bento-item:hover::after {
    opacity: 1;
}

.bento-content {
    position: relative;
    z-index: 1;
}

/* Span Classes */
.bento-span-2x2 {
    grid-column: span 2;
    grid-row: span 2;
    padding: 3rem;
}

.bento-span-2x1 {
    grid-column: span 2;
    grid-row: span 1;
}

.bento-span-1x2 {
    grid-column: span 1;
    grid-row: span 2;
}

.bento-span-1x1 {
    grid-column: span 1;
    grid-row: span 1;
}

.bento-span-4x4 {
    grid-column: span 4;
    grid-row: span 1;
}

.bento-icon {
    font-size: 2.5rem;
    color: var(--accent-color);
    margin-bottom: 1.5rem;
    display: inline-block;
    transition: transform 0.4s ease;
}

.bento-item:hover .bento-icon {
    transform: scale(1.1) rotate(5deg);
}

.bento-span-2x2 .bento-icon {
    font-size: 3.5rem;
    margin-bottom: 2rem;
}

.bento-bg-icon {
    position: absolute;
    right: -20px;
    bottom: -20px;
    font-size: 15rem;
    color: rgba(255, 255, 255, 0.02);
    z-index: 0;
    transform: rotate(-15deg);
    transition: all 0.5s ease;
}

.bento-item:hover .bento-bg-icon {
    color: rgba(212, 175, 55, 0.05);
    transform: rotate(0deg) scale(1.1);
}

/* @media (max-width: 991px) {
    .bento-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .bento-span-2x2,
    .bento-span-2x1,
    .bento-span-1x2,
    .bento-span-1x1 {
        grid-column: span 2;
        grid-row: auto;
    }
} */

@media (max-width: 992px) {
    .bento-grid {
        grid-template-columns: 1fr;
    }

    .bento-span-2x2,
    .bento-span-2x1,
    .bento-span-1x2,
    .bento-span-1x1,
    .bento-span-4x4 {
        grid-column: span 2;
        grid-row: span 1;
    }
}

@media (max-width: 575px) {
    .bento-grid {
        grid-template-columns: 1fr;
    }

    .bento-span-2x2,
    .bento-span-2x1,
    .bento-span-1x2,
    .bento-span-1x1,
    .bento-span-4x4 {
        grid-column: span 2;
        grid-row: span 2;
    }
}

/* Entry Requirements CSS */
.requirement-item {
    transition: all 0.3s ease;
    cursor: default;
}

.requirement-item:hover {
    transform: translateX(10px);
    box-shadow: 0 10px 30px rgba(39, 81, 96, 0.08) !important;
}

.req-icon-box {
    width: 60px;
    height: 60px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    transition: all 0.3s ease;
}

.requirement-item:hover .req-icon-box {
    transform: scale(1.1) rotate(5deg);
}

/* Glassmorphism Application Requirements */
.app-req-glass-card {
    background: rgba(255, 255, 255, 0.6);
    backdrop-filter: blur(25px);
    -webkit-backdrop-filter: blur(25px);
    border: 1px solid var(--accent-color);
    border-radius: 1.5rem;
    padding: 2.5rem 2rem;
    height: 100%;
    position: relative;
    overflow: hidden;
    transition: all 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.03);
}

.app-req-glass-card:hover {
    transform: translateY(-10px);
    background: rgba(255, 255, 255, 0.95);
    box-shadow: 0 20px 40px rgba(39, 81, 96, 0.1);
}

.app-req-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2rem;
}

.app-req-num-stroke {
    font-size: 4.5rem;
    font-weight: 900;
    line-height: 1;
    /* color: transparent; */
    /* -webkit-text-stroke: 2px rgba(39, 81, 96, 0.15); */
    font-family: var(--font-heading), sans-serif;
    transition: all 0.5s ease;
}

.app-req-glass-card:hover .app-req-num-stroke {
    /* -webkit-text-stroke: 2px var(--accent-color); */
    color: var(--accent-color);
    /* color: rgba(212, 175, 55, 0.1); */
    transform: translateX(10px);
}

.app-req-icon-circle {
    width: 65px;
    height: 65px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.6rem;
    background: #fff;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.06);
    transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
    perspective: 1000px;
}

.app-req-glass-card:hover .app-req-icon-circle {
    transform: rotateY(180deg);
}

.icon-inner {
    transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

.app-req-glass-card:hover .icon-inner {
    transform: rotateY(-180deg);
}

.app-req-accent {
    position: absolute;
    bottom: 0;
    left: 0;
    height: 5px;
    width: 0%;
    transition: width 0.6s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.app-req-glass-card:hover .app-req-accent {
    width: 100%;
}

.mba-courses-cta .btn-navy:hover .icon-circle-sm {
    transform: translateX(4px);
}

.mba-courses-cta .btn-navy:hover {
    box-shadow: 0 10px 20px rgba(39, 81, 96, 0.2) !important;
    transform: translateY(-2px);
}

/* =========================================
   Redesigned Doctorate Hero (Minimalist Academic)
   ========================================= */
.doctorate-hero-minimalist {
    position: relative;
    min-height: 95vh;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    text-align: center;
    background: #0a192f;
    overflow: hidden;
}

.doctorate-hero-minimalist .hero-bg-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.doctorate-hero-minimalist .hero-bg-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: brightness(0.4) saturate(0.8);
    transform: scale(1.05);
    transition: transform 10s ease-out;
}

.doctorate-hero-minimalist:hover .hero-bg-image {
    transform: scale(1);
}

.doctorate-hero-minimalist .hero-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to bottom, rgba(10, 25, 47, 0.4) 0%, rgba(10, 25, 47, 0.75) 100%);
    z-index: 2;
}

.doctorate-hero-minimalist .container {
    position: relative;
    z-index: 3;
    max-width: 900px;
}

.doctorate-hero-minimalist .hero-pre-title {
    font-family: var(--font-heading);
    text-transform: uppercase;
    letter-spacing: 0.3em;
    font-size: 0.9rem;
    color: var(--accent-color);
    margin-bottom: 1.5rem;
    display: block;
    font-weight: 600;
}

.doctorate-hero-minimalist .hero-title {
    font-family: var(--font-heading);
    font-size: clamp(3rem, 7vw, 5.5rem);
    font-weight: 700;
    line-height: 1;
    margin-bottom: 2.5rem;
    letter-spacing: -2px;
}

.doctorate-hero-minimalist .hero-description {
    font-family: var(--font-body);
    font-size: 1.2rem;
    line-height: 1.8;
    color: rgba(255, 255, 255, 0.85);
    margin-bottom: 3.5rem;
    max-width: 750px;
    margin-left: auto;
    margin-right: auto;
    font-weight: 300;
}

.doctorate-hero-minimalist .hero-cta-group {
    display: flex;
    gap: 1.5rem;
    justify-content: center;
    flex-wrap: wrap;
}

.btn-academic-primary {
    background: var(--accent-color);
    color: var(--primary-color);
    padding: 18px 45px;
    border-radius: 0;
    font-family: var(--font-heading);
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: var(--transition);
    border: 2px solid var(--accent-color);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
    display: inline-block;
    text-decoration: none;
}

.btn-academic-primary:hover {
    background: transparent;
    color: var(--accent-color);
    transform: translateY(-4px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.3);
}

.btn-academic-outline {
    background: transparent;
    color: white;
    padding: 18px 45px;
    border-radius: 0;
    font-family: var(--font-heading);
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: var(--transition);
    border: 1px solid rgba(255, 255, 255, 0.4);
    display: inline-block;
    text-decoration: none;
}

.btn-academic-outline:hover {
    background: rgba(255, 255, 255, 0.1);
    color: white;
    border-color: white;
    transform: translateY(-4px);
}

@media (max-width: 768px) {
    .doctorate-hero-minimalist {
        min-height: 80vh;
        padding-top: 80px;
    }

    .doctorate-hero-minimalist .hero-cta-group {
        flex-direction: column;
        gap: 1rem;
    }

    .btn-academic-primary,
    .btn-academic-outline {
        width: 100%;
        padding: 15px 30px;
    }
}

/* =========================================
   Doctorate Feature Highlights Strip
   ========================================= */
.doctorate-features-strip {
    border-top: none;
}

.d-feature-item {
    padding: 0;
    transition: var(--transition);
    position: relative;
    overflow: hidden;
}

.d-feature-item::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 4px;
    transform: scaleX(0);
    transition: transform 0.4s ease;
    transform-origin: left;
}

.d-feature-item:hover::before {
    transform: scaleX(1);
}

.d-feature-primary {
    background: var(--primary-color);
    color: white;
}

.d-feature-primary::before {
    background: var(--accent-color);
}

.d-feature-secondary {
    background: #0a192f;
    color: white;
}

.d-feature-secondary::before {
    background: var(--secondary-color);
}

.d-feature-accent {
    background: var(--secondary-color);
    color: white;
}

.d-feature-accent::before {
    background: var(--accent-color);
}

.d-feature-item:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.2);
    z-index: 2;
}

.d-feature-icon {
    width: 65px;
    height: 65px;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--accent-color);
    transition: var(--transition);
}

.d-feature-item:hover .d-feature-icon {
    background: rgba(255, 255, 255, 0.2);
    transform: rotate(-5deg) scale(1.1);
}

.d-feature-title {
    font-family: var(--font-heading);
    font-size: 1.6rem;
    font-weight: 700;
    color: white;
    margin-bottom: 1rem;
    letter-spacing: -0.5px;
}

.d-feature-desc {
    color: rgba(255, 255, 255, 0.75);
    font-size: 1rem;
    line-height: 1.75;
    margin: 0;
    font-weight: 300;
}

@media (max-width: 991px) {
    .d-feature-item:hover {
        transform: none;
    }

    .d-feature-item .p-5 {
        padding: 2.5rem !important;
    }
}

/* =========================================
   Doctorate Pathways Section
   ========================================= */
.doctorate-pathways {
    background: #f4f6f8;
}

.pathway-card {
    background: #ffffff;
    border-radius: 1.5rem;
    border: 1.5px solid rgba(0, 0, 0, 0.07);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    position: relative;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04);
}

.pathway-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 25px 60px rgba(39, 81, 96, 0.12);
    border-color: var(--accent-color);
}

/* Featured card */
.pathway-card--featured {
    background: var(--primary-color);
    border-color: var(--primary-color);
    transform: translateY(-8px);
    box-shadow: 0 30px 70px rgba(39, 81, 96, 0.25);
}

.pathway-card--featured:hover {
    transform: translateY(-16px);
    box-shadow: 0 40px 80px rgba(39, 81, 96, 0.35);
}

.pathway-card__featured-label {
    position: absolute;
    top: 1.25rem;
    right: 1.25rem;
    background: var(--accent-color);
    color: var(--primary-color);
    font-size: 0.75rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    padding: 5px 14px;
    border-radius: 50px;
}

.pathway-card__header {
    padding: 2.5rem 2.5rem 1.5rem;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}

.pathway-card--featured .pathway-card__header {
    border-bottom-color: rgba(255, 255, 255, 0.1);
}

.pathway-card__badge {
    font-family: var(--font-heading);
    font-size: 0.8rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: var(--accent-color);
    margin-bottom: 1rem;
}

.pathway-card__title {
    font-family: var(--font-heading);
    font-size: 1.45rem;
    font-weight: 700;
    color: var(--primary-color);
    line-height: 1.3;
    margin-bottom: 0.75rem;
    letter-spacing: -0.5px;
}

.pathway-card--featured .pathway-card__title {
    color: white;
}

.pathway-card__audience {
    font-size: 0.9rem;
    color: #888;
    margin: 0;
    display: flex;
    align-items: center;
}

.pathway-card--featured .pathway-card__audience {
    color: rgba(255, 255, 255, 0.7);
}

.pathway-card__body {
    padding: 2rem 2.5rem;
    flex: 1;
}

.pathway-card__accreditation {
    font-size: 0.88rem;
    color: #666;
    line-height: 1.6;
    margin-bottom: 1.75rem;
    padding: 1rem;
    background: rgba(212, 175, 55, 0.06);
    border-radius: 0.75rem;
    border-left: 3px solid var(--accent-color);
}

.pathway-card--featured .pathway-card__accreditation {
    background: rgba(255, 255, 255, 0.08);
    color: rgba(255, 255, 255, 0.75);
    border-left-color: var(--accent-color);
}

.pathway-card__features {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0.85rem;
}

.pathway-card__features li {
    display: flex;
    align-items: center;
    gap: 0.85rem;
    font-size: 0.95rem;
    font-weight: 500;
    color: #444;
}

.pathway-card--featured .pathway-card__features li {
    color: rgba(255, 255, 255, 0.85);
}

.pathway-card__features li i {
    width: 32px;
    height: 32px;
    background: rgba(39, 81, 96, 0.06);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--primary-color);
    font-size: 0.85rem;
    flex-shrink: 0;
}

.pathway-card--featured .pathway-card__features li i {
    background: rgba(255, 255, 255, 0.12);
    color: var(--accent-color);
}

.pathway-card__footer {
    padding: 1.75rem 2.5rem 2.5rem;
}

.pathway-card__cta {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 14px 24px;
    background: transparent;
    color: var(--primary-color);
    border: 2px solid var(--primary-color);
    border-radius: 0.75rem;
    font-family: var(--font-heading);
    font-weight: 700;
    font-size: 0.95rem;
    text-transform: uppercase;
    letter-spacing: 1px;
    text-decoration: none;
    transition: var(--transition);
}

.pathway-card__cta:hover {
    background: var(--primary-color);
    color: white;
    transform: translateY(-2px);
}

.pathway-card__cta--featured {
    background: var(--accent-color);
    color: var(--primary-color);
    border-color: var(--accent-color);
}

.pathway-card__cta--featured:hover {
    background: white;
    color: var(--primary-color);
    border-color: white;
}

@media (max-width: 991px) {
    .pathway-card--featured {
        transform: none;
    }
}

/* =========================================
   DBA Introduction Section
   ========================================= */
.dba-intro-section {
    background: #ffffff;
    position: relative;
}

.dba-section-line {
    width: 40px;
    height: 3px;
    background: var(--accent-color);
    display: inline-block;
    border-radius: 2px;
}

.dba-visual-card {
    padding: 1.5rem;
}

.dba-visual-accent {
    position: absolute;
    top: 2rem;
    right: -1rem;
    width: 85%;
    height: 90%;
    background: linear-gradient(135deg, rgba(39, 81, 96, 0.08), rgba(212, 175, 55, 0.08));
    border-radius: 1.5rem;
    z-index: 0;
}

.dba-floating-badge {
    bottom: 2rem;
    right: 0;
    background: white;
    padding: 1.25rem 1.5rem;
    border-radius: 1rem;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.1);
    text-align: center;
    animation: float 5s ease-in-out infinite;
}

.dba-who-apply {
    padding: 2rem;
    background: #f8f9fb;
    border-radius: 1rem;
    border-left: 4px solid var(--accent-color);
}

/* =========================================
   Entry Criteria Arrow Bars
   ========================================= */
.criteria-arrows-container {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    max-width: 950px;
    margin: 0 auto;
}

.criteria-arrow {
    display: flex;
    align-items: stretch;
    position: relative;
    border-radius: 0;
    overflow: visible;
    transition: transform 0.3s ease;
}

.criteria-arrow:hover {
    transform: translateX(12px);
}

.criteria-arrow__number {
    font-family: var(--font-heading);
    font-size: 3rem;
    font-weight: 900;
    color: white;
    padding: 1rem 1.75rem;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 100px;
    line-height: 1;
}

.criteria-arrow__body {
    flex: 1;
    display: flex;
    align-items: center;
    padding: 1.25rem 2rem;
}

.criteria-arrow__body p {
    margin: 0;
    color: white;
    font-size: 1.05rem;
    font-weight: 400;
    line-height: 1.6;
}

.criteria-arrow__tip {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 42px 0 50px 30px;
    flex-shrink: 0;
    align-self: center;
}

@media only screen and (max-width: 768px) {
    .criteria-arrow__tip {
        border-width: 40px 0 40px 30px;
    }
}

@media only screen and (max-width: 425px) {
    .criteria-arrow__tip {
        border-width: 50px 0 50px 30px !important;
        margin-left: -1px;
    }
}


/* Color 1 - Teal/Navy */
.criteria-arrow--1 .criteria-arrow__number,
.criteria-arrow--1 .criteria-arrow__body {
    background: #3a6f7f;
}

.criteria-arrow--1 .criteria-arrow__tip {
    border-color: transparent transparent transparent #3a6f7f;
}

/* Color 2 - Blue */
.criteria-arrow--2 .criteria-arrow__number,
.criteria-arrow--2 .criteria-arrow__body {
    background: #2196F3;
}

.criteria-arrow--2 .criteria-arrow__tip {
    border-color: transparent transparent transparent #2196F3;
}

/* Color 3 - Green */
.criteria-arrow--3 .criteria-arrow__number,
.criteria-arrow--3 .criteria-arrow__body {
    background: #8BC34A;
}

.criteria-arrow--3 .criteria-arrow__tip {
    border-color: transparent transparent transparent #8BC34A;
}

/* Color 4 - Brown/Copper */
.criteria-arrow--4 .criteria-arrow__number,
.criteria-arrow--4 .criteria-arrow__body {
    background: #b0855c;
}

.criteria-arrow--4 .criteria-arrow__tip {
    border-color: transparent transparent transparent #b0855c;
}

/* Number box has slightly darker shade */
.criteria-arrow--1 .criteria-arrow__number {
    background: #2d5a68;
}

.criteria-arrow--2 .criteria-arrow__number {
    background: #1976D2;
}

.criteria-arrow--3 .criteria-arrow__number {
    background: #7CB342;
}

.criteria-arrow--4 .criteria-arrow__number {
    background: #9b6f45;
}

@media (max-width: 768px) {
    .criteria-arrow__number {
        font-size: 2rem;
        min-width: 65px;
        padding: 0.75rem 1rem;
    }

    .criteria-arrow__body {
        padding: 1rem 1.25rem;
    }

    .criteria-arrow__body p {
        font-size: 0.9rem;
    }

    .criteria-arrow__tip {
        border-width: 40px 0 40px 20px;
    }

    .criteria-arrow:hover {
        transform: translateX(6px);
    }
}

/* =========================================
   Free Assessment CTA Banner
   ========================================= */
.free-assessment-cta {
    background: var(--primary-color);
    padding: 4rem 0;
    position: relative;
}

.free-assessment-cta::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: radial-gradient(circle at 90% 50%, rgba(212, 175, 55, 0.15) 0%, transparent 50%);
}

.assessment-inner {
    padding: 0;
}

/* =========================================
   Required Documents Section
   ========================================= */
.required-documents-section {
    background: #ffffff;
}

.doc-card {
    background: #f8f9fb;
    border-radius: 1.25rem;
    padding: 2.25rem;
    height: 100%;
    border: 1px solid rgba(0, 0, 0, 0.05);
    transition: all 0.35s ease;
    position: relative;
    overflow: hidden;
}

.doc-card:hover {
    transform: translateY(-8px);
    background: #ffffff;
    box-shadow: 0 20px 40px rgba(39, 81, 96, 0.08);
    border-color: var(--accent-color);
}

.doc-card__icon {
    width: 60px;
    height: 60px;
    background: white;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--primary-color);
    font-size: 1.75rem;
    margin-bottom: 1.5rem;
    box-shadow: 0 8px 15px rgba(0, 0, 0, 0.03);
    position: relative;
}

.doc-card:hover .doc-card__icon {
    background: var(--primary-color);
    color: white;
}

.doc-card__format {
    position: absolute;
    top: -8px;
    right: -25px;
    background: var(--accent-color);
    color: var(--primary-color);
    font-size: 0.65rem;
    font-weight: 800;
    padding: 3px 10px;
    border-radius: 4px;
    letter-spacing: 0.5px;
}

.doc-card__format--optional {
    background: #888;
    color: white;
}

.doc-card__title {
    font-family: var(--font-heading);
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--primary-color);
    margin-bottom: 1rem;
    letter-spacing: -0.3px;
}

.doc-card__text {
    font-size: 0.95rem;
    color: #666;
    line-height: 1.6;
    margin-bottom: 0;
}

.doc-card--wide {
    padding: 2rem 2.5rem;
}

@media (max-width: 991px) {
    .doc-card--wide .doc-card__icon {
        margin-bottom: 1.5rem;
    }
}

/* =========================================
   RE-DESIGN: DBA Curriculum (Deep Academic)
   ========================================= */
.dba-curriculum-section--dark {
    background-color: #0a192f;
    position: relative;
    overflow: hidden;
}

.dba-curriculum-section--dark::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: radial-gradient(circle at 50% 50%, rgba(39, 81, 96, 0.15) 0%, transparent 70%);
    pointer-events: none;
}

.badge-premium-modern--dark {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: var(--accent-color);
}

/* Redesigned Curriculum Cards */
.dba-curriculum-section--dark .curriculum-card {
    background: rgba(255, 255, 255, 0.03);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
    border-radius: 1.5rem;
    padding: 2.5rem;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.curriculum-card--glow-teal {
    border-top: 4px solid #20c997 !important;
}

.curriculum-card--glow-gold {
    border-top: 4px solid var(--accent-color) !important;
}

.curriculum-card--glow-blue {
    border-top: 4px solid #0d6efd !important;
}

.curriculum-card--glow-purple {
    border-top: 4px solid #6f42c1 !important;
}

.curriculum-card--glow-emerald {
    border-top: 4px solid #198754 !important;
}

.dba-curriculum-section--dark .curriculum-card:hover {
    background: rgba(255, 255, 255, 0.06);
    transform: translateY(-10px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.4);
}

.dba-curriculum-section--dark .curriculum-card__title {
    color: #ffffff;
    font-size: 1.45rem;
    font-weight: 700;
    margin-bottom: 0.75rem;
    font-family: var(--font-heading);
    letter-spacing: -0.5px;
}

.dba-curriculum-section--dark .curriculum-card__credits {
    font-size: 0.75rem;
    font-weight: 800;
    text-transform: uppercase;
    color: var(--primary-color);
    background: var(--accent-color);
    padding: 5px 14px;
    border-radius: 50px;
    letter-spacing: 1.2px;
    display: inline-block;
}

.dba-curriculum-section--dark .curriculum-card__icon {
    width: 60px;
    height: 60px;
    background: rgba(255, 255, 255, 0.05);
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    transition: all 0.3s ease;
}

.curriculum-card__icon--teal {
    color: #20c997 !important;
}

.curriculum-card__icon--gold {
    color: var(--accent-color) !important;
}

.curriculum-card__icon--blue {
    color: #0d6efd !important;
}

.curriculum-card__icon--purple {
    color: #6f42c1 !important;
}

.dba-curriculum-section--dark .curriculum-card:hover .curriculum-card__icon {
    background: var(--primary-color);
    color: white !important;
    transform: rotate(-10deg) scale(1.1);
}

.dba-curriculum-section--dark .curriculum-module {
    margin-bottom: 1.75rem;
    padding-left: 1.5rem;
    border-left: 3px solid rgba(255, 255, 255, 0.1);
    transition: all 0.3s ease;
}

.dba-curriculum-section--dark .curriculum-card:hover .curriculum-module {
    border-left-color: var(--accent-color);
}

.dba-curriculum-section--dark .curriculum-module__name {
    font-size: 1.1rem;
    font-weight: 700;
    color: rgba(255, 255, 255, 0.9);
    margin-bottom: 0.5rem;
}

.dba-curriculum-section--dark .curriculum-module__desc {
    font-size: 0.95rem;
    color: rgba(255, 255, 255, 0.6);
    line-height: 1.6;
    margin-bottom: 0;
}

/* Hover Accent States */
.curriculum-card--glow-teal:hover {
    border-color: #20c997 !important;
    box-shadow: 0 10px 40px rgba(32, 201, 151, 0.1) !important;
}

.curriculum-card--glow-gold:hover {
    border-color: var(--accent-color) !important;
    box-shadow: 0 10px 40px rgba(212, 175, 55, 0.1) !important;
}

.curriculum-card--glow-blue:hover {
    border-color: #0d6efd !important;
    box-shadow: 0 10px 40px rgba(13, 110, 253, 0.1) !important;
}

.curriculum-card--glow-purple:hover {
    border-color: #6f42c1 !important;
    box-shadow: 0 10px 40px rgba(111, 66, 193, 0.1) !important;
}

.curriculum-card--glow-emerald:hover {
    border-color: #198754 !important;
    box-shadow: 0 10px 40px rgba(25, 135, 84, 0.1) !important;
}

/* Research Cards */
.curriculum-card--research {
    padding: 2.25rem;
}

/* Stage Cards Dark Version */
.curriculum-stage-card--dark {
    background: rgba(255, 255, 255, 0.02) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    padding: 2.5rem;
    border-radius: 1.5rem;
    display: flex;
    gap: 1.75rem;
    align-items: flex-start;
    height: 100%;
    transition: all 0.4s ease;
}

.curriculum-stage-card--dark .stage-icon {
    width: 64px;
    height: 64px;
    background: rgba(255, 255, 255, 0.05) !important;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: var(--accent-color) !important;
    font-size: 1.75rem;
    transition: all 0.3s ease;
}

.curriculum-stage-card--featured-dark {
    border: 2px dashed var(--accent-color) !important;
    background: rgba(212, 175, 55, 0.03) !important;
}

.curriculum-stage-card--dark:hover {
    background: var(--primary-color) !important;
    transform: translateY(-5px);
}

.curriculum-stage-card--dark:hover * {
    color: white !important;
}

.stage-title {
    font-size: 1.35rem;
    font-weight: 700;
    margin-bottom: 0.75rem;
    display: flex;
    align-items: center;
    gap: 12px;
    font-family: var(--font-heading);
}

.badge-ects {
    font-size: 0.75rem;
    background: var(--accent-color);
    color: var(--primary-color);
    padding: 3px 10px;
    border-radius: 6px;
    text-transform: uppercase;
    font-weight: 800;
    letter-spacing: 0.5px;
}

.stage-desc {
    font-size: 0.95rem;
    line-height: 1.6;
}

@media (max-width: 768px) {
    .curriculum-stage-card--dark {
        flex-direction: column;
        padding: 2rem;
    }
}

/* =========================================
   Admission Process Section
   ========================================= */
.admission-process-section {
    background: #ffffff;
    position: relative;
    overflow: hidden;
}

.process-step-card {
    background: #f8f9fa;
    padding: 2.5rem;
    border-radius: 1.5rem;
    height: 100%;
    border: 1px solid rgba(0, 0, 0, 0.05);
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    position: relative;
    z-index: 1;
}

.process-step-card:hover {
    background: #ffffff;
    transform: translateY(-8px);
    box-shadow: 0 20px 40px rgba(39, 81, 96, 0.1);
    border-color: var(--accent-color);
}

.step-number {
    font-family: var(--font-heading);
    font-size: 2.5rem;
    font-weight: 800;
    color: rgba(39, 81, 96, 0.06);
    position: absolute;
    top: 1.5rem;
    right: 2rem;
    line-height: 1;
    transition: all 0.4s ease;
}

.process-step-card:hover .step-number {
    color: var(--accent-color);
    opacity: 0.2;
    transform: scale(1.1);
}

.step-title {
    font-family: var(--font-heading);
    font-size: 1.35rem;
    font-weight: 700;
    color: var(--primary-color);
    margin-bottom: 1.25rem;
    position: relative;
    padding-bottom: 0.75rem;
}

.step-title::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 40px;
    height: 3px;
    background: var(--accent-color);
    border-radius: 2px;
    transition: width 0.4s ease;
}

.process-step-card:hover .step-title::after {
    width: 60px;
}

.step-desc {
    font-size: 1rem;
    color: #666;
    line-height: 1.6;
    margin-bottom: 0;
}

/* Premium Start Application Button */
.btn-application-start {
    display: inline-flex;
    align-items: center;
    gap: 1.5rem;
    background: var(--primary-color);
    color: #ffffff !important;
    padding: 1.25rem 3.5rem;
    border-radius: 50px;
    font-family: var(--font-heading);
    font-size: 1.15rem;
    font-weight: 700;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    box-shadow: 0 10px 25px rgba(39, 81, 96, 0.25);
}

.btn-application-start:hover {
    background: var(--accent-color);
    color: var(--primary-color) !important;
    transform: scale(1.05) translateY(-5px);
    box-shadow: 0 15px 35px rgba(212, 175, 55, 0.3);
}

.btn-application-start i {
    font-size: 1.25rem;
    transition: transform 0.4s ease;
}

.btn-application-start:hover i {
    transform: translateX(8px);
}

@media (max-width: 991px) {
    .process-step-card {
        padding: 2rem;
    }
}

/* =========================================
   RE-DESIGN: Admission Process (Vertical Timeline)
   ========================================= */
.doctorate-process-section .timeline-wrapper {
    position: relative;
    max-width: 1000px;
    margin: 0 auto;
    padding: 20px 0;
}

.doctorate-process-section .timeline-line {
    position: absolute;
    left: 50%;
    top: 0;
    bottom: 0;
    width: 2px;
    background: linear-gradient(to bottom, transparent, var(--primary-color) 10%, var(--primary-color) 90%, transparent);
    transform: translateX(-50%);
    z-index: 0;
}

.doctorate-process-section .timeline-item {
    display: flex;
    justify-content: flex-end;
    padding-right: 50%;
    position: relative;
    /* margin-bottom: 30px; */
    width: 100%;
}

.doctorate-process-section .timeline-right {
    justify-content: flex-start;
    padding-right: 0;
    padding-left: 50%;
}

.doctorate-process-section .timeline-node {
    position: absolute;
    left: 50%;
    top: 0;
    width: 36px;
    height: 36px;
    background: var(--primary-color);
    border: 3px solid #fff;
    border-radius: 50%;
    transform: translateX(-50%);
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--accent-color);
    font-family: var(--font-heading);
    font-weight: 800;
    font-size: 0.85rem;
    box-shadow: 0 0 0 3px rgba(39, 81, 96, 0.05);
    transition: all 0.3s ease;
}

.doctorate-process-section .timeline-item:hover .timeline-node {
    background: var(--accent-color);
    color: var(--primary-color);
    transform: translateX(-50%) scale(1.15);
    box-shadow: 0 0 20px rgba(212, 175, 55, 0.3);
}

.doctorate-process-section .timeline-content {
    width: 90%;
    padding: 0 30px;
}

.doctorate-process-section .timeline-card {
    background: #f8f9fa;
    padding: 15px 1.5rem;
    border-radius: 1.5rem;
    border: 1px solid rgba(0, 0, 0, 0.05);
    transition: all 0.4s ease;
    position: relative;
}

.doctorate-process-section .timeline-card:hover {
    background: #ffffff;
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(39, 81, 96, 0.1);
    border-color: var(--accent-color);
}

.timeline-title {
    font-family: var(--font-heading);
    font-size: 1.15rem;
    font-weight: 700;
    color: var(--primary-color);
    margin-bottom: 0.5rem;
}

.timeline-desc {
    font-size: 0.9rem;
    color: #555;
    line-height: 1.5;
    margin-bottom: 0;
}

/* Premium V2 Application Button */
.cta-anchor-box {
    position: relative;
    padding: 25px 40px;
    background: rgba(39, 81, 96, 0.03);
    border-radius: 2rem;
    border: 1px dashed rgba(39, 81, 96, 0.1);
}

.btn-application-start-v2 {
    display: inline-flex;
    align-items: center;
    gap: 1.5rem;
    background: linear-gradient(135deg, var(--primary-color), #2c5d6e);
    color: #ffffff !important;
    padding: 1.4rem 4rem;
    border-radius: 60px;
    font-family: var(--font-heading);
    font-size: 1.2rem;
    font-weight: 700;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 2px;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    box-shadow: 0 15px 30px rgba(39, 81, 96, 0.2);
}

.btn-application-start-v2:hover {
    transform: scale(1.05) translateY(-5px);
    background: var(--accent-color);
    color: var(--primary-color) !important;
    box-shadow: 0 20px 40px rgba(212, 175, 55, 0.4);
}

.btn-application-start-v2 i {
    transition: transform 0.4s ease;
}

.btn-application-start-v2:hover i {
    transform: translateX(10px);
}

.border-gold-light {
    border: 2px solid rgba(212, 175, 55, 0.3) !important;
    background: rgba(212, 175, 55, 0.02) !important;
}

@media (max-width: 768px) {
    .timeline-line {
        left: 30px;
    }

    .timeline-item {
        padding-right: 0;
        padding-left: 60px;
        justify-content: flex-start;
    }

    .timeline-right {
        padding-left: 60px;
    }

    .timeline-node {
        left: 30px;
    }

    .timeline-content {
        width: 100%;
        padding: 0;
    }
}

.pub-doc-card {
    transition: all 0.3s;
}

.pub-doc-card:hover {
    border-left-color: var(--secondary-color) !important;
}

/* ========================================= */
/* PREMIUM EYE-CATCHING UTILITIES (MBA PAGE) */
/* ========================================= */
.glass-panel {
    background: rgba(255, 255, 255, 0.85) !important;
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border: 1px solid rgba(255, 255, 255, 0.6) !important;
    box-shadow: 0 25px 50px rgba(39, 81, 96, 0.08) !important;
}

.text-gradient-gold {
    background: linear-gradient(135deg, #FFDF40 0%, #D4AF37 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    display: inline-block;
}

@keyframes float-gentle {
    0% {
        transform: translateY(0px);
    }

    50% {
        transform: translateY(-8px);
    }

    100% {
        transform: translateY(0px);
    }
}

.floating-element {
    animation: float-gentle 5s ease-in-out infinite;
}

.hover-lift-premium {
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275) !important;
}

.hover-lift-premium:hover {
    transform: translateY(-8px) scale(1.02);
    box-shadow: 0 25px 50px rgba(39, 81, 96, 0.15) !important;
    border-color: var(--accent-color) !important;
    z-index: 10;
}

.glow-icon {
    filter: drop-shadow(0 0 10px rgba(212, 175, 55, 0.4));
}

.hero-parallax-overlay {
    background: linear-gradient(135deg, rgba(39, 81, 96, 0.92) 0%, rgba(39, 81, 96, 0.98) 100%);
}

/* Dynamic Backend Loop Staggering */
@media (min-width: 992px) {
    .staggered-grid-wrapper>[class*="col-"]:nth-child(3n+2) {
        margin-top: 3.5rem;
    }
}

/* course details page css start */

/* Custom Accordion CSS */
.module-accordion .accordion-button {
    box-shadow: none !important;
    border-radius: 0 !important;
}

.module-accordion .accordion-button:not(.collapsed) {
    background-color: var(--navy-dark);
    color: #fff;
}

.module-accordion .accordion-button:not(.collapsed)::after {
    filter: invert(1) brightness(2);
}

.module-accordion .accordion-item {
    border: none;
    border-radius: 0 !important;
    border-left: 5px solid var(--secondary-color);
    margin-bottom: 10px;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.07);
    background: #fff;
}

.module-accordion .accordion-item.accent-primary {
    border-left-color: var(--primary-color);
}

.module-accordion .accordion-item.accent-capstone {
    border-left-color: var(--accent-color);
}

.module-accordion .accordion-button {
    font-weight: 600;
    font-size: 1rem;
    padding: 1.1rem 1.5rem;
}

.module-accordion .accordion-button .module-code {
    font-size: 0.78rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--accent-color);
    min-width: 72px;
    display: inline-block;
}

.module-accordion .accordion-button:not(.collapsed) .module-code {
    color: var(--accent-color);
}

.module-accordion .accordion-body {
    background: #f8f9fa;
    padding: 1.25rem 1.5rem 1.4rem 1.5rem;
    border-top: 1px solid rgba(0, 0, 0, 0.06);
}

.module-accordion .ect-badge {
    font-size: 0.78rem;
    border-radius: 30px;
    padding: 0.3rem 0.85rem;
    font-weight: 600;
    white-space: nowrap;
}

/* Capstone row */
.module-accordion .accordion-item.accent-capstone .accordion-button {
    background-color: var(--navy-dark);
    color: #fff;
}

.module-accordion .accordion-item.accent-capstone .accordion-button::after {
    filter: invert(1) brightness(2);
}

.module-accordion .accordion-item.accent-capstone .accordion-body {
    background-color: #0e2b36;
    color: rgba(255, 255, 255, 0.88);
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.featured-acc-card {
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
}

.hover-lift-premium {
    transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1), box-shadow 0.4s ease;
}

.hover-lift-premium:hover {
    transform: translateY(-8px);
    box-shadow: 0 15px 30px rgba(0, 0, 0, 0.2);
}

.btn-assessment-link {
    background-color: var(--primary-color);
    padding: 20px;
    border-radius: 50px;
}

.btn-assessment-link:hover {
    color: #fff !important;
    transform: translateX(5px);
    background-color: var(--accent-color);
}

/* // */

.learning-methods-section {

    .flow-card {
        background-color: #ffffff;
        height: 100%;
        padding: 2rem 1.5rem;
        border-radius: 4px;
        box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03);
        position: relative;
        transition: transform 0.3s ease, box-shadow 0.3s ease;
        border: 1px solid rgba(0, 0, 0, 0.03);
    }

    .flow-card:hover {
        transform: translateY(-5px);
        box-shadow: 0 10px 25px rgba(0, 0, 0, 0.06);
    }

    .flow-card-title {
        font-size: 1.45rem;
        font-weight: 800;
        color: #2D3748;
        line-height: 1.3;
        margin-bottom: 1.25rem;
    }

    .flow-card-desc {
        font-size: 0.95rem;
        color: #718096;
        line-height: 1.6;
        margin-bottom: 0;
    }

    .flow-chevron {
        position: absolute;
        top: 50%;
        right: -1.75rem;
        transform: translateY(-50%);
        z-index: 10;
        display: none;
    }

    .flow-chevron svg {
        width: 25px;
        height: 50px;
        color: #906B3E;
    }
}


/* Desktop (6 columns) */
@media (min-width: 1200px) {
    .learning-methods-section .flow-col:not(:last-child) .flow-chevron {
        display: block;
    }
}

/* Tablet (3 columns, 2 rows) */
@media (min-width: 768px) and (max-width: 1199.98px) {

    .learning-methods-section .flow-col:nth-child(1) .flow-chevron,
    .learning-methods-section .flow-col:nth-child(2) .flow-chevron,
    .learning-methods-section .flow-col:nth-child(4) .flow-chevron,
    .learning-methods-section .flow-col:nth-child(5) .flow-chevron {
        display: block;
    }
}

/* FAQ Section */
.premium-faq-accordion .accordion-item {
    transition: all 0.3s ease;
    border-left: 4px solid transparent !important;
}

.premium-faq-accordion .accordion-item:hover {
    box-shadow: 0 .5rem 1.5rem rgba(0, 0, 0, .05) !important;
    transform: translateY(-2px);
}

.premium-faq-accordion .accordion-button {
    background-color: #ffffff;
    padding: 1.5rem;
    color: var(--navy-dark);
}

.premium-faq-accordion .accordion-button:not(.collapsed) {
    background-color: transparent;
    color: var(--navy-dark);
    box-shadow: none;
}

.premium-faq-accordion .accordion-button:not(.collapsed)::after {
    filter: invert(53%) sepia(85%) saturate(302%) hue-rotate(352deg) brightness(85%) contrast(87%);
    /* gold-ish color hack */
}

.premium-faq-accordion .accordion-button:focus {
    box-shadow: none;
}

/* Use structural pseudo-class for active border */
.premium-faq-accordion .accordion-item:has(> .accordion-header > .accordion-button:not(.collapsed)) {
    border-left-color: var(--accent-color) !important;
}

.premium-faq-accordion .accordion-body {
    background-color: #ffffff;
    line-height: 1.7;
    font-size: 1.05rem;
    padding: 0 1.5rem 1.5rem 1.5rem;
}

.course_accr_items_list {
    max-height: 400px;
    overflow-x: scroll;
    --webkit-scrollbar: none;
    scrollbar-width: none;
}

.cd_app_docs {
    .step-num.bg-gold {
        background-color: var(--accent-color) !important;
        color: var(--navy-dark) !important;
    }

    .required-docs-accordion .accordion-button::after {
        filter: invert(1);
        opacity: 0.5;
    }
}

@media screen and (max-width: 375px) {
    .cda-btn {
        font-size: 12px;
    }
}

/* course details page css end */

/* course page css start */

.all-courses-lists {
    padding: 80px 0;
}

.filter-meta {
    margin-top: 10px;
    font-size: 13px;
    opacity: 0.7;
}

.course-filter-premium {
    background: var(--glass-background);
    backdrop-filter: blur(14px);
    border-radius: 18px;
    padding: 22px;
    box-shadow: var(--shadow-soft);
    border: 1px solid rgba(255, 255, 255, 0.4);
}

/* top search bar */

.filter-bar {
    display: flex;
    gap: 12px;
    align-items: center;
}

/* input group */

.input-group {
    flex: 1;
    position: relative;
}

.input-group input {
    width: 100%;
    padding: 14px 16px 14px 42px;
    border-radius: 12px;
    border: 1px solid #e0e0e0;
    font-family: var(--font-body);
    transition: var(--transition);
    background: var(--white);
}

.input-group input:focus {
    outline: none;
    border-color: var(--primary-color);
    box-shadow: 0 0 0 4px rgba(39, 81, 96, 0.08);
}

/* search icon */

.search-icon {
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 14px;
    opacity: 0.6;
}

/* search button */

.search-btn {
    padding: 14px 22px;
    border: none;
    border-radius: 12px;
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
    color: var(--white);
    font-weight: 600;
    cursor: pointer;
    transition: var(--transition);
}

.search-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
}

/* divider */

.filter-divider {
    height: 1px;
    background: rgba(0, 0, 0, 0.06);
    margin: 18px 0;
}

/* categories */

.filter-categories {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

/* chips */

.filter-chip {
    text-decoration: none;
    padding: 8px 18px;
    border-radius: 999px;
    font-size: 14px;
    font-weight: 500;
    color: var(--primary-color);
    background: var(--white);
    border: 1px solid rgba(39, 81, 96, 0.15);
    transition: var(--transition);
}

/* hover */

.filter-chip:hover {
    background: rgba(39, 81, 96, 0.08);
}

/* active */

.filter-chip.active {
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
    color: var(--white);
    border: none;
}

/* course page css end */

/* ======================= request info modal start ======================= */

/* Modal container */
.custom-modal {
    border-radius: 16px;
    background: var(--glass-background);
    backdrop-filter: blur(12px);
    box-shadow: var(--shadow-soft);
    border: 1px solid rgba(255, 255, 255, 0.3);
    font-family: var(--font-body);
}

/* Header */
.custom-modal .modal-title {
    font-family: var(--font-heading);
    color: var(--primary-color);
}

/* Labels */
.custom-modal .form-label {
    font-size: 0.85rem;
    font-weight: 500;
    color: var(--text-color);
}

/* Optional text */
.custom-modal .optional {
    font-size: 0.75rem;
    color: #999;
}

/* Inputs */
.custom-modal .custom-input {
    border-radius: 10px;
    border: 1px solid #e0e0e0;
    padding: 10px 12px;
    transition: var(--transition);
    background: rgba(255, 255, 255, 0.7);
}

.custom-modal .custom-input:focus {
    border-color: var(--primary-color);
    box-shadow: 0 0 0 3px rgba(39, 81, 96, 0.1);
    background: var(--white);
}

/* Button */
.custom-modal .custom-btn {
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
    border: none;
    border-radius: 10px;
    font-weight: 500;
    transition: var(--transition);
}

.custom-modal .custom-btn:hover {
    opacity: 0.9;
    transform: translateY(-1px);
}

/* Footer spacing */
.custom-modal .modal-footer {
    gap: 10px;
}

/* ======================= request info modal end ======================= */

/* ======================= curriculumn modal css start ======================= */
/* Accordion container */
.custom-accordion .accordion-item {
    border: none;
    border-radius: 12px;
    margin-bottom: 10px;
    overflow: hidden;
    box-shadow: var(--shadow-soft);
}

/* Header button */
.custom-accordion .accordion-button {
    background: var(--white);
    border: none;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 14px 16px;
    transition: var(--transition);
}

/* Remove default arrow style glow */
.accordion-button:focus {
    box-shadow: none;
}

/* When open */
.custom-accordion .accordion-button:not(.collapsed) {
    background: rgba(39, 81, 96, 0.05);
    color: var(--primary-color);
}

/* Course code */
.course-code {
    font-weight: 600;
    color: var(--secondary-color);
    min-width: 80px;
}

/* Course title */
.course-title {
    flex-grow: 1;
    font-size: 0.95rem;
}

/* Credit */
.course-credit {
    font-size: 0.8rem;
    color: var(--accent-color);
    font-weight: 500;
}

/* Body */
.accordion-body {
    font-size: 0.9rem;
    color: #555;
    background: rgba(255, 255, 255, 0.6);
    backdrop-filter: blur(8px);
}

/* ======================= curriculumn modal css end ======================= */

.pagination-modern {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 6px;
    margin-top: 35px;
    font-family: var(--font-body);
}

.pagination-modern .disabled {
    pointer-events: none;
    opacity: 0.4;
    cursor: not-allowed;
}

.pagination-modern .disabled.active {
    opacity: 1;
}

/* Page numbers */
.page-number {
    width: 38px;
    height: 38px;
    border-radius: 10px;
    border: 1px solid #e6e6e6;
    background: #fff;
    color: var(--text-color);
    font-size: 0.9rem;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: var(--transition);
}

/* Hover */
.page-number:hover {
    border-color: var(--primary-color);
    color: var(--primary-color);
}

/* Active */
.page-number.active {
    background: var(--primary-color);
    color: #fff;
    border-color: var(--primary-color);
}

/* Navigation arrows */
.nav-btn {
    width: 38px;
    height: 38px;
    border-radius: 10px;
    border: 1px solid #e6e6e6;
    background: #fff;
    cursor: pointer;
    font-size: 1.2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: var(--transition);
}

/* Hover nav */
.nav-btn:hover {
    background: var(--primary-color);
    color: #fff;
    border-color: var(--primary-color);
}

/* Disabled nav */
.nav-btn:disabled {
    opacity: 0.4;
    cursor: not-allowed;
}

/* Ellipsis */
.ellipsis {
    padding: 0 6px;
    color: #999;
}

/* ============= toast component css start ============= */

#toast {
    visibility: hidden;
    max-width: 50px;
    height: 50px;
    /*margin-left: -125px;*/
    margin: auto;
    background-color: #333;
    color: #fff;
    text-align: center;
    border-radius: 2px;

    position: fixed;
    z-index: 1;
    left: 0;
    right: 0;
    bottom: 30px;
    font-size: 17px;
    white-space: nowrap;
}

#toast #img {
    width: 50px;
    height: 50px;

    float: left;

    padding-top: 16px;
    padding-bottom: 16px;

    box-sizing: border-box;


    background-color: #111;
    color: #fff;
}

#toast #desc {


    color: #fff;

    padding: 16px;

    overflow: hidden;
    white-space: nowrap;
}

#toast.show {
    visibility: visible;
    -webkit-animation: fadein 0.5s, expand 0.5s 0.5s, stay 3s 1s, shrink 0.5s 2s, fadeout 0.5s 2.5s;
    animation: fadein 0.5s, expand 0.5s 0.5s, stay 3s 1s, shrink 0.5s 4s, fadeout 0.5s 4.5s;
}

@-webkit-keyframes fadein {
    from {
        bottom: 0;
        opacity: 0;
    }

    to {
        bottom: 30px;
        opacity: 1;
    }
}

@keyframes fadein {
    from {
        bottom: 0;
        opacity: 0;
    }

    to {
        bottom: 30px;
        opacity: 1;
    }
}

@-webkit-keyframes expand {
    from {
        min-width: 50px
    }

    to {
        min-width: 350px
    }
}

@keyframes expand {
    from {
        min-width: 50px
    }

    to {
        min-width: 350px
    }
}

@-webkit-keyframes stay {
    from {
        min-width: 350px
    }

    to {
        min-width: 350px
    }
}

@keyframes stay {
    from {
        min-width: 350px
    }

    to {
        min-width: 350px
    }
}

@-webkit-keyframes shrink {
    from {
        min-width: 350px;
    }

    to {
        min-width: 50px;
    }
}

@keyframes shrink {
    from {
        min-width: 350px;
    }

    to {
        min-width: 50px;
    }
}

@-webkit-keyframes fadeout {
    from {
        bottom: 30px;
        opacity: 1;
    }

    to {
        bottom: 60px;
        opacity: 0;
    }
}

@keyframes fadeout {
    from {
        bottom: 30px;
        opacity: 1;
    }

    to {
        bottom: 60px;
        opacity: 0;
    }
}

/* ============= toast component css end ============= */

/* Banner */
.hs-apply-banner {
    padding: 80px 20px;
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
    color: #fff;
}

.hs-apply-title {
    font-family: var(--font-heading);
    font-size: 2.2rem;
}

.hs-apply-subtitle {
    opacity: 0.9;
}

/* Section */
.hs-apply-section {
    padding: 60px 20px;
    background: var(--light-gray);
}

/* Card */
.hs-apply-card {
    max-width: 850px;
    margin: auto;
    padding: 35px;
    border-radius: 16px;
    background: var(--glass-background);
    backdrop-filter: blur(10px);
    box-shadow: var(--shadow-soft);
}

/* Titles */
.hs-apply-form-title {
    font-family: var(--font-heading);
    color: var(--primary-color);
}

.hs-apply-form-subtitle {
    font-size: 0.9rem;
    color: #666;
    margin-bottom: 20px;
}

/* Labels */
.hs-apply-label {
    font-size: 0.85rem;
    font-weight: 500;
    color: var(--text-color);
}

/* Section titles */
.hs-apply-section-title {
    font-weight: 600;
    margin-top: 15px;
    color: var(--secondary-color);
    border-left: 3px solid var(--accent-color);
    padding-left: 10px;
}

/* Inputs */
.hs-apply-input {
    border-radius: 10px;
    padding: 10px 12px;
    border: 1px solid #ddd;
    transition: var(--transition);
}

.hs-apply-input:focus {
    border-color: var(--primary-color);
    box-shadow: 0 0 0 3px rgba(39, 81, 96, 0.1);
}

/* Button */
.hs-apply-btn {
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
    border: none;
    border-radius: 10px;
    color: #fff;
    font-weight: 500;
    transition: var(--transition);
}

.hs-apply-btn:hover {
    transform: translateY(-2px);
    opacity: 0.95;
}

/* Optional */
.hs-apply-optional {
    font-size: 0.75rem;
    color: #999;
}

.hs-apply-checkbox-group {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 10px;
    margin-top: 5px;
}

.hs-apply-checkbox {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border-radius: 10px;
    border: 1px solid #ddd;
    background: rgba(255, 255, 255, 0.7);
    backdrop-filter: blur(6px);
    cursor: pointer;
    transition: var(--transition);
    font-size: 0.9rem;
}

/* Hide default checkbox */
.hs-apply-checkbox input {
    accent-color: var(--primary-color);
}

/* Hover */
.hs-apply-checkbox:hover {
    border-color: var(--primary-color);
    transform: translateY(-1px);
}

/* Checked state styling */
.hs-apply-checkbox input:checked+span {
    color: var(--primary-color);
    font-weight: 500;
}

/* Section */
.hs-contact-section {
    padding: 60px 20px;
    background: var(--light-gray);
}

/* Card */
.hs-contact-card {
    max-width: 750px;
    margin: auto;
    padding: 35px;
    border-radius: 16px;
    background: var(--glass-background);
    backdrop-filter: blur(10px);
    box-shadow: var(--shadow-soft);
}

/* Title */
.hs-contact-title {
    font-family: var(--font-heading);
    color: var(--primary-color);
    margin-bottom: 5px;
}

/* Subtitle */
.hs-contact-subtitle {
    font-size: 0.9rem;
    color: #666;
    margin-bottom: 25px;
}

/* Label */
.hs-contact-label {
    font-size: 0.85rem;
    font-weight: 500;
    color: var(--text-color);
}

/* Input */
.hs-contact-input {
    border-radius: 10px;
    padding: 10px 12px;
    border: 1px solid #ddd;
    transition: var(--transition);
    background: rgba(255, 255, 255, 0.8);
}

/* Focus */
.hs-contact-input:focus {
    border-color: var(--primary-color);
    box-shadow: 0 0 0 3px rgba(39, 81, 96, 0.1);
}

/* Button */
.hs-contact-btn {
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
    border: none;
    border-radius: 10px;
    color: #fff;
    font-weight: 500;
    transition: var(--transition);
}

.hs-contact-btn:hover {
    transform: translateY(-2px);
    opacity: 0.95;
}

.custom-modal-content {
    border-radius: 1.2rem;
    overflow: hidden;
    background: var(--glass-background);
    backdrop-filter: blur(12px);
    box-shadow: var(--shadow-soft);
    border: 1px solid rgba(255, 255, 255, 0.2);
}

.custom-modal-header {
    background: var(--primary-color);
    color: var(--white);
    border-bottom: none;
}

.custom-modal-header .modal-title {
    font-family: var(--font-heading);
    letter-spacing: 0.3px;
}

.custom-list li {
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
    padding-bottom: 12px;
    margin-bottom: 12px;
}

.custom-list li:last-child {
    border-bottom: none;
}

.custom-list strong {
    color: var(--primary-color);
    font-weight: 600;
}

.highlight-box {
    background: rgba(212, 175, 55, 0.1);
    border-left: 4px solid var(--accent-color);
    color: var(--text-color);
}

.btn-theme {
    background: var(--secondary-color);
    color: var(--white);
    border: none;
    transition: var(--transition);
}

.btn-theme:hover {
    background: var(--accent-color);
    color: var(--primary-color);
}

.modal-body p {
    font-family: var(--font-body);
}

.privacy-hero {
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
    color: var(--white);
    padding: 80px 20px;
    text-align: center;
}

.privacy-hero h1 {
    font-family: var(--font-heading);
    font-size: 2.5rem;
    font-weight: 700;
}

.privacy-container {
    max-width: 1100px;
    margin: 0 auto 60px;
    padding: 20px;
}

.privacy-card {
    background: var(--glass-background);
    backdrop-filter: blur(12px);
    border-radius: 16px;
    box-shadow: var(--shadow-soft);
    padding: 30px;
    margin-bottom: 20px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    transition: var(--transition);
}

.privacy-card:hover {
    transform: translateY(-5px);
}

.privacy-card h4 {
    color: var(--primary-color);
    font-family: var(--font-heading);
    margin-bottom: 10px;
}

.privacy-card p,
.privacy-card li {
    color: var(--text-color);
    font-family: var(--font-body);
    font-size: 15px;
}

.privacy-card ul {
    padding-left: 18px;
}

.privacy-highlight {
    background: rgba(212, 175, 55, 0.1);
    border-left: 4px solid var(--accent-color);
    border-radius: 10px;
    padding: 20px;
}

.privacy-footer {
    text-align: center;
    margin-top: 30px;
    font-size: 14px;
    color: #777;
}


.terms-hero {
    background: linear-gradient(135deg, var(--secondary-color), var(--primary-color));
    color: var(--white);
    padding: 80px 20px;
    text-align: center;
}

.terms-hero h1 {
    font-family: var(--font-heading);
    font-size: 2.5rem;
    font-weight: 700;
}

.terms-container {
    max-width: 1100px;
    margin: 0px auto 60px;
    padding: 20px;
}

.terms-card {
    background: var(--glass-background);
    backdrop-filter: blur(12px);
    border-radius: 16px;
    box-shadow: var(--shadow-soft);
    padding: 28px;
    margin-bottom: 20px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    transition: var(--transition);
}

.terms-card:hover {
    transform: translateY(-4px);
}

.terms-card h4 {
    color: var(--primary-color);
    font-family: var(--font-heading);
    margin-bottom: 15px;
}

.terms-card li {
    margin-bottom: 10px;
    font-family: var(--font-body);
    color: var(--text-color);
    font-size: 15px;
}

.terms-list {
    padding-left: 20px;
}

.terms-warning {
    background: rgba(133, 35, 65, 0.08);
    border-left: 4px solid var(--secondary-color);
    border-radius: 10px;
    padding: 20px;
    color: var(--text-color);
}

.terms-highlight {
    background: rgba(212, 175, 55, 0.1);
    border-left: 4px solid var(--accent-color);
    border-radius: 10px;
    padding: 20px;
}

.terms-footer {
    text-align: center;
    margin-top: 30px;
    color: #777;
    font-size: 14px;
}

.refund-hero {
    background: linear-gradient(135deg, var(--primary-color), var(--accent-color));
    color: var(--white);
    padding: 80px 20px;
    text-align: center;
}

.refund-hero h1 {
    font-family: var(--font-heading);
    font-size: 2.5rem;
    font-weight: 700;
}

.refund-container {
    max-width: 1100px;
    margin: 0px auto 60px;
    padding: 20px;
}

.refund-card {
    background: var(--glass-background);
    backdrop-filter: blur(12px);
    border-radius: 16px;
    box-shadow: var(--shadow-soft);
    padding: 28px;
    margin-bottom: 20px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    transition: var(--transition);
}

.refund-card:hover {
    transform: translateY(-4px);
}

.refund-card h4 {
    color: var(--primary-color);
    font-family: var(--font-heading);
    margin-bottom: 12px;
}

.refund-card p {
    font-family: var(--font-body);
    color: var(--text-color);
    font-size: 15px;
    margin-bottom: 0;
}

.refund-highlight {
    background: rgba(212, 175, 55, 0.1);
    border-left: 4px solid var(--accent-color);
    border-radius: 10px;
    padding: 20px;
}

.refund-warning {
    background: rgba(133, 35, 65, 0.08);
    border-left: 4px solid var(--secondary-color);
    border-radius: 10px;
    padding: 20px;
}

.refund-contact {
    background: rgba(39, 81, 96, 0.08);
    border-left: 4px solid var(--primary-color);
    border-radius: 10px;
    padding: 20px;
    text-align: center;
}

.refund-meta {
    font-size: 14px;
    color: #666;
    margin-top: 10px;
}

.refund-footer {
    text-align: center;
    margin-top: 30px;
    color: #777;
    font-size: 14px;
}

.wa_modal_content {
    background: var(--glass-background);
    backdrop-filter: blur(12px);
    border-radius: 16px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    box-shadow: var(--shadow-soft);
}

.wa_modal_header {
    background: var(--primary-color);
    color: var(--white);
    border-bottom: none;
}

.wa_input {
    border-radius: 10px;
    border: 1px solid #ddd;
    padding: 10px 12px;
    font-family: var(--font-body);
    transition: var(--transition);
}

.wa_input:focus {
    border-color: var(--accent-color);
    box-shadow: 0 0 0 0.15rem rgba(212, 175, 55, 0.25);
}

.wa_label {
    font-weight: 500;
    color: var(--primary-color);
    font-family: var(--font-heading);
    margin-bottom: 5px;
}

.wa_btn_submit {
    background: var(--secondary-color);
    color: var(--white);
    border: none;
    border-radius: 10px;
    padding: 10px;
    transition: var(--transition);
}

.wa_btn_submit:hover {
    background: var(--accent-color);
    color: var(--primary-color);
}

.details_req_docs .accordion-button:not(.collapsed) {
    background: var(--accent-color);
}


/* Assessment Framework Page Specific Styles */

.assessment-hero {
    position: relative;
    padding: 100px 0;
    min-height: 60vh;
    display: flex;
    align-items: center;
    background: url('../images/assement-detailsbg.jpeg') no-repeat center center;
    background-size: cover;
    overflow: hidden;
}

.assessment-hero::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(90deg, rgba(39, 81, 96, 0.9) 0%, rgba(39, 81, 96, 0.6) 50%, transparent 100%);
    z-index: 1;
}

.assessment-hero-content {
    position: relative;
    z-index: 2;
    max-width: 800px;
}

.glass-header-card {
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(15px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 20px;
    padding: 40px;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.2);
    animation: slideUpFade 1s ease-out;
}

@media only screen and (max-width: 768px) {
    .glass-header-card {
        padding: 20px;
    }
}

.assessment-title {
    font-family: var(--font-heading);
    color: var(--white);
    font-size: clamp(2.5rem, 5vw, 3.8rem);
    font-weight: 700;
    line-height: 1.1;
    margin-bottom: 1.5rem;
}

.assessment-subtitle {
    font-family: var(--font-heading);
    color: var(--accent-color);
    font-size: 1.4rem;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 1rem;
    display: block;
}

.assessment-description {
    color: rgba(255, 255, 255, 0.9);
    font-size: 1.15rem;
    line-height: 1.8;
    margin-bottom: 2rem;
    max-width: 700px;
}

/* Breadcrumbs Premium */
.premium-breadcrumb {
    margin-bottom: 2rem;
}

.premium-breadcrumb .breadcrumb-item {
    font-size: 0.9rem;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.premium-breadcrumb .breadcrumb-item a {
    color: rgba(255, 255, 255, 0.7);
    text-decoration: none;
    transition: var(--transition);
}

.premium-breadcrumb .breadcrumb-item a:hover {
    color: var(--accent-color);
}

.premium-breadcrumb .breadcrumb-item.active {
    color: var(--accent-color);
}

.premium-breadcrumb .breadcrumb-item+.breadcrumb-item::before {
    color: rgba(255, 255, 255, 0.4);
    content: "/";
}

/* Assessment Overview Section */
.assessment-overview {
    padding: 40px 0;
    background-color: var(--white);
    position: relative;
}


/* @media only screen and (max-width: 768px){

} */

.section-tag {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: rgba(212, 175, 55, 0.1);
    color: var(--primary-color);
    padding: 8px 16px;
    border-radius: 50px;
    font-size: 0.85rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 20px;
    border: 1px solid rgba(212, 175, 55, 0.2);
}

.overview-title {
    font-family: var(--font-heading);
    color: var(--primary-color);
    font-size: 2.8rem;
    font-weight: 700;
    margin-bottom: 25px;
}

.overview-lead {
    font-size: 1.25rem;
    color: var(--text-color);
    line-height: 1.7;
    margin-bottom: 40px;
    font-weight: 500;
}

.focus-card {
    background: var(--light-gray);
    border-left: 5px solid var(--accent-color);
    padding: 35px;
    border-radius: 15px;
    box-shadow: var(--shadow-soft);
    transition: var(--transition);
}

.focus-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 30px rgba(39, 81, 96, 0.1);
}

.focus-card-title {
    font-family: var(--font-heading);
    color: var(--primary-color);
    font-size: 1.5rem;
    font-weight: 700;
    margin-bottom: 15px;
    display: flex;
    align-items: center;
    gap: 12px;
}

.focus-card-text {
    font-size: 1.05rem;
    color: #555;
    line-height: 1.8;
}

.overview-image-container {
    position: relative;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
}

.overview-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.overview-image-container:hover .overview-image {
    transform: scale(1.05);
}

.image-accent-border {
    position: absolute;
    top: 20px;
    right: 20px;
    width: 100px;
    height: 100px;
    border-top: 4px solid var(--accent-color);
    border-right: 4px solid var(--accent-color);
    z-index: 2;
}

/* Assessment Metrics */
.assessment-metrics {
    padding: 60px 0 100px;
    background-color: var(--white);
}

.metrics-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 30px;
}

.metric-card {
    background: var(--white);
    padding: 30px;
    border-radius: 20px;
    text-align: center;
    border: 1px solid rgba(0, 0, 0, 0.05);
    transition: var(--transition);
}

.metric-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 15px 35px rgba(39, 81, 96, 0.08);
    border-color: var(--accent-color);
}

.metric-icon {
    width: 60px;
    height: 60px;
    background: rgba(39, 81, 96, 0.05);
    color: var(--primary-color);
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 15px;
    margin: 0 auto 20px;
    font-size: 1.5rem;
    transition: var(--transition);
}

.metric-card:hover .metric-icon {
    background: var(--primary-color);
    color: var(--white);
}

.metric-value {
    font-family: var(--font-heading);
    font-size: 2.2rem;
    font-weight: 700;
    color: var(--primary-color);
    margin-bottom: 5px;
    line-height: 1;
}

.metric-label {
    font-size: 0.9rem;
    font-weight: 600;
    color: #666;
    text-transform: uppercase;
    letter-spacing: 1px;
}



/* Ethics & Confidentiality Grid */
.ethics-section {
    padding: 100px 0;
    background-color: var(--light-gray);
}

.ethics-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 30px;
}

.ethics-card {
    background: var(--white);
    padding: 40px;
    border-radius: 20px;
    border: 1px solid rgba(0, 0, 0, 0.05);
    transition: var(--transition);
    height: 100%;
    position: relative;
    overflow: hidden;
}

.ethics-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: var(--primary-color);
    transform: scaleX(0);
    transform-origin: left;
    transition: var(--transition);
}

.ethics-card:hover::before {
    transform: scaleX(1);
    background: var(--accent-color);
}

.ethics-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 40px rgba(39, 81, 96, 0.1);
}

.ethics-icon {
    font-size: 2rem;
    color: var(--primary-color);
    margin-bottom: 25px;
}

.ethics-card-title {
    font-family: var(--font-heading);
    color: var(--primary-color);
    font-size: 1.35rem;
    font-weight: 700;
    margin-bottom: 15px;
}

.ethics-card-text {
    font-size: 1rem;
    color: #666;
    line-height: 1.7;
}

/* AI Usage Policy */
.ai-policy-section {
    padding: 20px 0;
    background-color: var(--white);
}

.ai-policy-card {
    background: linear-gradient(145deg, #ffffff, #f1f5f9);
    border: 1px solid rgba(212, 175, 55, 0.3);
    border-radius: 30px;
    padding: 60px;
    position: relative;
    overflow: hidden;
    box-shadow: 0 25px 50px rgba(39, 81, 96, 0.05);
}

.ai-policy-card::after {
    content: '\f544';
    /* fa-robot */
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    position: absolute;
    bottom: -20px;
    right: -20px;
    font-size: 12rem;
    color: rgba(39, 81, 96, 0.03);
    z-index: 0;
}

.ai-policy-content {
    position: relative;
    z-index: 1;
}

.ai-point {
    display: flex;
    gap: 15px;
    margin-bottom: 20px;
}

.ai-point i {
    color: var(--secondary-color);
    margin-top: 5px;
}

.ai-point-text {
    font-weight: 600;
    color: var(--primary-color);
}

.ai-authenticity {
    margin-top: 40px;
    padding-top: 30px;
    border-top: 1px dashed rgba(0, 0, 0, 0.1);
    text-align: center;
}

/* Approval Process Steps */
.approval-process-section {
    padding: 100px 0;
    background-color: var(--light-gray);
}

.approval-steps {
    display: flex;
    flex-direction: column;
    gap: 40px;
    position: relative;
    max-width: 900px;
    margin: 0 auto;
}

.approval-step {
    display: flex;
    gap: 30px;
    background: var(--white);
    padding: 40px;
    border-radius: 25px;
    box-shadow: var(--shadow-soft);
    transition: var(--transition);
    align-items: center;
}

.approval-step:hover {
    transform: translateX(10px);
    border-left: 8px solid var(--accent-color);
}

.step-num-big {
    font-family: var(--font-heading);
    font-size: 3.5rem;
    font-weight: 900;
    color: rgba(39, 81, 96, 0.1);
    line-height: 1;
}

.approval-step:hover .step-num-big {
    color: var(--accent-color);
    opacity: 0.3;
}

/* Footer CTA */
.assessment-footer-cta {
    padding: 120px 0;
    background: linear-gradient(rgba(39, 81, 96, 0.95), rgba(39, 81, 96, 0.95)), url('../images/assessment-hero-bg.png');
    background-size: cover;
    background-position: center;
    text-align: center;
    color: var(--white);
    position: relative;
    overflow: hidden;
}

.assessment-footer-cta .cta-title {
    font-family: var(--font-heading);
    font-size: clamp(2rem, 4vw, 3rem);
    font-weight: 700;
    margin-bottom: 20px;
}

.assessment-footer-cta .cta-desc {
    font-size: 1.3rem;
    opacity: 0.9;
    max-width: 700px;
    margin: 0 auto 40px;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .approval-step {
        flex-direction: column;
        text-align: center;
    }

    .ai-policy-card {
        padding: 30px;
    }
}


/*
======================
Partner us page css Start
======================
*/

/* --- Global Scoped Page Styles --- */
.hs-partner-page {
    font-family: var(--font-body);
    color: var(--text-color);
    background-color: var(--white);
    overflow-x: hidden;
    line-height: 1.7;
}

.hs-partner-page h1,
.hs-partner-page h2,
.hs-partner-page h3,
.hs-partner-page h4,
.hs-partner-page h5,
.hs-partner-page h6 {
    font-family: var(--font-heading);
    font-weight: 700;
    color: var(--primary-color);
}

/* --- Section Styling --- */
.section-padding {
    padding: 90px 0;
}

.bg-light-section {
    background-color: var(--light-gray);
}

.bg-white-section {
    background-color: var(--white);
}

/* --- Custom Buttons --- */
.btn-primary-custom {
    background-color: var(--primary-color);
    border: 2px solid var(--primary-color);
    color: var(--white);
    padding: 12px 30px;
    font-weight: 600;
    border-radius: 8px;
    transition: var(--transition);
    font-family: var(--font-heading);
}

.btn-primary-custom:hover,
.btn-primary-custom:focus {
    background-color: #1e3f4a;
    border-color: #1e3f4a;
    color: var(--white);
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(39, 81, 96, 0.3);
}

.btn-secondary-custom {
    background-color: var(--secondary-color);
    border: 2px solid var(--secondary-color);
    color: var(--white);
    padding: 12px 30px;
    font-weight: 600;
    border-radius: 8px;
    transition: var(--transition);
    font-family: var(--font-heading);
}

.btn-secondary-custom:hover,
.btn-secondary-custom:focus {
    background-color: #6a1c34;
    border-color: #6a1c34;
    color: var(--white);
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(133, 35, 65, 0.3);
}

.btn-outline-custom {
    color: var(--primary-color);
    border: 2px solid var(--primary-color);
    background-color: transparent;
    padding: 12px 30px;
    font-weight: 600;
    border-radius: 8px;
    transition: var(--transition);
    font-family: var(--font-heading);
}

.btn-outline-custom:hover,
.btn-outline-custom:focus {
    background-color: var(--primary-color);
    color: var(--white);
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(39, 81, 96, 0.15);
}

.btn-link-custom {
    color: #6c757d;
    font-weight: 600;
    text-decoration: none;
    transition: var(--transition);
    padding: 12px 20px;
}

.btn-link-custom:hover {
    color: var(--primary-color);
}

/* --- Hero Section --- */
.hs-hero {
    background: radial-gradient(circle at 10% 20%, rgba(39, 81, 96, 0.04) 0%, rgba(133, 35, 65, 0.02) 90.1%);
    border-bottom: 1px solid rgba(39, 81, 96, 0.08);
    position: relative;
}

.hs-hero::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 350px;
    height: 350px;
    background: radial-gradient(circle, rgba(212, 175, 55, 0.1) 0%, rgba(255, 255, 255, 0) 70%);
    z-index: 0;
}

.hero-badge {
    font-family: var(--font-heading);
    background-color: rgba(39, 81, 96, 0.08);
    color: var(--primary-color);
    font-weight: 600;
    letter-spacing: 1px;
    border-radius: 50px;
    padding: 8px 18px;
    display: inline-block;
}

/* --- Section Titles --- */
.section-tagline {
    color: var(--secondary-color);
    font-weight: 700;
    text-transform: uppercase;
    font-size: 0.85rem;
    letter-spacing: 2px;
    display: block;
    margin-bottom: 10px;
}

.section-title {
    font-size: 2.25rem;
    font-weight: 800;
    margin-bottom: 15px;
    position: relative;
    display: inline-block;
}

.section-title::after {
    content: '';
    display: block;
    width: 50px;
    height: 3px;
    background-color: var(--accent-color);
    margin: 10px auto 0 auto;
    border-radius: 2px;
}

.section-title.left-aligned::after {
    margin: 10px 0 0 0;
}

/* --- Why Partner Cards --- */
.benefit-card {
    background-color: var(--white);
    border: 1px solid rgba(0, 0, 0, 0.05);
    border-radius: var(--border-radius);
    padding: 35px 30px;
    box-shadow: var(--shadow-soft);
    transition: var(--transition);
    height: 100%;
    display: flex;
    flex-direction: column;
}

.benefit-card:hover {
    transform: translateY(-8px);
    box-shadow: var(--shadow-glow);
    border-color: rgba(39, 81, 96, 0.15);
}

.benefit-icon-wrapper {
    width: 60px;
    height: 60px;
    background-color: rgba(39, 81, 96, 0.06);
    color: var(--primary-color);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    margin-bottom: 25px;
    transition: var(--transition);
}

.benefit-card:hover .benefit-icon-wrapper {
    background-color: var(--primary-color);
    color: var(--white);
    transform: rotate(5deg);
}

.benefit-title {
    font-size: 1.25rem;
    font-weight: 600;
    margin-bottom: 12px;
}

.benefit-text {
    color: #666;
    font-size: 0.95rem;
    margin-bottom: 0;
}

/* --- What Sets Us Apart Section --- */
.apart-feature-list {
    list-style: none;
    padding-left: 0;
    margin-top: 30px;
}

.apart-feature-item {
    display: flex;
    align-items: flex-start;
    margin-bottom: 25px;
}

.apart-feature-icon {
    width: 32px;
    height: 32px;
    background-color: rgba(133, 35, 65, 0.08);
    color: var(--secondary-color);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.9rem;
    margin-right: 15px;
    flex-shrink: 0;
    margin-top: 3px;
}

.apart-feature-title {
    font-size: 1.1rem;
    font-weight: 600;
    margin-bottom: 4px;
    color: var(--primary-color);
}

.apart-feature-desc {
    color: #666;
    font-size: 0.95rem;
    margin-bottom: 0;
}

.visual-card-wrapper {
    position: relative;
    border-radius: var(--border-radius);
    box-shadow: var(--shadow-soft);
    overflow: hidden;
    background-color: var(--white);
    border: 1px solid rgba(0, 0, 0, 0.05);
    padding: 10px;
}

.visual-img {
    width: 100%;
    height: auto;
    border-radius: 12px;
    transition: var(--transition);
}

.visual-card-wrapper:hover .visual-img {
    transform: scale(1.02);
}

.visual-overlay-badge {
    position: absolute;
    bottom: 30px;
    left: 30px;
    background: var(--glass-background);
    backdrop-filter: blur(10px);
    padding: 15px 25px;
    border-radius: 12px;
    box-shadow: var(--shadow-soft);
    border: 1px solid rgba(255, 255, 255, 0.4);
    display: flex;
    align-items: center;
    gap: 12px;
}

.visual-overlay-icon {
    color: var(--accent-color);
    font-size: 1.4rem;
}

.visual-overlay-text {
    font-family: var(--font-heading);
    font-weight: 700;
    color: var(--primary-color);
    font-size: 0.95rem;
    line-height: 1.2;
}

/* --- Let's Partner Callout Section --- */
.hs-cta-banner {
    background: linear-gradient(135deg, var(--primary-color) 0%, #1e3e4a 50%, var(--secondary-color) 100%);
    border-radius: var(--border-radius);
    padding: 70px 50px;
    position: relative;
    overflow: hidden;
    box-shadow: var(--shadow-glow);
}

.hs-cta-banner::before {
    content: '';
    position: absolute;
    top: -20%;
    left: -10%;
    width: 400px;
    height: 400px;
    background: radial-gradient(circle, rgba(212, 175, 55, 0.15) 0%, rgba(255, 255, 255, 0) 70%);
    border-radius: 50%;
}

.hs-cta-banner::after {
    content: '';
    position: absolute;
    bottom: -30%;
    right: -10%;
    width: 350px;
    height: 350px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.08) 0%, rgba(255, 255, 255, 0) 70%);
    border-radius: 50%;
}


/*
======================
Partner us page css End
======================
*/


/* =========== assesment details page end =========== */


/*
======================
Existing student admission page css start
======================
*/

/* ---------- reveal animation ---------- */
.reveal {
    opacity: 0;
    transform: translateY(36px);
    transition: opacity .65s ease, transform .65s ease;
}

.reveal.visible {
    opacity: 1;
    transform: translateY(0);
}

.reveal-left {
    opacity: 0;
    transform: translateX(-40px);
    transition: opacity .65s ease, transform .65s ease;
}

.reveal-left.visible {
    opacity: 1;
    transform: translateX(0);
}

.reveal-right {
    opacity: 0;
    transform: translateX(40px);
    transition: opacity .65s ease, transform .65s ease;
}

.reveal-right.visible {
    opacity: 1;
    transform: translateX(0);
}

/* =============================================
   HERO — SPLIT LAYOUT WITH VISUAL RIGHT PANEL
   ============================================= */
.adm-hero {
    position: relative;
    background: linear-gradient(135deg, #0d2535 0%, var(--pri-d) 45%, #1f5065 100%);
    overflow: hidden;
    min-height: 88vh;
    display: flex;
    align-items: center;
}

/* Animated circles */
.hero-orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(80px);
    pointer-events: none;
}

.orb-1 {
    width: 550px;
    height: 550px;
    background: rgba(212, 175, 55, .15);
    top: -150px;
    right: -100px;
    animation: orbFloat 10s ease-in-out infinite;
}

.orb-2 {
    width: 380px;
    height: 380px;
    background: rgba(133, 35, 65, .2);
    bottom: -120px;
    left: -80px;
    animation: orbFloat 13s ease-in-out infinite reverse;
}

.orb-3 {
    width: 220px;
    height: 220px;
    background: rgba(61, 132, 158, .25);
    top: 40%;
    left: 38%;
    animation: orbFloat 8s ease-in-out infinite 2s;
}

@keyframes orbFloat {

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

    50% {
        transform: translate(-20px, -25px) scale(1.05);
    }
}

/* Grid dot overlay */
.adm-hero-dots {
    position: absolute;
    inset: 0;
    background-image: radial-gradient(rgba(255, 255, 255, .06) 1.5px, transparent 1.5px);
    background-size: 28px 28px;
}

/* Floating image card (right side) */
.adm-hero-img-wrap {
    position: relative;
    border-radius: var(--rad-xl);
    overflow: hidden;
    box-shadow: 0 32px 80px rgba(0, 0, 0, .45);
    aspect-ratio: 4/5;
    max-height: 520px;
}

.adm-hero-img-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.adm-hero-img-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 50%, rgba(13, 37, 53, .85) 100%);
}

.adm-hero-img-badge {
    position: absolute;
    bottom: 1.5rem;
    left: 1.5rem;
    right: 1.5rem;
    background: rgba(255, 255, 255, .1);
    backdrop-filter: blur(16px);
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: var(--rad-lg);
    padding: 1rem 1.25rem;
    display: flex;
    align-items: center;
    gap: 1rem;
}

.adm-hero-img-badge .adm-badge-icon {
    width: 42px;
    height: 42px;
    border-radius: 10px;
    background: linear-gradient(135deg, var(--gold), var(--gold-l));
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
    color: #222;
    flex-shrink: 0;
}

.adm-hero-img-badge .badge-text strong {
    color: #fff;
    font-size: .88rem;
    display: block;
    line-height: 1.3;
    font-family: 'Outfit', sans-serif;
}

.adm-hero-img-badge .badge-text small {
    color: rgba(255, 255, 255, .6);
    font-size: .75rem;
}

.adm-hero-content {
    position: relative;
    z-index: 5;
    padding: 100px 0 80px;
}

.adm-hero-chip {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255, 255, 255, .08);
    border: 1px solid rgba(255, 255, 255, .15);
    backdrop-filter: blur(8px);
    border-radius: 100px;
    padding: 6px 16px;
    color: var(--gold-l);
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 1.5rem;
}

.adm-hero-chip .pulse {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--gold-l);
    animation: pulse 1.8s ease infinite;
}

@keyframes pulse {

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

    50% {
        opacity: .3;
        transform: scale(.8);
    }
}

.adm-hero-h1 {
    font-family: 'Outfit', sans-serif;
    font-size: clamp(2.6rem, 5.5vw, 4rem);
    font-weight: 800;
    color: #fff;
    line-height: 1.1;
    margin-bottom: 1.25rem;
}

.adm-hero-h1 em {
    font-style: normal;
    background: linear-gradient(90deg, var(--gold), var(--gold-l));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.adm-hero-desc {
    color: rgba(255, 255, 255, .65);
    font-size: 1.05rem;
    line-height: 1.85;
    max-width: 500px;
    margin-bottom: 2.25rem;
}

.adm-hero-actions {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
}

.adm-btn-hero-pri {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: linear-gradient(135deg, var(--gold), var(--gold-l));
    color: #1a1a1a;
    font-weight: 700;
    font-size: .9rem;
    padding: .85rem 1.75rem;
    border-radius: 100px;
    text-decoration: none;
    transition: var(--transition);
    box-shadow: 0 4px 20px rgba(212, 175, 55, .35);
}

.adm-btn-hero-pri:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 30px rgba(212, 175, 55, .45);
    color: #000;
}

.adm-btn-hero-sec {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255, 255, 255, .1);
    border: 1px solid rgba(255, 255, 255, .2);
    color: #fff;
    font-weight: 600;
    font-size: .9rem;
    padding: .85rem 1.75rem;
    border-radius: 100px;
    text-decoration: none;
    transition: var(--transition);
    backdrop-filter: blur(8px);
}

.adm-btn-hero-sec:hover {
    background: rgba(255, 255, 255, .18);
    color: #fff;
}

/* Hero stats row */


/* breadcrumb strip */
.adm-bc-strip {
    background: var(--pri-d);
    padding: 12px 0;
    border-bottom: 1px solid rgba(255, 255, 255, .05);
}

.adm-bc-strip .breadcrumb {
    margin: 0;
}

.adm-bc-strip .breadcrumb-item a {
    color: rgba(255, 255, 255, .5);
    text-decoration: none;
    font-size: .8rem;
    transition: color .2s;
}

.adm-bc-strip .breadcrumb-item a:hover {
    color: var(--gold);
}

.adm-bc-strip .breadcrumb-item.active {
    color: var(--gold-l);
    font-size: .8rem;
}

.adm-bc-strip .breadcrumb-item+.breadcrumb-item::before {
    color: rgba(255, 255, 255, .2);
}

/* =============================================
   SECTION: WHY BIRCHWOOD (ICON FEATURE CARDS)
   ============================================= */
.adm-section-pad {
    padding: 90px 0;
}

.adm-section-pad-sm {
    padding: 60px 0;
}

.adm-s-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(39, 81, 96, .08);
    border: 1px solid rgba(39, 81, 96, .15);
    border-radius: 100px;
    padding: 5px 14px;
    font-size: .7rem;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--pri);
    margin-bottom: 1rem;
}

.adm-s-title {
    font-family: 'Outfit', sans-serif;
    font-size: clamp(1.9rem, 4vw, 2.6rem);
    font-weight: 800;
    color: #1a2d3a;
    line-height: 1.2;
    margin-bottom: .75rem;
}

.adm-s-title span {
    color: var(--pri);
}

.adm-s-desc {
    font-size: 1rem;
    color: var(--muted);
    line-height: 1.8;
    max-width: 560px;
}

/* Feature cards */
.adm-feat-card {
    background: var(--white);
    border-radius: var(--rad-xl);
    padding: 2rem;
    box-shadow: var(--shadow-sm);
    transition: var(--transition);
    height: 100%;
    border: 1px solid rgba(0, 0, 0, .04);
    position: relative;
    overflow: hidden;
}

.adm-feat-card::before {
    content: '';
    position: absolute;
    inset: 0;
    opacity: 0;
    transition: opacity .3s;
    background: linear-gradient(135deg, rgba(39, 81, 96, .04), rgba(39, 81, 96, .01));
}

.adm-feat-card:hover {
    transform: translateY(-6px);
    box-shadow: var(--shadow-md);
}

.adm-feat-card:hover::before {
    opacity: 1;
}

.adm-feat-icon {
    width: 58px;
    height: 58px;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    margin-bottom: 1.25rem;
}

.adm-fi-teal {
    background: linear-gradient(135deg, rgba(39, 81, 96, .15), rgba(39, 81, 96, .08));
    color: var(--pri);
}

.adm-fi-rose {
    background: linear-gradient(135deg, rgba(133, 35, 65, .15), rgba(133, 35, 65, .07));
    color: var(--sec);
}

.adm-fi-gold {
    background: linear-gradient(135deg, rgba(212, 175, 55, .25), rgba(212, 175, 55, .1));
    color: #b8922a;
}

.adm-fi-slate {
    background: linear-gradient(135deg, rgba(74, 124, 153, .18), rgba(74, 124, 153, .08));
    color: #3a7a96;
}

.adm-fi-green {
    background: linear-gradient(135deg, rgba(46, 139, 87, .18), rgba(46, 139, 87, .08));
    color: #1e7a48;
}

.adm-fi-indigo {
    background: linear-gradient(135deg, rgba(102, 83, 181, .18), rgba(102, 83, 181, .08));
    color: #5044a0;
}

.adm-feat-card h4 {
    font-family: 'Outfit', sans-serif;
    font-size: 1.1rem;
    font-weight: 700;
    color: #1a2d3a;
    margin: 0 0 .5rem;
}

.adm-feat-card p {
    font-size: .88rem;
    color: var(--muted);
    line-height: 1.7;
    margin: 0;
}

.adm-feat-arrow {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: .8rem;
    font-weight: 600;
    color: var(--pri);
    text-decoration: none;
    margin-top: 1rem;
    transition: var(--transition);
}

.adm-feat-arrow:hover {
    gap: 10px;
    color: var(--sec);
}

.adm-feat-arrow i {
    font-size: .7rem;
}

/* =============================================
   SECTION: APPLICATION STEPS
   ============================================= */
.adm-steps-section {
    background: linear-gradient(135deg, var(--pri-d) 0%, var(--pri) 60%, #1f5065 100%);
    position: relative;
    overflow: hidden;
}

.adm-steps-section .adm-hero-dots {
    opacity: .4;
}

.adm-step-card {
    background: rgba(255, 255, 255, .07);
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: var(--rad-xl);
    padding: 2rem 1.75rem;
    backdrop-filter: blur(8px);
    transition: var(--transition);
    height: 100%;
    position: relative;
    overflow: hidden;
}

.adm-step-card:hover {
    background: rgba(255, 255, 255, .12);
    transform: translateY(-4px);
}

.adm-step-card::after {
    content: attr(data-step);
    position: absolute;
    right: -10px;
    bottom: -20px;
    font-family: 'Outfit', sans-serif;
    font-size: 6rem;
    font-weight: 900;
    color: rgba(255, 255, 255, .04);
    line-height: 1;
    user-select: none;
}

.step-num {
    width: 42px;
    height: 42px;
    border-radius: 12px;
    background: linear-gradient(135deg, var(--gold), var(--gold-l));
    color: #1a1a1a;
    font-family: 'Outfit', sans-serif;
    font-size: 1rem;
    font-weight: 900;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.25rem;
    flex-shrink: 0;
}

.adm-step-card h5 {
    font-family: 'Outfit', sans-serif;
    font-weight: 700;
    color: #fff;
    font-size: 1rem;
    margin: 0 0 .5rem;
}

.adm-step-card p {
    font-size: .85rem;
    color: rgba(255, 255, 255, .6);
    line-height: 1.7;
    margin: 0;
}

/* connector arrow between steps */
.adm-step-connector {
    display: flex;
    align-items: center;
    justify-content: center;
    color: rgba(255, 255, 255, .2);
    font-size: 1.2rem;
    padding-top: 2.5rem;
}

@media(max-width:767px) {
    .adm-step-connector {
        transform: rotate(90deg);
        padding-top: 0;
    }
}

/* =============================================
   DEGREE LEVELS SECTION
   ============================================= */
.adm-degree-tabs-wrap {
    position: relative;
}

.adm-degree-tab-btn {
    background: var(--white);
    border: 2px solid transparent;
    border-radius: var(--rad-lg);
    padding: 1.25rem 1.5rem;
    cursor: pointer;
    transition: var(--transition);
    width: 100%;
    text-align: left;
    box-shadow: var(--shadow-sm);
}

.adm-degree-tab-btn:hover {
    border-color: rgba(39, 81, 96, .2);
}

.adm-degree-tab-btn.active {
    border-color: var(--pri);
    background: var(--pri);
}

.adm-degree-tab-btn .dtb-icon {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    margin-bottom: .75rem;
    transition: var(--transition);
}

.adm-degree-tab-btn h5 {
    font-family: 'Outfit', sans-serif;
    font-size: .95rem;
    font-weight: 700;
    margin: 0 0 2px;
    transition: color .3s;
}

.adm-degree-tab-btn p {
    font-size: .77rem;
    margin: 0;
    transition: color .3s;
}

.adm-degree-tab-btn.active .dtb-icon {
    background: rgba(255, 255, 255, .15);
    color: #fff;
}

.adm-degree-tab-btn.active h5 {
    color: #fff;
}

.adm-degree-tab-btn.active p {
    color: rgba(255, 255, 255, .6);
}

.adm-degree-content-panel {
    background: var(--white);
    border-radius: var(--rad-xl);
    box-shadow: var(--shadow-md);
    overflow: hidden;
    min-height: 420px;
}

.adm-degree-panel {
    display: none;
    animation: panelFade .4s ease;
}

.adm-degree-panel.active {
    display: block;
}

@keyframes panelFade {
    from {
        opacity: 0;
        transform: translateY(8px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.adm-degree-panel-header {
    padding: 2rem 2rem 1.5rem;
    border-bottom: 1px solid rgba(0, 0, 0, .06);
    display: flex;
    align-items: center;
    gap: 1rem;
}

.adm-dp-icon {
    width: 56px;
    height: 56px;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.4rem;
}

.adm-dp-title h3 {
    font-family: 'Outfit', sans-serif;
    font-size: 1.35rem;
    font-weight: 800;
    color: #1a2d3a;
    margin: 0 0 3px;
}

.adm-dp-title p {
    font-size: .82rem;
    color: var(--muted);
    margin: 0;
}

.adm-degree-panel-body {
    padding: 1.75rem 2rem;
}

.adm-req-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 10px 0;
    border-bottom: 1px solid rgba(0, 0, 0, .05);
    font-size: .9rem;
    color: #445;
}

.adm-req-item:last-child {
    border-bottom: none;
}

.adm-req-check {
    width: 24px;
    height: 24px;
    border-radius: 7px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: .65rem;
    flex-shrink: 0;
    margin-top: 1px;
}

.adm-rc-teal {
    background: rgba(39, 81, 96, .1);
    color: var(--pri);
}

.adm-rc-rose {
    background: rgba(133, 35, 65, .1);
    color: var(--sec);
}

.adm-rc-gold {
    background: rgba(212, 175, 55, .2);
    color: #b8922a;
}

/* =============================================
   FEE & REACTIVATION
   ============================================= */
.adm-fee-section {
    background: var(--cream);
}

.adm-fee-card-big {
    background: linear-gradient(135deg, var(--pri-d), var(--pri), var(--pri-l));
    border-radius: var(--rad-xl);
    padding: 3rem;
    color: #fff;
    position: relative;
    overflow: hidden;
    box-shadow: var(--shadow-md);
}

.adm-fee-card-big::before {
    content: '$150';
    position: absolute;
    right: -20px;
    top: -30px;
    font-family: 'Outfit', sans-serif;
    font-size: 11rem;
    font-weight: 900;
    color: rgba(255, 255, 255, .04);
    line-height: 1;
    user-select: none;
}

.adm-fee-amount-big {
    font-family: 'Outfit', sans-serif;
    font-size: 4rem;
    font-weight: 900;
    color: var(--gold-l);
    line-height: 1;
}

.adm-fee-amount-big small {
    font-size: 1.2rem;
    font-weight: 400;
    color: rgba(255, 255, 255, .5);
    vertical-align: middle;
}

.adm-fee-card-big h3 {
    font-family: 'Outfit', sans-serif;
    font-weight: 700;
    font-size: 1.4rem;
    margin: .5rem 0 .75rem;
}

.adm-fee-card-big p {
    font-size: .93rem;
    color: rgba(255, 255, 255, .65);
    line-height: 1.75;
    margin: 0 0 1.5rem;
}

.adm-fee-methods {
    display: flex;
    gap: .5rem;
    flex-wrap: wrap;
}

.adm-fee-tag {
    background: rgba(255, 255, 255, .1);
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 8px;
    padding: 4px 14px;
    font-size: .75rem;
    font-weight: 600;
    color: rgba(255, 255, 255, .75);
    letter-spacing: .5px;
}

.adm-info-block {
    background: var(--white);
    border-radius: var(--rad-xl);
    box-shadow: var(--shadow-sm);
    padding: 2rem;
    height: 100%;
    border: 1px solid rgba(0, 0, 0, .04);
}

.adm-info-block h5 {
    font-family: 'Outfit', sans-serif;
    font-weight: 700;
    font-size: 1.05rem;
    color: #1a2d3a;
    margin: 0 0 .75rem;
    display: flex;
    align-items: center;
    gap: 8px;
}

.adm-info-block h5 i {
    font-size: .95rem;
}

.adm-info-block p {
    font-size: .9rem;
    color: var(--muted);
    line-height: 1.75;
    margin: 0;
}

.adm-info-block .warn-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(133, 35, 65, .07);
    border: 1px solid rgba(133, 35, 65, .18);
    border-radius: 8px;
    padding: .75rem 1rem;
    margin-top: .75rem;
    font-size: .85rem;
    color: var(--sec);
    font-weight: 600;
    line-height: 1.5;
}

/* =============================================
   GRADUATION STATS SECTION
   ============================================= */
.adm-grad-section {
    background: linear-gradient(160deg, #f0f6f9 0%, #e8f2f7 100%);
}

.adm-grad-stat-card {
    background: var(--white);
    border-radius: var(--rad-xl);
    box-shadow: var(--shadow-sm);
    padding: 2rem;
    text-align: center;
    border-top: 4px solid transparent;
    transition: var(--transition);
    border: 1px solid rgba(0, 0, 0, .05);
}

.adm-grad-stat-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--shadow-md);
}

.adm-grad-stat-card.bt-teal {
    border-top-color: var(--pri);
}

.adm-grad-stat-card.bt-rose {
    border-top-color: var(--sec);
}

.adm-grad-stat-card.bt-gold {
    border-top-color: var(--gold);
}

.adm-grad-stat-card.bt-slate {
    border-top-color: #4a7c99;
}

.adm-grad-num {
    font-family: 'Outfit', sans-serif;
    font-size: 2.6rem;
    font-weight: 900;
    line-height: 1;
    margin-bottom: .25rem;
}

.adm-grad-num.c-teal {
    color: var(--pri);
}

.adm-grad-num.c-rose {
    color: var(--sec);
}

.adm-grad-num.c-gold {
    color: #b8922a;
}

.adm-grad-num.c-slate {
    color: #4a7c99;
}

.adm-grad-stat-card h6 {
    font-family: 'Outfit', sans-serif;
    font-size: .85rem;
    font-weight: 700;
    color: #334;
    margin: 0 0 4px;
}

.adm-grad-stat-card p {
    font-size: .77rem;
    color: var(--muted);
    margin: 0;
}

.adm-adm-cred-table-wrap {
    border-radius: var(--rad-lg);
    overflow: hidden;
    border: 1px solid rgba(0, 0, 0, .07);
    margin-top: 2rem;
}

.adm-cred-table {
    width: 100%;
    border-collapse: collapse;
}

.adm-cred-table thead {
    background: linear-gradient(135deg, var(--pri), var(--pri-l));
}

.adm-cred-table thead th {
    padding: 14px 20px;
    font-family: 'Outfit', sans-serif;
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: rgba(255, 255, 255, .85);
    border: none;
}

.adm-cred-table tbody tr {
    border-bottom: 1px solid rgba(0, 0, 0, .05);
    transition: background .2s;
}

.adm-cred-table tbody tr:last-child {
    border-bottom: none;
}

.adm-cred-table tbody tr:hover {
    background: rgba(39, 81, 96, .03);
}

.adm-cred-table td {
    padding: 15px 20px;
    font-size: .92rem;
    color: #445;
}

.adm-cred-table td:first-child {
    font-weight: 600;
    color: #223;
}

.cred-badge {
    display: inline-block;
    background: rgba(39, 81, 96, .08);
    color: var(--pri);
    border-radius: 6px;
    padding: 3px 10px;
    font-size: .77rem;
    font-weight: 700;
}

/* Credit unit visual */
.adm-credit-flow {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    flex-wrap: wrap;
    margin-top: 2rem;
    background: var(--white);
    border-radius: var(--rad-xl);
    padding: 2rem;
    box-shadow: var(--shadow-sm);
    border: 1px solid rgba(0, 0, 0, .05);
}

.adm-cf-pill {
    text-align: center;
    background: linear-gradient(135deg, rgba(39, 81, 96, .06), rgba(39, 81, 96, .02));
    border: 1px solid rgba(39, 81, 96, .1);
    border-radius: var(--rad-lg);
    padding: 1.25rem 1.75rem;
    min-width: 110px;
}

.adm-cf-pill .n {
    font-family: 'Outfit', sans-serif;
    font-size: 2.2rem;
    font-weight: 900;
    color: var(--pri);
    line-height: 1;
}

.adm-cf-pill .l {
    font-size: .68rem;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: var(--muted);
    margin-top: 4px;
}

.adm-cf-eq {
    font-family: 'Outfit', sans-serif;
    font-size: 1.6rem;
    font-weight: 300;
    color: #ccc;
}

/* =============================================
   POLICIES — ACCORDION STYLE
   ============================================= */
.adm-policy-section {
    background: var(--white);
}

.adm-pol-accordion {
    border-radius: var(--rad-xl);
    overflow: hidden;
    box-shadow: var(--shadow-sm);
    border: 1px solid rgba(0, 0, 0, .05);
}

.adm-pol-accordion-item {
    border-bottom: 1px solid rgba(0, 0, 0, .06);
}

.adm-pol-accordion-item:last-child {
    border-bottom: none;
}

.adm-pol-acc-btn {
    width: 100%;
    background: none;
    border: none;
    padding: 1.4rem 1.75rem;
    display: flex;
    align-items: center;
    gap: 1rem;
    cursor: pointer;
    text-align: left;
    transition: background .25s;
}

.adm-pol-acc-btn:hover {
    background: rgba(39, 81, 96, .03);
}

.adm-pol-acc-btn.open {
    background: rgba(39, 81, 96, .05);
}

.adm-pol-acc-icon {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    flex-shrink: 0;
    transition: var(--transition);
}

.adm-pol-acc-title {
    font-family: 'Outfit', sans-serif;
    font-weight: 700;
    font-size: 1rem;
    color: #1a2d3a;
    flex: 1;
}

.adm-pol-acc-chevron {
    font-size: .8rem;
    color: var(--muted);
    transition: transform .3s;
}

.adm-pol-acc-btn.open .adm-pol-acc-chevron {
    transform: rotate(180deg);
    color: var(--pri);
}

.adm-pol-acc-body {
    display: none;
    padding: 0 1.75rem 1.75rem 4.25rem;
}

.adm-pol-acc-body.open {
    display: block;
    animation: slideDown .3s ease;
}

@keyframes slideDown {
    from {
        opacity: 0;
        transform: translateY(-8px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.adm-pol-list-clean {
    list-style: none;
    padding: 0;
    margin: 0;
}

.adm-pol-list-clean li {
    display: flex;
    gap: 12px;
    padding: 8px 0;
    border-bottom: 1px solid rgba(0, 0, 0, .05);
    font-size: .9rem;
    color: #556;
    line-height: 1.65;
}

.adm-pol-list-clean li:last-child {
    border-bottom: none;
}

.adm-plc-dot {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: .6rem;
    margin-top: 2px;
}

/* Callout inside accordion */
.adm-pol-callout {
    border-radius: 10px;
    padding: 1rem 1.25rem;
    margin: .75rem 0;
    display: flex;
    gap: .75rem;
    align-items: flex-start;
    font-size: .88rem;
    line-height: 1.7;
}

.adm-pc-info {
    background: rgba(39, 81, 96, .06);
    border-left: 3px solid var(--pri);
}

.adm-pc-warn {
    background: rgba(133, 35, 65, .06);
    border-left: 3px solid var(--sec);
}

.adm-pc-gold {
    background: rgba(212, 175, 55, .1);
    border-left: 3px solid var(--gold);
}

.adm-pc-green {
    background: rgba(46, 139, 87, .07);
    border-left: 3px solid #2e8b57;
}

.adm-pol-callout i {
    color: var(--pri);
    margin-top: 2px;
    font-size: .9rem;
    flex-shrink: 0;
}

.adm-pc-warn i {
    color: var(--sec);
}

.adm-pc-gold i {
    color: #b8922a;
}

.adm-pc-green i {
    color: #2e8b57;
}

.adm-pol-callout p {
    margin: 0;
    color: #445;
}

.adm-pol-callout strong {
    color: #223;
}

/* =============================================
   CTA SECTION
   ============================================= */
.adm-cta-section {
    background: linear-gradient(135deg, var(--sec) 0%, #6a1c33 50%, #4a1225 100%);
    position: relative;
    overflow: hidden;
}

.adm-cta-section .adm-hero-dots {
    opacity: .3;
}

.adm-cta-section {
    position: absolute;
    border-radius: 50%;
    filter: blur(80px);
    pointer-events: none;
}

.adm-cta-section-1 {
    width: 400px;
    height: 400px;
    background: rgba(212, 175, 55, .2);
    top: -100px;
    right: -100px;
}

.adm-cta-section-2 {
    width: 300px;
    height: 300px;
    background: rgba(39, 81, 96, .25);
    bottom: -80px;
    left: -60px;
}

.adm-cta-content {
    position: relative;
    z-index: 5;
    text-align: center;
    padding: 80px 0;
}

.adm-cta-content h2 {
    font-family: 'Outfit', sans-serif;
    font-size: clamp(2rem, 4vw, 3rem);
    font-weight: 900;
    color: #fff;
    margin-bottom: .75rem;
}

.adm-cta-content p {
    font-size: 1.05rem;
    color: rgba(255, 255, 255, .65);
    max-width: 520px;
    margin: 0 auto 2.25rem;
    line-height: 1.8;
}

.adm-btn-cta-primary {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: linear-gradient(135deg, var(--gold), var(--gold-l));
    color: #1a1a1a;
    font-weight: 800;
    font-size: .95rem;
    padding: 1rem 2.25rem;
    border-radius: 100px;
    text-decoration: none;
    transition: var(--transition);
    box-shadow: 0 6px 25px rgba(212, 175, 55, .4);
}

.adm-btn-cta-primary:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 35px rgba(212, 175, 55, .5);
    color: #000;
}

.adm-btn-cta-outline {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: rgba(255, 255, 255, .1);
    border: 1px solid rgba(255, 255, 255, .2);
    color: #fff;
    font-weight: 600;
    font-size: .95rem;
    padding: 1rem 2.25rem;
    border-radius: 100px;
    text-decoration: none;
    transition: var(--transition);
    backdrop-filter: blur(8px);
}

.adm-btn-cta-outline:hover {
    background: rgba(255, 255, 255, .18);
    color: #fff;
}

/* =============================================
   SCROLL TO TOP
   ============================================= */
#scrollTop {
    position: fixed;
    bottom: 2rem;
    right: 2rem;
    width: 46px;
    height: 46px;
    background: var(--pri);
    color: #fff;
    border: none;
    border-radius: 12px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 20px rgba(39, 81, 96, .35);
    transition: var(--transition);
    opacity: 0;
    transform: translateY(16px);
    z-index: 9999;
}

#scrollTop.show {
    opacity: 1;
    transform: translateY(0);
}

#scrollTop:hover {
    background: var(--pri-d);
    transform: translateY(-3px);
}

/* responsive tweaks */
@media(max-width:768px) {
    .adm-hero-img-wrap {
        max-height: 340px;
        margin-top: 2rem;
    }

    .adm-fee-card-big {
        padding: 2rem;
    }

    .adm-fee-card-big::before {
        font-size: 7rem;
        right: -10px;
        top: -10px;
    }

    .adm-fee-amount-big {
        font-size: 3rem;
    }

    .adm-degree-panel-body {
        padding: 1.25rem;
    }

    .adm-degree-panel-header {
        padding: 1.25rem;
    }
}


/*
======================
Existing student admission page css end
======================
*/

/*
======================
Existing student Tuition & Fees page css Start
======================
*/


/* ── Reveal Animations ── */
.reveal {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity .6s ease, transform .6s ease;
}

.reveal-l {
    opacity: 0;
    transform: translateX(-36px);
    transition: opacity .6s ease, transform .6s ease;
}

.reveal-r {
    opacity: 0;
    transform: translateX(36px);
    transition: opacity .6s ease, transform .6s ease;
}

.reveal.vis,
.reveal-l.vis,
.reveal-r.vis {
    opacity: 1;
    transform: translate(0);
}

/* ── Shared Section Styles ── */
.tf-sec {
    padding: 88px 0;
}

.tf-sec-sm {
    padding: 56px 0;
}

.tf-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(39, 81, 96, .08);
    border: 1px solid rgba(39, 81, 96, .15);
    border-radius: 100px;
    padding: 5px 14px;
    font-size: .7rem;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--pri);
    margin-bottom: 1rem;
}

.tf-sec-title {
    font-family: 'Outfit', sans-serif;
    font-size: clamp(1.85rem, 3.5vw, 2.5rem);
    font-weight: 800;
    color: #1a2d3a;
    line-height: 1.2;
    margin-bottom: .75rem;
}

.tf-sec-title span {
    color: var(--pri);
}

.tf-sec-desc {
    font-size: 1rem;
    color: var(--muted);
    line-height: 1.8;
    max-width: 560px;
}

/* =============================================
   HERO
   ============================================= */
.tf-hero {
    position: relative;
    background: linear-gradient(135deg, #0b1f2d 0%, var(--pri-d) 40%, var(--pri) 75%, #1f6080 100%);
    overflow: hidden;
    min-height: 72vh;
    display: flex;
    align-items: center;
}

.tf-hero-orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(90px);
    pointer-events: none;
}

.tf-o1 {
    width: 500px;
    height: 500px;
    background: rgba(212, 175, 55, .14);
    top: -160px;
    right: -80px;
    animation: of 11s ease-in-out infinite;
}

.tf-o2 {
    width: 360px;
    height: 360px;
    background: rgba(133, 35, 65, .18);
    bottom: -100px;
    left: -80px;
    animation: of 14s ease-in-out infinite reverse;
}

.tf-o3 {
    width: 200px;
    height: 200px;
    background: rgba(61, 132, 158, .22);
    top: 40%;
    left: 36%;
    animation: of 9s ease-in-out infinite 1.5s;
}

@keyframes of {

    0%,
    100% {
        transform: translate(0, 0);
    }

    50% {
        transform: translate(-18px, -22px);
    }
}

.tf-hero-grid {
    position: absolute;
    inset: 0;
    background-image: radial-gradient(rgba(255, 255, 255, .055) 1.5px, transparent 1.5px);
    background-size: 28px 28px;
}

.tf-hero-inner {
    position: relative;
    z-index: 5;
    padding: 100px 0 80px;
}

.tf-hero-chip {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255, 255, 255, .09);
    border: 1px solid rgba(255, 255, 255, .16);
    backdrop-filter: blur(8px);
    border-radius: 100px;
    padding: 6px 16px;
    color: var(--gold-l);
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 1.5rem;
}

.tf-hero-chip .dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--gold-l);
    animation: blink 1.8s ease infinite;
}

@keyframes blink {

    0%,
    100% {
        opacity: 1;
    }

    50% {
        opacity: .25;
    }
}

.tf-hero-h1 {
    font-family: 'Outfit', sans-serif;
    font-size: clamp(2.5rem, 5.5vw, 3.8rem);
    font-weight: 900;
    color: #fff;
    line-height: 1.1;
    margin-bottom: 1.25rem;
}

.tf-hero-h1 em {
    font-style: normal;
    background: linear-gradient(90deg, var(--gold), var(--gold-l));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.tf-hero-desc {
    color: rgba(255, 255, 255, .65);
    font-size: 1.05rem;
    line-height: 1.85;
    max-width: 510px;
    margin-bottom: 2.5rem;
}


/* right image side */
.tf-hero-vis {
    position: relative;
}

.tf-hero-price-stack {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.tf-price-float-card {
    background: rgba(255, 255, 255, .08);
    backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, .15);
    border-radius: var(--rad-lg);
    padding: 1.5rem 1.75rem;
    transition: var(--tr);
}

.tf-price-float-card:hover {
    background: rgba(255, 255, 255, .13);
    transform: translateX(-4px);
}

.tf-pfc-label {
    font-size: .72rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: rgba(255, 255, 255, .5);
    margin-bottom: 4px;
}

.tf-pfc-prog {
    font-family: 'Outfit', sans-serif;
    font-size: 1rem;
    font-weight: 700;
    color: #fff;
    margin-bottom: .5rem;
}

.tf-pfc-row {
    display: flex;
    gap: 1.5rem;
    flex-wrap: wrap;
}

.tf-pfc-item .val {
    font-family: 'Outfit', sans-serif;
    font-size: 1.5rem;
    font-weight: 900;
    color: var(--gold-l);
    line-height: 1;
}

.tf-pfc-item .lbl {
    font-size: .7rem;
    color: rgba(255, 255, 255, .5);
    letter-spacing: 1px;
    text-transform: uppercase;
    margin-top: 2px;
}

.tf-pfc-divider {
    width: 1px;
    background: rgba(255, 255, 255, .12);
    align-self: stretch;
}

.tf-payment-float {
    background: rgba(212, 175, 55, .15);
    backdrop-filter: blur(12px);
    border: 1px solid rgba(212, 175, 55, .25);
    border-radius: var(--rad-lg);
    padding: 1rem 1.5rem;
    display: flex;
    align-items: center;
    gap: .75rem;
    margin-top: 1rem;
}

.tf-payment-float i {
    color: var(--gold-l);
    font-size: 1.2rem;
}

.tf-payment-float p {
    color: rgba(255, 255, 255, .8);
    font-size: .85rem;
    margin: 0;
    line-height: 1.5;
}

.tf-payment-float strong {
    color: var(--gold-l);
}

/* breadcrumb */
.bc {
    background: var(--pri-d);
    padding: 12px 0;
    border-bottom: 1px solid rgba(255, 255, 255, .05);
}

.bc .breadcrumb {
    margin: 0;
}

.bc .breadcrumb-item a {
    color: rgba(255, 255, 255, .5);
    text-decoration: none;
    font-size: .8rem;
    transition: color .2s;
}

.bc .breadcrumb-item a:hover {
    color: var(--gold);
}

.bc .breadcrumb-item.active {
    color: var(--gold-l);
    font-size: .8rem;
}

.bc .breadcrumb-item+.breadcrumb-item::before {
    color: rgba(255, 255, 255, .2);
}



/* =============================================
   TUITION PROGRAM CARDS
   ============================================= */
.tuition-section {
    background: var(--white);
}

.tuition-card {
    border-radius: var(--rad-xl);
    overflow: hidden;
    box-shadow: var(--sh-md);
    transition: var(--tr);
    height: 100%;
    position: relative;
}

.tuition-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 60px rgba(39, 81, 96, .18);
}

.tc-header {
    padding: 2.25rem 2rem 1.5rem;
    position: relative;
    overflow: hidden;
}

.tc-header::after {
    content: '';
    position: absolute;
    right: -30px;
    bottom: -30px;
    width: 130px;
    height: 130px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .07);
}

.tc-doctoral .tc-header {
    background: linear-gradient(135deg, var(--pri-d), var(--pri), #2a7ea0);
}

.tc-mba .tc-header {
    background: linear-gradient(135deg, #5a1530, var(--sec), #a8294f);
}

.tc-icon {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    background: rgba(255, 255, 255, .15);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
    color: #fff;
    margin-bottom: 1.25rem;
}

.tc-title {
    font-family: 'Outfit', sans-serif;
    font-size: 1.2rem;
    font-weight: 800;
    color: #fff;
    margin: 0 0 .25rem;
}

.tc-subtitle {
    font-size: .78rem;
    color: rgba(255, 255, 255, .6);
    letter-spacing: 1px;
    text-transform: uppercase;
}

.tc-body {
    background: var(--white);
    padding: 1.75rem 2rem;
}

.tc-price-row {
    display: flex;
    gap: 2rem;
    margin-bottom: 1.5rem;
    padding-bottom: 1.5rem;
    border-bottom: 1px solid rgba(0, 0, 0, .06);
}

.tc-price-item {
    flex: 1;
}

.tc-price-item .amount {
    font-family: 'Outfit', sans-serif;
    font-size: 2.2rem;
    font-weight: 900;
    line-height: 1;
}

.tc-doctoral .amount {
    color: var(--pri);
}

.tc-mba .amount {
    color: var(--sec);
}

.tc-price-item .label {
    font-size: .72rem;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: var(--muted);
    margin-top: 4px;
}

.tc-price-divider {
    width: 1px;
    background: rgba(0, 0, 0, .07);
    align-self: stretch;
}

.tc-features {
    list-style: none;
    padding: 0;
    margin: 0;
}

.tc-features li {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 7px 0;
    font-size: .88rem;
    color: #556;
    border-bottom: 1px solid rgba(0, 0, 0, .04);
}

.tc-features li:last-child {
    border-bottom: none;
}

.tc-features li i {
    font-size: .7rem;
    width: 18px;
    text-align: center;
}

.tc-doctoral .tc-features li i {
    color: var(--pri);
}

.tc-mba .tc-features li i {
    color: var(--sec);
}

.tc-note {
    background: rgba(212, 175, 55, .08);
    border: 1px solid rgba(212, 175, 55, .2);
    border-radius: 8px;
    padding: .75rem 1rem;
    font-size: .8rem;
    color: #665500;
    margin-top: 1rem;
    display: flex;
    align-items: center;
    gap: 8px;
}

.tc-note i {
    color: var(--gold);
}

/* =============================================
   OTHER FEES — GRID CARDS
   ============================================= */
.tf-fees-section {
    background: linear-gradient(160deg, #f0f6f9 0%, #e8f2f7 100%);
}

.tf-fee-item-card {
    background: var(--white);
    border-radius: var(--rad-lg);
    box-shadow: var(--sh-sm);
    padding: 1.4rem 1.5rem;
    display: flex;
    align-items: center;
    gap: 1rem;
    border: 1px solid rgba(0, 0, 0, .04);
    transition: var(--tr);
}

.tf-fee-item-card:hover {
    transform: translateY(-3px);
    box-shadow: var(--sh-md);
}

.fic-icon {
    width: 44px;
    height: 44px;
    border-radius: 11px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
}

.fic-body {
    flex: 1;
    min-width: 0;
}

.fic-body h6 {
    font-family: 'Outfit', sans-serif;
    font-weight: 700;
    font-size: .88rem;
    color: #1a2d3a;
    margin: 0 0 2px;
    line-height: 1.3;
}

.fic-body p {
    font-size: .77rem;
    color: var(--muted);
    margin: 0;
}

.fic-price {
    font-family: 'Outfit', sans-serif;
    font-size: 1.15rem;
    font-weight: 900;
    color: var(--pri);
    flex-shrink: 0;
}

.fees-notes {
    background: var(--white);
    border-radius: var(--rad-lg);
    padding: 1.5rem 1.75rem;
    box-shadow: var(--sh-sm);
    border-left: 4px solid var(--gold);
    margin-top: 2rem;
}

.fees-notes h6 {
    font-family: 'Outfit', sans-serif;
    font-weight: 700;
    color: #1a2d3a;
    margin: 0 0 .75rem;
    font-size: .95rem;
}

.fees-notes ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.fees-notes ul li {
    font-size: .88rem;
    color: var(--muted);
    padding: 4px 0;
    display: flex;
    align-items: flex-start;
    gap: 8px;
}

.fees-notes ul li i {
    color: var(--gold);
    margin-top: 3px;
    font-size: .75rem;
    flex-shrink: 0;
}

/* payment methods strip */
.payment-strip {
    background: linear-gradient(135deg, var(--pri), var(--pri-l));
    border-radius: var(--rad-lg);
    padding: 1.5rem 2rem;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 1.5rem;
    margin-top: 1.5rem;
}

.payment-strip h6 {
    font-family: 'Outfit', sans-serif;
    font-weight: 700;
    color: #fff;
    margin: 0;
    font-size: .95rem;
    white-space: nowrap;
}

.pay-methods {
    display: flex;
    gap: .5rem;
    flex-wrap: wrap;
}

.pay-tag {
    background: rgba(255, 255, 255, .12);
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 7px;
    padding: 4px 14px;
    font-size: .78rem;
    font-weight: 600;
    color: rgba(255, 255, 255, .85);
    display: flex;
    align-items: center;
    gap: 6px;
}

/* =============================================
   PAYMENT OPTIONS
   ============================================= */
.payment-section {
    background: var(--white);
}

.pay-option-card {
    background: var(--bg);
    border-radius: var(--rad-xl);
    padding: 2rem;
    border: 1px solid rgba(0, 0, 0, .05);
    transition: var(--tr);
    height: 100%;
    position: relative;
    overflow: hidden;
}

.pay-option-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--sh-md);
    background: var(--white);
}

.pay-option-card::before {
    content: attr(data-num);
    position: absolute;
    right: -10px;
    bottom: -15px;
    font-family: 'Outfit', sans-serif;
    font-size: 7rem;
    font-weight: 900;
    color: rgba(39, 81, 96, .04);
    line-height: 1;
    user-select: none;
}

.poc-num {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: linear-gradient(135deg, var(--pri), var(--pri-l));
    color: #fff;
    font-family: 'Outfit', sans-serif;
    font-weight: 900;
    font-size: 1.1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.25rem;
}

.pay-option-card h5 {
    font-family: 'Outfit', sans-serif;
    font-weight: 700;
    font-size: 1rem;
    color: #1a2d3a;
    margin: 0 0 .5rem;
}

.pay-option-card p {
    font-size: .88rem;
    color: var(--muted);
    line-height: 1.7;
    margin: 0;
}

/* =============================================
   SCHOLARSHIP
   ============================================= */
.tf-scholarship-section {
    background: linear-gradient(135deg, #0b1f2d, var(--pri-d) 50%, var(--pri));
    position: relative;
    overflow: hidden;
}

.tf-scholarship-section .tf-hero-grid {
    opacity: .4;
}

.schol-intro-card {
    background: rgba(255, 255, 255, .07);
    backdrop-filter: blur(14px);
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: var(--rad-xl);
    padding: 2.5rem;
    position: relative;
    z-index: 3;
}

.schol-intro-card h3 {
    font-family: 'Outfit', sans-serif;
    font-size: 1.3rem;
    font-weight: 800;
    color: #fff;
    margin: 0 0 .75rem;
}

.schol-intro-card p {
    font-size: .92rem;
    color: rgba(255, 255, 255, .65);
    line-height: 1.8;
    margin: 0;
}

.schol-cyber-card {
    background: linear-gradient(135deg, rgba(212, 175, 55, .18), rgba(212, 175, 55, .07));
    border: 1px solid rgba(212, 175, 55, .3);
    border-radius: var(--rad-xl);
    padding: 2.5rem;
    position: relative;
    z-index: 3;
}

.schol-cyber-card .cyber-icon {
    width: 64px;
    height: 64px;
    border-radius: 18px;
    background: linear-gradient(135deg, var(--gold), var(--gold-l));
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.6rem;
    color: #222;
    margin-bottom: 1.25rem;
}

.schol-cyber-card h3 {
    font-family: 'Outfit', sans-serif;
    font-size: 1.3rem;
    font-weight: 800;
    color: #fff;
    margin: 0 0 .75rem;
}

.schol-cyber-card p {
    font-size: .9rem;
    color: rgba(255, 255, 255, .65);
    line-height: 1.8;
    margin: 0 0 1rem;
}

.schol-amount {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: rgba(255, 255, 255, .1);
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 10px;
    padding: .75rem 1.25rem;
    margin-top: .5rem;
}

.schol-amount .sa-num {
    font-family: 'Outfit', sans-serif;
    font-size: 2rem;
    font-weight: 900;
    color: var(--gold-l);
    line-height: 1;
}

.schol-amount .sa-lbl {
    font-size: .75rem;
    color: rgba(255, 255, 255, .6);
    line-height: 1.4;
}

.deadline-cards {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
    margin-top: 1.5rem;
}

.deadline-card {
    flex: 1;
    min-width: 160px;
    background: rgba(255, 255, 255, .08);
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 12px;
    padding: 1rem 1.25rem;
    text-align: center;
}

.dl-date {
    font-family: 'Outfit', sans-serif;
    font-size: 1.3rem;
    font-weight: 900;
    color: var(--gold-l);
    line-height: 1;
}

.dl-term {
    font-size: .75rem;
    color: rgba(255, 255, 255, .55);
    letter-spacing: 1px;
    text-transform: uppercase;
    margin-top: 4px;
}

.schol-steps-wrap {
    position: relative;
    z-index: 3;
    margin-top: 3rem;
}

.schol-steps-title {
    font-family: 'Outfit', sans-serif;
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--gold-l);
    margin-bottom: 1.5rem;
    display: flex;
    align-items: center;
    gap: 8px;
}

.schol-step {
    display: flex;
    gap: 1rem;
    align-items: flex-start;
    margin-bottom: 1.25rem;
}

.ss-num {
    width: 36px;
    height: 36px;
    border-radius: 9px;
    flex-shrink: 0;
    background: linear-gradient(135deg, var(--gold), var(--gold-l));
    color: #222;
    font-family: 'Outfit', sans-serif;
    font-weight: 900;
    font-size: .85rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.ss-body h6 {
    font-family: 'Outfit', sans-serif;
    font-weight: 700;
    font-size: .92rem;
    color: #fff;
    margin: 0 0 3px;
}

.ss-body p {
    font-size: .83rem;
    color: rgba(255, 255, 255, .6);
    line-height: 1.6;
    margin: 0;
}

/* =============================================
   PAYMENT PLAN SECTION
   ============================================= */
.tf-plan-section {
    background: var(--bg);
}

.tf-plan-card {
    background: var(--white);
    border-radius: var(--rad-xl);
    box-shadow: var(--sh-sm);
    border: 1px solid rgba(0, 0, 0, .05);
    overflow: hidden;
    height: 100%;
}

.tf-plan-card-head {
    padding: 2rem;
    border-bottom: 1px solid rgba(0, 0, 0, .06);
    display: flex;
    align-items: center;
    gap: 1rem;
}

.plan-icon {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
    flex-shrink: 0;
}

.pi-teal {
    background: rgba(39, 81, 96, .1);
    color: var(--pri);
}

.pi-gold {
    background: rgba(212, 175, 55, .15);
    color: #b8922a;
}

.tf-plan-card-head h4 {
    font-family: 'Outfit', sans-serif;
    font-weight: 700;
    font-size: 1.05rem;
    color: #1a2d3a;
    margin: 0 0 3px;
}

.tf-plan-card-head p {
    font-size: .8rem;
    color: var(--muted);
    margin: 0;
}

.tf-plan-card-body {
    padding: 1.75rem 2rem;
}

.tf-plan-card-body p {
    font-size: .9rem;
    color: #556;
    line-height: 1.8;
    margin: 0;
}

.plan-highlight {
    background: linear-gradient(135deg, rgba(39, 81, 96, .05), rgba(39, 81, 96, .02));
    border: 1px solid rgba(39, 81, 96, .1);
    border-radius: 10px;
    padding: 1rem 1.25rem;
    margin-top: 1rem;
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: .88rem;
    color: var(--pri);
    font-weight: 600;
}

.plan-highlight i {
    color: var(--gold);
}

/* =============================================
   REFUND / CANCELLATION SECTION
   ============================================= */
.tf-refund-section {
    background: var(--white);
}

.tf-refund-step {
    display: flex;
    gap: 1rem;
    padding: 1.25rem 0;
    border-bottom: 1px solid rgba(0, 0, 0, .05);
}

.tf-refund-step:last-child {
    border-bottom: none;
}

.rs-num {
    width: 34px;
    height: 34px;
    border-radius: 9px;
    flex-shrink: 0;
    font-family: 'Outfit', sans-serif;
    font-weight: 900;
    font-size: .85rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(133, 35, 65, .09);
    color: var(--sec);
}

.rs-body h6 {
    font-family: 'Outfit', sans-serif;
    font-weight: 700;
    font-size: .92rem;
    color: #223;
    margin: 0 0 4px;
}

.rs-body p {
    font-size: .88rem;
    color: #556;
    line-height: 1.7;
    margin: 0;
}

.refund-callout {
    border-radius: var(--rad-lg);
    padding: 1.25rem 1.5rem;
    display: flex;
    align-items: flex-start;
    gap: .75rem;
    font-size: .9rem;
    line-height: 1.75;
}

.rc-info {
    background: rgba(39, 81, 96, .05);
    border-left: 3px solid var(--pri);
}

.rc-warn {
    background: rgba(133, 35, 65, .05);
    border-left: 3px solid var(--sec);
}

.rc-gold {
    background: rgba(212, 175, 55, .08);
    border-left: 3px solid var(--gold);
}

.refund-callout i {
    margin-top: 2px;
    flex-shrink: 0;
    font-size: .95rem;
}

.rc-info i {
    color: var(--pri);
}

.rc-warn i {
    color: var(--sec);
}

.rc-gold i {
    color: #b8922a;
}

.refund-callout p {
    margin: 0;
    color: #445;
}

/* =============================================
   CTA SECTION
   ============================================= */
.tf-cta-sec {
    background: linear-gradient(135deg, var(--sec) 0%, #6a1c33 50%, #4a1225 100%);
    position: relative;
    overflow: hidden;
}

.tf-cta-orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(80px);
}

.cta-tf-o1 {
    width: 380px;
    height: 380px;
    background: rgba(212, 175, 55, .18);
    top: -100px;
    right: -80px;
}

.cta-tf-o2 {
    width: 280px;
    height: 280px;
    background: rgba(39, 81, 96, .22);
    bottom: -70px;
    left: -50px;
}

.cta-inner {
    position: relative;
    z-index: 5;
    text-align: center;
    padding: 80px 0;
}

.cta-inner h2 {
    font-family: 'Outfit', sans-serif;
    font-size: clamp(1.9rem, 3.5vw, 2.8rem);
    font-weight: 900;
    color: #fff;
    margin-bottom: .75rem;
}

.cta-inner p {
    font-size: 1rem;
    color: rgba(255, 255, 255, .65);
    max-width: 500px;
    margin: 0 auto 2rem;
    line-height: 1.8;
}

.btn-cta-g {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: linear-gradient(135deg, var(--gold), var(--gold-l));
    color: #1a1a1a;
    font-weight: 800;
    font-size: .9rem;
    padding: .9rem 2rem;
    border-radius: 100px;
    text-decoration: none;
    transition: var(--tr);
    box-shadow: 0 5px 22px rgba(212, 175, 55, .38);
}

.btn-cta-g:hover {
    transform: translateY(-2px);
    box-shadow: 0 9px 30px rgba(212, 175, 55, .48);
    color: #000;
}

.btn-cta-o {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255, 255, 255, .1);
    border: 1px solid rgba(255, 255, 255, .2);
    color: #fff;
    font-weight: 600;
    font-size: .9rem;
    padding: .9rem 2rem;
    border-radius: 100px;
    text-decoration: none;
    transition: var(--tr);
    backdrop-filter: blur(8px);
}

.btn-cta-o:hover {
    background: rgba(255, 255, 255, .18);
    color: #fff;
}

/* scroll top */
#sTop {
    position: fixed;
    bottom: 2rem;
    right: 2rem;
    width: 46px;
    height: 46px;
    background: var(--pri);
    color: #fff;
    border: none;
    border-radius: 12px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 20px rgba(39, 81, 96, .35);
    transition: var(--tr);
    opacity: 0;
    transform: translateY(16px);
    z-index: 9999;
}

#sTop.show {
    opacity: 1;
    transform: translateY(0);
}

#sTop:hover {
    background: var(--pri-d);
    transform: translateY(-3px);
}

@media(max-width:768px) {
    .tf-hero-price-stack {
        display: none;
    }

    .tc-price-row {
        gap: 1.25rem;
    }

    .tc-body {
        padding: 1.25rem;
    }
}

/*
======================
Existing student Tuition & Fees page css End
======================
*/


/*
======================
responsive start
======================
*/

@media only screen and (max-width: 425px) {
    .mv-card-v3 {
        padding: 50px 20px;
    }

    .mission-vision-v3,
    .registration-section-v3 {
        padding: 50px 0;
    }

    .reg-card-v3 {
        padding: 30px 20px;
    }

    .acc-card-v3,
    .shrm-card-v3 {
        padding: 40px 10px;
    }

    .iso-subsection-v3,
    .shrm-subsection-v3 {
        margin-top: 0;
    }

    .iso-card-v3 {
        padding: 40px 5px;
    }

    .shrm-icon-box-v3 {
        margin-left: auto;
        margin-right: auto;
    }

    .mission-text-v3,
    .p-block-v3 {
        text-align: center;
    }
}

@media only screen and (max-width: 991px) {

    .doctorate-process-section .timeline-item.timeline-left {
        padding-right: 0;
    }

    .doctorate-process-section .timeline-item.timeline-right {
        padding-left: 0;
    }

    .mba-admission-steps .timeline-icon {
        top: -35%;
    }

    .mba-admission-steps .timeline-item {
        margin-bottom: 57px;
    }

}

@media only screen and (max-width: 768px) {
    .timeline-item {
        padding-left: 0;
    }

    .doctorate-process-section .timeline-node {
        top: -31%;
    }

    .mba-admission-steps .timeline-content {
        padding: 20px;
    }
}


/*
======================
responsive end
======================
*/
/* === MODAL BASE === */
.hs-modal {
    border-radius: 18px;
    overflow: hidden;
    border: none;
    background: var(--glass-background);
    backdrop-filter: blur(18px);
    box-shadow: var(--shadow-soft);
    font-family: var(--font-body);
}

/* === HEADER (GRADIENT STYLE) === */
.hs-modal-header {
    background: linear-gradient(135deg, #275160, #852341, #d4af37);
    color: var(--white);
    border: none;
    padding: 18px 22px;
    font-family: var(--font-heading);
}

.hs-modal-header .modal-title {
    font-weight: 600;
    letter-spacing: 0.5px;
}

.hs-close {
    filter: invert(1);
    opacity: 0.9;
}

/* === BODY === */
.hs-modal-body {
    padding: 22px;
    background: var(--white);
}

/* === GRID LAYOUT === */
.hs-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}

/* Full width field */
.hs-full {
    grid-column: span 2;
}

/* === FIELD DESIGN === */
.hs-field label {
    font-size: 13px;
    font-weight: 600;
    color: var(--primary-color);
    margin-bottom: 6px;
    display: block;
}

.hs-field input,
.hs-field select {
    width: 100%;
    padding: 11px 12px;
    border-radius: 10px;
    border: 1px solid #e5e5e5;
    outline: none;
    transition: var(--transition);
    background: #fdfdfd;
}

/* Glow focus */
.hs-field input:focus,
.hs-field select:focus {
    border-color: var(--secondary-color);
    box-shadow: 0 0 0 3px rgba(133, 35, 65, 0.15);
}

/* === SUBMIT BUTTON === */
.hs-submit-btn {
    width: 100%;
    margin-top: 18px;
    padding: 12px;
    border: none;
    border-radius: 12px;
    font-weight: 600;
    color: var(--white);
    cursor: pointer;

    background: linear-gradient(135deg, #852341, #275160);
    transition: var(--transition);
    box-shadow: 0 6px 20px rgba(133, 35, 65, 0.25);
}

.hs-submit-btn:hover {
    transform: translateY(-2px);
    background: linear-gradient(135deg, #275160, #d4af37);
}

/* ========================== */
/* grades and transcript page css start */
/* =========================== */

/* ── Reveal Animations ── */
.gt-reveal {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity .65s ease, transform .65s ease;
}

.gt-reveal-l {
    opacity: 0;
    transform: translateX(-36px);
    transition: opacity .65s ease, transform .65s ease;
}

.gt-reveal-r {
    opacity: 0;
    transform: translateX(36px);
    transition: opacity .65s ease, transform .65s ease;
}

.gt-reveal.gt-vis,
.gt-reveal-l.gt-vis,
.gt-reveal-r.gt-vis {
    opacity: 1;
    transform: translate(0);
}

/* ── Shared Section Utilities ── */
.gt-sec {
    padding: 88px 0;
}

.gt-sec-sm {
    padding: 56px 0;
}

.gt-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(39, 81, 96, .08);
    border: 1px solid rgba(39, 81, 96, .15);
    border-radius: 100px;
    padding: 5px 14px;
    font-size: .7rem;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--gt-pri);
    margin-bottom: 1rem;
}

.gt-sec-title {
    font-family: 'Outfit', sans-serif;
    font-size: clamp(1.85rem, 3.5vw, 2.5rem);
    font-weight: 800;
    color: #1a2d3a;
    line-height: 1.2;
    margin-bottom: .75rem;
}

.gt-sec-title span {
    color: var(--gt-pri);
}

.gt-sec-desc {
    font-size: 1rem;
    color: var(--gt-muted);
    line-height: 1.8;
    max-width: 580px;
}

/* ==============================================
   HERO
   ============================================== */
.gt-hero {
    position: relative;
    background: linear-gradient(135deg, #071520 0%, var(--gt-pri-d) 42%, var(--gt-pri) 78%, #216882 100%);
    overflow: hidden;
    min-height: 78vh;
    display: flex;
    align-items: center;
}

.gt-hero-orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(90px);
    pointer-events: none;
}

.gt-orb-1 {
    width: 520px;
    height: 520px;
    background: rgba(212, 175, 55, .13);
    top: -160px;
    right: -80px;
    animation: gtFloat 12s ease-in-out infinite;
}

.gt-orb-2 {
    width: 380px;
    height: 380px;
    background: rgba(133, 35, 65, .16);
    bottom: -110px;
    left: -90px;
    animation: gtFloat 15s ease-in-out infinite reverse;
}

.gt-orb-3 {
    width: 210px;
    height: 210px;
    background: rgba(61, 132, 158, .2);
    top: 42%;
    left: 33%;
    animation: gtFloat 9s ease-in-out infinite 2s;
}

@keyframes gtFloat {

    0%,
    100% {
        transform: translate(0, 0);
    }

    50% {
        transform: translate(-16px, -20px);
    }
}

.gt-hero-dots {
    position: absolute;
    inset: 0;
    background-image: radial-gradient(rgba(255, 255, 255, .05) 1.5px, transparent 1.5px);
    background-size: 28px 28px;
}

.gt-hero-inner {
    position: relative;
    z-index: 5;
    padding: 100px 0 80px;
}

.gt-hero-chip {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255, 255, 255, .08);
    border: 1px solid rgba(255, 255, 255, .15);
    backdrop-filter: blur(8px);
    border-radius: 100px;
    padding: 6px 16px;
    color: var(--gt-gold-l);
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 1.5rem;
}

.gt-hero-chip .gt-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--gt-gold-l);
    animation: gtBlink 1.8s ease infinite;
}

@keyframes gtBlink {

    0%,
    100% {
        opacity: 1;
    }

    50% {
        opacity: .2;
    }
}

.gt-hero-h1 {
    font-family: 'Outfit', sans-serif;
    font-size: clamp(2.4rem, 5.5vw, 3.75rem);
    font-weight: 900;
    color: #fff;
    line-height: 1.1;
    margin-bottom: 1.2rem;
}

.gt-hero-h1 em {
    font-style: normal;
    background: linear-gradient(90deg, var(--gt-gold), var(--gt-gold-l));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.gt-hero-desc {
    color: rgba(255, 255, 255, .62);
    font-size: 1.05rem;
    line-height: 1.85;
    max-width: 500px;
    margin-bottom: 2.5rem;
}

.gt-hero-btn-pri {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: linear-gradient(135deg, var(--gt-gold), var(--gt-gold-l));
    color: #1a1a1a;
    font-weight: 700;
    font-size: .9rem;
    padding: .85rem 1.75rem;
    border-radius: 100px;
    text-decoration: none;
    transition: var(--gt-tr);
    box-shadow: 0 4px 20px rgba(212, 175, 55, .35);
}

.gt-hero-btn-pri:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 28px rgba(212, 175, 55, .48);
    color: #111;
}

.gt-hero-btn-sec {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255, 255, 255, .1);
    border: 1px solid rgba(255, 255, 255, .2);
    color: #fff;
    font-weight: 600;
    font-size: .9rem;
    padding: .85rem 1.75rem;
    border-radius: 100px;
    text-decoration: none;
    transition: var(--gt-tr);
    backdrop-filter: blur(8px);
}

.gt-hero-btn-sec:hover {
    background: rgba(255, 255, 255, .17);
    color: #fff;
}

/* Right side floating grade preview */
.gt-hero-vis {
    position: relative;
    z-index: 5;
}

.gt-hero-grade-preview {
    background: rgba(255, 255, 255, .08);
    backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: var(--gt-rad-xl);
    padding: 1.75rem;
    overflow: hidden;
}

.gt-hgp-title {
    font-family: 'Outfit', sans-serif;
    font-size: .78rem;
    font-weight: 700;
    color: var(--gt-gold-l);
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 1.25rem;
    display: flex;
    align-items: center;
    gap: 8px;
}

.gt-grade-row {
    display: flex;
    align-items: center;
    gap: .75rem;
    padding: .55rem .75rem;
    border-radius: 9px;
    margin-bottom: .4rem;
    transition: var(--gt-tr);
}

.gt-grade-row:hover {
    background: rgba(255, 255, 255, .07);
}

.gt-gr-badge {
    width: 38px;
    height: 38px;
    border-radius: 9px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Outfit', sans-serif;
    font-weight: 900;
    font-size: .88rem;
}

.gt-gr-b-ex {
    background: rgba(212, 175, 55, .25);
    color: var(--gt-gold-l);
}

.gt-gr-b-a {
    background: rgba(39, 81, 96, .3);
    color: #7ec8e3;
}

.gt-gr-b-bp {
    background: rgba(61, 132, 158, .25);
    color: #9dd8ea;
}

.gt-gr-b-b {
    background: rgba(46, 139, 87, .2);
    color: #6fcf97;
}

.gt-gr-b-cp {
    background: rgba(102, 83, 181, .2);
    color: #b5a8f5;
}

.gt-gr-b-c {
    background: rgba(133, 35, 65, .2);
    color: #e8899e;
}

.gt-gr-info {
    flex: 1;
}

.gt-gr-info .gt-gr-def {
    font-size: .8rem;
    color: rgba(255, 255, 255, .75);
    line-height: 1.3;
    font-weight: 500;
}

.gt-gr-info .gt-gr-range {
    font-size: .7rem;
    color: rgba(255, 255, 255, .4);
}

.gt-gr-pts {
    font-family: 'Outfit', sans-serif;
    font-size: 1.1rem;
    font-weight: 900;
    color: #fff;
    min-width: 32px;
    text-align: right;
}

.gt-gp-divider {
    height: 1px;
    background: rgba(255, 255, 255, .07);
    margin: 1rem 0;
}

.gt-gp-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: .78rem;
    color: rgba(255, 255, 255, .45);
}

.gt-gp-footer strong {
    color: var(--gt-gold-l);
    font-weight: 700;
}

/* Stats bar */
.gt-hero-stats {
    display: flex;
    gap: 1.5rem;
    flex-wrap: wrap;
    margin-top: 2rem;
    border-top: 1px solid rgba(255, 255, 255, .1);
    padding-top: 1.75rem;
}

.gt-stat-item .gt-stat-val {
    font-family: 'Outfit', sans-serif;
    font-size: 1.9rem;
    font-weight: 900;
    color: #fff;
    line-height: 1;
}

.gt-stat-item .gt-stat-val span {
    font-size: 1rem;
    font-weight: 600;
    color: var(--gt-gold-l);
}

.gt-stat-item .gt-stat-lbl {
    font-size: .72rem;
    color: rgba(255, 255, 255, .45);
    letter-spacing: 1px;
    text-transform: uppercase;
    margin-top: 3px;
}

/* ── Breadcrumb ── */
.gt-bc {
    background: var(--gt-pri-d);
    padding: 12px 0;
    border-bottom: 1px solid rgba(255, 255, 255, .05);
}

.gt-bc .breadcrumb {
    margin: 0;
}

.gt-bc .breadcrumb-item a {
    color: rgba(255, 255, 255, .5);
    text-decoration: none;
    font-size: .8rem;
    transition: color .2s;
}

.gt-bc .breadcrumb-item a:hover {
    color: var(--gt-gold);
}

.gt-bc .breadcrumb-item.active {
    color: var(--gt-gold-l);
    font-size: .8rem;
}

.gt-bc .breadcrumb-item+.breadcrumb-item::before {
    color: rgba(255, 255, 255, .2);
}

/* ==============================================
   OVERVIEW INFO SECTION
   ============================================== */
.gt-overview-sec {
    background: var(--gt-white);
}

.gt-info-card {
    background: var(--gt-bg);
    border-radius: var(--gt-rad-xl);
    padding: 2rem;
    border: 1px solid rgba(0, 0, 0, .05);
    transition: var(--gt-tr);
    height: 100%;
    position: relative;
    overflow: hidden;
}

.gt-info-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--gt-sh-md);
    background: var(--gt-white);
}

.gt-info-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    border-radius: 4px 4px 0 0;
}

.gt-ic-teal::before {
    background: linear-gradient(90deg, var(--gt-pri), var(--gt-pri-l));
}

.gt-ic-gold::before {
    background: linear-gradient(90deg, var(--gt-gold), var(--gt-gold-l));
}

.gt-ic-rose::before {
    background: linear-gradient(90deg, var(--gt-sec), #b03060);
}

.gt-ic-icon {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
    margin-bottom: 1.25rem;
    flex-shrink: 0;
}

.gt-ici-teal {
    background: rgba(39, 81, 96, .1);
    color: var(--gt-pri);
}

.gt-ici-gold {
    background: rgba(212, 175, 55, .15);
    color: #b8922a;
}

.gt-ici-rose {
    background: rgba(133, 35, 65, .1);
    color: var(--gt-sec);
}

.gt-info-card h4 {
    font-family: 'Outfit', sans-serif;
    font-weight: 800;
    font-size: 1.05rem;
    color: #1a2d3a;
    margin: 0 0 .6rem;
}

.gt-info-card p {
    font-size: .9rem;
    color: var(--gt-muted);
    line-height: 1.8;
    margin: 0;
}

.gt-info-highlight {
    margin-top: 1rem;
    padding: .75rem 1rem;
    border-radius: 9px;
    font-size: .83rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 8px;
}

.gt-ih-teal {
    background: rgba(39, 81, 96, .07);
    color: var(--gt-pri);
}

.gt-ih-gold {
    background: rgba(212, 175, 55, .1);
    color: #8a6d00;
}

.gt-ih-rose {
    background: rgba(133, 35, 65, .07);
    color: var(--gt-sec);
}

.gt-info-highlight i {
    font-size: .8rem;
}

/* policy timeline row */
.gt-policy-timeline {
    margin-top: 3.5rem;
}

.gt-pt-row {
    display: flex;
    gap: 1.5rem;
    align-items: flex-start;
    padding: 1.25rem 0;
    border-bottom: 1px solid rgba(0, 0, 0, .05);
}

.gt-pt-row:last-child {
    border-bottom: none;
}

.gt-pt-num {
    width: 42px;
    height: 42px;
    border-radius: 11px;
    flex-shrink: 0;
    background: linear-gradient(135deg, var(--gt-pri), var(--gt-pri-l));
    color: #fff;
    font-family: 'Outfit', sans-serif;
    font-weight: 900;
    font-size: .92rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.gt-pt-body h6 {
    font-family: 'Outfit', sans-serif;
    font-weight: 700;
    font-size: .95rem;
    color: #1a2d3a;
    margin: 0 0 4px;
}

.gt-pt-body p {
    font-size: .88rem;
    color: var(--gt-muted);
    line-height: 1.75;
    margin: 0;
}

/* callout */
.gt-callout {
    border-radius: var(--gt-rad-lg);
    padding: 1.25rem 1.5rem;
    display: flex;
    align-items: flex-start;
    gap: .85rem;
    font-size: .9rem;
    line-height: 1.75;
}

.gt-call-info {
    background: rgba(39, 81, 96, .05);
    border-left: 3px solid var(--gt-pri);
}

.gt-call-warn {
    background: rgba(133, 35, 65, .05);
    border-left: 3px solid var(--gt-sec);
}

.gt-call-gold {
    background: rgba(212, 175, 55, .08);
    border-left: 3px solid var(--gt-gold);
}

.gt-callout i {
    margin-top: 2px;
    flex-shrink: 0;
}

.gt-call-info i {
    color: var(--gt-pri);
}

.gt-call-warn i {
    color: var(--gt-sec);
}

.gt-call-gold i {
    color: #b8922a;
}

.gt-callout p {
    margin: 0;
    color: #445;
}

/* ==============================================
   GRADING SYSTEM — DARK SECTION
   ============================================== */
.gt-grading-sec {
    background: linear-gradient(135deg, #071520 0%, var(--gt-pri-d) 50%, #1e5e78 100%);
    position: relative;
    overflow: hidden;
}

.gt-grading-sec .gt-hero-dots {
    opacity: .35;
}

.gt-grading-orb-a {
    position: absolute;
    width: 450px;
    height: 450px;
    border-radius: 50%;
    filter: blur(90px);
    background: rgba(212, 175, 55, .1);
    top: -150px;
    right: -100px;
    pointer-events: none;
}

.gt-grading-orb-b {
    position: absolute;
    width: 300px;
    height: 300px;
    border-radius: 50%;
    filter: blur(80px);
    background: rgba(133, 35, 65, .14);
    bottom: -80px;
    left: -60px;
    pointer-events: none;
}

.gt-grading-inner {
    position: relative;
    z-index: 4;
}

/* table wrapper */
.gt-grade-table-wrap {
    background: rgba(255, 255, 255, .06);
    backdrop-filter: blur(16px);
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: var(--gt-rad-xl);
    overflow: hidden;
}

.gt-grade-table {
    width: 100%;
    border-collapse: collapse;
}

.gt-grade-table thead tr {
    background: rgba(255, 255, 255, .07);
    border-bottom: 1px solid rgba(255, 255, 255, .1);
}

.gt-grade-table thead th {
    padding: 1rem 1.25rem;
    font-family: 'Outfit', sans-serif;
    font-weight: 700;
    font-size: .78rem;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: rgba(255, 255, 255, .5);
    text-align: left;
}

.gt-grade-table tbody tr {
    border-bottom: 1px solid rgba(255, 255, 255, .05);
    transition: var(--gt-tr);
}

.gt-grade-table tbody tr:last-child {
    border-bottom: none;
}

.gt-grade-table tbody tr:hover {
    background: rgba(255, 255, 255, .05);
}

.gt-grade-table td {
    padding: .85rem 1.25rem;
    vertical-align: middle;
}

/* letter grade badge in table */
.gt-tbl-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 9px;
    font-family: 'Outfit', sans-serif;
    font-weight: 900;
    font-size: .95rem;
}

.gt-tb-aplus {
    background: rgba(212, 175, 55, .25);
    color: var(--gt-gold-l);
}

.gt-tb-a {
    background: rgba(100, 200, 150, .2);
    color: #80dca8;
}

.gt-tb-bplus {
    background: rgba(61, 132, 158, .25);
    color: #9dd8ea;
}

.gt-tb-b {
    background: rgba(46, 139, 87, .2);
    color: #6fcf97;
}

.gt-tb-cplus {
    background: rgba(102, 83, 181, .22);
    color: #b5a8f5;
}

.gt-tb-c {
    background: rgba(39, 81, 96, .35);
    color: #7ec8e3;
}

.gt-tb-dplus {
    background: rgba(200, 140, 60, .2);
    color: #f5c878;
}

.gt-tb-d {
    background: rgba(180, 100, 30, .2);
    color: #f5b35e;
}

.gt-tb-f {
    background: rgba(200, 50, 50, .2);
    color: #f58a8a;
}

.gt-tb-spl {
    background: rgba(255, 255, 255, .08);
    color: rgba(255, 255, 255, .5);
}

.gt-tbl-pts {
    font-family: 'Outfit', sans-serif;
    font-weight: 900;
    font-size: 1.05rem;
    color: #fff;
}

.gt-tbl-pts-zero {
    color: rgba(255, 255, 255, .35);
}

.gt-tbl-def {
    font-size: .88rem;
    color: rgba(255, 255, 255, .7);
    line-height: 1.4;
}

.gt-tbl-range {
    display: inline-block;
    font-size: .75rem;
    color: rgba(255, 255, 255, .4);
    background: rgba(255, 255, 255, .06);
    border-radius: 6px;
    padding: 2px 8px;
    margin-top: 3px;
}

/* legend badges row */
.gt-legend-strip {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    margin-top: 1.5rem;
}

.gt-legend-chip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: rgba(255, 255, 255, .07);
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: 8px;
    padding: 5px 12px;
    font-size: .76rem;
    color: rgba(255, 255, 255, .65);
}

.gt-legend-chip .gt-lc-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
}

.gt-lc-pass {
    background: #6fcf97;
}

.gt-lc-min-g {
    background: #b5a8f5;
}

.gt-lc-min-u {
    background: #7ec8e3;
}

.gt-lc-fail {
    background: #f58a8a;
}

.gt-lc-spl {
    background: rgba(255, 255, 255, .3);
}

/* info panel beside table */
.gt-grading-info-panel {
    position: relative;
    z-index: 4;
}

.gt-gip-card {
    background: rgba(255, 255, 255, .07);
    backdrop-filter: blur(14px);
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: var(--gt-rad-xl);
    padding: 1.75rem;
    margin-bottom: 1rem;
}

.gt-gip-card h5 {
    font-family: 'Outfit', sans-serif;
    font-weight: 800;
    font-size: 1rem;
    color: #fff;
    margin: 0 0 .75rem;
    display: flex;
    align-items: center;
    gap: .6rem;
}

.gt-gip-card h5 i {
    color: var(--gt-gold-l);
}

.gt-gip-card p {
    font-size: .88rem;
    color: rgba(255, 255, 255, .6);
    line-height: 1.8;
    margin: 0;
}

.gt-gip-highlight {
    background: rgba(212, 175, 55, .12);
    border: 1px solid rgba(212, 175, 55, .25);
    border-radius: var(--gt-rad-lg);
    padding: 1rem 1.25rem;
    margin-top: 1rem;
    display: flex;
    align-items: center;
    gap: .75rem;
}

.gt-gip-highlight i {
    color: var(--gt-gold-l);
}

.gt-gip-highlight p {
    font-size: .85rem;
    color: rgba(255, 255, 255, .7);
    margin: 0;
    line-height: 1.6;
}

.gt-gip-highlight strong {
    color: var(--gt-gold-l);
}

/* CGPA Requirement badges */
.gt-cgpa-badges {
    display: flex;
    flex-direction: column;
    gap: .6rem;
    margin-top: .75rem;
}

.gt-cgpa-badge {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: rgba(255, 255, 255, .06);
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: 10px;
    padding: .65rem 1rem;
}

.gt-cgpa-badge .gt-cgpa-prog {
    font-size: .82rem;
    color: rgba(255, 255, 255, .65);
}

.gt-cgpa-badge .gt-cgpa-val {
    font-family: 'Outfit', sans-serif;
    font-weight: 900;
    font-size: 1rem;
    color: var(--gt-gold-l);
}

/* ==============================================
   HOW TO REQUEST SECTION
   ============================================== */
.gt-request-sec {
    background: var(--gt-bg);
}

.gt-request-step {
    background: var(--gt-white);
    border-radius: var(--gt-rad-xl);
    box-shadow: var(--gt-sh-sm);
    border: 1px solid rgba(0, 0, 0, .05);
    padding: 2rem;
    height: 100%;
    position: relative;
    overflow: hidden;
    transition: var(--gt-tr);
}

.gt-request-step:hover {
    transform: translateY(-5px);
    box-shadow: var(--gt-sh-md);
}

.gt-request-step::before {
    content: attr(data-step);
    position: absolute;
    right: -10px;
    bottom: -15px;
    font-family: 'Outfit', sans-serif;
    font-size: 6rem;
    font-weight: 900;
    color: rgba(39, 81, 96, .04);
    line-height: 1;
    user-select: none;
}

.gt-rs-num {
    width: 46px;
    height: 46px;
    border-radius: 12px;
    background: linear-gradient(135deg, var(--gt-pri), var(--gt-pri-l));
    color: #fff;
    font-family: 'Outfit', sans-serif;
    font-weight: 900;
    font-size: 1.1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.25rem;
}

.gt-request-step h5 {
    font-family: 'Outfit', sans-serif;
    font-weight: 700;
    font-size: 1rem;
    color: #1a2d3a;
    margin: 0 0 .5rem;
}

.gt-request-step p {
    font-size: .88rem;
    color: var(--gt-muted);
    line-height: 1.75;
    margin: 0;
}

.gt-req-note {
    background: var(--gt-white);
    border-radius: var(--gt-rad-lg);
    box-shadow: var(--gt-sh-sm);
    padding: 1.5rem 1.75rem;
    border-left: 4px solid var(--gt-gold);
    margin-top: 2rem;
}

.gt-req-note h6 {
    font-family: 'Outfit', sans-serif;
    font-weight: 700;
    color: #1a2d3a;
    margin: 0 0 .75rem;
    font-size: .95rem;
}

.gt-req-note ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.gt-req-note ul li {
    font-size: .88rem;
    color: var(--gt-muted);
    padding: 4px 0;
    display: flex;
    align-items: flex-start;
    gap: 8px;
}

.gt-req-note ul li i {
    color: var(--gt-gold);
    margin-top: 3px;
    font-size: .75rem;
    flex-shrink: 0;
}

/* ==============================================
   CTA SECTION
   ============================================== */
.gt-cta-sec {
    background: linear-gradient(135deg, var(--gt-sec) 0%, #6a1c33 50%, #4a1225 100%);
    position: relative;
    overflow: hidden;
}

.gt-cta-orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(80px);
}

.gt-cta-orb-1 {
    width: 380px;
    height: 380px;
    background: rgba(212, 175, 55, .18);
    top: -100px;
    right: -80px;
}

.gt-cta-orb-2 {
    width: 280px;
    height: 280px;
    background: rgba(39, 81, 96, .22);
    bottom: -70px;
    left: -50px;
}

.gt-cta-inner {
    position: relative;
    z-index: 5;
    text-align: center;
    padding: 80px 0;
}

.gt-cta-inner h2 {
    font-family: 'Outfit', sans-serif;
    font-size: clamp(1.9rem, 3.5vw, 2.8rem);
    font-weight: 900;
    color: #fff;
    margin-bottom: .75rem;
}

.gt-cta-inner p {
    font-size: 1rem;
    color: rgba(255, 255, 255, .65);
    max-width: 500px;
    margin: 0 auto 2rem;
    line-height: 1.8;
}

.gt-btn-cta-g {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: linear-gradient(135deg, var(--gt-gold), var(--gt-gold-l));
    color: #1a1a1a;
    font-weight: 800;
    font-size: .9rem;
    padding: .9rem 2rem;
    border-radius: 100px;
    text-decoration: none;
    transition: var(--gt-tr);
    box-shadow: 0 5px 22px rgba(212, 175, 55, .38);
}

.gt-btn-cta-g:hover {
    transform: translateY(-2px);
    box-shadow: 0 9px 30px rgba(212, 175, 55, .48);
    color: #000;
}

.gt-btn-cta-o {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255, 255, 255, .1);
    border: 1px solid rgba(255, 255, 255, .2);
    color: #fff;
    font-weight: 600;
    font-size: .9rem;
    padding: .9rem 2rem;
    border-radius: 100px;
    text-decoration: none;
    transition: var(--gt-tr);
    backdrop-filter: blur(8px);
}

.gt-btn-cta-o:hover {
    background: rgba(255, 255, 255, .18);
    color: #fff;
}

/* scroll top */
#gtScrollTop {
    position: fixed;
    bottom: 2rem;
    right: 2rem;
    width: 46px;
    height: 46px;
    background: var(--gt-pri);
    color: #fff;
    border: none;
    border-radius: 12px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 20px rgba(39, 81, 96, .35);
    transition: var(--gt-tr);
    opacity: 0;
    transform: translateY(16px);
    z-index: 9999;
}

#gtScrollTop.gt-show {
    opacity: 1;
    transform: translateY(0);
}

#gtScrollTop:hover {
    background: var(--gt-pri-d);
    transform: translateY(-3px);
}

@media(max-width:992px) {
    .gt-hero-vis {
        display: none;
    }
}

@media(max-width:768px) {

    .gt-grade-table thead th,
    .gt-grade-table td {
        padding: .65rem .85rem;
    }
}

/* ========================== */
/* grades and transcript page css end */
/* =========================== */


/* ========================== */
/* Student Services page css start */
/* =========================== */


/* ── Reveal ── */
.ss-reveal {
    opacity: 0;
    transform: translateY(32px);
    transition: opacity .65s ease, transform .65s ease;
}

.ss-reveal-l {
    opacity: 0;
    transform: translateX(-38px);
    transition: opacity .65s ease, transform .65s ease;
}

.ss-reveal-r {
    opacity: 0;
    transform: translateX(38px);
    transition: opacity .65s ease, transform .65s ease;
}

.ss-reveal.ss-vis,
.ss-reveal-l.ss-vis,
.ss-reveal-r.ss-vis {
    opacity: 1;
    transform: translate(0);
}

/* ── Section helpers ── */
.ss-sec {
    padding: 92px 0;
}

.ss-sec-sm {
    padding: 56px 0;
}

.ss-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(39, 81, 96, .08);
    border: 1px solid rgba(39, 81, 96, .15);
    border-radius: 100px;
    padding: 5px 15px;
    font-size: .7rem;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--ss-pri);
    margin-bottom: 1rem;
}

.ss-sec-title {
    font-family: 'Outfit', sans-serif;
    font-size: clamp(1.9rem, 3.6vw, 2.55rem);
    font-weight: 800;
    color: #1a2d3a;
    line-height: 1.2;
    margin-bottom: .75rem;
}

.ss-sec-title span {
    color: var(--ss-pri);
}

.ss-sec-desc {
    font-size: 1rem;
    color: var(--ss-muted);
    line-height: 1.82;
    max-width: 600px;
}

/* ==============================================
   HERO
   ============================================== */
.ss-hero {
    position: relative;
    background: linear-gradient(135deg, #071828 0%, #0e2e40 35%, var(--ss-pri) 70%, #1d6882 100%);
    overflow: hidden;
    min-height: 82vh;
    display: flex;
    align-items: center;
}

.ss-hero-orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(90px);
    pointer-events: none;
}

.ss-o1 {
    width: 540px;
    height: 540px;
    background: rgba(212, 175, 55, .12);
    top: -170px;
    right: -90px;
    animation: ssFloat 12s ease-in-out infinite;
}

.ss-o2 {
    width: 400px;
    height: 400px;
    background: rgba(133, 35, 65, .15);
    bottom: -120px;
    left: -100px;
    animation: ssFloat 16s ease-in-out infinite reverse;
}

.ss-o3 {
    width: 220px;
    height: 220px;
    background: rgba(80, 68, 160, .2);
    top: 38%;
    left: 30%;
    animation: ssFloat 10s ease-in-out infinite 1.5s;
}

.ss-o4 {
    width: 160px;
    height: 160px;
    background: rgba(30, 122, 90, .2);
    top: 60%;
    right: 25%;
    animation: ssFloat 8s ease-in-out infinite 3s;
}

@keyframes ssFloat {

    0%,
    100% {
        transform: translate(0, 0);
    }

    50% {
        transform: translate(-18px, -22px);
    }
}

.ss-hero-dots {
    position: absolute;
    inset: 0;
    background-image: radial-gradient(rgba(255, 255, 255, .05) 1.5px, transparent 1.5px);
    background-size: 28px 28px;
}

.ss-hero-inner {
    position: relative;
    z-index: 5;
    padding: 100px 0 80px;
}

.ss-hero-chip {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255, 255, 255, .08);
    border: 1px solid rgba(255, 255, 255, .15);
    backdrop-filter: blur(8px);
    border-radius: 100px;
    padding: 6px 16px;
    color: var(--ss-gold-l);
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 1.6rem;
}

.ss-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--ss-gold-l);
    animation: ssBlink 1.8s ease infinite;
}

@keyframes ssBlink {

    0%,
    100% {
        opacity: 1;
    }

    50% {
        opacity: .2;
    }
}

.ss-hero-h1 {
    font-family: 'Outfit', sans-serif;
    font-size: clamp(2.4rem, 5.5vw, 3.8rem);
    font-weight: 900;
    color: #fff;
    line-height: 1.1;
    margin-bottom: 1.2rem;
}

.ss-hero-h1 em {
    font-style: normal;
    background: linear-gradient(90deg, var(--ss-gold), var(--ss-gold-l));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.ss-hero-desc {
    color: rgba(255, 255, 255, .62);
    font-size: 1.05rem;
    line-height: 1.88;
    max-width: 510px;
    margin-bottom: 2.5rem;
}

.ss-btn-pri {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: linear-gradient(135deg, var(--ss-gold), var(--ss-gold-l));
    color: #1a1a1a;
    font-weight: 700;
    font-size: .9rem;
    padding: .88rem 1.85rem;
    border-radius: 100px;
    text-decoration: none;
    transition: var(--ss-tr);
    box-shadow: 0 4px 22px rgba(212, 175, 55, .38);
}

.ss-btn-pri:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 30px rgba(212, 175, 55, .5);
    color: #111;
}

.ss-btn-sec {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255, 255, 255, .1);
    border: 1px solid rgba(255, 255, 255, .2);
    color: #fff;
    font-weight: 600;
    font-size: .9rem;
    padding: .88rem 1.85rem;
    border-radius: 100px;
    text-decoration: none;
    transition: var(--ss-tr);
    backdrop-filter: blur(8px);
}

.ss-btn-sec:hover {
    background: rgba(255, 255, 255, .17);
    color: #fff;
}

/* Hero right — service icon cluster */
.ss-hero-vis {
    position: relative;
    z-index: 5;
}

.ss-icon-cluster {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}

.ss-cluster-card {
    background: rgba(255, 255, 255, .08);
    backdrop-filter: blur(18px);
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: var(--ss-rad-lg);
    padding: 1.4rem 1.5rem;
    transition: var(--ss-tr);
    cursor: default;
}

.ss-cluster-card:hover {
    background: rgba(255, 255, 255, .14);
    transform: translateY(-4px);
}

.ss-cluster-card.ss-cc-wide {
    grid-column: 1/3;
}

.ss-cc-icon {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
    margin-bottom: .9rem;
}

.ss-cci-teal {
    background: rgba(39, 81, 96, .4);
    color: #7ec8e3;
}

.ss-cci-rose {
    background: rgba(133, 35, 65, .35);
    color: #e8899e;
}

.ss-cci-indigo {
    background: rgba(80, 68, 160, .35);
    color: #b5a8f5;
}

.ss-cci-green {
    background: rgba(30, 122, 90, .35);
    color: #6fcf97;
}

.ss-cci-amber {
    background: rgba(212, 175, 55, .25);
    color: var(--ss-gold-l);
}

.ss-cluster-card h6 {
    font-family: 'Outfit', sans-serif;
    font-weight: 800;
    font-size: .85rem;
    color: #fff;
    margin: 0 0 3px;
}

.ss-cluster-card p {
    font-size: .74rem;
    color: rgba(255, 255, 255, .45);
    margin: 0;
    line-height: 1.5;
}

/* Stats row */
.ss-hero-stats {
    display: flex;
    gap: 2rem;
    flex-wrap: wrap;
    margin-top: 2rem;
    border-top: 1px solid rgba(255, 255, 255, .1);
    padding-top: 1.75rem;
}

.ss-stat .ss-stat-val {
    font-family: 'Outfit', sans-serif;
    font-size: 1.9rem;
    font-weight: 900;
    color: #fff;
    line-height: 1;
}

.ss-stat .ss-stat-val span {
    font-size: 1rem;
    font-weight: 600;
    color: var(--ss-gold-l);
}

.ss-stat .ss-stat-lbl {
    font-size: .7rem;
    color: rgba(255, 255, 255, .42);
    letter-spacing: 1px;
    text-transform: uppercase;
    margin-top: 3px;
}

/* Breadcrumb */
.ss-bc {
    background: var(--ss-pri-d);
    padding: 12px 0;
    border-bottom: 1px solid rgba(255, 255, 255, .05);
}

.ss-bc .breadcrumb {
    margin: 0;
}

.ss-bc .breadcrumb-item a {
    color: rgba(255, 255, 255, .5);
    text-decoration: none;
    font-size: .8rem;
    transition: color .2s;
}

.ss-bc .breadcrumb-item a:hover {
    color: var(--ss-gold);
}

.ss-bc .breadcrumb-item.active {
    color: var(--ss-gold-l);
    font-size: .8rem;
}

.ss-bc .breadcrumb-item+.breadcrumb-item::before {
    color: rgba(255, 255, 255, .2);
}

/* ==============================================
   INTRO / OVERVIEW
   ============================================== */
.ss-intro-sec {
    background: var(--ss-white);
}

.ss-intro-lead {
    font-size: 1.12rem;
    line-height: 1.9;
    color: #334;
    border-left: 4px solid var(--ss-pri);
    padding: 1.25rem 1.5rem;
    background: rgba(39, 81, 96, .04);
    border-radius: 0 var(--ss-rad-md) var(--ss-rad-md) 0;
    margin-bottom: 2.5rem;
}

/* Quick-nav pill strip */
.ss-quick-nav {
    display: flex;
    flex-wrap: wrap;
    gap: .6rem;
    margin-bottom: 3.5rem;
}

.ss-qn-pill {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: var(--ss-bg);
    border: 1px solid rgba(0, 0, 0, .07);
    border-radius: 100px;
    padding: 7px 16px;
    font-size: .8rem;
    font-weight: 600;
    color: var(--ss-pri);
    text-decoration: none;
    transition: var(--ss-tr);
}

.ss-qn-pill:hover {
    background: var(--ss-pri);
    color: #fff;
    border-color: var(--ss-pri);
    transform: translateY(-2px);
}

.ss-qn-pill i {
    font-size: .75rem;
}

/* Pillar mini-cards row */
.ss-pillar-card {
    background: var(--ss-bg);
    border-radius: var(--ss-rad-lg);
    border: 1px solid rgba(0, 0, 0, .05);
    padding: 1.75rem;
    text-align: center;
    height: 100%;
    transition: var(--ss-tr);
    position: relative;
    overflow: hidden;
}

.ss-pillar-card::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 3px;
    border-radius: 0 0 var(--ss-rad-lg) var(--ss-rad-lg);
}

.ss-pc-adv::after {
    background: linear-gradient(90deg, var(--ss-adv), #3d849e);
}

.ss-pc-csl::after {
    background: linear-gradient(90deg, var(--ss-csl), #b03060);
}

.ss-pc-lib::after {
    background: linear-gradient(90deg, var(--ss-lib), #7c72d0);
}

.ss-pc-tch::after {
    background: linear-gradient(90deg, var(--ss-tech), #28a676);
}

.ss-pc-car::after {
    background: linear-gradient(90deg, var(--ss-car), #f5c140);
}

.ss-pillar-card:hover {
    transform: translateY(-6px);
    box-shadow: var(--ss-sh-md);
    background: var(--ss-white);
}

.ss-pillar-icon {
    width: 58px;
    height: 58px;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.4rem;
    margin: 0 auto 1.1rem;
}

.ss-pi-adv {
    background: rgba(39, 81, 96, .1);
    color: var(--ss-adv);
}

.ss-pi-csl {
    background: rgba(133, 35, 65, .1);
    color: var(--ss-csl);
}

.ss-pi-lib {
    background: rgba(80, 68, 160, .1);
    color: var(--ss-lib);
}

.ss-pi-tch {
    background: rgba(30, 122, 90, .1);
    color: var(--ss-tech);
}

.ss-pi-car {
    background: rgba(184, 146, 42, .1);
    color: var(--ss-car);
}

.ss-pillar-card h5 {
    font-family: 'Outfit', sans-serif;
    font-weight: 800;
    font-size: .95rem;
    color: #1a2d3a;
    margin: 0 0 .4rem;
}

.ss-pillar-card p {
    font-size: .8rem;
    color: var(--ss-muted);
    line-height: 1.6;
    margin: 0;
}

/* ==============================================
   SERVICE DETAIL SECTIONS (alternating layout)
   ============================================== */

/* shared service block */
.ss-service-block {
    padding: 88px 0;
}

/* light bg services */
.ss-svc-light {
    background: var(--ss-white);
}

.ss-svc-tinted {
    background: linear-gradient(160deg, #f0f6f9, #e8f2f7);
}

.ss-svc-dark {
    background: linear-gradient(135deg, #071828 0%, var(--ss-pri-d) 50%, #1d5f78 100%);
    position: relative;
    overflow: hidden;
}

.ss-svc-dark .ss-hero-dots {
    opacity: .3;
}

/* service section label */
.ss-svc-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border-radius: 100px;
    padding: 5px 14px;
    font-size: .7rem;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 1rem;
    border: 1px solid;
}

.ss-lbl-adv {
    background: rgba(39, 81, 96, .08);
    border-color: rgba(39, 81, 96, .2);
    color: var(--ss-adv);
}

.ss-lbl-csl {
    background: rgba(133, 35, 65, .07);
    border-color: rgba(133, 35, 65, .2);
    color: var(--ss-csl);
}

.ss-lbl-lib {
    background: rgba(80, 68, 160, .07);
    border-color: rgba(80, 68, 160, .2);
    color: var(--ss-lib);
}

.ss-lbl-tch {
    background: rgba(30, 122, 90, .07);
    border-color: rgba(30, 122, 90, .2);
    color: var(--ss-tech);
}

.ss-lbl-car {
    background: rgba(184, 146, 42, .08);
    border-color: rgba(184, 146, 42, .2);
    color: var(--ss-car);
}

/* dark variant */
.ss-lbl-dark {
    background: rgba(255, 255, 255, .09);
    border-color: rgba(255, 255, 255, .16);
    color: var(--ss-gold-l);
}

.ss-svc-title {
    font-family: 'Outfit', sans-serif;
    font-size: clamp(1.7rem, 3vw, 2.3rem);
    font-weight: 800;
    color: #1a2d3a;
    line-height: 1.2;
    margin-bottom: .85rem;
}

.ss-svc-title-light {
    color: #fff;
}

.ss-svc-title .ss-svc-accent {
    color: var(--ss-pri);
}

.ss-svc-title .ss-svc-acc-gold {
    color: var(--ss-gold-l);
}

.ss-svc-lead {
    font-size: 1rem;
    line-height: 1.85;
    color: var(--ss-muted);
    margin-bottom: 1.5rem;
}

.ss-svc-lead-light {
    color: rgba(255, 255, 255, .62);
}

/* Feature list */
.ss-feature-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.ss-feature-list li {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: .7rem 0;
    border-bottom: 1px solid rgba(0, 0, 0, .05);
    font-size: .92rem;
    color: #445;
    line-height: 1.65;
}

.ss-feature-list li:last-child {
    border-bottom: none;
}

.ss-feature-list li i {
    width: 30px;
    height: 30px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: .75rem;
    flex-shrink: 0;
    margin-top: 2px;
}

.ss-feature-list-light li {
    color: rgba(255, 255, 255, .72);
    border-bottom-color: rgba(255, 255, 255, .07);
}

.ss-feature-list-light li i {
    background: rgba(255, 255, 255, .08) !important;
    color: rgba(255, 255, 255, .65) !important;
}

/* icon colours per service */
.ss-fi-adv {
    background: rgba(39, 81, 96, .1);
    color: var(--ss-adv);
}

.ss-fi-csl {
    background: rgba(133, 35, 65, .1);
    color: var(--ss-csl);
}

.ss-fi-lib {
    background: rgba(80, 68, 160, .1);
    color: var(--ss-lib);
}

.ss-fi-tch {
    background: rgba(30, 122, 90, .1);
    color: var(--ss-tech);
}

.ss-fi-car {
    background: rgba(184, 146, 42, .1);
    color: var(--ss-car);
}

/* Visual card (right/left panels) */
.ss-visual-card {
    border-radius: var(--ss-rad-xl);
    overflow: hidden;
    box-shadow: 0 24px 72px rgba(0, 0, 0, .15);
    position: relative;
    height: 100%;
    min-height: 380px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.ss-vc-bg {
    position: absolute;
    inset: 0;
    z-index: 1;
}

.ss-vc-overlay {
    position: absolute;
    inset: 0;
    z-index: 2;
}

.ss-vc-content {
    position: relative;
    z-index: 3;
    padding: 2rem;
}

.ss-vc-adv .ss-vc-bg {
    background: linear-gradient(135deg, var(--ss-adv), var(--ss-pri-l));
}

.ss-vc-csl .ss-vc-bg {
    background: linear-gradient(135deg, #5a1530, var(--ss-csl), #b03060);
}

.ss-vc-lib .ss-vc-bg {
    background: linear-gradient(135deg, #2b2568, var(--ss-lib), #7c72d0);
}

.ss-vc-tch .ss-vc-bg {
    background: linear-gradient(135deg, #0e4d36, var(--ss-tech), #28a676);
}

.ss-vc-bg-dots {
    position: absolute;
    inset: 0;
    z-index: 2;
    background-image: radial-gradient(rgba(255, 255, 255, .07) 1.5px, transparent 1.5px);
    background-size: 22px 22px;
}

.ss-vc-overlay {
    background: linear-gradient(180deg, transparent 20%, rgba(0, 0, 0, .45) 100%);
}

.ss-vc-icon {
    width: 64px;
    height: 64px;
    border-radius: 18px;
    background: rgba(255, 255, 255, .15);
    backdrop-filter: blur(8px);
    border: 1px solid rgba(255, 255, 255, .2);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.6rem;
    color: #fff;
    margin-bottom: 1.25rem;
}

.ss-vc-content h4 {
    font-family: 'Outfit', sans-serif;
    font-weight: 800;
    font-size: 1.2rem;
    color: #fff;
    margin: 0 0 .4rem;
}

.ss-vc-content p {
    font-size: .85rem;
    color: rgba(255, 255, 255, .7);
    margin: 0;
    line-height: 1.6;
}

/* floating badge on visual card */
.ss-vc-badge {
    position: absolute;
    top: 1.5rem;
    right: 1.5rem;
    z-index: 4;
    background: rgba(255, 255, 255, .12);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 12px;
    padding: .65rem 1rem;
    display: flex;
    align-items: center;
    gap: .5rem;
}

.ss-vc-badge .ss-vcb-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #4adf86;
    animation: ssPulse 2s ease infinite;
}

@keyframes ssPulse {

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

    50% {
        opacity: .5;
        transform: scale(.8);
    }
}

.ss-vc-badge span {
    font-size: .72rem;
    font-weight: 700;
    color: #fff;
    letter-spacing: 1px;
    text-transform: uppercase;
}

/* Extra info chips below visual */
.ss-chip-row {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    margin-top: 1.25rem;
}

.ss-chip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: var(--ss-bg);
    border: 1px solid rgba(0, 0, 0, .06);
    border-radius: 8px;
    padding: 5px 12px;
    font-size: .78rem;
    font-weight: 600;
    color: #445;
}

.ss-chip i {
    font-size: .7rem;
}

/* Callout */
.ss-callout {
    border-radius: var(--ss-rad-lg);
    padding: 1.1rem 1.4rem;
    display: flex;
    align-items: flex-start;
    gap: .8rem;
    font-size: .9rem;
    line-height: 1.75;
    margin-top: 1.5rem;
}

.ss-call-teal {
    background: rgba(39, 81, 96, .06);
    border-left: 3px solid var(--ss-pri);
}

.ss-call-rose {
    background: rgba(133, 35, 65, .06);
    border-left: 3px solid var(--ss-csl);
}

.ss-call-gold {
    background: rgba(212, 175, 55, .08);
    border-left: 3px solid var(--ss-gold);
}

.ss-call-green {
    background: rgba(30, 122, 90, .06);
    border-left: 3px solid var(--ss-tech);
}

.ss-callout i {
    margin-top: 2px;
    flex-shrink: 0;
}

.ss-call-teal i {
    color: var(--ss-pri);
}

.ss-call-rose i {
    color: var(--ss-csl);
}

.ss-call-gold i {
    color: #b8922a;
}

.ss-call-green i {
    color: var(--ss-tech);
}

.ss-callout p {
    margin: 0;
    color: #445;
}

/* Dark callout */
.ss-call-dk-gold {
    background: rgba(212, 175, 55, .12);
    border-left: 3px solid var(--ss-gold-l);
}

.ss-call-dk-gold i {
    color: var(--ss-gold-l);
}

.ss-call-dk-gold p {
    color: rgba(255, 255, 255, .72);
}

/* Tech email card */
.ss-email-card {
    background: rgba(255, 255, 255, .07);
    backdrop-filter: blur(14px);
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: var(--ss-rad-lg);
    padding: 1.5rem 1.75rem;
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-top: 1.5rem;
    flex-wrap: wrap;
}

.ss-email-icon {
    width: 50px;
    height: 50px;
    border-radius: 13px;
    flex-shrink: 0;
    background: linear-gradient(135deg, rgba(30, 122, 90, .5), rgba(40, 166, 118, .5));
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    color: #fff;
}

.ss-email-info h6 {
    font-family: 'Outfit', sans-serif;
    font-weight: 700;
    font-size: .92rem;
    color: #fff;
    margin: 0 0 3px;
}

.ss-email-info a {
    font-size: .88rem;
    color: var(--ss-gold-l);
    text-decoration: none;
    font-weight: 600;
}

.ss-email-info a:hover {
    text-decoration: underline;
}

/* Tech availability chips */
.ss-avail-chips {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    margin-top: 1rem;
}

.ss-avail-chip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: rgba(255, 255, 255, .07);
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 8px;
    padding: 5px 12px;
    font-size: .78rem;
    color: rgba(255, 255, 255, .7);
    font-weight: 600;
}

/* ==============================================
   CTA
   ============================================== */
.ss-cta-sec {
    background: linear-gradient(135deg, var(--ss-sec) 0%, #6a1c33 50%, #4a1225 100%);
    position: relative;
    overflow: hidden;
}

.ss-cta-orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(80px);
}

.ss-cta-o1 {
    width: 380px;
    height: 380px;
    background: rgba(212, 175, 55, .18);
    top: -100px;
    right: -80px;
}

.ss-cta-o2 {
    width: 280px;
    height: 280px;
    background: rgba(39, 81, 96, .22);
    bottom: -70px;
    left: -50px;
}

.ss-cta-inner {
    position: relative;
    z-index: 5;
    text-align: center;
    padding: 84px 0;
}

.ss-cta-inner h2 {
    font-family: 'Outfit', sans-serif;
    font-size: clamp(1.9rem, 3.5vw, 2.8rem);
    font-weight: 900;
    color: #fff;
    margin-bottom: .75rem;
}

.ss-cta-inner p {
    font-size: 1rem;
    color: rgba(255, 255, 255, .62);
    max-width: 520px;
    margin: 0 auto 2rem;
    line-height: 1.85;
}

.ss-btn-cta-g {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: linear-gradient(135deg, var(--ss-gold), var(--ss-gold-l));
    color: #1a1a1a;
    font-weight: 800;
    font-size: .9rem;
    padding: .9rem 2rem;
    border-radius: 100px;
    text-decoration: none;
    transition: var(--ss-tr);
    box-shadow: 0 5px 22px rgba(212, 175, 55, .38);
}

.ss-btn-cta-g:hover {
    transform: translateY(-2px);
    box-shadow: 0 9px 30px rgba(212, 175, 55, .48);
    color: #000;
}

.ss-btn-cta-o {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255, 255, 255, .1);
    border: 1px solid rgba(255, 255, 255, .2);
    color: #fff;
    font-weight: 600;
    font-size: .9rem;
    padding: .9rem 2rem;
    border-radius: 100px;
    text-decoration: none;
    transition: var(--ss-tr);
    backdrop-filter: blur(8px);
}

.ss-btn-cta-o:hover {
    background: rgba(255, 255, 255, .18);
    color: #fff;
}

/* Scroll top */
#ssScrollTop {
    position: fixed;
    bottom: 2rem;
    right: 2rem;
    width: 46px;
    height: 46px;
    background: var(--ss-pri);
    color: #fff;
    border: none;
    border-radius: 12px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 20px rgba(39, 81, 96, .35);
    transition: var(--ss-tr);
    opacity: 0;
    transform: translateY(16px);
    z-index: 9999;
}

#ssScrollTop.ss-show {
    opacity: 1;
    transform: translateY(0);
}

#ssScrollTop:hover {
    background: var(--ss-pri-d);
    transform: translateY(-3px);
}

@media(max-width:992px) {
    .ss-hero-vis {
        display: none;
    }

    .ss-visual-card {
        min-height: 260px;
    }
}


/* ========================== */
/* Student Services page css End */
/* =========================== */


/* ========================== */
/* SAP Standards page css start */
/* =========================== */

/* ── Reveal ── */
.sap-reveal {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity .65s ease, transform .65s ease;
}

.sap-reveal-l {
    opacity: 0;
    transform: translateX(-36px);
    transition: opacity .65s ease, transform .65s ease;
}

.sap-reveal-r {
    opacity: 0;
    transform: translateX(36px);
    transition: opacity .65s ease, transform .65s ease;
}

.sap-reveal.sap-vis,
.sap-reveal-l.sap-vis,
.sap-reveal-r.sap-vis {
    opacity: 1;
    transform: translate(0);
}

/* ── Layout helpers ── */
.sap-sec {
    padding: 88px 0;
}

.sap-sec-sm {
    padding: 56px 0;
}

.sap-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(39, 81, 96, .08);
    border: 1px solid rgba(39, 81, 96, .15);
    border-radius: 100px;
    padding: 5px 14px;
    font-size: .7rem;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--sap-pri);
    margin-bottom: 1rem;
}

.sap-sec-title {
    font-family: 'Outfit', sans-serif;
    font-size: clamp(1.85rem, 3.5vw, 2.5rem);
    font-weight: 800;
    color: #1a2d3a;
    line-height: 1.2;
    margin-bottom: .8rem;
}

.sap-sec-title span {
    color: var(--sap-pri);
}

.sap-sec-desc {
    font-size: 1rem;
    color: var(--sap-muted);
    line-height: 1.82;
    max-width: 620px;
}

/* ── Callouts ── */
.sap-callout {
    border-radius: var(--sap-rad-lg);
    padding: 1.1rem 1.4rem;
    display: flex;
    align-items: flex-start;
    gap: .85rem;
    font-size: .9rem;
    line-height: 1.78;
    margin-bottom: .75rem;
}

.sap-call-teal {
    background: rgba(39, 81, 96, .06);
    border-left: 3px solid var(--sap-pri);
}

.sap-call-rose {
    background: rgba(133, 35, 65, .06);
    border-left: 3px solid var(--sap-sec);
}

.sap-call-gold {
    background: rgba(212, 175, 55, .08);
    border-left: 3px solid var(--sap-gold);
}

.sap-call-green {
    background: rgba(30, 122, 90, .06);
    border-left: 3px solid var(--sap-eval);
}

.sap-call-blue {
    background: rgba(30, 94, 138, .06);
    border-left: 3px solid var(--sap-quant);
}

.sap-call-violet {
    background: rgba(78, 53, 144, .06);
    border-left: 3px solid var(--sap-qual);
}

.sap-callout i {
    margin-top: 2px;
    flex-shrink: 0;
}

.sap-call-teal i {
    color: var(--sap-pri);
}

.sap-call-rose i {
    color: var(--sap-sec);
}

.sap-call-gold i {
    color: #b8922a;
}

.sap-call-green i {
    color: var(--sap-eval);
}

.sap-call-blue i {
    color: var(--sap-quant);
}

.sap-call-violet i {
    color: var(--sap-qual);
}

.sap-callout p {
    margin: 0;
    color: #445;
}

/* dark callout */
.sap-call-dk-gold {
    background: rgba(212, 175, 55, .12);
    border-left: 3px solid var(--sap-gold-l);
}

.sap-call-dk-gold i {
    color: var(--sap-gold-l);
}

.sap-call-dk-gold p {
    color: rgba(255, 255, 255, .72);
}

/* ── Section label ── */
.sap-svc-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border-radius: 100px;
    padding: 5px 14px;
    font-size: .7rem;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    border: 1px solid;
    margin-bottom: 1rem;
}

.sap-lbl-quant {
    background: rgba(30, 94, 138, .07);
    border-color: rgba(30, 94, 138, .2);
    color: var(--sap-quant);
}

.sap-lbl-qual {
    background: rgba(78, 53, 144, .07);
    border-color: rgba(78, 53, 144, .2);
    color: var(--sap-qual);
}

.sap-lbl-grad {
    background: rgba(39, 81, 96, .07);
    border-color: rgba(39, 81, 96, .2);
    color: var(--sap-grad);
}

.sap-lbl-ug {
    background: rgba(133, 35, 65, .07);
    border-color: rgba(133, 35, 65, .2);
    color: var(--sap-ug);
}

.sap-lbl-eval {
    background: rgba(30, 122, 90, .07);
    border-color: rgba(30, 122, 90, .2);
    color: var(--sap-eval);
}

.sap-lbl-mtf {
    background: rgba(184, 146, 42, .08);
    border-color: rgba(184, 146, 42, .2);
    color: var(--sap-mtf);
}

.sap-lbl-cog {
    background: rgba(133, 35, 65, .07);
    border-color: rgba(133, 35, 65, .2);
    color: var(--sap-sec);
}

.sap-lbl-dk {
    background: rgba(255, 255, 255, .09);
    border-color: rgba(255, 255, 255, .18);
    color: var(--sap-gold-l);
}

/* ── Feature list ── */
.sap-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.sap-list li {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: .65rem 0;
    border-bottom: 1px solid rgba(0, 0, 0, .05);
    font-size: .92rem;
    color: #445;
    line-height: 1.68;
}

.sap-list li:last-child {
    border-bottom: none;
}

.sap-list li i {
    width: 30px;
    height: 30px;
    border-radius: 8px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: .73rem;
    margin-top: 2px;
}

.sap-list-light li {
    color: rgba(255, 255, 255, .72);
    border-bottom-color: rgba(255, 255, 255, .07);
}

.sap-list-light li i {
    background: rgba(255, 255, 255, .1) !important;
    color: rgba(255, 255, 255, .75) !important;
}

.sap-fi-quant {
    background: rgba(30, 94, 138, .1);
    color: var(--sap-quant);
}

.sap-fi-qual {
    background: rgba(78, 53, 144, .1);
    color: var(--sap-qual);
}

.sap-fi-grad {
    background: rgba(39, 81, 96, .1);
    color: var(--sap-grad);
}

.sap-fi-ug {
    background: rgba(133, 35, 65, .1);
    color: var(--sap-ug);
}

.sap-fi-eval {
    background: rgba(30, 122, 90, .1);
    color: var(--sap-eval);
}

.sap-fi-gold {
    background: rgba(212, 175, 55, .12);
    color: #b8922a;
}

/* ==============================================
   HERO
   ============================================== */
.sap-hero {
    position: relative;
    background: linear-gradient(135deg, #06111c 0%, #0e2535 38%, var(--sap-pri) 72%, #1c6177 100%);
    overflow: hidden;
    min-height: 80vh;
    display: flex;
    align-items: center;
}

.sap-hero-orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(90px);
    pointer-events: none;
}

.sap-o1 {
    width: 530px;
    height: 530px;
    background: rgba(212, 175, 55, .11);
    top: -150px;
    right: -80px;
    animation: sapFloat 13s ease-in-out infinite;
}

.sap-o2 {
    width: 400px;
    height: 400px;
    background: rgba(133, 35, 65, .14);
    bottom: -120px;
    left: -90px;
    animation: sapFloat 16s ease-in-out infinite reverse;
}

.sap-o3 {
    width: 220px;
    height: 220px;
    background: rgba(78, 53, 144, .2);
    top: 38%;
    left: 32%;
    animation: sapFloat 10s ease-in-out infinite 2s;
}

.sap-o4 {
    width: 160px;
    height: 160px;
    background: rgba(30, 94, 138, .22);
    top: 65%;
    right: 22%;
    animation: sapFloat 8s ease-in-out infinite 3.5s;
}

@keyframes sapFloat {

    0%,
    100% {
        transform: translate(0, 0);
    }

    50% {
        transform: translate(-16px, -20px);
    }
}

.sap-hero-dots {
    position: absolute;
    inset: 0;
    background-image: radial-gradient(rgba(255, 255, 255, .05) 1.5px, transparent 1.5px);
    background-size: 28px 28px;
}

.sap-hero-inner {
    position: relative;
    z-index: 5;
    padding: 100px 0 80px;
}

.sap-hero-chip {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255, 255, 255, .08);
    border: 1px solid rgba(255, 255, 255, .15);
    backdrop-filter: blur(8px);
    border-radius: 100px;
    padding: 6px 16px;
    color: var(--sap-gold-l);
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 1.6rem;
}

.sap-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--sap-gold-l);
    animation: sapBlink 1.8s ease infinite;
}

@keyframes sapBlink {

    0%,
    100% {
        opacity: 1;
    }

    50% {
        opacity: .2;
    }
}

.sap-hero-h1 {
    font-family: 'Outfit', sans-serif;
    font-size: clamp(2.2rem, 5vw, 3.6rem);
    font-weight: 900;
    color: #fff;
    line-height: 1.1;
    margin-bottom: 1.2rem;
}

.sap-hero-h1 em {
    font-style: normal;
    background: linear-gradient(90deg, var(--sap-gold), var(--sap-gold-l));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.sap-hero-desc {
    color: rgba(255, 255, 255, .6);
    font-size: 1.05rem;
    line-height: 1.88;
    max-width: 520px;
    margin-bottom: 2.5rem;
}

.sap-btn-pri {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: linear-gradient(135deg, var(--sap-gold), var(--sap-gold-l));
    color: #1a1a1a;
    font-weight: 700;
    font-size: .9rem;
    padding: .88rem 1.85rem;
    border-radius: 100px;
    text-decoration: none;
    transition: var(--sap-tr);
    box-shadow: 0 4px 22px rgba(212, 175, 55, .38);
}

.sap-btn-pri:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 30px rgba(212, 175, 55, .5);
    color: #111;
}

.sap-btn-sec {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255, 255, 255, .1);
    border: 1px solid rgba(255, 255, 255, .2);
    color: #fff;
    font-weight: 600;
    font-size: .9rem;
    padding: .88rem 1.85rem;
    border-radius: 100px;
    text-decoration: none;
    transition: var(--sap-tr);
    backdrop-filter: blur(8px);
}

.sap-btn-sec:hover {
    background: rgba(255, 255, 255, .18);
    color: #fff;
}

/* Hero right: stat tiles */
.sap-hero-vis {
    position: relative;
    z-index: 5;
}

.sap-stat-tiles {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}

.sap-st {
    background: rgba(255, 255, 255, .08);
    backdrop-filter: blur(16px);
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: var(--sap-rad-lg);
    padding: 1.5rem;
    text-align: center;
    transition: var(--sap-tr);
}

.sap-st:hover {
    background: rgba(255, 255, 255, .14);
    transform: translateY(-4px);
}

.sap-st-wide {
    grid-column: 1/3;
}

.sap-st-val {
    font-family: 'Outfit', sans-serif;
    font-size: 2.4rem;
    font-weight: 900;
    color: var(--sap-gold-l);
    line-height: 1;
    margin-bottom: .3rem;
}

.sap-st-unit {
    font-size: 1rem;
    font-weight: 700;
}

.sap-st-lbl {
    font-size: .75rem;
    color: rgba(255, 255, 255, .5);
    letter-spacing: 1px;
    text-transform: uppercase;
    line-height: 1.4;
}

.sap-hero-stats {
    display: flex;
    gap: 2rem;
    flex-wrap: wrap;
    margin-top: 2rem;
    border-top: 1px solid rgba(255, 255, 255, .1);
    padding-top: 1.75rem;
}

.sap-hstat .sap-hstat-val {
    font-family: 'Outfit', sans-serif;
    font-size: 1.8rem;
    font-weight: 900;
    color: #fff;
    line-height: 1;
}

.sap-hstat .sap-hstat-val sup {
    font-size: 1rem;
    font-weight: 600;
    color: var(--sap-gold-l);
}

.sap-hstat .sap-hstat-lbl {
    font-size: .7rem;
    color: rgba(255, 255, 255, .42);
    letter-spacing: 1px;
    text-transform: uppercase;
    margin-top: 3px;
}

/* Breadcrumb */
.sap-bc {
    background: var(--sap-pri-d);
    padding: 12px 0;
    border-bottom: 1px solid rgba(255, 255, 255, .05);
}

.sap-bc .breadcrumb {
    margin: 0;
}

.sap-bc .breadcrumb-item a {
    color: rgba(255, 255, 255, .5);
    text-decoration: none;
    font-size: .8rem;
    transition: color .2s;
}

.sap-bc .breadcrumb-item a:hover {
    color: var(--sap-gold);
}

.sap-bc .breadcrumb-item.active {
    color: var(--sap-gold-l);
    font-size: .8rem;
}

.sap-bc .breadcrumb-item+.breadcrumb-item::before {
    color: rgba(255, 255, 255, .2);
}

/* ==============================================
   OVERVIEW + QUICK NAV
   ============================================== */
.sap-overview-sec {
    background: var(--sap-white);
}

.sap-intro-lead {
    font-size: 1.08rem;
    line-height: 1.9;
    color: #334;
    border-left: 4px solid var(--sap-pri);
    padding: 1.2rem 1.5rem;
    background: rgba(39, 81, 96, .04);
    border-radius: 0 var(--sap-rad-md) var(--sap-rad-md) 0;
    margin-bottom: 2rem;
}

.sap-qnav {
    display: flex;
    flex-wrap: wrap;
    gap: .55rem;
}

.sap-qnav a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: var(--sap-bg);
    border: 1px solid rgba(0, 0, 0, .07);
    border-radius: 100px;
    padding: 7px 15px;
    font-size: .78rem;
    font-weight: 600;
    color: var(--sap-pri);
    text-decoration: none;
    transition: var(--sap-tr);
}

.sap-qnav a:hover {
    background: var(--sap-pri);
    color: #fff;
    border-color: var(--sap-pri);
    transform: translateY(-2px);
}

.sap-qnav a i {
    font-size: .72rem;
}

/* Criteria summary cards */
.sap-crit-card {
    background: var(--sap-bg);
    border-radius: var(--sap-rad-xl);
    border: 1px solid rgba(0, 0, 0, .05);
    padding: 1.75rem;
    height: 100%;
    transition: var(--sap-tr);
    position: relative;
    overflow: hidden;
}

.sap-crit-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    border-radius: 4px 4px 0 0;
}

.sap-cc-quant::before {
    background: linear-gradient(90deg, var(--sap-quant), #3a8abf);
}

.sap-cc-qual ::before {
    background: linear-gradient(90deg, var(--sap-qual), #7c6dd0);
}

.sap-crit-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--sap-sh-md);
    background: var(--sap-white);
}

.sap-crit-icon {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
    margin-bottom: 1.1rem;
}

.sap-ci-quant {
    background: rgba(30, 94, 138, .1);
    color: var(--sap-quant);
}

.sap-ci-qual {
    background: rgba(78, 53, 144, .1);
    color: var(--sap-qual);
}

.sap-crit-card h4 {
    font-family: 'Outfit', sans-serif;
    font-weight: 800;
    font-size: 1rem;
    color: #1a2d3a;
    margin: 0 0 .5rem;
}

.sap-crit-card p {
    font-size: .88rem;
    color: var(--sap-muted);
    line-height: 1.75;
    margin: 0;
}

.sap-crit-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border-radius: 8px;
    padding: 5px 11px;
    font-size: .8rem;
    font-weight: 700;
    margin-top: .85rem;
}

.sap-cb-quant {
    background: rgba(30, 94, 138, .09);
    color: var(--sap-quant);
}

.sap-cb-qual {
    background: rgba(78, 53, 144, .09);
    color: var(--sap-qual);
}

/* ==============================================
   QUANTITATIVE CRITERIA
   ============================================== */
.sap-quant-sec {
    background: linear-gradient(160deg, #f0f6f9, #e8f2f7);
}

/* formula visualiser */
.sap-formula-box {
    background: var(--sap-white);
    border-radius: var(--sap-rad-xl);
    box-shadow: var(--sap-sh-md);
    padding: 2.25rem;
    text-align: center;
    border: 1px solid rgba(30, 94, 138, .12);
}

.sap-formula-box .sap-formula-title {
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--sap-quant);
    margin-bottom: 1.25rem;
}

.sap-formula {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .75rem;
    flex-wrap: wrap;
    margin-bottom: 1.25rem;
}

.sap-f-num {
    font-family: 'Outfit', sans-serif;
    font-size: 2rem;
    font-weight: 900;
    background: linear-gradient(135deg, var(--sap-quant), #3a8abf);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    line-height: 1;
}

.sap-f-op {
    font-family: 'Outfit', sans-serif;
    font-size: 1.5rem;
    font-weight: 900;
    color: rgba(0, 0, 0, .3);
}

.sap-f-label {
    font-size: .72rem;
    font-weight: 600;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: var(--sap-muted);
    margin-top: 3px;
}

.sap-f-item {
    text-align: center;
}

.sap-formula-example {
    background: rgba(30, 94, 138, .05);
    border: 1px solid rgba(30, 94, 138, .12);
    border-radius: var(--sap-rad-md);
    padding: .85rem 1.25rem;
    font-size: .88rem;
    color: #334;
    line-height: 1.7;
}

.sap-formula-example strong {
    color: var(--sap-quant);
}

/* Progress bar visual */
.sap-progress-vis {
    margin: 1.25rem 0;
}

.sap-pv-label {
    font-size: .8rem;
    font-weight: 700;
    color: #334;
    margin-bottom: .4rem;
    display: flex;
    justify-content: space-between;
}

.sap-pv-bar {
    height: 10px;
    background: rgba(0, 0, 0, .07);
    border-radius: 100px;
    overflow: hidden;
}

.sap-pv-fill {
    height: 100%;
    border-radius: 100px;
    transition: width 1.2s ease;
}

.sap-fill-67 {
    width: 0%;
    background: linear-gradient(90deg, var(--sap-quant), #3a8abf);
}

.sap-fill-75 {
    width: 0%;
    background: linear-gradient(90deg, var(--sap-qual), #7c6dd0);
}

/* ==============================================
   QUALITATIVE CRITERIA
   ============================================== */
.sap-qual-sec {
    background: var(--sap-white);
}

/* Program comparison cards */
.sap-prog-card {
    background: var(--sap-bg);
    border-radius: var(--sap-rad-xl);
    overflow: hidden;
    height: 100%;
    box-shadow: var(--sap-sh-sm);
    border: 1px solid rgba(0, 0, 0, .05);
    transition: var(--sap-tr);
}

.sap-prog-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--sap-sh-md);
}

.sap-pc-head {
    padding: 2rem 1.75rem 1.5rem;
    position: relative;
    overflow: hidden;
}

.sap-pc-head::after {
    content: '';
    position: absolute;
    right: -25px;
    bottom: -25px;
    width: 110px;
    height: 110px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .07);
}

.sap-pch-grad {
    background: linear-gradient(135deg, var(--sap-pri-d), var(--sap-pri), #2a7ea0);
}

.sap-pch-ug {
    background: linear-gradient(135deg, #5a1530, var(--sap-sec), #a8294f);
}

.sap-pc-icon {
    width: 50px;
    height: 50px;
    border-radius: 13px;
    background: rgba(255, 255, 255, .15);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    color: #fff;
    margin-bottom: 1.1rem;
}

.sap-pc-head h4 {
    font-family: 'Outfit', sans-serif;
    font-weight: 800;
    font-size: 1.05rem;
    color: #fff;
    margin: 0 0 3px;
}

.sap-pc-head p {
    font-size: .78rem;
    color: rgba(255, 255, 255, .6);
    margin: 0;
    letter-spacing: .5px;
}

.sap-pc-body {
    background: var(--sap-white);
    padding: 1.75rem;
}

.sap-pc-stat {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: .85rem 1rem;
    border-radius: var(--sap-rad-md);
    margin-bottom: .6rem;
    border: 1px solid rgba(0, 0, 0, .05);
}

.sap-pc-stat-icon {
    width: 38px;
    height: 38px;
    border-radius: 9px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: .85rem;
}

.sap-psi-grad {
    background: rgba(39, 81, 96, .1);
    color: var(--sap-pri);
}

.sap-psi-ug {
    background: rgba(133, 35, 65, .1);
    color: var(--sap-sec);
}

.sap-pc-stat-info .sap-pcs-val {
    font-family: 'Outfit', sans-serif;
    font-size: 1.3rem;
    font-weight: 900;
    line-height: 1;
}

.sap-psi-grad+.sap-pc-stat-info .sap-pcs-val {
    color: var(--sap-pri);
}

.sap-psi-ug+.sap-pc-stat-info .sap-pcs-val {
    color: var(--sap-sec);
}

.sap-pc-stat-info .sap-pcs-lbl {
    font-size: .72rem;
    color: var(--sap-muted);
    letter-spacing: .5px;
    margin-top: 2px;
}

.sap-pc-rules {
    list-style: none;
    padding: 0;
    margin: .75rem 0 0;
}

.sap-pc-rules li {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    font-size: .84rem;
    color: #556;
    line-height: 1.65;
    padding: .45rem 0;
    border-bottom: 1px solid rgba(0, 0, 0, .04);
}

.sap-pc-rules li:last-child {
    border-bottom: none;
}

.sap-pc-rules li i {
    font-size: .65rem;
    margin-top: 4px;
    flex-shrink: 0;
}

.sap-rules-grad li i {
    color: var(--sap-pri);
}

.sap-rules-ug li i {
    color: var(--sap-sec);
}

/* Doctoral alert */
.sap-doctoral-alert {
    background: linear-gradient(135deg, rgba(39, 81, 96, .06), rgba(39, 81, 96, .02));
    border: 1px solid rgba(39, 81, 96, .15);
    border-radius: var(--sap-rad-xl);
    padding: 2rem;
    margin-top: 1.5rem;
}

.sap-da-header {
    display: flex;
    align-items: center;
    gap: .85rem;
    margin-bottom: 1rem;
}

.sap-da-icon {
    width: 48px;
    height: 48px;
    border-radius: 13px;
    flex-shrink: 0;
    background: linear-gradient(135deg, var(--sap-pri), var(--sap-pri-l));
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
    color: #fff;
}

.sap-da-header h5 {
    font-family: 'Outfit', sans-serif;
    font-weight: 800;
    font-size: 1rem;
    color: #1a2d3a;
    margin: 0 0 3px;
}

.sap-da-header p {
    font-size: .8rem;
    color: var(--sap-muted);
    margin: 0;
}

.sap-da-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: .75rem;
}

.sap-da-item {
    background: var(--sap-white);
    border-radius: var(--sap-rad-md);
    border: 1px solid rgba(0, 0, 0, .05);
    padding: .85rem 1rem;
    display: flex;
    align-items: flex-start;
    gap: .65rem;
    font-size: .83rem;
    color: #445;
    line-height: 1.6;
}

.sap-da-item i {
    color: var(--sap-pri);
    margin-top: 2px;
    flex-shrink: 0;
    font-size: .75rem;
}

/* ==============================================
   EVALUATION — DARK
   ============================================== */
.sap-eval-sec {
    background: linear-gradient(135deg, #06111c 0%, #0e2535 40%, var(--sap-pri) 75%, #1c6177 100%);
    position: relative;
    overflow: hidden;
}

.sap-eval-sec .sap-hero-dots {
    opacity: .3;
}

.sap-eval-orb-a {
    position: absolute;
    width: 420px;
    height: 420px;
    border-radius: 50%;
    filter: blur(90px);
    background: rgba(212, 175, 55, .1);
    top: -120px;
    right: -80px;
    pointer-events: none;
}

.sap-eval-orb-b {
    position: absolute;
    width: 280px;
    height: 280px;
    border-radius: 50%;
    filter: blur(80px);
    background: rgba(30, 122, 90, .14);
    bottom: -80px;
    left: -60px;
    pointer-events: none;
}

.sap-eval-inner {
    position: relative;
    z-index: 4;
}

/* Evaluation steps */
.sap-eval-step {
    display: flex;
    gap: 1.25rem;
    align-items: flex-start;
    margin-bottom: 1.5rem;
    padding: 1.25rem;
    border-radius: var(--sap-rad-lg);
    background: rgba(255, 255, 255, .06);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, .09);
    transition: var(--sap-tr);
}

.sap-eval-step:last-child {
    margin-bottom: 0;
}

.sap-eval-step:hover {
    background: rgba(255, 255, 255, .1);
}

.sap-es-num {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    flex-shrink: 0;
    font-family: 'Outfit', sans-serif;
    font-weight: 900;
    font-size: .9rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, var(--sap-gold), var(--sap-gold-l));
    color: #1a1a1a;
}

.sap-es-body h6 {
    font-family: 'Outfit', sans-serif;
    font-weight: 800;
    font-size: .95rem;
    color: #fff;
    margin: 0 0 4px;
}

.sap-es-body p {
    font-size: .87rem;
    color: rgba(255, 255, 255, .62);
    line-height: 1.72;
    margin: 0;
}

.sap-es-warn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: .5rem;
    background: rgba(133, 35, 65, .25);
    border: 1px solid rgba(133, 35, 65, .35);
    border-radius: 7px;
    padding: 3px 10px;
    font-size: .75rem;
    font-weight: 700;
    color: #f59ab0;
}

/* MTF Table */
.sap-mtf-wrap {
    background: rgba(255, 255, 255, .07);
    backdrop-filter: blur(16px);
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: var(--sap-rad-xl);
    overflow: hidden;
}

.sap-mtf-table {
    width: 100%;
    border-collapse: collapse;
}

.sap-mtf-table thead tr {
    background: rgba(255, 255, 255, .08);
    border-bottom: 1px solid rgba(255, 255, 255, .1);
}

.sap-mtf-table thead th {
    padding: 1rem 1.25rem;
    font-family: 'Outfit', sans-serif;
    font-weight: 700;
    font-size: .75rem;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: rgba(255, 255, 255, .5);
    text-align: left;
}

.sap-mtf-table tbody tr {
    border-bottom: 1px solid rgba(255, 255, 255, .06);
    transition: var(--sap-tr);
}

.sap-mtf-table tbody tr:last-child {
    border-bottom: none;
}

.sap-mtf-table tbody tr:hover {
    background: rgba(255, 255, 255, .05);
}

.sap-mtf-table td {
    padding: .9rem 1.25rem;
    vertical-align: middle;
}

.sap-mtf-prog {
    font-family: 'Outfit', sans-serif;
    font-weight: 700;
    font-size: .9rem;
    color: #fff;
}

.sap-mtf-dur {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    background: rgba(212, 175, 55, .15);
    border: 1px solid rgba(212, 175, 55, .25);
    border-radius: 7px;
    padding: 3px 10px;
    font-size: .8rem;
    font-weight: 700;
    color: var(--sap-gold-l);
}

.sap-mtf-max {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    background: rgba(133, 35, 65, .2);
    border: 1px solid rgba(133, 35, 65, .3);
    border-radius: 7px;
    padding: 3px 10px;
    font-size: .8rem;
    font-weight: 700;
    color: #f59ab0;
}

.sap-mtf-rule {
    background: rgba(255, 255, 255, .07);
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: var(--sap-rad-lg);
    padding: 1rem 1.25rem;
    margin-top: 1.25rem;
    display: flex;
    align-items: flex-start;
    gap: .75rem;
    font-size: .88rem;
    color: rgba(255, 255, 255, .7);
    line-height: 1.75;
}

.sap-mtf-rule i {
    color: var(--sap-gold-l);
    flex-shrink: 0;
    margin-top: 2px;
}

/* ==============================================
   CGPA REQUIREMENTS
   ============================================== */
.sap-cgpa-sec {
    background: var(--sap-bg);
}

.sap-cgpa-card {
    background: var(--sap-white);
    border-radius: var(--sap-rad-xl);
    box-shadow: var(--sap-sh-sm);
    border: 1px solid rgba(0, 0, 0, .05);
    overflow: hidden;
    height: 100%;
}

.sap-cgpa-head {
    padding: 2rem;
    display: flex;
    align-items: center;
    gap: 1.1rem;
    border-bottom: 1px solid rgba(0, 0, 0, .06);
}

.sap-cgpa-head-icon {
    width: 56px;
    height: 56px;
    border-radius: 15px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
}

.sap-chi-grad {
    background: rgba(39, 81, 96, .1);
    color: var(--sap-pri);
}

.sap-chi-ug {
    background: rgba(133, 35, 65, .1);
    color: var(--sap-sec);
}

.sap-cgpa-head h4 {
    font-family: 'Outfit', sans-serif;
    font-weight: 800;
    font-size: 1rem;
    color: #1a2d3a;
    margin: 0 0 3px;
}

.sap-cgpa-head p {
    font-size: .8rem;
    color: var(--sap-muted);
    margin: 0;
}

.sap-cgpa-body {
    padding: 1.75rem;
}

.sap-cgpa-big {
    font-family: 'Outfit', sans-serif;
    font-size: 3.5rem;
    font-weight: 900;
    line-height: 1;
    margin-bottom: .25rem;
}

.sap-cgpa-big-grad {
    color: var(--sap-pri);
}

.sap-cgpa-big-ug {
    color: var(--sap-sec);
}

.sap-cgpa-unit {
    font-size: 1.2rem;
    font-weight: 700;
    color: var(--sap-muted);
}

.sap-cgpa-sub {
    font-size: .8rem;
    color: var(--sap-muted);
    margin-bottom: 1.25rem;
}

.sap-cgpa-note {
    font-size: .85rem;
    color: #445;
    line-height: 1.75;
    padding-top: 1rem;
    border-top: 1px solid rgba(0, 0, 0, .06);
}

/* ==============================================
   CHANGE OF GRADE — ACCORDION STYLE
   ============================================== */
.sap-cog-sec {
    background: var(--sap-white);
}

.sap-cog-block {
    background: var(--sap-bg);
    border-radius: var(--sap-rad-xl);
    border: 1px solid rgba(0, 0, 0, .05);
    margin-bottom: 1rem;
    overflow: hidden;
    transition: var(--sap-tr);
}

.sap-cog-block:hover {
    box-shadow: var(--sap-sh-sm);
}

.sap-cog-header {
    padding: 1.35rem 1.75rem;
    display: flex;
    align-items: center;
    gap: 1rem;
    cursor: pointer;
    user-select: none;
}

.sap-cog-header-icon {
    width: 42px;
    height: 42px;
    border-radius: 11px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: .95rem;
}

.sap-coghi-purpose {
    background: rgba(39, 81, 96, .1);
    color: var(--sap-pri);
}

.sap-coghi-stmt {
    background: rgba(133, 35, 65, .1);
    color: var(--sap-sec);
}

.sap-coghi-impl {
    background: rgba(30, 122, 90, .1);
    color: var(--sap-eval);
}

.sap-coghi-grieve {
    background: rgba(212, 175, 55, .12);
    color: #b8922a;
}

.sap-coghi-comp {
    background: rgba(78, 53, 144, .1);
    color: var(--sap-qual);
}

.sap-cog-header-text h5 {
    font-family: 'Outfit', sans-serif;
    font-weight: 800;
    font-size: .95rem;
    color: #1a2d3a;
    margin: 0 0 2px;
}

.sap-cog-header-text p {
    font-size: .78rem;
    color: var(--sap-muted);
    margin: 0;
}

.sap-cog-arrow {
    margin-left: auto;
    color: var(--sap-muted);
    transition: transform .3s ease;
    font-size: .8rem;
}

.sap-cog-block.sap-open .sap-cog-arrow {
    transform: rotate(180deg);
}

.sap-cog-body {
    max-height: 0;
    overflow: hidden;
    transition: max-height .4s ease, padding .3s ease;
    padding: 0 1.75rem;
}

.sap-cog-block.sap-open .sap-cog-body {
    max-height: 600px;
    padding: 0 1.75rem 1.5rem;
}

.sap-cog-body p {
    font-size: .9rem;
    color: #445;
    line-height: 1.8;
    margin: 0 0 .75rem;
}

.sap-cog-body p:last-child {
    margin: 0;
}

/* Grievance steps */
.sap-grieve-step {
    display: flex;
    gap: 1rem;
    padding: .75rem 0;
    border-bottom: 1px solid rgba(0, 0, 0, .05);
}

.sap-grieve-step:last-child {
    border-bottom: none;
}

.sap-gs-num {
    width: 34px;
    height: 34px;
    border-radius: 9px;
    flex-shrink: 0;
    font-family: 'Outfit', sans-serif;
    font-weight: 900;
    font-size: .82rem;
    background: linear-gradient(135deg, #b8922a, var(--sap-gold-l));
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
}

.sap-gs-body h6 {
    font-family: 'Outfit', sans-serif;
    font-weight: 700;
    font-size: .88rem;
    color: #1a2d3a;
    margin: 0 0 3px;
}

.sap-gs-body p {
    font-size: .84rem;
    color: #556;
    line-height: 1.65;
    margin: 0;
}

/* ==============================================
   CTA
   ============================================== */
.sap-cta-sec {
    background: linear-gradient(135deg, var(--sap-sec) 0%, #6a1c33 50%, #4a1225 100%);
    position: relative;
    overflow: hidden;
}

.sap-cta-orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(80px);
}

.sap-cta-o1 {
    width: 380px;
    height: 380px;
    background: rgba(212, 175, 55, .18);
    top: -100px;
    right: -80px;
}

.sap-cta-o2 {
    width: 280px;
    height: 280px;
    background: rgba(39, 81, 96, .22);
    bottom: -70px;
    left: -50px;
}

.sap-cta-inner {
    position: relative;
    z-index: 5;
    text-align: center;
    padding: 84px 0;
}

.sap-cta-inner h2 {
    font-family: 'Outfit', sans-serif;
    font-size: clamp(1.9rem, 3.5vw, 2.8rem);
    font-weight: 900;
    color: #fff;
    margin-bottom: .75rem;
}

.sap-cta-inner p {
    font-size: 1rem;
    color: rgba(255, 255, 255, .62);
    max-width: 520px;
    margin: 0 auto 2rem;
    line-height: 1.85;
}

.sap-btn-cta-g {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: linear-gradient(135deg, var(--sap-gold), var(--sap-gold-l));
    color: #1a1a1a;
    font-weight: 800;
    font-size: .9rem;
    padding: .9rem 2rem;
    border-radius: 100px;
    text-decoration: none;
    transition: var(--sap-tr);
    box-shadow: 0 5px 22px rgba(212, 175, 55, .38);
}

.sap-btn-cta-g:hover {
    transform: translateY(-2px);
    box-shadow: 0 9px 30px rgba(212, 175, 55, .48);
    color: #000;
}

.sap-btn-cta-o {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255, 255, 255, .1);
    border: 1px solid rgba(255, 255, 255, .2);
    color: #fff;
    font-weight: 600;
    font-size: .9rem;
    padding: .9rem 2rem;
    border-radius: 100px;
    text-decoration: none;
    transition: var(--sap-tr);
    backdrop-filter: blur(8px);
}

.sap-btn-cta-o:hover {
    background: rgba(255, 255, 255, .18);
    color: #fff;
}

/* Scroll top */
#sapScrollTop {
    position: fixed;
    bottom: 2rem;
    right: 2rem;
    width: 46px;
    height: 46px;
    background: var(--sap-pri);
    color: #fff;
    border: none;
    border-radius: 12px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 20px rgba(39, 81, 96, .35);
    transition: var(--sap-tr);
    opacity: 0;
    transform: translateY(16px);
    z-index: 9999;
}

#sapScrollTop.sap-show {
    opacity: 1;
    transform: translateY(0);
}

#sapScrollTop:hover {
    background: var(--sap-pri-d);
    transform: translateY(-3px);
}

@media(max-width:992px) {
    .sap-hero-vis {
        display: none;
    }

    .sap-da-grid {
        grid-template-columns: 1fr;
    }
}

@media(max-width:576px) {
    .sap-stat-tiles {
        grid-template-columns: 1fr;
    }

    .sap-st-wide {
        grid-column: auto;
    }
}

/* ========================== */
/* SAP Standards page css end */
/* =========================== */
