/* ------------------------------
   1. Base Fonts
------------------------------ */
body {
    font-family: 'Inter', sans-serif;
}

h1, h2, h3, h4, h5 {
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
}
h1, h2 {
    color: #5D3A66;
}


button, label {
    font-family: 'Poppins', sans-serif;
}

/* ------------------------------
   2. Top Header (Career, Contact Us Links)
------------------------------ */
.top-header {
    background-color: #5D3A66;
    color: #FFFFFF;
    padding: 6px 0;
    font-size: 14px;
}

    .top-header .container {
        display: flex;
        justify-content: flex-end;
        align-items: center;
        flex-wrap: wrap;
    }

    .top-header a {
        color: #ffffff;
        margin-left: 20px;
        font-weight: 500;
        text-decoration: none;
    }

        .top-header a:hover {
            color: #F7D6BF;
        }

/* ------------------------------
   3. Main Navbar (Primary Menu)
------------------------------ */
/* Primary menu styles */
.primary-menu {
    background-color: #A97155;
    position: relative;
    padding-top: 10px;
    padding-bottom: 10px;
    z-index: 1000;
}

    .primary-menu.row-split {
        background: linear-gradient(to bottom, #A97155 50%, #C79272 50%);
    }
.primary-menu .navbar-nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 8px;
    width: 100%;
}

.primary-menu .navbar-collapse {
    display: flex !important;
    justify-content: center;
}

.primary-menu .navbar-nav .nav-link {
    font-family: 'Segoe UI', sans-serif; /* mimic the clean font look */
    font-size: 15.5px;
    font-weight: 500;
    padding: 0.6rem 1.2rem;
    color: #fff;
    text-transform: none; /* removes capitalization */
    line-height: 1.5;
    transition: background 0.3s, color 0.3s;
    border-radius: 6px;
}

    .primary-menu .navbar-nav .nav-link:hover,
    .primary-menu .navbar-nav .nav-link.active {
        color: #f7d6bf;
        background-color: transparent;
        text-decoration: underline;
    }
.primary-menu .navbar-nav {
    gap: 5px; /* or adjust based on your width */
}
.primary-menu .dropdown-menu {
    background: #fff;
    border-radius: 8px;
    padding: 8px 0;
}

    .primary-menu .dropdown-menu .dropdown-item {
        font-size: 14px;
        font-weight: 500;
        padding: 6px 14px;
    }

        .primary-menu .dropdown-menu .dropdown-item:hover {
            background-color: #C08497;
            color: #fff;
        }


/* ------------------------------
   4. Mini Logos Section (Header Right Logos)
------------------------------ */
.mini_logos {
    width: 100%;
    text-align: right;
}

    .mini_logos ul {
        margin: 0;
        padding: 0;
        display: inline-block;
    }

        .mini_logos ul li {
            list-style: none;
            display: inline-block;
            margin-left: 10px;
        }

            .mini_logos ul li img {
                width: 70px;
                height: auto;
                object-fit: contain;
                transition: all 0.3s ease;
            }

/* Responsive Logos */
@media (max-width: 991px) {
    .mini_logos ul li img {
        width: 60px;
    }
}

@media (max-width: 575px) {
    .mini_logos {
        text-align: center;
    }

        .mini_logos ul li img {
            width: 50px;
            margin-bottom: 8px;
        }
}

/* ------------------------------
   5. Carousel / Slider
------------------------------ */
.slider-img {
    max-height: 350px;
    width: auto;
    max-width: 100%;
    object-fit: contain;
    margin: auto;
    display: block;
    background-color: #ffffff;
}

.carousel-item::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to bottom, rgba(0,0,0,0.5), rgba(0,0,0,0));
    z-index: 1;
    display: none;
}

.carousel-caption {
    z-index: 2;
}

.carousel-indicators [data-bs-target] {
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background-color: #A97155;
    border: none;
    margin: 0 6px;
    opacity: 0.6;
    transition: background-color 0.3s, transform 0.3s;
}

.carousel-indicators .active {
    background-color: #A97155;
    opacity: 1;
    transform: scale(1.2);
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
    background-size: 100% 100%;
    width: 3rem;
    height: 3rem;
}

.carousel-control-prev-icon {
    background-image: url('data:image/svg+xml;charset=utf8,<svg fill="black" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg"><path d="M11 2 3 8l8 6V2z"/></svg>');
}

.carousel-control-next-icon {
    background-image: url('data:image/svg+xml;charset=utf8,<svg fill="black" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg"><path d="M5 2l8 6-8 6V2z"/></svg>');
}

/* ------------------------------
   6. Announcements Banner
------------------------------ */
.announcement-banner {
    background: linear-gradient(90deg, #6B4C4C, #5D3A66);
    overflow: hidden;
    position: relative;
    height: 50px;
    display: flex;
    align-items: center;
    color: #F7D6BF;
    font-weight: 600;
    font-size: 18px;
}

.scroll-wrapper {
    white-space: nowrap;
}

.scroll-text {
    display: inline-block;
    padding-left: 100%;
    animation: scroll-left 15s linear infinite;
    animation-play-state: running;
}

    .scroll-text:hover {
        animation-play-state: paused;
        cursor: pointer;
    }

@keyframes scroll-left {
    0% {
        transform: translateX(0%);
    }

    100% {
        transform: translateX(-100%);
    }
}

/* ------------------------------
   7. Admissions Banner
------------------------------ */
.adminshionbox {
    background: linear-gradient(135deg, #6B4C4C, #5D3A66);
    color: #ffffff;
    padding: 5px;
}

.admission-text {
    font-weight: 700;
    color: #F7D6BF;
}

.btn-apply-now {
    background-color: #D9534F;
    color: #ffffff;
    font-weight: 600;
    border-radius: 8px;
    padding: 10px 20px;
    border: none;
    transition: background-color 0.3s ease;
}

    .btn-apply-now:hover {
        background-color: #C0392B;
    }

/* ------------------------------
   8. Useful Links & Address
------------------------------ */
.useful-links-pec {
    padding-left: 40px;
}

.address-block-pec ul li {
    padding-bottom: 8px;
}

.list-unstyled li a {
    text-decoration: none;
}

/* ------------------------------
   9. Footer
------------------------------ */
.footer {
    background-color: #6B4C4C;
    color: #F4EDE8;
}

    .footer a {
        color: #F7D6BF;
        text-decoration: none;
    }

        .footer a:hover {
            color: #FFFFFF;
        }

.footer-top-section {
    background: linear-gradient(135deg, #6B4C4C, #5D3A66);
    padding: 60px 20px;
    border-radius: 15px;
    color: #FFFFFF;
    text-align: center;
}

    .footer-top-section h1 {
        font-size: 36px;
        font-weight: 700;
        margin-bottom: 20px;
    }

    .footer-top-section h6 {
        font-size: 18px;
        font-weight: 500;
        color: #F7D6BF;
    }

    .footer-top-section .footer_btn {
        background-color: #D9534F;
        color: #fff;
        border-radius: 6px;
        font-weight: 600;
        border: none;
        transition: background-color 0.3s;
    }

        .footer-top-section .footer_btn:hover {
            background-color: #C0392B;
        }

/* ------------------------------
   10. Governing Body Members Table
------------------------------ */
.table-custom {
    background-color: #ffffff;
    border: 1px solid #dee2e6;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
}

    .table-custom thead th {
        background-color: #A97155 !important;
        color: #FFFFFF !important;
        font-weight: 700;
        text-align: center;
    }

    .table-custom tbody tr:nth-child(odd) td {
        background-color: #F7D6BF !important;
    }

    .table-custom tbody tr:nth-child(even) td {
        background-color: #FFF5F2 !important;
    }

    .table-custom tbody tr:hover td {
        background-color: #C08497 !important;
        color: #ffffff !important;
        transition: background-color 0.3s, color 0.3s;
    }

    .table-custom td,
    .table-custom th {
        vertical-align: middle;
        padding: 12px;
        font-size: 16px;
    }

/* ------------------------------
   11. Mobile Menu Fix
------------------------------ */
@media (max-width: 991px) {
    .navbar.fixed-top .navbar-collapse,
    .navbar.sticky-top .navbar-collapse {
        overflow-y: auto;
        max-height: 90vh;
        margin-top: 10px;
    }
}
.col_code {
    background: #b91a20;
    text-align: center; /* Center the text */
}


    .col_code a span {
        color: #fff;
        font-size: 12px;
    }

.contact-us-section {
    background-color: #f9f9f9;
    padding: 40px 20px;
}

    .contact-us-section h2 {
        font-family: 'Poppins', sans-serif;
        font-weight: 700;
        color: #5D3A66;
    }

    .contact-us-section p {
        font-size: 16px;
        color: #333;
        margin-bottom: 8px;
    }

    .contact-us-section a {
        color: #A97155;
        text-decoration: none;
        font-weight: 600;
    }

        .contact-us-section a:hover {
            color: #C08497;
            text-decoration: underline;
        }

.map-container iframe {
    width: 100%;
    height: 400px;
    border-radius: 10px;
    border: none;
}
.feedback-form-section {
    background: linear-gradient(135deg, #6B4C4C, #C08497);
    padding: 60px 20px;
}

    .feedback-form-section h2 {
        font-family: 'Poppins', sans-serif;
        font-weight: 700;
    }

    .feedback-form-section .form-control,
    .feedback-form-section textarea,
    .feedback-form-section select {
        border-radius: 10px;
        font-size: 14px;
        padding: 12px;
    }

    .feedback-form-section .btn-danger {
        background-color: #D9534F;
        font-weight: 600;
        border: none;
        transition: background-color 0.3s;
    }

        .feedback-form-section .btn-danger:hover {
            background-color: #C0392B;
        }
.grievance-form-section {
    background: #f9f9f9;
    padding: 60px 20px;
}

    .grievance-form-section h2 {
        font-family: 'Poppins', sans-serif;
        font-weight: 700;
        color: #5D3A66;
    }

    .grievance-form-section p {
        font-size: 16px;
        color: #555;
    }

    .grievance-form-section .form-control {
        border-radius: 8px;
        padding: 12px;
        font-size: 15px;
    }

    .grievance-form-section .form-label {
        font-size: 14px;
        color: #333;
    }

    .grievance-form-section .btn-danger {
        background-color: #D9534F;
        border: none;
        transition: background-color 0.3s;
    }

        .grievance-form-section .btn-danger:hover {
            background-color: #C0392B;
        }

/* For dropdown submenu */
.dropdown-submenu {
    position: relative;
}

    .dropdown-submenu > .dropdown-menu {
        top: 0;
        left: 100%;
        margin-top: -0.5rem;
        margin-left: 0.1rem;
        display: none;
        position: absolute;
    }

    .dropdown-submenu:hover > .dropdown-menu {
        display: block;
    }
.sahasra-link {
    color: #FFD700;
    font-weight: 700;
    font-size: 16px;
    text-decoration: underline;
    transition: all 0.3s ease;
}

    .sahasra-link:hover {
        color: #ffffff;
        text-shadow: 0 0 5px #FFD700, 0 0 10px #FFD700;
        text-decoration: none;
    }