/**
* Template Name: Impact
* Template URL: https://bootstrapmade.com/impact-bootstrap-business-website-template/
* Updated: Aug 07 2024 with Bootstrap v5.3.3
* Author: BootstrapMade.com
* License: https://bootstrapmade.com/license/
*/

/*--------------------------------------------------------------
# Font & Color Variables
# Help: https://bootstrapmade.com/color-system/
--------------------------------------------------------------*/
/* Fonts */
:root {
    --default-font: "Roboto", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --heading-font: "Montserrat", sans-serif;
    --nav-font: "Poppins", sans-serif;
}

/* Global Colors - The following color variables are used throughout the website. Updating them here will change the color scheme of the entire website */
:root {
    --background-color: #ffffff;
    /* Background color for the entire website, including individual sections */
    --default-color: #222222;
    /* Default color used for the majority of the text content across the entire website */
    --heading-color: #6030E7;
    /* Color for headings, subheadings and title throughout the website */
    --yellow-color: #FABB0A;
    /* The surface color is used as a background of boxed elements within sections, such as cards, icon boxes, or other elements that require a visual separation from the global background. */
    --contrast-color: #ffffff;
    /* Contrast color for text, ensuring readability against backgrounds of accent, heading, or default colors. */
    --purple-color: #712FD9;
    --grey-bg: #F2F2F2;
    --light-purple: #9E4CE9;
    --form-border: #9C9C9C;
    --text-color: #454545;
}

/* Nav Menu Colors - The following color variables are used specifically for the navigation menu. They are separate from the global colors to allow for more customization options */
:root {
    --nav-color: #ffffff;
    /* The default color of the main navmenu links */
    --nav-hover-color: #712FD9;
    /* Applied to main navmenu links when they are hovered over or active */
    --nav-mobile-background-color: #ffffff;
    /* Used as the background color for mobile navigation menu */
    --nav-dropdown-background-color: #ffffff;
    /* Used as the background color for dropdown items that appear when hovering over primary navigation items */
    --nav-dropdown-color: #01433c;
    /* Used for navigation links of the dropdown items in the navigation menu. */
    --nav-dropdown-hover-color: #712FD9;
    /* Similar to --nav-hover-color, this color is applied to dropdown navigation links when they are hovered over. */
}

/* Color Presets - These classes override global colors when applied to any section or element, providing reuse of the sam color scheme. */

.light-background {
    --background-color: #F2F2F2;
    --surface-color: #F2F2F2;
}

.dark-background {
    --background-color: #060606;
    --default-color: #ffffff;
    --heading-color: #ffffff;
    --surface-color: #252525;
    --contrast-color: #ffffff;
}

.accent-background {
    --background-color: #008374;
    --default-color: #ffffff;
    --heading-color: #ffffff;
    --accent-color: #ffffff;
    --surface-color: #00b6a1;
    --contrast-color: #ffffff;
}

/* Smooth scroll */
:root {
    scroll-behavior: smooth;
}

/*--------------------------------------------------------------
# General Styling & Shared Classes
--------------------------------------------------------------*/
body {
    color: var(--default-color);
    background-color: var(--background-color);
    font-family: var(--nav-font);
    margin: unset;
}

a {
    color: var(--accent-color);
    text-decoration: none;
    transition: 0.3s;
}

a:hover {
    color: color-mix(in srgb, var(--accent-color), transparent 25%);
    text-decoration: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    color: var(--heading-color);
    font-family: var(--heading-font);
}

/* Pulsating Play Button
------------------------------*/
.pulsating-play-btn {
    width: 94px;
    height: 94px;
    background: radial-gradient(var(--accent-color) 50%, color-mix(in srgb, var(--accent-color), transparent 75%) 52%);
    border-radius: 50%;
    display: block;
    position: relative;
    overflow: hidden;
}

.pulsating-play-btn:before {
    content: "";
    position: absolute;
    width: 120px;
    height: 120px;
    animation-delay: 0s;
    animation: pulsate-play-btn 2s;
    animation-direction: forwards;
    animation-iteration-count: infinite;
    animation-timing-function: steps;
    opacity: 1;
    border-radius: 50%;
    border: 5px solid color-mix(in srgb, var(--accent-color), transparent 30%);
    top: -15%;
    left: -15%;
    background: rgba(198, 16, 0, 0);
}

.pulsating-play-btn:after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translateX(-40%) translateY(-50%);
    width: 0;
    height: 0;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 15px solid #fff;
    z-index: 100;
    transition: all 400ms cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.pulsating-play-btn:hover:before {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translateX(-40%) translateY(-50%);
    width: 0;
    height: 0;
    border: none;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 15px solid #fff;
    z-index: 200;
    animation: none;
    border-radius: 0;
}

.pulsating-play-btn:hover:after {
    border-left: 15px solid var(--accent-color);
    transform: scale(20);
}

@keyframes pulsate-play-btn {
    0% {
        transform: scale(0.6, 0.6);
        opacity: 1;
    }

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

/* PHP Email Form Messages------------------------------*/
.php-email-form .error-message {
    display: none;
    background: #df1529;
    color: #ffffff;
    text-align: left;
    padding: 15px;
    margin-bottom: 24px;
    font-weight: 600;
}

.php-email-form .sent-message {
    display: none;
    color: #ffffff;
    background: #059652;
    text-align: center;
    padding: 15px;
    margin-bottom: 24px;
    font-weight: 600;
}

.php-email-form .loading {
    display: none;
    background: var(--surface-color);
    text-align: center;
    padding: 15px;
    margin-bottom: 24px;
}

.php-email-form .loading:before {
    content: "";
    display: inline-block;
    border-radius: 50%;
    width: 24px;
    height: 24px;
    margin: 0 10px -6px 0;
    border: 3px solid var(--accent-color);
    border-top-color: var(--surface-color);
    animation: php-email-form-loading 1s linear infinite;
}

@keyframes php-email-form-loading {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

/*--------------------------------------------------------------
# Global Header
--------------------------------------------------------------*/
.floating-contact {
    position: fixed;
    top: 50%;
    right: 0;
    background: var(--heading-color);
    box-shadow: 3px 5px 15px rgba(0, 0, 0, 0.25);
    padding: 10px 12px;
    border-radius: 10px 0 0 10px;
    display: flex;
    flex-direction: column;
    gap: 15px;
    z-index: 9999;

}

.floating-contact .contact-icon {
    color: #fff;
    font-size: 22px;
    text-decoration: none;
}

.header {
    background-color: transparent;
    color: var(--default-color);
    transition: all 0.5s;
    z-index: 997;
    padding-top: 52px;
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
}

.topbar {
    background-color: var(--purple-color);
    height: 52px;
    padding: 0;
    font-size: 14px;
    transition: all 0.5s;
    display: flex;
    position: relative;
    z-index: 9999;
    font-family: var(--nav-font);
}

.topbar-data {
    display: none;
}

.topbar a,
.topbar span {
    font-size: 14px;
    color: white;
}

#hero ul {
    list-style: none;
    padding-left: 0;
}

#hero .header-list {
    position: relative;
    padding-left: 30px;
    font-size: 24px;
    letter-spacing: 1px;
    font-weight: 700;
}

#hero .header-list::before {
    content: "";
    position: absolute;
    left: 0;
    top: 10px;
    width: 13px;
    height: 13px;
    background: #FABB0A;
    border-radius: 50%;
}

#hero .transparent-grid {
    display: inline-block;
    width: 100%;
    height: 90px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(120, 60, 200, 0.6);
    color: #fff;
    font-weight: 600;
    font-size: 24px;
    text-align: center;
    backdrop-filter: blur(0px);
    cursor: pointer;
    transition: 0.3s ease;
}

/* #hero .transparent-grid:hover {
    background: rgba(255, 200, 0, 0.35);
    backdrop-filter: blur(8px);
} */

#hero .admission-box {
    background-color: var(--yellow-color);
    padding: 30px 40px;
    text-align: center;
    height: 100%;
}

#hero .admission-text {
    font-size: 20px;
    font-weight: 700;
    color: var(--purple-color) !important;
    /* margin-bottom: 20px; */
    line-height: 1.5;
    align-items: center;

}

#hero .admission-btn {
    background-color: var(--nav-dropdown-hover-color);
    color: #ffffff;
    padding: 10px 30px;
    border: 2px solid var(--nav-dropdown-hover-color);
    box-shadow: 3px 3px 8px rgba(0, 0, 0, 0.25);
    font-weight: 600;
    cursor: pointer;
    transition: 0.3s;
}

#hero .admission-btn:hover {
    background-color: #f4b601;
    color: var(--nav-dropdown-hover-color);

}

.topbar .menu-btn {
    border: 1px solid white;
    text-align: center;
    cursor: pointer;
    padding: 5px 30px;
}

.topbar .menu-btn:hover {
    background-color: var(--yellow-color);
}

#hero {
    background-image: url('/app/assets/img/home/main-banner.png');
    height: 100%;
    background-size: cover;
    background-position: top;
    color: white;
}

#hero .innovation {
    color: white;
    font-family: var(--nav-font);
    font-size: 55px;
    font-weight: 700;
    letter-spacing: 0px;
    padding: 185px 0px 0px 0px;
}

.hero {
    width: 100%;
    position: relative;
    padding: 140px 0 0 0;
}

.hero .container {
    position: relative;
    z-index: 3;
}

.topbar .contact-info i a {
    line-height: 0;
    transition: 0.3s;
}

.topbar .contact-info i a:hover {
    color: var(--contrast-color);
    text-decoration: underline;
}

.menu-btn {
    border: 1px solid white;
    padding: 2px 10px;

}

.topbar .social-links a {
    color: color-mix(in srgb, var(--contrast-color), transparent 40%);
    line-height: 0;
    transition: 0.3s;
    margin-left: 20px;
}

.topbar .social-links a:hover {
    color: var(--contrast-color);
}

.header .branding {
    min-height: 60px;
    padding: 15px 0;
}

.header .logo {
    line-height: 1;
}

.header .logo img {
    max-height: 59.85px;
    margin-right: 8px;
}

.header .logo h1 {
    font-size: 30px;
    margin: 0;
    font-weight: 700;
    color: var(--heading-color);
}

.header .logo span {
    font-size: 32px;
    margin-left: 2px;
    color: var(--nav-hover-color);
}

.scrolled .header {
    box-shadow: 0px 0 18px rgba(0, 0, 0, 0.1);
}

/*--------------------------------------------------------------
# Navigation Menu
--------------------------------------------------------------*/
/* Desktop Navigation */
@media (min-width: 1200px) {
    .navmenu {
        padding: 0;
    }

    .nav-list {
        margin: 0;
        padding: 0;
        display: flex;
        list-style: none;
        align-items: center;
    }

    .navmenu li {
        position: relative;
        list-style: none;
    }

    .navmenu>ul>li {
        white-space: nowrap;
        padding: 15px 14px;
    }

    .navmenu .dropdown ul li:not(:last-child) {
        border-bottom: 0.5px solid white;
    }

    .navmenu>ul>li:last-child {
        padding-right: 0;
    }

    .navmenu a,
    .navmenu a:focus {
        color: var(--heading-color);
        font-size: 16px;
        padding: 0 2px;
        font-family: var(--nav-font);
        font-weight: 600;
        display: flex;
        align-items: center;
        justify-content: space-between;
        white-space: nowrap;
        transition: 0.3s;
        position: relative;

    }

    .navmenu a i,
    .navmenu a:focus i {
        font-size: 12px;
        line-height: 0;
        margin-left: 5px;
        transition: 0.3s;
    }

    .navmenu a:hover:before,
    .navmenu li:hover>a:before,
    .navmenu .active:before {
        visibility: visible;
        width: 100%;
    }

    .navmenu li:hover>a,
    .navmenu .active,
    .navmenu .active:focus {
        color: var(--heading-color);
    }

    .navmenu .dropdown ul {
        margin: 0;
        padding: 0;
        background: #712FD9;
        display: block;
        position: absolute;
        left: 0;
        top: 120%;
        opacity: 0;
        transition: 0.25s ease;
        border-radius: 4px;
        z-index: 99;
        min-width: 200px;
        visibility: hidden;
    }

    .navmenu .dropdown ul li a {
        min-width: 200px;
        font-size: 14px;
        color: #ffffff;
        display: block;
    }

    .navmenu .dropdown ul a {
        padding: 10px 20px;
        font-size: 15px;
        text-transform: none;
        color: var(--nav-dropdown-color);
    }

    .navmenu .dropdown ul a i {
        font-size: 12px;
        color: white !important;
    }

    .navmenu .dropdown ul a:hover,
    .navmenu .dropdown ul .active:hover,
    .navmenu .dropdown ul li:hover>a {
        color: white;
        background-color: #3C137C;
    }

    .navmenu .dropdown:hover>ul {
        opacity: 1;
        top: 100%;
        visibility: visible;
        padding: 10px;
    }

    .navmenu .dropdown .dropdown ul {
        top: 0;
        left: -90%;
        visibility: hidden;
    }

    .navmenu .dropdown .dropdown:hover>ul {
        opacity: 1;
        top: 0;
        left: -100%;
        visibility: visible;
    }

    .navmenu .dropdown-menu-with-arrow {
        margin-top: 10px;
        border-radius: 0;
        padding: 0;
        background-color: var(--purple-color);
        border: none;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
    }

    .navmenu .dropdown-menu-with-arrow::before {
        content: "";
        position: absolute;
        top: -9px;
        left: 20%;
        transform: translateX(-50%);
        width: 0;
        height: 0;
        border-left: 10px solid transparent;
        border-right: 10px solid transparent;
        border-bottom: 10px solid var(--purple-color);
    }

    .navmenu .dropdown-menu-with-arrow .dropdown-item {
        color: white;
        padding: 10px 20px;
        background-color: transparent;
    }

    .navmenu .dropdown-menu-with-arrow .dropdown-item:hover,
    .navmenu .dropdown-menu-with-arrow .dropdown-item.active-menu-item {
        background-color: var(--purple-color);
        color: white;
    }

}

/* Mobile Navigation */
@media (max-width: 1199px) {
    .mobile-nav-toggle {
        color: var(--heading-color);
        font-size: 28px;
        line-height: 0;
        margin-right: 10px;
        cursor: pointer;
        transition: color 0.3s;
        display: inline;
        align-items: center;
        justify-content: center;
        height: 100%;
        margin-top: 50px;
    }

    .divider {
        border: 2px solid rgb(211, 204, 204) !important;
    }

    .navmenu {
        padding: 0;
        z-index: 9997;
    }

    .navmenu ul {
        display: none;
        list-style: none;
        position: absolute;
        inset: 60px 20px 20px 20px;
        padding: 10px 0;
        margin: 0;
        border-radius: 6px;
        background-color: var(--nav-mobile-background-color);
        border: 1px solid color-mix(in srgb, var(--default-color), transparent 90%);
        box-shadow: none;
        overflow-y: auto;
        transition: 0.3s;
        z-index: 9998;
    }

    .navmenu a,
    .navmenu a:focus {
        color: var(--heading-color);
        padding: 10px 20px;
        font-family: var(--nav-font);
        font-size: 17px;
        font-weight: 500;
        display: flex;
        align-items: center;
        justify-content: left;
        white-space: nowrap;
        transition: 0.3s;
    }

    .navmenu a i,
    .navmenu a:focus i {
        font-size: 12px;
        line-height: 0;
        margin-left: 5px;
        width: 30px;
        height: 30px;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 50%;
        transition: 0.3s;
        background-color: color-mix(in srgb, var(--accent-color), transparent 90%);
    }

    .navmenu a i:hover,
    .navmenu a:focus i:hover {
        background-color: var(--accent-color);
        color: var(--contrast-color);
    }

    .navmenu a:hover,
    .navmenu .active,
    .navmenu .active:focus {
        color: white;
    }

    .navmenu .active i,
    .navmenu .active:focus i {
        background-color: var(--accent-color);
        color: var(--contrast-color);
        transform: rotate(180deg);
    }

    .navmenu .dropdown ul {
        position: static;
        display: none;
        z-index: 99;
        padding: 10px 0;
        margin: 10px 20px;
        background-color: var(--nav-dropdown-background-color);
        transition: all 0.5s ease-in-out;
    }

    .navmenu .dropdown ul ul {
        background-color: rgba(33, 37, 41, 0.1);
    }

    .navmenu .dropdown>.dropdown-active {
        display: block;
        background-color: rgba(33, 37, 41, 0.03);
    }

    .mobile-nav-active {
        overflow: hidden;
    }

    .mobile-nav-active .mobile-nav-toggle {
        color: #fff;
        position: absolute;
        font-size: 32px;
        top: unset;
        right: 35px;
        margin-right: 0;
        z-index: 9999;
    }

    .mobile-nav-active .navmenu {
        position: fixed;
        overflow: hidden;
        inset: 0;
        background: rgba(33, 37, 41, 0.8);
        transition: 0.3s;
    }

    .mobile-nav-active .navmenu>ul {
        display: block;
        background-color: #9E4CE9 !important;
        color: white !important;
        margin: -30px 0px;
        height: fit-content;
    }

    .mobile-nav-active .navmenu>ul li {
        color: white !important;
    }

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

/*--------------------------------------------------------------
# Our Friend Section
--------------------------------------------------------------*/
#friend {
    background-color: var(--grey-bg);
}

#friend .main-header {
    font-size: 35px;
    font-weight: 700;
    color: var(--heading-color);
    font-family: var(--nav-font);
}

#friend .welcome-box {
    background-color: white;
    border: 1px solid var(--light-purple);
}

.welcome-box.row {
    --bs-gutter-x: 0;
    padding: 15px;
}

#friend .emp-text {
    color: white;
    font-size: 28px;
    font-weight: 700;
    font-family: var(--nav-font);
    padding: 25px;
    background: linear-gradient(to bottom, #A24EE9 0%, #602FE7 100%);
}

#friend .emp-info {
    font-weight: 800;
    font-size: 20px;
    line-height: 44px;
    color: black !important;
    padding: 15px 35px 0px 25px;
}

#friend .emp-info span {
    font-weight: 500;
}

#friend .container-fluid {
    border-top: 2px solid var(--nav-hover-color);
    border-bottom: 2px solid var(--nav-hover-color);
    width: 100%;
    background-color: white;
}

#friend .friend-box {
    display: block;
    align-items: center;
    justify-content: center;
}

/* why choose */
#why-choose {
    background-image: url('/app/assets/img/home/choose-banner.jpg');
}

#why-choose .choose-main {
    color: #FFFFFF;
    font-size: 35px;
    font-weight: 700;
    text-align: center;
    text-transform: uppercase;
    font-family: var(--nav-font);
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

#why-choose .choose-info {
    font-size: 20px;
    font-weight: 700;
    text-align: center;
    color: white;
}

#why-choose .choose-info span {
    font-weight: 500;
    font-size: 18px;
    text-align: center;
    color: white;
}

#why-choose .choose-box {
    background-color: white;
    color: #454545;
    text-align: center;
    width: 225px;
    height: 225px;
    padding: 40px 0px 0px 0px;
    font-size: 16px;
    border: 0.64px solid var(--yellow-color);
}

#why-choose .img-fluid {
    width: 85px;
    height: 85px;
}

#why-choose .box-container {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 10px;
}

#why-choose .box-info-wrap {
    font-size: 16px;
    font-weight: 700;
    color: #454545;
    padding: 0px 20px;
}

#why-choose .choose-box:hover {
    background-color: var(--yellow-color);
    box-shadow: 0 0 29px 0 rgba(0, 0, 0, 0.1);
}


/*--------------------------------------------------------------
# Student Section
--------------------------------------------------------------*/

#student .student-banner {
    background-image: url('/app/assets/img/home/std-banner.jpg');
    height: 100%;
    background-size: cover;
    background-position: top;
    color: white;
    margin: 0%;
}

#student .stu-main-info {
    font-size: 55px;
    font-weight: 400;
    color: white;
    align-items: center;
    padding: 0px 18px 0px 50px;
    text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.4);
    text-transform: uppercase;
}

/*--------------------------------------------------------------
# Student development Section
--------------------------------------------------------------*/
#student-development {
    background: var(--grey-bg);
    height: fit-content;
}

#student-development .sect-subtitle {
    font-size: 18px;
    font-weight: 500;
    color: #454545;
    letter-spacing: 1px;
}

#student-development .dev-item {
    text-align: center;
}

#student-development .dev-icon {
    width: 136px;
    height: 136px;
    border-radius: 50%;
    background: var(--yellow-color);
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 35px;
    margin: 0 auto 12px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    border: 2px solid var(--heading-color);
}

#student-development .img-fluid {
    width: 75px;
    height: 75px;
}

#student-development .dev-icon:hover {
    background: linear-gradient(to bottom, #A24EE9 0%, #602FE7 100%);
    width: 136px;
    height: 136px;
    border-radius: 50%;
    transition: .3s;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    border: 1px solid var(--heading-color);
}

#student-development .dev-text {
    font-size: 18px;
    font-weight: 700;
    color: #454545;
    text-transform: capitalize;
    font-family: var(--nav-font);
}

#proud .proud-head,
#program .program,
#glimpse .glimpse-head,
#award .award-heading,
#student-development .sect-title {
    font-size: 35px;
    color: var(--heading-color);
    font-weight: 700;
    text-align: center;
    font-family: var(--nav-font);
    text-transform: uppercase;
}

#proud .proud-img {
    gap: 10px;
}

#program,
#proud,
#award {
    background-color: var(--grey-bg);
}

#program .program-info {
    font-size: 18px;
    font-weight: 500;
    text-align: center;
    color: #454545;
}

.program-card {
    position: relative;
    overflow: hidden;
    height: 500px;
    display: flex;
    flex-direction: column;
}

.program-card::before {
    content: "";
    position: absolute;
    width: 93%;
    height: 100%;
    background: #612FE2;
    z-index: 1;
    opacity: 0.8;
}

.program-card img {
    width: -webkit-fill-available;
    height: 100%;
    object-fit: cover;
    transition: 0.4s ease-in-out;

}

/* .program-card:hover::before {
    opacity: 0.8;
} */

.program-card:hover .program-text {
    opacity: 1;

}

#program .program-text {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    width: 90%;
    color: white;
    font-size: 16px;
    font-weight: 500;
    padding: 0 24px;
    z-index: 2;
}

.program-text h5 {
    margin-bottom: 15px;
    font-size: 18px;
    font-weight: 700;
    color: white;
    font-family: var(--nav-font);
    line-height: 1.5;
}

.program-text p {
    margin-top: 15px;
}

.program-text .btn {
    color: white;
    padding: 5px 50px;
    text-decoration: none;
    background-color: white;
    color: var(--heading-color);
    border: 1px solid white;
    font-size: 14px;
    font-weight: 700;
    display: inline-block;
    margin-top: 15px;
    border-radius: 0px !important;
}

.program-text .btn:hover {
    background-color: var(--heading-color);
    color: white;
}

/* glimpse */
#glimpse .glimpse-text {
    background-color: var(--yellow-color);
    font-size: 18px;
    font-family: var(--nav-font);
    font-weight: 700;
    padding: 0px 10px;
    height: 65px;
    display: flex;
    align-items: center;
}

#award .our-campuses {
    font-size: 35px;
    color: var(--heading-color);
    font-weight: 700;
    font-family: var(--nav-font);
    text-transform: uppercase;
}

#award .campus-info {
    font-size: 20px;
    font-weight: 500;
    color: #454545;
    padding: 0px 100px 0px 0px;
}

#award .campus-info span {
    font-size: 20px;
    font-weight: 700;
    color: #454545;
}

#award .campus-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    row-gap: 10px;
    justify-items: center;
}

#award .campus-box {
    border-radius: 10px;
    border: 1px solid var(--heading-color);
    width: 95%;
    font-size: 12px;
    color: var(--heading-color);
    font-weight: 600;
    padding: 10px 5px;
    text-align: center;
    align-items: center;

}

#campuses .campuses {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
}


#campuses .campuses::after {
    margin-bottom: 0;
}

#award .campus-box:hover {
    background-color: var(--heading-color);
    color: white;
}

/*--------------------------------------------------------------
# Global Footer
--------------------------------------------------------------*/
#footer {
    color: black;
    background-color: var(--accent-color);
    font-size: 14px;
    position: relative;
}

.footer .footer-top {
    padding-top: 50px;
}

.footer .footer-about .logo {
    line-height: 1;
    margin-bottom: 25px;
}

#footer .footer-info {
    font-size: 10px;
    font-weight: 500;
    font-family: var(--nav-font);
    padding: 0px 9rem 0px 0px;
}

.footer .footer-about .logo img {
    max-height: 40px;
    margin-right: 6px;
}

.footer .footer-about .logo span {
    color: var(--heading-color);
    font-size: 30px;
    font-weight: 700;
    letter-spacing: 1px;
    font-family: var(--heading-font);
}

.footer .footer-about p {
    font-size: 14px;
    font-family: var(--heading-font);
}

.footer .social-links a {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    color: color-mix(in srgb, var(--default-color), transparent 50%);
    margin-right: 10px;
    transition: 0.3s;
}

.footer .social-links a:hover {
    color: var(--default-color);
    border-color: var(--default-color);
}

.footer h4 {
    font-size: 16px;
    font-weight: bold;
    position: relative;
    padding-bottom: 12px;
}

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

.footer .footer-links ul i {
    padding-right: 2px;
    font-size: 12px;
    line-height: 0;
}

.footer .footer-links ul li {
    padding: 10px 0;
    display: flex;
    align-items: center;
}

.footer .footer-links ul li:first-child {
    padding-top: 0;
}

.footer .footer-links ul a {
    color: #000000;
    display: inline-block;
    line-height: 30px;
    font-size: 16px;
    font-weight: 500;
}

.footer .footer-links ul a:hover {
    color: var(--heading-color);
}

#footer .contact {
    color: #233A7D;
    font-size: 16px;
    font-weight: 700;
}

.footer-left {
    border-left: 1px solid #B2B2B2;
}

.footer-left .image {
    width: 75%;
    height: 100%;
    margin-left: 20px;
}

.footer-contact .contact-items {
    display: flex;
    align-items: center;
    gap: 3.5rem;
    flex-wrap: wrap;
    margin-left: 85px;
}

.footer-contact .contact-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    text-decoration: none;
    color: black;
    font-weight: 500;
    vertical-align: middle;
}

.footer-contact .contact-link img {
    width: 20px;
    height: auto;
}

.footer-contact .contact-link span {
    margin-left: 8px;
}

.footer .copyright {
    padding-top: 25px;
    padding-bottom: 25px;
    border-top: 1px solid #a073ff;
}

/*--------------------------------------------------------------
# Global Sections
--------------------------------------------------------------*/
section {
    padding: 60px 0px !important;
}

@media (max-width: 1199px) {

    section,
    .section {
        scroll-margin-top: 100px;
    }
}

@media (max-width: 575px) {
    section {
        padding: 40px 0px !important;
    }

    .topbar {
        display: none;
    }

    .topbar-data {
        display: block;
    }

    .header {
        padding-top: 0;
    }

    .topbar .contact-info i a,
    .topbar .contact-info i span {
        font-size: 13px;
    }

    #hero .innovation {
        font-size: 32px;
        padding: 100px 0px 0px 0px;
    }

    #hero .transparent-grid {
        font-size: 18px;
    }

    #hero .header-list {
        font-size: 16px;
    }

    .header-list::before {
        width: 10px;
        height: 10px;
    }

    #hero {
        background-image: url('/app/assets/img/home/mobile.jpg');
        width: auto;
        height: auto;
        background-position: center;
    }

    #hero .admission-text,
    #hero .admission-btn {
        font-size: 16px;
    }

    #friend .main-header,
    #why-choose .choose-main {
        font-size: 26px;
    }

    #friend .main-header,
    #award .our-campuses,
    #friend .emp-text,
    #proud .proud-head,
    #program .program,
    #glimpse .glimpse-head,
    #award .award-heading,
    #student-development .sect-title {
        font-size: 24px;
    }

    #friend .emp-text {
        padding: 15px;
        font-size: 27px;
    }

    .program-card img {
        width: auto !important;
        height: 100%;
    }

    #program .program-text {
        padding: 2px 0px;
        font-size: 16px;
    }

    .program-text .btn {
        padding: 5px 25px;
        margin-bottom: 20px;
    }

    .program-card::before {
        width: 88%;
    }

    #why-choose .choose-box {
        width: 100% !important;
    }

    .program-text p {
        padding: 0px 10px;
        margin: auto;
        font-size: 14px;
    }

    #friend .emp-info,
    #friend .emp-info span {
        font-size: 16px;
        line-height: 30px;
        padding: 0%;
    }

    #why-choose .box-container {
        grid-template-columns: repeat(3, 1fr);
        justify-items: center;
        align-items: center;
    }

    #student .student-banner {
        background-image: url('/app/assets/img/home/mbl-std.jpg');
        height: 18rem;
        background-size: cover;
        color: white;
        margin: 0%;
    }

    #student .stu-main-info {
        font-size: 20px;
        padding: 15px 5px;
    }

    #award .campus-info {
        padding: 0%;
    }

    #award .campus-grid {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        row-gap: 10px;
        justify-items: center;
    }

    #award .award-image {
        width: 50%;
        height: auto;
    }

    .floating-contact {
        display: none;
    }

    .navmenu a,
    .navmenu a:focus {
        color: white;
    }

    .footer .social-links {
        justify-content: center !important;
    }

    .rules-regulation ol li {
        line-height: normal
    }

}

@media (max-width: 991px) {
    #why-choose .box-container {
        grid-template-columns: repeat(3, 1fr);
    }

}

@media (max-width: 767px) {
    #why-choose .box-container {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 575px) {
    #why-choose .box-container {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }

    #why-choose .box-container .choose-box:last-child {
        margin: 0px -185px 0px 0px;
    }

    .program-card {
        height: 300px;
    }

    .program-text h5 {
        font-size: 16px;
        margin-top: 30px;
    }

    .program-text p {
        font-size: 14px;
        height: 9rem;
        padding: 0px 3px;
    }

    #footer .footer-info {
        padding: 0%;
        align-items: center;
        display: flex;
        justify-content: center;
    }

    #footer .footer-about {
        text-align: center;
    }

    .footer .social-links a {
        text-align: center;
    }

    .program-text .btn {
        margin-top: auto !important;
    }

    #glimpse .glimpse-text {
        font-size: 14px;
    }

    .footer-left {
        border: none;
    }

    .footer-left .image {
        width: 100%;
        height: 100%;
        margin: 0%;
    }

    .footer-contact .contact-items {
        row-gap: 15px;
        margin: 5%;
    }

    .footer-contact .contact-link {
        display: block;
    }
}

.thumbnail-wrapper {
    position: relative;
    display: inline-block;
}

.thumbnail-wrapper iframe,
.thumbnail-wrapper img {
    width: 120%;
    display: block;
    border-radius: 10px;
    height: 205px;
    text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.4);

}

.video-slider-section {
    background-image: url('/app/assets/img/home/slider-banner.jpg');
    min-height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 60px 0;
}

.seo-head {
    color: #fff;
    font-weight: 700;
    text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.4);
    font-size: 35px;
    text-transform: uppercase;
    font-family: var(--nav-font);
}

/* --- Video Card Styling --- */
.video-card {
    cursor: pointer;
    background: none;
    border: none;
    max-width: 350px;
    width: 100%;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.play-icon-overlay {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 70px;
    height: 50px;
    background: rgba(205, 30, 31);
    border-radius: 12px;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: 0.3s;
}

.play-icon-overlay i {
    font-size: 32px;
    color: white;
}

.video-card:hover .play-icon-overlay {
    opacity: 1;
}

.card-text {
    font-size: 1.1rem;
    font-weight: 500;
    line-height: 1.4;
}


/* --- Carousel Navigation Arrows --- */

.slider-wrapper {
    max-width: 1200px;
    margin: 0 auto;
}

.custom-control-prev,
.custom-control-next {
    position: absolute;
    top: 35%;
    transform: translateY(-50%);
    z-index: 5;
    background: none;
    border: 3px solid #fff;
    border-radius: 50%;
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 1;
    transition: background-color 0.3s;
}

.custom-control-prev {
    left: -70px;
}

.custom-control-next {
    right: -70px;
}

.custom-control-prev:hover,
.custom-control-next:hover {
    background-color: rgba(255, 255, 255, 0.1);
}

.custom-control-prev i,
.custom-control-next i {
    color: #fff;
    font-size: 1.2rem;
}

/* --- Modal Styling (Dark theme) --- */
.modal-content {
    background-color: #121212;
    border: none;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
}

.modal-header {
    border-bottom: 1px solid #333;
}

.modal-title {
    color: #fff;
}

.btn-close {
    filter: invert(1) grayscale(100%) brightness(200%);
}


/* --- Media Queries for Responsiveness --- */
@media (max-width: 1200px) {

    .custom-control-prev {
        left: 0px;
    }

    .custom-control-next {
        right: 0px;
    }

    .slider-wrapper {
        padding: 0 60px;
    }
}

@media (max-width: 768px) {

    .custom-control-prev,
    .custom-control-next {
        display: none;
    }

    .slider-wrapper {
        padding: 0px 5px;
    }

    .carousel-item>.row>div {
        flex: 0 0 100%;
        max-width: 100%;
    }

}

/* franchise page */
#franchise {
    background-image: url('/app/assets/img/franchise/banner.png');
    height: 100%;
    background-size: cover;
    margin-top: 90px;
}

#franchise .investor,
#socity .section-title {
    color: white;
    text-align: center;
    font-size: 40px;
    font-family: var(--nav-font);
    font-weight: 700;
    text-transform: uppercase;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

#franchise .investor-main,
#library .library-sub-main,
#early-years .early-year-head p {
    color: white;
    font-size: 20px;
    font-weight: 700;
    align-items: center;
    padding: 0rem 15rem;
    text-align: center;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

#franchise .investor-sub,
#registration .register-main-info {
    color: white;
    font-weight: 500;
    font-size: 18px;
    padding: 0rem 10rem;
    text-align: center;
    letter-spacing: 1px;
}

#franchise img,
#admission-form img {
    border: 3px solid white;
    width: 170px;
    height: 170px;
    border-radius: 50%;
    padding: 15px;
}

#franchise img:hover {
    border: 3px solid var(--yellow-color);
}

#franchise .investor-footer,
#admission-form .admission-end {
    font-size: 35px;
    font-weight: 700;
    color: white;
    text-align: center;
    text-transform: uppercase;
}

@media (max-width: 575px) {

    .header .logo {
        margin: auto;
    }

    #franchise .investor,
    #early-years .early-year-head h2 {
        font-size: 32px;
    }

    #franchise .investor-main,
    #library .library-sub-main {
        font-size: 18px;
        padding: 0%;
    }

    #franchise .investor-sub {
        padding: 0%;
        font-size: 16px;
    }

    #franchise .investor-footer {
        font-size: 26px;
    }
}

/* Academics */
#academic-education {
    background-image: url('/app/assets/img/academic/main.png');
    height: 100%;
    background-position: center;
    margin-top: 90px;
}

#academic-education .acdemic-header,
#early-years .early-year-head h2,
#hifz .hifz-head {
    font-size: 40px;
    font-weight: 700;
    font-family: var(--nav-font);
    text-align: center;
    color: white;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

#academic-education .sub-academic {
    font-size: 20px;
    font-weight: 700;
    font-family: var(--nav-font);
    text-align: center;
    color: white;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

#academic-education .info-academic,
#hifz .hifz-info {
    font-size: 18px;
    font-weight: 500;
    font-family: var(--nav-font);
    text-align: center;
    color: white;
    padding: 0rem 5rem;
}

#academic-education .academic-dev-item {
    text-align: center;
}

#academic-education .academic-dev-icon {
    width: 136px;
    height: 136px;
    border-radius: 50%;
    background-color: white;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 35px;
    margin: 0 auto 12px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    border: 2px solid var(--yellow-color);
}

#academic-education .img-fluid {
    width: 75px;
    height: 75px;
}

#academic-education .academic-dev-item :hover {
    background: var(--yellow-color);
}

#academic-education .academic-dev-text {
    font-size: 16px;
    font-weight: 700;
    font-family: var(--nav-font);
    text-align: center;
    color: white;
    padding: 0px 2rem;
}

#academic-education .info-academic-wrap {
    font-size: 18px;
    font-weight: 500;
    font-family: var(--nav-font);
    text-align: center;
    color: white;
}

#value-based-learning .skill-based-wrapper,
#assurance-quality .assurance-based-wrapper {
    border-radius: 21px;
    border: 2px solid var(--light-purple);
    box-shadow: 3px 5px 15px rgba(0, 0, 0, 0.25);
    padding: 30px 30px;
    width: 100%;
}

#value-based-learning .skill-based-text,
#assurance-quality .assurance-based-text {
    font-size: 35px;
    font-family: var(--nav-font);
    font-weight: 700;
    color: var(--heading-color);
}

#value-based-learning .skill-based-info,
#assurance-quality .assurance-info {
    font-size: 18px;
    font-weight: 500;
    font-family: var(--nav-font);
    color: var(--text-color);
    line-height: 30px;
    letter-spacing: 1px;
}

#value-based-learning .skill-img {
    text-align: end;
    padding: 0%;
}

.skill-based {
    background-image: url('/app/assets/img/academic/learning.png');
}

#skill-based-learning .skill-header {
    font-size: 40px;
    font-weight: 700;
    font-family: var(--nav-font);
    text-align: center;
    text-transform: uppercase;
    color: white;
}

#skill-based-learning .skill-info {
    font-size: 18px;
    font-weight: 500;
    font-family: var(--nav-font);
    text-align: center;
    color: white;
}

#skill-based-learning .skill-box,
#testing-eva .testing-box {
    border: 1px solid #F15E2F;
}

#skill-based-learning .img-fluid,
#testing-eva .img-fluid {
    width: 100%;
}

#skill-based-learning .skill-text,
#testing-eva .testing-text {
    color: var(--text-color);
    font-size: 18px;
    font-weight: 700;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: var(--yellow-color);
    padding: 20px;
    box-shadow: 3px 5px 15px rgba(0, 0, 0, 0.25);
}

#assurance-quality {
    background-color: var(--grey-bg);
}

#testing-eva .testing-header,
#guidance .guidance-head {
    font-size: 40px;
    font-weight: 700;
    font-family: var(--nav-font);
    text-align: center;
    text-transform: uppercase;
    color: var(--heading-color);
}

#testing-eva .testing-info {
    font-size: 18px;
    font-weight: 500;
    font-family: var(--nav-font);
    text-align: center;
    color: var(--text-color);
}

#development {
    background: linear-gradient(to bottom, #A24EE9 0%, #602FE7 100%);
    height: 100%;
}


#development .dev-box-wrap {
    background-color: white;
    border-radius: 8px;
    height: 565px;
    width: 530px;
}

#development img {
    width: 100%;
    border: 0.56px solid #F15E2F;

}

#development .dev-head,
#registration .regiter-main-header,
#feedback .feedback-header {
    color: white;
    font-weight: 700;
    font-size: 40px;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
    font-family: var(--nav-font);
    text-transform: uppercase;
    margin-top: 40px;
}

#development .dev-title {
    font-size: 18px;
    font-weight: 500;
    font-family: var(--nav-font);
    color: white;
    letter-spacing: 1px;
    line-height: 30.5px;
}

#development .box-wrap {
    color: var(--heading-color);
    font-size: 28px;
    font-weight: 700;
    font-family: var(--nav-font);
    margin: 20px 0px 10px 0px;
}

#development .dev-text {
    color: var(--text-color);
    font-size: 18px;
    font-weight: 700;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: var(--yellow-color);
    padding: 5px;
    box-shadow: 3px 5px 15px rgba(0, 0, 0, 0.25);
}

#campuses {
    background-color: var(--grey-bg);
}

#campuses .campus-box {
    flex: 0 0 calc((100% - 6 * 15px) / 7);
    max-width: calc((100% - 6 * 15px) / 7);
    padding: 10px;
    box-sizing: border-box;
    margin-bottom: 0;
    border-radius: 10px;
    border: 1px solid var(--heading-color);
    font-size: 13px;
    color: white;
    font-weight: 600;
    height: 50px;
    text-align: center;
    background: linear-gradient(to bottom, #A24EE9 0%, #602FE7 100%);
    display: grid;
    align-items: center;
}

#campuses .our-campuses {
    font-size: 40px;
    color: var(--heading-color);
    font-weight: 700;
    font-family: var(--nav-font);
    text-transform: uppercase;
}

#campuses .campus-info {
    font-size: 20px;
    font-family: var(--nav-font);
    font-weight: 500;
    text-align: center;
}

#campuses .campus-info span {
    font-weight: 700;
}

#campuses .campus-grid {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    row-gap: 10px;
    text-align: center;
    justify-items: center;
}

.campus-row {
    display: flex;
    justify-content: center;
    margin-left: 10px;
}

/* mobile */
@media (max-width: 575px) {

    #academic-education .acdemic-header,
    #registration .regiter-main-header,
    #library .library-main,
    #feedback .feedback-header {
        font-size: 32px;
    }

    #skill-based-learning .skill-header,
    #campuses .our-campuses,
    #testing-eva .testing-header,
    #development .dev-head {
        font-size: 27px !important;
    }

    #academic-education .sub-academic,
    #academic-education .info-academic,
    #assurance-quality .assurance-info,
    #academic-education .academic-dev-text {
        padding: 0%;
    }

    #value-based-learning .skill-based-text,
    #assurance-quality .assurance-based-text {
        font-size: 24px;
        padding: 0%;
    }

    #value-based-learning .skill-based-wrapper {
        padding: 4%;
    }

    #campuses .campus-box {
        flex: 0 0 calc((100% - 15px) / 2);
        max-width: calc((100% - 15px) / 2);
    }

    #development .box-wrap {
        font-size: 22px;
    }

    #development .dev-box-wrap {
        height: auto;
    }

    #registration .register-main-info {
        padding: 0px;
    }

    #registration .submit-btn{
        width: 100% !important;
    }

    #early-years .early-year-head p {
        font-size: 18px;
    }

}

/*Online-Registration*/
#registration,
#feedback {
    background-image: url('/app/assets/img/registration/registration-banner.png');
    height: 100%;
    background-size: cover;
    margin-top: 90px;
}

#registration .regiter-main-sub-header,
#feedback .feedback-info {
    font-size: 20px;
    font-family: var(--nav-font);
    color: white;
    text-align: center;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
    font-weight: 700;
}

#registration .card,
#feedback .card {
    padding: 10px;
    border-radius: 14px;
    box-shadow: 0 4px 18px rgba(0, 0, 0, 0.15);
    margin-top: 20px;
}

#registration .card-body,
#feedback .card-body {
    padding: 35px 40px;
}

#registration label,
#feedback label {
    font-size: 18px;
    font-weight: 600;
    color: var(--purple-color)
}

#registration .form-control,
#feedback .form-control {
    padding: 12px;
    font-weight: 500;
    border-radius: 8px;
    font-size: 18px;
    color: var(--form-border);
    border: 1px solid var(--form-border);
}

#registration input::placeholder,
#feedback input::placeholder,
.form-control select {
    color: var(--form-border);
    font-size: 18px;
    font-weight: 500;
    font-family: var(--nav-font);
}

#registration .submit-btn,
#feedback .submit-btn,
.book-price .order-btn {
    background: var(--heading-color);
    color: #fff;
    border: 1px solid var(--heading-color);
    border-radius: 6px;
    font-size: 20px;
    font-weight: 700;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
    cursor: pointer;
    width: 530px;
    height: 65px;
    text-align: center;
}

#feedback .submit-btn:hover {
    background-color: var(--yellow-color);
    color: var(--heading-color);
}

.form-label {
    font-weight: 600;
    margin-bottom: 6px;
    display: inline-block;
}

#feedback input,
#feedback option,
#feedback textarea {
    color: #000 !important;
    font-size: 18px;
    font-weight: 500;
    font-family: var(--nav-font);
    border: 1px solid var(--form-border);
}

#registration input,
#registration option {
    color: #000 !important;
    font-size: 18px;
    font-weight: 500;
    font-family: var(--nav-font);
    border: 1px solid var(--form-border);
}

.form-control::placeholder {
    color: var(--form-border);
}

#registration input:focus,
#registration .form-control:focus {
    box-shadow: none !important;
}

#registration select.form-control:not(:invalid),
#feedback select.form-control:not(:invalid) {
    color: black !important;
    font-size: 18px;
    font-weight: 500;
    font-family: var(--nav-font);
}

#registration input[type="date"]::-webkit-datetime-edit {
    color: var(--form-border) !important;
}

#registration input[type="date"]:valid::-webkit-datetime-edit {
    color: black !important;
}

input[type="date"]::-webkit-calendar-picker-indicator {
    display: none;
    -webkit-appearance: none;
}

/* library */
#library {
    background-image: url('/app/assets/img/library/main-banner.png');
    height: 100%;
    background-size: cover;
    background-position: top;
    margin-top: 90px;
}

#library .library-main,
#approach .approach-head,
.entrepreneurship-section .enter-head,
#youth .youth-leader-head {
    font-size: 40px;
    font-weight: 700;
    text-align: center;
    color: white;
    font-family: var(--nav-font);
    text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.4);

}

#development .dev-head {
    font-size: 40px;
    font-weight: 700;
    color: white;
    font-family: var(--nav-font);
    text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.4);

}

#library .library-last {
    font-size: 18px;
    font-weight: 500;
    text-align: center;
    color: white;
    font-family: var(--nav-font);

}

/* 0ur program */
#early-years {
    background-image: url('/app/assets/img/program/main.png');
    height: 100%;
    background-size: cover;
    margin-top: 90px;
    background-position: top center;
    padding: 120px 0 150px;
}

#early-years .row {
    --bs-gutter-x: -5rem;
}

/* common image style */
#early-years img {
    height: 100%;
}

/* LEFT & RIGHT – choti + neeche */
.image-left img,
.image-right img {
    transform: scale(0.9);
}

.image-center img {
    transform: scale(1.1);
}

#seo {
    background-color: var(--grey-bg);
}

#seo .seo-main,
#school .school-main {
    font-size: 40px;
    font-weight: 700;
    color: var(--heading-color);
    font-family: var(--nav-font);
    text-align: center;
}

#seo .seo-info {
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 1px;
    line-height: 30px;
    color: var(--text-color);
    padding: 0px 7rem;
    text-align: center;
}

#seo .seo-info-padding {
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 1px;
    line-height: 30px;
    color: var(--text-color);
    text-align: center;
}

#seo .affirm {
    color: var(--heading-color);
    font-size: 20px;
    font-weight: 700;
    text-align: center;
}


#seo .seo-dev-item {
    text-align: center;
}

#seo .seo-dev-icon {
    width: 136px;
    height: 136px;
    border-radius: 50%;
    background-color: var(--yellow-color);
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 35px;
    margin: 0 auto 12px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    border: 3px solid #6030E5;
}


#seo .img-fluid {
    width: 75px;
    height: 75px;
}

.seo .row {
    --bs-gutter-x: -35rem;
}

#seo .seo-dev-text {
    font-size: 16px;
    font-weight: 700;
    font-family: var(--nav-font);
    text-align: center;
    color: var(--text-color);
    padding: 0px 2rem;
}

#development {
    background-image: url('/app/assets/img/library/main-banner.png');
}

#development .dev-para {
    font-size: 18px;
    font-weight: 500;
    text-align: center;
    color: white;
    font-family: var(--nav-font);
    padding: 0px 2rem;
}

#development .dev-card {
    background: #fff;
    border: 3px solid var(--yellow-color);
    border-radius: 3px;
    padding: 25px 15px 15px 15px;
    text-align: center;
    flex-direction: column;
    height: 100%;
}

#development img {
    border: none;
}

#development .dev-card h6 {
    color: var(--text-color);
    font-size: 16px;
    font-weight: 700;
    margin-top: 2rem;
}

#approach,
#youth {
    background: linear-gradient(to bottom, #A24EE9 0%, #602FE7 100%);
    background-repeat: no-repeat;
    height: 100%;
}

#approach .approach-info,
#youth .youth-info-padding {
    font-size: 18px;
    font-weight: 500;
    text-align: center;
    color: white;
    font-family: var(--nav-font);
    padding: 0px 5rem;
}

#school {
    background-color: var(--grey-bg);
}

#school p {
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 1px;
    line-height: 30px;
    color: var(--text-color);
    text-align: center;
}

#school .middle-box {
    border: 1px solid var(--heading-color);
    border-radius: 20px;
    box-shadow: 0 4px 12px #00000040;
    background-color: white;
    padding: 20px 50px;
}

.entrepreneurship-section {
    position: relative;
    background-image: url('/app/assets/img/program/enter.png');
    background-size: cover;
    background-position: center;
    padding: 80px 0;
    color: #fff;
    overflow: hidden;
}

.entrepreneurship-section::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(123, 63, 228, 0.85);
    z-index: 1;
}

.entrepreneurship-section .enter-info {
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 1px;
    line-height: 30px;
    color: white;
    text-align: center;
    padding: 0rem 5rem;

}

.entrepreneurship-section>* {
    position: relative;
    z-index: 2;
}

.entrepreneurship-section .content {
    position: relative;
    z-index: 2;
}

.entrepreneurship-section .enter-card {
    background: #fff;
    border: 3px solid var(--yellow-color);
    border-radius: 3px;
    padding: 25px 0px;
    text-align: center;
    flex-direction: column;
    width: 15rem;
    height: 100%;

}

.entrepreneurship-section .enter-card h6 {
    color: var(--text-color);
    font-size: 16px;
    font-weight: 700;
    text-align: center;
    margin-top: auto;
}

#guidance {
    background-color: var(--grey-bg);
    height: 100%;
}

#guidance .guidance-info {
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 1px;
    line-height: 30px;
    color: var(--text-color);
    padding: 0px 5rem;
    text-align: center;
}

#youth .youth-main {
    font-size: 40px;
    font-weight: 700;
    color: white;
    font-family: var(--nav-font);
    text-align: center;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);

}

#youth .youth-dev-item {
    text-align: center;
}

#youth .youth-dev-icon {
    width: 136px;
    height: 136px;
    border-radius: 50%;
    background-color: white;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 35px;
    margin: 0 auto 12px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    border: 3px solid var(--yellow-color);
}


#youth .img-fluid {
    width: 75px;
    height: 75px;
}


#youth .youth-dev-text {
    font-size: 16px;
    font-weight: 700;
    font-family: var(--nav-font);
    text-align: center;
    color: white;
    padding: 0px 2rem;
}

@media (max-width: 575px) {

    .entrepreneurship-section .enter-head,
    #school .school-main,
    #approach .approach-head,
    #seo .seo-main,
    #guidance .guidance-head,
    #seo .seo-main,
    #youth .youth-main {
        font-size: 32px;
    }

    #approach {
        background: linear-gradient(to bottom, #A24EE9 0%, #602FE7 100%);

    }

    #early-years .early-year-head p,
    #approach .approach-info,
    #seo .seo-info-padding,
    .entrepreneurship-section .enter-info,
    #guidance .guidance-info,
    #youth .youth-info-padding {
        padding: 0%;
    }

    .entrepreneurship-section .enter-card {
        width: 100%;
    }

    .entrepreneurship-section .enter-card h6 {
        font-size: 14px;
    }

    #school .middle-box {
        padding: 5%;
    }

    #early-years .row {
        --bs-gutter-x: 0rem;
        margin-top: -25px;
    }

    #early-years .image-center {
        padding: 0px 30px;
    }

    #seo .seo-main {
        font-size: 32px;
    }

    #seo .seo-info {
        padding: 0px;
    }

    #seo .row {
        --bs-gutter-x: 0rem;
    }

}

/* summer-Fiesta */
#summer {
    background-image: url('/app/assets/img/summer-fiesta/main-banner.png');
    height: 100%;
    background-size: cover;
    margin-top: 90px;
    background-position: top center;
    padding: 120px 0 150px;
}

#summer .summer-head h2 {
    font-size: 40px;
    font-weight: 700;
    font-family: var(--nav-font);
    text-align: center;
    color: white;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

#summer .summer-head span {
    font-size: 20px;
    font-weight: 700;
    text-align: center;
    color: white;
}

#summer .summer-head p {
    font-size: 18px;
    font-family: var(--nav-font);
    color: white;
    font-weight: 500;
}

#summer>.container:first-of-type>.row {
    --bs-gutter-x: -5rem;
}


#summer img {
    height: 100%;
}

#summer .image-left img,
#summer .image-right img {
    transform: scale(0.9);
}

#summer .image-center img {
    transform: scale(1.0);
}


#summer .card {
    padding: 10px;
    border-radius: 14px;
    box-shadow: 0 4px 18px rgba(0, 0, 0, 0.15);
    margin-top: 20px;
}

#summer .card-body {
    padding: 35px 40px;
}

#summer label {
    font-size: 18px;
    font-weight: 600;
    color: var(--purple-color)
}


#summer .form-control {
    padding: 12px;
    font-weight: 500;
    border-radius: 8px;
    font-size: 18px;
    color: var(--form-border);
    border: 1px solid var(--form-border);
}


#summer input::placeholder,
.form-control select {
    color: var(--form-border);
    font-size: 18px;
    font-weight: 500;
    font-family: var(--nav-font);
}

#summer .submit-btn {
    background: var(--heading-color);
    color: #fff;
    /* padding: 12px 40px; */
    border: 1px solid var(--heading-color);
    border-radius: 6px;
    font-size: 20px;
    font-weight: 700;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
    cursor: pointer;
    width: 530px;
    height: 65px;
    text-align: center;
}


#summer input,
#summer option {
    color: #000 !important;
    font-size: 18px;
    font-weight: 500;
    font-family: var(--nav-font);
    border: 1px solid var(--form-border);

}

#summer input:focus,
#summer .form-control:focus {
    box-shadow: none !important;
}

#summer select.form-control:not(:invalid) {
    color: black !important;
    font-size: 18px;
    font-weight: 500;
    font-family: var(--nav-font);
}

#summer input[type="date"]::-webkit-datetime-edit {
    color: var(--form-border) !important;
}

#summer input[type="date"]:valid::-webkit-datetime-edit {
    color: black !important;
}

#summer .text-main {
    font-size: 40px;
    color: var(--purple-color);
    font-weight: 700;
    text-align: center;
    font-family: var(--nav-font);
    text-transform: uppercase;

}

#event .event-title,
#event .sub-title {
    font-size: 40px;
    color: var(--heading-color);
    font-weight: 700;
    font-family: var(--nav-font);
    text-transform: uppercase;

}

#event .event-box {
    border: 1px solid var(--heading-color);
    padding: 5px 0px;
    width: 100%;
    font-size: 20px;
    font-weight: 700;
    align-items: center;
    color: var(--heading-color);
}

#event .no-top-border {
    border-top: 0;
}

#event .event-box p {
    margin-top: revert;
}

#event .custom-list {
    list-style: none;
    font-size: 20px;
    font-weight: 500;
    color: var(--text-color);
    padding: 0%;
    line-height: 40px;
    letter-spacing: 1px;
}

#event .divider {
    border: 1px solid #9C9C9C;
    width: 102%;
}


#event .event-dev-item {
    text-align: center;
}

#event .event-dev-icon {
    width: 136px;
    height: 136px;
    border-radius: 50%;
    background-color: var(--yellow-color);
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 35px;
    margin: 0 auto 12px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    border: 2.45px solid var(--heading-color);

}

#event .img-fluid {
    width: 75px;
    height: 75px;
}


#event .event-dev-text {
    font-size: 18px;
    font-weight: 700;
    font-family: var(--nav-font);
    text-align: center;
    color: var(--text-color);
    padding: 0px 2rem;
}

@media (max-width: 575px) {

    #summer .summer-head h2 {
        font-size: 32px;
    }

    #summer .text-main,
    #event .event-title,
    #event .sub-title {
        font-size: 28px;
    }

    #summer input,
    #summer option {
        font-size: 14px;
    }

    #summer .submit-btn {
        width: 100%;
    }

    #event .event-dev-text {
        padding: 0%;
    }

    #summer>.container:first-of-type>.row {
        --bs-gutter-x: 0rem;
    }

    #summer .image-center {
        padding: 0px 25px;
    }
}

/* Hifz Quran */
#hifz {
    background: linear-gradient(to bottom, #A24EE9 0%, #602FE7 100%);
    height: 100%;
    margin-top: 90px;
}

#qualification {
    background-color: var(--grey-bg);
}

.quali-info {
    font-size: 28px;
    font-weight: 700;
    color: var(--purple-color);
    line-height: 60px;
    letter-spacing: 1px;
}

#separate_qualification .container {
    position: relative;
    z-index: 2;
}

#separate_qualification {
    position: relative;
    background-image: url('/app/assets/img/hifz-quran/wel-banner.png');
    background-size: cover;
    background-position: center;
    padding: 80px 0;
    color: #fff;
    overflow: hidden;
}

#separate_qualification::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg,
            rgba(123, 63, 228, 0.7),
            rgba(75, 0, 130, 0.7));
    z-index: 1;
}

#separate_qualification .quali-info-second {
    font-size: 28px;
    font-weight: 700;
    color: white;
    line-height: 60px;
    letter-spacing: 1px;
    padding: 0px 85px 0px 0px;
}

#seo .seo-info-pro {
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 1px;
    line-height: 30px;
    color: var(--text-color);
    text-align: center;
    padding: 0rem 12rem;
}

.seo-pro .row,
.youth .row {
    --bs-gutter-x: -5rem;
}

#student-corner {
    background-image: url('/app/assets/img/student-corner/std-banner.png');
    height: 100%;
    background-size: cover;
    margin-top: 90px;
}

#student-corner .row {
    --bs-gutter-x: -10rem;
}

#student-corner .std-main-head {
    color: white;
    text-align: center;
    font-size: 40px;
    font-family: var(--nav-font);
    font-weight: 700;
    text-transform: uppercase;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

#student-corner .std-sub-head {
    color: white;
    font-weight: 500;
    font-size: 18px;
    padding: 0rem 5rem;
    text-align: center;
    letter-spacing: 1px;
}

#whole-std-info {
    background-color: var(--grey-bg);
}

#whole-std-info .card {
    border: 1px solid var(--light-purple);
    border-radius: 27px;
}

#whole-std-info .inner-box {
    padding: 25px 30px;
    width: 100%;
    display: flex;
    flex-direction: column;
}

#whole-std-info .border-start {
    border-left: 1px solid #9C9C9C !important;
    height: 50%;
    margin: 0px auto;
}

.bordered-box {
    position: relative;
}

.bordered-box::before {
    content: "";
    position: absolute;
    left: -15px;
    top: 30px;
    bottom: 30px;
    width: 2px;
    border-left: 1px solid #9C9C9C;
}

#whole-std-info .inner-box h2 {
    font-size: 30px;
    font-weight: 700;
    color: #6030E7;
    margin-bottom: 15px;
    text-transform: uppercase;
    font-family: var(--nav-font);
}

#whole-std-info .inner-box ol {
    padding-left: 18px;
    margin-bottom: 0;
}

#whole-std-info .inner-box ol li {
    font-size: 18px;
    line-height: 40px;
    margin-bottom: 6px;
    font-weight: 600;
}

#whole-std-info .note {
    margin-top: auto;
    font-size: 18px;
    font-weight: 600;
    color: var(--heading-color);
}

#whole-std-info .section-divider {
    height: 4px;
    background: linear-gradient(to left, #A24EE9 0%, #602FE7 100%);
    margin: 0 -16px;
}

#socity {
    background: linear-gradient(to bottom, #A24EE9 0%, #602FE7 100%);
}

#socity .section-description {
    color: white;
    font-weight: 500;
    font-size: 18px;
    padding: 0rem 10rem;
    text-align: center;
    letter-spacing: 1px;
}

#socity .icon-circle,
#std-glimpse .icon-circle,
#payable .icon-circle {
    width: 135px;
    height: 135px;
    background-color: #fff;
    border-radius: 50%;
    display: inline-flex;
    border: 2px solid var(--yellow-color);
    align-items: center;
    justify-content: center;
    color: #6a1b9a;
    margin: 0 auto 15px auto;
}

#socity .club-name,
#std-glimpse .club-name,
#payable .club-name {
    font-size: 16px;
    font-weight: 700;
    color: #fff;
    padding: 0px 30px;
}

#consling {
    background-color: var(--grey-bg);
}

#consling .counsling-header {
    font-size: 40px;
    font-weight: 700;
    font-family: var(--nav-font);
    text-align: center;
    text-transform: uppercase;
    color: var(--heading-color);
}

#consling .counsling-info {
    font-size: 18px;
    font-weight: 500;
    color: #454545;
    letter-spacing: 1px;
    padding: 0px 3rem;
    text-align: center;
}

#std-glimpse {
    background: linear-gradient(to bottom, #A24EE9 0%, #602FE7 100%);

}

#std-glimpse .glimpse-main-head {
    font-size: 40px;
    font-weight: 700;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
    color: white;
    text-align: center;
    text-transform: uppercase;
    font-family: var(--nav-font);
}

#std-glimpse .glimpse-main-sub {
    font-size: 18px;
    font-weight: 500;
    color: white;
    letter-spacing: 1px;
    padding: 0px 3rem;
    text-align: center;
}

#std-glimpse .glimpse-main-end {
    font-size: 20px;
    font-weight: 500;
    color: white;
    letter-spacing: 1px;
    padding: 0px 3rem;
    text-align: center;
}


@media (max-width: 575px) {

    #hifz .hifz-head,
    #student-corner .std-main-head,
    #socity .section-title,
    #std-glimpse .glimpse-main-head,
    #consling .counsling-header {
        font-size: 30px !important;
    }

    .seo-pro .row,
    .youth .row {
        --bs-gutter-x: 0rem !important;
    }

    #seo .seo-info-pro,
    #hifz .hifz-info,
    #socity .section-description,
    #consling .counsling-info {
        padding: 0px !important;
    }

    #separate_qualification .quali-info-second,
    #qualification .quali-info {
        padding: 0px;
        line-height: normal;
    }

    #student-corner .row {
        --bs-gutter-x: 0;
    }

    #student-corner .std-banner-img img {
        margin: 0 1%;
    }

    #student-corner .std-sub-head,
    #whole-std-info .inner-box {
        padding: 0px !important;
    }

    #whole-std-info .inner-box h2 {
        font-size: 20px !important;
    }

    #student-corner .img-fluid {
        width: 100% !important;
    }

    #whole-std-info .inner-box ol {
        padding-left: 30px;
    }

    #socity .club-name,
    #std-glimpse .club-name,
    #payable .club-name {
        padding: 0%;
    }

    #whole-std-info .inner-box ol li {
        line-height: normal;
    }

    .bordered-box::before {
        display: none;
    }

    .library-boxes-center img {
        height: 16rem;
    }

}

#admission-banner {
    background-image: url('/app/assets/img/admission/admission-banner.png');
    height: 100%;
    background-size: cover;
    margin-top: 90px;
    background-position: center;
}

#admission-banner .admission-main,
#payable .payable-head h2,
#admission-form .download-admission-procedure h2 {
    font-size: 40px;
    font-family: var(--nav-font);
    font-weight: 700;
    color: white;
    text-transform: uppercase;
    text-shadow: 2px 2px 4px 0px rgba(0, 0, 0, 0.25);
}

#admission-banner .admission-take-info,
#admission-form .download-admission-procedure p {
    font-size: 20px;
    font-family: var(--nav-font);
    font-weight: 700;
    color: white;
    text-shadow: 1px 1px 2px 0px rgba(0, 0, 0, 0.25);
}

#admission-banner .admission-box {
    background-color: white;
    border: 6px solid var(--yellow-color);
    border-radius: 113px;
}

#admission-banner .admission-take {
    font-size: 40px;
    font-family: var(--nav-font);
    font-weight: 700;
    color: var(--heading-color);
    text-shadow: 2px 2px 4px 0px rgba(0, 0, 0, 0.25);
    text-align: center;
    align-items: center;
    padding: 3rem;
}

#admission-banner .admision-sm-text {
    font-size: 18px;
    font-family: var(--nav-font);
    font-weight: 500;
    color: white
}

#documents,
#age-required {
    background-color: var(--grey-bg);
}

#documents .documents-instruction,
#age-required .age-requirement-head h2,
#fee-structure .fee-structure-head h2 {
    font-size: 40px;
    font-family: var(--nav-font);
    font-weight: 700;
    color: var(--heading-color);
    text-align: center;
    padding: 0rem 11rem;
    text-transform: uppercase;
}

#documents .document-card-container,
#fee-structure .document-card-container,
#booklist .document-card-container {
    position: relative;
    background-color: var(--yellow-color);
    border-radius: 12px;
    padding: 10px 0 0 10px;
    width: 90%;
    height: 90%;
    display: inline-block;
    box-sizing: border-box;
}

#documents .document-card,
#booklist .document-card {
    background-color: #ffffff;
    border-radius: 8px;
    padding: 20px;
    width: 105%;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    box-sizing: border-box;
}

#documents .document-card img {
    margin-bottom: 20px;
    display: block;
}

#documents .document-card p {
    font-size: 18px;
    font-weight: 500;
    margin: 0 0 10px 0;
    line-height: 35px;
    color: var(--text-color);
    letter-spacing: 1px;
    padding: 0px 5px 0px 0px;
}

#payable,
#admission-form {
    background: linear-gradient(to bottom, #A24EE9 0%, #602FE7 100%);
}

#age-required .age-box {
    background:
        linear-gradient(var(--yellow-color)) padding-box,
        linear-gradient(135deg, #6030E7, #361B81) border-box;
    border: 3px solid transparent;
    background-color: var(--yellow-color);
    text-align: center;
}

#age-required .age-text {
    font-size: 16px;
    font-weight: 700;
}

#age-required .age-box-wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem 4rem;
}

#age-required .age-box-wrap img {
    max-width: 100px;
    height: auto;
}

#fee-structure {
    background-color: var(--grey-bg);
}

#fee-structure .fee-structure-head p {
    font-size: 20px;
    font-family: var(--nav-font);
    font-weight: 700;
    color: var(--heading-color);
    text-align: center;
}

#fee-structure .document-card-container p {
    font-size: 18px;
    font-family: var(--nav-font);
    font-weight: 700;
    color: var(--heading-color);
    text-align: center;
    align-items: flex-start;
    min-height: 48px;
}

#fee-structure table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 15px;
    border: 1px solid #6030E7;
}

#fee-structure tr {
    background-color: #fff;

}

#fee-structure th {
    padding: 15px 30px;
    vertical-align: middle;
    border: none;
    border-top: 1px solid #6030E7;
    border-bottom: 1px solid #6030E7;
    background-color: #6030E7;
    color: #fff;
    font-size: 18px;
    font-weight: 700;
    text-transform: uppercase;
}

#fee-structure td {
    padding: 15px 30px;
    text-align: left;
    vertical-align: middle;
    border: none;
    border-top: 1px solid #6030E7;
    border-bottom: 1px solid #6030E7;
    color: var(--text-color);
    font-size: 18px;
    font-weight: 600;
}

#fee-structure .per-text,
#booklist .per-text,
#ptc h2,
#health-and-medication h2,
#safety-and-security h2 {
    color: var(--heading-color);
    font-weight: 700;
    font-size: 40px;
    text-align: center;
    font-family: var(--nav-font);
}

#fee-structure .fee-document-card {
    background-color: #ffffff;
    border-radius: 8px;
    padding: 30px 5px;
    justify-content: center;
    align-items: center;
    text-align: center;
    width: 105%;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    box-sizing: border-box;
}

#fee-structure .document-card {
    background-color: #ffffff;
    border-radius: 8px;
    padding: 30px;
    justify-content: center;
    align-items: center;
    text-align: center;
    width: 105%;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    box-sizing: border-box;
}

.fee-document-card img {
    margin-bottom: 20px;
    height: 70px;
}

@media (max-width: 575px) {
    #admission-banner .admission-main {
        font-size: 30px;
    }

    #documents .documents-instruction,
    #payable .payable-head h2,
    #age-required .age-requirement-head h2,
    #admission-form .download-admission-procedure h2,
    #fee-structure .fee-structure-head h2 {
        font-size: 27px;
    }

    #admission-banner .admission-take {
        padding: 25px;
        font-size: 30px;
    }

    #documents .documents-instruction,
    #age-required .age-requirement-head h2 {
        padding: 0%;
    }

    #age-required .age-box-wrap {
        padding: 1rem 0rem;
    }

    #fee-structure .fee-structure-head h2 {
        font-size: 27px;
        padding: 0%;
    }

    #fee-structure th,
    #fee-structure td {
        padding: 5px 10px;
    }

    #documents .document-card-container,
    #fee-structure .document-card-container {
        width: 94%;
    }

}

#campus-page {
    background: linear-gradient(to bottom, #A24EE9 0%, #602FE7 100%);
    margin-top: 90px;
}

#campus-page .camp-main-head,
#resource-center h1,
#about .about-head,
#parents .parent-head,
#rules-and-regulations h2,
#fee-policy h2,
#privacy .privacy-header,
#terms .term-head {
    color: white;
    text-align: center;
    font-size: 40px;
    font-family: var(--nav-font);
    font-weight: 700;
    text-transform: uppercase;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

#campus-page .camp-main-sub-header,
#about .about-main-info {
    color: white;
    font-weight: 500;
    font-size: 18px;
    padding: 0rem 22rem;
    text-align: center;
    letter-spacing: 1px;
}

#campus-page .camp-box {
    background-color: white;
    border-radius: 10px;
    padding: 20px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    margin-top: 20px;
    height: 100px;
}

#campus-page .camp-box p {
    margin: 0px 0px 0px 0px;
    font-size: 18px;
    font-weight: 600;
    color: var(--nav-dropdown-hover-color);
    align-items: center;
}

#campus-page .camp-box h4 {
    margin: 0px;
    font-size: 30px;
    color: #000;
    font-weight: 600;
    font-family: var(--nav-font);
}

#dynamic-campus {
    background-color: var(--grey-bg);
}

#dynamic-campus .dynamic-campus-boxes {
    background-color: white;
}

#dynamic-campus .dynamic-text {
    font-size: 35px;
    color: var(--nav-dropdown-hover-color);
    font-weight: 700;
    font-family: var(--nav-font);
    min-height: 85px;
    margin: 0 0 15px 0;
}

#dynamic-campus .dynamic-campus-boxes {
    background-color: white;
    overflow: hidden;
    border: 1px solid #9E4CE9;
    display: flex;
    flex-direction: column;
    height: 100%;
}

#dynamic-campus .text-content {
    padding: 20px;
}

#dynamic-campus .contact-item {
    display: flex;
    align-items: flex-start;
}

#dynamic-campus .contact-item img {
    color: var(--nav-dropdown-hover-color);
    margin-right: 20px;
    margin-top: 7px;
    font-size: 16px;
}

#dynamic-campus .top-image-placeholder img {
    height: 295px;
    width: 100%;
}

#dynamic-campus .contact-item p {
    color: var(--text-color);
    line-height: 27px;
    font-size: 18px;
    font-family: var(--nav-font);
    font-weight: 600;
}

.map-placeholder {
    position: relative;
    margin-top: auto;
}

#dynamic-campus .expand-btn {
    position: absolute;
    bottom: 10px;
    right: 10px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0;
    border: none;
    background-color: transparent;
    border-radius: 50%;
}

#dynamic-campus .expand-btn img {
    border: none;

}

#dynamic-campus .expand-icon {
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 8px;
}

#dynamic-campus .icon-wrap {
    width: 24px;
    min-width: 40px;
    display: flex;
    justify-content: center;
}

.dynamic-campuses-divider {
    height: 4px;
    background: linear-gradient(to left, #A24EE9 0%, #602FE7 100%);
}

@media (max-width: 575px) {
    #campus-page .camp-main-head {
        font-size: 32px;
    }

    #campus-page .camp-main-sub-header {
        padding: 0%;
    }

    #campus-page .camp-box h4 {
        font-size: 22px;
    }

    #campus-page .camp-box {
        width: 80%;
        margin: 5px auto;
    }
}

#resource-center {
    background: linear-gradient(to bottom, #A24EE9 0%, #602FE7 100%);
    margin-top: 90px;

}

#resource-center p {
    color: white;
    font-weight: 500;
    font-size: 18px;
    padding: 0rem 5rem;
    text-align: center;
    letter-spacing: 1px;
    margin: 25px 0px;
}

/* about */
#about,
#parents {
    background-image: url('/app/assets/img/about/about-banner.png');
    height: 100%;
    background-position: center;
    background-size: cover;
    margin-top: 90px;
}

#about .about-banner-head {
    font-weight: 700;
    font-size: 20px;
    text-align: center;
    text-transform: uppercase;
    color: white;
    padding: 0rem 10rem;
}

#about .about-main-info {
    padding: 0% !important;
}

#vision {
    background-color: var(--grey-bg);
}

#vision .vision-mission-sec {
    padding: 60px 0;
}

#vision .visions-missions-wrapper {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

#vision .vision-mission-main,
#owner .owners-profile-wrapper {
    border: 2px solid #9E4CE9;
    border-radius: 35px;
    padding: 30px;
    background: #fff;
}

#vision .divider {
    height: 4px;
    background: linear-gradient(to left, #A24EE9 0%, #602FE7 100%);
    width: calc(100% + 60px);
    margin-left: -30px;
}

#vision .vision-main {
    color: #6030E7;
    font-size: 35px;
    font-family: var(--nav-font);
    font-weight: 700;
    margin-bottom: 15px;
}

#vision .vision-info {
    font-size: 18px;
    line-height: 42px;
    color: #454545;
    font-weight: 500;
    letter-spacing: 1px;
}

#vision .vision-img-wrapper {
    text-align: center;
}

#vision .vision-img-wrapper img {
    max-width: 100%;
    border-radius: 12px;
}

#owner,
#rules-and-regulations,
#fee-policy,
.findings-section {
    background: linear-gradient(to bottom, #A24EE9 0%, #602FE7 100%);
}

#owner .owner-name,
#core .core-value-head h2,
#booklist .book-list-head h2 {
    font-size: 40px;
    font-weight: 700;
    color: var(--heading-color);
    font-family: var(--nav-font);
}

#owner .owner-designation {
    font-size: 30px;
    font-weight: 700;
    color: var(--heading-color);
    font-family: var(--nav-font);
}

#owner .owner-card p,
#booklist .book-list-head p {
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 1px;
    line-height: 42px;
    color: var(--text-color);
}

#core,
#booklist {
    background-color: var(--grey-bg);
}

#core .icon-circle,
#safety-and-security .icon-circle,
.key-feature .icon-circle {
    width: 135px;
    height: 135px;
    background-color: var(--yellow-color);
    border-radius: 50%;
    display: inline-flex;
    border: 3px solid var(--heading-color);
    align-items: center;
    justify-content: center;
    color: #6a1b9a;
    margin: 0 auto 15px auto;
}

#core .club-name,
#safety-and-security .club-name ,
.key-feature .club-name{
    color: var(--text-color);
    font-size: 18px;
    font-weight: 700;
    font-family: var(--nav-font);
}

#safety-and-security .club-name {
    padding: 0%;
}

#core .divider {
    height: 4px;
    background: linear-gradient(to left, #A24EE9 0%, #602FE7 100%);

}

#parents .timing-box {
    background: #ffffff;
    overflow: hidden;
    border: 1px solid #6030E7;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);
    margin-bottom: 25px;
}

#parents .timing-head {
    background: var(--heading-color);
    font-family: var(--nav-font);
    color: #ffffff;
    text-align: center;
    font-weight: 700;
    font-size: 30px;
    padding: 14px 10px;
    text-transform: uppercase;
}

#parents .timing-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

#parents .timing-list li {
    text-align: center;
    font-size: 18px;
    padding: 12px 10px;
    font-weight: 600;
    border-bottom: 1px solid var(--heading-color);
    color: var(--text-color);

}

#parents .timing-list li:last-child {
    border-bottom: none;
}

#parents .info,
#fee-policy .fee-list {
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 1px;
    color: white;
    text-align: center;
}

#booklist .doc-info-sub {
    font-size: 20px;
    font-weight: 500;
    color: var(--text-color);
}

#booklist .document-card {
    padding: 35px !important;
}

.rules-regulation ol li {
    color: white;
    font-size: 18px;
    font-weight: 500;
    line-height: 43px;
}

#ptc,
#health-and-medication,
#safety-and-security {
    background-color: var(--grey-bg);
}

#ptc .parent-teacher-head p,
#health-and-medication P {
    font-size: 18px;
    text-align: center;
    padding: 0rem 10rem;
    color: #454545;
    font-weight: 500;
    letter-spacing: 1px;
}

#safety-and-security P {
    font-size: 20px;
    text-align: center;
    padding: 0rem 10rem;
    color: var(--heading-color);
    font-weight: 500;
    letter-spacing: 1px;
}

#privacy {
    background-image: url('/app/assets/img/privacy/privacy.png');
    height: 100%;
    background-position: center;
    background-size: cover;
    margin-top: 90px;

}

#privacy .privacy-info,
#privacy .privacy-policy-list {
    font-size: 18px;
    font-weight: 500;
    line-height: 30px;
    letter-spacing: 1px;
    color: white;
    font-family: var(--nav-font);
}

#terms {
    background: linear-gradient(to bottom, #A24EE9 0%, #602FE7 100%);
    margin-top: 90px;
}

#terms .term-sub-head {
    font-size: 20px;
    font-weight: 700;
    font-family: var(--nav-font);
    color: white;
}

#terms .privacy-head p {
    font-size: 18px;
    font-weight: 500;
    line-height: 30px;
    letter-spacing: 1px;
    color: white;
}
.key-feature{
    background-color: var(--grey-bg);
}
.book-price .order-last-btn {
    background:white;
    color:var(--heading-color) !important;
    border: 1px solid var(--heading-color);
    border-radius: 6px;
    font-size: 20px;
    font-weight: 700;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
    cursor: pointer;
    width: 530px;
    height: 65px;
    text-align: center;
}


@media (max-width: 575px) {

    #resource-center h1,
    #about .about-head,
    #owner .owner-name,
    #core .core-value-head h2,
    #parents .parent-head,
    #booklist .book-list-head h2,
    #booklist .per-text,
    #rules-and-regulations h2,
    #ptc h2,
    #health-and-medication h2,
    #safety-and-security h2,
    #privacy .privacy-header {
        font-size: 32px;
    }

    #resource-center p,
    #ptc .parent-teacher-head p,
    #health-and-medication p,
    #safety-and-security p {
        padding: 0px;
    }

    #about .about-banner-head {
        padding: 0%;
    }

    #owner .owner-designation {
        font-size: 24px;
    }

}

.campus-link {
    all: unset;
    display: contents;
    cursor: pointer;
}

.campus-link .campus-box:hover {
    background: var(--yellow-color) !important;
    color: var(--heading-color) !important;
}
